{"version":3,"file":"resolve-elements.es-C5GYHh-L.js","sources":["../../../node_modules/@motionone/utils/dist/clamp.es.js","../../../node_modules/@motionone/utils/dist/is-number.es.js","../../../node_modules/@motionone/utils/dist/is-easing-list.es.js","../../../node_modules/@motionone/utils/dist/wrap.es.js","../../../node_modules/@motionone/utils/dist/easing.es.js","../../../node_modules/@motionone/utils/dist/mix.es.js","../../../node_modules/@motionone/utils/dist/noop.es.js","../../../node_modules/@motionone/utils/dist/progress.es.js","../../../node_modules/@motionone/utils/dist/offset.es.js","../../../node_modules/@motionone/utils/dist/interpolate.es.js","../../../node_modules/@motionone/utils/dist/is-function.es.js","../../../node_modules/@motionone/utils/dist/is-string.es.js","../../../node_modules/@motionone/dom/dist/utils/resolve-elements.es.js"],"sourcesContent":["const clamp = (min, max, v) => Math.min(Math.max(v, min), max);\n\nexport { clamp };\n","const isNumber = (value) => typeof value === \"number\";\n\nexport { isNumber };\n","import { isNumber } from './is-number.es.js';\n\nconst isEasingList = (easing) => Array.isArray(easing) && !isNumber(easing[0]);\n\nexport { isEasingList };\n","const wrap = (min, max, v) => {\n const rangeSize = max - min;\n return ((((v - min) % rangeSize) + rangeSize) % rangeSize) + min;\n};\n\nexport { wrap };\n","import { isEasingList } from './is-easing-list.es.js';\nimport { wrap } from './wrap.es.js';\n\nfunction getEasingForSegment(easing, i) {\n return isEasingList(easing) ? easing[wrap(0, easing.length, i)] : easing;\n}\n\nexport { getEasingForSegment };\n","const mix = (min, max, progress) => -progress * min + progress * max + min;\n\nexport { mix };\n","const noop = () => { };\nconst noopReturn = (v) => v;\n\nexport { noop, noopReturn };\n","const progress = (min, max, value) => max - min === 0 ? 1 : (value - min) / (max - min);\n\nexport { progress };\n","import { mix } from './mix.es.js';\nimport { progress } from './progress.es.js';\n\nfunction fillOffset(offset, remaining) {\n const min = offset[offset.length - 1];\n for (let i = 1; i <= remaining; i++) {\n const offsetProgress = progress(0, remaining, i);\n offset.push(mix(min, 1, offsetProgress));\n }\n}\nfunction defaultOffset(length) {\n const offset = [0];\n fillOffset(offset, length - 1);\n return offset;\n}\n\nexport { defaultOffset, fillOffset };\n","import { mix } from './mix.es.js';\nimport { noopReturn } from './noop.es.js';\nimport { fillOffset, defaultOffset } from './offset.es.js';\nimport { progress } from './progress.es.js';\nimport { getEasingForSegment } from './easing.es.js';\nimport { clamp } from './clamp.es.js';\n\nfunction interpolate(output, input = defaultOffset(output.length), easing = noopReturn) {\n const length = output.length;\n /**\n * If the input length is lower than the output we\n * fill the input to match. This currently assumes the input\n * is an animation progress value so is a good candidate for\n * moving outside the function.\n */\n const remainder = length - input.length;\n remainder > 0 && fillOffset(input, remainder);\n return (t) => {\n let i = 0;\n for (; i < length - 2; i++) {\n if (t < input[i + 1])\n break;\n }\n let progressInRange = clamp(0, 1, progress(input[i], input[i + 1], t));\n const segmentEasing = getEasingForSegment(easing, i);\n progressInRange = segmentEasing(progressInRange);\n return mix(output[i], output[i + 1], progressInRange);\n };\n}\n\nexport { interpolate };\n","const isFunction = (value) => typeof value === \"function\";\n\nexport { isFunction };\n","const isString = (value) => typeof value === \"string\";\n\nexport { isString };\n","function resolveElements(elements, selectorCache) {\n var _a;\n if (typeof elements === \"string\") {\n if (selectorCache) {\n (_a = selectorCache[elements]) !== null && _a !== void 0 ? _a : (selectorCache[elements] = document.querySelectorAll(elements));\n elements = selectorCache[elements];\n }\n else {\n elements = document.querySelectorAll(elements);\n }\n }\n else if (elements instanceof Element) {\n elements = [elements];\n }\n /**\n * Return an empty array\n */\n return Array.from(elements || []);\n}\n\nexport { resolveElements };\n"],"names":["clamp","min","max","v","isNumber","value","isEasingList","easing","wrap","rangeSize","getEasingForSegment","i","mix","progress","noop","noopReturn","fillOffset","offset","remaining","offsetProgress","defaultOffset","length","interpolate","output","input","remainder","t","progressInRange","isFunction","isString","resolveElements","elements","selectorCache","_a"],"mappings":"AAAK,MAACA,EAAQ,CAACC,EAAKC,EAAKC,IAAM,KAAK,IAAI,KAAK,IAAIA,EAAGF,CAAG,EAAGC,CAAG,ECAvDE,EAAYC,GAAU,OAAOA,GAAU,SCEvCC,EAAgBC,GAAW,MAAM,QAAQA,CAAM,GAAK,CAACH,EAASG,EAAO,CAAC,CAAC,ECFvEC,EAAO,CAACP,EAAKC,EAAKC,IAAM,CAC1B,MAAMM,EAAYP,EAAMD,EACxB,QAAWE,EAAIF,GAAOQ,EAAaA,GAAaA,EAAaR,CACjE,ECAA,SAASS,EAAoBH,EAAQI,EAAG,CACpC,OAAOL,EAAaC,CAAM,EAAIA,EAAOC,EAAK,EAAGD,EAAO,OAAQI,CAAC,CAAC,EAAIJ,CACtE,CCLK,MAACK,EAAM,CAACX,EAAKC,EAAKW,IAAa,CAACA,EAAWZ,EAAMY,EAAWX,EAAMD,ECAjEa,EAAO,IAAM,CAAI,EACjBC,EAAcZ,GAAMA,ECDpBU,EAAW,CAACZ,EAAKC,EAAKG,IAAUH,EAAMD,IAAQ,EAAI,GAAKI,EAAQJ,IAAQC,EAAMD,GCGnF,SAASe,EAAWC,EAAQC,EAAW,CACnC,MAAMjB,EAAMgB,EAAOA,EAAO,OAAS,CAAC,EACpC,QAASN,EAAI,EAAGA,GAAKO,EAAWP,IAAK,CACjC,MAAMQ,EAAiBN,EAAS,EAAGK,EAAWP,CAAC,EAC/CM,EAAO,KAAKL,EAAIX,EAAK,EAAGkB,CAAc,CAAC,CAC1C,CACL,CACA,SAASC,EAAcC,EAAQ,CAC3B,MAAMJ,EAAS,CAAC,CAAC,EACjB,OAAAD,EAAWC,EAAQI,EAAS,CAAC,EACtBJ,CACX,CCPA,SAASK,EAAYC,EAAQC,EAAQJ,EAAcG,EAAO,MAAM,EAAGhB,EAASQ,EAAY,CACpF,MAAMM,EAASE,EAAO,OAOhBE,EAAYJ,EAASG,EAAM,OACjC,OAAAC,EAAY,GAAKT,EAAWQ,EAAOC,CAAS,EACpCC,GAAM,CACV,IAAIf,EAAI,EACR,KAAOA,EAAIU,EAAS,GACZ,EAAAK,EAAIF,EAAMb,EAAI,CAAC,GADAA,IACnB,CAGJ,IAAIgB,EAAkB3B,EAAM,EAAG,EAAGa,EAASW,EAAMb,CAAC,EAAGa,EAAMb,EAAI,CAAC,EAAGe,CAAC,CAAC,EAErE,OAAAC,EADsBjB,EAAoBH,EAAQI,CAAC,EACnBgB,CAAe,EACxCf,EAAIW,EAAOZ,CAAC,EAAGY,EAAOZ,EAAI,CAAC,EAAGgB,CAAe,CAC5D,CACA,CC5BK,MAACC,EAAcvB,GAAU,OAAOA,GAAU,WCAzCwB,EAAYxB,GAAU,OAAOA,GAAU,SCA7C,SAASyB,EAAgBC,EAAUC,EAAe,CAC9C,IAAIC,EACJ,OAAI,OAAOF,GAAa,SAChBC,IACCC,EAAKD,EAAcD,CAAQ,KAAO,MAAQE,IAAO,SAAeD,EAAcD,CAAQ,EAAI,SAAS,iBAAiBA,CAAQ,GAC7HA,EAAWC,EAAcD,CAAQ,GAGjCA,EAAW,SAAS,iBAAiBA,CAAQ,EAG5CA,aAAoB,UACzBA,EAAW,CAACA,CAAQ,GAKjB,MAAM,KAAKA,GAAY,CAAE,CAAA,CACpC","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12]}