{"version":3,"sources":["jsdelivr-header.js","/npm/motion-components@1.3.0/dist/chunks/define-DO-1i33g.js","/npm/motion-components@1.3.0/dist/chunks/attributes-GRXcOzX9.js","/npm/motion-components@1.3.0/dist/chunks/decorate-DzcxXH9n.js","/npm/motion-components@1.3.0/dist/chunks/registry-BLEd3OTK.js","/npm/motion-components@1.3.0/dist/chunks/playback-C9hz8-7W.js","/npm/motion-components@1.3.0/dist/chunks/loop-FvdPx-NR.js","/npm/motion-components@1.3.0/dist/motion-perspective.js"],"names":[],"mappings":"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","file":"/npm/motion-components@1.3.0/dist/motion-perspective.js/+esm","sourceRoot":"","sourcesContent":["/**\n * Bundled by jsDelivr using Rollup v4.62.2 and esbuild v0.28.1.\n * Original file: /npm/motion-components@1.3.0/dist/motion-perspective.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","//#region src/utils/define.ts\nfunction e(e, t) {\n\ttypeof customElements > \"u\" || customElements.get(e) || customElements.define(e, t);\n}\nvar t = (t) => (n) => e(t, n), n = globalThis.HTMLElement ?? class {};\n//#endregion\nexport { t as n, e as r, n as t };\n","//#region src/utils/attributes.ts\nvar e = (e) => e !== null && e !== \"false\", t = {\n\tfromAttribute: e,\n\ttoAttribute: (e) => e ? \"\" : null\n};\nfunction n(t, n, r) {\n\treturn t.hasAttribute(n) ? e(t.getAttribute(n)) : r;\n}\n//#endregion\nexport { e as n, n as r, t };\n","//#region \\0@oxc-project+runtime@0.120.0/helpers/decorate.js\nfunction e(e, t, n, r) {\n\tvar i = arguments.length, a = i < 3 ? t : r === null ? r = Object.getOwnPropertyDescriptor(t, n) : r, o;\n\tif (typeof Reflect == \"object\" && typeof Reflect.decorate == \"function\") a = Reflect.decorate(e, t, n, r);\n\telse for (var s = e.length - 1; s >= 0; s--) (o = e[s]) && (a = (i < 3 ? o(a) : i > 3 ? o(t, n, a) : o(t, n)) || a);\n\treturn i > 3 && a && Object.defineProperty(t, n, a), a;\n}\n//#endregion\nexport { e as t };\n","//#region src/utils/registry.ts\nvar e = /* @__PURE__ */ new Set(), t = /* @__PURE__ */ new Set(), n = /* @__PURE__ */ new WeakSet(), r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Set();\nfunction a(t) {\n\te.add(t);\n}\nfunction o(t) {\n\te.delete(t);\n}\nfunction s(e) {\n\tt.add(e);\n}\nfunction c(e) {\n\tt.delete(e);\n}\nfunction l(e, t) {\n\tr.set(e, t);\n}\nfunction u(e) {\n\tr.delete(e);\n}\nfunction d(e) {\n\treturn i.has(e);\n}\nfunction f(a = document) {\n\tfor (let t of e) a.contains(t) && t.playState === \"running\" && t.pause();\n\tfor (let e of t) a.contains(e) && !e.disabled && (e.disabled = !0, n.add(e));\n\tfor (let [e, t] of r) !a.contains(e) || i.has(e) || (t()?.pause(), i.add(e));\n}\nfunction p(a = document) {\n\tfor (let t of e) a.contains(t) && t.playState === \"paused\" && t.play();\n\tfor (let e of t) a.contains(e) && n.has(e) && (e.disabled = !1, n.delete(e));\n\tfor (let [e, t] of r) !a.contains(e) || !i.has(e) || (i.delete(e), t()?.play());\n\tfor (let e of i) r.has(e) || i.delete(e);\n}\nfunction m(t = document) {\n\tfor (let n of e) t.contains(n) && n.cancel();\n}\n//#endregion\nexport { l as a, c, s as i, u as l, d as n, a as o, f as r, p as s, m as t, o as u };\n","import { o as e, u as t } from \"./registry-BLEd3OTK.js\";\n//#region src/utils/playback.ts\nvar n = () => window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches, r = class {\n\tconstructor(e, t) {\n\t\tthis.host = e, this.delegate = t, this.state = \"idle\", this.handle = null, this.done = Promise.resolve(), this.resolveDone = null, this.runId = 0;\n\t}\n\tget playState() {\n\t\treturn this.state;\n\t}\n\tget finished() {\n\t\treturn this.done;\n\t}\n\tplay() {\n\t\tif (this.state === \"running\") return this.done;\n\t\tif (this.state === \"paused\") return this.handle?.resume(), this.state = \"running\", this.done;\n\t\tlet e = ++this.runId;\n\t\tif (this.done = new Promise((e) => {\n\t\t\tthis.resolveDone = e;\n\t\t}), this.emit(\"motion-start\"), n() && !this.delegate.runsUnderReducedMotion) return this.delegate.applyFinalState(), this.settle(\"finished\", \"motion-finish\"), this.done;\n\t\tthis.state = \"running\";\n\t\tlet t = this.delegate.start();\n\t\treturn this.handle = t.handle, t.done?.then(() => {\n\t\t\te === this.runId && this.state === \"running\" && this.settle(\"finished\", \"motion-finish\");\n\t\t}), this.done;\n\t}\n\tpause() {\n\t\tthis.state === \"running\" && (this.handle?.pause(), this.state = \"paused\");\n\t}\n\tfinish() {\n\t\tthis.state !== \"finished\" && (this.runId++, this.handle ? this.handle.finish() : this.delegate.applyFinalState(), this.settle(\"finished\", \"motion-finish\"));\n\t}\n\tcancel() {\n\t\tthis.state !== \"idle\" && (this.runId++, this.handle?.cancel(), this.delegate.applyInitialState(), this.settle(\"idle\", \"motion-cancel\"));\n\t}\n\tteardown() {\n\t\tthis.runId++, this.handle?.cancel(), this.handle = null, this.resolveDone?.(), this.resolveDone = null, this.state = \"idle\";\n\t}\n\tsettle(e, t) {\n\t\tthis.handle = null, this.state = e, this.resolveDone?.(), this.resolveDone = null, this.emit(t);\n\t}\n\temit(e) {\n\t\tthis.host.dispatchEvent(new CustomEvent(e, {\n\t\t\tbubbles: !0,\n\t\t\tcomposed: !0\n\t\t}));\n\t}\n};\nfunction i(e) {\n\treturn {\n\t\tpause: () => e.pause(),\n\t\tresume: () => e.play(),\n\t\tfinish: () => e.complete(),\n\t\tcancel: () => e.cancel()\n\t};\n}\nfunction a(e) {\n\treturn {\n\t\thandle: i(e),\n\t\tdone: e\n\t};\n}\nfunction o(e) {\n\tlet t = null, n = 0, r = (i) => {\n\t\te(i - n), n = i, t = requestAnimationFrame(r);\n\t};\n\treturn {\n\t\tstart() {\n\t\t\tt === null && (n = performance.now(), t = requestAnimationFrame(r));\n\t\t},\n\t\tstop() {\n\t\t\tt !== null && cancelAnimationFrame(t), t = null;\n\t\t},\n\t\tget running() {\n\t\t\treturn t !== null;\n\t\t}\n\t};\n}\nfunction s(n) {\n\tclass r extends n {\n\t\tplay() {\n\t\t\treturn this.playback.play();\n\t\t}\n\t\tpause() {\n\t\t\tthis.playback.pause();\n\t\t}\n\t\tfinish() {\n\t\t\tthis.playback.finish();\n\t\t}\n\t\tcancel() {\n\t\t\tthis.playback.cancel();\n\t\t}\n\t\tget playState() {\n\t\t\treturn this.playback.playState;\n\t\t}\n\t\tget finished() {\n\t\t\treturn this.playback.finished;\n\t\t}\n\t\tconnectedCallback() {\n\t\t\tsuper.connectedCallback?.(), e(this);\n\t\t}\n\t\tdisconnectedCallback() {\n\t\t\tsuper.disconnectedCallback?.(), t(this), this.playback?.teardown();\n\t\t}\n\t}\n\treturn r;\n}\n//#endregion\nexport { o as a, a as i, r as n, i as r, s as t };\n","import { t as e } from \"./use-intersect-xlc4xGxk.js\";\n//#region src/text/utils/loop.ts\nvar t = class {\n\tconstructor(e) {\n\t\tthis.timer = null, this.pending = null, this.dueAt = 0, this.remaining = 0, this.leg = null, this.running = !1, this.frozen = !1, this.options = e;\n\t}\n\tget active() {\n\t\treturn this.running;\n\t}\n\tget paused() {\n\t\treturn this.frozen;\n\t}\n\tstart() {\n\t\treturn this.stop(), this.running = !0, this.remaining = 0, this.schedule(() => this.runLeg(!1), (this.options.delay?.() ?? 0) * 1e3), {\n\t\t\tpause: () => this.pause(),\n\t\t\tresume: () => this.resume(),\n\t\t\tfinish: () => this.stop(),\n\t\t\tcancel: () => this.stop()\n\t\t};\n\t}\n\tstop() {\n\t\tthis.running = !1, this.frozen = !1, this.timer && clearTimeout(this.timer), this.timer = null, this.pending = null, this.leg?.cancel(), this.leg = null;\n\t}\n\tpause() {\n\t\tthis.frozen = !0, this.timer ? (clearTimeout(this.timer), this.timer = null, this.remaining = Math.max(0, this.dueAt - performance.now())) : this.remaining = 0, this.leg?.pause();\n\t}\n\tresume() {\n\t\tthis.frozen = !1, this.leg?.resume(), this.pending && this.schedule(this.pending, this.remaining);\n\t}\n\tschedule(e, t) {\n\t\tthis.pending = e, this.dueAt = performance.now() + t, this.timer = setTimeout(() => {\n\t\t\tthis.timer = null, this.pending = null, e();\n\t\t}, t);\n\t}\n\trunLeg(e) {\n\t\tif (!this.running) return;\n\t\tlet t = this.options.leg(e);\n\t\tif (!t) {\n\t\t\tthis.wait(e);\n\t\t\treturn;\n\t\t}\n\t\tthis.leg = t.handle, t.done?.then(() => {\n\t\t\tthis.running && (this.leg = null, this.wait(e));\n\t\t});\n\t}\n\twait(e) {\n\t\tlet t = e ? this.options.gap?.() ?? 0 : this.options.hold?.() ?? 0;\n\t\tthis.schedule(() => this.runLeg(!e), t * 1e3);\n\t}\n};\nfunction n(e, t) {\n\tlet n = null, r = 0, i = e() * 1e3, a = null, o = null, s = new Promise((e) => {\n\t\to = e;\n\t}), c = (e) => {\n\t\ti = e, r = performance.now() + e, n = setTimeout(() => {\n\t\t\tn = null;\n\t\t\tlet e = t();\n\t\t\ta = e.handle, e.done?.then(() => o?.());\n\t\t}, e);\n\t};\n\treturn c(i), {\n\t\thandle: {\n\t\t\tpause: () => {\n\t\t\t\tn && (clearTimeout(n), n = null, i = Math.max(0, r - performance.now())), a?.pause();\n\t\t\t},\n\t\t\tresume: () => {\n\t\t\t\t!n && !a && i > 0 && c(i), a?.resume();\n\t\t\t},\n\t\t\tfinish: () => {\n\t\t\t\tn ? (clearTimeout(n), n = null) : a?.finish();\n\t\t\t},\n\t\t\tcancel: () => {\n\t\t\t\tn ? (clearTimeout(n), n = null) : a?.cancel();\n\t\t\t}\n\t\t},\n\t\tdone: s\n\t};\n}\nvar r = class {\n\tconstructor(e, t) {\n\t\tthis.host = e, this.options = t, this.disconnect = null, this.triggered = !1;\n\t}\n\tarm() {\n\t\tthis.disarm(), this.disconnect = e(this.options.observe?.() ?? this.host, this.options.threshold(), () => {\n\t\t\tif (this.options.loop()) {\n\t\t\t\tthis.host.playState === \"idle\" && this.host.play();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthis.triggered || this.host.playState !== \"idle\" || (this.host.play(), this.options.once() && (this.triggered = !0, this.disconnect?.()));\n\t\t}, () => {\n\t\t\t(this.options.loop() || !this.options.once()) && this.host.playState !== \"idle\" && this.host.cancel();\n\t\t});\n\t}\n\treset() {\n\t\tthis.triggered = !1;\n\t}\n\tdisarm() {\n\t\tthis.disconnect?.(), this.disconnect = null;\n\t}\n};\nfunction i(e, t, n, r) {\n\tlet i = !1, a = () => {\n\t\ti || !t() || e.playState !== \"running\" || (i = !0, n());\n\t}, o = () => {\n\t\ti && (i = !1, e.playState === \"paused\" && r());\n\t};\n\treturn e.addEventListener(\"pointermove\", a), e.addEventListener(\"pointerleave\", o), () => {\n\t\te.removeEventListener(\"pointermove\", a), e.removeEventListener(\"pointerleave\", o);\n\t};\n}\n//#endregion\nexport { i, r as n, n as r, t };\n","import { n as e } from \"./chunks/define-DO-1i33g.js\";\nimport { n as t, t as n } from \"./chunks/attributes-GRXcOzX9.js\";\nimport { t as r } from \"./chunks/decorate-DzcxXH9n.js\";\nimport { a as i, n as a, t as o } from \"./chunks/playback-C9hz8-7W.js\";\nimport { i as s } from \"./chunks/loop-FvdPx-NR.js\";\nimport { LitElement as c, css as l, html as u } from \"lit\";\nimport { property as d } from \"lit/decorators.js\";\n//#region src/text/motion-perspective/motion-perspective.ts\nvar f = class extends o(c) {\n\tconstructor(...e) {\n\t\tsuper(...e), this.depth = .65, this.vanish = \"left\", this.loop = !1, this.duration = 3, this.pauseOnHover = !1, this.ticker = null, this.phase = 0, this.playback = new a(this, {\n\t\t\tstart: () => (this.ticker = i((e) => this.tick(e / 1e3)), this.ticker.start(), { handle: {\n\t\t\t\tpause: () => this.ticker?.stop(),\n\t\t\t\tresume: () => this.ticker?.start(),\n\t\t\t\tfinish: () => {\n\t\t\t\t\tthis.ticker?.stop(), this.ticker = null, this.applyNeutral();\n\t\t\t\t},\n\t\t\t\tcancel: () => {\n\t\t\t\t\tthis.ticker?.stop(), this.ticker = null;\n\t\t\t\t}\n\t\t\t} }),\n\t\t\tapplyFinalState: () => this.applyNeutral(),\n\t\t\tapplyInitialState: () => {\n\t\t\t\tthis.phase = 0, this.applyNeutral();\n\t\t\t}\n\t\t}), this.detachHover = null;\n\t}\n\tstatic get observedAttributes() {\n\t\treturn [...super.observedAttributes, \"oscillate\"];\n\t}\n\tattributeChangedCallback(e, n, r) {\n\t\tsuper.attributeChangedCallback(e, n, r), e === \"oscillate\" && (this.loop = t(r));\n\t}\n\tstatic {\n\t\tthis.styles = l`\n    .sr-only {\n      position: absolute;\n      width: 1px;\n      height: 1px;\n      overflow: hidden;\n      clip-path: inset(50%);\n      white-space: nowrap;\n    }\n    :host {\n      display: inline-block;\n      font-size: inherit;\n      font-weight: inherit;\n      font-family: inherit;\n      font-style: inherit;\n      letter-spacing: inherit;\n      line-height: 1;\n    }\n\n    .track {\n      display: inline-flex;\n      align-items: flex-end;\n    }\n\n    .char {\n      display: inline-block;\n      white-space: pre;\n      line-height: 1;\n    }\n  `;\n\t}\n\tconnectedCallback() {\n\t\tthis.text ||= this.textContent?.trim() ?? \"\", this.textContent = \"\", super.connectedCallback(), this.detachHover = s(this, () => this.pauseOnHover, () => this.pause(), () => void this.play());\n\t}\n\tdisconnectedCallback() {\n\t\tsuper.disconnectedCallback(), this.detachHover?.(), this.detachHover = null;\n\t}\n\tupdated(e) {\n\t\t(e.has(\"text\") || e.has(\"depth\") || e.has(\"vanish\") || e.has(\"loop\") || e.has(\"duration\")) && this.setup();\n\t}\n\tsetup() {\n\t\tif (this.cancel(), !this.loop) {\n\t\t\tthis.applyStatic();\n\t\t\treturn;\n\t\t}\n\t\tif (window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches) {\n\t\t\tthis.applyStatic();\n\t\t\treturn;\n\t\t}\n\t\tthis.play();\n\t}\n\tapplyStatic() {\n\t\tlet e = Array.from(this.shadowRoot.querySelectorAll(\".char\")), t = e.length;\n\t\te.forEach((e, n) => {\n\t\t\tlet r = n / Math.max(t - 1, 1), i = this.vanish === \"left\" ? r : 1 - r;\n\t\t\te.style.fontSize = `${1 - this.depth * (1 - i)}em`, e.style.opacity = String(1 - (1 - i) * this.depth * .45);\n\t\t});\n\t}\n\tapplyNeutral() {\n\t\tfor (let e of this.shadowRoot?.querySelectorAll(\".char\") ?? []) e.style.fontSize = \"\", e.style.opacity = \"\";\n\t}\n\ttick(e) {\n\t\tthis.duration > 0 && (this.phase += e / this.duration);\n\t\tlet t = Array.from(this.shadowRoot.querySelectorAll(\".char\")), n = t.length;\n\t\tt.forEach((e, t) => {\n\t\t\tlet r = t / Math.max(n - 1, 1), i = (Math.cos(this.phase * Math.PI * 2 + r * Math.PI) + 1) / 2;\n\t\t\te.style.fontSize = `${1 - this.depth * (1 - i)}em`, e.style.opacity = String(1 - (1 - i) * this.depth * .45);\n\t\t});\n\t}\n\trender() {\n\t\treturn u`\n      <span class=\"sr-only\">${this.text}</span>\n      <span class=\"track\" aria-hidden=\"true\">\n        ${[...this.text ?? \"\"].map((e) => u`<span class=\"char\">${e === \" \" ? \"\\xA0\" : e}</span>`)}\n      </span>\n    `;\n\t}\n};\nr([d({ type: String })], f.prototype, \"text\", void 0), r([d({ type: Number })], f.prototype, \"depth\", void 0), r([d({ type: String })], f.prototype, \"vanish\", void 0), r([d({\n\ttype: Boolean,\n\tconverter: n,\n\tattribute: \"loop\"\n})], f.prototype, \"loop\", void 0), r([d({ type: Number })], f.prototype, \"duration\", void 0), r([d({\n\ttype: Boolean,\n\tconverter: n,\n\tattribute: \"pause-on-hover\"\n})], f.prototype, \"pauseOnHover\", void 0), f = r([e(\"motion-perspective\")], f);\n//#endregion\nexport { f as MotionPerspective };\n"]}