zudoku 0.3.0-dev.67 → 0.3.0-dev.68

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.
Files changed (52) hide show
  1. package/dist/lib/components/context/ViewportAnchorContext.js +2 -1
  2. package/dist/lib/components/context/ViewportAnchorContext.js.map +1 -1
  3. package/dist/lib/plugins/markdown/Toc.js +2 -1
  4. package/dist/lib/plugins/markdown/Toc.js.map +1 -1
  5. package/dist/lib/plugins/openapi/StaggeredRender.js +3 -2
  6. package/dist/lib/plugins/openapi/StaggeredRender.js.map +1 -1
  7. package/dist/lib/plugins/openapi/playground/Playground.js +1 -1
  8. package/dist/lib/plugins/openapi/playground/Playground.js.map +1 -1
  9. package/dist/lib/plugins/openapi/playground/QueryParams.js +1 -1
  10. package/dist/lib/plugins/openapi/playground/QueryParams.js.map +1 -1
  11. package/dist/lib/util/requestIdle.d.ts +2 -0
  12. package/dist/lib/util/requestIdle.js +3 -0
  13. package/dist/lib/util/requestIdle.js.map +1 -0
  14. package/dist/lib/util/useScrollToAnchor.js +3 -2
  15. package/dist/lib/util/useScrollToAnchor.js.map +1 -1
  16. package/lib/{AnchorLink-C_pYhuZi.js → AnchorLink-61IZfWrS.js} +2 -2
  17. package/lib/{AnchorLink-C_pYhuZi.js.map → AnchorLink-61IZfWrS.js.map} +1 -1
  18. package/lib/{CategoryHeading-D5Q-X6lE.js → CategoryHeading-aW8CL0KA.js} +2 -2
  19. package/lib/{CategoryHeading-D5Q-X6lE.js.map → CategoryHeading-aW8CL0KA.js.map} +1 -1
  20. package/lib/{Combination-Cq0UkOXq.js → Combination-BbWKjDLe.js} +2 -2
  21. package/lib/{Combination-Cq0UkOXq.js.map → Combination-BbWKjDLe.js.map} +1 -1
  22. package/lib/{Input-DdAxw3vC.js → Input-BY0B_0qy.js} +3 -3
  23. package/lib/{Input-DdAxw3vC.js.map → Input-BY0B_0qy.js.map} +1 -1
  24. package/lib/{Markdown-DsCvZnhw.js → Markdown-BO5EsS-C.js} +748 -746
  25. package/lib/Markdown-BO5EsS-C.js.map +1 -0
  26. package/lib/{MdxPage-B_7x36CA.js → MdxPage-DEfyHwSx.js} +28 -28
  27. package/lib/MdxPage-DEfyHwSx.js.map +1 -0
  28. package/lib/{OperationList-C1YlOjB7.js → OperationList-VK1_1rzp.js} +10 -9
  29. package/lib/{OperationList-C1YlOjB7.js.map → OperationList-VK1_1rzp.js.map} +1 -1
  30. package/lib/{Spinner-DyDcSKPz.js → Spinner-6NfpF1CA.js} +56 -56
  31. package/lib/Spinner-6NfpF1CA.js.map +1 -0
  32. package/lib/{hook-Cz5jddRs.js → hook-gOGk1OUF.js} +4 -4
  33. package/lib/{hook-Cz5jddRs.js.map → hook-gOGk1OUF.js.map} +1 -1
  34. package/lib/{index-3RQC9Hni.js → index-7W7DUZbY.js} +4 -4
  35. package/lib/{index-3RQC9Hni.js.map → index-7W7DUZbY.js.map} +1 -1
  36. package/lib/zudoku.components.js +351 -351
  37. package/lib/zudoku.components.js.map +1 -1
  38. package/lib/zudoku.plugin-api-keys.js +4 -4
  39. package/lib/zudoku.plugin-custom-page.js +1 -1
  40. package/lib/zudoku.plugin-markdown.js +1 -1
  41. package/lib/zudoku.plugin-openapi.js +2 -2
  42. package/package.json +1 -1
  43. package/src/lib/components/context/ViewportAnchorContext.tsx +2 -1
  44. package/src/lib/plugins/markdown/Toc.tsx +2 -1
  45. package/src/lib/plugins/openapi/StaggeredRender.tsx +3 -2
  46. package/src/lib/plugins/openapi/playground/Playground.tsx +2 -1
  47. package/src/lib/plugins/openapi/playground/QueryParams.tsx +1 -3
  48. package/src/lib/util/requestIdle.ts +4 -0
  49. package/src/lib/util/useScrollToAnchor.ts +3 -2
  50. package/lib/Markdown-DsCvZnhw.js.map +0 -1
  51. package/lib/MdxPage-B_7x36CA.js.map +0 -1
  52. package/lib/Spinner-DyDcSKPz.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"MdxPage-B_7x36CA.js","sources":["../../../node_modules/.pnpm/lucide-react@0.378.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/list-tree.js","../src/lib/plugins/markdown/Toc.tsx","../src/lib/plugins/markdown/MdxPage.tsx"],"sourcesContent":["/**\n * @license lucide-react v0.378.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst ListTree = createLucideIcon(\"ListTree\", [\n [\"path\", { d: \"M21 12h-8\", key: \"1bmf0i\" }],\n [\"path\", { d: \"M21 6H8\", key: \"1pqkrb\" }],\n [\"path\", { d: \"M21 18h-8\", key: \"1tm79t\" }],\n [\"path\", { d: \"M3 6v4c0 1.1.9 2 2 2h3\", key: \"1ywdgy\" }],\n [\"path\", { d: \"M3 10v6c0 1.1.9 2 2 2h3\", key: \"2wc746\" }]\n]);\n\nexport { ListTree as default };\n//# sourceMappingURL=list-tree.js.map\n","import type { TocEntry } from \"@stefanprobst/rehype-extract-toc\";\nimport { ListTreeIcon } from \"lucide-react\";\nimport {\n useEffect,\n useRef,\n useState,\n type CSSProperties,\n type PropsWithChildren,\n} from \"react\";\nimport { AnchorLink } from \"../../components/AnchorLink.js\";\nimport { useViewportAnchor } from \"../../components/context/ViewportAnchorContext.js\";\nimport { cn } from \"../../util/cn.js\";\n\nconst DATA_ANCHOR_ATTR = \"data-active\";\n\nconst TocItem = ({\n item,\n children,\n className,\n isActive,\n}: PropsWithChildren<{\n item: TocEntry;\n isActive: boolean;\n className?: string;\n}>) => {\n return (\n <li\n className={cn(\n \"truncate\",\n isActive\n ? \"text-primary\"\n : \"text-foreground/65 dark:text-foreground/75\",\n className,\n )}\n title={item.value}\n >\n <AnchorLink\n to={`#${item.id}`}\n {...{ [DATA_ANCHOR_ATTR]: item.id }}\n className={cn(\n isActive\n ? \"text-primary\"\n : \"text-foreground/65 dark:text-foreground/75 hover:text-foreground\",\n )}\n >\n {item.value}\n </AnchorLink>\n {children}\n </li>\n );\n};\n\nexport const Toc = ({ entries }: { entries: TocEntry[] }) => {\n const { activeAnchor } = useViewportAnchor();\n const listWrapperRef = useRef<HTMLUListElement>(null);\n const paintedOnce = useRef(false);\n const [indicatorStyle, setIndicatorStyles] = useState<CSSProperties>({\n top: 0,\n opacity: 0,\n });\n\n // synchronize active anchor indicator with the scroll position\n useEffect(() => {\n if (!listWrapperRef.current) return;\n\n const activeElement = listWrapperRef.current.querySelector(\n `[${DATA_ANCHOR_ATTR}='${activeAnchor}']`,\n );\n\n if (!activeElement) {\n setIndicatorStyles({ top: 0, opacity: 0 });\n return;\n }\n\n const topParent = listWrapperRef.current.getBoundingClientRect().top;\n const topElement = activeElement.getBoundingClientRect().top;\n\n setIndicatorStyles({\n opacity: 1,\n top: `${topElement - topParent}px`,\n });\n\n if (paintedOnce.current) return;\n\n // after all is painted, the indicator should animate\n requestIdleCallback(() => {\n paintedOnce.current = true;\n });\n }, [activeAnchor]);\n\n return (\n <aside className=\"sticky top-[--header-height] h-[calc(100vh-var(--header-height))] pt-[--padding-content-top] pb-[--padding-content-bottom] overflow-y-auto ps-1 text-sm\">\n <div className=\"flex items-center gap-2 font-medium mb-2\">\n <ListTreeIcon size={16} />\n On this page\n </div>\n <div className=\"relative ms-2 ps-4\">\n <div className=\"absolute inset-0 right-auto bg-border w-[2px]\" />\n <div\n className={cn(\n \"absolute -left-px -translate-y-1 h-6 w-[4px] rounded bg-primary\",\n paintedOnce.current &&\n \"ease-out [transition:top_150ms,opacity_325ms]\",\n )}\n style={indicatorStyle}\n />\n <ul\n ref={listWrapperRef}\n className=\"relative font-medium list-none space-y-2\"\n >\n {entries.map((item) => (\n <TocItem\n isActive={item.id === activeAnchor}\n key={item.id}\n item={item}\n className=\"pl-0\"\n >\n {item.children && (\n <ul className=\"list-none pl-4 pt-2 space-y-2\">\n {item.children.map((child) => (\n <TocItem\n item={child}\n isActive={child.id === activeAnchor}\n key={child.id}\n />\n ))}\n </ul>\n )}\n </TocItem>\n ))}\n </ul>\n </div>\n </aside>\n );\n};\n","import { useMDXComponents } from \"@mdx-js/react\";\nimport { Helmet } from \"@zudoku/react-helmet-async\";\nimport { useMemo, type PropsWithChildren, type ReactNode } from \"react\";\nimport { Link, useLocation } from \"react-router-dom\";\nimport { CategoryHeading } from \"../../components/CategoryHeading.js\";\nimport { Heading } from \"../../components/Heading.js\";\nimport { ProseClasses } from \"../../components/Markdown.js\";\nimport { useTopNavigationItem } from \"../../components/context/DevPortalProvider.js\";\nimport { isPathItem } from \"../../components/navigation/util.js\";\nimport type { MdxComponentsType } from \"../../util/MdxComponents.js\";\nimport { cn } from \"../../util/cn.js\";\nimport slugify from \"../../util/slugify.js\";\nimport { traverseNavigation } from \"../../util/traverseNavigation.js\";\nimport { Toc } from \"./Toc.js\";\nimport { MarkdownPluginDefaultOptions, MDXImport } from \"./index.js\";\n\nconst MarkdownHeadings = {\n h2: ({ children, id }) => (\n <Heading level={2} id={id} registerSidebarAnchor>\n {children}\n </Heading>\n ),\n h3: ({ children, id }) => (\n <Heading level={3} id={id} registerSidebarAnchor>\n {\" \"}\n {children}\n </Heading>\n ),\n} satisfies MdxComponentsType;\n\nexport const MdxPage = ({\n mdxComponent: MdxComponent,\n frontmatter = {},\n defaultOptions,\n tableOfContents,\n}: PropsWithChildren<\n Omit<MDXImport, \"default\"> & {\n mdxComponent: MDXImport[\"default\"];\n defaultOptions?: MarkdownPluginDefaultOptions;\n }\n>) => {\n const navItem = useTopNavigationItem();\n const location = useLocation();\n\n const categoryTitle = navItem\n ? traverseNavigation(navItem, (_node, fullPath, parentNodes) => {\n if (fullPath === location.pathname) {\n return parentNodes.at(0)?.label;\n }\n })\n : undefined;\n\n const title = frontmatter.title;\n const category = frontmatter.category ?? categoryTitle;\n const hideToc = frontmatter.toc === false || defaultOptions?.toc === false;\n const pageTitle =\n tableOfContents.find((item) => item.depth === 1)?.value ?? title;\n const hidePager =\n frontmatter.disablePager ?? defaultOptions?.disablePager ?? false;\n\n const tocEntries =\n tableOfContents.find((item) => item.depth === 1)?.children ??\n // if `title` is provided by frontmatter it does not appear in the table of contents\n tableOfContents.filter((item) => item.depth === 2);\n\n const showToc = !hideToc && tocEntries.length > 0;\n\n const { prev, next } = useMemo(() => {\n let prev = { path: \"\", label: \"\" as ReactNode };\n let next = { path: \"\", label: \"\" as ReactNode };\n let shouldStop = false;\n\n if (!navItem) return { prev, next };\n\n traverseNavigation(navItem, (node, fullPath) => {\n const item = { path: fullPath, label: node.label };\n\n if (shouldStop && isPathItem(node) && !node.children?.length) {\n next = item;\n return true;\n }\n if (fullPath === location.pathname) {\n shouldStop = true;\n }\n if (!shouldStop && isPathItem(node) && !node.children?.length) {\n prev = item;\n }\n });\n\n return { prev, next } as const;\n }, [navItem, location.pathname]);\n\n return (\n <div className=\"xl:grid grid-cols-[--sidecar-grid-cols] gap-8 justify-between\">\n <Helmet>\n <title>{pageTitle}</title>\n </Helmet>\n <div\n className={cn(\n ProseClasses,\n \"max-w-full xl:w-full xl:max-w-prose flex-1 flex-shrink pt-[--padding-content-top] pb-[--padding-content-bottom]\",\n )}\n >\n <header>\n {category && <CategoryHeading>{category}</CategoryHeading>}\n {title && (\n <Heading level={1} id={slugify(title, { lower: true })}>\n {title}\n </Heading>\n )}\n {frontmatter.description && (\n <p className=\"prose-lg\">{frontmatter.description}</p>\n )}\n </header>\n <MdxComponent\n components={{ ...useMDXComponents(), ...MarkdownHeadings }}\n />\n {!hidePager && (\n <>\n <hr />\n <div className=\"not-prose flex items-center justify-between gap-8\">\n {prev.path ? (\n <Link\n to={prev.path}\n className=\"flex flex-col items-stretch gap-2 flex-1 truncate border rounded px-6 py-4 text-start hover:border-primary/85 transition shadow-sm hover:shadow-md\"\n title={\n typeof prev.label === \"string\" ? prev.label : undefined\n }\n >\n <div className=\"text-sm text-muted-foreground\">\n ← Previous page\n </div>\n <div className=\"text-lg text-primary truncate\">\n {prev.label}\n </div>\n </Link>\n ) : (\n <div className=\"flex-1\" />\n )}\n {next.path ? (\n <Link\n to={next.path}\n className=\"flex flex-col items-stretch gap-2 flex-1 truncate border rounded px-6 py-4 text-end hover:border-primary/85 transition shadow-sm hover:shadow-md\"\n title={\n typeof next.label === \"string\" ? next.label : undefined\n }\n >\n <div className=\"text-sm text-muted-foreground\">\n Next page →\n </div>\n <div className=\"text-lg text-primary truncate\">\n {next.label}\n </div>\n </Link>\n ) : (\n <div className=\"flex-1\" />\n )}\n </div>\n </>\n )}\n </div>\n <div className=\"hidden xl:block\">\n {showToc && <Toc entries={tocEntries} />}\n </div>\n </div>\n );\n};\n"],"names":["ListTree","createLucideIcon","DATA_ANCHOR_ATTR","TocItem","item","children","className","isActive","jsxs","cn","jsx","AnchorLink","Toc","entries","activeAnchor","useViewportAnchor","listWrapperRef","useRef","paintedOnce","indicatorStyle","setIndicatorStyles","useState","useEffect","activeElement","topParent","topElement","ListTreeIcon","child","MarkdownHeadings","id","Heading","MdxPage","MdxComponent","frontmatter","defaultOptions","tableOfContents","navItem","useTopNavigationItem","location","useLocation","categoryTitle","traverseNavigation","_node","fullPath","parentNodes","_a","title","category","hideToc","pageTitle","hidePager","tocEntries","_b","showToc","prev","next","useMemo","shouldStop","node","isPathItem","Helmet","ProseClasses","CategoryHeading","slugify","useMDXComponents","Fragment","Link"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Spinner-DyDcSKPz.js","sources":["../../../node_modules/.pnpm/lucide-react@0.378.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/loader-circle.js","../src/lib/plugins/openapi/StaggeredRender.tsx","../../../node_modules/.pnpm/@radix-ui+react-presence@1.1.0_@types+react-dom@18.3.0_@types+react@18.3.3_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@radix-ui/react-presence/dist/index.mjs","../../../node_modules/.pnpm/@radix-ui+react-roving-focus@1.1.0_@types+react-dom@18.3.0_@types+react@18.3.3_react-dom@18.3_c7p7fyahj7jvpuxrqgc7mv7csa/node_modules/@radix-ui/react-roving-focus/dist/index.mjs","../../../node_modules/.pnpm/@radix-ui+react-collapsible@1.1.0_@types+react-dom@18.3.0_@types+react@18.3.3_react-dom@18.3._qjsk5diswkeszbepgt4ntypuku/node_modules/@radix-ui/react-collapsible/dist/index.mjs","../src/lib/components/Spinner.tsx"],"sourcesContent":["/**\n * @license lucide-react v0.378.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst LoaderCircle = createLucideIcon(\"LoaderCircle\", [\n [\"path\", { d: \"M21 12a9 9 0 1 1-6.219-8.56\", key: \"13zald\" }]\n]);\n\nexport { LoaderCircle as default };\n//# sourceMappingURL=loader-circle.js.map\n","import {\n Children,\n createContext,\n ReactNode,\n useContext,\n useEffect,\n useState,\n} from \"react\";\n\nexport const StaggeredRenderContext = createContext({ stagger: false });\n\nconst StaggeredRender = ({ children }: { children: ReactNode[] }) => {\n const { stagger } = useContext(StaggeredRenderContext);\n const [renderAll, setRenderAll] = useState(!stagger);\n\n useEffect(() => {\n if (renderAll) {\n return;\n }\n\n const x = window.requestIdleCallback(() => {\n setRenderAll(true);\n });\n\n return () => window.cancelIdleCallback(x);\n }, [renderAll]);\n\n return !renderAll ? Children.toArray(children).slice(0, 3) : children;\n};\n\nexport default StaggeredRender;\n","\"use client\";\n\n// packages/react/presence/src/Presence.tsx\nimport * as React2 from \"react\";\nimport * as ReactDOM from \"react-dom\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\n\n// packages/react/presence/src/useStateMachine.tsx\nimport * as React from \"react\";\nfunction useStateMachine(initialState, machine) {\n return React.useReducer((state, event) => {\n const nextState = machine[state][event];\n return nextState ?? state;\n }, initialState);\n}\n\n// packages/react/presence/src/Presence.tsx\nvar Presence = (props) => {\n const { present, children } = props;\n const presence = usePresence(present);\n const child = typeof children === \"function\" ? children({ present: presence.isPresent }) : React2.Children.only(children);\n const ref = useComposedRefs(presence.ref, getElementRef(child));\n const forceMount = typeof children === \"function\";\n return forceMount || presence.isPresent ? React2.cloneElement(child, { ref }) : null;\n};\nPresence.displayName = \"Presence\";\nfunction usePresence(present) {\n const [node, setNode] = React2.useState();\n const stylesRef = React2.useRef({});\n const prevPresentRef = React2.useRef(present);\n const prevAnimationNameRef = React2.useRef(\"none\");\n const initialState = present ? \"mounted\" : \"unmounted\";\n const [state, send] = useStateMachine(initialState, {\n mounted: {\n UNMOUNT: \"unmounted\",\n ANIMATION_OUT: \"unmountSuspended\"\n },\n unmountSuspended: {\n MOUNT: \"mounted\",\n ANIMATION_END: \"unmounted\"\n },\n unmounted: {\n MOUNT: \"mounted\"\n }\n });\n React2.useEffect(() => {\n const currentAnimationName = getAnimationName(stylesRef.current);\n prevAnimationNameRef.current = state === \"mounted\" ? currentAnimationName : \"none\";\n }, [state]);\n useLayoutEffect(() => {\n const styles = stylesRef.current;\n const wasPresent = prevPresentRef.current;\n const hasPresentChanged = wasPresent !== present;\n if (hasPresentChanged) {\n const prevAnimationName = prevAnimationNameRef.current;\n const currentAnimationName = getAnimationName(styles);\n if (present) {\n send(\"MOUNT\");\n } else if (currentAnimationName === \"none\" || styles?.display === \"none\") {\n send(\"UNMOUNT\");\n } else {\n const isAnimating = prevAnimationName !== currentAnimationName;\n if (wasPresent && isAnimating) {\n send(\"ANIMATION_OUT\");\n } else {\n send(\"UNMOUNT\");\n }\n }\n prevPresentRef.current = present;\n }\n }, [present, send]);\n useLayoutEffect(() => {\n if (node) {\n const handleAnimationEnd = (event) => {\n const currentAnimationName = getAnimationName(stylesRef.current);\n const isCurrentAnimation = currentAnimationName.includes(event.animationName);\n if (event.target === node && isCurrentAnimation) {\n ReactDOM.flushSync(() => send(\"ANIMATION_END\"));\n }\n };\n const handleAnimationStart = (event) => {\n if (event.target === node) {\n prevAnimationNameRef.current = getAnimationName(stylesRef.current);\n }\n };\n node.addEventListener(\"animationstart\", handleAnimationStart);\n node.addEventListener(\"animationcancel\", handleAnimationEnd);\n node.addEventListener(\"animationend\", handleAnimationEnd);\n return () => {\n node.removeEventListener(\"animationstart\", handleAnimationStart);\n node.removeEventListener(\"animationcancel\", handleAnimationEnd);\n node.removeEventListener(\"animationend\", handleAnimationEnd);\n };\n } else {\n send(\"ANIMATION_END\");\n }\n }, [node, send]);\n return {\n isPresent: [\"mounted\", \"unmountSuspended\"].includes(state),\n ref: React2.useCallback((node2) => {\n if (node2) stylesRef.current = getComputedStyle(node2);\n setNode(node2);\n }, [])\n };\n}\nfunction getAnimationName(styles) {\n return styles?.animationName || \"none\";\n}\nfunction getElementRef(element) {\n let getter = Object.getOwnPropertyDescriptor(element.props, \"ref\")?.get;\n let mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.ref;\n }\n getter = Object.getOwnPropertyDescriptor(element, \"ref\")?.get;\n mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.props.ref;\n }\n return element.props.ref || element.ref;\n}\nexport {\n Presence\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// packages/react/roving-focus/src/RovingFocusGroup.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 = null, setCurrentTabStopId] = useControllableState({\n prop: currentTabStopIdProp,\n defaultProp: defaultCurrentTabStopId,\n onChange: onCurrentTabStopIdChange\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 ...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 } = 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 }\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","\"use client\";\n\n// packages/react/collapsible/src/Collapsible.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { jsx } from \"react/jsx-runtime\";\nvar COLLAPSIBLE_NAME = \"Collapsible\";\nvar [createCollapsibleContext, createCollapsibleScope] = createContextScope(COLLAPSIBLE_NAME);\nvar [CollapsibleProvider, useCollapsibleContext] = createCollapsibleContext(COLLAPSIBLE_NAME);\nvar Collapsible = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeCollapsible,\n open: openProp,\n defaultOpen,\n disabled,\n onOpenChange,\n ...collapsibleProps\n } = props;\n const [open = false, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen,\n onChange: onOpenChange\n });\n return /* @__PURE__ */ jsx(\n CollapsibleProvider,\n {\n scope: __scopeCollapsible,\n disabled,\n contentId: useId(),\n open,\n onOpenToggle: React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": getState(open),\n \"data-disabled\": disabled ? \"\" : void 0,\n ...collapsibleProps,\n ref: forwardedRef\n }\n )\n }\n );\n }\n);\nCollapsible.displayName = COLLAPSIBLE_NAME;\nvar TRIGGER_NAME = \"CollapsibleTrigger\";\nvar CollapsibleTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeCollapsible, ...triggerProps } = props;\n const context = useCollapsibleContext(TRIGGER_NAME, __scopeCollapsible);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n \"aria-controls\": context.contentId,\n \"aria-expanded\": context.open || false,\n \"data-state\": getState(context.open),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n disabled: context.disabled,\n ...triggerProps,\n ref: forwardedRef,\n onClick: composeEventHandlers(props.onClick, context.onOpenToggle)\n }\n );\n }\n);\nCollapsibleTrigger.displayName = TRIGGER_NAME;\nvar CONTENT_NAME = \"CollapsibleContent\";\nvar CollapsibleContent = React.forwardRef(\n (props, forwardedRef) => {\n const { forceMount, ...contentProps } = props;\n const context = useCollapsibleContext(CONTENT_NAME, props.__scopeCollapsible);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: ({ present }) => /* @__PURE__ */ jsx(CollapsibleContentImpl, { ...contentProps, ref: forwardedRef, present }) });\n }\n);\nCollapsibleContent.displayName = CONTENT_NAME;\nvar CollapsibleContentImpl = React.forwardRef((props, forwardedRef) => {\n const { __scopeCollapsible, present, children, ...contentProps } = props;\n const context = useCollapsibleContext(CONTENT_NAME, __scopeCollapsible);\n const [isPresent, setIsPresent] = React.useState(present);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const heightRef = React.useRef(0);\n const height = heightRef.current;\n const widthRef = React.useRef(0);\n const width = widthRef.current;\n const isOpen = context.open || isPresent;\n const isMountAnimationPreventedRef = React.useRef(isOpen);\n const originalStylesRef = React.useRef();\n React.useEffect(() => {\n const rAF = requestAnimationFrame(() => isMountAnimationPreventedRef.current = false);\n return () => cancelAnimationFrame(rAF);\n }, []);\n useLayoutEffect(() => {\n const node = ref.current;\n if (node) {\n originalStylesRef.current = originalStylesRef.current || {\n transitionDuration: node.style.transitionDuration,\n animationName: node.style.animationName\n };\n node.style.transitionDuration = \"0s\";\n node.style.animationName = \"none\";\n const rect = node.getBoundingClientRect();\n heightRef.current = rect.height;\n widthRef.current = rect.width;\n if (!isMountAnimationPreventedRef.current) {\n node.style.transitionDuration = originalStylesRef.current.transitionDuration;\n node.style.animationName = originalStylesRef.current.animationName;\n }\n setIsPresent(present);\n }\n }, [context.open, present]);\n return /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": getState(context.open),\n \"data-disabled\": context.disabled ? \"\" : void 0,\n id: context.contentId,\n hidden: !isOpen,\n ...contentProps,\n ref: composedRefs,\n style: {\n [`--radix-collapsible-content-height`]: height ? `${height}px` : void 0,\n [`--radix-collapsible-content-width`]: width ? `${width}px` : void 0,\n ...props.style\n },\n children: isOpen && children\n }\n );\n});\nfunction getState(open) {\n return open ? \"open\" : \"closed\";\n}\nvar Root = Collapsible;\nvar Trigger = CollapsibleTrigger;\nvar Content = CollapsibleContent;\nexport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n Content,\n Root,\n Trigger,\n createCollapsibleScope\n};\n//# sourceMappingURL=index.mjs.map\n","import { LoaderCircle } from \"lucide-react\";\n\nexport const Spinner = ({ size = 16 }: { size?: number }) => (\n <LoaderCircle size={size} className=\"animate-spin\" />\n);\n"],"names":["LoaderCircle","createLucideIcon","StaggeredRenderContext","createContext","StaggeredRender","children","stagger","useContext","renderAll","setRenderAll","useState","useEffect","x","Children","useStateMachine","initialState","machine","React","state","event","Presence","props","present","presence","usePresence","child","React2","ref","useComposedRefs","getElementRef","node","setNode","stylesRef","prevPresentRef","prevAnimationNameRef","send","currentAnimationName","getAnimationName","useLayoutEffect","styles","wasPresent","prevAnimationName","handleAnimationEnd","isCurrentAnimation","ReactDOM","handleAnimationStart","node2","element","getter","_a","mayWarn","_b","ENTRY_FOCUS","EVENT_OPTIONS","GROUP_NAME","Collection","useCollection","createCollectionScope","createCollection","createRovingFocusGroupContext","createRovingFocusGroupScope","createContextScope","RovingFocusProvider","useRovingFocusContext","RovingFocusGroup","forwardedRef","jsx","RovingFocusGroupImpl","__scopeRovingFocusGroup","orientation","loop","dir","currentTabStopIdProp","defaultCurrentTabStopId","onCurrentTabStopIdChange","onEntryFocus","preventScrollOnEntryFocus","groupProps","composedRefs","direction","useDirection","currentTabStopId","setCurrentTabStopId","useControllableState","isTabbingBackOut","setIsTabbingBackOut","handleEntryFocus","useCallbackRef","getItems","isClickFocusRef","focusableItemsCount","setFocusableItemsCount","tabStopId","prevCount","Primitive","composeEventHandlers","isKeyboardFocus","entryFocusEvent","items","item","activeItem","currentItem","candidateNodes","focusFirst","ITEM_NAME","RovingFocusGroupItem","focusable","active","itemProps","autoId","useId","id","context","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","COLLAPSIBLE_NAME","createCollapsibleContext","createCollapsibleScope","CollapsibleProvider","useCollapsibleContext","Collapsible","__scopeCollapsible","openProp","defaultOpen","disabled","onOpenChange","collapsibleProps","open","setOpen","prevOpen","getState","TRIGGER_NAME","CollapsibleTrigger","triggerProps","CONTENT_NAME","CollapsibleContent","forceMount","contentProps","CollapsibleContentImpl","isPresent","setIsPresent","heightRef","height","widthRef","width","isOpen","isMountAnimationPreventedRef","originalStylesRef","rAF","rect","Trigger","Content","Spinner","size"],"mappings":"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","x_google_ignoreList":[0,2,3,4]}