@rethink-js/rt-smooth-scroll 1.0.2 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +131 -65
- package/dist/index.js +313 -148
- package/dist/index.js.map +2 -2
- package/dist/index.min.js +2 -2
- package/dist/index.min.js.map +3 -3
- package/package.json +1 -1
package/dist/index.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/index.js"],
|
|
4
|
-
"sourcesContent": ["(function () {\n var RT_NS = \"rtSmoothScroll\";\n if (window[RT_NS] && window[RT_NS].__initialized) return;\n\n function getAttrFrom(el, name) {\n if (!el) return null;\n if (!el.hasAttribute(name)) return null;\n return el.getAttribute(name);\n }\n\n function getAttr(name) {\n var html = document.documentElement;\n var body = document.body;\n var v = getAttrFrom(html, name);\n if (v !== null) return v;\n v = getAttrFrom(body, name);\n if (v !== null) return v;\n return null;\n }\n\n function hasAttrAnywhere(name) {\n var html = document.documentElement;\n var body = document.body;\n if (html && html.hasAttribute(name)) return true;\n if (body && body.hasAttribute(name)) return true;\n return false;\n }\n\n function parseBool(v, def) {\n if (v === null || v === undefined) return def;\n var s = String(v).trim().toLowerCase();\n if (s === \"\") return true;\n if (s === \"true\" || s === \"1\" || s === \"yes\" || s === \"y\" || s === \"on\")\n return true;\n if (s === \"false\" || s === \"0\" || s === \"no\" || s === \"n\" || s === \"off\")\n return false;\n return def;\n }\n\n function parseNum(v, def) {\n if (v === null || v === undefined) return def;\n var n = Number(v);\n return Number.isFinite(n) ? n : def;\n }\n\n function parseStr(v, def) {\n if (v === null || v === undefined) return def;\n var s = String(v);\n return s.length ? s : def;\n }\n\n function clamp01(t) {\n if (t < 0) return 0;\n if (t > 1) return 1;\n return t;\n }\n\n function easingByName(name) {\n var n = String(name || \"\").trim();\n if (!n) return null;\n var easings = {\n linear: function (t) {\n return clamp01(t);\n },\n easeInQuad: function (t) {\n t = clamp01(t);\n return t * t;\n },\n easeOutQuad: function (t) {\n t = clamp01(t);\n return t * (2 - t);\n },\n easeInOutQuad: function (t) {\n t = clamp01(t);\n return t < 0.5 ? 2 * t * t : 1 - Math.pow(-2 * t + 2, 2) / 2;\n },\n easeInCubic: function (t) {\n t = clamp01(t);\n return t * t * t;\n },\n easeOutCubic: function (t) {\n t = clamp01(t);\n return 1 - Math.pow(1 - t, 3);\n },\n easeInOutCubic: function (t) {\n t = clamp01(t);\n return t < 0.5 ? 4 * t * t * t : 1 - Math.pow(-2 * t + 2, 3) / 2;\n },\n easeInOutSine: function (t) {\n t = clamp01(t);\n return -(Math.cos(Math.PI * t) - 1) / 2;\n },\n easeOutExpo: function (t) {\n t = clamp01(t);\n return t === 1 ? 1 : 1 - Math.pow(2, -10 * t);\n },\n };\n return easings[n] || null;\n }\n\n function hasAnyConfigOn(el) {\n if (!el) return false;\n for (var i = 0; i < el.attributes.length; i++) {\n var n = el.attributes[i].name;\n if (n && n.indexOf(\"rt-smooth-scroll-\") === 0) return true;\n }\n return false;\n }\n\n function ensureDefaultsIfNeeded() {\n var body = document.body;\n var html = document.documentElement;\n if (!body) return;\n\n var instances = document.querySelectorAll(\"[rt-smooth-scroll-instance]\");\n var hasInstances = instances && instances.length > 0;\n\n if (!hasAttrAnywhere(\"rt-smooth-scroll\") && !hasInstances)\n body.setAttribute(\"rt-smooth-scroll\", \"\");\n\n var configured = hasAnyConfigOn(html) || hasAnyConfigOn(body);\n if (configured || hasInstances) return;\n\n var defaults = {\n \"rt-smooth-scroll-lerp\": \"0.25\",\n \"rt-smooth-scroll-orientation\": \"vertical\",\n \"rt-smooth-scroll-gesture-orientation\": \"vertical\",\n \"rt-smooth-scroll-normalize-wheel\": \"true\",\n \"rt-smooth-scroll-wheel-multiplier\": \"1\",\n \"rt-smooth-scroll-easing\": \"easeOutCubic\",\n \"rt-smooth-scroll-smooth-touch\": \"true\",\n \"rt-smooth-scroll-sync-touch\": \"true\",\n \"rt-smooth-scroll-sync-touch-lerp\": \"0\",\n \"rt-smooth-scroll-touch-inertia-multiplier\": \"10\",\n \"rt-smooth-scroll-touch-multiplier\": \"2\",\n };\n\n for (var k in defaults) {\n if (!html.hasAttribute(k) && !body.hasAttribute(k))\n body.setAttribute(k, defaults[k]);\n }\n }\n\n function readOptions(getLocal) {\n var prefix = \"rt-smooth-scroll-\";\n\n function localOrGlobal(name) {\n var v = getLocal(name);\n if (v !== null && v !== undefined) return v;\n return getAttr(name);\n }\n\n var rawDuration = localOrGlobal(prefix + \"duration\");\n var rawLerp = localOrGlobal(prefix + \"lerp\");\n\n var hasDuration =\n rawDuration !== null &&\n rawDuration !== undefined &&\n String(rawDuration).trim() !== \"\";\n var hasLerp =\n rawLerp !== null &&\n rawLerp !== undefined &&\n String(rawLerp).trim() !== \"\";\n\n var duration = parseNum(rawDuration, 1.15);\n var lerp = parseNum(rawLerp, 0.25);\n\n if (hasDuration && !hasLerp) {\n lerp = 0;\n }\n\n var orientation = parseStr(\n localOrGlobal(prefix + \"orientation\"),\n \"vertical\"\n );\n var gestureOrientation = parseStr(\n localOrGlobal(prefix + \"gesture-orientation\"),\n \"vertical\"\n );\n var normalizeWheel = parseBool(\n localOrGlobal(prefix + \"normalize-wheel\"),\n true\n );\n var wheelMultiplier = parseNum(\n localOrGlobal(prefix + \"wheel-multiplier\"),\n 1\n );\n var smoothTouch = parseBool(localOrGlobal(prefix + \"smooth-touch\"), true);\n var syncTouch = parseBool(localOrGlobal(prefix + \"sync-touch\"), true);\n var syncTouchLerp = parseNum(localOrGlobal(prefix + \"sync-touch-lerp\"), 0);\n var touchInertiaMultiplier = parseNum(\n localOrGlobal(prefix + \"touch-inertia-multiplier\"),\n 10\n );\n var touchMultiplier = parseNum(\n localOrGlobal(prefix + \"touch-multiplier\"),\n 2\n );\n var infinite = parseBool(localOrGlobal(prefix + \"infinite\"), false);\n\n var easingName = parseStr(localOrGlobal(prefix + \"easing\"), \"easeOutCubic\");\n var easingFn = easingByName(easingName);\n\n var opts = {\n lerp: lerp,\n orientation: orientation,\n gestureOrientation: gestureOrientation,\n normalizeWheel: normalizeWheel,\n wheelMultiplier: wheelMultiplier,\n smoothTouch: smoothTouch,\n syncTouch: syncTouch,\n syncTouchLerp: syncTouchLerp,\n touchInertiaMultiplier: touchInertiaMultiplier,\n touchMultiplier: touchMultiplier,\n infinite: infinite,\n };\n\n if (lerp === 0) {\n opts.duration = duration;\n }\n\n if (easingFn) opts.easing = easingFn;\n\n var extra = localOrGlobal(prefix + \"options-json\");\n if (extra) {\n try {\n var parsed = JSON.parse(extra);\n if (parsed && typeof parsed === \"object\") {\n for (var k in parsed) opts[k] = parsed[k];\n }\n } catch (e) {}\n }\n\n return opts;\n }\n\n function loadScriptOnce(src) {\n return new Promise(function (resolve, reject) {\n if (typeof window.Lenis !== \"undefined\") return resolve();\n var existing = document.querySelector('script[data-rt-lenis=\"true\"]');\n if (existing) {\n existing.addEventListener(\"load\", function () {\n resolve();\n });\n existing.addEventListener(\"error\", function (e) {\n reject(e);\n });\n return;\n }\n var s = document.createElement(\"script\");\n s.src = src;\n s.async = true;\n s.dataset.rtLenis = \"true\";\n s.onload = function () {\n resolve();\n };\n s.onerror = function (e) {\n reject(e);\n };\n document.head.appendChild(s);\n });\n }\n\n function init() {\n ensureDefaultsIfNeeded();\n\n var enabledRoot = hasAttrAnywhere(\"rt-smooth-scroll\");\n var instanceEls = document.querySelectorAll(\"[rt-smooth-scroll-instance]\");\n var shouldRun = enabledRoot || (instanceEls && instanceEls.length > 0);\n if (!shouldRun) return;\n\n var lenisSrc = parseStr(\n getAttr(\"rt-smooth-scroll-lenis-src\"),\n \"https://cdn.jsdelivr.net/npm/lenis@1.3.16/dist/lenis.min.js\"\n );\n\n var observeResize = parseBool(\n getAttr(\"rt-smooth-scroll-observe-resize\"),\n true\n );\n var observeMutations = parseBool(\n getAttr(\"rt-smooth-scroll-observe-mutations\"),\n true\n );\n var resizeDebounceMs = parseNum(\n getAttr(\"rt-smooth-scroll-resize-debounce-ms\"),\n 0\n );\n\n var state = {\n destroyed: false,\n rafId: 0,\n instances: {},\n order: [],\n observers: {},\n resizeTimers: {},\n };\n\n function scheduleResize(id) {\n var inst = state.instances[id];\n if (!inst || state.destroyed) return;\n if (resizeDebounceMs > 0) {\n clearTimeout(state.resizeTimers[id]);\n state.resizeTimers[id] = setTimeout(function () {\n var i2 = state.instances[id];\n if (!i2 || state.destroyed) return;\n i2.resize();\n }, resizeDebounceMs);\n return;\n }\n inst.resize();\n }\n\n function startRaf() {\n function raf(time) {\n if (state.destroyed) return;\n for (var i = 0; i < state.order.length; i++) {\n var id = state.order[i];\n var inst = state.instances[id];\n if (inst) inst.raf(time);\n }\n state.rafId = requestAnimationFrame(raf);\n }\n state.rafId = requestAnimationFrame(raf);\n }\n\n function addObservers(id, wrapperEl) {\n if (!wrapperEl || wrapperEl === window) return;\n\n var ro = null;\n var mo = null;\n\n if (observeResize && typeof ResizeObserver !== \"undefined\") {\n ro = new ResizeObserver(function () {\n scheduleResize(id);\n });\n ro.observe(wrapperEl);\n }\n\n if (observeMutations && typeof MutationObserver !== \"undefined\") {\n mo = new MutationObserver(function () {\n scheduleResize(id);\n });\n mo.observe(wrapperEl, { childList: true, subtree: true });\n }\n\n state.observers[id] = { ro: ro, mo: mo };\n }\n\n function removeObservers(id) {\n var obs = state.observers[id];\n if (!obs) return;\n if (obs.ro) obs.ro.disconnect();\n if (obs.mo) obs.mo.disconnect();\n delete state.observers[id];\n }\n\n function sanitizeOptionsForLog(opts) {\n var out = {};\n for (var k in opts) {\n if (!Object.prototype.hasOwnProperty.call(opts, k)) continue;\n var v = opts[k];\n if (typeof v === \"function\") {\n out[k] = \"[Function]\";\n } else {\n out[k] = v;\n }\n }\n return out;\n }\n\n function createInstance(id, wrapper, content, options) {\n var opts = options || {};\n if (wrapper) opts.wrapper = wrapper;\n if (content) opts.content = content;\n var inst = new window.Lenis(opts);\n state.instances[id] = inst;\n state.order.push(id);\n if (wrapper && wrapper !== window) addObservers(id, wrapper);\n if (id === \"root\") window.lenis = inst;\n\n try {\n console.log(\"[rt-smooth-scroll] instance:\", id, {\n wrapper: wrapper === window ? \"window\" : wrapper,\n content: content || null,\n options: sanitizeOptionsForLog(opts),\n });\n } catch (e) {}\n\n return inst;\n }\n\n function getContentForWrapper(wrapperEl) {\n var selector = getAttrFrom(wrapperEl, \"rt-smooth-scroll-content\");\n if (selector) {\n var found = wrapperEl.querySelector(selector);\n if (found) return found;\n }\n return wrapperEl.firstElementChild || wrapperEl;\n }\n\n function makeApi() {\n function forEachTarget(id, fn) {\n if (typeof id === \"string\" && id.length) {\n var one = state.instances[id];\n if (one) fn(id, one);\n return;\n }\n for (var i = 0; i < state.order.length; i++) {\n var k = state.order[i];\n var inst = state.instances[k];\n if (inst) fn(k, inst);\n }\n }\n\n return {\n __initialized: true,\n ids: function () {\n return state.order.slice();\n },\n get: function (id) {\n return state.instances[id] || null;\n },\n start: function (id) {\n forEachTarget(id, function (_, inst) {\n inst.start();\n });\n },\n stop: function (id) {\n forEachTarget(id, function (_, inst) {\n inst.stop();\n });\n },\n toggle: function (id, force) {\n forEachTarget(id, function (_, inst) {\n if (typeof force === \"boolean\") {\n if (force) inst.stop();\n else inst.start();\n return;\n }\n if (inst.isStopped) inst.start();\n else inst.stop();\n });\n },\n resize: function (id) {\n forEachTarget(id, function (k) {\n scheduleResize(k);\n });\n },\n destroy: function (id) {\n if (state.destroyed) return;\n\n function destroyOne(k) {\n clearTimeout(state.resizeTimers[k]);\n removeObservers(k);\n var inst = state.instances[k];\n if (inst) {\n try {\n inst.destroy();\n } catch (e) {}\n delete state.instances[k];\n }\n var idx = state.order.indexOf(k);\n if (idx >= 0) state.order.splice(idx, 1);\n if (k === \"root\") {\n try {\n delete window.lenis;\n } catch (e) {\n window.lenis = undefined;\n }\n }\n }\n\n if (typeof id === \"string\" && id.length) {\n destroyOne(id);\n return;\n }\n\n while (state.order.length) destroyOne(state.order[0]);\n state.destroyed = true;\n if (state.rafId) cancelAnimationFrame(state.rafId);\n },\n };\n }\n\n function installLegacyAliases(api) {\n window.disableScroll = function () {\n api.stop();\n if (document.body) document.body.classList.add(\"no-scroll\");\n };\n window.enableScroll = function () {\n api.start();\n if (document.body) document.body.classList.remove(\"no-scroll\");\n };\n }\n\n loadScriptOnce(lenisSrc)\n .then(function () {\n if (state.destroyed) return;\n\n if (enabledRoot && !state.instances.root) {\n var optsRoot = readOptions(function () {\n return null;\n });\n createInstance(\"root\", window, document.documentElement, optsRoot);\n }\n\n var els = document.querySelectorAll(\"[rt-smooth-scroll-instance]\");\n var autoCount = 0;\n\n for (var i = 0; i < els.length; i++) {\n var el = els[i];\n var id = getAttrFrom(el, \"rt-smooth-scroll-id\");\n if (!id) {\n autoCount++;\n id = \"instance-\" + autoCount;\n }\n if (state.instances[id]) continue;\n\n var content = getContentForWrapper(el);\n\n var opts = readOptions(function (name) {\n return getAttrFrom(el, name);\n });\n createInstance(id, el, content, opts);\n }\n\n startRaf();\n\n var api = makeApi();\n window[RT_NS] = api;\n installLegacyAliases(api);\n\n window.addEventListener(\"resize\", function () {\n api.resize();\n });\n })\n .catch(function () {});\n }\n\n if (document.readyState === \"loading\") {\n document.addEventListener(\"DOMContentLoaded\", init);\n } else {\n init();\n }\n\n window[RT_NS] = window[RT_NS] || {\n __initialized: true,\n ids: function () {\n return [];\n },\n get: function () {\n return null;\n },\n };\n})();\n"],
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"sourcesContent": ["(function () {\n var RT_NS = \"rtSmoothScroll\";\n if (window[RT_NS] && window[RT_NS].__initialized) return;\n\n function getAttrFrom(el, name) {\n if (!el) return null;\n if (!el.hasAttribute(name)) return null;\n return el.getAttribute(name);\n }\n\n function getAttr(name) {\n var html = document.documentElement;\n var body = document.body;\n var v = getAttrFrom(html, name);\n if (v !== null) return v;\n v = getAttrFrom(body, name);\n if (v !== null) return v;\n return null;\n }\n\n function hasAttrAnywhere(name) {\n var html = document.documentElement;\n var body = document.body;\n if (html && html.hasAttribute(name)) return true;\n if (body && body.hasAttribute(name)) return true;\n return false;\n }\n\n function parseBool(v, def) {\n if (v === null || v === undefined) return def;\n var s = String(v).trim().toLowerCase();\n if (s === \"\") return true;\n if (s === \"true\" || s === \"1\" || s === \"yes\" || s === \"y\" || s === \"on\")\n return true;\n if (s === \"false\" || s === \"0\" || s === \"no\" || s === \"n\" || s === \"off\")\n return false;\n return def;\n }\n\n function parseNum(v, def) {\n if (v === null || v === undefined) return def;\n var s = String(v).trim();\n if (!s.length) return def;\n var n = Number(s);\n return Number.isFinite(n) ? n : def;\n }\n\n function parseStr(v, def) {\n if (v === null || v === undefined) return def;\n var s = String(v);\n return s.length ? s : def;\n }\n\n function clamp01(t) {\n if (t < 0) return 0;\n if (t > 1) return 1;\n return t;\n }\n\n function resolveTargetFromStr(selectorStr) {\n if (!selectorStr) return null;\n var s = String(selectorStr).trim();\n if (!s) return null;\n if (s === \"window\") return window;\n\n var match = s.match(/^(.*)\\(\\s*(\\d+)\\s*\\)$/);\n if (match) {\n var baseSelector = match[1].trim();\n var index = parseInt(match[2], 10);\n if (!baseSelector || isNaN(index) || index < 1) return null;\n try {\n var all = document.querySelectorAll(baseSelector);\n return all[index - 1] || null;\n } catch (e) {\n return null;\n }\n }\n\n try {\n return document.querySelector(s);\n } catch (e) {\n return null;\n }\n }\n\n function easingByName(name) {\n var n = String(name || \"\").trim();\n if (!n) return null;\n var easings = {\n linear: function (t) {\n return clamp01(t);\n },\n easeInQuad: function (t) {\n t = clamp01(t);\n return t * t;\n },\n easeOutQuad: function (t) {\n t = clamp01(t);\n return t * (2 - t);\n },\n easeInOutQuad: function (t) {\n t = clamp01(t);\n return t < 0.5 ? 2 * t * t : 1 - Math.pow(-2 * t + 2, 2) / 2;\n },\n easeInCubic: function (t) {\n t = clamp01(t);\n return t * t * t;\n },\n easeOutCubic: function (t) {\n t = clamp01(t);\n return 1 - Math.pow(1 - t, 3);\n },\n easeInOutCubic: function (t) {\n t = clamp01(t);\n return t < 0.5 ? 4 * t * t * t : 1 - Math.pow(-2 * t + 2, 3) / 2;\n },\n easeInOutSine: function (t) {\n t = clamp01(t);\n return -(Math.cos(Math.PI * t) - 1) / 2;\n },\n easeOutExpo: function (t) {\n t = clamp01(t);\n return t === 1 ? 1 : 1 - Math.pow(2, -10 * t);\n },\n };\n return easings[n] || null;\n }\n\n function ensureAutoEnableIfNeeded() {\n var body = document.body;\n if (!body) return;\n var instances = document.querySelectorAll(\"[rt-smooth-scroll-instance]\");\n var hasInstances = instances && instances.length > 0;\n if (!hasAttrAnywhere(\"rt-smooth-scroll\") && !hasInstances) {\n body.setAttribute(\"rt-smooth-scroll\", \"\");\n }\n }\n\n function isAttrPresent(v) {\n return v !== null && v !== undefined;\n }\n\n function readOptions(getLocal) {\n var prefix = \"rt-smooth-scroll-\";\n function localOrGlobal(name) {\n var v = getLocal(name);\n if (isAttrPresent(v)) return v;\n return getAttr(name);\n }\n function getRaw(name) {\n return localOrGlobal(prefix + name);\n }\n function hasRaw(name) {\n return isAttrPresent(getRaw(name));\n }\n\n var opts = {};\n var hasLerp = hasRaw(\"lerp\");\n var lerp = parseNum(getRaw(\"lerp\"), undefined);\n var hasDuration = hasRaw(\"duration\");\n var duration = parseNum(getRaw(\"duration\"), undefined);\n var hasEasing = hasRaw(\"easing\");\n var easingName = parseStr(getRaw(\"easing\"), \"\");\n var easingFn = easingByName(easingName);\n\n if (hasLerp && lerp !== undefined) {\n opts.lerp = lerp;\n } else {\n if (hasDuration && duration !== undefined) opts.duration = duration;\n if (hasEasing && easingFn) opts.easing = easingFn;\n }\n\n if (hasRaw(\"orientation\"))\n opts.orientation = parseStr(getRaw(\"orientation\"), \"\");\n if (hasRaw(\"gesture-orientation\"))\n opts.gestureOrientation = parseStr(getRaw(\"gesture-orientation\"), \"\");\n\n var smoothWheelRaw = getRaw(\"smooth-wheel\");\n var normalizeWheelRaw = getRaw(\"normalize-wheel\");\n if (isAttrPresent(smoothWheelRaw))\n opts.smoothWheel = parseBool(smoothWheelRaw, true);\n else if (isAttrPresent(normalizeWheelRaw))\n opts.smoothWheel = parseBool(normalizeWheelRaw, true);\n\n if (hasRaw(\"wheel-multiplier\"))\n opts.wheelMultiplier = parseNum(getRaw(\"wheel-multiplier\"), undefined);\n if (hasRaw(\"touch-multiplier\"))\n opts.touchMultiplier = parseNum(getRaw(\"touch-multiplier\"), undefined);\n if (hasRaw(\"sync-touch\"))\n opts.syncTouch = parseBool(getRaw(\"sync-touch\"), false);\n if (hasRaw(\"sync-touch-lerp\"))\n opts.syncTouchLerp = parseNum(getRaw(\"sync-touch-lerp\"), undefined);\n if (hasRaw(\"touch-inertia-exponent\"))\n opts.touchInertiaExponent = parseNum(\n getRaw(\"touch-inertia-exponent\"),\n undefined,\n );\n if (hasRaw(\"infinite\"))\n opts.infinite = parseBool(getRaw(\"infinite\"), false);\n if (hasRaw(\"auto-resize\"))\n opts.autoResize = parseBool(getRaw(\"auto-resize\"), true);\n if (hasRaw(\"overscroll\"))\n opts.overscroll = parseBool(getRaw(\"overscroll\"), true);\n\n if (hasRaw(\"anchors\")) {\n var s = String(getRaw(\"anchors\") || \"\").trim();\n if (s === \"\" || s.toLowerCase() === \"true\") opts.anchors = true;\n else if (s.toLowerCase() === \"false\") opts.anchors = false;\n else {\n try {\n opts.anchors = JSON.parse(s);\n } catch (e) {\n opts.anchors = true;\n }\n }\n }\n\n if (hasRaw(\"auto-toggle\"))\n opts.autoToggle = parseBool(getRaw(\"auto-toggle\"), false);\n if (hasRaw(\"allow-nested-scroll\"))\n opts.allowNestedScroll = parseBool(getRaw(\"allow-nested-scroll\"), false);\n\n var extra = localOrGlobal(prefix + \"options-json\");\n if (extra) {\n try {\n var parsed = JSON.parse(extra);\n if (parsed && typeof parsed === \"object\") {\n for (var k in parsed) opts[k] = parsed[k];\n }\n } catch (e) {}\n }\n return opts;\n }\n\n function loadScriptOnce(src) {\n return new Promise(function (resolve, reject) {\n if (typeof window.Lenis !== \"undefined\") return resolve();\n var existing = document.querySelector('script[data-rt-lenis=\"true\"]');\n if (existing) {\n existing.addEventListener(\"load\", function () {\n resolve();\n });\n existing.addEventListener(\"error\", function (e) {\n reject(e);\n });\n return;\n }\n var s = document.createElement(\"script\");\n s.src = src;\n s.async = true;\n s.dataset.rtLenis = \"true\";\n s.onload = function () {\n resolve();\n };\n s.onerror = function (e) {\n reject(e);\n };\n document.head.appendChild(s);\n });\n }\n\n function convertAnchorLinks() {\n var raw = getAttr(\"rt-smooth-scroll-anchor-links\");\n if (!parseBool(raw, false)) return;\n\n var links = document.querySelectorAll('a[href*=\"#\"]');\n var currentPath = window.location.pathname\n .replace(/\\/+$/, \"\")\n .toLowerCase();\n var origin = window.location.origin;\n\n for (var i = 0; i < links.length; i++) {\n var link = links[i];\n if (link.hasAttribute(\"rt-smooth-scroll-to\")) continue;\n\n var href = link.getAttribute(\"href\");\n if (!href) continue;\n\n var hashIndex = href.indexOf(\"#\");\n if (hashIndex === -1) continue;\n\n var pathPart = href.substring(0, hashIndex);\n var hashPart = href.substring(hashIndex);\n\n if (hashPart.length <= 1) continue;\n\n var isLocal = false;\n if (pathPart === \"\" || pathPart === \"./\") {\n isLocal = true;\n } else {\n var normPath = pathPart.replace(/\\/+$/, \"\").toLowerCase();\n if (pathPart.indexOf(\"http\") === 0) {\n try {\n var u = new URL(href, origin);\n if (\n u.origin === origin &&\n u.pathname.replace(/\\/+$/, \"\").toLowerCase() === currentPath\n ) {\n isLocal = true;\n }\n } catch (e) {}\n } else if (normPath === currentPath) {\n isLocal = true;\n }\n }\n\n if (isLocal) {\n link.setAttribute(\"rt-smooth-scroll-to\", hashPart);\n\n // Remove href completely to hide status bar text\n link.removeAttribute(\"href\");\n\n // Restore accessibility and cursor\n link.style.cursor = \"pointer\";\n link.setAttribute(\"tabindex\", \"0\");\n link.setAttribute(\"role\", \"button\");\n }\n }\n }\n\n function init() {\n ensureAutoEnableIfNeeded();\n convertAnchorLinks();\n\n var enabledRoot = hasAttrAnywhere(\"rt-smooth-scroll\");\n var instanceEls = document.querySelectorAll(\"[rt-smooth-scroll-instance]\");\n var hasInstances = instanceEls && instanceEls.length > 0;\n var shouldRun = enabledRoot || hasInstances;\n if (!shouldRun) return;\n\n var lenisSrc = parseStr(\n getAttr(\"rt-smooth-scroll-lenis-src\"),\n \"https://cdn.jsdelivr.net/npm/lenis@1.3.16/dist/lenis.min.js\",\n );\n var resizeDebounceMs = parseNum(\n getAttr(\"rt-smooth-scroll-resize-debounce-ms\"),\n 0,\n );\n var debug = parseBool(getAttr(\"rt-smooth-scroll-debug\"), true);\n\n var state = {\n destroyed: false,\n rafId: 0,\n instances: {},\n order: [],\n resizeTimers: {},\n clickListener: null,\n keyListener: null,\n };\n\n function scheduleResize(id) {\n var inst = state.instances[id];\n if (!inst || state.destroyed) return;\n if (resizeDebounceMs > 0) {\n clearTimeout(state.resizeTimers[id]);\n state.resizeTimers[id] = setTimeout(function () {\n var i2 = state.instances[id];\n if (!i2 || state.destroyed) return;\n i2.resize();\n }, resizeDebounceMs);\n return;\n }\n inst.resize();\n }\n\n function startRaf() {\n function raf(time) {\n if (state.destroyed) return;\n for (var i = 0; i < state.order.length; i++) {\n var id = state.order[i];\n var inst = state.instances[id];\n if (inst) inst.raf(time);\n }\n state.rafId = requestAnimationFrame(raf);\n }\n state.rafId = requestAnimationFrame(raf);\n }\n\n function sanitizeOptionsForLog(opts) {\n var out = {};\n for (var k in opts) {\n if (!Object.prototype.hasOwnProperty.call(opts, k)) continue;\n var v = opts[k];\n if (typeof v === \"function\") out[k] = \"[Function]\";\n else out[k] = v;\n }\n return out;\n }\n\n function resolveElementFromSelector(base, selector) {\n if (!selector) return null;\n var s = String(selector).trim();\n if (!s.length) return null;\n if (s === \"window\") return window;\n try {\n return (base || document).querySelector(s);\n } catch (e) {\n return null;\n }\n }\n\n function applySelectorsToOptions(el, opts) {\n var prefix = \"rt-smooth-scroll-\";\n var wrapperSel = getAttrFrom(el, prefix + \"wrapper\");\n var contentSel = getAttrFrom(el, prefix + \"content\");\n var eventsSel = getAttrFrom(el, prefix + \"events-target\");\n if (wrapperSel) {\n var w = resolveElementFromSelector(document, wrapperSel);\n if (w) opts.wrapper = w;\n }\n if (contentSel) {\n var c = resolveElementFromSelector(document, contentSel);\n if (c) opts.content = c;\n }\n if (eventsSel) {\n var et = resolveElementFromSelector(document, eventsSel);\n if (et) opts.eventsTarget = et;\n }\n return opts;\n }\n\n function getContentForWrapper(wrapperEl) {\n var selector = getAttrFrom(wrapperEl, \"rt-smooth-scroll-content\");\n if (selector) {\n var found = null;\n try {\n found = wrapperEl.querySelector(selector);\n } catch (e) {\n found = null;\n }\n if (found) return found;\n }\n return wrapperEl.firstElementChild || wrapperEl;\n }\n\n function createInstance(id, wrapper, content, options, isRoot) {\n var opts = options || {};\n if (!isRoot) {\n if (wrapper) opts.wrapper = wrapper;\n if (content) opts.content = content;\n }\n var inst = new window.Lenis(opts);\n state.instances[id] = inst;\n state.order.push(id);\n if (id === \"root\") window.lenis = inst;\n if (debug) {\n try {\n console.log(\"[rt-smooth-scroll] instance:\", id, {\n wrapper: isRoot ? opts.wrapper || \"default\" : wrapper,\n content: isRoot ? opts.content || \"default\" : content,\n options: sanitizeOptionsForLog(opts),\n });\n } catch (e) {}\n }\n return inst;\n }\n\n function setupScrollToListeners() {\n if (state.clickListener) return;\n\n var handleScrollAction = function (targetEl, e) {\n var targetVal = targetEl.getAttribute(\"rt-smooth-scroll-to\");\n if (!targetVal) return;\n\n if (e) e.preventDefault();\n\n var target = null;\n var numeric = parseFloat(targetVal);\n\n if (targetVal === \"top\") {\n target = 0;\n } else if (!isNaN(numeric) && isFinite(numeric)) {\n target = numeric;\n } else {\n target = resolveTargetFromStr(targetVal);\n }\n\n if (target === null && targetVal !== \"top\" && isNaN(numeric)) return;\n\n var instance = null;\n var explicitId = targetEl.getAttribute(\"rt-smooth-scroll-target-id\");\n if (explicitId && state.instances[explicitId]) {\n instance = state.instances[explicitId];\n } else {\n var parentWrapper = targetEl.closest(\"[rt-smooth-scroll-instance]\");\n if (parentWrapper) {\n var parentId = parentWrapper.getAttribute(\"rt-smooth-scroll-id\");\n if (parentId && state.instances[parentId]) {\n instance = state.instances[parentId];\n }\n }\n }\n if (!instance && state.instances[\"root\"]) {\n instance = state.instances[\"root\"];\n }\n\n if (!instance) return;\n\n var opts = {};\n var offsetRaw = targetEl.getAttribute(\"rt-smooth-scroll-offset\");\n if (offsetRaw) {\n var offsetNum = parseFloat(offsetRaw);\n if (!isNaN(offsetNum) && isFinite(offsetNum)) {\n opts.offset = offsetNum;\n } else {\n var offsetEl = resolveTargetFromStr(offsetRaw);\n if (offsetEl) opts.offset = -1 * offsetEl.offsetHeight;\n }\n }\n var dur = parseNum(\n targetEl.getAttribute(\"rt-smooth-scroll-duration\"),\n undefined,\n );\n if (dur !== undefined) opts.duration = dur;\n var immediate = parseBool(\n targetEl.getAttribute(\"rt-smooth-scroll-immediate\"),\n null,\n );\n if (immediate !== null) opts.immediate = immediate;\n var lock = parseBool(\n targetEl.getAttribute(\"rt-smooth-scroll-lock\"),\n null,\n );\n if (lock !== null) opts.lock = lock;\n var force = parseBool(\n targetEl.getAttribute(\"rt-smooth-scroll-force\"),\n null,\n );\n if (force !== null) opts.force = force;\n\n instance.scrollTo(target, opts);\n };\n\n state.clickListener = function (e) {\n var trigger = e.target.closest(\"[rt-smooth-scroll-to]\");\n if (trigger) handleScrollAction(trigger, e);\n };\n\n state.keyListener = function (e) {\n if (e.key !== \"Enter\" && e.key !== \" \") return;\n var trigger = e.target.closest(\"[rt-smooth-scroll-to]\");\n if (trigger && !trigger.hasAttribute(\"href\")) {\n handleScrollAction(trigger, e);\n }\n };\n\n document.addEventListener(\"click\", state.clickListener);\n document.addEventListener(\"keydown\", state.keyListener);\n }\n\n function makeApi() {\n function forEachTarget(id, fn) {\n if (typeof id === \"string\" && id.length) {\n var one = state.instances[id];\n if (one) fn(id, one);\n return;\n }\n for (var i = 0; i < state.order.length; i++) {\n var k = state.order[i];\n var inst = state.instances[k];\n if (inst) fn(k, inst);\n }\n }\n\n return {\n __initialized: true,\n ids: function () {\n return state.order.slice();\n },\n get: function (id) {\n return state.instances[id] || null;\n },\n start: function (id) {\n forEachTarget(id, function (_, inst) {\n inst.start();\n });\n },\n stop: function (id) {\n forEachTarget(id, function (_, inst) {\n inst.stop();\n });\n },\n toggle: function (id, force) {\n forEachTarget(id, function (_, inst) {\n if (typeof force === \"boolean\") {\n if (force) inst.stop();\n else inst.start();\n return;\n }\n if (inst.isStopped) inst.start();\n else inst.stop();\n });\n },\n resize: function (id) {\n forEachTarget(id, function (k) {\n scheduleResize(k);\n });\n },\n refreshAnchors: function () {\n convertAnchorLinks();\n },\n destroy: function (id) {\n if (state.destroyed) return;\n function destroyOne(k) {\n clearTimeout(state.resizeTimers[k]);\n var inst = state.instances[k];\n if (inst) {\n try {\n inst.destroy();\n } catch (e) {}\n delete state.instances[k];\n }\n var idx = state.order.indexOf(k);\n if (idx >= 0) state.order.splice(idx, 1);\n if (k === \"root\") {\n try {\n delete window.lenis;\n } catch (e) {\n window.lenis = undefined;\n }\n }\n }\n if (typeof id === \"string\" && id.length) {\n destroyOne(id);\n return;\n }\n if (state.clickListener) {\n document.removeEventListener(\"click\", state.clickListener);\n state.clickListener = null;\n }\n if (state.keyListener) {\n document.removeEventListener(\"keydown\", state.keyListener);\n state.keyListener = null;\n }\n while (state.order.length) destroyOne(state.order[0]);\n state.destroyed = true;\n if (state.rafId) cancelAnimationFrame(state.rafId);\n },\n };\n }\n\n function installLegacyAliases(api) {\n window.disableScroll = function () {\n api.stop();\n if (document.body) document.body.classList.add(\"no-scroll\");\n };\n window.enableScroll = function () {\n api.start();\n if (document.body) document.body.classList.remove(\"no-scroll\");\n };\n }\n\n loadScriptOnce(lenisSrc)\n .then(function () {\n if (state.destroyed) return;\n var els = document.querySelectorAll(\"[rt-smooth-scroll-instance]\");\n var totalCount = (enabledRoot ? 1 : 0) + (els ? els.length : 0);\n var allowAutoRaf =\n totalCount === 1 && enabledRoot && (!els || els.length === 0);\n\n if (enabledRoot && !state.instances.root) {\n var optsRoot = readOptions(function () {\n return null;\n });\n optsRoot = applySelectorsToOptions(\n document.body || document.documentElement,\n optsRoot,\n );\n if (allowAutoRaf) {\n var rawAutoRaf = getAttr(\"rt-smooth-scroll-auto-raf\");\n var autoRaf = isAttrPresent(rawAutoRaf)\n ? parseBool(rawAutoRaf, true)\n : true;\n optsRoot.autoRaf = autoRaf;\n } else {\n optsRoot.autoRaf = false;\n }\n createInstance(\"root\", null, null, optsRoot, true);\n }\n\n var autoCount = 0;\n for (var i = 0; i < els.length; i++) {\n var el = els[i];\n var id = getAttrFrom(el, \"rt-smooth-scroll-id\");\n if (!id) {\n autoCount++;\n id = \"instance-\" + autoCount;\n el.setAttribute(\"rt-smooth-scroll-id\", id);\n }\n if (state.instances[id]) continue;\n var content = getContentForWrapper(el);\n var opts = readOptions(function (name) {\n return getAttrFrom(el, name);\n });\n opts = applySelectorsToOptions(el, opts);\n opts.autoRaf = false;\n createInstance(id, el, content, opts, false);\n }\n\n if (!allowAutoRaf) startRaf();\n\n var api = makeApi();\n window[RT_NS] = api;\n installLegacyAliases(api);\n\n setupScrollToListeners();\n\n window.addEventListener(\"resize\", function () {\n api.resize();\n });\n })\n .catch(function () {});\n }\n\n if (document.readyState === \"loading\") {\n document.addEventListener(\"DOMContentLoaded\", init);\n } else {\n init();\n }\n\n window[RT_NS] = window[RT_NS] || {\n __initialized: true,\n ids: function () {\n return [];\n },\n get: function () {\n return null;\n },\n };\n})();\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/index.min.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
/*! @rethink-js/rt-smooth-scroll v1.0
|
|
2
|
-
(()=>{(function(){var p="rtSmoothScroll";if(window[p]&&window[p].__initialized)return;function O(o,n){return!o||!o.hasAttribute(n)?null:o.getAttribute(n)}function z(o){var n=document.documentElement,t=document.body,e=O(n,o);return e!==null||(e=O(t,o),e!==null)?e:null}function q(o){var n=document.documentElement,t=document.body;return!!(n&&n.hasAttribute(o)||t&&t.hasAttribute(o))}function g(o,n){if(o==null)return n;var t=String(o).trim().toLowerCase();return t===""||t==="true"||t==="1"||t==="yes"||t==="y"||t==="on"?!0:t==="false"||t==="0"||t==="no"||t==="n"||t==="off"?!1:n}function y(o,n){if(o==null)return n;var t=Number(o);return Number.isFinite(t)?t:n}function A(o,n){if(o==null)return n;var t=String(o);return t.length?t:n}function m(o){return o<0?0:o>1?1:o}function j(o){var n=String(o||"").trim();if(!n)return null;var t={linear:function(e){return m(e)},easeInQuad:function(e){return e=m(e),e*e},easeOutQuad:function(e){return e=m(e),e*(2-e)},easeInOutQuad:function(e){return e=m(e),e<.5?2*e*e:1-Math.pow(-2*e+2,2)/2},easeInCubic:function(e){return e=m(e),e*e*e},easeOutCubic:function(e){return e=m(e),1-Math.pow(1-e,3)},easeInOutCubic:function(e){return e=m(e),e<.5?4*e*e*e:1-Math.pow(-2*e+2,3)/2},easeInOutSine:function(e){return e=m(e),-(Math.cos(Math.PI*e)-1)/2},easeOutExpo:function(e){return e=m(e),e===1?1:1-Math.pow(2,-10*e)}};return t[n]||null}function x(o){if(!o)return!1;for(var n=0;n<o.attributes.length;n++){var t=o.attributes[n].name;if(t&&t.indexOf("rt-smooth-scroll-")===0)return!0}return!1}function P(){var o=document.body,n=document.documentElement;if(o){var t=document.querySelectorAll("[rt-smooth-scroll-instance]"),e=t&&t.length>0;!q("rt-smooth-scroll")&&!e&&o.setAttribute("rt-smooth-scroll","");var f=x(n)||x(o);if(!(f||e)){var h={"rt-smooth-scroll-lerp":"0.25","rt-smooth-scroll-orientation":"vertical","rt-smooth-scroll-gesture-orientation":"vertical","rt-smooth-scroll-normalize-wheel":"true","rt-smooth-scroll-wheel-multiplier":"1","rt-smooth-scroll-easing":"easeOutCubic","rt-smooth-scroll-smooth-touch":"true","rt-smooth-scroll-sync-touch":"true","rt-smooth-scroll-sync-touch-lerp":"0","rt-smooth-scroll-touch-inertia-multiplier":"10","rt-smooth-scroll-touch-multiplier":"2"};for(var v in h)!n.hasAttribute(v)&&!o.hasAttribute(v)&&o.setAttribute(v,h[v])}}}function E(o){var n="rt-smooth-scroll-";function t(w){var S=o(w);return S!=null?S:z(w)}var e=t(n+"duration"),f=t(n+"lerp"),h=e!=null&&String(e).trim()!=="",v=f!=null&&String(f).trim()!=="",s=y(e,1.15),b=y(f,.25);h&&!v&&(b=0);var I=A(t(n+"orientation"),"vertical"),T=A(t(n+"gesture-orientation"),"vertical"),C=g(t(n+"normalize-wheel"),!0),_=y(t(n+"wheel-multiplier"),1),L=g(t(n+"smooth-touch"),!0),F=g(t(n+"sync-touch"),!0),N=y(t(n+"sync-touch-lerp"),0),R=y(t(n+"touch-inertia-multiplier"),10),i=y(t(n+"touch-multiplier"),2),r=g(t(n+"infinite"),!1),u=A(t(n+"easing"),"easeOutCubic"),a=j(u),c={lerp:b,orientation:I,gestureOrientation:T,normalizeWheel:C,wheelMultiplier:_,smoothTouch:L,syncTouch:F,syncTouchLerp:N,touchInertiaMultiplier:R,touchMultiplier:i,infinite:r};b===0&&(c.duration=s),a&&(c.easing=a);var l=t(n+"options-json");if(l)try{var d=JSON.parse(l);if(d&&typeof d=="object")for(var M in d)c[M]=d[M]}catch(w){}return c}function Q(o){return new Promise(function(n,t){if(typeof window.Lenis!="undefined")return n();var e=document.querySelector('script[data-rt-lenis="true"]');if(e){e.addEventListener("load",function(){n()}),e.addEventListener("error",function(h){t(h)});return}var f=document.createElement("script");f.src=o,f.async=!0,f.dataset.rtLenis="true",f.onload=function(){n()},f.onerror=function(h){t(h)},document.head.appendChild(f)})}function D(){P();var o=q("rt-smooth-scroll"),n=document.querySelectorAll("[rt-smooth-scroll-instance]"),t=o||n&&n.length>0;if(!t)return;var e=A(z("rt-smooth-scroll-lenis-src"),"https://cdn.jsdelivr.net/npm/lenis@1.3.16/dist/lenis.min.js"),f=g(z("rt-smooth-scroll-observe-resize"),!0),h=g(z("rt-smooth-scroll-observe-mutations"),!0),v=y(z("rt-smooth-scroll-resize-debounce-ms"),0),s={destroyed:!1,rafId:0,instances:{},order:[],observers:{},resizeTimers:{}};function b(i){var r=s.instances[i];if(!(!r||s.destroyed)){if(v>0){clearTimeout(s.resizeTimers[i]),s.resizeTimers[i]=setTimeout(function(){var u=s.instances[i];!u||s.destroyed||u.resize()},v);return}r.resize()}}function I(){function i(r){if(!s.destroyed){for(var u=0;u<s.order.length;u++){var a=s.order[u],c=s.instances[a];c&&c.raf(r)}s.rafId=requestAnimationFrame(i)}}s.rafId=requestAnimationFrame(i)}function T(i,r){if(!(!r||r===window)){var u=null,a=null;f&&typeof ResizeObserver!="undefined"&&(u=new ResizeObserver(function(){b(i)}),u.observe(r)),h&&typeof MutationObserver!="undefined"&&(a=new MutationObserver(function(){b(i)}),a.observe(r,{childList:!0,subtree:!0})),s.observers[i]={ro:u,mo:a}}}function C(i){var r=s.observers[i];r&&(r.ro&&r.ro.disconnect(),r.mo&&r.mo.disconnect(),delete s.observers[i])}function _(i){var r={};for(var u in i)if(Object.prototype.hasOwnProperty.call(i,u)){var a=i[u];typeof a=="function"?r[u]="[Function]":r[u]=a}return r}function L(i,r,u,a){var c=a||{};r&&(c.wrapper=r),u&&(c.content=u);var l=new window.Lenis(c);s.instances[i]=l,s.order.push(i),r&&r!==window&&T(i,r),i==="root"&&(window.lenis=l);try{console.log("[rt-smooth-scroll] instance:",i,{wrapper:r===window?"window":r,content:u||null,options:_(c)})}catch(d){}return l}function F(i){var r=O(i,"rt-smooth-scroll-content");if(r){var u=i.querySelector(r);if(u)return u}return i.firstElementChild||i}function N(){function i(r,u){if(typeof r=="string"&&r.length){var a=s.instances[r];a&&u(r,a);return}for(var c=0;c<s.order.length;c++){var l=s.order[c],d=s.instances[l];d&&u(l,d)}}return{__initialized:!0,ids:function(){return s.order.slice()},get:function(r){return s.instances[r]||null},start:function(r){i(r,function(u,a){a.start()})},stop:function(r){i(r,function(u,a){a.stop()})},toggle:function(r,u){i(r,function(a,c){if(typeof u=="boolean"){u?c.stop():c.start();return}c.isStopped?c.start():c.stop()})},resize:function(r){i(r,function(u){b(u)})},destroy:function(r){if(s.destroyed)return;function u(a){clearTimeout(s.resizeTimers[a]),C(a);var c=s.instances[a];if(c){try{c.destroy()}catch(d){}delete s.instances[a]}var l=s.order.indexOf(a);if(l>=0&&s.order.splice(l,1),a==="root")try{delete window.lenis}catch(d){window.lenis=void 0}}if(typeof r=="string"&&r.length){u(r);return}for(;s.order.length;)u(s.order[0]);s.destroyed=!0,s.rafId&&cancelAnimationFrame(s.rafId)}}}function R(i){window.disableScroll=function(){i.stop(),document.body&&document.body.classList.add("no-scroll")},window.enableScroll=function(){i.start(),document.body&&document.body.classList.remove("no-scroll")}}Q(e).then(function(){if(!s.destroyed){if(o&&!s.instances.root){var i=E(function(){return null});L("root",window,document.documentElement,i)}for(var r=document.querySelectorAll("[rt-smooth-scroll-instance]"),u=0,a=0;a<r.length;a++){var c=r[a],l=O(c,"rt-smooth-scroll-id");if(l||(u++,l="instance-"+u),!s.instances[l]){var d=F(c),M=E(function(S){return O(c,S)});L(l,c,d,M)}}I();var w=N();window[p]=w,R(w),window.addEventListener("resize",function(){w.resize()})}}).catch(function(){})}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",D):D(),window[p]=window[p]||{__initialized:!0,ids:function(){return[]},get:function(){return null}}})();})();
|
|
1
|
+
/*! @rethink-js/rt-smooth-scroll v1.2.0 | MIT */
|
|
2
|
+
(()=>{(function(){var x="rtSmoothScroll";if(window[x]&&window[x].__initialized)return;function A(o,u){return!o||!o.hasAttribute(u)?null:o.getAttribute(u)}function I(o){var u=document.documentElement,s=document.body,e=A(u,o);return e!==null||(e=A(s,o),e!==null)?e:null}function W(o){var u=document.documentElement,s=document.body;return!!(u&&u.hasAttribute(o)||s&&s.hasAttribute(o))}function m(o,u){if(o==null)return u;var s=String(o).trim().toLowerCase();return s===""||s==="true"||s==="1"||s==="yes"||s==="y"||s==="on"?!0:s==="false"||s==="0"||s==="no"||s==="n"||s==="off"?!1:u}function L(o,u){if(o==null)return u;var s=String(o).trim();if(!s.length)return u;var e=Number(s);return Number.isFinite(e)?e:u}function R(o,u){if(o==null)return u;var s=String(o);return s.length?s:u}function w(o){return o<0?0:o>1?1:o}function $(o){if(!o)return null;var u=String(o).trim();if(!u)return null;if(u==="window")return window;var s=u.match(/^(.*)\(\s*(\d+)\s*\)$/);if(s){var e=s[1].trim(),c=parseInt(s[2],10);if(!e||isNaN(c)||c<1)return null;try{var a=document.querySelectorAll(e);return a[c-1]||null}catch(g){return null}}try{return document.querySelector(u)}catch(g){return null}}function V(o){var u=String(o||"").trim();if(!u)return null;var s={linear:function(e){return w(e)},easeInQuad:function(e){return e=w(e),e*e},easeOutQuad:function(e){return e=w(e),e*(2-e)},easeInOutQuad:function(e){return e=w(e),e<.5?2*e*e:1-Math.pow(-2*e+2,2)/2},easeInCubic:function(e){return e=w(e),e*e*e},easeOutCubic:function(e){return e=w(e),1-Math.pow(1-e,3)},easeInOutCubic:function(e){return e=w(e),e<.5?4*e*e*e:1-Math.pow(-2*e+2,3)/2},easeInOutSine:function(e){return e=w(e),-(Math.cos(Math.PI*e)-1)/2},easeOutExpo:function(e){return e=w(e),e===1?1:1-Math.pow(2,-10*e)}};return s[u]||null}function K(){var o=document.body;if(o){var u=document.querySelectorAll("[rt-smooth-scroll-instance]"),s=u&&u.length>0;!W("rt-smooth-scroll")&&!s&&o.setAttribute("rt-smooth-scroll","")}}function E(o){return o!=null}function Q(o){var u="rt-smooth-scroll-";function s(t){var n=o(t);return E(n)?n:I(t)}function e(t){return s(u+t)}function c(t){return E(e(t))}var a={},g=c("lerp"),r=L(e("lerp"),void 0),S=c("duration"),N=L(e("duration"),void 0),z=c("easing"),C=R(e("easing"),""),O=V(C);g&&r!==void 0?a.lerp=r:(S&&N!==void 0&&(a.duration=N),z&&O&&(a.easing=O)),c("orientation")&&(a.orientation=R(e("orientation"),"")),c("gesture-orientation")&&(a.gestureOrientation=R(e("gesture-orientation"),""));var M=e("smooth-wheel"),_=e("normalize-wheel");if(E(M)?a.smoothWheel=m(M,!0):E(_)&&(a.smoothWheel=m(_,!0)),c("wheel-multiplier")&&(a.wheelMultiplier=L(e("wheel-multiplier"),void 0)),c("touch-multiplier")&&(a.touchMultiplier=L(e("touch-multiplier"),void 0)),c("sync-touch")&&(a.syncTouch=m(e("sync-touch"),!1)),c("sync-touch-lerp")&&(a.syncTouchLerp=L(e("sync-touch-lerp"),void 0)),c("touch-inertia-exponent")&&(a.touchInertiaExponent=L(e("touch-inertia-exponent"),void 0)),c("infinite")&&(a.infinite=m(e("infinite"),!1)),c("auto-resize")&&(a.autoResize=m(e("auto-resize"),!0)),c("overscroll")&&(a.overscroll=m(e("overscroll"),!0)),c("anchors")){var k=String(e("anchors")||"").trim();if(k===""||k.toLowerCase()==="true")a.anchors=!0;else if(k.toLowerCase()==="false")a.anchors=!1;else try{a.anchors=JSON.parse(k)}catch(t){a.anchors=!0}}c("auto-toggle")&&(a.autoToggle=m(e("auto-toggle"),!1)),c("allow-nested-scroll")&&(a.allowNestedScroll=m(e("allow-nested-scroll"),!1));var j=s(u+"options-json");if(j)try{var q=JSON.parse(j);if(q&&typeof q=="object")for(var i in q)a[i]=q[i]}catch(t){}return a}function X(o){return new Promise(function(u,s){if(typeof window.Lenis!="undefined")return u();var e=document.querySelector('script[data-rt-lenis="true"]');if(e){e.addEventListener("load",function(){u()}),e.addEventListener("error",function(a){s(a)});return}var c=document.createElement("script");c.src=o,c.async=!0,c.dataset.rtLenis="true",c.onload=function(){u()},c.onerror=function(a){s(a)},document.head.appendChild(c)})}function B(){var o=I("rt-smooth-scroll-anchor-links");if(m(o,!1))for(var u=document.querySelectorAll('a[href*="#"]'),s=window.location.pathname.replace(/\/+$/,"").toLowerCase(),e=window.location.origin,c=0;c<u.length;c++){var a=u[c];if(!a.hasAttribute("rt-smooth-scroll-to")){var g=a.getAttribute("href");if(g){var r=g.indexOf("#");if(r!==-1){var S=g.substring(0,r),N=g.substring(r);if(!(N.length<=1)){var z=!1;if(S===""||S==="./")z=!0;else{var C=S.replace(/\/+$/,"").toLowerCase();if(S.indexOf("http")===0)try{var O=new URL(g,e);O.origin===e&&O.pathname.replace(/\/+$/,"").toLowerCase()===s&&(z=!0)}catch(M){}else C===s&&(z=!0)}z&&(a.setAttribute("rt-smooth-scroll-to",N),a.removeAttribute("href"),a.style.cursor="pointer",a.setAttribute("tabindex","0"),a.setAttribute("role","button"))}}}}}}function J(){K(),B();var o=W("rt-smooth-scroll"),u=document.querySelectorAll("[rt-smooth-scroll-instance]"),s=u&&u.length>0,e=o||s;if(!e)return;var c=R(I("rt-smooth-scroll-lenis-src"),"https://cdn.jsdelivr.net/npm/lenis@1.3.16/dist/lenis.min.js"),a=L(I("rt-smooth-scroll-resize-debounce-ms"),0),g=m(I("rt-smooth-scroll-debug"),!0),r={destroyed:!1,rafId:0,instances:{},order:[],resizeTimers:{},clickListener:null,keyListener:null};function S(i){var t=r.instances[i];if(!(!t||r.destroyed)){if(a>0){clearTimeout(r.resizeTimers[i]),r.resizeTimers[i]=setTimeout(function(){var n=r.instances[i];!n||r.destroyed||n.resize()},a);return}t.resize()}}function N(){function i(t){if(!r.destroyed){for(var n=0;n<r.order.length;n++){var l=r.order[n],f=r.instances[l];f&&f.raf(t)}r.rafId=requestAnimationFrame(i)}}r.rafId=requestAnimationFrame(i)}function z(i){var t={};for(var n in i)if(Object.prototype.hasOwnProperty.call(i,n)){var l=i[n];typeof l=="function"?t[n]="[Function]":t[n]=l}return t}function C(i,t){if(!t)return null;var n=String(t).trim();if(!n.length)return null;if(n==="window")return window;try{return(i||document).querySelector(n)}catch(l){return null}}function O(i,t){var n="rt-smooth-scroll-",l=A(i,n+"wrapper"),f=A(i,n+"content"),d=A(i,n+"events-target");if(l){var v=C(document,l);v&&(t.wrapper=v)}if(f){var y=C(document,f);y&&(t.content=y)}if(d){var h=C(document,d);h&&(t.eventsTarget=h)}return t}function M(i){var t=A(i,"rt-smooth-scroll-content");if(t){var n=null;try{n=i.querySelector(t)}catch(l){n=null}if(n)return n}return i.firstElementChild||i}function _(i,t,n,l,f){var d=l||{};f||(t&&(d.wrapper=t),n&&(d.content=n));var v=new window.Lenis(d);if(r.instances[i]=v,r.order.push(i),i==="root"&&(window.lenis=v),g)try{console.log("[rt-smooth-scroll] instance:",i,{wrapper:f?d.wrapper||"default":t,content:f?d.content||"default":n,options:z(d)})}catch(y){}return v}function k(){if(!r.clickListener){var i=function(t,n){var l=t.getAttribute("rt-smooth-scroll-to");if(l){n&&n.preventDefault();var f=null,d=parseFloat(l);if(l==="top"?f=0:!isNaN(d)&&isFinite(d)?f=d:f=$(l),!(f===null&&l!=="top"&&isNaN(d))){var v=null,y=t.getAttribute("rt-smooth-scroll-target-id");if(y&&r.instances[y])v=r.instances[y];else{var h=t.closest("[rt-smooth-scroll-instance]");if(h){var p=h.getAttribute("rt-smooth-scroll-id");p&&r.instances[p]&&(v=r.instances[p])}}if(!v&&r.instances.root&&(v=r.instances.root),!!v){var b={},T=t.getAttribute("rt-smooth-scroll-offset");if(T){var F=parseFloat(T);if(!isNaN(F)&&isFinite(F))b.offset=F;else{var D=$(T);D&&(b.offset=-1*D.offsetHeight)}}var G=L(t.getAttribute("rt-smooth-scroll-duration"),void 0);G!==void 0&&(b.duration=G);var H=m(t.getAttribute("rt-smooth-scroll-immediate"),null);H!==null&&(b.immediate=H);var P=m(t.getAttribute("rt-smooth-scroll-lock"),null);P!==null&&(b.lock=P);var U=m(t.getAttribute("rt-smooth-scroll-force"),null);U!==null&&(b.force=U),v.scrollTo(f,b)}}}};r.clickListener=function(t){var n=t.target.closest("[rt-smooth-scroll-to]");n&&i(n,t)},r.keyListener=function(t){if(!(t.key!=="Enter"&&t.key!==" ")){var n=t.target.closest("[rt-smooth-scroll-to]");n&&!n.hasAttribute("href")&&i(n,t)}},document.addEventListener("click",r.clickListener),document.addEventListener("keydown",r.keyListener)}}function j(){function i(t,n){if(typeof t=="string"&&t.length){var l=r.instances[t];l&&n(t,l);return}for(var f=0;f<r.order.length;f++){var d=r.order[f],v=r.instances[d];v&&n(d,v)}}return{__initialized:!0,ids:function(){return r.order.slice()},get:function(t){return r.instances[t]||null},start:function(t){i(t,function(n,l){l.start()})},stop:function(t){i(t,function(n,l){l.stop()})},toggle:function(t,n){i(t,function(l,f){if(typeof n=="boolean"){n?f.stop():f.start();return}f.isStopped?f.start():f.stop()})},resize:function(t){i(t,function(n){S(n)})},refreshAnchors:function(){B()},destroy:function(t){if(r.destroyed)return;function n(l){clearTimeout(r.resizeTimers[l]);var f=r.instances[l];if(f){try{f.destroy()}catch(v){}delete r.instances[l]}var d=r.order.indexOf(l);if(d>=0&&r.order.splice(d,1),l==="root")try{delete window.lenis}catch(v){window.lenis=void 0}}if(typeof t=="string"&&t.length){n(t);return}for(r.clickListener&&(document.removeEventListener("click",r.clickListener),r.clickListener=null),r.keyListener&&(document.removeEventListener("keydown",r.keyListener),r.keyListener=null);r.order.length;)n(r.order[0]);r.destroyed=!0,r.rafId&&cancelAnimationFrame(r.rafId)}}}function q(i){window.disableScroll=function(){i.stop(),document.body&&document.body.classList.add("no-scroll")},window.enableScroll=function(){i.start(),document.body&&document.body.classList.remove("no-scroll")}}X(c).then(function(){if(!r.destroyed){var i=document.querySelectorAll("[rt-smooth-scroll-instance]"),t=(o?1:0)+(i?i.length:0),n=t===1&&o&&(!i||i.length===0);if(o&&!r.instances.root){var l=Q(function(){return null});if(l=O(document.body||document.documentElement,l),n){var f=I("rt-smooth-scroll-auto-raf"),d=E(f)?m(f,!0):!0;l.autoRaf=d}else l.autoRaf=!1;_("root",null,null,l,!0)}for(var v=0,y=0;y<i.length;y++){var h=i[y],p=A(h,"rt-smooth-scroll-id");if(p||(v++,p="instance-"+v,h.setAttribute("rt-smooth-scroll-id",p)),!r.instances[p]){var b=M(h),T=Q(function(D){return A(h,D)});T=O(h,T),T.autoRaf=!1,_(p,h,b,T,!1)}}n||N();var F=j();window[x]=F,q(F),k(),window.addEventListener("resize",function(){F.resize()})}}).catch(function(){})}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",J):J(),window[x]=window[x]||{__initialized:!0,ids:function(){return[]},get:function(){return null}}})();})();
|
|
3
3
|
//# sourceMappingURL=index.min.js.map
|
package/dist/index.min.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/index.js"],
|
|
4
|
-
"sourcesContent": ["(function () {\n var RT_NS = \"rtSmoothScroll\";\n if (window[RT_NS] && window[RT_NS].__initialized) return;\n\n function getAttrFrom(el, name) {\n if (!el) return null;\n if (!el.hasAttribute(name)) return null;\n return el.getAttribute(name);\n }\n\n function getAttr(name) {\n var html = document.documentElement;\n var body = document.body;\n var v = getAttrFrom(html, name);\n if (v !== null) return v;\n v = getAttrFrom(body, name);\n if (v !== null) return v;\n return null;\n }\n\n function hasAttrAnywhere(name) {\n var html = document.documentElement;\n var body = document.body;\n if (html && html.hasAttribute(name)) return true;\n if (body && body.hasAttribute(name)) return true;\n return false;\n }\n\n function parseBool(v, def) {\n if (v === null || v === undefined) return def;\n var s = String(v).trim().toLowerCase();\n if (s === \"\") return true;\n if (s === \"true\" || s === \"1\" || s === \"yes\" || s === \"y\" || s === \"on\")\n return true;\n if (s === \"false\" || s === \"0\" || s === \"no\" || s === \"n\" || s === \"off\")\n return false;\n return def;\n }\n\n function parseNum(v, def) {\n if (v === null || v === undefined) return def;\n var n = Number(v);\n return Number.isFinite(n) ? n : def;\n }\n\n function parseStr(v, def) {\n if (v === null || v === undefined) return def;\n var s = String(v);\n return s.length ? s : def;\n }\n\n function clamp01(t) {\n if (t < 0) return 0;\n if (t > 1) return 1;\n return t;\n }\n\n function easingByName(name) {\n var n = String(name || \"\").trim();\n if (!n) return null;\n var easings = {\n linear: function (t) {\n return clamp01(t);\n },\n easeInQuad: function (t) {\n t = clamp01(t);\n return t * t;\n },\n easeOutQuad: function (t) {\n t = clamp01(t);\n return t * (2 - t);\n },\n easeInOutQuad: function (t) {\n t = clamp01(t);\n return t < 0.5 ? 2 * t * t : 1 - Math.pow(-2 * t + 2, 2) / 2;\n },\n easeInCubic: function (t) {\n t = clamp01(t);\n return t * t * t;\n },\n easeOutCubic: function (t) {\n t = clamp01(t);\n return 1 - Math.pow(1 - t, 3);\n },\n easeInOutCubic: function (t) {\n t = clamp01(t);\n return t < 0.5 ? 4 * t * t * t : 1 - Math.pow(-2 * t + 2, 3) / 2;\n },\n easeInOutSine: function (t) {\n t = clamp01(t);\n return -(Math.cos(Math.PI * t) - 1) / 2;\n },\n easeOutExpo: function (t) {\n t = clamp01(t);\n return t === 1 ? 1 : 1 - Math.pow(2, -10 * t);\n },\n };\n return easings[n] || null;\n }\n\n function hasAnyConfigOn(el) {\n if (!el) return false;\n for (var i = 0; i < el.attributes.length; i++) {\n var n = el.attributes[i].name;\n if (n && n.indexOf(\"rt-smooth-scroll-\") === 0) return true;\n }\n return false;\n }\n\n function ensureDefaultsIfNeeded() {\n var body = document.body;\n var html = document.documentElement;\n if (!body) return;\n\n var instances = document.querySelectorAll(\"[rt-smooth-scroll-instance]\");\n var hasInstances = instances && instances.length > 0;\n\n if (!hasAttrAnywhere(\"rt-smooth-scroll\") && !hasInstances)\n body.setAttribute(\"rt-smooth-scroll\", \"\");\n\n var configured = hasAnyConfigOn(html) || hasAnyConfigOn(body);\n if (configured || hasInstances) return;\n\n var defaults = {\n \"rt-smooth-scroll-lerp\": \"0.25\",\n \"rt-smooth-scroll-orientation\": \"vertical\",\n \"rt-smooth-scroll-gesture-orientation\": \"vertical\",\n \"rt-smooth-scroll-normalize-wheel\": \"true\",\n \"rt-smooth-scroll-wheel-multiplier\": \"1\",\n \"rt-smooth-scroll-easing\": \"easeOutCubic\",\n \"rt-smooth-scroll-smooth-touch\": \"true\",\n \"rt-smooth-scroll-sync-touch\": \"true\",\n \"rt-smooth-scroll-sync-touch-lerp\": \"0\",\n \"rt-smooth-scroll-touch-inertia-multiplier\": \"10\",\n \"rt-smooth-scroll-touch-multiplier\": \"2\",\n };\n\n for (var k in defaults) {\n if (!html.hasAttribute(k) && !body.hasAttribute(k))\n body.setAttribute(k, defaults[k]);\n }\n }\n\n function readOptions(getLocal) {\n var prefix = \"rt-smooth-scroll-\";\n\n function localOrGlobal(name) {\n var v = getLocal(name);\n if (v !== null && v !== undefined) return v;\n return getAttr(name);\n }\n\n var rawDuration = localOrGlobal(prefix + \"duration\");\n var rawLerp = localOrGlobal(prefix + \"lerp\");\n\n var hasDuration =\n rawDuration !== null &&\n rawDuration !== undefined &&\n String(rawDuration).trim() !== \"\";\n var hasLerp =\n rawLerp !== null &&\n rawLerp !== undefined &&\n String(rawLerp).trim() !== \"\";\n\n var duration = parseNum(rawDuration, 1.15);\n var lerp = parseNum(rawLerp, 0.25);\n\n if (hasDuration && !hasLerp) {\n lerp = 0;\n }\n\n var orientation = parseStr(\n localOrGlobal(prefix + \"orientation\"),\n \"vertical\"\n );\n var gestureOrientation = parseStr(\n localOrGlobal(prefix + \"gesture-orientation\"),\n \"vertical\"\n );\n var normalizeWheel = parseBool(\n localOrGlobal(prefix + \"normalize-wheel\"),\n true\n );\n var wheelMultiplier = parseNum(\n localOrGlobal(prefix + \"wheel-multiplier\"),\n 1\n );\n var smoothTouch = parseBool(localOrGlobal(prefix + \"smooth-touch\"), true);\n var syncTouch = parseBool(localOrGlobal(prefix + \"sync-touch\"), true);\n var syncTouchLerp = parseNum(localOrGlobal(prefix + \"sync-touch-lerp\"), 0);\n var touchInertiaMultiplier = parseNum(\n localOrGlobal(prefix + \"touch-inertia-multiplier\"),\n 10\n );\n var touchMultiplier = parseNum(\n localOrGlobal(prefix + \"touch-multiplier\"),\n 2\n );\n var infinite = parseBool(localOrGlobal(prefix + \"infinite\"), false);\n\n var easingName = parseStr(localOrGlobal(prefix + \"easing\"), \"easeOutCubic\");\n var easingFn = easingByName(easingName);\n\n var opts = {\n lerp: lerp,\n orientation: orientation,\n gestureOrientation: gestureOrientation,\n normalizeWheel: normalizeWheel,\n wheelMultiplier: wheelMultiplier,\n smoothTouch: smoothTouch,\n syncTouch: syncTouch,\n syncTouchLerp: syncTouchLerp,\n touchInertiaMultiplier: touchInertiaMultiplier,\n touchMultiplier: touchMultiplier,\n infinite: infinite,\n };\n\n if (lerp === 0) {\n opts.duration = duration;\n }\n\n if (easingFn) opts.easing = easingFn;\n\n var extra = localOrGlobal(prefix + \"options-json\");\n if (extra) {\n try {\n var parsed = JSON.parse(extra);\n if (parsed && typeof parsed === \"object\") {\n for (var k in parsed) opts[k] = parsed[k];\n }\n } catch (e) {}\n }\n\n return opts;\n }\n\n function loadScriptOnce(src) {\n return new Promise(function (resolve, reject) {\n if (typeof window.Lenis !== \"undefined\") return resolve();\n var existing = document.querySelector('script[data-rt-lenis=\"true\"]');\n if (existing) {\n existing.addEventListener(\"load\", function () {\n resolve();\n });\n existing.addEventListener(\"error\", function (e) {\n reject(e);\n });\n return;\n }\n var s = document.createElement(\"script\");\n s.src = src;\n s.async = true;\n s.dataset.rtLenis = \"true\";\n s.onload = function () {\n resolve();\n };\n s.onerror = function (e) {\n reject(e);\n };\n document.head.appendChild(s);\n });\n }\n\n function init() {\n ensureDefaultsIfNeeded();\n\n var enabledRoot = hasAttrAnywhere(\"rt-smooth-scroll\");\n var instanceEls = document.querySelectorAll(\"[rt-smooth-scroll-instance]\");\n var shouldRun = enabledRoot || (instanceEls && instanceEls.length > 0);\n if (!shouldRun) return;\n\n var lenisSrc = parseStr(\n getAttr(\"rt-smooth-scroll-lenis-src\"),\n \"https://cdn.jsdelivr.net/npm/lenis@1.3.16/dist/lenis.min.js\"\n );\n\n var observeResize = parseBool(\n getAttr(\"rt-smooth-scroll-observe-resize\"),\n true\n );\n var observeMutations = parseBool(\n getAttr(\"rt-smooth-scroll-observe-mutations\"),\n true\n );\n var resizeDebounceMs = parseNum(\n getAttr(\"rt-smooth-scroll-resize-debounce-ms\"),\n 0\n );\n\n var state = {\n destroyed: false,\n rafId: 0,\n instances: {},\n order: [],\n observers: {},\n resizeTimers: {},\n };\n\n function scheduleResize(id) {\n var inst = state.instances[id];\n if (!inst || state.destroyed) return;\n if (resizeDebounceMs > 0) {\n clearTimeout(state.resizeTimers[id]);\n state.resizeTimers[id] = setTimeout(function () {\n var i2 = state.instances[id];\n if (!i2 || state.destroyed) return;\n i2.resize();\n }, resizeDebounceMs);\n return;\n }\n inst.resize();\n }\n\n function startRaf() {\n function raf(time) {\n if (state.destroyed) return;\n for (var i = 0; i < state.order.length; i++) {\n var id = state.order[i];\n var inst = state.instances[id];\n if (inst) inst.raf(time);\n }\n state.rafId = requestAnimationFrame(raf);\n }\n state.rafId = requestAnimationFrame(raf);\n }\n\n function addObservers(id, wrapperEl) {\n if (!wrapperEl || wrapperEl === window) return;\n\n var ro = null;\n var mo = null;\n\n if (observeResize && typeof ResizeObserver !== \"undefined\") {\n ro = new ResizeObserver(function () {\n scheduleResize(id);\n });\n ro.observe(wrapperEl);\n }\n\n if (observeMutations && typeof MutationObserver !== \"undefined\") {\n mo = new MutationObserver(function () {\n scheduleResize(id);\n });\n mo.observe(wrapperEl, { childList: true, subtree: true });\n }\n\n state.observers[id] = { ro: ro, mo: mo };\n }\n\n function removeObservers(id) {\n var obs = state.observers[id];\n if (!obs) return;\n if (obs.ro) obs.ro.disconnect();\n if (obs.mo) obs.mo.disconnect();\n delete state.observers[id];\n }\n\n function sanitizeOptionsForLog(opts) {\n var out = {};\n for (var k in opts) {\n if (!Object.prototype.hasOwnProperty.call(opts, k)) continue;\n var v = opts[k];\n if (typeof v === \"function\") {\n out[k] = \"[Function]\";\n } else {\n out[k] = v;\n }\n }\n return out;\n }\n\n function createInstance(id, wrapper, content, options) {\n var opts = options || {};\n if (wrapper) opts.wrapper = wrapper;\n if (content) opts.content = content;\n var inst = new window.Lenis(opts);\n state.instances[id] = inst;\n state.order.push(id);\n if (wrapper && wrapper !== window) addObservers(id, wrapper);\n if (id === \"root\") window.lenis = inst;\n\n try {\n console.log(\"[rt-smooth-scroll] instance:\", id, {\n wrapper: wrapper === window ? \"window\" : wrapper,\n content: content || null,\n options: sanitizeOptionsForLog(opts),\n });\n } catch (e) {}\n\n return inst;\n }\n\n function getContentForWrapper(wrapperEl) {\n var selector = getAttrFrom(wrapperEl, \"rt-smooth-scroll-content\");\n if (selector) {\n var found = wrapperEl.querySelector(selector);\n if (found) return found;\n }\n return wrapperEl.firstElementChild || wrapperEl;\n }\n\n function makeApi() {\n function forEachTarget(id, fn) {\n if (typeof id === \"string\" && id.length) {\n var one = state.instances[id];\n if (one) fn(id, one);\n return;\n }\n for (var i = 0; i < state.order.length; i++) {\n var k = state.order[i];\n var inst = state.instances[k];\n if (inst) fn(k, inst);\n }\n }\n\n return {\n __initialized: true,\n ids: function () {\n return state.order.slice();\n },\n get: function (id) {\n return state.instances[id] || null;\n },\n start: function (id) {\n forEachTarget(id, function (_, inst) {\n inst.start();\n });\n },\n stop: function (id) {\n forEachTarget(id, function (_, inst) {\n inst.stop();\n });\n },\n toggle: function (id, force) {\n forEachTarget(id, function (_, inst) {\n if (typeof force === \"boolean\") {\n if (force) inst.stop();\n else inst.start();\n return;\n }\n if (inst.isStopped) inst.start();\n else inst.stop();\n });\n },\n resize: function (id) {\n forEachTarget(id, function (k) {\n scheduleResize(k);\n });\n },\n destroy: function (id) {\n if (state.destroyed) return;\n\n function destroyOne(k) {\n clearTimeout(state.resizeTimers[k]);\n removeObservers(k);\n var inst = state.instances[k];\n if (inst) {\n try {\n inst.destroy();\n } catch (e) {}\n delete state.instances[k];\n }\n var idx = state.order.indexOf(k);\n if (idx >= 0) state.order.splice(idx, 1);\n if (k === \"root\") {\n try {\n delete window.lenis;\n } catch (e) {\n window.lenis = undefined;\n }\n }\n }\n\n if (typeof id === \"string\" && id.length) {\n destroyOne(id);\n return;\n }\n\n while (state.order.length) destroyOne(state.order[0]);\n state.destroyed = true;\n if (state.rafId) cancelAnimationFrame(state.rafId);\n },\n };\n }\n\n function installLegacyAliases(api) {\n window.disableScroll = function () {\n api.stop();\n if (document.body) document.body.classList.add(\"no-scroll\");\n };\n window.enableScroll = function () {\n api.start();\n if (document.body) document.body.classList.remove(\"no-scroll\");\n };\n }\n\n loadScriptOnce(lenisSrc)\n .then(function () {\n if (state.destroyed) return;\n\n if (enabledRoot && !state.instances.root) {\n var optsRoot = readOptions(function () {\n return null;\n });\n createInstance(\"root\", window, document.documentElement, optsRoot);\n }\n\n var els = document.querySelectorAll(\"[rt-smooth-scroll-instance]\");\n var autoCount = 0;\n\n for (var i = 0; i < els.length; i++) {\n var el = els[i];\n var id = getAttrFrom(el, \"rt-smooth-scroll-id\");\n if (!id) {\n autoCount++;\n id = \"instance-\" + autoCount;\n }\n if (state.instances[id]) continue;\n\n var content = getContentForWrapper(el);\n\n var opts = readOptions(function (name) {\n return getAttrFrom(el, name);\n });\n createInstance(id, el, content, opts);\n }\n\n startRaf();\n\n var api = makeApi();\n window[RT_NS] = api;\n installLegacyAliases(api);\n\n window.addEventListener(\"resize\", function () {\n api.resize();\n });\n })\n .catch(function () {});\n }\n\n if (document.readyState === \"loading\") {\n document.addEventListener(\"DOMContentLoaded\", init);\n } else {\n init();\n }\n\n window[RT_NS] = window[RT_NS] || {\n __initialized: true,\n ids: function () {\n return [];\n },\n get: function () {\n return null;\n },\n };\n})();\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["RT_NS", "getAttrFrom", "el", "name", "getAttr", "html", "body", "v", "hasAttrAnywhere", "parseBool", "def", "
|
|
4
|
+
"sourcesContent": ["(function () {\n var RT_NS = \"rtSmoothScroll\";\n if (window[RT_NS] && window[RT_NS].__initialized) return;\n\n function getAttrFrom(el, name) {\n if (!el) return null;\n if (!el.hasAttribute(name)) return null;\n return el.getAttribute(name);\n }\n\n function getAttr(name) {\n var html = document.documentElement;\n var body = document.body;\n var v = getAttrFrom(html, name);\n if (v !== null) return v;\n v = getAttrFrom(body, name);\n if (v !== null) return v;\n return null;\n }\n\n function hasAttrAnywhere(name) {\n var html = document.documentElement;\n var body = document.body;\n if (html && html.hasAttribute(name)) return true;\n if (body && body.hasAttribute(name)) return true;\n return false;\n }\n\n function parseBool(v, def) {\n if (v === null || v === undefined) return def;\n var s = String(v).trim().toLowerCase();\n if (s === \"\") return true;\n if (s === \"true\" || s === \"1\" || s === \"yes\" || s === \"y\" || s === \"on\")\n return true;\n if (s === \"false\" || s === \"0\" || s === \"no\" || s === \"n\" || s === \"off\")\n return false;\n return def;\n }\n\n function parseNum(v, def) {\n if (v === null || v === undefined) return def;\n var s = String(v).trim();\n if (!s.length) return def;\n var n = Number(s);\n return Number.isFinite(n) ? n : def;\n }\n\n function parseStr(v, def) {\n if (v === null || v === undefined) return def;\n var s = String(v);\n return s.length ? s : def;\n }\n\n function clamp01(t) {\n if (t < 0) return 0;\n if (t > 1) return 1;\n return t;\n }\n\n function resolveTargetFromStr(selectorStr) {\n if (!selectorStr) return null;\n var s = String(selectorStr).trim();\n if (!s) return null;\n if (s === \"window\") return window;\n\n var match = s.match(/^(.*)\\(\\s*(\\d+)\\s*\\)$/);\n if (match) {\n var baseSelector = match[1].trim();\n var index = parseInt(match[2], 10);\n if (!baseSelector || isNaN(index) || index < 1) return null;\n try {\n var all = document.querySelectorAll(baseSelector);\n return all[index - 1] || null;\n } catch (e) {\n return null;\n }\n }\n\n try {\n return document.querySelector(s);\n } catch (e) {\n return null;\n }\n }\n\n function easingByName(name) {\n var n = String(name || \"\").trim();\n if (!n) return null;\n var easings = {\n linear: function (t) {\n return clamp01(t);\n },\n easeInQuad: function (t) {\n t = clamp01(t);\n return t * t;\n },\n easeOutQuad: function (t) {\n t = clamp01(t);\n return t * (2 - t);\n },\n easeInOutQuad: function (t) {\n t = clamp01(t);\n return t < 0.5 ? 2 * t * t : 1 - Math.pow(-2 * t + 2, 2) / 2;\n },\n easeInCubic: function (t) {\n t = clamp01(t);\n return t * t * t;\n },\n easeOutCubic: function (t) {\n t = clamp01(t);\n return 1 - Math.pow(1 - t, 3);\n },\n easeInOutCubic: function (t) {\n t = clamp01(t);\n return t < 0.5 ? 4 * t * t * t : 1 - Math.pow(-2 * t + 2, 3) / 2;\n },\n easeInOutSine: function (t) {\n t = clamp01(t);\n return -(Math.cos(Math.PI * t) - 1) / 2;\n },\n easeOutExpo: function (t) {\n t = clamp01(t);\n return t === 1 ? 1 : 1 - Math.pow(2, -10 * t);\n },\n };\n return easings[n] || null;\n }\n\n function ensureAutoEnableIfNeeded() {\n var body = document.body;\n if (!body) return;\n var instances = document.querySelectorAll(\"[rt-smooth-scroll-instance]\");\n var hasInstances = instances && instances.length > 0;\n if (!hasAttrAnywhere(\"rt-smooth-scroll\") && !hasInstances) {\n body.setAttribute(\"rt-smooth-scroll\", \"\");\n }\n }\n\n function isAttrPresent(v) {\n return v !== null && v !== undefined;\n }\n\n function readOptions(getLocal) {\n var prefix = \"rt-smooth-scroll-\";\n function localOrGlobal(name) {\n var v = getLocal(name);\n if (isAttrPresent(v)) return v;\n return getAttr(name);\n }\n function getRaw(name) {\n return localOrGlobal(prefix + name);\n }\n function hasRaw(name) {\n return isAttrPresent(getRaw(name));\n }\n\n var opts = {};\n var hasLerp = hasRaw(\"lerp\");\n var lerp = parseNum(getRaw(\"lerp\"), undefined);\n var hasDuration = hasRaw(\"duration\");\n var duration = parseNum(getRaw(\"duration\"), undefined);\n var hasEasing = hasRaw(\"easing\");\n var easingName = parseStr(getRaw(\"easing\"), \"\");\n var easingFn = easingByName(easingName);\n\n if (hasLerp && lerp !== undefined) {\n opts.lerp = lerp;\n } else {\n if (hasDuration && duration !== undefined) opts.duration = duration;\n if (hasEasing && easingFn) opts.easing = easingFn;\n }\n\n if (hasRaw(\"orientation\"))\n opts.orientation = parseStr(getRaw(\"orientation\"), \"\");\n if (hasRaw(\"gesture-orientation\"))\n opts.gestureOrientation = parseStr(getRaw(\"gesture-orientation\"), \"\");\n\n var smoothWheelRaw = getRaw(\"smooth-wheel\");\n var normalizeWheelRaw = getRaw(\"normalize-wheel\");\n if (isAttrPresent(smoothWheelRaw))\n opts.smoothWheel = parseBool(smoothWheelRaw, true);\n else if (isAttrPresent(normalizeWheelRaw))\n opts.smoothWheel = parseBool(normalizeWheelRaw, true);\n\n if (hasRaw(\"wheel-multiplier\"))\n opts.wheelMultiplier = parseNum(getRaw(\"wheel-multiplier\"), undefined);\n if (hasRaw(\"touch-multiplier\"))\n opts.touchMultiplier = parseNum(getRaw(\"touch-multiplier\"), undefined);\n if (hasRaw(\"sync-touch\"))\n opts.syncTouch = parseBool(getRaw(\"sync-touch\"), false);\n if (hasRaw(\"sync-touch-lerp\"))\n opts.syncTouchLerp = parseNum(getRaw(\"sync-touch-lerp\"), undefined);\n if (hasRaw(\"touch-inertia-exponent\"))\n opts.touchInertiaExponent = parseNum(\n getRaw(\"touch-inertia-exponent\"),\n undefined,\n );\n if (hasRaw(\"infinite\"))\n opts.infinite = parseBool(getRaw(\"infinite\"), false);\n if (hasRaw(\"auto-resize\"))\n opts.autoResize = parseBool(getRaw(\"auto-resize\"), true);\n if (hasRaw(\"overscroll\"))\n opts.overscroll = parseBool(getRaw(\"overscroll\"), true);\n\n if (hasRaw(\"anchors\")) {\n var s = String(getRaw(\"anchors\") || \"\").trim();\n if (s === \"\" || s.toLowerCase() === \"true\") opts.anchors = true;\n else if (s.toLowerCase() === \"false\") opts.anchors = false;\n else {\n try {\n opts.anchors = JSON.parse(s);\n } catch (e) {\n opts.anchors = true;\n }\n }\n }\n\n if (hasRaw(\"auto-toggle\"))\n opts.autoToggle = parseBool(getRaw(\"auto-toggle\"), false);\n if (hasRaw(\"allow-nested-scroll\"))\n opts.allowNestedScroll = parseBool(getRaw(\"allow-nested-scroll\"), false);\n\n var extra = localOrGlobal(prefix + \"options-json\");\n if (extra) {\n try {\n var parsed = JSON.parse(extra);\n if (parsed && typeof parsed === \"object\") {\n for (var k in parsed) opts[k] = parsed[k];\n }\n } catch (e) {}\n }\n return opts;\n }\n\n function loadScriptOnce(src) {\n return new Promise(function (resolve, reject) {\n if (typeof window.Lenis !== \"undefined\") return resolve();\n var existing = document.querySelector('script[data-rt-lenis=\"true\"]');\n if (existing) {\n existing.addEventListener(\"load\", function () {\n resolve();\n });\n existing.addEventListener(\"error\", function (e) {\n reject(e);\n });\n return;\n }\n var s = document.createElement(\"script\");\n s.src = src;\n s.async = true;\n s.dataset.rtLenis = \"true\";\n s.onload = function () {\n resolve();\n };\n s.onerror = function (e) {\n reject(e);\n };\n document.head.appendChild(s);\n });\n }\n\n function convertAnchorLinks() {\n var raw = getAttr(\"rt-smooth-scroll-anchor-links\");\n if (!parseBool(raw, false)) return;\n\n var links = document.querySelectorAll('a[href*=\"#\"]');\n var currentPath = window.location.pathname\n .replace(/\\/+$/, \"\")\n .toLowerCase();\n var origin = window.location.origin;\n\n for (var i = 0; i < links.length; i++) {\n var link = links[i];\n if (link.hasAttribute(\"rt-smooth-scroll-to\")) continue;\n\n var href = link.getAttribute(\"href\");\n if (!href) continue;\n\n var hashIndex = href.indexOf(\"#\");\n if (hashIndex === -1) continue;\n\n var pathPart = href.substring(0, hashIndex);\n var hashPart = href.substring(hashIndex);\n\n if (hashPart.length <= 1) continue;\n\n var isLocal = false;\n if (pathPart === \"\" || pathPart === \"./\") {\n isLocal = true;\n } else {\n var normPath = pathPart.replace(/\\/+$/, \"\").toLowerCase();\n if (pathPart.indexOf(\"http\") === 0) {\n try {\n var u = new URL(href, origin);\n if (\n u.origin === origin &&\n u.pathname.replace(/\\/+$/, \"\").toLowerCase() === currentPath\n ) {\n isLocal = true;\n }\n } catch (e) {}\n } else if (normPath === currentPath) {\n isLocal = true;\n }\n }\n\n if (isLocal) {\n link.setAttribute(\"rt-smooth-scroll-to\", hashPart);\n\n // Remove href completely to hide status bar text\n link.removeAttribute(\"href\");\n\n // Restore accessibility and cursor\n link.style.cursor = \"pointer\";\n link.setAttribute(\"tabindex\", \"0\");\n link.setAttribute(\"role\", \"button\");\n }\n }\n }\n\n function init() {\n ensureAutoEnableIfNeeded();\n convertAnchorLinks();\n\n var enabledRoot = hasAttrAnywhere(\"rt-smooth-scroll\");\n var instanceEls = document.querySelectorAll(\"[rt-smooth-scroll-instance]\");\n var hasInstances = instanceEls && instanceEls.length > 0;\n var shouldRun = enabledRoot || hasInstances;\n if (!shouldRun) return;\n\n var lenisSrc = parseStr(\n getAttr(\"rt-smooth-scroll-lenis-src\"),\n \"https://cdn.jsdelivr.net/npm/lenis@1.3.16/dist/lenis.min.js\",\n );\n var resizeDebounceMs = parseNum(\n getAttr(\"rt-smooth-scroll-resize-debounce-ms\"),\n 0,\n );\n var debug = parseBool(getAttr(\"rt-smooth-scroll-debug\"), true);\n\n var state = {\n destroyed: false,\n rafId: 0,\n instances: {},\n order: [],\n resizeTimers: {},\n clickListener: null,\n keyListener: null,\n };\n\n function scheduleResize(id) {\n var inst = state.instances[id];\n if (!inst || state.destroyed) return;\n if (resizeDebounceMs > 0) {\n clearTimeout(state.resizeTimers[id]);\n state.resizeTimers[id] = setTimeout(function () {\n var i2 = state.instances[id];\n if (!i2 || state.destroyed) return;\n i2.resize();\n }, resizeDebounceMs);\n return;\n }\n inst.resize();\n }\n\n function startRaf() {\n function raf(time) {\n if (state.destroyed) return;\n for (var i = 0; i < state.order.length; i++) {\n var id = state.order[i];\n var inst = state.instances[id];\n if (inst) inst.raf(time);\n }\n state.rafId = requestAnimationFrame(raf);\n }\n state.rafId = requestAnimationFrame(raf);\n }\n\n function sanitizeOptionsForLog(opts) {\n var out = {};\n for (var k in opts) {\n if (!Object.prototype.hasOwnProperty.call(opts, k)) continue;\n var v = opts[k];\n if (typeof v === \"function\") out[k] = \"[Function]\";\n else out[k] = v;\n }\n return out;\n }\n\n function resolveElementFromSelector(base, selector) {\n if (!selector) return null;\n var s = String(selector).trim();\n if (!s.length) return null;\n if (s === \"window\") return window;\n try {\n return (base || document).querySelector(s);\n } catch (e) {\n return null;\n }\n }\n\n function applySelectorsToOptions(el, opts) {\n var prefix = \"rt-smooth-scroll-\";\n var wrapperSel = getAttrFrom(el, prefix + \"wrapper\");\n var contentSel = getAttrFrom(el, prefix + \"content\");\n var eventsSel = getAttrFrom(el, prefix + \"events-target\");\n if (wrapperSel) {\n var w = resolveElementFromSelector(document, wrapperSel);\n if (w) opts.wrapper = w;\n }\n if (contentSel) {\n var c = resolveElementFromSelector(document, contentSel);\n if (c) opts.content = c;\n }\n if (eventsSel) {\n var et = resolveElementFromSelector(document, eventsSel);\n if (et) opts.eventsTarget = et;\n }\n return opts;\n }\n\n function getContentForWrapper(wrapperEl) {\n var selector = getAttrFrom(wrapperEl, \"rt-smooth-scroll-content\");\n if (selector) {\n var found = null;\n try {\n found = wrapperEl.querySelector(selector);\n } catch (e) {\n found = null;\n }\n if (found) return found;\n }\n return wrapperEl.firstElementChild || wrapperEl;\n }\n\n function createInstance(id, wrapper, content, options, isRoot) {\n var opts = options || {};\n if (!isRoot) {\n if (wrapper) opts.wrapper = wrapper;\n if (content) opts.content = content;\n }\n var inst = new window.Lenis(opts);\n state.instances[id] = inst;\n state.order.push(id);\n if (id === \"root\") window.lenis = inst;\n if (debug) {\n try {\n console.log(\"[rt-smooth-scroll] instance:\", id, {\n wrapper: isRoot ? opts.wrapper || \"default\" : wrapper,\n content: isRoot ? opts.content || \"default\" : content,\n options: sanitizeOptionsForLog(opts),\n });\n } catch (e) {}\n }\n return inst;\n }\n\n function setupScrollToListeners() {\n if (state.clickListener) return;\n\n var handleScrollAction = function (targetEl, e) {\n var targetVal = targetEl.getAttribute(\"rt-smooth-scroll-to\");\n if (!targetVal) return;\n\n if (e) e.preventDefault();\n\n var target = null;\n var numeric = parseFloat(targetVal);\n\n if (targetVal === \"top\") {\n target = 0;\n } else if (!isNaN(numeric) && isFinite(numeric)) {\n target = numeric;\n } else {\n target = resolveTargetFromStr(targetVal);\n }\n\n if (target === null && targetVal !== \"top\" && isNaN(numeric)) return;\n\n var instance = null;\n var explicitId = targetEl.getAttribute(\"rt-smooth-scroll-target-id\");\n if (explicitId && state.instances[explicitId]) {\n instance = state.instances[explicitId];\n } else {\n var parentWrapper = targetEl.closest(\"[rt-smooth-scroll-instance]\");\n if (parentWrapper) {\n var parentId = parentWrapper.getAttribute(\"rt-smooth-scroll-id\");\n if (parentId && state.instances[parentId]) {\n instance = state.instances[parentId];\n }\n }\n }\n if (!instance && state.instances[\"root\"]) {\n instance = state.instances[\"root\"];\n }\n\n if (!instance) return;\n\n var opts = {};\n var offsetRaw = targetEl.getAttribute(\"rt-smooth-scroll-offset\");\n if (offsetRaw) {\n var offsetNum = parseFloat(offsetRaw);\n if (!isNaN(offsetNum) && isFinite(offsetNum)) {\n opts.offset = offsetNum;\n } else {\n var offsetEl = resolveTargetFromStr(offsetRaw);\n if (offsetEl) opts.offset = -1 * offsetEl.offsetHeight;\n }\n }\n var dur = parseNum(\n targetEl.getAttribute(\"rt-smooth-scroll-duration\"),\n undefined,\n );\n if (dur !== undefined) opts.duration = dur;\n var immediate = parseBool(\n targetEl.getAttribute(\"rt-smooth-scroll-immediate\"),\n null,\n );\n if (immediate !== null) opts.immediate = immediate;\n var lock = parseBool(\n targetEl.getAttribute(\"rt-smooth-scroll-lock\"),\n null,\n );\n if (lock !== null) opts.lock = lock;\n var force = parseBool(\n targetEl.getAttribute(\"rt-smooth-scroll-force\"),\n null,\n );\n if (force !== null) opts.force = force;\n\n instance.scrollTo(target, opts);\n };\n\n state.clickListener = function (e) {\n var trigger = e.target.closest(\"[rt-smooth-scroll-to]\");\n if (trigger) handleScrollAction(trigger, e);\n };\n\n state.keyListener = function (e) {\n if (e.key !== \"Enter\" && e.key !== \" \") return;\n var trigger = e.target.closest(\"[rt-smooth-scroll-to]\");\n if (trigger && !trigger.hasAttribute(\"href\")) {\n handleScrollAction(trigger, e);\n }\n };\n\n document.addEventListener(\"click\", state.clickListener);\n document.addEventListener(\"keydown\", state.keyListener);\n }\n\n function makeApi() {\n function forEachTarget(id, fn) {\n if (typeof id === \"string\" && id.length) {\n var one = state.instances[id];\n if (one) fn(id, one);\n return;\n }\n for (var i = 0; i < state.order.length; i++) {\n var k = state.order[i];\n var inst = state.instances[k];\n if (inst) fn(k, inst);\n }\n }\n\n return {\n __initialized: true,\n ids: function () {\n return state.order.slice();\n },\n get: function (id) {\n return state.instances[id] || null;\n },\n start: function (id) {\n forEachTarget(id, function (_, inst) {\n inst.start();\n });\n },\n stop: function (id) {\n forEachTarget(id, function (_, inst) {\n inst.stop();\n });\n },\n toggle: function (id, force) {\n forEachTarget(id, function (_, inst) {\n if (typeof force === \"boolean\") {\n if (force) inst.stop();\n else inst.start();\n return;\n }\n if (inst.isStopped) inst.start();\n else inst.stop();\n });\n },\n resize: function (id) {\n forEachTarget(id, function (k) {\n scheduleResize(k);\n });\n },\n refreshAnchors: function () {\n convertAnchorLinks();\n },\n destroy: function (id) {\n if (state.destroyed) return;\n function destroyOne(k) {\n clearTimeout(state.resizeTimers[k]);\n var inst = state.instances[k];\n if (inst) {\n try {\n inst.destroy();\n } catch (e) {}\n delete state.instances[k];\n }\n var idx = state.order.indexOf(k);\n if (idx >= 0) state.order.splice(idx, 1);\n if (k === \"root\") {\n try {\n delete window.lenis;\n } catch (e) {\n window.lenis = undefined;\n }\n }\n }\n if (typeof id === \"string\" && id.length) {\n destroyOne(id);\n return;\n }\n if (state.clickListener) {\n document.removeEventListener(\"click\", state.clickListener);\n state.clickListener = null;\n }\n if (state.keyListener) {\n document.removeEventListener(\"keydown\", state.keyListener);\n state.keyListener = null;\n }\n while (state.order.length) destroyOne(state.order[0]);\n state.destroyed = true;\n if (state.rafId) cancelAnimationFrame(state.rafId);\n },\n };\n }\n\n function installLegacyAliases(api) {\n window.disableScroll = function () {\n api.stop();\n if (document.body) document.body.classList.add(\"no-scroll\");\n };\n window.enableScroll = function () {\n api.start();\n if (document.body) document.body.classList.remove(\"no-scroll\");\n };\n }\n\n loadScriptOnce(lenisSrc)\n .then(function () {\n if (state.destroyed) return;\n var els = document.querySelectorAll(\"[rt-smooth-scroll-instance]\");\n var totalCount = (enabledRoot ? 1 : 0) + (els ? els.length : 0);\n var allowAutoRaf =\n totalCount === 1 && enabledRoot && (!els || els.length === 0);\n\n if (enabledRoot && !state.instances.root) {\n var optsRoot = readOptions(function () {\n return null;\n });\n optsRoot = applySelectorsToOptions(\n document.body || document.documentElement,\n optsRoot,\n );\n if (allowAutoRaf) {\n var rawAutoRaf = getAttr(\"rt-smooth-scroll-auto-raf\");\n var autoRaf = isAttrPresent(rawAutoRaf)\n ? parseBool(rawAutoRaf, true)\n : true;\n optsRoot.autoRaf = autoRaf;\n } else {\n optsRoot.autoRaf = false;\n }\n createInstance(\"root\", null, null, optsRoot, true);\n }\n\n var autoCount = 0;\n for (var i = 0; i < els.length; i++) {\n var el = els[i];\n var id = getAttrFrom(el, \"rt-smooth-scroll-id\");\n if (!id) {\n autoCount++;\n id = \"instance-\" + autoCount;\n el.setAttribute(\"rt-smooth-scroll-id\", id);\n }\n if (state.instances[id]) continue;\n var content = getContentForWrapper(el);\n var opts = readOptions(function (name) {\n return getAttrFrom(el, name);\n });\n opts = applySelectorsToOptions(el, opts);\n opts.autoRaf = false;\n createInstance(id, el, content, opts, false);\n }\n\n if (!allowAutoRaf) startRaf();\n\n var api = makeApi();\n window[RT_NS] = api;\n installLegacyAliases(api);\n\n setupScrollToListeners();\n\n window.addEventListener(\"resize\", function () {\n api.resize();\n });\n })\n .catch(function () {});\n }\n\n if (document.readyState === \"loading\") {\n document.addEventListener(\"DOMContentLoaded\", init);\n } else {\n init();\n }\n\n window[RT_NS] = window[RT_NS] || {\n __initialized: true,\n ids: function () {\n return [];\n },\n get: function () {\n return null;\n },\n };\n})();\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["RT_NS", "getAttrFrom", "el", "name", "getAttr", "html", "body", "v", "hasAttrAnywhere", "parseBool", "def", "parseNum", "n", "parseStr", "clamp01", "t", "resolveTargetFromStr", "selectorStr", "s", "match", "baseSelector", "index", "all", "e", "easingByName", "easings", "ensureAutoEnableIfNeeded", "instances", "hasInstances", "isAttrPresent", "readOptions", "getLocal", "prefix", "localOrGlobal", "getRaw", "hasRaw", "opts", "hasLerp", "lerp", "hasDuration", "duration", "hasEasing", "easingName", "easingFn", "smoothWheelRaw", "normalizeWheelRaw", "extra", "parsed", "k", "loadScriptOnce", "src", "resolve", "reject", "existing", "convertAnchorLinks", "raw", "links", "currentPath", "origin", "i", "link", "href", "hashIndex", "pathPart", "hashPart", "isLocal", "normPath", "u", "init", "enabledRoot", "instanceEls", "shouldRun", "lenisSrc", "resizeDebounceMs", "debug", "state", "scheduleResize", "id", "inst", "i2", "startRaf", "raf", "time", "sanitizeOptionsForLog", "out", "resolveElementFromSelector", "base", "selector", "applySelectorsToOptions", "wrapperSel", "contentSel", "eventsSel", "w", "c", "et", "getContentForWrapper", "wrapperEl", "found", "createInstance", "wrapper", "content", "options", "isRoot", "setupScrollToListeners", "handleScrollAction", "targetEl", "targetVal", "target", "numeric", "instance", "explicitId", "parentWrapper", "parentId", "offsetRaw", "offsetNum", "offsetEl", "dur", "immediate", "lock", "force", "trigger", "makeApi", "forEachTarget", "fn", "one", "_", "destroyOne", "idx", "installLegacyAliases", "api", "els", "totalCount", "allowAutoRaf", "optsRoot", "rawAutoRaf", "autoRaf", "autoCount"]
|
|
7
7
|
}
|
package/package.json
CHANGED