@tryghost/activitypub 3.1.14 → 3.1.16
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/dist/activitypub.js +1 -1
- package/dist/{at-sign-L8c-fmBE.mjs → at-sign-DbvyEqya.mjs} +2 -2
- package/dist/{at-sign-L8c-fmBE.mjs.map → at-sign-DbvyEqya.mjs.map} +1 -1
- package/dist/{avatar-flipboard-5HTtDvB8.mjs → avatar-flipboard-DlA8At88.mjs} +2 -2
- package/dist/{avatar-flipboard-5HTtDvB8.mjs.map → avatar-flipboard-DlA8At88.mjs.map} +1 -1
- package/dist/{bluesky-sharing-z7tI7J-i.mjs → bluesky-sharing-DJF8L8YX.mjs} +4 -4
- package/dist/{bluesky-sharing-z7tI7J-i.mjs.map → bluesky-sharing-DJF8L8YX.mjs.map} +1 -1
- package/dist/{copy-CJtoT0NC.mjs → copy-o8CPkfOy.mjs} +2 -2
- package/dist/{copy-CJtoT0NC.mjs.map → copy-o8CPkfOy.mjs.map} +1 -1
- package/dist/{deleted-feed-item-DOjLF6e7.mjs → deleted-feed-item-D7Lh01A1.mjs} +2 -2
- package/dist/{deleted-feed-item-DOjLF6e7.mjs.map → deleted-feed-item-D7Lh01A1.mjs.map} +1 -1
- package/dist/{edit-profile-DGFGCTB3.mjs → edit-profile-CNx9VFB0.mjs} +343 -342
- package/dist/edit-profile-CNx9VFB0.mjs.map +1 -0
- package/dist/{feed-DHvRPZkK.mjs → feed-DUj6zuQG.mjs} +4 -4
- package/dist/{feed-DHvRPZkK.mjs.map → feed-DUj6zuQG.mjs.map} +1 -1
- package/dist/{hash-PLqN02BK.mjs → hash-Ua2cMVZZ.mjs} +2 -2
- package/dist/{hash-PLqN02BK.mjs.map → hash-Ua2cMVZZ.mjs.map} +1 -1
- package/dist/{inbox-C_XtCWhi.mjs → inbox-CHTBd4v6.mjs} +2 -2
- package/dist/{inbox-C_XtCWhi.mjs.map → inbox-CHTBd4v6.mjs.map} +1 -1
- package/dist/{index-B1KQVajL.mjs → index-0JIzksX8.mjs} +7 -7
- package/dist/{index-B1KQVajL.mjs.map → index-0JIzksX8.mjs.map} +1 -1
- package/dist/{index-DW-NK8x0.mjs → index-BUxTXK58.mjs} +8142 -7630
- package/dist/index-BUxTXK58.mjs.map +1 -0
- package/dist/{index-C4FsaHg-.mjs → index-BaP7ZzBh.mjs} +2 -2
- package/dist/{index-C4FsaHg-.mjs.map → index-BaP7ZzBh.mjs.map} +1 -1
- package/dist/{index-BZpBLgwj.mjs → index-Bdx2FYYX.mjs} +2 -2
- package/dist/{index-BZpBLgwj.mjs.map → index-Bdx2FYYX.mjs.map} +1 -1
- package/dist/{index-DKvb91i3.mjs → index-CbeWHLjc.mjs} +6 -6
- package/dist/{index-DKvb91i3.mjs.map → index-CbeWHLjc.mjs.map} +1 -1
- package/dist/{index-MBUMlRJ_.mjs → index-DSYK4l2Z.mjs} +41 -41
- package/dist/index-DSYK4l2Z.mjs.map +1 -0
- package/dist/{index-CvkZfb4P.mjs → index-Dvy73QpT.mjs} +3 -3
- package/dist/{index-CvkZfb4P.mjs.map → index-Dvy73QpT.mjs.map} +1 -1
- package/dist/{index-KBMcLxdx.mjs → index-pDs048xI.mjs} +4 -4
- package/dist/{index-KBMcLxdx.mjs.map → index-pDs048xI.mjs.map} +1 -1
- package/dist/{moderation-Dx6t4gT3.mjs → moderation-BX6PetXQ.mjs} +3 -3
- package/dist/{moderation-Dx6t4gT3.mjs.map → moderation-BX6PetXQ.mjs.map} +1 -1
- package/dist/{note-CZU4YwDt.mjs → note-DWKmf61a.mjs} +4 -4
- package/dist/{note-CZU4YwDt.mjs.map → note-DWKmf61a.mjs.map} +1 -1
- package/dist/{reply-BiQ2tbCL.mjs → reply-D3ggZn8x.mjs} +2 -2
- package/dist/{reply-BiQ2tbCL.mjs.map → reply-D3ggZn8x.mjs.map} +1 -1
- package/dist/{separator-Bh7k9bSR.mjs → separator-BvykMnKw.mjs} +2 -2
- package/dist/{separator-Bh7k9bSR.mjs.map → separator-BvykMnKw.mjs.map} +1 -1
- package/dist/{settings-BkfeI-Go.mjs → settings-DC22q-Jw.mjs} +3 -3
- package/dist/{settings-BkfeI-Go.mjs.map → settings-DC22q-Jw.mjs.map} +1 -1
- package/dist/{step-1-DdZDMnef.mjs → step-1-SDEAyCzr.mjs} +3 -3
- package/dist/{step-1-DdZDMnef.mjs.map → step-1-SDEAyCzr.mjs.map} +1 -1
- package/dist/{step-2-BnzzL30K.mjs → step-2-Cr20T_8Z.mjs} +5 -5
- package/dist/{step-2-BnzzL30K.mjs.map → step-2-Cr20T_8Z.mjs.map} +1 -1
- package/dist/{step-3-epf2QdQA.mjs → step-3-BBI6k4Pz.mjs} +7 -7
- package/dist/{step-3-epf2QdQA.mjs.map → step-3-BBI6k4Pz.mjs.map} +1 -1
- package/dist/{tabs-CB5AR-gI.mjs → tabs-Cd5f1n42.mjs} +155 -168
- package/dist/{tabs-CB5AR-gI.mjs.map → tabs-Cd5f1n42.mjs.map} +1 -1
- package/dist/{topic-filter-JC-eNOdZ.mjs → topic-filter-CXslsKa8.mjs} +2 -2
- package/dist/{topic-filter-JC-eNOdZ.mjs.map → topic-filter-CXslsKa8.mjs.map} +1 -1
- package/package.json +1 -3
- package/dist/edit-profile-DGFGCTB3.mjs.map +0 -1
- package/dist/index-DW-NK8x0.mjs.map +0 -1
- package/dist/index-MBUMlRJ_.mjs.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ag as U, R as g, ah as D, j as d, ai as G, aj as X, ak as Z, ae as P, al as ee, e as k, am as B, an as x, c as L, ao as te, b as K, ap as oe, W as y } from "./index-
|
|
1
|
+
import { ag as U, R as g, ah as D, j as d, ai as G, aj as X, ak as Z, ae as P, al as ee, e as k, am as B, an as x, c as L, ao as te, b as K, ap as oe, W as y } from "./index-BUxTXK58.mjs";
|
|
2
2
|
function ne(e) {
|
|
3
3
|
const o = e + "CollectionProvider", [i, r] = U(o), [w, I] = i(
|
|
4
4
|
o,
|
|
@@ -216,4 +216,4 @@ export {
|
|
|
216
216
|
Ce as c,
|
|
217
217
|
ce as u
|
|
218
218
|
};
|
|
219
|
-
//# sourceMappingURL=index-
|
|
219
|
+
//# sourceMappingURL=index-BaP7ZzBh.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-C4FsaHg-.mjs","sources":["../../../node_modules/.pnpm/@radix-ui+react-collection@1.1.7_@types+react-dom@18.3.7_@types+react@18.3.28__@types+r_4e264787f1cadc3b39e6411b3bc7d186/node_modules/@radix-ui/react-collection/dist/index.mjs","../../../node_modules/.pnpm/@radix-ui+react-direction@1.1.1_@types+react@18.3.28_react@18.3.1/node_modules/@radix-ui/react-direction/dist/index.mjs","../../../node_modules/.pnpm/@radix-ui+react-roving-focus@1.1.11_@types+react-dom@18.3.7_@types+react@18.3.28__@type_6f10866f94bcb38b5caff30079bbebd2/node_modules/@radix-ui/react-roving-focus/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// src/collection-legacy.tsx\nimport React from \"react\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createSlot } from \"@radix-ui/react-slot\";\nimport { jsx } from \"react/jsx-runtime\";\nfunction createCollection(name) {\n const PROVIDER_NAME = name + \"CollectionProvider\";\n const [createCollectionContext, createCollectionScope] = createContextScope(PROVIDER_NAME);\n const [CollectionProviderImpl, useCollectionContext] = createCollectionContext(\n PROVIDER_NAME,\n { collectionRef: { current: null }, itemMap: /* @__PURE__ */ new Map() }\n );\n const CollectionProvider = (props) => {\n const { scope, children } = props;\n const ref = React.useRef(null);\n const itemMap = React.useRef(/* @__PURE__ */ new Map()).current;\n return /* @__PURE__ */ jsx(CollectionProviderImpl, { scope, itemMap, collectionRef: ref, children });\n };\n CollectionProvider.displayName = PROVIDER_NAME;\n const COLLECTION_SLOT_NAME = name + \"CollectionSlot\";\n const CollectionSlotImpl = createSlot(COLLECTION_SLOT_NAME);\n const CollectionSlot = React.forwardRef(\n (props, forwardedRef) => {\n const { scope, children } = props;\n const context = useCollectionContext(COLLECTION_SLOT_NAME, scope);\n const composedRefs = useComposedRefs(forwardedRef, context.collectionRef);\n return /* @__PURE__ */ jsx(CollectionSlotImpl, { ref: composedRefs, children });\n }\n );\n CollectionSlot.displayName = COLLECTION_SLOT_NAME;\n const ITEM_SLOT_NAME = name + \"CollectionItemSlot\";\n const ITEM_DATA_ATTR = \"data-radix-collection-item\";\n const CollectionItemSlotImpl = createSlot(ITEM_SLOT_NAME);\n const CollectionItemSlot = React.forwardRef(\n (props, forwardedRef) => {\n const { scope, children, ...itemData } = props;\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const context = useCollectionContext(ITEM_SLOT_NAME, scope);\n React.useEffect(() => {\n context.itemMap.set(ref, { ref, ...itemData });\n return () => void context.itemMap.delete(ref);\n });\n return /* @__PURE__ */ jsx(CollectionItemSlotImpl, { ...{ [ITEM_DATA_ATTR]: \"\" }, ref: composedRefs, children });\n }\n );\n CollectionItemSlot.displayName = ITEM_SLOT_NAME;\n function useCollection(scope) {\n const context = useCollectionContext(name + \"CollectionConsumer\", scope);\n const getItems = React.useCallback(() => {\n const collectionNode = context.collectionRef.current;\n if (!collectionNode) return [];\n const orderedNodes = Array.from(collectionNode.querySelectorAll(`[${ITEM_DATA_ATTR}]`));\n const items = Array.from(context.itemMap.values());\n const orderedItems = items.sort(\n (a, b) => orderedNodes.indexOf(a.ref.current) - orderedNodes.indexOf(b.ref.current)\n );\n return orderedItems;\n }, [context.collectionRef, context.itemMap]);\n return getItems;\n }\n return [\n { Provider: CollectionProvider, Slot: CollectionSlot, ItemSlot: CollectionItemSlot },\n useCollection,\n createCollectionScope\n ];\n}\n\n// src/collection.tsx\nimport React2 from \"react\";\nimport { createContextScope as createContextScope2 } from \"@radix-ui/react-context\";\nimport { useComposedRefs as useComposedRefs2 } from \"@radix-ui/react-compose-refs\";\nimport { createSlot as createSlot2 } from \"@radix-ui/react-slot\";\n\n// src/ordered-dictionary.ts\nvar __instanciated = /* @__PURE__ */ new WeakMap();\nvar OrderedDict = class _OrderedDict extends Map {\n #keys;\n constructor(entries) {\n super(entries);\n this.#keys = [...super.keys()];\n __instanciated.set(this, true);\n }\n set(key, value) {\n if (__instanciated.get(this)) {\n if (this.has(key)) {\n this.#keys[this.#keys.indexOf(key)] = key;\n } else {\n this.#keys.push(key);\n }\n }\n super.set(key, value);\n return this;\n }\n insert(index, key, value) {\n const has = this.has(key);\n const length = this.#keys.length;\n const relativeIndex = toSafeInteger(index);\n let actualIndex = relativeIndex >= 0 ? relativeIndex : length + relativeIndex;\n const safeIndex = actualIndex < 0 || actualIndex >= length ? -1 : actualIndex;\n if (safeIndex === this.size || has && safeIndex === this.size - 1 || safeIndex === -1) {\n this.set(key, value);\n return this;\n }\n const size = this.size + (has ? 0 : 1);\n if (relativeIndex < 0) {\n actualIndex++;\n }\n const keys = [...this.#keys];\n let nextValue;\n let shouldSkip = false;\n for (let i = actualIndex; i < size; i++) {\n if (actualIndex === i) {\n let nextKey = keys[i];\n if (keys[i] === key) {\n nextKey = keys[i + 1];\n }\n if (has) {\n this.delete(key);\n }\n nextValue = this.get(nextKey);\n this.set(key, value);\n } else {\n if (!shouldSkip && keys[i - 1] === key) {\n shouldSkip = true;\n }\n const currentKey = keys[shouldSkip ? i : i - 1];\n const currentValue = nextValue;\n nextValue = this.get(currentKey);\n this.delete(currentKey);\n this.set(currentKey, currentValue);\n }\n }\n return this;\n }\n with(index, key, value) {\n const copy = new _OrderedDict(this);\n copy.insert(index, key, value);\n return copy;\n }\n before(key) {\n const index = this.#keys.indexOf(key) - 1;\n if (index < 0) {\n return void 0;\n }\n return this.entryAt(index);\n }\n /**\n * Sets a new key-value pair at the position before the given key.\n */\n setBefore(key, newKey, value) {\n const index = this.#keys.indexOf(key);\n if (index === -1) {\n return this;\n }\n return this.insert(index, newKey, value);\n }\n after(key) {\n let index = this.#keys.indexOf(key);\n index = index === -1 || index === this.size - 1 ? -1 : index + 1;\n if (index === -1) {\n return void 0;\n }\n return this.entryAt(index);\n }\n /**\n * Sets a new key-value pair at the position after the given key.\n */\n setAfter(key, newKey, value) {\n const index = this.#keys.indexOf(key);\n if (index === -1) {\n return this;\n }\n return this.insert(index + 1, newKey, value);\n }\n first() {\n return this.entryAt(0);\n }\n last() {\n return this.entryAt(-1);\n }\n clear() {\n this.#keys = [];\n return super.clear();\n }\n delete(key) {\n const deleted = super.delete(key);\n if (deleted) {\n this.#keys.splice(this.#keys.indexOf(key), 1);\n }\n return deleted;\n }\n deleteAt(index) {\n const key = this.keyAt(index);\n if (key !== void 0) {\n return this.delete(key);\n }\n return false;\n }\n at(index) {\n const key = at(this.#keys, index);\n if (key !== void 0) {\n return this.get(key);\n }\n }\n entryAt(index) {\n const key = at(this.#keys, index);\n if (key !== void 0) {\n return [key, this.get(key)];\n }\n }\n indexOf(key) {\n return this.#keys.indexOf(key);\n }\n keyAt(index) {\n return at(this.#keys, index);\n }\n from(key, offset) {\n const index = this.indexOf(key);\n if (index === -1) {\n return void 0;\n }\n let dest = index + offset;\n if (dest < 0) dest = 0;\n if (dest >= this.size) dest = this.size - 1;\n return this.at(dest);\n }\n keyFrom(key, offset) {\n const index = this.indexOf(key);\n if (index === -1) {\n return void 0;\n }\n let dest = index + offset;\n if (dest < 0) dest = 0;\n if (dest >= this.size) dest = this.size - 1;\n return this.keyAt(dest);\n }\n find(predicate, thisArg) {\n let index = 0;\n for (const entry of this) {\n if (Reflect.apply(predicate, thisArg, [entry, index, this])) {\n return entry;\n }\n index++;\n }\n return void 0;\n }\n findIndex(predicate, thisArg) {\n let index = 0;\n for (const entry of this) {\n if (Reflect.apply(predicate, thisArg, [entry, index, this])) {\n return index;\n }\n index++;\n }\n return -1;\n }\n filter(predicate, thisArg) {\n const entries = [];\n let index = 0;\n for (const entry of this) {\n if (Reflect.apply(predicate, thisArg, [entry, index, this])) {\n entries.push(entry);\n }\n index++;\n }\n return new _OrderedDict(entries);\n }\n map(callbackfn, thisArg) {\n const entries = [];\n let index = 0;\n for (const entry of this) {\n entries.push([entry[0], Reflect.apply(callbackfn, thisArg, [entry, index, this])]);\n index++;\n }\n return new _OrderedDict(entries);\n }\n reduce(...args) {\n const [callbackfn, initialValue] = args;\n let index = 0;\n let accumulator = initialValue ?? this.at(0);\n for (const entry of this) {\n if (index === 0 && args.length === 1) {\n accumulator = entry;\n } else {\n accumulator = Reflect.apply(callbackfn, this, [accumulator, entry, index, this]);\n }\n index++;\n }\n return accumulator;\n }\n reduceRight(...args) {\n const [callbackfn, initialValue] = args;\n let accumulator = initialValue ?? this.at(-1);\n for (let index = this.size - 1; index >= 0; index--) {\n const entry = this.at(index);\n if (index === this.size - 1 && args.length === 1) {\n accumulator = entry;\n } else {\n accumulator = Reflect.apply(callbackfn, this, [accumulator, entry, index, this]);\n }\n }\n return accumulator;\n }\n toSorted(compareFn) {\n const entries = [...this.entries()].sort(compareFn);\n return new _OrderedDict(entries);\n }\n toReversed() {\n const reversed = new _OrderedDict();\n for (let index = this.size - 1; index >= 0; index--) {\n const key = this.keyAt(index);\n const element = this.get(key);\n reversed.set(key, element);\n }\n return reversed;\n }\n toSpliced(...args) {\n const entries = [...this.entries()];\n entries.splice(...args);\n return new _OrderedDict(entries);\n }\n slice(start, end) {\n const result = new _OrderedDict();\n let stop = this.size - 1;\n if (start === void 0) {\n return result;\n }\n if (start < 0) {\n start = start + this.size;\n }\n if (end !== void 0 && end > 0) {\n stop = end - 1;\n }\n for (let index = start; index <= stop; index++) {\n const key = this.keyAt(index);\n const element = this.get(key);\n result.set(key, element);\n }\n return result;\n }\n every(predicate, thisArg) {\n let index = 0;\n for (const entry of this) {\n if (!Reflect.apply(predicate, thisArg, [entry, index, this])) {\n return false;\n }\n index++;\n }\n return true;\n }\n some(predicate, thisArg) {\n let index = 0;\n for (const entry of this) {\n if (Reflect.apply(predicate, thisArg, [entry, index, this])) {\n return true;\n }\n index++;\n }\n return false;\n }\n};\nfunction at(array, index) {\n if (\"at\" in Array.prototype) {\n return Array.prototype.at.call(array, index);\n }\n const actualIndex = toSafeIndex(array, index);\n return actualIndex === -1 ? void 0 : array[actualIndex];\n}\nfunction toSafeIndex(array, index) {\n const length = array.length;\n const relativeIndex = toSafeInteger(index);\n const actualIndex = relativeIndex >= 0 ? relativeIndex : length + relativeIndex;\n return actualIndex < 0 || actualIndex >= length ? -1 : actualIndex;\n}\nfunction toSafeInteger(number) {\n return number !== number || number === 0 ? 0 : Math.trunc(number);\n}\n\n// src/collection.tsx\nimport { jsx as jsx2 } from \"react/jsx-runtime\";\nfunction createCollection2(name) {\n const PROVIDER_NAME = name + \"CollectionProvider\";\n const [createCollectionContext, createCollectionScope] = createContextScope2(PROVIDER_NAME);\n const [CollectionContextProvider, useCollectionContext] = createCollectionContext(\n PROVIDER_NAME,\n {\n collectionElement: null,\n collectionRef: { current: null },\n collectionRefObject: { current: null },\n itemMap: new OrderedDict(),\n setItemMap: () => void 0\n }\n );\n const CollectionProvider = ({ state, ...props }) => {\n return state ? /* @__PURE__ */ jsx2(CollectionProviderImpl, { ...props, state }) : /* @__PURE__ */ jsx2(CollectionInit, { ...props });\n };\n CollectionProvider.displayName = PROVIDER_NAME;\n const CollectionInit = (props) => {\n const state = useInitCollection();\n return /* @__PURE__ */ jsx2(CollectionProviderImpl, { ...props, state });\n };\n CollectionInit.displayName = PROVIDER_NAME + \"Init\";\n const CollectionProviderImpl = (props) => {\n const { scope, children, state } = props;\n const ref = React2.useRef(null);\n const [collectionElement, setCollectionElement] = React2.useState(\n null\n );\n const composeRefs = useComposedRefs2(ref, setCollectionElement);\n const [itemMap, setItemMap] = state;\n React2.useEffect(() => {\n if (!collectionElement) return;\n const observer = getChildListObserver(() => {\n });\n observer.observe(collectionElement, {\n childList: true,\n subtree: true\n });\n return () => {\n observer.disconnect();\n };\n }, [collectionElement]);\n return /* @__PURE__ */ jsx2(\n CollectionContextProvider,\n {\n scope,\n itemMap,\n setItemMap,\n collectionRef: composeRefs,\n collectionRefObject: ref,\n collectionElement,\n children\n }\n );\n };\n CollectionProviderImpl.displayName = PROVIDER_NAME + \"Impl\";\n const COLLECTION_SLOT_NAME = name + \"CollectionSlot\";\n const CollectionSlotImpl = createSlot2(COLLECTION_SLOT_NAME);\n const CollectionSlot = React2.forwardRef(\n (props, forwardedRef) => {\n const { scope, children } = props;\n const context = useCollectionContext(COLLECTION_SLOT_NAME, scope);\n const composedRefs = useComposedRefs2(forwardedRef, context.collectionRef);\n return /* @__PURE__ */ jsx2(CollectionSlotImpl, { ref: composedRefs, children });\n }\n );\n CollectionSlot.displayName = COLLECTION_SLOT_NAME;\n const ITEM_SLOT_NAME = name + \"CollectionItemSlot\";\n const ITEM_DATA_ATTR = \"data-radix-collection-item\";\n const CollectionItemSlotImpl = createSlot2(ITEM_SLOT_NAME);\n const CollectionItemSlot = React2.forwardRef(\n (props, forwardedRef) => {\n const { scope, children, ...itemData } = props;\n const ref = React2.useRef(null);\n const [element, setElement] = React2.useState(null);\n const composedRefs = useComposedRefs2(forwardedRef, ref, setElement);\n const context = useCollectionContext(ITEM_SLOT_NAME, scope);\n const { setItemMap } = context;\n const itemDataRef = React2.useRef(itemData);\n if (!shallowEqual(itemDataRef.current, itemData)) {\n itemDataRef.current = itemData;\n }\n const memoizedItemData = itemDataRef.current;\n React2.useEffect(() => {\n const itemData2 = memoizedItemData;\n setItemMap((map) => {\n if (!element) {\n return map;\n }\n if (!map.has(element)) {\n map.set(element, { ...itemData2, element });\n return map.toSorted(sortByDocumentPosition);\n }\n return map.set(element, { ...itemData2, element }).toSorted(sortByDocumentPosition);\n });\n return () => {\n setItemMap((map) => {\n if (!element || !map.has(element)) {\n return map;\n }\n map.delete(element);\n return new OrderedDict(map);\n });\n };\n }, [element, memoizedItemData, setItemMap]);\n return /* @__PURE__ */ jsx2(CollectionItemSlotImpl, { ...{ [ITEM_DATA_ATTR]: \"\" }, ref: composedRefs, children });\n }\n );\n CollectionItemSlot.displayName = ITEM_SLOT_NAME;\n function useInitCollection() {\n return React2.useState(new OrderedDict());\n }\n function useCollection(scope) {\n const { itemMap } = useCollectionContext(name + \"CollectionConsumer\", scope);\n return itemMap;\n }\n const functions = {\n createCollectionScope,\n useCollection,\n useInitCollection\n };\n return [\n { Provider: CollectionProvider, Slot: CollectionSlot, ItemSlot: CollectionItemSlot },\n functions\n ];\n}\nfunction shallowEqual(a, b) {\n if (a === b) return true;\n if (typeof a !== \"object\" || typeof b !== \"object\") return false;\n if (a == null || b == null) return false;\n const keysA = Object.keys(a);\n const keysB = Object.keys(b);\n if (keysA.length !== keysB.length) return false;\n for (const key of keysA) {\n if (!Object.prototype.hasOwnProperty.call(b, key)) return false;\n if (a[key] !== b[key]) return false;\n }\n return true;\n}\nfunction isElementPreceding(a, b) {\n return !!(b.compareDocumentPosition(a) & Node.DOCUMENT_POSITION_PRECEDING);\n}\nfunction sortByDocumentPosition(a, b) {\n return !a[1].element || !b[1].element ? 0 : isElementPreceding(a[1].element, b[1].element) ? -1 : 1;\n}\nfunction getChildListObserver(callback) {\n const observer = new MutationObserver((mutationsList) => {\n for (const mutation of mutationsList) {\n if (mutation.type === \"childList\") {\n callback();\n return;\n }\n }\n });\n return observer;\n}\nexport {\n createCollection,\n createCollection2 as unstable_createCollection\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/direction/src/direction.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nvar DirectionContext = React.createContext(void 0);\nvar DirectionProvider = (props) => {\n const { dir, children } = props;\n return /* @__PURE__ */ jsx(DirectionContext.Provider, { value: dir, children });\n};\nfunction useDirection(localDir) {\n const globalDir = React.useContext(DirectionContext);\n return localDir || globalDir || \"ltr\";\n}\nvar Provider = DirectionProvider;\nexport {\n DirectionProvider,\n Provider,\n useDirection\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// src/roving-focus-group.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { jsx } from \"react/jsx-runtime\";\nvar ENTRY_FOCUS = \"rovingFocusGroup.onEntryFocus\";\nvar EVENT_OPTIONS = { bubbles: false, cancelable: true };\nvar GROUP_NAME = \"RovingFocusGroup\";\nvar [Collection, useCollection, createCollectionScope] = createCollection(GROUP_NAME);\nvar [createRovingFocusGroupContext, createRovingFocusGroupScope] = createContextScope(\n GROUP_NAME,\n [createCollectionScope]\n);\nvar [RovingFocusProvider, useRovingFocusContext] = createRovingFocusGroupContext(GROUP_NAME);\nvar RovingFocusGroup = React.forwardRef(\n (props, forwardedRef) => {\n return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx(RovingFocusGroupImpl, { ...props, ref: forwardedRef }) }) });\n }\n);\nRovingFocusGroup.displayName = GROUP_NAME;\nvar RovingFocusGroupImpl = React.forwardRef((props, forwardedRef) => {\n const {\n __scopeRovingFocusGroup,\n orientation,\n loop = false,\n dir,\n currentTabStopId: currentTabStopIdProp,\n defaultCurrentTabStopId,\n onCurrentTabStopIdChange,\n onEntryFocus,\n preventScrollOnEntryFocus = false,\n ...groupProps\n } = props;\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const direction = useDirection(dir);\n const [currentTabStopId, setCurrentTabStopId] = useControllableState({\n prop: currentTabStopIdProp,\n defaultProp: defaultCurrentTabStopId ?? null,\n onChange: onCurrentTabStopIdChange,\n caller: GROUP_NAME\n });\n const [isTabbingBackOut, setIsTabbingBackOut] = React.useState(false);\n const handleEntryFocus = useCallbackRef(onEntryFocus);\n const getItems = useCollection(__scopeRovingFocusGroup);\n const isClickFocusRef = React.useRef(false);\n const [focusableItemsCount, setFocusableItemsCount] = React.useState(0);\n React.useEffect(() => {\n const node = ref.current;\n if (node) {\n node.addEventListener(ENTRY_FOCUS, handleEntryFocus);\n return () => node.removeEventListener(ENTRY_FOCUS, handleEntryFocus);\n }\n }, [handleEntryFocus]);\n return /* @__PURE__ */ jsx(\n RovingFocusProvider,\n {\n scope: __scopeRovingFocusGroup,\n orientation,\n dir: direction,\n loop,\n currentTabStopId,\n onItemFocus: React.useCallback(\n (tabStopId) => setCurrentTabStopId(tabStopId),\n [setCurrentTabStopId]\n ),\n onItemShiftTab: React.useCallback(() => setIsTabbingBackOut(true), []),\n onFocusableItemAdd: React.useCallback(\n () => setFocusableItemsCount((prevCount) => prevCount + 1),\n []\n ),\n onFocusableItemRemove: React.useCallback(\n () => setFocusableItemsCount((prevCount) => prevCount - 1),\n []\n ),\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n tabIndex: isTabbingBackOut || focusableItemsCount === 0 ? -1 : 0,\n \"data-orientation\": orientation,\n ...groupProps,\n ref: composedRefs,\n style: { outline: \"none\", ...props.style },\n onMouseDown: composeEventHandlers(props.onMouseDown, () => {\n isClickFocusRef.current = true;\n }),\n onFocus: composeEventHandlers(props.onFocus, (event) => {\n const isKeyboardFocus = !isClickFocusRef.current;\n if (event.target === event.currentTarget && isKeyboardFocus && !isTabbingBackOut) {\n const entryFocusEvent = new CustomEvent(ENTRY_FOCUS, EVENT_OPTIONS);\n event.currentTarget.dispatchEvent(entryFocusEvent);\n if (!entryFocusEvent.defaultPrevented) {\n const items = getItems().filter((item) => item.focusable);\n const activeItem = items.find((item) => item.active);\n const currentItem = items.find((item) => item.id === currentTabStopId);\n const candidateItems = [activeItem, currentItem, ...items].filter(\n Boolean\n );\n const candidateNodes = candidateItems.map((item) => item.ref.current);\n focusFirst(candidateNodes, preventScrollOnEntryFocus);\n }\n }\n isClickFocusRef.current = false;\n }),\n onBlur: composeEventHandlers(props.onBlur, () => setIsTabbingBackOut(false))\n }\n )\n }\n );\n});\nvar ITEM_NAME = \"RovingFocusGroupItem\";\nvar RovingFocusGroupItem = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeRovingFocusGroup,\n focusable = true,\n active = false,\n tabStopId,\n children,\n ...itemProps\n } = props;\n const autoId = useId();\n const id = tabStopId || autoId;\n const context = useRovingFocusContext(ITEM_NAME, __scopeRovingFocusGroup);\n const isCurrentTabStop = context.currentTabStopId === id;\n const getItems = useCollection(__scopeRovingFocusGroup);\n const { onFocusableItemAdd, onFocusableItemRemove, currentTabStopId } = context;\n React.useEffect(() => {\n if (focusable) {\n onFocusableItemAdd();\n return () => onFocusableItemRemove();\n }\n }, [focusable, onFocusableItemAdd, onFocusableItemRemove]);\n return /* @__PURE__ */ jsx(\n Collection.ItemSlot,\n {\n scope: __scopeRovingFocusGroup,\n id,\n focusable,\n active,\n children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n tabIndex: isCurrentTabStop ? 0 : -1,\n \"data-orientation\": context.orientation,\n ...itemProps,\n ref: forwardedRef,\n onMouseDown: composeEventHandlers(props.onMouseDown, (event) => {\n if (!focusable) event.preventDefault();\n else context.onItemFocus(id);\n }),\n onFocus: composeEventHandlers(props.onFocus, () => context.onItemFocus(id)),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n if (event.key === \"Tab\" && event.shiftKey) {\n context.onItemShiftTab();\n return;\n }\n if (event.target !== event.currentTarget) return;\n const focusIntent = getFocusIntent(event, context.orientation, context.dir);\n if (focusIntent !== void 0) {\n if (event.metaKey || event.ctrlKey || event.altKey || event.shiftKey) return;\n event.preventDefault();\n const items = getItems().filter((item) => item.focusable);\n let candidateNodes = items.map((item) => item.ref.current);\n if (focusIntent === \"last\") candidateNodes.reverse();\n else if (focusIntent === \"prev\" || focusIntent === \"next\") {\n if (focusIntent === \"prev\") candidateNodes.reverse();\n const currentIndex = candidateNodes.indexOf(event.currentTarget);\n candidateNodes = context.loop ? wrapArray(candidateNodes, currentIndex + 1) : candidateNodes.slice(currentIndex + 1);\n }\n setTimeout(() => focusFirst(candidateNodes));\n }\n }),\n children: typeof children === \"function\" ? children({ isCurrentTabStop, hasTabStop: currentTabStopId != null }) : children\n }\n )\n }\n );\n }\n);\nRovingFocusGroupItem.displayName = ITEM_NAME;\nvar MAP_KEY_TO_FOCUS_INTENT = {\n ArrowLeft: \"prev\",\n ArrowUp: \"prev\",\n ArrowRight: \"next\",\n ArrowDown: \"next\",\n PageUp: \"first\",\n Home: \"first\",\n PageDown: \"last\",\n End: \"last\"\n};\nfunction getDirectionAwareKey(key, dir) {\n if (dir !== \"rtl\") return key;\n return key === \"ArrowLeft\" ? \"ArrowRight\" : key === \"ArrowRight\" ? \"ArrowLeft\" : key;\n}\nfunction getFocusIntent(event, orientation, dir) {\n const key = getDirectionAwareKey(event.key, dir);\n if (orientation === \"vertical\" && [\"ArrowLeft\", \"ArrowRight\"].includes(key)) return void 0;\n if (orientation === \"horizontal\" && [\"ArrowUp\", \"ArrowDown\"].includes(key)) return void 0;\n return MAP_KEY_TO_FOCUS_INTENT[key];\n}\nfunction focusFirst(candidates, preventScroll = false) {\n const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;\n for (const candidate of candidates) {\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n candidate.focus({ preventScroll });\n if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n }\n}\nfunction wrapArray(array, startIndex) {\n return array.map((_, index) => array[(startIndex + index) % array.length]);\n}\nvar Root = RovingFocusGroup;\nvar Item = RovingFocusGroupItem;\nexport {\n Item,\n Root,\n RovingFocusGroup,\n RovingFocusGroupItem,\n createRovingFocusGroupScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["createCollection","name","PROVIDER_NAME","createCollectionContext","createCollectionScope","createContextScope","CollectionProviderImpl","useCollectionContext","CollectionProvider","props","scope","children","ref","React","itemMap","jsx","COLLECTION_SLOT_NAME","CollectionSlotImpl","createSlot","CollectionSlot","forwardedRef","context","composedRefs","useComposedRefs","ITEM_SLOT_NAME","ITEM_DATA_ATTR","CollectionItemSlotImpl","CollectionItemSlot","itemData","useCollection","collectionNode","orderedNodes","a","b","DirectionContext","React.createContext","useDirection","localDir","globalDir","React.useContext","ENTRY_FOCUS","EVENT_OPTIONS","GROUP_NAME","Collection","createRovingFocusGroupContext","createRovingFocusGroupScope","RovingFocusProvider","useRovingFocusContext","RovingFocusGroup","React.forwardRef","RovingFocusGroupImpl","__scopeRovingFocusGroup","orientation","loop","dir","currentTabStopIdProp","defaultCurrentTabStopId","onCurrentTabStopIdChange","onEntryFocus","preventScrollOnEntryFocus","groupProps","React.useRef","direction","currentTabStopId","setCurrentTabStopId","useControllableState","isTabbingBackOut","setIsTabbingBackOut","React.useState","handleEntryFocus","useCallbackRef","getItems","isClickFocusRef","focusableItemsCount","setFocusableItemsCount","React.useEffect","node","React.useCallback","tabStopId","prevCount","Primitive","composeEventHandlers","event","isKeyboardFocus","entryFocusEvent","items","item","activeItem","currentItem","candidateNodes","focusFirst","ITEM_NAME","RovingFocusGroupItem","focusable","active","itemProps","autoId","useId","id","isCurrentTabStop","onFocusableItemAdd","onFocusableItemRemove","focusIntent","getFocusIntent","currentIndex","wrapArray","MAP_KEY_TO_FOCUS_INTENT","getDirectionAwareKey","key","candidates","preventScroll","PREVIOUSLY_FOCUSED_ELEMENT","candidate","array","startIndex","_","index","Root","Item"],"mappings":"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","x_google_ignoreList":[0,1,2]}
|
|
1
|
+
{"version":3,"file":"index-BaP7ZzBh.mjs","sources":["../../../node_modules/.pnpm/@radix-ui+react-collection@1.1.7_@types+react-dom@18.3.7_@types+react@18.3.28__@types+r_4e264787f1cadc3b39e6411b3bc7d186/node_modules/@radix-ui/react-collection/dist/index.mjs","../../../node_modules/.pnpm/@radix-ui+react-direction@1.1.1_@types+react@18.3.28_react@18.3.1/node_modules/@radix-ui/react-direction/dist/index.mjs","../../../node_modules/.pnpm/@radix-ui+react-roving-focus@1.1.11_@types+react-dom@18.3.7_@types+react@18.3.28__@type_6f10866f94bcb38b5caff30079bbebd2/node_modules/@radix-ui/react-roving-focus/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// src/collection-legacy.tsx\nimport React from \"react\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createSlot } from \"@radix-ui/react-slot\";\nimport { jsx } from \"react/jsx-runtime\";\nfunction createCollection(name) {\n const PROVIDER_NAME = name + \"CollectionProvider\";\n const [createCollectionContext, createCollectionScope] = createContextScope(PROVIDER_NAME);\n const [CollectionProviderImpl, useCollectionContext] = createCollectionContext(\n PROVIDER_NAME,\n { collectionRef: { current: null }, itemMap: /* @__PURE__ */ new Map() }\n );\n const CollectionProvider = (props) => {\n const { scope, children } = props;\n const ref = React.useRef(null);\n const itemMap = React.useRef(/* @__PURE__ */ new Map()).current;\n return /* @__PURE__ */ jsx(CollectionProviderImpl, { scope, itemMap, collectionRef: ref, children });\n };\n CollectionProvider.displayName = PROVIDER_NAME;\n const COLLECTION_SLOT_NAME = name + \"CollectionSlot\";\n const CollectionSlotImpl = createSlot(COLLECTION_SLOT_NAME);\n const CollectionSlot = React.forwardRef(\n (props, forwardedRef) => {\n const { scope, children } = props;\n const context = useCollectionContext(COLLECTION_SLOT_NAME, scope);\n const composedRefs = useComposedRefs(forwardedRef, context.collectionRef);\n return /* @__PURE__ */ jsx(CollectionSlotImpl, { ref: composedRefs, children });\n }\n );\n CollectionSlot.displayName = COLLECTION_SLOT_NAME;\n const ITEM_SLOT_NAME = name + \"CollectionItemSlot\";\n const ITEM_DATA_ATTR = \"data-radix-collection-item\";\n const CollectionItemSlotImpl = createSlot(ITEM_SLOT_NAME);\n const CollectionItemSlot = React.forwardRef(\n (props, forwardedRef) => {\n const { scope, children, ...itemData } = props;\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const context = useCollectionContext(ITEM_SLOT_NAME, scope);\n React.useEffect(() => {\n context.itemMap.set(ref, { ref, ...itemData });\n return () => void context.itemMap.delete(ref);\n });\n return /* @__PURE__ */ jsx(CollectionItemSlotImpl, { ...{ [ITEM_DATA_ATTR]: \"\" }, ref: composedRefs, children });\n }\n );\n CollectionItemSlot.displayName = ITEM_SLOT_NAME;\n function useCollection(scope) {\n const context = useCollectionContext(name + \"CollectionConsumer\", scope);\n const getItems = React.useCallback(() => {\n const collectionNode = context.collectionRef.current;\n if (!collectionNode) return [];\n const orderedNodes = Array.from(collectionNode.querySelectorAll(`[${ITEM_DATA_ATTR}]`));\n const items = Array.from(context.itemMap.values());\n const orderedItems = items.sort(\n (a, b) => orderedNodes.indexOf(a.ref.current) - orderedNodes.indexOf(b.ref.current)\n );\n return orderedItems;\n }, [context.collectionRef, context.itemMap]);\n return getItems;\n }\n return [\n { Provider: CollectionProvider, Slot: CollectionSlot, ItemSlot: CollectionItemSlot },\n useCollection,\n createCollectionScope\n ];\n}\n\n// src/collection.tsx\nimport React2 from \"react\";\nimport { createContextScope as createContextScope2 } from \"@radix-ui/react-context\";\nimport { useComposedRefs as useComposedRefs2 } from \"@radix-ui/react-compose-refs\";\nimport { createSlot as createSlot2 } from \"@radix-ui/react-slot\";\n\n// src/ordered-dictionary.ts\nvar __instanciated = /* @__PURE__ */ new WeakMap();\nvar OrderedDict = class _OrderedDict extends Map {\n #keys;\n constructor(entries) {\n super(entries);\n this.#keys = [...super.keys()];\n __instanciated.set(this, true);\n }\n set(key, value) {\n if (__instanciated.get(this)) {\n if (this.has(key)) {\n this.#keys[this.#keys.indexOf(key)] = key;\n } else {\n this.#keys.push(key);\n }\n }\n super.set(key, value);\n return this;\n }\n insert(index, key, value) {\n const has = this.has(key);\n const length = this.#keys.length;\n const relativeIndex = toSafeInteger(index);\n let actualIndex = relativeIndex >= 0 ? relativeIndex : length + relativeIndex;\n const safeIndex = actualIndex < 0 || actualIndex >= length ? -1 : actualIndex;\n if (safeIndex === this.size || has && safeIndex === this.size - 1 || safeIndex === -1) {\n this.set(key, value);\n return this;\n }\n const size = this.size + (has ? 0 : 1);\n if (relativeIndex < 0) {\n actualIndex++;\n }\n const keys = [...this.#keys];\n let nextValue;\n let shouldSkip = false;\n for (let i = actualIndex; i < size; i++) {\n if (actualIndex === i) {\n let nextKey = keys[i];\n if (keys[i] === key) {\n nextKey = keys[i + 1];\n }\n if (has) {\n this.delete(key);\n }\n nextValue = this.get(nextKey);\n this.set(key, value);\n } else {\n if (!shouldSkip && keys[i - 1] === key) {\n shouldSkip = true;\n }\n const currentKey = keys[shouldSkip ? i : i - 1];\n const currentValue = nextValue;\n nextValue = this.get(currentKey);\n this.delete(currentKey);\n this.set(currentKey, currentValue);\n }\n }\n return this;\n }\n with(index, key, value) {\n const copy = new _OrderedDict(this);\n copy.insert(index, key, value);\n return copy;\n }\n before(key) {\n const index = this.#keys.indexOf(key) - 1;\n if (index < 0) {\n return void 0;\n }\n return this.entryAt(index);\n }\n /**\n * Sets a new key-value pair at the position before the given key.\n */\n setBefore(key, newKey, value) {\n const index = this.#keys.indexOf(key);\n if (index === -1) {\n return this;\n }\n return this.insert(index, newKey, value);\n }\n after(key) {\n let index = this.#keys.indexOf(key);\n index = index === -1 || index === this.size - 1 ? -1 : index + 1;\n if (index === -1) {\n return void 0;\n }\n return this.entryAt(index);\n }\n /**\n * Sets a new key-value pair at the position after the given key.\n */\n setAfter(key, newKey, value) {\n const index = this.#keys.indexOf(key);\n if (index === -1) {\n return this;\n }\n return this.insert(index + 1, newKey, value);\n }\n first() {\n return this.entryAt(0);\n }\n last() {\n return this.entryAt(-1);\n }\n clear() {\n this.#keys = [];\n return super.clear();\n }\n delete(key) {\n const deleted = super.delete(key);\n if (deleted) {\n this.#keys.splice(this.#keys.indexOf(key), 1);\n }\n return deleted;\n }\n deleteAt(index) {\n const key = this.keyAt(index);\n if (key !== void 0) {\n return this.delete(key);\n }\n return false;\n }\n at(index) {\n const key = at(this.#keys, index);\n if (key !== void 0) {\n return this.get(key);\n }\n }\n entryAt(index) {\n const key = at(this.#keys, index);\n if (key !== void 0) {\n return [key, this.get(key)];\n }\n }\n indexOf(key) {\n return this.#keys.indexOf(key);\n }\n keyAt(index) {\n return at(this.#keys, index);\n }\n from(key, offset) {\n const index = this.indexOf(key);\n if (index === -1) {\n return void 0;\n }\n let dest = index + offset;\n if (dest < 0) dest = 0;\n if (dest >= this.size) dest = this.size - 1;\n return this.at(dest);\n }\n keyFrom(key, offset) {\n const index = this.indexOf(key);\n if (index === -1) {\n return void 0;\n }\n let dest = index + offset;\n if (dest < 0) dest = 0;\n if (dest >= this.size) dest = this.size - 1;\n return this.keyAt(dest);\n }\n find(predicate, thisArg) {\n let index = 0;\n for (const entry of this) {\n if (Reflect.apply(predicate, thisArg, [entry, index, this])) {\n return entry;\n }\n index++;\n }\n return void 0;\n }\n findIndex(predicate, thisArg) {\n let index = 0;\n for (const entry of this) {\n if (Reflect.apply(predicate, thisArg, [entry, index, this])) {\n return index;\n }\n index++;\n }\n return -1;\n }\n filter(predicate, thisArg) {\n const entries = [];\n let index = 0;\n for (const entry of this) {\n if (Reflect.apply(predicate, thisArg, [entry, index, this])) {\n entries.push(entry);\n }\n index++;\n }\n return new _OrderedDict(entries);\n }\n map(callbackfn, thisArg) {\n const entries = [];\n let index = 0;\n for (const entry of this) {\n entries.push([entry[0], Reflect.apply(callbackfn, thisArg, [entry, index, this])]);\n index++;\n }\n return new _OrderedDict(entries);\n }\n reduce(...args) {\n const [callbackfn, initialValue] = args;\n let index = 0;\n let accumulator = initialValue ?? this.at(0);\n for (const entry of this) {\n if (index === 0 && args.length === 1) {\n accumulator = entry;\n } else {\n accumulator = Reflect.apply(callbackfn, this, [accumulator, entry, index, this]);\n }\n index++;\n }\n return accumulator;\n }\n reduceRight(...args) {\n const [callbackfn, initialValue] = args;\n let accumulator = initialValue ?? this.at(-1);\n for (let index = this.size - 1; index >= 0; index--) {\n const entry = this.at(index);\n if (index === this.size - 1 && args.length === 1) {\n accumulator = entry;\n } else {\n accumulator = Reflect.apply(callbackfn, this, [accumulator, entry, index, this]);\n }\n }\n return accumulator;\n }\n toSorted(compareFn) {\n const entries = [...this.entries()].sort(compareFn);\n return new _OrderedDict(entries);\n }\n toReversed() {\n const reversed = new _OrderedDict();\n for (let index = this.size - 1; index >= 0; index--) {\n const key = this.keyAt(index);\n const element = this.get(key);\n reversed.set(key, element);\n }\n return reversed;\n }\n toSpliced(...args) {\n const entries = [...this.entries()];\n entries.splice(...args);\n return new _OrderedDict(entries);\n }\n slice(start, end) {\n const result = new _OrderedDict();\n let stop = this.size - 1;\n if (start === void 0) {\n return result;\n }\n if (start < 0) {\n start = start + this.size;\n }\n if (end !== void 0 && end > 0) {\n stop = end - 1;\n }\n for (let index = start; index <= stop; index++) {\n const key = this.keyAt(index);\n const element = this.get(key);\n result.set(key, element);\n }\n return result;\n }\n every(predicate, thisArg) {\n let index = 0;\n for (const entry of this) {\n if (!Reflect.apply(predicate, thisArg, [entry, index, this])) {\n return false;\n }\n index++;\n }\n return true;\n }\n some(predicate, thisArg) {\n let index = 0;\n for (const entry of this) {\n if (Reflect.apply(predicate, thisArg, [entry, index, this])) {\n return true;\n }\n index++;\n }\n return false;\n }\n};\nfunction at(array, index) {\n if (\"at\" in Array.prototype) {\n return Array.prototype.at.call(array, index);\n }\n const actualIndex = toSafeIndex(array, index);\n return actualIndex === -1 ? void 0 : array[actualIndex];\n}\nfunction toSafeIndex(array, index) {\n const length = array.length;\n const relativeIndex = toSafeInteger(index);\n const actualIndex = relativeIndex >= 0 ? relativeIndex : length + relativeIndex;\n return actualIndex < 0 || actualIndex >= length ? -1 : actualIndex;\n}\nfunction toSafeInteger(number) {\n return number !== number || number === 0 ? 0 : Math.trunc(number);\n}\n\n// src/collection.tsx\nimport { jsx as jsx2 } from \"react/jsx-runtime\";\nfunction createCollection2(name) {\n const PROVIDER_NAME = name + \"CollectionProvider\";\n const [createCollectionContext, createCollectionScope] = createContextScope2(PROVIDER_NAME);\n const [CollectionContextProvider, useCollectionContext] = createCollectionContext(\n PROVIDER_NAME,\n {\n collectionElement: null,\n collectionRef: { current: null },\n collectionRefObject: { current: null },\n itemMap: new OrderedDict(),\n setItemMap: () => void 0\n }\n );\n const CollectionProvider = ({ state, ...props }) => {\n return state ? /* @__PURE__ */ jsx2(CollectionProviderImpl, { ...props, state }) : /* @__PURE__ */ jsx2(CollectionInit, { ...props });\n };\n CollectionProvider.displayName = PROVIDER_NAME;\n const CollectionInit = (props) => {\n const state = useInitCollection();\n return /* @__PURE__ */ jsx2(CollectionProviderImpl, { ...props, state });\n };\n CollectionInit.displayName = PROVIDER_NAME + \"Init\";\n const CollectionProviderImpl = (props) => {\n const { scope, children, state } = props;\n const ref = React2.useRef(null);\n const [collectionElement, setCollectionElement] = React2.useState(\n null\n );\n const composeRefs = useComposedRefs2(ref, setCollectionElement);\n const [itemMap, setItemMap] = state;\n React2.useEffect(() => {\n if (!collectionElement) return;\n const observer = getChildListObserver(() => {\n });\n observer.observe(collectionElement, {\n childList: true,\n subtree: true\n });\n return () => {\n observer.disconnect();\n };\n }, [collectionElement]);\n return /* @__PURE__ */ jsx2(\n CollectionContextProvider,\n {\n scope,\n itemMap,\n setItemMap,\n collectionRef: composeRefs,\n collectionRefObject: ref,\n collectionElement,\n children\n }\n );\n };\n CollectionProviderImpl.displayName = PROVIDER_NAME + \"Impl\";\n const COLLECTION_SLOT_NAME = name + \"CollectionSlot\";\n const CollectionSlotImpl = createSlot2(COLLECTION_SLOT_NAME);\n const CollectionSlot = React2.forwardRef(\n (props, forwardedRef) => {\n const { scope, children } = props;\n const context = useCollectionContext(COLLECTION_SLOT_NAME, scope);\n const composedRefs = useComposedRefs2(forwardedRef, context.collectionRef);\n return /* @__PURE__ */ jsx2(CollectionSlotImpl, { ref: composedRefs, children });\n }\n );\n CollectionSlot.displayName = COLLECTION_SLOT_NAME;\n const ITEM_SLOT_NAME = name + \"CollectionItemSlot\";\n const ITEM_DATA_ATTR = \"data-radix-collection-item\";\n const CollectionItemSlotImpl = createSlot2(ITEM_SLOT_NAME);\n const CollectionItemSlot = React2.forwardRef(\n (props, forwardedRef) => {\n const { scope, children, ...itemData } = props;\n const ref = React2.useRef(null);\n const [element, setElement] = React2.useState(null);\n const composedRefs = useComposedRefs2(forwardedRef, ref, setElement);\n const context = useCollectionContext(ITEM_SLOT_NAME, scope);\n const { setItemMap } = context;\n const itemDataRef = React2.useRef(itemData);\n if (!shallowEqual(itemDataRef.current, itemData)) {\n itemDataRef.current = itemData;\n }\n const memoizedItemData = itemDataRef.current;\n React2.useEffect(() => {\n const itemData2 = memoizedItemData;\n setItemMap((map) => {\n if (!element) {\n return map;\n }\n if (!map.has(element)) {\n map.set(element, { ...itemData2, element });\n return map.toSorted(sortByDocumentPosition);\n }\n return map.set(element, { ...itemData2, element }).toSorted(sortByDocumentPosition);\n });\n return () => {\n setItemMap((map) => {\n if (!element || !map.has(element)) {\n return map;\n }\n map.delete(element);\n return new OrderedDict(map);\n });\n };\n }, [element, memoizedItemData, setItemMap]);\n return /* @__PURE__ */ jsx2(CollectionItemSlotImpl, { ...{ [ITEM_DATA_ATTR]: \"\" }, ref: composedRefs, children });\n }\n );\n CollectionItemSlot.displayName = ITEM_SLOT_NAME;\n function useInitCollection() {\n return React2.useState(new OrderedDict());\n }\n function useCollection(scope) {\n const { itemMap } = useCollectionContext(name + \"CollectionConsumer\", scope);\n return itemMap;\n }\n const functions = {\n createCollectionScope,\n useCollection,\n useInitCollection\n };\n return [\n { Provider: CollectionProvider, Slot: CollectionSlot, ItemSlot: CollectionItemSlot },\n functions\n ];\n}\nfunction shallowEqual(a, b) {\n if (a === b) return true;\n if (typeof a !== \"object\" || typeof b !== \"object\") return false;\n if (a == null || b == null) return false;\n const keysA = Object.keys(a);\n const keysB = Object.keys(b);\n if (keysA.length !== keysB.length) return false;\n for (const key of keysA) {\n if (!Object.prototype.hasOwnProperty.call(b, key)) return false;\n if (a[key] !== b[key]) return false;\n }\n return true;\n}\nfunction isElementPreceding(a, b) {\n return !!(b.compareDocumentPosition(a) & Node.DOCUMENT_POSITION_PRECEDING);\n}\nfunction sortByDocumentPosition(a, b) {\n return !a[1].element || !b[1].element ? 0 : isElementPreceding(a[1].element, b[1].element) ? -1 : 1;\n}\nfunction getChildListObserver(callback) {\n const observer = new MutationObserver((mutationsList) => {\n for (const mutation of mutationsList) {\n if (mutation.type === \"childList\") {\n callback();\n return;\n }\n }\n });\n return observer;\n}\nexport {\n createCollection,\n createCollection2 as unstable_createCollection\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/direction/src/direction.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nvar DirectionContext = React.createContext(void 0);\nvar DirectionProvider = (props) => {\n const { dir, children } = props;\n return /* @__PURE__ */ jsx(DirectionContext.Provider, { value: dir, children });\n};\nfunction useDirection(localDir) {\n const globalDir = React.useContext(DirectionContext);\n return localDir || globalDir || \"ltr\";\n}\nvar Provider = DirectionProvider;\nexport {\n DirectionProvider,\n Provider,\n useDirection\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// src/roving-focus-group.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { jsx } from \"react/jsx-runtime\";\nvar ENTRY_FOCUS = \"rovingFocusGroup.onEntryFocus\";\nvar EVENT_OPTIONS = { bubbles: false, cancelable: true };\nvar GROUP_NAME = \"RovingFocusGroup\";\nvar [Collection, useCollection, createCollectionScope] = createCollection(GROUP_NAME);\nvar [createRovingFocusGroupContext, createRovingFocusGroupScope] = createContextScope(\n GROUP_NAME,\n [createCollectionScope]\n);\nvar [RovingFocusProvider, useRovingFocusContext] = createRovingFocusGroupContext(GROUP_NAME);\nvar RovingFocusGroup = React.forwardRef(\n (props, forwardedRef) => {\n return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx(RovingFocusGroupImpl, { ...props, ref: forwardedRef }) }) });\n }\n);\nRovingFocusGroup.displayName = GROUP_NAME;\nvar RovingFocusGroupImpl = React.forwardRef((props, forwardedRef) => {\n const {\n __scopeRovingFocusGroup,\n orientation,\n loop = false,\n dir,\n currentTabStopId: currentTabStopIdProp,\n defaultCurrentTabStopId,\n onCurrentTabStopIdChange,\n onEntryFocus,\n preventScrollOnEntryFocus = false,\n ...groupProps\n } = props;\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const direction = useDirection(dir);\n const [currentTabStopId, setCurrentTabStopId] = useControllableState({\n prop: currentTabStopIdProp,\n defaultProp: defaultCurrentTabStopId ?? null,\n onChange: onCurrentTabStopIdChange,\n caller: GROUP_NAME\n });\n const [isTabbingBackOut, setIsTabbingBackOut] = React.useState(false);\n const handleEntryFocus = useCallbackRef(onEntryFocus);\n const getItems = useCollection(__scopeRovingFocusGroup);\n const isClickFocusRef = React.useRef(false);\n const [focusableItemsCount, setFocusableItemsCount] = React.useState(0);\n React.useEffect(() => {\n const node = ref.current;\n if (node) {\n node.addEventListener(ENTRY_FOCUS, handleEntryFocus);\n return () => node.removeEventListener(ENTRY_FOCUS, handleEntryFocus);\n }\n }, [handleEntryFocus]);\n return /* @__PURE__ */ jsx(\n RovingFocusProvider,\n {\n scope: __scopeRovingFocusGroup,\n orientation,\n dir: direction,\n loop,\n currentTabStopId,\n onItemFocus: React.useCallback(\n (tabStopId) => setCurrentTabStopId(tabStopId),\n [setCurrentTabStopId]\n ),\n onItemShiftTab: React.useCallback(() => setIsTabbingBackOut(true), []),\n onFocusableItemAdd: React.useCallback(\n () => setFocusableItemsCount((prevCount) => prevCount + 1),\n []\n ),\n onFocusableItemRemove: React.useCallback(\n () => setFocusableItemsCount((prevCount) => prevCount - 1),\n []\n ),\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n tabIndex: isTabbingBackOut || focusableItemsCount === 0 ? -1 : 0,\n \"data-orientation\": orientation,\n ...groupProps,\n ref: composedRefs,\n style: { outline: \"none\", ...props.style },\n onMouseDown: composeEventHandlers(props.onMouseDown, () => {\n isClickFocusRef.current = true;\n }),\n onFocus: composeEventHandlers(props.onFocus, (event) => {\n const isKeyboardFocus = !isClickFocusRef.current;\n if (event.target === event.currentTarget && isKeyboardFocus && !isTabbingBackOut) {\n const entryFocusEvent = new CustomEvent(ENTRY_FOCUS, EVENT_OPTIONS);\n event.currentTarget.dispatchEvent(entryFocusEvent);\n if (!entryFocusEvent.defaultPrevented) {\n const items = getItems().filter((item) => item.focusable);\n const activeItem = items.find((item) => item.active);\n const currentItem = items.find((item) => item.id === currentTabStopId);\n const candidateItems = [activeItem, currentItem, ...items].filter(\n Boolean\n );\n const candidateNodes = candidateItems.map((item) => item.ref.current);\n focusFirst(candidateNodes, preventScrollOnEntryFocus);\n }\n }\n isClickFocusRef.current = false;\n }),\n onBlur: composeEventHandlers(props.onBlur, () => setIsTabbingBackOut(false))\n }\n )\n }\n );\n});\nvar ITEM_NAME = \"RovingFocusGroupItem\";\nvar RovingFocusGroupItem = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeRovingFocusGroup,\n focusable = true,\n active = false,\n tabStopId,\n children,\n ...itemProps\n } = props;\n const autoId = useId();\n const id = tabStopId || autoId;\n const context = useRovingFocusContext(ITEM_NAME, __scopeRovingFocusGroup);\n const isCurrentTabStop = context.currentTabStopId === id;\n const getItems = useCollection(__scopeRovingFocusGroup);\n const { onFocusableItemAdd, onFocusableItemRemove, currentTabStopId } = context;\n React.useEffect(() => {\n if (focusable) {\n onFocusableItemAdd();\n return () => onFocusableItemRemove();\n }\n }, [focusable, onFocusableItemAdd, onFocusableItemRemove]);\n return /* @__PURE__ */ jsx(\n Collection.ItemSlot,\n {\n scope: __scopeRovingFocusGroup,\n id,\n focusable,\n active,\n children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n tabIndex: isCurrentTabStop ? 0 : -1,\n \"data-orientation\": context.orientation,\n ...itemProps,\n ref: forwardedRef,\n onMouseDown: composeEventHandlers(props.onMouseDown, (event) => {\n if (!focusable) event.preventDefault();\n else context.onItemFocus(id);\n }),\n onFocus: composeEventHandlers(props.onFocus, () => context.onItemFocus(id)),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n if (event.key === \"Tab\" && event.shiftKey) {\n context.onItemShiftTab();\n return;\n }\n if (event.target !== event.currentTarget) return;\n const focusIntent = getFocusIntent(event, context.orientation, context.dir);\n if (focusIntent !== void 0) {\n if (event.metaKey || event.ctrlKey || event.altKey || event.shiftKey) return;\n event.preventDefault();\n const items = getItems().filter((item) => item.focusable);\n let candidateNodes = items.map((item) => item.ref.current);\n if (focusIntent === \"last\") candidateNodes.reverse();\n else if (focusIntent === \"prev\" || focusIntent === \"next\") {\n if (focusIntent === \"prev\") candidateNodes.reverse();\n const currentIndex = candidateNodes.indexOf(event.currentTarget);\n candidateNodes = context.loop ? wrapArray(candidateNodes, currentIndex + 1) : candidateNodes.slice(currentIndex + 1);\n }\n setTimeout(() => focusFirst(candidateNodes));\n }\n }),\n children: typeof children === \"function\" ? children({ isCurrentTabStop, hasTabStop: currentTabStopId != null }) : children\n }\n )\n }\n );\n }\n);\nRovingFocusGroupItem.displayName = ITEM_NAME;\nvar MAP_KEY_TO_FOCUS_INTENT = {\n ArrowLeft: \"prev\",\n ArrowUp: \"prev\",\n ArrowRight: \"next\",\n ArrowDown: \"next\",\n PageUp: \"first\",\n Home: \"first\",\n PageDown: \"last\",\n End: \"last\"\n};\nfunction getDirectionAwareKey(key, dir) {\n if (dir !== \"rtl\") return key;\n return key === \"ArrowLeft\" ? \"ArrowRight\" : key === \"ArrowRight\" ? \"ArrowLeft\" : key;\n}\nfunction getFocusIntent(event, orientation, dir) {\n const key = getDirectionAwareKey(event.key, dir);\n if (orientation === \"vertical\" && [\"ArrowLeft\", \"ArrowRight\"].includes(key)) return void 0;\n if (orientation === \"horizontal\" && [\"ArrowUp\", \"ArrowDown\"].includes(key)) return void 0;\n return MAP_KEY_TO_FOCUS_INTENT[key];\n}\nfunction focusFirst(candidates, preventScroll = false) {\n const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;\n for (const candidate of candidates) {\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n candidate.focus({ preventScroll });\n if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n }\n}\nfunction wrapArray(array, startIndex) {\n return array.map((_, index) => array[(startIndex + index) % array.length]);\n}\nvar Root = RovingFocusGroup;\nvar Item = RovingFocusGroupItem;\nexport {\n Item,\n Root,\n RovingFocusGroup,\n RovingFocusGroupItem,\n createRovingFocusGroupScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["createCollection","name","PROVIDER_NAME","createCollectionContext","createCollectionScope","createContextScope","CollectionProviderImpl","useCollectionContext","CollectionProvider","props","scope","children","ref","React","itemMap","jsx","COLLECTION_SLOT_NAME","CollectionSlotImpl","createSlot","CollectionSlot","forwardedRef","context","composedRefs","useComposedRefs","ITEM_SLOT_NAME","ITEM_DATA_ATTR","CollectionItemSlotImpl","CollectionItemSlot","itemData","useCollection","collectionNode","orderedNodes","a","b","DirectionContext","React.createContext","useDirection","localDir","globalDir","React.useContext","ENTRY_FOCUS","EVENT_OPTIONS","GROUP_NAME","Collection","createRovingFocusGroupContext","createRovingFocusGroupScope","RovingFocusProvider","useRovingFocusContext","RovingFocusGroup","React.forwardRef","RovingFocusGroupImpl","__scopeRovingFocusGroup","orientation","loop","dir","currentTabStopIdProp","defaultCurrentTabStopId","onCurrentTabStopIdChange","onEntryFocus","preventScrollOnEntryFocus","groupProps","React.useRef","direction","currentTabStopId","setCurrentTabStopId","useControllableState","isTabbingBackOut","setIsTabbingBackOut","React.useState","handleEntryFocus","useCallbackRef","getItems","isClickFocusRef","focusableItemsCount","setFocusableItemsCount","React.useEffect","node","React.useCallback","tabStopId","prevCount","Primitive","composeEventHandlers","event","isKeyboardFocus","entryFocusEvent","items","item","activeItem","currentItem","candidateNodes","focusFirst","ITEM_NAME","RovingFocusGroupItem","focusable","active","itemProps","autoId","useId","id","isCurrentTabStop","onFocusableItemAdd","onFocusableItemRemove","focusIntent","getFocusIntent","currentIndex","wrapArray","MAP_KEY_TO_FOCUS_INTENT","getDirectionAwareKey","key","candidates","preventScroll","PREVIOUSLY_FOCUSED_ELEMENT","candidate","array","startIndex","_","index","Root","Item"],"mappings":"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","x_google_ignoreList":[0,1,2]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { c as E, az as C, e as q, aA as T, ae as Q, aB as K, aj as tt, ak as et, aC as it, aD as st, aE as X } from "./index-
|
|
1
|
+
import { c as E, az as C, e as q, aA as T, ae as Q, aB as K, aj as tt, ak as et, aC as it, aD as st, aE as X } from "./index-BUxTXK58.mjs";
|
|
2
2
|
const nt = (n, t) => n == null ? t : t == null ? n : Math.max(n, t), x = /* @__PURE__ */ new WeakMap(), Ct = {
|
|
3
3
|
onUpdate(n, t, e) {
|
|
4
4
|
if (x.set(e, void 0), !e.computedTrend)
|
|
@@ -596,4 +596,4 @@ export {
|
|
|
596
596
|
bt as useIsSupported,
|
|
597
597
|
St as usePrefersReducedMotion
|
|
598
598
|
};
|
|
599
|
-
//# sourceMappingURL=index-
|
|
599
|
+
//# sourceMappingURL=index-Bdx2FYYX.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-BZpBLgwj.mjs","sources":["../../../node_modules/.pnpm/number-flow@0.5.8/node_modules/number-flow/dist/plugins.mjs","../../../node_modules/.pnpm/number-flow@0.5.8/node_modules/number-flow/dist/lite-BTIaQdTe.mjs","../../../node_modules/.pnpm/@number-flow+react@0.5.10_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@number-flow/react/dist/NumberFlow-client-48rw3j0J.mjs","../../../node_modules/.pnpm/@number-flow+react@0.5.10_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@number-flow/react/dist/index.mjs"],"sourcesContent":["const f = (e, n) => e == null ? n : n == null ? e : Math.max(e, n), i = /* @__PURE__ */ new WeakMap(), l = {\n onUpdate(e, n, o) {\n if (i.set(o, void 0), !o.computedTrend)\n return;\n const s = n.integer.concat(n.fraction).filter((t) => t.type === \"integer\" || t.type === \"fraction\"), r = e.integer.concat(e.fraction).filter((t) => t.type === \"integer\" || t.type === \"fraction\"), u = s.find((t) => !r.find((c) => c.pos === t.pos && c.value === t.value)), a = r.find((t) => !s.find((c) => t.pos === c.pos && t.value === c.value));\n i.set(o, f(u == null ? void 0 : u.pos, a == null ? void 0 : a.pos));\n },\n getDelta(e, n, o) {\n const s = e - n, r = i.get(o.flow);\n if (!s && r != null && r >= o.pos)\n return o.length * o.flow.computedTrend;\n }\n};\nexport {\n l as continuous\n};\n","import { BROWSER as _ } from \"esm-env\";\nimport \"./plugins.mjs\";\nconst u = (n, t, e) => {\n const i = document.createElement(n), [s, a] = Array.isArray(t) ? [void 0, t] : [t, e];\n return s && Object.assign(i, s), a == null || a.forEach((r) => i.appendChild(r)), i;\n}, F = (n, t) => {\n var e;\n return t === \"left\" ? n.offsetLeft : (((e = n.offsetParent instanceof HTMLElement ? n.offsetParent : null) == null ? void 0 : e.offsetWidth) ?? 0) - n.offsetWidth - n.offsetLeft;\n}, H = (n) => n.offsetWidth > 0 && n.offsetHeight > 0, st = (n, t) => {\n _ && !customElements.get(n) && customElements.define(n, t);\n};\nfunction X(n, t, { reverse: e = !1 } = {}) {\n const i = n.length;\n for (let s = e ? i - 1 : 0; e ? s >= 0 : s < i; e ? s-- : s++)\n t(n[s], s);\n}\nfunction nt(n, t, e, i) {\n const s = t.formatToParts(n);\n e && s.unshift({ type: \"prefix\", value: e }), i && s.push({ type: \"suffix\", value: i });\n const a = [], r = [], o = [], c = [], d = {}, p = (h) => `${h}:${d[h] = (d[h] ?? -1) + 1}`;\n let x = \"\", g = !1, y = !1;\n for (const h of s) {\n x += h.value;\n const l = h.type === \"minusSign\" || h.type === \"plusSign\" ? \"sign\" : h.type;\n l === \"integer\" ? (g = !0, r.push(...h.value.split(\"\").map((C) => ({ type: l, value: parseInt(C) })))) : l === \"group\" ? r.push({ type: l, value: h.value }) : l === \"decimal\" ? (y = !0, o.push({ type: l, value: h.value, key: p(l) })) : l === \"fraction\" ? o.push(...h.value.split(\"\").map((C) => ({\n type: l,\n value: parseInt(C),\n key: p(l),\n pos: -1 - d[l]\n }))) : (g || y ? c : a).push({\n type: l,\n value: h.value,\n key: p(l)\n });\n }\n const T = [];\n for (let h = r.length - 1; h >= 0; h--) {\n const l = r[h];\n T.unshift(l.type === \"integer\" ? {\n ...l,\n key: p(l.type),\n pos: d[l.type]\n } : {\n ...l,\n key: p(l.type)\n });\n }\n return {\n pre: a,\n integer: T,\n fraction: o,\n post: c,\n valueAsString: x,\n value: typeof n == \"string\" ? parseFloat(n) : n\n };\n}\nconst I = String.raw, V = String.raw, O = _ && (() => {\n try {\n document.createElement(\"div\").animate({ opacity: 0 }, { easing: \"linear(0, 1)\" });\n } catch {\n return !1;\n }\n return !0;\n})(), z = _ && typeof CSS < \"u\" && CSS.supports && CSS.supports(\"line-height\", \"mod(1,1)\"), A = _ && typeof matchMedia < \"u\" ? matchMedia(\"(prefers-reduced-motion: reduce)\") : null, $ = \"--_number-flow-d-opacity\", U = \"--_number-flow-d-width\", S = \"--_number-flow-dx\", j = \"--_number-flow-d\", Y = (() => {\n try {\n return CSS.registerProperty({\n name: $,\n syntax: \"<number>\",\n inherits: !1,\n initialValue: \"0\"\n }), CSS.registerProperty({\n name: S,\n syntax: \"<length>\",\n inherits: !0,\n initialValue: \"0px\"\n }), CSS.registerProperty({\n name: U,\n syntax: \"<number>\",\n inherits: !1,\n initialValue: \"0\"\n }), CSS.registerProperty({\n name: j,\n syntax: \"<number>\",\n inherits: !0,\n initialValue: \"0\"\n }), !0;\n } catch {\n return !1;\n }\n})(), P = \"var(--number-flow-char-height, 1em)\", f = \"var(--number-flow-mask-height, 0.25em)\", k = `calc(${f} / 2)`, E = \"var(--number-flow-mask-width, 0.5em)\", m = `calc(${E} / var(--scale-x))`, w = \"#000 0, transparent 71%\", M = V`:host{display:inline-block;direction:ltr;white-space:nowrap;isolation:isolate;line-height:${P} !important}.number,.number__inner{display:inline-block;transform-origin:left top}:host([data-will-change]) :is(.number,.number__inner,.section,.digit,.digit__num,.symbol){will-change:transform}.number{--scale-x:calc(1 + var(${U}) / var(--width));transform:translateX(var(${S})) scaleX(var(--scale-x));margin:0 calc(-1 * ${E});position:relative;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 ${m},#000 calc(100% - ${m}),transparent ),linear-gradient(to bottom,transparent 0,#000 ${f},#000 calc(100% - ${f}),transparent 100% ),radial-gradient(at bottom right,${w}),radial-gradient(at bottom left,${w}),radial-gradient(at top left,${w}),radial-gradient(at top right,${w});-webkit-mask-size:100% calc(100% - ${f} * 2),calc(100% - ${m} * 2) 100%,${m} ${f},${m} ${f},${m} ${f},${m} ${f};-webkit-mask-position:center,center,top left,top right,bottom right,bottom left;-webkit-mask-repeat:no-repeat}.number__inner{padding:${k} ${E};transform:scaleX(calc(1 / var(--scale-x))) translateX(calc(-1 * var(${S})))}:host > :not(.number){z-index:5}.section,.symbol{display:inline-block;position:relative;isolation:isolate}.section::after{content:'\\200b';display:inline-block}.section--justify-left{transform-origin:center left}.section--justify-right{transform-origin:center right}.section > [inert],.symbol > [inert]{margin:0 !important;position:absolute !important;z-index:-1}.digit{display:inline-block;position:relative;--c:var(--current) + var(${j})}.digit__num,.number .section::after{padding:${k} 0}.digit__num{display:inline-block;--offset-raw:mod(var(--length) + var(--n) - mod(var(--c),var(--length)),var(--length));--offset:calc( var(--offset-raw) - var(--length) * round(down,var(--offset-raw) / (var(--length) / 2),1) );--y:clamp(-100%,var(--offset) * 100%,100%);transform:translateY(var(--y))}.digit__num[inert]{position:absolute;top:0;left:50%;transform:translateX(-50%) translateY(var(--y))}.digit:not(.is-spinning) .digit__num[inert]{display:none}.symbol__value{display:inline-block;mix-blend-mode:plus-lighter;white-space:pre}.section--justify-left .symbol > [inert]{left:0}.section--justify-right .symbol > [inert]{right:0}.animate-presence{opacity:calc(1 + var(${$}))}`, G = _ ? HTMLElement : class {\n}, K = V`:host{display:inline-block;direction:ltr;white-space:nowrap;line-height:${P} !important}span{display:inline-block}:host([data-will-change]) span{will-change:transform}.number,.digit{padding:${k} 0}.symbol{white-space:pre}`, Z = (n) => `<span class=\"${n.type === \"integer\" || n.type === \"fraction\" ? \"digit\" : \"symbol\"}\" part=\"${n.type === \"integer\" || n.type === \"fraction\" ? `digit ${n.type}-digit` : `symbol ${n.type}`}\">${n.value}</span>`, v = (n, t) => `<span part=\"${t}\">${n.reduce((e, i) => e + Z(i), \"\")}</span>`, at = (n) => (\n // shadowroot=\"open\" non-standard attribute for old Chrome:\n I`<template shadowroot=\"open\" shadowrootmode=\"open\"\n\t\t\t><style>\n\t\t\t\t${K}</style\n\t\t\t><span role=\"img\" aria-label=\"${n.valueAsString}\"\n\t\t\t\t>${v(n.pre, \"left\")}<span part=\"number\" class=\"number\"\n\t\t\t\t\t>${v(n.integer, \"integer\")}${v(n.fraction, \"fraction\")}</span\n\t\t\t\t>${v(n.post, \"right\")}</span\n\t\t\t></template\n\t\t><span\n\t\t\tstyle=\"font-kerning: none; display: inline-block; line-height: ${P} !important; padding: ${f} 0;\"\n\t\t\t>${n.valueAsString}</span\n\t\t>`\n), q = z && O && Y;\nlet b;\nclass J extends G {\n constructor() {\n super(), this.created = !1, this.batched = !1;\n const { animated: t, ...e } = this.constructor.defaultProps;\n this._animated = this.computedAnimated = t, Object.assign(this, e);\n }\n get animated() {\n return this._animated;\n }\n set animated(t) {\n var e;\n this.animated !== t && (this._animated = t, (e = this.shadowRoot) == null || e.getAnimations().forEach((i) => i.finish()));\n }\n /**\n * @internal\n */\n set data(t) {\n var o;\n if (t == null)\n return;\n const { pre: e, integer: i, fraction: s, post: a, value: r } = t;\n if (this.created) {\n const c = this._data;\n this._data = t, this.computedTrend = typeof this.trend == \"function\" ? this.trend(c.value, r) : this.trend, this.computedAnimated = q && this._animated && (!this.respectMotionPreference || !(A != null && A.matches)) && // https://github.com/barvian/number-flow/issues/9\n H(this), (o = this.plugins) == null || o.forEach((d) => {\n var p;\n return (p = d.onUpdate) == null ? void 0 : p.call(d, t, c, this);\n }), this.batched || this.willUpdate(), this._pre.update(e), this._num.update({ integer: i, fraction: s }), this._post.update(a), this.batched || this.didUpdate();\n } else {\n this._data = t, this.attachShadow({ mode: \"open\" });\n try {\n this._internals ?? (this._internals = this.attachInternals()), this._internals.role = \"img\";\n } catch {\n }\n if (typeof CSSStyleSheet < \"u\" && this.shadowRoot.adoptedStyleSheets)\n b || (b = new CSSStyleSheet(), b.replaceSync(M)), this.shadowRoot.adoptedStyleSheets = [b];\n else {\n const c = document.createElement(\"style\");\n c.textContent = M, this.shadowRoot.appendChild(c);\n }\n this._pre = new N(this, e, {\n justify: \"right\",\n part: \"left\"\n }), this.shadowRoot.appendChild(this._pre.el), this._num = new Q(this, i, s), this.shadowRoot.appendChild(this._num.el), this._post = new N(this, a, {\n justify: \"left\",\n part: \"right\"\n }), this.shadowRoot.appendChild(this._post.el), this.created = !0;\n }\n try {\n this._internals.ariaLabel = t.valueAsString;\n } catch {\n }\n }\n /**\n * @internal\n */\n willUpdate() {\n this._pre.willUpdate(), this._num.willUpdate(), this._post.willUpdate();\n }\n /**\n * @internal\n */\n didUpdate() {\n if (!this.computedAnimated)\n return;\n this._abortAnimationsFinish ? this._abortAnimationsFinish.abort() : this.dispatchEvent(new Event(\"animationsstart\")), this._pre.didUpdate(), this._num.didUpdate(), this._post.didUpdate();\n const t = new AbortController();\n Promise.all(this.shadowRoot.getAnimations().map((e) => e.finished)).then(() => {\n t.signal.aborted || (this.dispatchEvent(new Event(\"animationsfinish\")), this._abortAnimationsFinish = void 0);\n }), this._abortAnimationsFinish = t;\n }\n}\nJ.defaultProps = {\n transformTiming: {\n duration: 900,\n // Make sure to keep this minified:\n easing: \"linear(0,.005,.019,.039,.066,.096,.129,.165,.202,.24,.278,.316,.354,.39,.426,.461,.494,.526,.557,.586,.614,.64,.665,.689,.711,.731,.751,.769,.786,.802,.817,.831,.844,.856,.867,.877,.887,.896,.904,.912,.919,.925,.931,.937,.942,.947,.951,.955,.959,.962,.965,.968,.971,.973,.976,.978,.98,.981,.983,.984,.986,.987,.988,.989,.99,.991,.992,.992,.993,.994,.994,.995,.995,.996,.996,.9963,.9967,.9969,.9972,.9975,.9977,.9979,.9981,.9982,.9984,.9985,.9987,.9988,.9989,1)\"\n },\n spinTiming: void 0,\n opacityTiming: { duration: 450, easing: \"ease-out\" },\n animated: !0,\n trend: (n, t) => Math.sign(t - n),\n respectMotionPreference: !0,\n plugins: void 0,\n digits: void 0\n};\nclass Q {\n constructor(t, e, i, { className: s, ...a } = {}) {\n this.flow = t, this._integer = new L(t, e, {\n justify: \"right\",\n part: \"integer\"\n }), this._fraction = new L(t, i, {\n justify: \"left\",\n part: \"fraction\"\n }), this._inner = u(\"span\", {\n className: \"number__inner\"\n }, [this._integer.el, this._fraction.el]), this.el = u(\"span\", {\n ...a,\n part: \"number\",\n className: `number ${s ?? \"\"}`\n }, [this._inner]);\n }\n willUpdate() {\n this._prevWidth = this.el.offsetWidth, this._prevLeft = this.el.getBoundingClientRect().left, this._integer.willUpdate(), this._fraction.willUpdate();\n }\n update({ integer: t, fraction: e }) {\n this._integer.update(t), this._fraction.update(e);\n }\n didUpdate() {\n const t = this.el.getBoundingClientRect();\n this._integer.didUpdate(), this._fraction.didUpdate();\n const e = this._prevLeft - t.left, i = this.el.offsetWidth, s = this._prevWidth - i;\n this.el.style.setProperty(\"--width\", String(i)), this.el.animate({\n [S]: [`${e}px`, \"0px\"],\n [U]: [s, 0]\n }, {\n ...this.flow.transformTiming,\n composite: \"accumulate\"\n });\n }\n}\nclass W {\n constructor(t, e, { justify: i, className: s, ...a }, r) {\n this.flow = t, this.children = /* @__PURE__ */ new Map(), this.onCharRemove = (c) => () => {\n this.children.delete(c);\n }, this.justify = i;\n const o = e.map((c) => this.addChar(c).el);\n this.el = u(\"span\", {\n ...a,\n className: `section section--justify-${i} ${s ?? \"\"}`\n }, r ? r(o) : o);\n }\n addChar(t, { startDigitsAtZero: e = !1, ...i } = {}) {\n const s = t.type === \"integer\" || t.type === \"fraction\" ? new D(this, t.type, e ? 0 : t.value, t.pos, {\n ...i,\n onRemove: this.onCharRemove(t.key)\n }) : new tt(this, t.type, t.value, {\n ...i,\n onRemove: this.onCharRemove(t.key)\n });\n return this.children.set(t.key, s), s;\n }\n unpop(t) {\n t.el.removeAttribute(\"inert\"), t.el.style.top = \"\", t.el.style[this.justify] = \"\";\n }\n pop(t) {\n t.forEach((e) => {\n e.el.style.top = `${e.el.offsetTop}px`, e.el.style[this.justify] = `${F(e.el, this.justify)}px`;\n }), t.forEach((e) => {\n e.el.setAttribute(\"inert\", \"\"), e.present = !1;\n });\n }\n addNewAndUpdateExisting(t) {\n const e = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(), s = this.justify === \"left\", a = s ? \"prepend\" : \"append\";\n if (X(t, (r) => {\n let o;\n this.children.has(r.key) ? (o = this.children.get(r.key), i.set(r, o), this.unpop(o), o.present = !0) : (o = this.addChar(r, { startDigitsAtZero: !0, animateIn: !0 }), e.set(r, o)), this.el[a](o.el);\n }, { reverse: s }), this.flow.computedAnimated) {\n const r = this.el.getBoundingClientRect();\n e.forEach((o) => {\n o.willUpdate(r);\n });\n }\n e.forEach((r, o) => {\n r.update(o.value);\n }), i.forEach((r, o) => {\n r.update(o.value);\n });\n }\n willUpdate() {\n const t = this.el.getBoundingClientRect();\n this._prevOffset = t[this.justify], this.children.forEach((e) => e.willUpdate(t));\n }\n didUpdate() {\n const t = this.el.getBoundingClientRect();\n this.children.forEach((s) => s.didUpdate(t));\n const e = t[this.justify], i = this._prevOffset - e;\n i && this.children.size && this.el.animate({\n transform: [`translateX(${i}px)`, \"none\"]\n }, {\n ...this.flow.transformTiming,\n composite: \"accumulate\"\n });\n }\n}\nclass L extends W {\n update(t) {\n const e = /* @__PURE__ */ new Map();\n this.children.forEach((i, s) => {\n t.find((a) => a.key === s) || e.set(s, i), this.unpop(i);\n }), this.addNewAndUpdateExisting(t), e.forEach((i) => {\n i instanceof D && i.update(0);\n }), this.pop(e);\n }\n}\nclass N extends W {\n update(t) {\n const e = /* @__PURE__ */ new Map();\n this.children.forEach((i, s) => {\n t.find((a) => a.key === s) || e.set(s, i);\n }), this.pop(e), this.addNewAndUpdateExisting(t);\n }\n}\nclass R {\n constructor(t, e, { onRemove: i, animateIn: s = !1 } = {}) {\n this.flow = t, this.el = e, this._present = !0, this._remove = () => {\n var a;\n this.el.remove(), (a = this._onRemove) == null || a.call(this);\n }, this.el.classList.add(\"animate-presence\"), this.flow.computedAnimated && s && this.el.animate({\n [$]: [-0.9999, 0]\n }, {\n ...this.flow.opacityTiming,\n composite: \"accumulate\"\n }), this._onRemove = i;\n }\n get present() {\n return this._present;\n }\n set present(t) {\n if (this._present !== t) {\n if (this._present = t, t ? this.el.removeAttribute(\"inert\") : this.el.setAttribute(\"inert\", \"\"), !this.flow.computedAnimated) {\n t || this._remove();\n return;\n }\n this.el.style.setProperty(\"--_number-flow-d-opacity\", t ? \"0\" : \"-.999\"), this.el.animate({\n [$]: t ? [-0.9999, 0] : [0.999, 0]\n }, {\n ...this.flow.opacityTiming,\n composite: \"accumulate\"\n }), t ? this.flow.removeEventListener(\"animationsfinish\", this._remove) : this.flow.addEventListener(\"animationsfinish\", this._remove, {\n once: !0\n });\n }\n }\n}\nclass B extends R {\n constructor(t, e, i, s) {\n super(t.flow, i, s), this.section = t, this.value = e, this.el = i;\n }\n}\nclass D extends B {\n constructor(t, e, i, s, a) {\n var d, p;\n const r = (((p = (d = t.flow.digits) == null ? void 0 : d[s]) == null ? void 0 : p.max) ?? 9) + 1, o = Array.from({ length: r }).map((x, g) => {\n const y = u(\"span\", { className: \"digit__num\" }, [\n document.createTextNode(String(g))\n ]);\n return g !== i && y.setAttribute(\"inert\", \"\"), y.style.setProperty(\"--n\", String(g)), y;\n }), c = u(\"span\", {\n part: `digit ${e}-digit`,\n className: \"digit\"\n }, o);\n c.style.setProperty(\"--current\", String(i)), c.style.setProperty(\"--length\", String(r)), super(t, i, c, a), this.pos = s, this._onAnimationsFinish = () => {\n this.el.classList.remove(\"is-spinning\");\n }, this._numbers = o, this.length = r;\n }\n willUpdate(t) {\n const e = this.el.getBoundingClientRect();\n this._prevValue = this.value;\n const i = e[this.section.justify] - t[this.section.justify], s = e.width / 2;\n this._prevCenter = this.section.justify === \"left\" ? i + s : i - s;\n }\n update(t) {\n this.el.style.setProperty(\"--current\", String(t)), this._numbers.forEach((e, i) => i === t ? e.removeAttribute(\"inert\") : e.setAttribute(\"inert\", \"\")), this.value = t;\n }\n didUpdate(t) {\n const e = this.el.getBoundingClientRect(), i = e[this.section.justify] - t[this.section.justify], s = e.width / 2, a = this.section.justify === \"left\" ? i + s : i - s, r = this._prevCenter - a;\n r && this.el.animate({\n transform: [`translateX(${r}px)`, \"none\"]\n }, {\n ...this.flow.transformTiming,\n composite: \"accumulate\"\n });\n const o = this.getDelta();\n o && (this.el.classList.add(\"is-spinning\"), this.el.animate({\n [j]: [-o, 0]\n }, {\n ...this.flow.spinTiming ?? this.flow.transformTiming,\n composite: \"accumulate\"\n }), this.flow.addEventListener(\"animationsfinish\", this._onAnimationsFinish, { once: !0 }));\n }\n getDelta() {\n var i;\n if (this.flow.plugins)\n for (const s of this.flow.plugins) {\n const a = (i = s.getDelta) == null ? void 0 : i.call(s, this.value, this._prevValue, this);\n if (a != null)\n return a;\n }\n const t = this.value - this._prevValue, e = this.flow.computedTrend || Math.sign(t);\n return e < 0 && this.value > this._prevValue ? this.value - this.length - this._prevValue : e > 0 && this.value < this._prevValue ? this.length - this._prevValue + this.value : t;\n }\n}\nclass tt extends B {\n constructor(t, e, i, s) {\n const a = u(\"span\", {\n className: \"symbol__value\",\n textContent: i\n });\n super(t, i, u(\"span\", {\n part: `symbol ${e}`,\n className: \"symbol\"\n }, [a]), s), this.type = e, this._children = /* @__PURE__ */ new Map(), this._onChildRemove = (r) => () => {\n this._children.delete(r);\n }, this._children.set(i, new R(this.flow, a, {\n onRemove: this._onChildRemove(i)\n }));\n }\n willUpdate(t) {\n if (this.type === \"decimal\")\n return;\n const e = this.el.getBoundingClientRect();\n this._prevOffset = e[this.section.justify] - t[this.section.justify];\n }\n update(t) {\n if (this.value !== t) {\n const e = this._children.get(this.value);\n e && (e.present = !1);\n const i = this._children.get(t);\n if (i)\n i.present = !0;\n else {\n const s = u(\"span\", {\n className: \"symbol__value\",\n textContent: t\n });\n this.el.appendChild(s), this._children.set(t, new R(this.flow, s, {\n animateIn: !0,\n onRemove: this._onChildRemove(t)\n }));\n }\n }\n this.value = t;\n }\n didUpdate(t) {\n if (this.type === \"decimal\")\n return;\n const i = this.el.getBoundingClientRect()[this.section.justify] - t[this.section.justify], s = this._prevOffset - i;\n s && this.el.animate({\n transform: [`translateX(${s}px)`, \"none\"]\n }, { ...this.flow.transformTiming, composite: \"accumulate\" });\n }\n}\nexport {\n D,\n J as N,\n G as S,\n q as c,\n st as d,\n nt as f,\n A as p,\n at as r\n};\n","'use client';\nimport * as React from 'react';\nimport NumberFlowLite, { define, formatToData, renderInnerHTML } from 'number-flow/lite';\nimport { BROWSER } from 'esm-env';\n\nconst REACT_MAJOR = parseInt(React.version.match(/^(\\d+)\\./)?.[1]);\nconst isReact19 = REACT_MAJOR >= 19;\n// Can't wait to not have to do this in React 19:\nconst OBSERVED_ATTRIBUTES = [\n 'data',\n 'digits'\n];\nclass NumberFlowElement extends NumberFlowLite {\n attributeChangedCallback(attr, _oldValue, newValue) {\n this[attr] = JSON.parse(newValue);\n }\n}\nNumberFlowElement.observedAttributes = isReact19 ? [] : OBSERVED_ATTRIBUTES;\ndefine('number-flow-react', NumberFlowElement);\n// You're supposed to cache these between uses:\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString\n// Serialize to strings b/c React:\nconst formatters = {};\n// Tiny workaround to support React 19 until it's released:\nconst serialize = isReact19 ? (p)=>p : JSON.stringify;\nfunction splitProps(props) {\n const { transformTiming, spinTiming, opacityTiming, animated, respectMotionPreference, trend, plugins, ...rest } = props;\n return [\n {\n transformTiming,\n spinTiming,\n opacityTiming,\n animated,\n respectMotionPreference,\n trend,\n plugins\n },\n rest\n ];\n}\n// We need a class component to use getSnapshotBeforeUpdate:\nclass NumberFlowImpl extends React.Component {\n // Update the non-`data` props to avoid JSON serialization\n // Data needs to be set in render still:\n updateProperties(prevProps) {\n if (!this.el) return;\n this.el.batched = !this.props.isolate;\n const [nonData] = splitProps(this.props);\n Object.entries(nonData).forEach(([k, v])=>{\n // @ts-ignore\n this.el[k] = v ?? NumberFlowElement.defaultProps[k];\n });\n if (prevProps?.onAnimationsStart) this.el.removeEventListener('animationsstart', prevProps.onAnimationsStart);\n if (this.props.onAnimationsStart) this.el.addEventListener('animationsstart', this.props.onAnimationsStart);\n if (prevProps?.onAnimationsFinish) this.el.removeEventListener('animationsfinish', prevProps.onAnimationsFinish);\n if (this.props.onAnimationsFinish) this.el.addEventListener('animationsfinish', this.props.onAnimationsFinish);\n }\n componentDidMount() {\n this.updateProperties();\n if (isReact19 && this.el) {\n // React 19 needs this because the attributeChangedCallback isn't called:\n this.el.digits = this.props.digits;\n this.el.data = this.props.data;\n }\n }\n getSnapshotBeforeUpdate(prevProps) {\n this.updateProperties(prevProps);\n if (prevProps.data !== this.props.data) {\n if (this.props.group) {\n this.props.group.willUpdate();\n return ()=>this.props.group?.didUpdate();\n }\n if (!this.props.isolate) {\n this.el?.willUpdate();\n return ()=>this.el?.didUpdate();\n }\n }\n return null;\n }\n componentDidUpdate(_, __, didUpdate) {\n didUpdate?.();\n }\n handleRef(el) {\n if (this.props.innerRef) this.props.innerRef.current = el;\n this.el = el;\n }\n render() {\n const [_, { innerRef, className, data, willChange, isolate, group, digits, onAnimationsStart, onAnimationsFinish, ...rest }] = splitProps(this.props);\n return(// @ts-expect-error missing types\n /*#__PURE__*/ React.createElement(\"number-flow-react\", {\n ref: this.handleRef,\n \"data-will-change\": willChange ? '' : undefined,\n // Have to rename this:\n class: className,\n ...rest,\n dangerouslySetInnerHTML: {\n __html: BROWSER ? '' : renderInnerHTML(data)\n },\n suppressHydrationWarning: true,\n digits: serialize(digits),\n // Make sure data is set last, everything else is updated:\n data: serialize(data)\n }));\n }\n constructor(props){\n super(props);\n this.handleRef = this.handleRef.bind(this);\n }\n}\nconst NumberFlow = /*#__PURE__*/ React.forwardRef(function NumberFlow({ value, locales, format, prefix, suffix, ...props }, _ref) {\n React.useImperativeHandle(_ref, ()=>ref.current, []);\n const ref = React.useRef();\n const group = React.useContext(NumberFlowGroupContext);\n group?.useRegister(ref);\n const localesString = React.useMemo(()=>locales ? JSON.stringify(locales) : '', [\n locales\n ]);\n const formatString = React.useMemo(()=>format ? JSON.stringify(format) : '', [\n format\n ]);\n const data = React.useMemo(()=>{\n const formatter = formatters[`${localesString}:${formatString}`] ??= new Intl.NumberFormat(locales, format);\n return formatToData(value, formatter, prefix, suffix);\n }, [\n value,\n localesString,\n formatString,\n prefix,\n suffix\n ]);\n return /*#__PURE__*/ React.createElement(NumberFlowImpl, {\n ...props,\n group: group,\n data: data,\n innerRef: ref\n });\n});\nconst NumberFlowGroupContext = /*#__PURE__*/ React.createContext(undefined);\nfunction NumberFlowGroup({ children }) {\n const flows = React.useRef(new Set());\n const updating = React.useRef(false);\n const pending = React.useRef(new WeakMap());\n const value = React.useMemo(()=>({\n useRegister (ref) {\n React.useEffect(()=>{\n flows.current.add(ref);\n return ()=>{\n flows.current.delete(ref);\n };\n }, []);\n },\n willUpdate () {\n if (updating.current) return;\n updating.current = true;\n flows.current.forEach((ref)=>{\n const f = ref.current;\n if (!f || !f.created) return;\n f.willUpdate();\n pending.current.set(f, true);\n });\n },\n didUpdate () {\n flows.current.forEach((ref)=>{\n const f = ref.current;\n if (!f || !pending.current.get(f)) return;\n f.didUpdate();\n pending.current.delete(f);\n });\n updating.current = false;\n }\n }), []);\n return /*#__PURE__*/ React.createElement(NumberFlowGroupContext.Provider, {\n value: value\n }, children);\n}\n\nexport { NumberFlow as N, NumberFlowElement as a, NumberFlowGroup as b };\n","import * as React from 'react';\nimport { canAnimate, prefersReducedMotion } from 'number-flow/lite';\nexport * from 'number-flow/plugins';\nexport { a as NumberFlowElement, b as NumberFlowGroup, N as default } from './NumberFlow-client-48rw3j0J.mjs';\n\nconst useIsSupported = ()=>React.useSyncExternalStore(()=>()=>{}, ()=>canAnimate, ()=>false);\nconst usePrefersReducedMotion = ()=>React.useSyncExternalStore((cb)=>{\n prefersReducedMotion?.addEventListener('change', cb);\n return ()=>prefersReducedMotion?.removeEventListener('change', cb);\n }, ()=>prefersReducedMotion.matches, ()=>false);\nfunction useCanAnimate({ respectMotionPreference = true } = {}) {\n const isSupported = useIsSupported();\n const reducedMotion = usePrefersReducedMotion();\n return isSupported && (!respectMotionPreference || !reducedMotion);\n}\n\nexport { useCanAnimate, useIsSupported, usePrefersReducedMotion };\n"],"names":["f","e","n","i","l","o","s","t","r","u","c","a","F","H","st","X","nt","p","h","x","g","y","C","T","V","O","z","A","$","U","S","j","Y","P","k","E","m","w","M","G","q","b","J","N","Q","L","W","D","tt","R","B","d","REACT_MAJOR","React.version","isReact19","OBSERVED_ATTRIBUTES","NumberFlowElement","NumberFlowLite","attr","_oldValue","newValue","define","formatters","serialize","splitProps","props","transformTiming","spinTiming","opacityTiming","animated","respectMotionPreference","trend","plugins","rest","NumberFlowImpl","React.Component","prevProps","nonData","v","_a","_","__","didUpdate","el","innerRef","className","data","willChange","isolate","group","digits","onAnimationsStart","onAnimationsFinish","React.createElement","NumberFlow","React.forwardRef","value","locales","format","prefix","suffix","_ref","React.useImperativeHandle","ref","React.useRef","React.useContext","NumberFlowGroupContext","localesString","React.useMemo","formatString","formatter","formatToData","React.createContext","NumberFlowGroup","children","flows","updating","pending","React.useEffect","useIsSupported","React.useSyncExternalStore","canAnimate","usePrefersReducedMotion","cb","prefersReducedMotion","useCanAnimate","isSupported","reducedMotion"],"mappings":";AAAK,MAACA,KAAI,CAACC,GAAGC,MAAMD,KAAK,OAAOC,IAAIA,KAAK,OAAOD,IAAI,KAAK,IAAIA,GAAGC,CAAC,GAAGC,IAAoB,oBAAI,WAAWC,KAAI;AAAA,EACzG,SAASH,GAAGC,GAAGG,GAAG;AAChB,QAAIF,EAAE,IAAIE,GAAG,MAAM,GAAG,CAACA,EAAE;AACvB;AACF,UAAMC,IAAIJ,EAAE,QAAQ,OAAOA,EAAE,QAAQ,EAAE,OAAO,CAACK,MAAMA,EAAE,SAAS,aAAaA,EAAE,SAAS,UAAU,GAAGC,IAAIP,EAAE,QAAQ,OAAOA,EAAE,QAAQ,EAAE,OAAO,CAACM,MAAMA,EAAE,SAAS,aAAaA,EAAE,SAAS,UAAU,GAAGE,IAAIH,EAAE,KAAK,CAACC,MAAM,CAACC,EAAE,KAAK,CAACE,MAAMA,EAAE,QAAQH,EAAE,OAAOG,EAAE,UAAUH,EAAE,KAAK,CAAC,GAAG,IAAIC,EAAE,KAAK,CAACD,MAAM,CAACD,EAAE,KAAK,CAACI,MAAMH,EAAE,QAAQG,EAAE,OAAOH,EAAE,UAAUG,EAAE,KAAK,CAAC;AACvV,IAAAP,EAAE,IAAIE,GAAGL,GAAES,KAAK,OAAO,SAASA,EAAE,KAAK,KAAK,OAAO,SAAS,EAAE,GAAG,CAAC;AAAA,EACpE;AAAA,EACA,SAASR,GAAGC,GAAGG,GAAG;AAChB,UAAMC,IAAIL,IAAIC,GAAGM,IAAIL,EAAE,IAAIE,EAAE,IAAI;AACjC,QAAI,CAACC,KAAKE,KAAK,QAAQA,KAAKH,EAAE;AAC5B,aAAOA,EAAE,SAASA,EAAE,KAAK;AAAA,EAC7B;AACF,GCVMI,IAAI,CAAC,GAAG,GAAG,MAAM;AACrB,QAAM,IAAI,SAAS,cAAc,CAAC,GAAG,CAAC,GAAGE,CAAC,IAAI,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC;AACpF,SAAO,KAAK,OAAO,OAAO,GAAG,CAAC,GAAGA,KAAK,QAAQA,EAAE,QAAQ,CAACH,MAAM,EAAE,YAAYA,CAAC,CAAC,GAAG;AACpF,GAAGI,KAAI,CAAC,GAAG,MAAM;AACf,MAAI;AACJ,SAAO,MAAM,SAAS,EAAE,gBAAgB,IAAI,EAAE,wBAAwB,cAAc,EAAE,eAAe,SAAS,OAAO,SAAS,EAAE,gBAAgB,KAAK,EAAE,cAAc,EAAE;AACzK,GAAGC,KAAI,CAAC,MAAM,EAAE,cAAc,KAAK,EAAE,eAAe,GAAGC,KAAK,CAAC,GAAG,MAAM;AAC/D,GAAC,eAAe,IAAI,CAAC,KAAK,eAAe,OAAO,GAAG,CAAC;AAC3D;AACA,SAASC,GAAE,GAAG,GAAG,EAAE,SAAS,IAAI,GAAE,IAAK,IAAI;AACzC,QAAM,IAAI,EAAE;AACZ,WAAS,IAAI,IAAI,IAAI,IAAI,GAAG,IAAI,KAAK,IAAI,IAAI,GAAG,IAAI,MAAM;AACxD,MAAE,EAAE,CAAC,GAAG,CAAC;AACb;AACA,SAASC,GAAG,GAAG,GAAG,GAAG,GAAG;AACtB,QAAM,IAAI,EAAE,cAAc,CAAC;AAC3B,OAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,OAAO,EAAC,CAAE,GAAG,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,OAAO,GAAG;AACtF,QAAML,IAAI,CAAA,GAAIH,IAAI,IAAI,IAAI,CAAA,GAAIE,IAAI,CAAA,GAAI,IAAI,CAAA,GAAIO,IAAI,CAACC,MAAM,GAAGA,CAAC,IAAI,EAAEA,CAAC,KAAK,EAAEA,CAAC,KAAK,MAAM,CAAC;AACxF,MAAIC,IAAI,IAAIC,IAAI,IAAIC,IAAI;AACxB,aAAWH,KAAK,GAAG;AACjB,IAAAC,KAAKD,EAAE;AACP,UAAMd,IAAIc,EAAE,SAAS,eAAeA,EAAE,SAAS,aAAa,SAASA,EAAE;AACvE,IAAAd,MAAM,aAAagB,IAAI,IAAIZ,EAAE,KAAK,GAAGU,EAAE,MAAM,MAAM,EAAE,EAAE,IAAI,CAACI,OAAO,EAAE,MAAMlB,GAAG,OAAO,SAASkB,CAAC,EAAC,EAAG,CAAC,KAAKlB,MAAM,UAAUI,EAAE,KAAK,EAAE,MAAMJ,GAAG,OAAOc,EAAE,MAAK,CAAE,IAAId,MAAM,aAAaiB,IAAI,IAAI,EAAE,KAAK,EAAE,MAAMjB,GAAG,OAAOc,EAAE,OAAO,KAAKD,EAAEb,CAAC,EAAC,CAAE,KAAKA,MAAM,aAAa,EAAE,KAAK,GAAGc,EAAE,MAAM,MAAM,EAAE,EAAE,IAAI,CAACI,OAAO;AAAA,MACrS,MAAMlB;AAAA,MACN,OAAO,SAASkB,CAAC;AAAA,MACjB,KAAKL,EAAEb,CAAC;AAAA,MACR,KAAK,KAAK,EAAEA,CAAC;AAAA,IACnB,EAAM,CAAC,KAAKgB,KAAKC,IAAIX,IAAIC,GAAG,KAAK;AAAA,MAC3B,MAAMP;AAAA,MACN,OAAOc,EAAE;AAAA,MACT,KAAKD,EAAEb,CAAC;AAAA,IACd,CAAK;AAAA,EACH;AACA,QAAMmB,IAAI,CAAA;AACV,WAASL,IAAIV,EAAE,SAAS,GAAGU,KAAK,GAAGA,KAAK;AACtC,UAAMd,IAAII,EAAEU,CAAC;AACb,IAAAK,EAAE,QAAQnB,EAAE,SAAS,YAAY;AAAA,MAC/B,GAAGA;AAAA,MACH,KAAKa,EAAEb,EAAE,IAAI;AAAA,MACb,KAAK,EAAEA,EAAE,IAAI;AAAA,IACnB,IAAQ;AAAA,MACF,GAAGA;AAAA,MACH,KAAKa,EAAEb,EAAE,IAAI;AAAA,IACnB,CAAK;AAAA,EACH;AACA,SAAO;AAAA,IACL,KAAKO;AAAA,IACL,SAASY;AAAA,IACT,UAAU;AAAA,IACV,MAAMb;AAAA,IACN,eAAeS;AAAA,IACf,OAAO,OAAO,KAAK,WAAW,WAAW,CAAC,IAAI;AAAA,EAClD;AACA;AACK,MAAiBK,KAAI,OAAO,KAAKC,MAAU,MAAM;AACpD,MAAI;AACF,aAAS,cAAc,KAAK,EAAE,QAAQ,EAAE,SAAS,KAAK,EAAE,QAAQ,gBAAgB;AAAA,EAClF,QAAQ;AACN,WAAO;AAAA,EACT;AACA,SAAO;AACT,GAAC,GAAKC,KAAS,OAAO,MAAM,OAAO,IAAI,YAAY,IAAI,SAAS,eAAe,UAAU,GAAGC,IAAS,OAAO,aAAa,MAAM,WAAW,kCAAkC,IAAI,MAAMC,IAAI,4BAA4BC,IAAI,0BAA0BC,IAAI,qBAAqBC,IAAI,oBAAoBC,MAAK,MAAM;AAC9S,MAAI;AACF,WAAO,IAAI,iBAAiB;AAAA,MAC1B,MAAMJ;AAAA,MACN,QAAQ;AAAA,MACR,UAAU;AAAA,MACV,cAAc;AAAA,IACpB,CAAK,GAAG,IAAI,iBAAiB;AAAA,MACvB,MAAME;AAAA,MACN,QAAQ;AAAA,MACR,UAAU;AAAA,MACV,cAAc;AAAA,IACpB,CAAK,GAAG,IAAI,iBAAiB;AAAA,MACvB,MAAMD;AAAA,MACN,QAAQ;AAAA,MACR,UAAU;AAAA,MACV,cAAc;AAAA,IACpB,CAAK,GAAG,IAAI,iBAAiB;AAAA,MACvB,MAAME;AAAA,MACN,QAAQ;AAAA,MACR,UAAU;AAAA,MACV,cAAc;AAAA,IACpB,CAAK,GAAG;AAAA,EACN,QAAQ;AACN,WAAO;AAAA,EACT;AACF,MAAME,KAAI,uCAAuCjC,IAAI,0CAA0CkC,IAAI,QAAQlC,CAAC,SAASmC,IAAI,wCAAwCC,IAAI,QAAQD,CAAC,sBAAsBE,IAAI,2BAA2BC,IAAId,+FAA8FS,EAAC,oOAAoOJ,CAAC,8CAA8CC,CAAC,gDAAgDK,CAAC,sFAAsFC,CAAC,qBAAqBA,CAAC,gEAAgEpC,CAAC,qBAAqBA,CAAC,wDAAwDqC,CAAC,oCAAoCA,CAAC,iCAAiCA,CAAC,kCAAkCA,CAAC,wCAAwCrC,CAAC,qBAAqBoC,CAAC,cAAcA,CAAC,IAAIpC,CAAC,IAAIoC,CAAC,IAAIpC,CAAC,IAAIoC,CAAC,IAAIpC,CAAC,IAAIoC,CAAC,IAAIpC,CAAC,yIAAyIkC,CAAC,IAAIC,CAAC,wEAAwEL,CAAC,wbAAwbC,CAAC,iDAAiDG,CAAC,yqBAAyqBN,CAAC,OAAOW,KAAQ,aAe59EC,IAAId,MAAKD,MAAKO;AACjB,IAAIS;AACJ,MAAMC,UAAUH,GAAE;AAAA,EAChB,cAAc;AACZ,UAAK,GAAI,KAAK,UAAU,IAAI,KAAK,UAAU;AAC3C,UAAM,EAAE,UAAU,GAAG,GAAG,EAAC,IAAK,KAAK,YAAY;AAC/C,SAAK,YAAY,KAAK,mBAAmB,GAAG,OAAO,OAAO,MAAM,CAAC;AAAA,EACnE;AAAA,EACA,IAAI,WAAW;AACb,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAI,SAAS,GAAG;AACd,QAAI;AACJ,SAAK,aAAa,MAAM,KAAK,YAAY,IAAI,IAAI,KAAK,eAAe,QAAQ,EAAE,cAAa,EAAG,QAAQ,CAAC,MAAM,EAAE,OAAM,CAAE;AAAA,EAC1H;AAAA;AAAA;AAAA;AAAA,EAIA,IAAI,KAAK,GAAG;AACV,QAAIlC;AACJ,QAAI,KAAK;AACP;AACF,UAAM,EAAE,KAAKJ,GAAG,SAASE,GAAG,UAAUG,GAAG,MAAM,GAAG,OAAOE,EAAC,IAAK;AAC/D,QAAI,KAAK,SAAS;AAChB,YAAME,IAAI,KAAK;AACf,WAAK,QAAQ,GAAG,KAAK,gBAAgB,OAAO,KAAK,SAAS,aAAa,KAAK,MAAMA,EAAE,OAAOF,CAAC,IAAI,KAAK,OAAO,KAAK,mBAAmBgC,KAAK,KAAK,cAAc,CAAC,KAAK,2BAA2B,EAAEb,KAAK,QAAQA,EAAE;AAAA,MAC9Md,GAAE,IAAI,IAAIR,IAAI,KAAK,YAAY,QAAQA,EAAE,QAAQ,CAAC,MAAM;AACtD,YAAIY;AACJ,gBAAQA,IAAI,EAAE,aAAa,OAAO,SAASA,EAAE,KAAK,GAAG,GAAGP,GAAG,IAAI;AAAA,MACjE,CAAC,GAAG,KAAK,WAAW,KAAK,WAAU,GAAI,KAAK,KAAK,OAAOT,CAAC,GAAG,KAAK,KAAK,OAAO,EAAE,SAASE,GAAG,UAAUG,EAAC,CAAE,GAAG,KAAK,MAAM,OAAO,CAAC,GAAG,KAAK,WAAW,KAAK,UAAS;AAAA,IACjK,OAAO;AACL,WAAK,QAAQ,GAAG,KAAK,aAAa,EAAE,MAAM,QAAQ;AAClD,UAAI;AACF,aAAK,eAAe,KAAK,aAAa,KAAK,gBAAe,IAAK,KAAK,WAAW,OAAO;AAAA,MACxF,QAAQ;AAAA,MACR;AACA,UAAI,OAAO,gBAAgB,OAAO,KAAK,WAAW;AAChD,QAAAmC,MAAMA,IAAI,IAAI,cAAa,GAAIA,EAAE,YAAYH,CAAC,IAAI,KAAK,WAAW,qBAAqB,CAACG,CAAC;AAAA,WACtF;AACH,cAAM/B,IAAI,SAAS,cAAc,OAAO;AACxC,QAAAA,EAAE,cAAc4B,GAAG,KAAK,WAAW,YAAY5B,CAAC;AAAA,MAClD;AACA,WAAK,OAAO,IAAIiC,EAAE,MAAM1C,GAAG;AAAA,QACzB,SAAS;AAAA,QACT,MAAM;AAAA,MACd,CAAO,GAAG,KAAK,WAAW,YAAY,KAAK,KAAK,EAAE,GAAG,KAAK,OAAO,IAAI2C,GAAE,MAAMzC,GAAGG,CAAC,GAAG,KAAK,WAAW,YAAY,KAAK,KAAK,EAAE,GAAG,KAAK,QAAQ,IAAIqC,EAAE,MAAM,GAAG;AAAA,QACnJ,SAAS;AAAA,QACT,MAAM;AAAA,MACd,CAAO,GAAG,KAAK,WAAW,YAAY,KAAK,MAAM,EAAE,GAAG,KAAK,UAAU;AAAA,IACjE;AACA,QAAI;AACF,WAAK,WAAW,YAAY,EAAE;AAAA,IAChC,QAAQ;AAAA,IACR;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAIA,aAAa;AACX,SAAK,KAAK,WAAU,GAAI,KAAK,KAAK,cAAc,KAAK,MAAM,WAAU;AAAA,EACvE;AAAA;AAAA;AAAA;AAAA,EAIA,YAAY;AACV,QAAI,CAAC,KAAK;AACR;AACF,SAAK,yBAAyB,KAAK,uBAAuB,MAAK,IAAK,KAAK,cAAc,IAAI,MAAM,iBAAiB,CAAC,GAAG,KAAK,KAAK,UAAS,GAAI,KAAK,KAAK,aAAa,KAAK,MAAM,UAAS;AACxL,UAAM,IAAI,IAAI,gBAAe;AAC7B,YAAQ,IAAI,KAAK,WAAW,cAAa,EAAG,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,KAAK,MAAM;AAC7E,QAAE,OAAO,YAAY,KAAK,cAAc,IAAI,MAAM,kBAAkB,CAAC,GAAG,KAAK,yBAAyB;AAAA,IACxG,CAAC,GAAG,KAAK,yBAAyB;AAAA,EACpC;AACF;AACAD,EAAE,eAAe;AAAA,EACf,iBAAiB;AAAA,IACf,UAAU;AAAA;AAAA,IAEV,QAAQ;AAAA,EACZ;AAAA,EACE,YAAY;AAAA,EACZ,eAAe,EAAE,UAAU,KAAK,QAAQ,WAAU;AAAA,EAClD,UAAU;AAAA,EACV,OAAO,CAAC,GAAG,MAAM,KAAK,KAAK,IAAI,CAAC;AAAA,EAChC,yBAAyB;AAAA,EACzB,SAAS;AAAA,EACT,QAAQ;AACV;AACA,MAAME,GAAE;AAAA,EACN,YAAY,GAAG,GAAG,GAAG,EAAE,WAAW,GAAG,GAAGjC,EAAC,IAAK,IAAI;AAChD,SAAK,OAAO,GAAG,KAAK,WAAW,IAAIkC,EAAE,GAAG,GAAG;AAAA,MACzC,SAAS;AAAA,MACT,MAAM;AAAA,IACZ,CAAK,GAAG,KAAK,YAAY,IAAIA,EAAE,GAAG,GAAG;AAAA,MAC/B,SAAS;AAAA,MACT,MAAM;AAAA,IACZ,CAAK,GAAG,KAAK,SAASpC,EAAE,QAAQ;AAAA,MAC1B,WAAW;AAAA,IACjB,GAAO,CAAC,KAAK,SAAS,IAAI,KAAK,UAAU,EAAE,CAAC,GAAG,KAAK,KAAKA,EAAE,QAAQ;AAAA,MAC7D,GAAGE;AAAA,MACH,MAAM;AAAA,MACN,WAAW,UAAU,KAAK,EAAE;AAAA,IAClC,GAAO,CAAC,KAAK,MAAM,CAAC;AAAA,EAClB;AAAA,EACA,aAAa;AACX,SAAK,aAAa,KAAK,GAAG,aAAa,KAAK,YAAY,KAAK,GAAG,wBAAwB,MAAM,KAAK,SAAS,WAAU,GAAI,KAAK,UAAU,WAAU;AAAA,EACrJ;AAAA,EACA,OAAO,EAAE,SAAS,GAAG,UAAU,EAAC,GAAI;AAClC,SAAK,SAAS,OAAO,CAAC,GAAG,KAAK,UAAU,OAAO,CAAC;AAAA,EAClD;AAAA,EACA,YAAY;AACV,UAAM,IAAI,KAAK,GAAG,sBAAqB;AACvC,SAAK,SAAS,UAAS,GAAI,KAAK,UAAU,UAAS;AACnD,UAAM,IAAI,KAAK,YAAY,EAAE,MAAM,IAAI,KAAK,GAAG,aAAa,IAAI,KAAK,aAAa;AAClF,SAAK,GAAG,MAAM,YAAY,WAAW,OAAO,CAAC,CAAC,GAAG,KAAK,GAAG,QAAQ;AAAA,MAC/D,CAACmB,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,KAAK;AAAA,MACrB,CAACD,CAAC,GAAG,CAAC,GAAG,CAAC;AAAA,IAChB,GAAO;AAAA,MACD,GAAG,KAAK,KAAK;AAAA,MACb,WAAW;AAAA,IACjB,CAAK;AAAA,EACH;AACF;AACA,MAAMiB,EAAE;AAAA,EACN,YAAY,GAAG,GAAG,EAAE,SAAS,GAAG,WAAW,GAAG,GAAGnC,EAAC,GAAIH,GAAG;AACvD,SAAK,OAAO,GAAG,KAAK,WAA2B,oBAAI,IAAG,GAAI,KAAK,eAAe,CAACE,MAAM,MAAM;AACzF,WAAK,SAAS,OAAOA,CAAC;AAAA,IACxB,GAAG,KAAK,UAAU;AAClB,UAAM,IAAI,EAAE,IAAI,CAACA,MAAM,KAAK,QAAQA,CAAC,EAAE,EAAE;AACzC,SAAK,KAAKD,EAAE,QAAQ;AAAA,MAClB,GAAGE;AAAA,MACH,WAAW,4BAA4B,CAAC,IAAI,KAAK,EAAE;AAAA,IACzD,GAAOH,IAAIA,EAAE,CAAC,IAAI,CAAC;AAAA,EACjB;AAAA,EACA,QAAQ,GAAG,EAAE,mBAAmB,IAAI,IAAI,GAAG,EAAC,IAAK,IAAI;AACnD,UAAM,IAAI,EAAE,SAAS,aAAa,EAAE,SAAS,aAAa,IAAIuC,EAAE,MAAM,EAAE,MAAM,IAAI,IAAI,EAAE,OAAO,EAAE,KAAK;AAAA,MACpG,GAAG;AAAA,MACH,UAAU,KAAK,aAAa,EAAE,GAAG;AAAA,IACvC,CAAK,IAAI,IAAIC,GAAG,MAAM,EAAE,MAAM,EAAE,OAAO;AAAA,MACjC,GAAG;AAAA,MACH,UAAU,KAAK,aAAa,EAAE,GAAG;AAAA,IACvC,CAAK;AACD,WAAO,KAAK,SAAS,IAAI,EAAE,KAAK,CAAC,GAAG;AAAA,EACtC;AAAA,EACA,MAAM,GAAG;AACP,MAAE,GAAG,gBAAgB,OAAO,GAAG,EAAE,GAAG,MAAM,MAAM,IAAI,EAAE,GAAG,MAAM,KAAK,OAAO,IAAI;AAAA,EACjF;AAAA,EACA,IAAI,GAAG;AACL,MAAE,QAAQ,CAAC,MAAM;AACf,QAAE,GAAG,MAAM,MAAM,GAAG,EAAE,GAAG,SAAS,MAAM,EAAE,GAAG,MAAM,KAAK,OAAO,IAAI,GAAGpC,GAAE,EAAE,IAAI,KAAK,OAAO,CAAC;AAAA,IAC7F,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM;AACnB,QAAE,GAAG,aAAa,SAAS,EAAE,GAAG,EAAE,UAAU;AAAA,IAC9C,CAAC;AAAA,EACH;AAAA,EACA,wBAAwB,GAAG;AACzB,UAAM,IAAoB,oBAAI,IAAG,GAAI,IAAoB,oBAAI,IAAG,GAAI,IAAI,KAAK,YAAY,QAAQD,IAAI,IAAI,YAAY;AACrH,QAAII,GAAE,GAAG,CAACP,MAAM;AACd,UAAI;AACJ,WAAK,SAAS,IAAIA,EAAE,GAAG,KAAK,IAAI,KAAK,SAAS,IAAIA,EAAE,GAAG,GAAG,EAAE,IAAIA,GAAG,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,EAAE,UAAU,OAAO,IAAI,KAAK,QAAQA,GAAG,EAAE,mBAAmB,IAAI,WAAW,GAAE,CAAE,GAAG,EAAE,IAAIA,GAAG,CAAC,IAAI,KAAK,GAAGG,CAAC,EAAE,EAAE,EAAE;AAAA,IACvM,GAAG,EAAE,SAAS,EAAC,CAAE,GAAG,KAAK,KAAK,kBAAkB;AAC9C,YAAMH,IAAI,KAAK,GAAG,sBAAqB;AACvC,QAAE,QAAQ,CAAC,MAAM;AACf,UAAE,WAAWA,CAAC;AAAA,MAChB,CAAC;AAAA,IACH;AACA,MAAE,QAAQ,CAACA,GAAG,MAAM;AAClB,MAAAA,EAAE,OAAO,EAAE,KAAK;AAAA,IAClB,CAAC,GAAG,EAAE,QAAQ,CAACA,GAAG,MAAM;AACtB,MAAAA,EAAE,OAAO,EAAE,KAAK;AAAA,IAClB,CAAC;AAAA,EACH;AAAA,EACA,aAAa;AACX,UAAM,IAAI,KAAK,GAAG,sBAAqB;AACvC,SAAK,cAAc,EAAE,KAAK,OAAO,GAAG,KAAK,SAAS,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAAA,EAClF;AAAA,EACA,YAAY;AACV,UAAM,IAAI,KAAK,GAAG,sBAAqB;AACvC,SAAK,SAAS,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAC3C,UAAM,IAAI,EAAE,KAAK,OAAO,GAAG,IAAI,KAAK,cAAc;AAClD,SAAK,KAAK,SAAS,QAAQ,KAAK,GAAG,QAAQ;AAAA,MACzC,WAAW,CAAC,cAAc,CAAC,OAAO,MAAM;AAAA,IAC9C,GAAO;AAAA,MACD,GAAG,KAAK,KAAK;AAAA,MACb,WAAW;AAAA,IACjB,CAAK;AAAA,EACH;AACF;AACA,MAAMqC,UAAUC,EAAE;AAAA,EAChB,OAAO,GAAG;AACR,UAAM,IAAoB,oBAAI,IAAG;AACjC,SAAK,SAAS,QAAQ,CAAC,GAAG,MAAM;AAC9B,QAAE,KAAK,CAACnC,MAAMA,EAAE,QAAQ,CAAC,KAAK,EAAE,IAAI,GAAG,CAAC,GAAG,KAAK,MAAM,CAAC;AAAA,IACzD,CAAC,GAAG,KAAK,wBAAwB,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM;AACpD,mBAAaoC,KAAK,EAAE,OAAO,CAAC;AAAA,IAC9B,CAAC,GAAG,KAAK,IAAI,CAAC;AAAA,EAChB;AACF;AACA,MAAMJ,UAAUG,EAAE;AAAA,EAChB,OAAO,GAAG;AACR,UAAM,IAAoB,oBAAI,IAAG;AACjC,SAAK,SAAS,QAAQ,CAAC,GAAG,MAAM;AAC9B,QAAE,KAAK,CAACnC,MAAMA,EAAE,QAAQ,CAAC,KAAK,EAAE,IAAI,GAAG,CAAC;AAAA,IAC1C,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG,KAAK,wBAAwB,CAAC;AAAA,EACjD;AACF;AACA,MAAMsC,EAAE;AAAA,EACN,YAAY,GAAG,GAAG,EAAE,UAAU,GAAG,WAAW,IAAI,GAAE,IAAK,IAAI;AACzD,SAAK,OAAO,GAAG,KAAK,KAAK,GAAG,KAAK,WAAW,IAAI,KAAK,UAAU,MAAM;AACnE,UAAItC;AACJ,WAAK,GAAG,OAAM,IAAKA,IAAI,KAAK,cAAc,QAAQA,EAAE,KAAK,IAAI;AAAA,IAC/D,GAAG,KAAK,GAAG,UAAU,IAAI,kBAAkB,GAAG,KAAK,KAAK,oBAAoB,KAAK,KAAK,GAAG,QAAQ;AAAA,MAC/F,CAACiB,CAAC,GAAG,CAAC,SAAS,CAAC;AAAA,IACtB,GAAO;AAAA,MACD,GAAG,KAAK,KAAK;AAAA,MACb,WAAW;AAAA,IACjB,CAAK,GAAG,KAAK,YAAY;AAAA,EACvB;AAAA,EACA,IAAI,UAAU;AACZ,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAI,QAAQ,GAAG;AACb,QAAI,KAAK,aAAa,GAAG;AACvB,UAAI,KAAK,WAAW,GAAG,IAAI,KAAK,GAAG,gBAAgB,OAAO,IAAI,KAAK,GAAG,aAAa,SAAS,EAAE,GAAG,CAAC,KAAK,KAAK,kBAAkB;AAC5H,aAAK,KAAK,QAAO;AACjB;AAAA,MACF;AACA,WAAK,GAAG,MAAM,YAAY,4BAA4B,IAAI,MAAM,OAAO,GAAG,KAAK,GAAG,QAAQ;AAAA,QACxF,CAACA,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;AAAA,MACzC,GAAS;AAAA,QACD,GAAG,KAAK,KAAK;AAAA,QACb,WAAW;AAAA,MACnB,CAAO,GAAG,IAAI,KAAK,KAAK,oBAAoB,oBAAoB,KAAK,OAAO,IAAI,KAAK,KAAK,iBAAiB,oBAAoB,KAAK,SAAS;AAAA,QACrI,MAAM;AAAA,MACd,CAAO;AAAA,IACH;AAAA,EACF;AACF;AACA,MAAMsB,UAAUD,EAAE;AAAA,EAChB,YAAY,GAAG,GAAG,GAAG,GAAG;AACtB,UAAM,EAAE,MAAM,GAAG,CAAC,GAAG,KAAK,UAAU,GAAG,KAAK,QAAQ,GAAG,KAAK,KAAK;AAAA,EACnE;AACF;AACA,MAAMF,UAAUG,EAAE;AAAA,EAChB,YAAY,GAAG,GAAG,GAAG,GAAGvC,GAAG;AACzB,QAAIwC,GAAGlC;AACP,UAAMT,OAAOS,KAAKkC,IAAI,EAAE,KAAK,WAAW,OAAO,SAASA,EAAE,CAAC,MAAM,OAAO,SAASlC,EAAE,QAAQ,KAAK,GAAGZ,IAAI,MAAM,KAAK,EAAE,QAAQG,EAAC,CAAE,EAAE,IAAI,CAACW,GAAGC,MAAM;AAC7I,YAAMC,IAAIZ,EAAE,QAAQ,EAAE,WAAW,aAAY,GAAI;AAAA,QAC/C,SAAS,eAAe,OAAOW,CAAC,CAAC;AAAA,MACzC,CAAO;AACD,aAAOA,MAAM,KAAKC,EAAE,aAAa,SAAS,EAAE,GAAGA,EAAE,MAAM,YAAY,OAAO,OAAOD,CAAC,CAAC,GAAGC;AAAA,IACxF,CAAC,GAAGX,IAAID,EAAE,QAAQ;AAAA,MAChB,MAAM,SAAS,CAAC;AAAA,MAChB,WAAW;AAAA,IACjB,GAAOJ,CAAC;AACJ,IAAAK,EAAE,MAAM,YAAY,aAAa,OAAO,CAAC,CAAC,GAAGA,EAAE,MAAM,YAAY,YAAY,OAAOF,CAAC,CAAC,GAAG,MAAM,GAAG,GAAGE,GAAGC,CAAC,GAAG,KAAK,MAAM,GAAG,KAAK,sBAAsB,MAAM;AACzJ,WAAK,GAAG,UAAU,OAAO,aAAa;AAAA,IACxC,GAAG,KAAK,WAAWN,GAAG,KAAK,SAASG;AAAA,EACtC;AAAA,EACA,WAAW,GAAG;AACZ,UAAM,IAAI,KAAK,GAAG,sBAAqB;AACvC,SAAK,aAAa,KAAK;AACvB,UAAM,IAAI,EAAE,KAAK,QAAQ,OAAO,IAAI,EAAE,KAAK,QAAQ,OAAO,GAAG,IAAI,EAAE,QAAQ;AAC3E,SAAK,cAAc,KAAK,QAAQ,YAAY,SAAS,IAAI,IAAI,IAAI;AAAA,EACnE;AAAA,EACA,OAAO,GAAG;AACR,SAAK,GAAG,MAAM,YAAY,aAAa,OAAO,CAAC,CAAC,GAAG,KAAK,SAAS,QAAQ,CAAC,GAAG,MAAM,MAAM,IAAI,EAAE,gBAAgB,OAAO,IAAI,EAAE,aAAa,SAAS,EAAE,CAAC,GAAG,KAAK,QAAQ;AAAA,EACvK;AAAA,EACA,UAAU,GAAG;AACX,UAAM,IAAI,KAAK,GAAG,sBAAqB,GAAI,IAAI,EAAE,KAAK,QAAQ,OAAO,IAAI,EAAE,KAAK,QAAQ,OAAO,GAAG,IAAI,EAAE,QAAQ,GAAGG,IAAI,KAAK,QAAQ,YAAY,SAAS,IAAI,IAAI,IAAI,GAAGH,IAAI,KAAK,cAAcG;AAC/L,IAAAH,KAAK,KAAK,GAAG,QAAQ;AAAA,MACnB,WAAW,CAAC,cAAcA,CAAC,OAAO,MAAM;AAAA,IAC9C,GAAO;AAAA,MACD,GAAG,KAAK,KAAK;AAAA,MACb,WAAW;AAAA,IACjB,CAAK;AACD,UAAM,IAAI,KAAK,SAAQ;AACvB,UAAM,KAAK,GAAG,UAAU,IAAI,aAAa,GAAG,KAAK,GAAG,QAAQ;AAAA,MAC1D,CAACuB,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;AAAA,IACjB,GAAO;AAAA,MACD,GAAG,KAAK,KAAK,cAAc,KAAK,KAAK;AAAA,MACrC,WAAW;AAAA,IACjB,CAAK,GAAG,KAAK,KAAK,iBAAiB,oBAAoB,KAAK,qBAAqB,EAAE,MAAM,GAAE,CAAE;AAAA,EAC3F;AAAA,EACA,WAAW;AACT,QAAI5B;AACJ,QAAI,KAAK,KAAK;AACZ,iBAAW,KAAK,KAAK,KAAK,SAAS;AACjC,cAAMQ,KAAKR,IAAI,EAAE,aAAa,OAAO,SAASA,EAAE,KAAK,GAAG,KAAK,OAAO,KAAK,YAAY,IAAI;AACzF,YAAIQ,KAAK;AACP,iBAAOA;AAAA,MACX;AACF,UAAMJ,IAAI,KAAK,QAAQ,KAAK,YAAYN,IAAI,KAAK,KAAK,iBAAiB,KAAK,KAAKM,CAAC;AAClF,WAAON,IAAI,KAAK,KAAK,QAAQ,KAAK,aAAa,KAAK,QAAQ,KAAK,SAAS,KAAK,aAAaA,IAAI,KAAK,KAAK,QAAQ,KAAK,aAAa,KAAK,SAAS,KAAK,aAAa,KAAK,QAAQM;AAAA,EACnL;AACF;AACA,MAAMyC,WAAWE,EAAE;AAAA,EACjB,YAAY,GAAG,GAAG,GAAG,GAAG;AACtB,UAAMvC,IAAIF,EAAE,QAAQ;AAAA,MAClB,WAAW;AAAA,MACX,aAAa;AAAA,IACnB,CAAK;AACD,UAAM,GAAG,GAAGA,EAAE,QAAQ;AAAA,MACpB,MAAM,UAAU,CAAC;AAAA,MACjB,WAAW;AAAA,IACjB,GAAO,CAACE,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,OAAO,GAAG,KAAK,YAA4B,oBAAI,IAAG,GAAI,KAAK,iBAAiB,CAACH,MAAM,MAAM;AACzG,WAAK,UAAU,OAAOA,CAAC;AAAA,IACzB,GAAG,KAAK,UAAU,IAAI,GAAG,IAAIyC,EAAE,KAAK,MAAMtC,GAAG;AAAA,MAC3C,UAAU,KAAK,eAAe,CAAC;AAAA,IACrC,CAAK,CAAC;AAAA,EACJ;AAAA,EACA,WAAW,GAAG;AACZ,QAAI,KAAK,SAAS;AAChB;AACF,UAAM,IAAI,KAAK,GAAG,sBAAqB;AACvC,SAAK,cAAc,EAAE,KAAK,QAAQ,OAAO,IAAI,EAAE,KAAK,QAAQ,OAAO;AAAA,EACrE;AAAA,EACA,OAAO,GAAG;AACR,QAAI,KAAK,UAAU,GAAG;AACpB,YAAM,IAAI,KAAK,UAAU,IAAI,KAAK,KAAK;AACvC,YAAM,EAAE,UAAU;AAClB,YAAM,IAAI,KAAK,UAAU,IAAI,CAAC;AAC9B,UAAI;AACF,UAAE,UAAU;AAAA,WACT;AACH,cAAM,IAAIF,EAAE,QAAQ;AAAA,UAClB,WAAW;AAAA,UACX,aAAa;AAAA,QACvB,CAAS;AACD,aAAK,GAAG,YAAY,CAAC,GAAG,KAAK,UAAU,IAAI,GAAG,IAAIwC,EAAE,KAAK,MAAM,GAAG;AAAA,UAChE,WAAW;AAAA,UACX,UAAU,KAAK,eAAe,CAAC;AAAA,QACzC,CAAS,CAAC;AAAA,MACJ;AAAA,IACF;AACA,SAAK,QAAQ;AAAA,EACf;AAAA,EACA,UAAU,GAAG;AACX,QAAI,KAAK,SAAS;AAChB;AACF,UAAM9C,IAAI,KAAK,GAAG,sBAAqB,EAAG,KAAK,QAAQ,OAAO,IAAI,EAAE,KAAK,QAAQ,OAAO,GAAGG,IAAI,KAAK,cAAcH;AAClH,IAAAG,KAAK,KAAK,GAAG,QAAQ;AAAA,MACnB,WAAW,CAAC,cAAcA,CAAC,OAAO,MAAM;AAAA,IAC9C,GAAO,EAAE,GAAG,KAAK,KAAK,iBAAiB,WAAW,cAAc;AAAA,EAC9D;AACF;;AC3bA,MAAM8C,KAAc,UAASC,IAAAA,GAAc,MAAM,UAAU,MAA9BA,gBAAAA,EAAkC,EAAE,GAC3DC,IAAYF,MAAe,IAE3BG,KAAsB;AAAA,EACxB;AAAA,EACA;AACJ;AACA,MAAMC,UAA0BC,EAAe;AAAA,EAC3C,yBAAyBC,GAAMC,GAAWC,GAAU;AAChD,SAAKF,CAAI,IAAI,KAAK,MAAME,CAAQ;AAAA,EACpC;AACJ;AACAJ,EAAkB,qBAAqBF,IAAY,CAAA,IAAKC;AACxDM,GAAO,qBAAqBL,CAAiB;AAI7C,MAAMM,IAAa,CAAA,GAEbC,IAAYT,IAAY,CAACrC,MAAIA,IAAI,KAAK;AAC5C,SAAS+C,EAAWC,GAAO;AACvB,QAAM,EAAE,iBAAAC,GAAiB,YAAAC,GAAY,eAAAC,GAAe,UAAAC,GAAU,yBAAAC,GAAyB,OAAAC,GAAO,SAAAC,GAAS,GAAGC,EAAI,IAAKR;AACnH,SAAO;AAAA,IACH;AAAA,MACI,iBAAAC;AAAA,MACA,YAAAC;AAAA,MACA,eAAAC;AAAA,MACA,UAAAC;AAAA,MACA,yBAAAC;AAAA,MACA,OAAAC;AAAA,MACA,SAAAC;AAAA,IACZ;AAAA,IACQC;AAAA,EACR;AACA;AAEA,MAAMC,WAAuBC,GAAgB;AAAA;AAAA;AAAA,EAGzC,iBAAiBC,GAAW;AACxB,QAAI,CAAC,KAAK,GAAI;AACd,SAAK,GAAG,UAAU,CAAC,KAAK,MAAM;AAC9B,UAAM,CAACC,CAAO,IAAIb,EAAW,KAAK,KAAK;AACvC,WAAO,QAAQa,CAAO,EAAE,QAAQ,CAAC,CAAC3C,GAAG4C,CAAC,MAAI;AAEtC,WAAK,GAAG5C,CAAC,IAAI4C,KAAKtB,EAAkB,aAAatB,CAAC;AAAA,IACtD,CAAC,GACG0C,KAAA,QAAAA,EAAW,qBAAmB,KAAK,GAAG,oBAAoB,mBAAmBA,EAAU,iBAAiB,GACxG,KAAK,MAAM,qBAAmB,KAAK,GAAG,iBAAiB,mBAAmB,KAAK,MAAM,iBAAiB,GACtGA,KAAA,QAAAA,EAAW,sBAAoB,KAAK,GAAG,oBAAoB,oBAAoBA,EAAU,kBAAkB,GAC3G,KAAK,MAAM,sBAAoB,KAAK,GAAG,iBAAiB,oBAAoB,KAAK,MAAM,kBAAkB;AAAA,EACjH;AAAA,EACA,oBAAoB;AAChB,SAAK,iBAAgB,GACjBtB,KAAa,KAAK,OAElB,KAAK,GAAG,SAAS,KAAK,MAAM,QAC5B,KAAK,GAAG,OAAO,KAAK,MAAM;AAAA,EAElC;AAAA,EACA,wBAAwBsB,GAAW;;AAE/B,QADA,KAAK,iBAAiBA,CAAS,GAC3BA,EAAU,SAAS,KAAK,MAAM,MAAM;AACpC,UAAI,KAAK,MAAM;AACX,oBAAK,MAAM,MAAM,WAAU,GACpB;;AAAI,kBAAAG,IAAA,KAAK,MAAM,UAAX,gBAAAA,EAAkB;AAAA;AAEjC,UAAI,CAAC,KAAK,MAAM;AACZ,gBAAAA,IAAA,KAAK,OAAL,QAAAA,EAAS,cACF,MAAA;;AAAI,kBAAAA,IAAA,KAAK,OAAL,gBAAAA,EAAS;AAAA;AAAA,IAE5B;AACA,WAAO;AAAA,EACX;AAAA,EACA,mBAAmBC,GAAGC,GAAIC,GAAW;AACjC,IAAAA,KAAA,QAAAA;AAAA,EACJ;AAAA,EACA,UAAUC,GAAI;AACV,IAAI,KAAK,MAAM,aAAU,KAAK,MAAM,SAAS,UAAUA,IACvD,KAAK,KAAKA;AAAA,EACd;AAAA,EACA,SAAS;AACL,UAAM,CAACH,GAAG,EAAE,UAAAI,GAAU,WAAAC,GAAW,MAAAC,GAAM,YAAAC,GAAY,SAAAC,GAAS,OAAAC,GAAO,QAAAC,GAAQ,mBAAAC,GAAmB,oBAAAC,GAAoB,GAAGnB,EAAI,CAAE,IAAIT,EAAW,KAAK,KAAK;AACpJ;AAAA;AAAA,MACc6B,gBAAAA,EAAoB,qBAAqB;AAAA,QACnD,KAAK,KAAK;AAAA,QACV,oBAAoBN,IAAa,KAAK;AAAA;AAAA,QAEtC,OAAOF;AAAA,QACP,GAAGZ;AAAA,QACH,yBAAyB;AAAA,UACrB,QAAkB;AAAA,QAClC;AAAA,QACY,0BAA0B;AAAA,QAC1B,QAAQV,EAAU2B,CAAM;AAAA;AAAA,QAExB,MAAM3B,EAAUuB,CAAI;AAAA,MAChC,CAAS;AAAA;AAAA,EACL;AAAA,EACA,YAAYrB,GAAM;AACd,UAAMA,CAAK,GACX,KAAK,YAAY,KAAK,UAAU,KAAK,IAAI;AAAA,EAC7C;AACJ;AACK,MAAC6B,KAA2BC,gBAAAA,EAAiB,SAAoB,EAAE,OAAAC,GAAO,SAAAC,GAAS,QAAAC,GAAQ,QAAAC,GAAQ,QAAAC,GAAQ,GAAGnC,EAAK,GAAIoC,GAAM;AAC9HC,EAAAA,EAA0BD,GAAM,MAAIE,EAAI,SAAS,CAAA,CAAE;AACnD,QAAMA,IAAMC,EAAY,GAClBf,IAAQgB,GAAiBC,CAAsB;AACrD,EAAAjB,KAAA,QAAAA,EAAO,YAAYc;AACnB,QAAMI,IAAgBC,EAAc,MAAIX,IAAU,KAAK,UAAUA,CAAO,IAAI,IAAI;AAAA,IAC5EA;AAAA,EACR,CAAK,GACKY,IAAeD,EAAc,MAAIV,IAAS,KAAK,UAAUA,CAAM,IAAI,IAAI;AAAA,IACzEA;AAAA,EACR,CAAK,GACKZ,IAAOsB,EAAc,MAAI;;AAC3B,UAAME,IAAYhD,EAAAiB,IAAW,GAAG4B,CAAa,IAAIE,CAAY,QAA3C/C,EAAAiB,KAAmD,IAAI,KAAK,aAAakB,GAASC,CAAM;AAC1G,WAAOa,GAAaf,GAAOc,GAAWX,GAAQC,CAAM;AAAA,EACxD,GAAG;AAAA,IACCJ;AAAA,IACAW;AAAA,IACAE;AAAA,IACAV;AAAA,IACAC;AAAA,EACR,CAAK;AACD,SAAqBP,gBAAAA,EAAoBnB,IAAgB;AAAA,IACrD,GAAGT;AAAA,IACH,OAAOwB;AAAA,IACP,MAAMH;AAAA,IACN,UAAUiB;AAAA,EAClB,CAAK;AACL,CAAC,GACKG,IAAuCM,gBAAAA,GAAoB,MAAS;AAC1E,SAASC,GAAgB,EAAE,UAAAC,KAAY;AACnC,QAAMC,IAAQX,EAAa,oBAAI,KAAK,GAC9BY,IAAWZ,EAAa,EAAK,GAC7Ba,IAAUb,EAAa,oBAAI,SAAS,GACpCR,IAAQY,EAAc,OAAK;AAAA,IACzB,YAAaL,GAAK;AACde,MAAAA,EAAgB,OACZH,EAAM,QAAQ,IAAIZ,CAAG,GACd,MAAI;AACP,QAAAY,EAAM,QAAQ,OAAOZ,CAAG;AAAA,MAC5B,IACD,CAAA,CAAE;AAAA,IACT;AAAA,IACA,aAAc;AACV,MAAIa,EAAS,YACbA,EAAS,UAAU,IACnBD,EAAM,QAAQ,QAAQ,CAACZ,MAAM;AACzB,cAAMvG,IAAIuG,EAAI;AACd,QAAI,CAACvG,KAAK,CAACA,EAAE,YACbA,EAAE,WAAU,GACZqH,EAAQ,QAAQ,IAAIrH,GAAG,EAAI;AAAA,MAC/B,CAAC;AAAA,IACL;AAAA,IACA,YAAa;AACT,MAAAmH,EAAM,QAAQ,QAAQ,CAACZ,MAAM;AACzB,cAAMvG,IAAIuG,EAAI;AACd,QAAI,CAACvG,KAAK,CAACqH,EAAQ,QAAQ,IAAIrH,CAAC,MAChCA,EAAE,UAAS,GACXqH,EAAQ,QAAQ,OAAOrH,CAAC;AAAA,MAC5B,CAAC,GACDoH,EAAS,UAAU;AAAA,IACvB;AAAA,EACZ,IAAY,CAAA,CAAE;AACV,SAAqBvB,gBAAAA,EAAoBa,EAAuB,UAAU;AAAA,IACtE,OAAOV;AAAA,EACf,GAAOkB,CAAQ;AACf;ACzKK,MAACK,KAAiB,MAAIC,EAA2B,MAAI,MAAI;AAAC,GAAG,MAAIC,GAAY,MAAI,EAAK,GACrFC,KAA0B,MAAIF,EAA2B,CAACG,OACxDC,KAAAA,QAAAA,EAAsB,iBAAiB,UAAUD,IAC1C,MAAIC,KAAAA,gBAAAA,EAAsB,oBAAoB,UAAUD,KAChE,MAAIC,EAAqB,SAAS,MAAI,EAAK;AAClD,SAASC,GAAc,EAAE,yBAAAvD,IAA0B,GAAI,IAAK,CAAA,GAAI;AAC5D,QAAMwD,IAAcP,GAAc,GAC5BQ,IAAgBL,GAAuB;AAC7C,SAAOI,MAAgB,CAACxD,KAA2B,CAACyD;AACxD;","x_google_ignoreList":[0,1,2,3]}
|
|
1
|
+
{"version":3,"file":"index-Bdx2FYYX.mjs","sources":["../../../node_modules/.pnpm/number-flow@0.5.8/node_modules/number-flow/dist/plugins.mjs","../../../node_modules/.pnpm/number-flow@0.5.8/node_modules/number-flow/dist/lite-BTIaQdTe.mjs","../../../node_modules/.pnpm/@number-flow+react@0.5.10_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@number-flow/react/dist/NumberFlow-client-48rw3j0J.mjs","../../../node_modules/.pnpm/@number-flow+react@0.5.10_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@number-flow/react/dist/index.mjs"],"sourcesContent":["const f = (e, n) => e == null ? n : n == null ? e : Math.max(e, n), i = /* @__PURE__ */ new WeakMap(), l = {\n onUpdate(e, n, o) {\n if (i.set(o, void 0), !o.computedTrend)\n return;\n const s = n.integer.concat(n.fraction).filter((t) => t.type === \"integer\" || t.type === \"fraction\"), r = e.integer.concat(e.fraction).filter((t) => t.type === \"integer\" || t.type === \"fraction\"), u = s.find((t) => !r.find((c) => c.pos === t.pos && c.value === t.value)), a = r.find((t) => !s.find((c) => t.pos === c.pos && t.value === c.value));\n i.set(o, f(u == null ? void 0 : u.pos, a == null ? void 0 : a.pos));\n },\n getDelta(e, n, o) {\n const s = e - n, r = i.get(o.flow);\n if (!s && r != null && r >= o.pos)\n return o.length * o.flow.computedTrend;\n }\n};\nexport {\n l as continuous\n};\n","import { BROWSER as _ } from \"esm-env\";\nimport \"./plugins.mjs\";\nconst u = (n, t, e) => {\n const i = document.createElement(n), [s, a] = Array.isArray(t) ? [void 0, t] : [t, e];\n return s && Object.assign(i, s), a == null || a.forEach((r) => i.appendChild(r)), i;\n}, F = (n, t) => {\n var e;\n return t === \"left\" ? n.offsetLeft : (((e = n.offsetParent instanceof HTMLElement ? n.offsetParent : null) == null ? void 0 : e.offsetWidth) ?? 0) - n.offsetWidth - n.offsetLeft;\n}, H = (n) => n.offsetWidth > 0 && n.offsetHeight > 0, st = (n, t) => {\n _ && !customElements.get(n) && customElements.define(n, t);\n};\nfunction X(n, t, { reverse: e = !1 } = {}) {\n const i = n.length;\n for (let s = e ? i - 1 : 0; e ? s >= 0 : s < i; e ? s-- : s++)\n t(n[s], s);\n}\nfunction nt(n, t, e, i) {\n const s = t.formatToParts(n);\n e && s.unshift({ type: \"prefix\", value: e }), i && s.push({ type: \"suffix\", value: i });\n const a = [], r = [], o = [], c = [], d = {}, p = (h) => `${h}:${d[h] = (d[h] ?? -1) + 1}`;\n let x = \"\", g = !1, y = !1;\n for (const h of s) {\n x += h.value;\n const l = h.type === \"minusSign\" || h.type === \"plusSign\" ? \"sign\" : h.type;\n l === \"integer\" ? (g = !0, r.push(...h.value.split(\"\").map((C) => ({ type: l, value: parseInt(C) })))) : l === \"group\" ? r.push({ type: l, value: h.value }) : l === \"decimal\" ? (y = !0, o.push({ type: l, value: h.value, key: p(l) })) : l === \"fraction\" ? o.push(...h.value.split(\"\").map((C) => ({\n type: l,\n value: parseInt(C),\n key: p(l),\n pos: -1 - d[l]\n }))) : (g || y ? c : a).push({\n type: l,\n value: h.value,\n key: p(l)\n });\n }\n const T = [];\n for (let h = r.length - 1; h >= 0; h--) {\n const l = r[h];\n T.unshift(l.type === \"integer\" ? {\n ...l,\n key: p(l.type),\n pos: d[l.type]\n } : {\n ...l,\n key: p(l.type)\n });\n }\n return {\n pre: a,\n integer: T,\n fraction: o,\n post: c,\n valueAsString: x,\n value: typeof n == \"string\" ? parseFloat(n) : n\n };\n}\nconst I = String.raw, V = String.raw, O = _ && (() => {\n try {\n document.createElement(\"div\").animate({ opacity: 0 }, { easing: \"linear(0, 1)\" });\n } catch {\n return !1;\n }\n return !0;\n})(), z = _ && typeof CSS < \"u\" && CSS.supports && CSS.supports(\"line-height\", \"mod(1,1)\"), A = _ && typeof matchMedia < \"u\" ? matchMedia(\"(prefers-reduced-motion: reduce)\") : null, $ = \"--_number-flow-d-opacity\", U = \"--_number-flow-d-width\", S = \"--_number-flow-dx\", j = \"--_number-flow-d\", Y = (() => {\n try {\n return CSS.registerProperty({\n name: $,\n syntax: \"<number>\",\n inherits: !1,\n initialValue: \"0\"\n }), CSS.registerProperty({\n name: S,\n syntax: \"<length>\",\n inherits: !0,\n initialValue: \"0px\"\n }), CSS.registerProperty({\n name: U,\n syntax: \"<number>\",\n inherits: !1,\n initialValue: \"0\"\n }), CSS.registerProperty({\n name: j,\n syntax: \"<number>\",\n inherits: !0,\n initialValue: \"0\"\n }), !0;\n } catch {\n return !1;\n }\n})(), P = \"var(--number-flow-char-height, 1em)\", f = \"var(--number-flow-mask-height, 0.25em)\", k = `calc(${f} / 2)`, E = \"var(--number-flow-mask-width, 0.5em)\", m = `calc(${E} / var(--scale-x))`, w = \"#000 0, transparent 71%\", M = V`:host{display:inline-block;direction:ltr;white-space:nowrap;isolation:isolate;line-height:${P} !important}.number,.number__inner{display:inline-block;transform-origin:left top}:host([data-will-change]) :is(.number,.number__inner,.section,.digit,.digit__num,.symbol){will-change:transform}.number{--scale-x:calc(1 + var(${U}) / var(--width));transform:translateX(var(${S})) scaleX(var(--scale-x));margin:0 calc(-1 * ${E});position:relative;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 ${m},#000 calc(100% - ${m}),transparent ),linear-gradient(to bottom,transparent 0,#000 ${f},#000 calc(100% - ${f}),transparent 100% ),radial-gradient(at bottom right,${w}),radial-gradient(at bottom left,${w}),radial-gradient(at top left,${w}),radial-gradient(at top right,${w});-webkit-mask-size:100% calc(100% - ${f} * 2),calc(100% - ${m} * 2) 100%,${m} ${f},${m} ${f},${m} ${f},${m} ${f};-webkit-mask-position:center,center,top left,top right,bottom right,bottom left;-webkit-mask-repeat:no-repeat}.number__inner{padding:${k} ${E};transform:scaleX(calc(1 / var(--scale-x))) translateX(calc(-1 * var(${S})))}:host > :not(.number){z-index:5}.section,.symbol{display:inline-block;position:relative;isolation:isolate}.section::after{content:'\\200b';display:inline-block}.section--justify-left{transform-origin:center left}.section--justify-right{transform-origin:center right}.section > [inert],.symbol > [inert]{margin:0 !important;position:absolute !important;z-index:-1}.digit{display:inline-block;position:relative;--c:var(--current) + var(${j})}.digit__num,.number .section::after{padding:${k} 0}.digit__num{display:inline-block;--offset-raw:mod(var(--length) + var(--n) - mod(var(--c),var(--length)),var(--length));--offset:calc( var(--offset-raw) - var(--length) * round(down,var(--offset-raw) / (var(--length) / 2),1) );--y:clamp(-100%,var(--offset) * 100%,100%);transform:translateY(var(--y))}.digit__num[inert]{position:absolute;top:0;left:50%;transform:translateX(-50%) translateY(var(--y))}.digit:not(.is-spinning) .digit__num[inert]{display:none}.symbol__value{display:inline-block;mix-blend-mode:plus-lighter;white-space:pre}.section--justify-left .symbol > [inert]{left:0}.section--justify-right .symbol > [inert]{right:0}.animate-presence{opacity:calc(1 + var(${$}))}`, G = _ ? HTMLElement : class {\n}, K = V`:host{display:inline-block;direction:ltr;white-space:nowrap;line-height:${P} !important}span{display:inline-block}:host([data-will-change]) span{will-change:transform}.number,.digit{padding:${k} 0}.symbol{white-space:pre}`, Z = (n) => `<span class=\"${n.type === \"integer\" || n.type === \"fraction\" ? \"digit\" : \"symbol\"}\" part=\"${n.type === \"integer\" || n.type === \"fraction\" ? `digit ${n.type}-digit` : `symbol ${n.type}`}\">${n.value}</span>`, v = (n, t) => `<span part=\"${t}\">${n.reduce((e, i) => e + Z(i), \"\")}</span>`, at = (n) => (\n // shadowroot=\"open\" non-standard attribute for old Chrome:\n I`<template shadowroot=\"open\" shadowrootmode=\"open\"\n\t\t\t><style>\n\t\t\t\t${K}</style\n\t\t\t><span role=\"img\" aria-label=\"${n.valueAsString}\"\n\t\t\t\t>${v(n.pre, \"left\")}<span part=\"number\" class=\"number\"\n\t\t\t\t\t>${v(n.integer, \"integer\")}${v(n.fraction, \"fraction\")}</span\n\t\t\t\t>${v(n.post, \"right\")}</span\n\t\t\t></template\n\t\t><span\n\t\t\tstyle=\"font-kerning: none; display: inline-block; line-height: ${P} !important; padding: ${f} 0;\"\n\t\t\t>${n.valueAsString}</span\n\t\t>`\n), q = z && O && Y;\nlet b;\nclass J extends G {\n constructor() {\n super(), this.created = !1, this.batched = !1;\n const { animated: t, ...e } = this.constructor.defaultProps;\n this._animated = this.computedAnimated = t, Object.assign(this, e);\n }\n get animated() {\n return this._animated;\n }\n set animated(t) {\n var e;\n this.animated !== t && (this._animated = t, (e = this.shadowRoot) == null || e.getAnimations().forEach((i) => i.finish()));\n }\n /**\n * @internal\n */\n set data(t) {\n var o;\n if (t == null)\n return;\n const { pre: e, integer: i, fraction: s, post: a, value: r } = t;\n if (this.created) {\n const c = this._data;\n this._data = t, this.computedTrend = typeof this.trend == \"function\" ? this.trend(c.value, r) : this.trend, this.computedAnimated = q && this._animated && (!this.respectMotionPreference || !(A != null && A.matches)) && // https://github.com/barvian/number-flow/issues/9\n H(this), (o = this.plugins) == null || o.forEach((d) => {\n var p;\n return (p = d.onUpdate) == null ? void 0 : p.call(d, t, c, this);\n }), this.batched || this.willUpdate(), this._pre.update(e), this._num.update({ integer: i, fraction: s }), this._post.update(a), this.batched || this.didUpdate();\n } else {\n this._data = t, this.attachShadow({ mode: \"open\" });\n try {\n this._internals ?? (this._internals = this.attachInternals()), this._internals.role = \"img\";\n } catch {\n }\n if (typeof CSSStyleSheet < \"u\" && this.shadowRoot.adoptedStyleSheets)\n b || (b = new CSSStyleSheet(), b.replaceSync(M)), this.shadowRoot.adoptedStyleSheets = [b];\n else {\n const c = document.createElement(\"style\");\n c.textContent = M, this.shadowRoot.appendChild(c);\n }\n this._pre = new N(this, e, {\n justify: \"right\",\n part: \"left\"\n }), this.shadowRoot.appendChild(this._pre.el), this._num = new Q(this, i, s), this.shadowRoot.appendChild(this._num.el), this._post = new N(this, a, {\n justify: \"left\",\n part: \"right\"\n }), this.shadowRoot.appendChild(this._post.el), this.created = !0;\n }\n try {\n this._internals.ariaLabel = t.valueAsString;\n } catch {\n }\n }\n /**\n * @internal\n */\n willUpdate() {\n this._pre.willUpdate(), this._num.willUpdate(), this._post.willUpdate();\n }\n /**\n * @internal\n */\n didUpdate() {\n if (!this.computedAnimated)\n return;\n this._abortAnimationsFinish ? this._abortAnimationsFinish.abort() : this.dispatchEvent(new Event(\"animationsstart\")), this._pre.didUpdate(), this._num.didUpdate(), this._post.didUpdate();\n const t = new AbortController();\n Promise.all(this.shadowRoot.getAnimations().map((e) => e.finished)).then(() => {\n t.signal.aborted || (this.dispatchEvent(new Event(\"animationsfinish\")), this._abortAnimationsFinish = void 0);\n }), this._abortAnimationsFinish = t;\n }\n}\nJ.defaultProps = {\n transformTiming: {\n duration: 900,\n // Make sure to keep this minified:\n easing: \"linear(0,.005,.019,.039,.066,.096,.129,.165,.202,.24,.278,.316,.354,.39,.426,.461,.494,.526,.557,.586,.614,.64,.665,.689,.711,.731,.751,.769,.786,.802,.817,.831,.844,.856,.867,.877,.887,.896,.904,.912,.919,.925,.931,.937,.942,.947,.951,.955,.959,.962,.965,.968,.971,.973,.976,.978,.98,.981,.983,.984,.986,.987,.988,.989,.99,.991,.992,.992,.993,.994,.994,.995,.995,.996,.996,.9963,.9967,.9969,.9972,.9975,.9977,.9979,.9981,.9982,.9984,.9985,.9987,.9988,.9989,1)\"\n },\n spinTiming: void 0,\n opacityTiming: { duration: 450, easing: \"ease-out\" },\n animated: !0,\n trend: (n, t) => Math.sign(t - n),\n respectMotionPreference: !0,\n plugins: void 0,\n digits: void 0\n};\nclass Q {\n constructor(t, e, i, { className: s, ...a } = {}) {\n this.flow = t, this._integer = new L(t, e, {\n justify: \"right\",\n part: \"integer\"\n }), this._fraction = new L(t, i, {\n justify: \"left\",\n part: \"fraction\"\n }), this._inner = u(\"span\", {\n className: \"number__inner\"\n }, [this._integer.el, this._fraction.el]), this.el = u(\"span\", {\n ...a,\n part: \"number\",\n className: `number ${s ?? \"\"}`\n }, [this._inner]);\n }\n willUpdate() {\n this._prevWidth = this.el.offsetWidth, this._prevLeft = this.el.getBoundingClientRect().left, this._integer.willUpdate(), this._fraction.willUpdate();\n }\n update({ integer: t, fraction: e }) {\n this._integer.update(t), this._fraction.update(e);\n }\n didUpdate() {\n const t = this.el.getBoundingClientRect();\n this._integer.didUpdate(), this._fraction.didUpdate();\n const e = this._prevLeft - t.left, i = this.el.offsetWidth, s = this._prevWidth - i;\n this.el.style.setProperty(\"--width\", String(i)), this.el.animate({\n [S]: [`${e}px`, \"0px\"],\n [U]: [s, 0]\n }, {\n ...this.flow.transformTiming,\n composite: \"accumulate\"\n });\n }\n}\nclass W {\n constructor(t, e, { justify: i, className: s, ...a }, r) {\n this.flow = t, this.children = /* @__PURE__ */ new Map(), this.onCharRemove = (c) => () => {\n this.children.delete(c);\n }, this.justify = i;\n const o = e.map((c) => this.addChar(c).el);\n this.el = u(\"span\", {\n ...a,\n className: `section section--justify-${i} ${s ?? \"\"}`\n }, r ? r(o) : o);\n }\n addChar(t, { startDigitsAtZero: e = !1, ...i } = {}) {\n const s = t.type === \"integer\" || t.type === \"fraction\" ? new D(this, t.type, e ? 0 : t.value, t.pos, {\n ...i,\n onRemove: this.onCharRemove(t.key)\n }) : new tt(this, t.type, t.value, {\n ...i,\n onRemove: this.onCharRemove(t.key)\n });\n return this.children.set(t.key, s), s;\n }\n unpop(t) {\n t.el.removeAttribute(\"inert\"), t.el.style.top = \"\", t.el.style[this.justify] = \"\";\n }\n pop(t) {\n t.forEach((e) => {\n e.el.style.top = `${e.el.offsetTop}px`, e.el.style[this.justify] = `${F(e.el, this.justify)}px`;\n }), t.forEach((e) => {\n e.el.setAttribute(\"inert\", \"\"), e.present = !1;\n });\n }\n addNewAndUpdateExisting(t) {\n const e = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(), s = this.justify === \"left\", a = s ? \"prepend\" : \"append\";\n if (X(t, (r) => {\n let o;\n this.children.has(r.key) ? (o = this.children.get(r.key), i.set(r, o), this.unpop(o), o.present = !0) : (o = this.addChar(r, { startDigitsAtZero: !0, animateIn: !0 }), e.set(r, o)), this.el[a](o.el);\n }, { reverse: s }), this.flow.computedAnimated) {\n const r = this.el.getBoundingClientRect();\n e.forEach((o) => {\n o.willUpdate(r);\n });\n }\n e.forEach((r, o) => {\n r.update(o.value);\n }), i.forEach((r, o) => {\n r.update(o.value);\n });\n }\n willUpdate() {\n const t = this.el.getBoundingClientRect();\n this._prevOffset = t[this.justify], this.children.forEach((e) => e.willUpdate(t));\n }\n didUpdate() {\n const t = this.el.getBoundingClientRect();\n this.children.forEach((s) => s.didUpdate(t));\n const e = t[this.justify], i = this._prevOffset - e;\n i && this.children.size && this.el.animate({\n transform: [`translateX(${i}px)`, \"none\"]\n }, {\n ...this.flow.transformTiming,\n composite: \"accumulate\"\n });\n }\n}\nclass L extends W {\n update(t) {\n const e = /* @__PURE__ */ new Map();\n this.children.forEach((i, s) => {\n t.find((a) => a.key === s) || e.set(s, i), this.unpop(i);\n }), this.addNewAndUpdateExisting(t), e.forEach((i) => {\n i instanceof D && i.update(0);\n }), this.pop(e);\n }\n}\nclass N extends W {\n update(t) {\n const e = /* @__PURE__ */ new Map();\n this.children.forEach((i, s) => {\n t.find((a) => a.key === s) || e.set(s, i);\n }), this.pop(e), this.addNewAndUpdateExisting(t);\n }\n}\nclass R {\n constructor(t, e, { onRemove: i, animateIn: s = !1 } = {}) {\n this.flow = t, this.el = e, this._present = !0, this._remove = () => {\n var a;\n this.el.remove(), (a = this._onRemove) == null || a.call(this);\n }, this.el.classList.add(\"animate-presence\"), this.flow.computedAnimated && s && this.el.animate({\n [$]: [-0.9999, 0]\n }, {\n ...this.flow.opacityTiming,\n composite: \"accumulate\"\n }), this._onRemove = i;\n }\n get present() {\n return this._present;\n }\n set present(t) {\n if (this._present !== t) {\n if (this._present = t, t ? this.el.removeAttribute(\"inert\") : this.el.setAttribute(\"inert\", \"\"), !this.flow.computedAnimated) {\n t || this._remove();\n return;\n }\n this.el.style.setProperty(\"--_number-flow-d-opacity\", t ? \"0\" : \"-.999\"), this.el.animate({\n [$]: t ? [-0.9999, 0] : [0.999, 0]\n }, {\n ...this.flow.opacityTiming,\n composite: \"accumulate\"\n }), t ? this.flow.removeEventListener(\"animationsfinish\", this._remove) : this.flow.addEventListener(\"animationsfinish\", this._remove, {\n once: !0\n });\n }\n }\n}\nclass B extends R {\n constructor(t, e, i, s) {\n super(t.flow, i, s), this.section = t, this.value = e, this.el = i;\n }\n}\nclass D extends B {\n constructor(t, e, i, s, a) {\n var d, p;\n const r = (((p = (d = t.flow.digits) == null ? void 0 : d[s]) == null ? void 0 : p.max) ?? 9) + 1, o = Array.from({ length: r }).map((x, g) => {\n const y = u(\"span\", { className: \"digit__num\" }, [\n document.createTextNode(String(g))\n ]);\n return g !== i && y.setAttribute(\"inert\", \"\"), y.style.setProperty(\"--n\", String(g)), y;\n }), c = u(\"span\", {\n part: `digit ${e}-digit`,\n className: \"digit\"\n }, o);\n c.style.setProperty(\"--current\", String(i)), c.style.setProperty(\"--length\", String(r)), super(t, i, c, a), this.pos = s, this._onAnimationsFinish = () => {\n this.el.classList.remove(\"is-spinning\");\n }, this._numbers = o, this.length = r;\n }\n willUpdate(t) {\n const e = this.el.getBoundingClientRect();\n this._prevValue = this.value;\n const i = e[this.section.justify] - t[this.section.justify], s = e.width / 2;\n this._prevCenter = this.section.justify === \"left\" ? i + s : i - s;\n }\n update(t) {\n this.el.style.setProperty(\"--current\", String(t)), this._numbers.forEach((e, i) => i === t ? e.removeAttribute(\"inert\") : e.setAttribute(\"inert\", \"\")), this.value = t;\n }\n didUpdate(t) {\n const e = this.el.getBoundingClientRect(), i = e[this.section.justify] - t[this.section.justify], s = e.width / 2, a = this.section.justify === \"left\" ? i + s : i - s, r = this._prevCenter - a;\n r && this.el.animate({\n transform: [`translateX(${r}px)`, \"none\"]\n }, {\n ...this.flow.transformTiming,\n composite: \"accumulate\"\n });\n const o = this.getDelta();\n o && (this.el.classList.add(\"is-spinning\"), this.el.animate({\n [j]: [-o, 0]\n }, {\n ...this.flow.spinTiming ?? this.flow.transformTiming,\n composite: \"accumulate\"\n }), this.flow.addEventListener(\"animationsfinish\", this._onAnimationsFinish, { once: !0 }));\n }\n getDelta() {\n var i;\n if (this.flow.plugins)\n for (const s of this.flow.plugins) {\n const a = (i = s.getDelta) == null ? void 0 : i.call(s, this.value, this._prevValue, this);\n if (a != null)\n return a;\n }\n const t = this.value - this._prevValue, e = this.flow.computedTrend || Math.sign(t);\n return e < 0 && this.value > this._prevValue ? this.value - this.length - this._prevValue : e > 0 && this.value < this._prevValue ? this.length - this._prevValue + this.value : t;\n }\n}\nclass tt extends B {\n constructor(t, e, i, s) {\n const a = u(\"span\", {\n className: \"symbol__value\",\n textContent: i\n });\n super(t, i, u(\"span\", {\n part: `symbol ${e}`,\n className: \"symbol\"\n }, [a]), s), this.type = e, this._children = /* @__PURE__ */ new Map(), this._onChildRemove = (r) => () => {\n this._children.delete(r);\n }, this._children.set(i, new R(this.flow, a, {\n onRemove: this._onChildRemove(i)\n }));\n }\n willUpdate(t) {\n if (this.type === \"decimal\")\n return;\n const e = this.el.getBoundingClientRect();\n this._prevOffset = e[this.section.justify] - t[this.section.justify];\n }\n update(t) {\n if (this.value !== t) {\n const e = this._children.get(this.value);\n e && (e.present = !1);\n const i = this._children.get(t);\n if (i)\n i.present = !0;\n else {\n const s = u(\"span\", {\n className: \"symbol__value\",\n textContent: t\n });\n this.el.appendChild(s), this._children.set(t, new R(this.flow, s, {\n animateIn: !0,\n onRemove: this._onChildRemove(t)\n }));\n }\n }\n this.value = t;\n }\n didUpdate(t) {\n if (this.type === \"decimal\")\n return;\n const i = this.el.getBoundingClientRect()[this.section.justify] - t[this.section.justify], s = this._prevOffset - i;\n s && this.el.animate({\n transform: [`translateX(${s}px)`, \"none\"]\n }, { ...this.flow.transformTiming, composite: \"accumulate\" });\n }\n}\nexport {\n D,\n J as N,\n G as S,\n q as c,\n st as d,\n nt as f,\n A as p,\n at as r\n};\n","'use client';\nimport * as React from 'react';\nimport NumberFlowLite, { define, formatToData, renderInnerHTML } from 'number-flow/lite';\nimport { BROWSER } from 'esm-env';\n\nconst REACT_MAJOR = parseInt(React.version.match(/^(\\d+)\\./)?.[1]);\nconst isReact19 = REACT_MAJOR >= 19;\n// Can't wait to not have to do this in React 19:\nconst OBSERVED_ATTRIBUTES = [\n 'data',\n 'digits'\n];\nclass NumberFlowElement extends NumberFlowLite {\n attributeChangedCallback(attr, _oldValue, newValue) {\n this[attr] = JSON.parse(newValue);\n }\n}\nNumberFlowElement.observedAttributes = isReact19 ? [] : OBSERVED_ATTRIBUTES;\ndefine('number-flow-react', NumberFlowElement);\n// You're supposed to cache these between uses:\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString\n// Serialize to strings b/c React:\nconst formatters = {};\n// Tiny workaround to support React 19 until it's released:\nconst serialize = isReact19 ? (p)=>p : JSON.stringify;\nfunction splitProps(props) {\n const { transformTiming, spinTiming, opacityTiming, animated, respectMotionPreference, trend, plugins, ...rest } = props;\n return [\n {\n transformTiming,\n spinTiming,\n opacityTiming,\n animated,\n respectMotionPreference,\n trend,\n plugins\n },\n rest\n ];\n}\n// We need a class component to use getSnapshotBeforeUpdate:\nclass NumberFlowImpl extends React.Component {\n // Update the non-`data` props to avoid JSON serialization\n // Data needs to be set in render still:\n updateProperties(prevProps) {\n if (!this.el) return;\n this.el.batched = !this.props.isolate;\n const [nonData] = splitProps(this.props);\n Object.entries(nonData).forEach(([k, v])=>{\n // @ts-ignore\n this.el[k] = v ?? NumberFlowElement.defaultProps[k];\n });\n if (prevProps?.onAnimationsStart) this.el.removeEventListener('animationsstart', prevProps.onAnimationsStart);\n if (this.props.onAnimationsStart) this.el.addEventListener('animationsstart', this.props.onAnimationsStart);\n if (prevProps?.onAnimationsFinish) this.el.removeEventListener('animationsfinish', prevProps.onAnimationsFinish);\n if (this.props.onAnimationsFinish) this.el.addEventListener('animationsfinish', this.props.onAnimationsFinish);\n }\n componentDidMount() {\n this.updateProperties();\n if (isReact19 && this.el) {\n // React 19 needs this because the attributeChangedCallback isn't called:\n this.el.digits = this.props.digits;\n this.el.data = this.props.data;\n }\n }\n getSnapshotBeforeUpdate(prevProps) {\n this.updateProperties(prevProps);\n if (prevProps.data !== this.props.data) {\n if (this.props.group) {\n this.props.group.willUpdate();\n return ()=>this.props.group?.didUpdate();\n }\n if (!this.props.isolate) {\n this.el?.willUpdate();\n return ()=>this.el?.didUpdate();\n }\n }\n return null;\n }\n componentDidUpdate(_, __, didUpdate) {\n didUpdate?.();\n }\n handleRef(el) {\n if (this.props.innerRef) this.props.innerRef.current = el;\n this.el = el;\n }\n render() {\n const [_, { innerRef, className, data, willChange, isolate, group, digits, onAnimationsStart, onAnimationsFinish, ...rest }] = splitProps(this.props);\n return(// @ts-expect-error missing types\n /*#__PURE__*/ React.createElement(\"number-flow-react\", {\n ref: this.handleRef,\n \"data-will-change\": willChange ? '' : undefined,\n // Have to rename this:\n class: className,\n ...rest,\n dangerouslySetInnerHTML: {\n __html: BROWSER ? '' : renderInnerHTML(data)\n },\n suppressHydrationWarning: true,\n digits: serialize(digits),\n // Make sure data is set last, everything else is updated:\n data: serialize(data)\n }));\n }\n constructor(props){\n super(props);\n this.handleRef = this.handleRef.bind(this);\n }\n}\nconst NumberFlow = /*#__PURE__*/ React.forwardRef(function NumberFlow({ value, locales, format, prefix, suffix, ...props }, _ref) {\n React.useImperativeHandle(_ref, ()=>ref.current, []);\n const ref = React.useRef();\n const group = React.useContext(NumberFlowGroupContext);\n group?.useRegister(ref);\n const localesString = React.useMemo(()=>locales ? JSON.stringify(locales) : '', [\n locales\n ]);\n const formatString = React.useMemo(()=>format ? JSON.stringify(format) : '', [\n format\n ]);\n const data = React.useMemo(()=>{\n const formatter = formatters[`${localesString}:${formatString}`] ??= new Intl.NumberFormat(locales, format);\n return formatToData(value, formatter, prefix, suffix);\n }, [\n value,\n localesString,\n formatString,\n prefix,\n suffix\n ]);\n return /*#__PURE__*/ React.createElement(NumberFlowImpl, {\n ...props,\n group: group,\n data: data,\n innerRef: ref\n });\n});\nconst NumberFlowGroupContext = /*#__PURE__*/ React.createContext(undefined);\nfunction NumberFlowGroup({ children }) {\n const flows = React.useRef(new Set());\n const updating = React.useRef(false);\n const pending = React.useRef(new WeakMap());\n const value = React.useMemo(()=>({\n useRegister (ref) {\n React.useEffect(()=>{\n flows.current.add(ref);\n return ()=>{\n flows.current.delete(ref);\n };\n }, []);\n },\n willUpdate () {\n if (updating.current) return;\n updating.current = true;\n flows.current.forEach((ref)=>{\n const f = ref.current;\n if (!f || !f.created) return;\n f.willUpdate();\n pending.current.set(f, true);\n });\n },\n didUpdate () {\n flows.current.forEach((ref)=>{\n const f = ref.current;\n if (!f || !pending.current.get(f)) return;\n f.didUpdate();\n pending.current.delete(f);\n });\n updating.current = false;\n }\n }), []);\n return /*#__PURE__*/ React.createElement(NumberFlowGroupContext.Provider, {\n value: value\n }, children);\n}\n\nexport { NumberFlow as N, NumberFlowElement as a, NumberFlowGroup as b };\n","import * as React from 'react';\nimport { canAnimate, prefersReducedMotion } from 'number-flow/lite';\nexport * from 'number-flow/plugins';\nexport { a as NumberFlowElement, b as NumberFlowGroup, N as default } from './NumberFlow-client-48rw3j0J.mjs';\n\nconst useIsSupported = ()=>React.useSyncExternalStore(()=>()=>{}, ()=>canAnimate, ()=>false);\nconst usePrefersReducedMotion = ()=>React.useSyncExternalStore((cb)=>{\n prefersReducedMotion?.addEventListener('change', cb);\n return ()=>prefersReducedMotion?.removeEventListener('change', cb);\n }, ()=>prefersReducedMotion.matches, ()=>false);\nfunction useCanAnimate({ respectMotionPreference = true } = {}) {\n const isSupported = useIsSupported();\n const reducedMotion = usePrefersReducedMotion();\n return isSupported && (!respectMotionPreference || !reducedMotion);\n}\n\nexport { useCanAnimate, useIsSupported, usePrefersReducedMotion };\n"],"names":["f","e","n","i","l","o","s","t","r","u","c","a","F","H","st","X","nt","p","h","x","g","y","C","T","V","O","z","A","$","U","S","j","Y","P","k","E","m","w","M","G","q","b","J","N","Q","L","W","D","tt","R","B","d","REACT_MAJOR","React.version","isReact19","OBSERVED_ATTRIBUTES","NumberFlowElement","NumberFlowLite","attr","_oldValue","newValue","define","formatters","serialize","splitProps","props","transformTiming","spinTiming","opacityTiming","animated","respectMotionPreference","trend","plugins","rest","NumberFlowImpl","React.Component","prevProps","nonData","v","_a","_","__","didUpdate","el","innerRef","className","data","willChange","isolate","group","digits","onAnimationsStart","onAnimationsFinish","React.createElement","NumberFlow","React.forwardRef","value","locales","format","prefix","suffix","_ref","React.useImperativeHandle","ref","React.useRef","React.useContext","NumberFlowGroupContext","localesString","React.useMemo","formatString","formatter","formatToData","React.createContext","NumberFlowGroup","children","flows","updating","pending","React.useEffect","useIsSupported","React.useSyncExternalStore","canAnimate","usePrefersReducedMotion","cb","prefersReducedMotion","useCanAnimate","isSupported","reducedMotion"],"mappings":"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","x_google_ignoreList":[0,1,2,3]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { ae as cA, j as t, am as y4, c as aA, e as hA, W as sA, b as mA, al as _5, ao as g1, az as $5, bj as A6, ah as g3, aR as r6, an as VA, aS as E3, aQ as F3, b1 as e6, ag as x3, aY as t6, aZ as C6, bk as n6, a_ as s6, a6 as H3, b2 as o6, s as E1, R as iA, b3 as l6, aj as a6, ak as i6, bl as B6, bm as b2, I as M3, B as v3, k as c6, bn as u6, A as f6, S as j2, Y as h6, O as l4, Q as Q6, ax as d6, ay as p6, L as U6 } from "./index-
|
|
2
|
-
import { I as w6, c as N3, u as g6, R as E6 } from "./index-
|
|
3
|
-
import { C as m3 } from "./copy-
|
|
4
|
-
import { a as F6 } from "./settings-
|
|
1
|
+
import { ae as cA, j as t, am as y4, c as aA, e as hA, W as sA, b as mA, al as _5, ao as g1, az as $5, bj as A6, ah as g3, aR as r6, an as VA, aS as E3, aQ as F3, b1 as e6, ag as x3, aY as t6, aZ as C6, bk as n6, a_ as s6, a6 as H3, b2 as o6, s as E1, R as iA, b3 as l6, aj as a6, ak as i6, bl as B6, bm as b2, I as M3, B as v3, k as c6, bn as u6, A as f6, S as j2, Y as h6, O as l4, Q as Q6, ax as d6, ay as p6, L as U6 } from "./index-BUxTXK58.mjs";
|
|
2
|
+
import { I as w6, c as N3, u as g6, R as E6 } from "./index-BaP7ZzBh.mjs";
|
|
3
|
+
import { C as m3 } from "./copy-o8CPkfOy.mjs";
|
|
4
|
+
import { a as F6 } from "./settings-DC22q-Jw.mjs";
|
|
5
5
|
var x6 = Object.freeze({
|
|
6
6
|
// See: https://github.com/twbs/bootstrap/blob/main/scss/mixins/_visually-hidden.scss
|
|
7
7
|
position: "absolute",
|
|
@@ -6059,7 +6059,7 @@ const Dr = ({ account: A, isLoading: r }) => {
|
|
|
6059
6059
|
] }) })
|
|
6060
6060
|
] }),
|
|
6061
6061
|
/* @__PURE__ */ t.jsxs(v3, { className: `min-w-[160px] dark:bg-black dark:text-white dark:hover:bg-black/90 ${l === "dark" && "bg-white text-black hover:bg-gray-50 dark:bg-white dark:text-black dark:hover:bg-gray-50/90"}`, onClick: O, children: [
|
|
6062
|
-
c ? /* @__PURE__ */ t.jsx(c6, {
|
|
6062
|
+
c ? /* @__PURE__ */ t.jsx(c6, { className: "!border-current/10 before:!bg-current", size: "sm" }) : /* @__PURE__ */ t.jsx(m3, {}),
|
|
6063
6063
|
!c && "Copy image"
|
|
6064
6064
|
] })
|
|
6065
6065
|
] }),
|
|
@@ -6117,4 +6117,4 @@ const Dr = ({ account: A, isLoading: r }) => {
|
|
|
6117
6117
|
export {
|
|
6118
6118
|
zr as default
|
|
6119
6119
|
};
|
|
6120
|
-
//# sourceMappingURL=index-
|
|
6120
|
+
//# sourceMappingURL=index-CbeWHLjc.mjs.map
|