dgz-ui 1.4.9 → 1.4.11

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 (92) hide show
  1. package/dist/accordion/index.cjs.js.map +1 -1
  2. package/dist/accordion/index.es.js.map +1 -1
  3. package/dist/styles.css +1 -1
  4. package/dist/types/main.d.ts.map +1 -1
  5. package/dist/types/stories/Accordion.stories.d.ts +17 -0
  6. package/dist/types/stories/Accordion.stories.d.ts.map +1 -0
  7. package/dist/types/stories/Alert.stories.d.ts +26 -0
  8. package/dist/types/stories/Alert.stories.d.ts.map +1 -0
  9. package/dist/types/stories/AlertDialog.stories.d.ts +18 -0
  10. package/dist/types/stories/AlertDialog.stories.d.ts.map +1 -0
  11. package/dist/types/stories/Avatar.stories.d.ts +27 -0
  12. package/dist/types/stories/Avatar.stories.d.ts.map +1 -0
  13. package/dist/types/stories/Badge.stories.d.ts +44 -0
  14. package/dist/types/stories/Badge.stories.d.ts.map +1 -0
  15. package/dist/types/stories/Breadcrumb.stories.d.ts +20 -0
  16. package/dist/types/stories/Breadcrumb.stories.d.ts.map +1 -0
  17. package/dist/types/stories/Button.stories.d.ts +28 -4
  18. package/dist/types/stories/Button.stories.d.ts.map +1 -1
  19. package/dist/types/stories/ButtonGroup.stories.d.ts +29 -0
  20. package/dist/types/stories/ButtonGroup.stories.d.ts.map +1 -0
  21. package/dist/types/stories/Calendar.stories.d.ts +35 -0
  22. package/dist/types/stories/Calendar.stories.d.ts.map +1 -0
  23. package/dist/types/stories/Card.stories.d.ts +17 -0
  24. package/dist/types/stories/Card.stories.d.ts.map +1 -0
  25. package/dist/types/stories/Carousel.stories.d.ts +23 -0
  26. package/dist/types/stories/Carousel.stories.d.ts.map +1 -0
  27. package/dist/types/stories/Checkbox.stories.d.ts +31 -0
  28. package/dist/types/stories/Checkbox.stories.d.ts.map +1 -0
  29. package/dist/types/stories/Collapsible.stories.d.ts +17 -0
  30. package/dist/types/stories/Collapsible.stories.d.ts.map +1 -0
  31. package/dist/types/stories/{Page.stories.d.ts → DatePicker.stories.d.ts} +5 -4
  32. package/dist/types/stories/DatePicker.stories.d.ts.map +1 -0
  33. package/dist/types/stories/Dialog.stories.d.ts +18 -0
  34. package/dist/types/stories/Dialog.stories.d.ts.map +1 -0
  35. package/dist/types/stories/DropdownMenu.stories.d.ts +17 -0
  36. package/dist/types/stories/DropdownMenu.stories.d.ts.map +1 -0
  37. package/dist/types/stories/FilepondContainer.stories.d.ts +21 -0
  38. package/dist/types/stories/FilepondContainer.stories.d.ts.map +1 -0
  39. package/dist/types/stories/Form.stories.d.ts +15 -0
  40. package/dist/types/stories/Form.stories.d.ts.map +1 -0
  41. package/dist/types/stories/HtmlEditor.stories.d.ts +27 -0
  42. package/dist/types/stories/HtmlEditor.stories.d.ts.map +1 -0
  43. package/dist/types/stories/Input.stories.d.ts +40 -0
  44. package/dist/types/stories/Input.stories.d.ts.map +1 -0
  45. package/dist/types/stories/Label.stories.d.ts +19 -0
  46. package/dist/types/stories/Label.stories.d.ts.map +1 -0
  47. package/dist/types/stories/MaskInput.stories.d.ts +115 -0
  48. package/dist/types/stories/MaskInput.stories.d.ts.map +1 -0
  49. package/dist/types/stories/Pagination.stories.d.ts +21 -0
  50. package/dist/types/stories/Pagination.stories.d.ts.map +1 -0
  51. package/dist/types/stories/Popover.stories.d.ts +17 -0
  52. package/dist/types/stories/Popover.stories.d.ts.map +1 -0
  53. package/dist/types/stories/Progress.stories.d.ts +33 -0
  54. package/dist/types/stories/Progress.stories.d.ts.map +1 -0
  55. package/dist/types/stories/RadioGroup.stories.d.ts +17 -0
  56. package/dist/types/stories/RadioGroup.stories.d.ts.map +1 -0
  57. package/dist/types/stories/ReactSelect.stories.d.ts +39 -0
  58. package/dist/types/stories/ReactSelect.stories.d.ts.map +1 -0
  59. package/dist/types/stories/ScrollArea.stories.d.ts +18 -0
  60. package/dist/types/stories/ScrollArea.stories.d.ts.map +1 -0
  61. package/dist/types/stories/Select.stories.d.ts +18 -0
  62. package/dist/types/stories/Select.stories.d.ts.map +1 -0
  63. package/dist/types/stories/Separator.stories.d.ts +28 -0
  64. package/dist/types/stories/Separator.stories.d.ts.map +1 -0
  65. package/dist/types/stories/Sheet.stories.d.ts +21 -0
  66. package/dist/types/stories/Sheet.stories.d.ts.map +1 -0
  67. package/dist/types/stories/Skeleton.stories.d.ts +22 -0
  68. package/dist/types/stories/Skeleton.stories.d.ts.map +1 -0
  69. package/dist/types/stories/Switch.stories.d.ts +29 -0
  70. package/dist/types/stories/Switch.stories.d.ts.map +1 -0
  71. package/dist/types/stories/Table.stories.d.ts +17 -0
  72. package/dist/types/stories/Table.stories.d.ts.map +1 -0
  73. package/dist/types/stories/Tabs.stories.d.ts +19 -0
  74. package/dist/types/stories/Tabs.stories.d.ts.map +1 -0
  75. package/dist/types/stories/Textarea.stories.d.ts +34 -0
  76. package/dist/types/stories/Textarea.stories.d.ts.map +1 -0
  77. package/dist/types/stories/TimePicker.stories.d.ts +33 -0
  78. package/dist/types/stories/TimePicker.stories.d.ts.map +1 -0
  79. package/dist/types/stories/Tooltip.stories.d.ts +27 -0
  80. package/dist/types/stories/Tooltip.stories.d.ts.map +1 -0
  81. package/dist/types/ui/accordion/accordion.d.ts +3 -1
  82. package/dist/types/ui/accordion/accordion.d.ts.map +1 -1
  83. package/package.json +1 -1
  84. package/dist/types/stories/Button.d.ts +0 -15
  85. package/dist/types/stories/Button.d.ts.map +0 -1
  86. package/dist/types/stories/Header.d.ts +0 -12
  87. package/dist/types/stories/Header.d.ts.map +0 -1
  88. package/dist/types/stories/Header.stories.d.ts +0 -19
  89. package/dist/types/stories/Header.stories.d.ts.map +0 -1
  90. package/dist/types/stories/Page.d.ts +0 -3
  91. package/dist/types/stories/Page.d.ts.map +0 -1
  92. package/dist/types/stories/Page.stories.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../../node_modules/@radix-ui/react-accordion/dist/index.mjs","../../src/ui/accordion/accordion.tsx"],"sourcesContent":["\"use client\";\n\n// src/accordion.tsx\nimport React from \"react\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport * as CollapsiblePrimitive from \"@radix-ui/react-collapsible\";\nimport { createCollapsibleScope } from \"@radix-ui/react-collapsible\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { jsx } from \"react/jsx-runtime\";\nvar ACCORDION_NAME = \"Accordion\";\nvar ACCORDION_KEYS = [\"Home\", \"End\", \"ArrowDown\", \"ArrowUp\", \"ArrowLeft\", \"ArrowRight\"];\nvar [Collection, useCollection, createCollectionScope] = createCollection(ACCORDION_NAME);\nvar [createAccordionContext, createAccordionScope] = createContextScope(ACCORDION_NAME, [\n createCollectionScope,\n createCollapsibleScope\n]);\nvar useCollapsibleScope = createCollapsibleScope();\nvar Accordion = React.forwardRef(\n (props, forwardedRef) => {\n const { type, ...accordionProps } = props;\n const singleProps = accordionProps;\n const multipleProps = accordionProps;\n return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeAccordion, children: type === \"multiple\" ? /* @__PURE__ */ jsx(AccordionImplMultiple, { ...multipleProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(AccordionImplSingle, { ...singleProps, ref: forwardedRef }) });\n }\n);\nAccordion.displayName = ACCORDION_NAME;\nvar [AccordionValueProvider, useAccordionValueContext] = createAccordionContext(ACCORDION_NAME);\nvar [AccordionCollapsibleProvider, useAccordionCollapsibleContext] = createAccordionContext(\n ACCORDION_NAME,\n { collapsible: false }\n);\nvar AccordionImplSingle = React.forwardRef(\n (props, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {\n },\n collapsible = false,\n ...accordionSingleProps\n } = props;\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue ?? \"\",\n onChange: onValueChange,\n caller: ACCORDION_NAME\n });\n return /* @__PURE__ */ jsx(\n AccordionValueProvider,\n {\n scope: props.__scopeAccordion,\n value: React.useMemo(() => value ? [value] : [], [value]),\n onItemOpen: setValue,\n onItemClose: React.useCallback(() => collapsible && setValue(\"\"), [collapsible, setValue]),\n children: /* @__PURE__ */ jsx(AccordionCollapsibleProvider, { scope: props.__scopeAccordion, collapsible, children: /* @__PURE__ */ jsx(AccordionImpl, { ...accordionSingleProps, ref: forwardedRef }) })\n }\n );\n }\n);\nvar AccordionImplMultiple = React.forwardRef((props, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {\n },\n ...accordionMultipleProps\n } = props;\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue ?? [],\n onChange: onValueChange,\n caller: ACCORDION_NAME\n });\n const handleItemOpen = React.useCallback(\n (itemValue) => setValue((prevValue = []) => [...prevValue, itemValue]),\n [setValue]\n );\n const handleItemClose = React.useCallback(\n (itemValue) => setValue((prevValue = []) => prevValue.filter((value2) => value2 !== itemValue)),\n [setValue]\n );\n return /* @__PURE__ */ jsx(\n AccordionValueProvider,\n {\n scope: props.__scopeAccordion,\n value,\n onItemOpen: handleItemOpen,\n onItemClose: handleItemClose,\n children: /* @__PURE__ */ jsx(AccordionCollapsibleProvider, { scope: props.__scopeAccordion, collapsible: true, children: /* @__PURE__ */ jsx(AccordionImpl, { ...accordionMultipleProps, ref: forwardedRef }) })\n }\n );\n});\nvar [AccordionImplProvider, useAccordionContext] = createAccordionContext(ACCORDION_NAME);\nvar AccordionImpl = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, disabled, dir, orientation = \"vertical\", ...accordionProps } = props;\n const accordionRef = React.useRef(null);\n const composedRefs = useComposedRefs(accordionRef, forwardedRef);\n const getItems = useCollection(__scopeAccordion);\n const direction = useDirection(dir);\n const isDirectionLTR = direction === \"ltr\";\n const handleKeyDown = composeEventHandlers(props.onKeyDown, (event) => {\n if (!ACCORDION_KEYS.includes(event.key)) return;\n const target = event.target;\n const triggerCollection = getItems().filter((item) => !item.ref.current?.disabled);\n const triggerIndex = triggerCollection.findIndex((item) => item.ref.current === target);\n const triggerCount = triggerCollection.length;\n if (triggerIndex === -1) return;\n event.preventDefault();\n let nextIndex = triggerIndex;\n const homeIndex = 0;\n const endIndex = triggerCount - 1;\n const moveNext = () => {\n nextIndex = triggerIndex + 1;\n if (nextIndex > endIndex) {\n nextIndex = homeIndex;\n }\n };\n const movePrev = () => {\n nextIndex = triggerIndex - 1;\n if (nextIndex < homeIndex) {\n nextIndex = endIndex;\n }\n };\n switch (event.key) {\n case \"Home\":\n nextIndex = homeIndex;\n break;\n case \"End\":\n nextIndex = endIndex;\n break;\n case \"ArrowRight\":\n if (orientation === \"horizontal\") {\n if (isDirectionLTR) {\n moveNext();\n } else {\n movePrev();\n }\n }\n break;\n case \"ArrowDown\":\n if (orientation === \"vertical\") {\n moveNext();\n }\n break;\n case \"ArrowLeft\":\n if (orientation === \"horizontal\") {\n if (isDirectionLTR) {\n movePrev();\n } else {\n moveNext();\n }\n }\n break;\n case \"ArrowUp\":\n if (orientation === \"vertical\") {\n movePrev();\n }\n break;\n }\n const clampedIndex = nextIndex % triggerCount;\n triggerCollection[clampedIndex].ref.current?.focus();\n });\n return /* @__PURE__ */ jsx(\n AccordionImplProvider,\n {\n scope: __scopeAccordion,\n disabled,\n direction: dir,\n orientation,\n children: /* @__PURE__ */ jsx(Collection.Slot, { scope: __scopeAccordion, children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...accordionProps,\n \"data-orientation\": orientation,\n ref: composedRefs,\n onKeyDown: disabled ? void 0 : handleKeyDown\n }\n ) })\n }\n );\n }\n);\nvar ITEM_NAME = \"AccordionItem\";\nvar [AccordionItemProvider, useAccordionItemContext] = createAccordionContext(ITEM_NAME);\nvar AccordionItem = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, value, ...accordionItemProps } = props;\n const accordionContext = useAccordionContext(ITEM_NAME, __scopeAccordion);\n const valueContext = useAccordionValueContext(ITEM_NAME, __scopeAccordion);\n const collapsibleScope = useCollapsibleScope(__scopeAccordion);\n const triggerId = useId();\n const open = value && valueContext.value.includes(value) || false;\n const disabled = accordionContext.disabled || props.disabled;\n return /* @__PURE__ */ jsx(\n AccordionItemProvider,\n {\n scope: __scopeAccordion,\n open,\n disabled,\n triggerId,\n children: /* @__PURE__ */ jsx(\n CollapsiblePrimitive.Root,\n {\n \"data-orientation\": accordionContext.orientation,\n \"data-state\": getState(open),\n ...collapsibleScope,\n ...accordionItemProps,\n ref: forwardedRef,\n disabled,\n open,\n onOpenChange: (open2) => {\n if (open2) {\n valueContext.onItemOpen(value);\n } else {\n valueContext.onItemClose(value);\n }\n }\n }\n )\n }\n );\n }\n);\nAccordionItem.displayName = ITEM_NAME;\nvar HEADER_NAME = \"AccordionHeader\";\nvar AccordionHeader = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, ...headerProps } = props;\n const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);\n const itemContext = useAccordionItemContext(HEADER_NAME, __scopeAccordion);\n return /* @__PURE__ */ jsx(\n Primitive.h3,\n {\n \"data-orientation\": accordionContext.orientation,\n \"data-state\": getState(itemContext.open),\n \"data-disabled\": itemContext.disabled ? \"\" : void 0,\n ...headerProps,\n ref: forwardedRef\n }\n );\n }\n);\nAccordionHeader.displayName = HEADER_NAME;\nvar TRIGGER_NAME = \"AccordionTrigger\";\nvar AccordionTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, ...triggerProps } = props;\n const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);\n const itemContext = useAccordionItemContext(TRIGGER_NAME, __scopeAccordion);\n const collapsibleContext = useAccordionCollapsibleContext(TRIGGER_NAME, __scopeAccordion);\n const collapsibleScope = useCollapsibleScope(__scopeAccordion);\n return /* @__PURE__ */ jsx(Collection.ItemSlot, { scope: __scopeAccordion, children: /* @__PURE__ */ jsx(\n CollapsiblePrimitive.Trigger,\n {\n \"aria-disabled\": itemContext.open && !collapsibleContext.collapsible || void 0,\n \"data-orientation\": accordionContext.orientation,\n id: itemContext.triggerId,\n ...collapsibleScope,\n ...triggerProps,\n ref: forwardedRef\n }\n ) });\n }\n);\nAccordionTrigger.displayName = TRIGGER_NAME;\nvar CONTENT_NAME = \"AccordionContent\";\nvar AccordionContent = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, ...contentProps } = props;\n const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);\n const itemContext = useAccordionItemContext(CONTENT_NAME, __scopeAccordion);\n const collapsibleScope = useCollapsibleScope(__scopeAccordion);\n return /* @__PURE__ */ jsx(\n CollapsiblePrimitive.Content,\n {\n role: \"region\",\n \"aria-labelledby\": itemContext.triggerId,\n \"data-orientation\": accordionContext.orientation,\n ...collapsibleScope,\n ...contentProps,\n ref: forwardedRef,\n style: {\n [\"--radix-accordion-content-height\"]: \"var(--radix-collapsible-content-height)\",\n [\"--radix-accordion-content-width\"]: \"var(--radix-collapsible-content-width)\",\n ...props.style\n }\n }\n );\n }\n);\nAccordionContent.displayName = CONTENT_NAME;\nfunction getState(open) {\n return open ? \"open\" : \"closed\";\n}\nvar Root2 = Accordion;\nvar Item = AccordionItem;\nvar Header = AccordionHeader;\nvar Trigger2 = AccordionTrigger;\nvar Content2 = AccordionContent;\nexport {\n Accordion,\n AccordionContent,\n AccordionHeader,\n AccordionItem,\n AccordionTrigger,\n Content2 as Content,\n Header,\n Item,\n Root2 as Root,\n Trigger2 as Trigger,\n createAccordionScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as AccordionPrimitive from '@radix-ui/react-accordion';\nimport { ChevronDownIcon } from 'lucide-react';\nimport * as React from 'react';\nimport { cn } from '../../lib';\n\n/**\n * Accordion root component built on top of Radix UI's Accordion.Root.\n *\n * This component simply forwards all props to Radix and adds a `data-slot=\"accordion\"`\n * attribute so it can be targeted by design systems or tests. Use it to wrap\n * one or more AccordionItem children.\n *\n * Accessibility:\n * - Behaves according to the underlying Radix primitive, which follows WAI-ARIA practices.\n *\n * Example:\n * <Accordion type=\"single\" collapsible defaultValue=\"item-1\">\n * <AccordionItem value=\"item-1\">\n * <AccordionTrigger>Title</AccordionTrigger>\n * <AccordionContent>Body</AccordionContent>\n * </AccordionItem>\n * </Accordion>\n *\n * @param props - All props supported by `@radix-ui/react-accordion` Root component.\n * @returns The Accordion root element.\n */\nfunction Accordion({\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Root>) {\n return <AccordionPrimitive.Root data-slot=\"accordion\" {...props} />;\n}\n\n/**\n * A single accordion item container. Wraps a Trigger and Content pair.\n *\n * Adds a bottom border by default (removed on the last item) and forwards all\n * props to Radix's Accordion.Item. Includes `data-slot=\"accordion-item\"` for styling hooks.\n *\n * @param className - Optional class names merged with defaults.\n * @param props - All other props supported by Radix Accordion.Item (e.g., `value`).\n * @returns The Accordion item element.\n */\nfunction AccordionItem({\n className,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Item>) {\n return (\n <AccordionPrimitive.Item\n data-slot=\"accordion-item\"\n className={cn('border-b last:border-b-0', className)}\n {...props}\n />\n );\n}\n\n/**\n * The clickable control that toggles an accordion item's open/closed state.\n *\n * Renders inside a Radix Accordion.Header and forwards props to Accordion.Trigger.\n * Applies utility classes for focus styles and rotates the chevron icon when open.\n * Includes `data-slot=\"accordion-trigger\"` for styling hooks.\n *\n * Accessibility:\n * - Receives correct ARIA attributes from Radix (e.g., aria-expanded, aria-controls).\n * - Fully keyboard accessible.\n *\n * @param className - Optional class names merged with defaults.\n * @param children - The trigger content (usually a title/label).\n * @param props - Other Radix trigger props.\n * @returns A button-like element that controls the item.\n */\nfunction AccordionTrigger({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Trigger>) {\n return (\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger\n data-slot=\"accordion-trigger\"\n className={cn(\n 'focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180',\n className\n )}\n {...props}\n >\n {children}\n <ChevronDownIcon className=\"text-muted-foreground pointer-events-none size-4 shrink-0 translate-y-0.5 transition-transform duration-200\" />\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n );\n}\n\n/**\n * The collapsible region that reveals an accordion item's content.\n *\n * Forwards props to Radix Accordion.Content and adds enter/exit animations via\n * data-state classes. Content is wrapped with padding container. Includes\n * `data-slot=\"accordion-content\"` for styling hooks.\n *\n * @param className - Optional class names merged with inner content wrapper.\n * @param children - The content to display when the item is open.\n * @param props - Other Radix content props.\n * @returns The region that expands/collapses with animation.\n */\nfunction AccordionContent({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Content>) {\n return (\n <AccordionPrimitive.Content\n data-slot=\"accordion-content\"\n className=\"data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm\"\n {...props}\n >\n <div className={cn('pt-0 pb-4', className)}>{children}</div>\n </AccordionPrimitive.Content>\n );\n}\n\nexport { Accordion, AccordionContent, AccordionItem, AccordionTrigger };\n"],"names":["ACCORDION_NAME","ACCORDION_KEYS","Collection","useCollection","createCollectionScope","createCollection","createAccordionContext","createContextScope","createCollapsibleScope","useCollapsibleScope","Accordion","React","props","forwardedRef","type","accordionProps","singleProps","multipleProps","jsx","AccordionImplMultiple","AccordionImplSingle","AccordionValueProvider","useAccordionValueContext","AccordionCollapsibleProvider","useAccordionCollapsibleContext","valueProp","defaultValue","onValueChange","collapsible","accordionSingleProps","value","setValue","useControllableState","AccordionImpl","accordionMultipleProps","handleItemOpen","itemValue","prevValue","handleItemClose","value2","AccordionImplProvider","useAccordionContext","__scopeAccordion","disabled","dir","orientation","accordionRef","composedRefs","useComposedRefs","getItems","isDirectionLTR","useDirection","handleKeyDown","composeEventHandlers","event","target","triggerCollection","item","_a","triggerIndex","triggerCount","nextIndex","homeIndex","endIndex","moveNext","movePrev","clampedIndex","Primitive","ITEM_NAME","AccordionItemProvider","useAccordionItemContext","AccordionItem","accordionItemProps","accordionContext","valueContext","collapsibleScope","triggerId","useId","open","CollapsiblePrimitive.Root","getState","open2","HEADER_NAME","AccordionHeader","headerProps","itemContext","TRIGGER_NAME","AccordionTrigger","triggerProps","collapsibleContext","CollapsiblePrimitive.Trigger","CONTENT_NAME","AccordionContent","contentProps","CollapsiblePrimitive.Content","Root2","Item","Header","Trigger2","Content2","AccordionPrimitive.Root","className","AccordionPrimitive.Item","cn","children","AccordionPrimitive.Header","jsxs","AccordionPrimitive.Trigger","ChevronDownIcon","AccordionPrimitive.Content"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.cjs.js","sources":["../../node_modules/@radix-ui/react-accordion/dist/index.mjs","../../src/ui/accordion/accordion.tsx"],"sourcesContent":["\"use client\";\n\n// src/accordion.tsx\nimport React from \"react\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport * as CollapsiblePrimitive from \"@radix-ui/react-collapsible\";\nimport { createCollapsibleScope } from \"@radix-ui/react-collapsible\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { jsx } from \"react/jsx-runtime\";\nvar ACCORDION_NAME = \"Accordion\";\nvar ACCORDION_KEYS = [\"Home\", \"End\", \"ArrowDown\", \"ArrowUp\", \"ArrowLeft\", \"ArrowRight\"];\nvar [Collection, useCollection, createCollectionScope] = createCollection(ACCORDION_NAME);\nvar [createAccordionContext, createAccordionScope] = createContextScope(ACCORDION_NAME, [\n createCollectionScope,\n createCollapsibleScope\n]);\nvar useCollapsibleScope = createCollapsibleScope();\nvar Accordion = React.forwardRef(\n (props, forwardedRef) => {\n const { type, ...accordionProps } = props;\n const singleProps = accordionProps;\n const multipleProps = accordionProps;\n return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeAccordion, children: type === \"multiple\" ? /* @__PURE__ */ jsx(AccordionImplMultiple, { ...multipleProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(AccordionImplSingle, { ...singleProps, ref: forwardedRef }) });\n }\n);\nAccordion.displayName = ACCORDION_NAME;\nvar [AccordionValueProvider, useAccordionValueContext] = createAccordionContext(ACCORDION_NAME);\nvar [AccordionCollapsibleProvider, useAccordionCollapsibleContext] = createAccordionContext(\n ACCORDION_NAME,\n { collapsible: false }\n);\nvar AccordionImplSingle = React.forwardRef(\n (props, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {\n },\n collapsible = false,\n ...accordionSingleProps\n } = props;\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue ?? \"\",\n onChange: onValueChange,\n caller: ACCORDION_NAME\n });\n return /* @__PURE__ */ jsx(\n AccordionValueProvider,\n {\n scope: props.__scopeAccordion,\n value: React.useMemo(() => value ? [value] : [], [value]),\n onItemOpen: setValue,\n onItemClose: React.useCallback(() => collapsible && setValue(\"\"), [collapsible, setValue]),\n children: /* @__PURE__ */ jsx(AccordionCollapsibleProvider, { scope: props.__scopeAccordion, collapsible, children: /* @__PURE__ */ jsx(AccordionImpl, { ...accordionSingleProps, ref: forwardedRef }) })\n }\n );\n }\n);\nvar AccordionImplMultiple = React.forwardRef((props, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {\n },\n ...accordionMultipleProps\n } = props;\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue ?? [],\n onChange: onValueChange,\n caller: ACCORDION_NAME\n });\n const handleItemOpen = React.useCallback(\n (itemValue) => setValue((prevValue = []) => [...prevValue, itemValue]),\n [setValue]\n );\n const handleItemClose = React.useCallback(\n (itemValue) => setValue((prevValue = []) => prevValue.filter((value2) => value2 !== itemValue)),\n [setValue]\n );\n return /* @__PURE__ */ jsx(\n AccordionValueProvider,\n {\n scope: props.__scopeAccordion,\n value,\n onItemOpen: handleItemOpen,\n onItemClose: handleItemClose,\n children: /* @__PURE__ */ jsx(AccordionCollapsibleProvider, { scope: props.__scopeAccordion, collapsible: true, children: /* @__PURE__ */ jsx(AccordionImpl, { ...accordionMultipleProps, ref: forwardedRef }) })\n }\n );\n});\nvar [AccordionImplProvider, useAccordionContext] = createAccordionContext(ACCORDION_NAME);\nvar AccordionImpl = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, disabled, dir, orientation = \"vertical\", ...accordionProps } = props;\n const accordionRef = React.useRef(null);\n const composedRefs = useComposedRefs(accordionRef, forwardedRef);\n const getItems = useCollection(__scopeAccordion);\n const direction = useDirection(dir);\n const isDirectionLTR = direction === \"ltr\";\n const handleKeyDown = composeEventHandlers(props.onKeyDown, (event) => {\n if (!ACCORDION_KEYS.includes(event.key)) return;\n const target = event.target;\n const triggerCollection = getItems().filter((item) => !item.ref.current?.disabled);\n const triggerIndex = triggerCollection.findIndex((item) => item.ref.current === target);\n const triggerCount = triggerCollection.length;\n if (triggerIndex === -1) return;\n event.preventDefault();\n let nextIndex = triggerIndex;\n const homeIndex = 0;\n const endIndex = triggerCount - 1;\n const moveNext = () => {\n nextIndex = triggerIndex + 1;\n if (nextIndex > endIndex) {\n nextIndex = homeIndex;\n }\n };\n const movePrev = () => {\n nextIndex = triggerIndex - 1;\n if (nextIndex < homeIndex) {\n nextIndex = endIndex;\n }\n };\n switch (event.key) {\n case \"Home\":\n nextIndex = homeIndex;\n break;\n case \"End\":\n nextIndex = endIndex;\n break;\n case \"ArrowRight\":\n if (orientation === \"horizontal\") {\n if (isDirectionLTR) {\n moveNext();\n } else {\n movePrev();\n }\n }\n break;\n case \"ArrowDown\":\n if (orientation === \"vertical\") {\n moveNext();\n }\n break;\n case \"ArrowLeft\":\n if (orientation === \"horizontal\") {\n if (isDirectionLTR) {\n movePrev();\n } else {\n moveNext();\n }\n }\n break;\n case \"ArrowUp\":\n if (orientation === \"vertical\") {\n movePrev();\n }\n break;\n }\n const clampedIndex = nextIndex % triggerCount;\n triggerCollection[clampedIndex].ref.current?.focus();\n });\n return /* @__PURE__ */ jsx(\n AccordionImplProvider,\n {\n scope: __scopeAccordion,\n disabled,\n direction: dir,\n orientation,\n children: /* @__PURE__ */ jsx(Collection.Slot, { scope: __scopeAccordion, children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...accordionProps,\n \"data-orientation\": orientation,\n ref: composedRefs,\n onKeyDown: disabled ? void 0 : handleKeyDown\n }\n ) })\n }\n );\n }\n);\nvar ITEM_NAME = \"AccordionItem\";\nvar [AccordionItemProvider, useAccordionItemContext] = createAccordionContext(ITEM_NAME);\nvar AccordionItem = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, value, ...accordionItemProps } = props;\n const accordionContext = useAccordionContext(ITEM_NAME, __scopeAccordion);\n const valueContext = useAccordionValueContext(ITEM_NAME, __scopeAccordion);\n const collapsibleScope = useCollapsibleScope(__scopeAccordion);\n const triggerId = useId();\n const open = value && valueContext.value.includes(value) || false;\n const disabled = accordionContext.disabled || props.disabled;\n return /* @__PURE__ */ jsx(\n AccordionItemProvider,\n {\n scope: __scopeAccordion,\n open,\n disabled,\n triggerId,\n children: /* @__PURE__ */ jsx(\n CollapsiblePrimitive.Root,\n {\n \"data-orientation\": accordionContext.orientation,\n \"data-state\": getState(open),\n ...collapsibleScope,\n ...accordionItemProps,\n ref: forwardedRef,\n disabled,\n open,\n onOpenChange: (open2) => {\n if (open2) {\n valueContext.onItemOpen(value);\n } else {\n valueContext.onItemClose(value);\n }\n }\n }\n )\n }\n );\n }\n);\nAccordionItem.displayName = ITEM_NAME;\nvar HEADER_NAME = \"AccordionHeader\";\nvar AccordionHeader = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, ...headerProps } = props;\n const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);\n const itemContext = useAccordionItemContext(HEADER_NAME, __scopeAccordion);\n return /* @__PURE__ */ jsx(\n Primitive.h3,\n {\n \"data-orientation\": accordionContext.orientation,\n \"data-state\": getState(itemContext.open),\n \"data-disabled\": itemContext.disabled ? \"\" : void 0,\n ...headerProps,\n ref: forwardedRef\n }\n );\n }\n);\nAccordionHeader.displayName = HEADER_NAME;\nvar TRIGGER_NAME = \"AccordionTrigger\";\nvar AccordionTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, ...triggerProps } = props;\n const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);\n const itemContext = useAccordionItemContext(TRIGGER_NAME, __scopeAccordion);\n const collapsibleContext = useAccordionCollapsibleContext(TRIGGER_NAME, __scopeAccordion);\n const collapsibleScope = useCollapsibleScope(__scopeAccordion);\n return /* @__PURE__ */ jsx(Collection.ItemSlot, { scope: __scopeAccordion, children: /* @__PURE__ */ jsx(\n CollapsiblePrimitive.Trigger,\n {\n \"aria-disabled\": itemContext.open && !collapsibleContext.collapsible || void 0,\n \"data-orientation\": accordionContext.orientation,\n id: itemContext.triggerId,\n ...collapsibleScope,\n ...triggerProps,\n ref: forwardedRef\n }\n ) });\n }\n);\nAccordionTrigger.displayName = TRIGGER_NAME;\nvar CONTENT_NAME = \"AccordionContent\";\nvar AccordionContent = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, ...contentProps } = props;\n const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);\n const itemContext = useAccordionItemContext(CONTENT_NAME, __scopeAccordion);\n const collapsibleScope = useCollapsibleScope(__scopeAccordion);\n return /* @__PURE__ */ jsx(\n CollapsiblePrimitive.Content,\n {\n role: \"region\",\n \"aria-labelledby\": itemContext.triggerId,\n \"data-orientation\": accordionContext.orientation,\n ...collapsibleScope,\n ...contentProps,\n ref: forwardedRef,\n style: {\n [\"--radix-accordion-content-height\"]: \"var(--radix-collapsible-content-height)\",\n [\"--radix-accordion-content-width\"]: \"var(--radix-collapsible-content-width)\",\n ...props.style\n }\n }\n );\n }\n);\nAccordionContent.displayName = CONTENT_NAME;\nfunction getState(open) {\n return open ? \"open\" : \"closed\";\n}\nvar Root2 = Accordion;\nvar Item = AccordionItem;\nvar Header = AccordionHeader;\nvar Trigger2 = AccordionTrigger;\nvar Content2 = AccordionContent;\nexport {\n Accordion,\n AccordionContent,\n AccordionHeader,\n AccordionItem,\n AccordionTrigger,\n Content2 as Content,\n Header,\n Item,\n Root2 as Root,\n Trigger2 as Trigger,\n createAccordionScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as AccordionPrimitive from '@radix-ui/react-accordion';\nimport { ChevronDownIcon } from 'lucide-react';\nimport * as React from 'react';\nimport { cn } from '../../lib';\n\n/**\n * Accordion root component built on top of Radix UI's Accordion.Root.\n *\n * This component simply forwards all props to Radix and adds a `data-slot=\"accordion\"`\n * attribute so it can be targeted by design systems or tests. Use it to wrap\n * one or more AccordionItem children.\n *\n * Accessibility:\n * - Behaves according to the underlying Radix primitive, which follows WAI-ARIA practices.\n *\n * @example\n * ```tsx\n * <Accordion type=\"single\" collapsible defaultValue=\"item-1\">\n * <AccordionItem value=\"item-1\">\n * <AccordionTrigger>Title</AccordionTrigger>\n * <AccordionContent>Body</AccordionContent>\n * </AccordionItem>\n * </Accordion>\n * ```\n *\n * @param props - All props supported by `@radix-ui/react-accordion` Root component.\n * @returns The Accordion root element.\n */\nfunction Accordion({\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Root>) {\n return <AccordionPrimitive.Root data-slot=\"accordion\" {...props} />;\n}\n\n/**\n * A single accordion item container. Wraps a Trigger and Content pair.\n *\n * Adds a bottom border by default (removed on the last item) and forwards all\n * props to Radix's Accordion.Item. Includes `data-slot=\"accordion-item\"` for styling hooks.\n *\n * @param className - Optional class names merged with defaults.\n * @param props - All other props supported by Radix Accordion.Item (e.g., `value`).\n * @returns The Accordion item element.\n */\nfunction AccordionItem({\n className,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Item>) {\n return (\n <AccordionPrimitive.Item\n data-slot=\"accordion-item\"\n className={cn('border-b last:border-b-0', className)}\n {...props}\n />\n );\n}\n\n/**\n * The clickable control that toggles an accordion item's open/closed state.\n *\n * Renders inside a Radix Accordion.Header and forwards props to Accordion.Trigger.\n * Applies utility classes for focus styles and rotates the chevron icon when open.\n * Includes `data-slot=\"accordion-trigger\"` for styling hooks.\n *\n * Accessibility:\n * - Receives correct ARIA attributes from Radix (e.g., aria-expanded, aria-controls).\n * - Fully keyboard accessible.\n *\n * @param className - Optional class names merged with defaults.\n * @param children - The trigger content (usually a title/label).\n * @param props - Other Radix trigger props.\n * @returns A button-like element that controls the item.\n */\nfunction AccordionTrigger({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Trigger>) {\n return (\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger\n data-slot=\"accordion-trigger\"\n className={cn(\n 'focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180',\n className\n )}\n {...props}\n >\n {children}\n <ChevronDownIcon className=\"text-muted-foreground pointer-events-none size-4 shrink-0 translate-y-0.5 transition-transform duration-200\" />\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n );\n}\n\n/**\n * The collapsible region that reveals an accordion item's content.\n *\n * Forwards props to Radix Accordion.Content and adds enter/exit animations via\n * data-state classes. Content is wrapped with padding container. Includes\n * `data-slot=\"accordion-content\"` for styling hooks.\n *\n * @param className - Optional class names merged with inner content wrapper.\n * @param children - The content to display when the item is open.\n * @param props - Other Radix content props.\n * @returns The region that expands/collapses with animation.\n */\nfunction AccordionContent({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Content>) {\n return (\n <AccordionPrimitive.Content\n data-slot=\"accordion-content\"\n className=\"data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm\"\n {...props}\n >\n <div className={cn('pt-0 pb-4', className)}>{children}</div>\n </AccordionPrimitive.Content>\n );\n}\n\nexport { Accordion, AccordionContent, AccordionItem, AccordionTrigger };\n"],"names":["ACCORDION_NAME","ACCORDION_KEYS","Collection","useCollection","createCollectionScope","createCollection","createAccordionContext","createContextScope","createCollapsibleScope","useCollapsibleScope","Accordion","React","props","forwardedRef","type","accordionProps","singleProps","multipleProps","jsx","AccordionImplMultiple","AccordionImplSingle","AccordionValueProvider","useAccordionValueContext","AccordionCollapsibleProvider","useAccordionCollapsibleContext","valueProp","defaultValue","onValueChange","collapsible","accordionSingleProps","value","setValue","useControllableState","AccordionImpl","accordionMultipleProps","handleItemOpen","itemValue","prevValue","handleItemClose","value2","AccordionImplProvider","useAccordionContext","__scopeAccordion","disabled","dir","orientation","accordionRef","composedRefs","useComposedRefs","getItems","isDirectionLTR","useDirection","handleKeyDown","composeEventHandlers","event","target","triggerCollection","item","_a","triggerIndex","triggerCount","nextIndex","homeIndex","endIndex","moveNext","movePrev","clampedIndex","Primitive","ITEM_NAME","AccordionItemProvider","useAccordionItemContext","AccordionItem","accordionItemProps","accordionContext","valueContext","collapsibleScope","triggerId","useId","open","CollapsiblePrimitive.Root","getState","open2","HEADER_NAME","AccordionHeader","headerProps","itemContext","TRIGGER_NAME","AccordionTrigger","triggerProps","collapsibleContext","CollapsiblePrimitive.Trigger","CONTENT_NAME","AccordionContent","contentProps","CollapsiblePrimitive.Content","Root2","Item","Header","Trigger2","Content2","AccordionPrimitive.Root","className","AccordionPrimitive.Item","cn","children","AccordionPrimitive.Header","jsxs","AccordionPrimitive.Trigger","ChevronDownIcon","AccordionPrimitive.Content"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.es.js","sources":["../../node_modules/@radix-ui/react-accordion/dist/index.mjs","../../src/ui/accordion/accordion.tsx"],"sourcesContent":["\"use client\";\n\n// src/accordion.tsx\nimport React from \"react\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport * as CollapsiblePrimitive from \"@radix-ui/react-collapsible\";\nimport { createCollapsibleScope } from \"@radix-ui/react-collapsible\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { jsx } from \"react/jsx-runtime\";\nvar ACCORDION_NAME = \"Accordion\";\nvar ACCORDION_KEYS = [\"Home\", \"End\", \"ArrowDown\", \"ArrowUp\", \"ArrowLeft\", \"ArrowRight\"];\nvar [Collection, useCollection, createCollectionScope] = createCollection(ACCORDION_NAME);\nvar [createAccordionContext, createAccordionScope] = createContextScope(ACCORDION_NAME, [\n createCollectionScope,\n createCollapsibleScope\n]);\nvar useCollapsibleScope = createCollapsibleScope();\nvar Accordion = React.forwardRef(\n (props, forwardedRef) => {\n const { type, ...accordionProps } = props;\n const singleProps = accordionProps;\n const multipleProps = accordionProps;\n return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeAccordion, children: type === \"multiple\" ? /* @__PURE__ */ jsx(AccordionImplMultiple, { ...multipleProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(AccordionImplSingle, { ...singleProps, ref: forwardedRef }) });\n }\n);\nAccordion.displayName = ACCORDION_NAME;\nvar [AccordionValueProvider, useAccordionValueContext] = createAccordionContext(ACCORDION_NAME);\nvar [AccordionCollapsibleProvider, useAccordionCollapsibleContext] = createAccordionContext(\n ACCORDION_NAME,\n { collapsible: false }\n);\nvar AccordionImplSingle = React.forwardRef(\n (props, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {\n },\n collapsible = false,\n ...accordionSingleProps\n } = props;\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue ?? \"\",\n onChange: onValueChange,\n caller: ACCORDION_NAME\n });\n return /* @__PURE__ */ jsx(\n AccordionValueProvider,\n {\n scope: props.__scopeAccordion,\n value: React.useMemo(() => value ? [value] : [], [value]),\n onItemOpen: setValue,\n onItemClose: React.useCallback(() => collapsible && setValue(\"\"), [collapsible, setValue]),\n children: /* @__PURE__ */ jsx(AccordionCollapsibleProvider, { scope: props.__scopeAccordion, collapsible, children: /* @__PURE__ */ jsx(AccordionImpl, { ...accordionSingleProps, ref: forwardedRef }) })\n }\n );\n }\n);\nvar AccordionImplMultiple = React.forwardRef((props, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {\n },\n ...accordionMultipleProps\n } = props;\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue ?? [],\n onChange: onValueChange,\n caller: ACCORDION_NAME\n });\n const handleItemOpen = React.useCallback(\n (itemValue) => setValue((prevValue = []) => [...prevValue, itemValue]),\n [setValue]\n );\n const handleItemClose = React.useCallback(\n (itemValue) => setValue((prevValue = []) => prevValue.filter((value2) => value2 !== itemValue)),\n [setValue]\n );\n return /* @__PURE__ */ jsx(\n AccordionValueProvider,\n {\n scope: props.__scopeAccordion,\n value,\n onItemOpen: handleItemOpen,\n onItemClose: handleItemClose,\n children: /* @__PURE__ */ jsx(AccordionCollapsibleProvider, { scope: props.__scopeAccordion, collapsible: true, children: /* @__PURE__ */ jsx(AccordionImpl, { ...accordionMultipleProps, ref: forwardedRef }) })\n }\n );\n});\nvar [AccordionImplProvider, useAccordionContext] = createAccordionContext(ACCORDION_NAME);\nvar AccordionImpl = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, disabled, dir, orientation = \"vertical\", ...accordionProps } = props;\n const accordionRef = React.useRef(null);\n const composedRefs = useComposedRefs(accordionRef, forwardedRef);\n const getItems = useCollection(__scopeAccordion);\n const direction = useDirection(dir);\n const isDirectionLTR = direction === \"ltr\";\n const handleKeyDown = composeEventHandlers(props.onKeyDown, (event) => {\n if (!ACCORDION_KEYS.includes(event.key)) return;\n const target = event.target;\n const triggerCollection = getItems().filter((item) => !item.ref.current?.disabled);\n const triggerIndex = triggerCollection.findIndex((item) => item.ref.current === target);\n const triggerCount = triggerCollection.length;\n if (triggerIndex === -1) return;\n event.preventDefault();\n let nextIndex = triggerIndex;\n const homeIndex = 0;\n const endIndex = triggerCount - 1;\n const moveNext = () => {\n nextIndex = triggerIndex + 1;\n if (nextIndex > endIndex) {\n nextIndex = homeIndex;\n }\n };\n const movePrev = () => {\n nextIndex = triggerIndex - 1;\n if (nextIndex < homeIndex) {\n nextIndex = endIndex;\n }\n };\n switch (event.key) {\n case \"Home\":\n nextIndex = homeIndex;\n break;\n case \"End\":\n nextIndex = endIndex;\n break;\n case \"ArrowRight\":\n if (orientation === \"horizontal\") {\n if (isDirectionLTR) {\n moveNext();\n } else {\n movePrev();\n }\n }\n break;\n case \"ArrowDown\":\n if (orientation === \"vertical\") {\n moveNext();\n }\n break;\n case \"ArrowLeft\":\n if (orientation === \"horizontal\") {\n if (isDirectionLTR) {\n movePrev();\n } else {\n moveNext();\n }\n }\n break;\n case \"ArrowUp\":\n if (orientation === \"vertical\") {\n movePrev();\n }\n break;\n }\n const clampedIndex = nextIndex % triggerCount;\n triggerCollection[clampedIndex].ref.current?.focus();\n });\n return /* @__PURE__ */ jsx(\n AccordionImplProvider,\n {\n scope: __scopeAccordion,\n disabled,\n direction: dir,\n orientation,\n children: /* @__PURE__ */ jsx(Collection.Slot, { scope: __scopeAccordion, children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...accordionProps,\n \"data-orientation\": orientation,\n ref: composedRefs,\n onKeyDown: disabled ? void 0 : handleKeyDown\n }\n ) })\n }\n );\n }\n);\nvar ITEM_NAME = \"AccordionItem\";\nvar [AccordionItemProvider, useAccordionItemContext] = createAccordionContext(ITEM_NAME);\nvar AccordionItem = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, value, ...accordionItemProps } = props;\n const accordionContext = useAccordionContext(ITEM_NAME, __scopeAccordion);\n const valueContext = useAccordionValueContext(ITEM_NAME, __scopeAccordion);\n const collapsibleScope = useCollapsibleScope(__scopeAccordion);\n const triggerId = useId();\n const open = value && valueContext.value.includes(value) || false;\n const disabled = accordionContext.disabled || props.disabled;\n return /* @__PURE__ */ jsx(\n AccordionItemProvider,\n {\n scope: __scopeAccordion,\n open,\n disabled,\n triggerId,\n children: /* @__PURE__ */ jsx(\n CollapsiblePrimitive.Root,\n {\n \"data-orientation\": accordionContext.orientation,\n \"data-state\": getState(open),\n ...collapsibleScope,\n ...accordionItemProps,\n ref: forwardedRef,\n disabled,\n open,\n onOpenChange: (open2) => {\n if (open2) {\n valueContext.onItemOpen(value);\n } else {\n valueContext.onItemClose(value);\n }\n }\n }\n )\n }\n );\n }\n);\nAccordionItem.displayName = ITEM_NAME;\nvar HEADER_NAME = \"AccordionHeader\";\nvar AccordionHeader = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, ...headerProps } = props;\n const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);\n const itemContext = useAccordionItemContext(HEADER_NAME, __scopeAccordion);\n return /* @__PURE__ */ jsx(\n Primitive.h3,\n {\n \"data-orientation\": accordionContext.orientation,\n \"data-state\": getState(itemContext.open),\n \"data-disabled\": itemContext.disabled ? \"\" : void 0,\n ...headerProps,\n ref: forwardedRef\n }\n );\n }\n);\nAccordionHeader.displayName = HEADER_NAME;\nvar TRIGGER_NAME = \"AccordionTrigger\";\nvar AccordionTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, ...triggerProps } = props;\n const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);\n const itemContext = useAccordionItemContext(TRIGGER_NAME, __scopeAccordion);\n const collapsibleContext = useAccordionCollapsibleContext(TRIGGER_NAME, __scopeAccordion);\n const collapsibleScope = useCollapsibleScope(__scopeAccordion);\n return /* @__PURE__ */ jsx(Collection.ItemSlot, { scope: __scopeAccordion, children: /* @__PURE__ */ jsx(\n CollapsiblePrimitive.Trigger,\n {\n \"aria-disabled\": itemContext.open && !collapsibleContext.collapsible || void 0,\n \"data-orientation\": accordionContext.orientation,\n id: itemContext.triggerId,\n ...collapsibleScope,\n ...triggerProps,\n ref: forwardedRef\n }\n ) });\n }\n);\nAccordionTrigger.displayName = TRIGGER_NAME;\nvar CONTENT_NAME = \"AccordionContent\";\nvar AccordionContent = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, ...contentProps } = props;\n const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);\n const itemContext = useAccordionItemContext(CONTENT_NAME, __scopeAccordion);\n const collapsibleScope = useCollapsibleScope(__scopeAccordion);\n return /* @__PURE__ */ jsx(\n CollapsiblePrimitive.Content,\n {\n role: \"region\",\n \"aria-labelledby\": itemContext.triggerId,\n \"data-orientation\": accordionContext.orientation,\n ...collapsibleScope,\n ...contentProps,\n ref: forwardedRef,\n style: {\n [\"--radix-accordion-content-height\"]: \"var(--radix-collapsible-content-height)\",\n [\"--radix-accordion-content-width\"]: \"var(--radix-collapsible-content-width)\",\n ...props.style\n }\n }\n );\n }\n);\nAccordionContent.displayName = CONTENT_NAME;\nfunction getState(open) {\n return open ? \"open\" : \"closed\";\n}\nvar Root2 = Accordion;\nvar Item = AccordionItem;\nvar Header = AccordionHeader;\nvar Trigger2 = AccordionTrigger;\nvar Content2 = AccordionContent;\nexport {\n Accordion,\n AccordionContent,\n AccordionHeader,\n AccordionItem,\n AccordionTrigger,\n Content2 as Content,\n Header,\n Item,\n Root2 as Root,\n Trigger2 as Trigger,\n createAccordionScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as AccordionPrimitive from '@radix-ui/react-accordion';\nimport { ChevronDownIcon } from 'lucide-react';\nimport * as React from 'react';\nimport { cn } from '../../lib';\n\n/**\n * Accordion root component built on top of Radix UI's Accordion.Root.\n *\n * This component simply forwards all props to Radix and adds a `data-slot=\"accordion\"`\n * attribute so it can be targeted by design systems or tests. Use it to wrap\n * one or more AccordionItem children.\n *\n * Accessibility:\n * - Behaves according to the underlying Radix primitive, which follows WAI-ARIA practices.\n *\n * Example:\n * <Accordion type=\"single\" collapsible defaultValue=\"item-1\">\n * <AccordionItem value=\"item-1\">\n * <AccordionTrigger>Title</AccordionTrigger>\n * <AccordionContent>Body</AccordionContent>\n * </AccordionItem>\n * </Accordion>\n *\n * @param props - All props supported by `@radix-ui/react-accordion` Root component.\n * @returns The Accordion root element.\n */\nfunction Accordion({\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Root>) {\n return <AccordionPrimitive.Root data-slot=\"accordion\" {...props} />;\n}\n\n/**\n * A single accordion item container. Wraps a Trigger and Content pair.\n *\n * Adds a bottom border by default (removed on the last item) and forwards all\n * props to Radix's Accordion.Item. Includes `data-slot=\"accordion-item\"` for styling hooks.\n *\n * @param className - Optional class names merged with defaults.\n * @param props - All other props supported by Radix Accordion.Item (e.g., `value`).\n * @returns The Accordion item element.\n */\nfunction AccordionItem({\n className,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Item>) {\n return (\n <AccordionPrimitive.Item\n data-slot=\"accordion-item\"\n className={cn('border-b last:border-b-0', className)}\n {...props}\n />\n );\n}\n\n/**\n * The clickable control that toggles an accordion item's open/closed state.\n *\n * Renders inside a Radix Accordion.Header and forwards props to Accordion.Trigger.\n * Applies utility classes for focus styles and rotates the chevron icon when open.\n * Includes `data-slot=\"accordion-trigger\"` for styling hooks.\n *\n * Accessibility:\n * - Receives correct ARIA attributes from Radix (e.g., aria-expanded, aria-controls).\n * - Fully keyboard accessible.\n *\n * @param className - Optional class names merged with defaults.\n * @param children - The trigger content (usually a title/label).\n * @param props - Other Radix trigger props.\n * @returns A button-like element that controls the item.\n */\nfunction AccordionTrigger({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Trigger>) {\n return (\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger\n data-slot=\"accordion-trigger\"\n className={cn(\n 'focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180',\n className\n )}\n {...props}\n >\n {children}\n <ChevronDownIcon className=\"text-muted-foreground pointer-events-none size-4 shrink-0 translate-y-0.5 transition-transform duration-200\" />\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n );\n}\n\n/**\n * The collapsible region that reveals an accordion item's content.\n *\n * Forwards props to Radix Accordion.Content and adds enter/exit animations via\n * data-state classes. Content is wrapped with padding container. Includes\n * `data-slot=\"accordion-content\"` for styling hooks.\n *\n * @param className - Optional class names merged with inner content wrapper.\n * @param children - The content to display when the item is open.\n * @param props - Other Radix content props.\n * @returns The region that expands/collapses with animation.\n */\nfunction AccordionContent({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Content>) {\n return (\n <AccordionPrimitive.Content\n data-slot=\"accordion-content\"\n className=\"data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm\"\n {...props}\n >\n <div className={cn('pt-0 pb-4', className)}>{children}</div>\n </AccordionPrimitive.Content>\n );\n}\n\nexport { Accordion, AccordionContent, AccordionItem, AccordionTrigger };\n"],"names":["ACCORDION_NAME","ACCORDION_KEYS","Collection","useCollection","createCollectionScope","createCollection","createAccordionContext","createContextScope","createCollapsibleScope","useCollapsibleScope","Accordion","React","props","forwardedRef","type","accordionProps","singleProps","multipleProps","jsx","AccordionImplMultiple","AccordionImplSingle","AccordionValueProvider","useAccordionValueContext","AccordionCollapsibleProvider","useAccordionCollapsibleContext","valueProp","defaultValue","onValueChange","collapsible","accordionSingleProps","value","setValue","useControllableState","AccordionImpl","accordionMultipleProps","handleItemOpen","itemValue","prevValue","handleItemClose","value2","AccordionImplProvider","useAccordionContext","__scopeAccordion","disabled","dir","orientation","accordionRef","composedRefs","useComposedRefs","getItems","isDirectionLTR","useDirection","handleKeyDown","composeEventHandlers","event","target","triggerCollection","item","_a","triggerIndex","triggerCount","nextIndex","homeIndex","endIndex","moveNext","movePrev","clampedIndex","Primitive","ITEM_NAME","AccordionItemProvider","useAccordionItemContext","AccordionItem","accordionItemProps","accordionContext","valueContext","collapsibleScope","triggerId","useId","open","CollapsiblePrimitive.Root","getState","open2","HEADER_NAME","AccordionHeader","headerProps","itemContext","TRIGGER_NAME","AccordionTrigger","triggerProps","collapsibleContext","CollapsiblePrimitive.Trigger","CONTENT_NAME","AccordionContent","contentProps","CollapsiblePrimitive.Content","Root2","Item","Header","Trigger2","Content2","AccordionPrimitive.Root","className","AccordionPrimitive.Item","cn","children","AccordionPrimitive.Header","jsxs","AccordionPrimitive.Trigger","ChevronDownIcon","AccordionPrimitive.Content"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es.js","sources":["../../node_modules/@radix-ui/react-accordion/dist/index.mjs","../../src/ui/accordion/accordion.tsx"],"sourcesContent":["\"use client\";\n\n// src/accordion.tsx\nimport React from \"react\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport * as CollapsiblePrimitive from \"@radix-ui/react-collapsible\";\nimport { createCollapsibleScope } from \"@radix-ui/react-collapsible\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { jsx } from \"react/jsx-runtime\";\nvar ACCORDION_NAME = \"Accordion\";\nvar ACCORDION_KEYS = [\"Home\", \"End\", \"ArrowDown\", \"ArrowUp\", \"ArrowLeft\", \"ArrowRight\"];\nvar [Collection, useCollection, createCollectionScope] = createCollection(ACCORDION_NAME);\nvar [createAccordionContext, createAccordionScope] = createContextScope(ACCORDION_NAME, [\n createCollectionScope,\n createCollapsibleScope\n]);\nvar useCollapsibleScope = createCollapsibleScope();\nvar Accordion = React.forwardRef(\n (props, forwardedRef) => {\n const { type, ...accordionProps } = props;\n const singleProps = accordionProps;\n const multipleProps = accordionProps;\n return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeAccordion, children: type === \"multiple\" ? /* @__PURE__ */ jsx(AccordionImplMultiple, { ...multipleProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(AccordionImplSingle, { ...singleProps, ref: forwardedRef }) });\n }\n);\nAccordion.displayName = ACCORDION_NAME;\nvar [AccordionValueProvider, useAccordionValueContext] = createAccordionContext(ACCORDION_NAME);\nvar [AccordionCollapsibleProvider, useAccordionCollapsibleContext] = createAccordionContext(\n ACCORDION_NAME,\n { collapsible: false }\n);\nvar AccordionImplSingle = React.forwardRef(\n (props, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {\n },\n collapsible = false,\n ...accordionSingleProps\n } = props;\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue ?? \"\",\n onChange: onValueChange,\n caller: ACCORDION_NAME\n });\n return /* @__PURE__ */ jsx(\n AccordionValueProvider,\n {\n scope: props.__scopeAccordion,\n value: React.useMemo(() => value ? [value] : [], [value]),\n onItemOpen: setValue,\n onItemClose: React.useCallback(() => collapsible && setValue(\"\"), [collapsible, setValue]),\n children: /* @__PURE__ */ jsx(AccordionCollapsibleProvider, { scope: props.__scopeAccordion, collapsible, children: /* @__PURE__ */ jsx(AccordionImpl, { ...accordionSingleProps, ref: forwardedRef }) })\n }\n );\n }\n);\nvar AccordionImplMultiple = React.forwardRef((props, forwardedRef) => {\n const {\n value: valueProp,\n defaultValue,\n onValueChange = () => {\n },\n ...accordionMultipleProps\n } = props;\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue ?? [],\n onChange: onValueChange,\n caller: ACCORDION_NAME\n });\n const handleItemOpen = React.useCallback(\n (itemValue) => setValue((prevValue = []) => [...prevValue, itemValue]),\n [setValue]\n );\n const handleItemClose = React.useCallback(\n (itemValue) => setValue((prevValue = []) => prevValue.filter((value2) => value2 !== itemValue)),\n [setValue]\n );\n return /* @__PURE__ */ jsx(\n AccordionValueProvider,\n {\n scope: props.__scopeAccordion,\n value,\n onItemOpen: handleItemOpen,\n onItemClose: handleItemClose,\n children: /* @__PURE__ */ jsx(AccordionCollapsibleProvider, { scope: props.__scopeAccordion, collapsible: true, children: /* @__PURE__ */ jsx(AccordionImpl, { ...accordionMultipleProps, ref: forwardedRef }) })\n }\n );\n});\nvar [AccordionImplProvider, useAccordionContext] = createAccordionContext(ACCORDION_NAME);\nvar AccordionImpl = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, disabled, dir, orientation = \"vertical\", ...accordionProps } = props;\n const accordionRef = React.useRef(null);\n const composedRefs = useComposedRefs(accordionRef, forwardedRef);\n const getItems = useCollection(__scopeAccordion);\n const direction = useDirection(dir);\n const isDirectionLTR = direction === \"ltr\";\n const handleKeyDown = composeEventHandlers(props.onKeyDown, (event) => {\n if (!ACCORDION_KEYS.includes(event.key)) return;\n const target = event.target;\n const triggerCollection = getItems().filter((item) => !item.ref.current?.disabled);\n const triggerIndex = triggerCollection.findIndex((item) => item.ref.current === target);\n const triggerCount = triggerCollection.length;\n if (triggerIndex === -1) return;\n event.preventDefault();\n let nextIndex = triggerIndex;\n const homeIndex = 0;\n const endIndex = triggerCount - 1;\n const moveNext = () => {\n nextIndex = triggerIndex + 1;\n if (nextIndex > endIndex) {\n nextIndex = homeIndex;\n }\n };\n const movePrev = () => {\n nextIndex = triggerIndex - 1;\n if (nextIndex < homeIndex) {\n nextIndex = endIndex;\n }\n };\n switch (event.key) {\n case \"Home\":\n nextIndex = homeIndex;\n break;\n case \"End\":\n nextIndex = endIndex;\n break;\n case \"ArrowRight\":\n if (orientation === \"horizontal\") {\n if (isDirectionLTR) {\n moveNext();\n } else {\n movePrev();\n }\n }\n break;\n case \"ArrowDown\":\n if (orientation === \"vertical\") {\n moveNext();\n }\n break;\n case \"ArrowLeft\":\n if (orientation === \"horizontal\") {\n if (isDirectionLTR) {\n movePrev();\n } else {\n moveNext();\n }\n }\n break;\n case \"ArrowUp\":\n if (orientation === \"vertical\") {\n movePrev();\n }\n break;\n }\n const clampedIndex = nextIndex % triggerCount;\n triggerCollection[clampedIndex].ref.current?.focus();\n });\n return /* @__PURE__ */ jsx(\n AccordionImplProvider,\n {\n scope: __scopeAccordion,\n disabled,\n direction: dir,\n orientation,\n children: /* @__PURE__ */ jsx(Collection.Slot, { scope: __scopeAccordion, children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...accordionProps,\n \"data-orientation\": orientation,\n ref: composedRefs,\n onKeyDown: disabled ? void 0 : handleKeyDown\n }\n ) })\n }\n );\n }\n);\nvar ITEM_NAME = \"AccordionItem\";\nvar [AccordionItemProvider, useAccordionItemContext] = createAccordionContext(ITEM_NAME);\nvar AccordionItem = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, value, ...accordionItemProps } = props;\n const accordionContext = useAccordionContext(ITEM_NAME, __scopeAccordion);\n const valueContext = useAccordionValueContext(ITEM_NAME, __scopeAccordion);\n const collapsibleScope = useCollapsibleScope(__scopeAccordion);\n const triggerId = useId();\n const open = value && valueContext.value.includes(value) || false;\n const disabled = accordionContext.disabled || props.disabled;\n return /* @__PURE__ */ jsx(\n AccordionItemProvider,\n {\n scope: __scopeAccordion,\n open,\n disabled,\n triggerId,\n children: /* @__PURE__ */ jsx(\n CollapsiblePrimitive.Root,\n {\n \"data-orientation\": accordionContext.orientation,\n \"data-state\": getState(open),\n ...collapsibleScope,\n ...accordionItemProps,\n ref: forwardedRef,\n disabled,\n open,\n onOpenChange: (open2) => {\n if (open2) {\n valueContext.onItemOpen(value);\n } else {\n valueContext.onItemClose(value);\n }\n }\n }\n )\n }\n );\n }\n);\nAccordionItem.displayName = ITEM_NAME;\nvar HEADER_NAME = \"AccordionHeader\";\nvar AccordionHeader = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, ...headerProps } = props;\n const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);\n const itemContext = useAccordionItemContext(HEADER_NAME, __scopeAccordion);\n return /* @__PURE__ */ jsx(\n Primitive.h3,\n {\n \"data-orientation\": accordionContext.orientation,\n \"data-state\": getState(itemContext.open),\n \"data-disabled\": itemContext.disabled ? \"\" : void 0,\n ...headerProps,\n ref: forwardedRef\n }\n );\n }\n);\nAccordionHeader.displayName = HEADER_NAME;\nvar TRIGGER_NAME = \"AccordionTrigger\";\nvar AccordionTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, ...triggerProps } = props;\n const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);\n const itemContext = useAccordionItemContext(TRIGGER_NAME, __scopeAccordion);\n const collapsibleContext = useAccordionCollapsibleContext(TRIGGER_NAME, __scopeAccordion);\n const collapsibleScope = useCollapsibleScope(__scopeAccordion);\n return /* @__PURE__ */ jsx(Collection.ItemSlot, { scope: __scopeAccordion, children: /* @__PURE__ */ jsx(\n CollapsiblePrimitive.Trigger,\n {\n \"aria-disabled\": itemContext.open && !collapsibleContext.collapsible || void 0,\n \"data-orientation\": accordionContext.orientation,\n id: itemContext.triggerId,\n ...collapsibleScope,\n ...triggerProps,\n ref: forwardedRef\n }\n ) });\n }\n);\nAccordionTrigger.displayName = TRIGGER_NAME;\nvar CONTENT_NAME = \"AccordionContent\";\nvar AccordionContent = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAccordion, ...contentProps } = props;\n const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);\n const itemContext = useAccordionItemContext(CONTENT_NAME, __scopeAccordion);\n const collapsibleScope = useCollapsibleScope(__scopeAccordion);\n return /* @__PURE__ */ jsx(\n CollapsiblePrimitive.Content,\n {\n role: \"region\",\n \"aria-labelledby\": itemContext.triggerId,\n \"data-orientation\": accordionContext.orientation,\n ...collapsibleScope,\n ...contentProps,\n ref: forwardedRef,\n style: {\n [\"--radix-accordion-content-height\"]: \"var(--radix-collapsible-content-height)\",\n [\"--radix-accordion-content-width\"]: \"var(--radix-collapsible-content-width)\",\n ...props.style\n }\n }\n );\n }\n);\nAccordionContent.displayName = CONTENT_NAME;\nfunction getState(open) {\n return open ? \"open\" : \"closed\";\n}\nvar Root2 = Accordion;\nvar Item = AccordionItem;\nvar Header = AccordionHeader;\nvar Trigger2 = AccordionTrigger;\nvar Content2 = AccordionContent;\nexport {\n Accordion,\n AccordionContent,\n AccordionHeader,\n AccordionItem,\n AccordionTrigger,\n Content2 as Content,\n Header,\n Item,\n Root2 as Root,\n Trigger2 as Trigger,\n createAccordionScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as AccordionPrimitive from '@radix-ui/react-accordion';\nimport { ChevronDownIcon } from 'lucide-react';\nimport * as React from 'react';\nimport { cn } from '../../lib';\n\n/**\n * Accordion root component built on top of Radix UI's Accordion.Root.\n *\n * This component simply forwards all props to Radix and adds a `data-slot=\"accordion\"`\n * attribute so it can be targeted by design systems or tests. Use it to wrap\n * one or more AccordionItem children.\n *\n * Accessibility:\n * - Behaves according to the underlying Radix primitive, which follows WAI-ARIA practices.\n *\n * @example\n * ```tsx\n * <Accordion type=\"single\" collapsible defaultValue=\"item-1\">\n * <AccordionItem value=\"item-1\">\n * <AccordionTrigger>Title</AccordionTrigger>\n * <AccordionContent>Body</AccordionContent>\n * </AccordionItem>\n * </Accordion>\n * ```\n *\n * @param props - All props supported by `@radix-ui/react-accordion` Root component.\n * @returns The Accordion root element.\n */\nfunction Accordion({\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Root>) {\n return <AccordionPrimitive.Root data-slot=\"accordion\" {...props} />;\n}\n\n/**\n * A single accordion item container. Wraps a Trigger and Content pair.\n *\n * Adds a bottom border by default (removed on the last item) and forwards all\n * props to Radix's Accordion.Item. Includes `data-slot=\"accordion-item\"` for styling hooks.\n *\n * @param className - Optional class names merged with defaults.\n * @param props - All other props supported by Radix Accordion.Item (e.g., `value`).\n * @returns The Accordion item element.\n */\nfunction AccordionItem({\n className,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Item>) {\n return (\n <AccordionPrimitive.Item\n data-slot=\"accordion-item\"\n className={cn('border-b last:border-b-0', className)}\n {...props}\n />\n );\n}\n\n/**\n * The clickable control that toggles an accordion item's open/closed state.\n *\n * Renders inside a Radix Accordion.Header and forwards props to Accordion.Trigger.\n * Applies utility classes for focus styles and rotates the chevron icon when open.\n * Includes `data-slot=\"accordion-trigger\"` for styling hooks.\n *\n * Accessibility:\n * - Receives correct ARIA attributes from Radix (e.g., aria-expanded, aria-controls).\n * - Fully keyboard accessible.\n *\n * @param className - Optional class names merged with defaults.\n * @param children - The trigger content (usually a title/label).\n * @param props - Other Radix trigger props.\n * @returns A button-like element that controls the item.\n */\nfunction AccordionTrigger({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Trigger>) {\n return (\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger\n data-slot=\"accordion-trigger\"\n className={cn(\n 'focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180',\n className\n )}\n {...props}\n >\n {children}\n <ChevronDownIcon className=\"text-muted-foreground pointer-events-none size-4 shrink-0 translate-y-0.5 transition-transform duration-200\" />\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n );\n}\n\n/**\n * The collapsible region that reveals an accordion item's content.\n *\n * Forwards props to Radix Accordion.Content and adds enter/exit animations via\n * data-state classes. Content is wrapped with padding container. Includes\n * `data-slot=\"accordion-content\"` for styling hooks.\n *\n * @param className - Optional class names merged with inner content wrapper.\n * @param children - The content to display when the item is open.\n * @param props - Other Radix content props.\n * @returns The region that expands/collapses with animation.\n */\nfunction AccordionContent({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Content>) {\n return (\n <AccordionPrimitive.Content\n data-slot=\"accordion-content\"\n className=\"data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm\"\n {...props}\n >\n <div className={cn('pt-0 pb-4', className)}>{children}</div>\n </AccordionPrimitive.Content>\n );\n}\n\nexport { Accordion, AccordionContent, AccordionItem, AccordionTrigger };\n"],"names":["ACCORDION_NAME","ACCORDION_KEYS","Collection","useCollection","createCollectionScope","createCollection","createAccordionContext","createContextScope","createCollapsibleScope","useCollapsibleScope","Accordion","React","props","forwardedRef","type","accordionProps","singleProps","multipleProps","jsx","AccordionImplMultiple","AccordionImplSingle","AccordionValueProvider","useAccordionValueContext","AccordionCollapsibleProvider","useAccordionCollapsibleContext","valueProp","defaultValue","onValueChange","collapsible","accordionSingleProps","value","setValue","useControllableState","AccordionImpl","accordionMultipleProps","handleItemOpen","itemValue","prevValue","handleItemClose","value2","AccordionImplProvider","useAccordionContext","__scopeAccordion","disabled","dir","orientation","accordionRef","composedRefs","useComposedRefs","getItems","isDirectionLTR","useDirection","handleKeyDown","composeEventHandlers","event","target","triggerCollection","item","_a","triggerIndex","triggerCount","nextIndex","homeIndex","endIndex","moveNext","movePrev","clampedIndex","Primitive","ITEM_NAME","AccordionItemProvider","useAccordionItemContext","AccordionItem","accordionItemProps","accordionContext","valueContext","collapsibleScope","triggerId","useId","open","CollapsiblePrimitive.Root","getState","open2","HEADER_NAME","AccordionHeader","headerProps","itemContext","TRIGGER_NAME","AccordionTrigger","triggerProps","collapsibleContext","CollapsiblePrimitive.Trigger","CONTENT_NAME","AccordionContent","contentProps","CollapsiblePrimitive.Content","Root2","Item","Header","Trigger2","Content2","AccordionPrimitive.Root","className","AccordionPrimitive.Item","cn","children","AccordionPrimitive.Header","jsxs","AccordionPrimitive.Trigger","ChevronDownIcon","AccordionPrimitive.Content"],"mappings":";;;;;;;;;;AAeA,IAAIA,IAAiB,aACjBC,KAAiB,CAAC,QAAQ,OAAO,aAAa,WAAW,aAAa,YAAY,GAClF,CAACC,GAAYC,IAAeC,EAAqB,IAAIC,GAAiBL,CAAc,GACpF,CAACM,CAA4C,IAAIC,GAAmBP,GAAgB;AAAA,EACtFI;AAAA,EACAI;AACF,CAAC,GACGC,IAAsBD,EAAsB,GAC5CE,IAAYC,EAAM;AAAA,EACpB,CAACC,GAAOC,MAAiB;AACvB,UAAM,EAAE,MAAAC,GAAM,GAAGC,EAAc,IAAKH,GAC9BI,IAAcD,GACdE,IAAgBF;AACtB,WAAuB,gBAAAG,EAAIhB,EAAW,UAAU,EAAE,OAAOU,EAAM,kBAAkB,UAAUE,MAAS,aAA6B,gBAAAI,EAAIC,IAAuB,EAAE,GAAGF,GAAe,KAAKJ,EAAY,CAAE,IAAoB,gBAAAK,EAAIE,IAAqB,EAAE,GAAGJ,GAAa,KAAKH,EAAY,CAAE,EAAC,CAAE;AAAA,EAC1R;AACF;AACAH,EAAU,cAAcV;AACxB,IAAI,CAACqB,GAAwBC,EAAwB,IAAIhB,EAAuBN,CAAc,GAC1F,CAACuB,GAA8BC,EAA8B,IAAIlB;AAAA,EACnEN;AAAA,EACA,EAAE,aAAa,GAAK;AACtB,GACIoB,KAAsBT,EAAM;AAAA,EAC9B,CAACC,GAAOC,MAAiB;AACvB,UAAM;AAAA,MACJ,OAAOY;AAAA,MACP,cAAAC;AAAA,MACA,eAAAC,IAAgB,MAAM;AAAA,MACtB;AAAA,MACA,aAAAC,IAAc;AAAA,MACd,GAAGC;AAAA,IACT,IAAQjB,GACE,CAACkB,GAAOC,CAAQ,IAAIC,EAAqB;AAAA,MAC7C,MAAMP;AAAA,MACN,aAAaC,KAAgB;AAAA,MAC7B,UAAUC;AAAA,MACV,QAAQ3B;AAAA,IACd,CAAK;AACD,WAAuB,gBAAAkB;AAAA,MACrBG;AAAA,MACA;AAAA,QACE,OAAOT,EAAM;AAAA,QACb,OAAOD,EAAM,QAAQ,MAAMmB,IAAQ,CAACA,CAAK,IAAI,CAAA,GAAI,CAACA,CAAK,CAAC;AAAA,QACxD,YAAYC;AAAA,QACZ,aAAapB,EAAM,YAAY,MAAMiB,KAAeG,EAAS,EAAE,GAAG,CAACH,GAAaG,CAAQ,CAAC;AAAA,QACzF,UAA0B,gBAAAb,EAAIK,GAA8B,EAAE,OAAOX,EAAM,kBAAkB,aAAAgB,GAAa,UAA0B,gBAAAV,EAAIe,GAAe,EAAE,GAAGJ,GAAsB,KAAKhB,EAAY,CAAE,EAAC,CAAE;AAAA,MAChN;AAAA,IACA;AAAA,EACE;AACF,GACIM,KAAwBR,EAAM,WAAW,CAACC,GAAOC,MAAiB;AACpE,QAAM;AAAA,IACJ,OAAOY;AAAA,IACP,cAAAC;AAAA,IACA,eAAAC,IAAgB,MAAM;AAAA,IACtB;AAAA,IACA,GAAGO;AAAA,EACP,IAAMtB,GACE,CAACkB,GAAOC,CAAQ,IAAIC,EAAqB;AAAA,IAC7C,MAAMP;AAAA,IACN,aAAaC,KAAgB,CAAA;AAAA,IAC7B,UAAUC;AAAA,IACV,QAAQ3B;AAAA,EACZ,CAAG,GACKmC,IAAiBxB,EAAM;AAAA,IAC3B,CAACyB,MAAcL,EAAS,CAACM,IAAY,CAAA,MAAO,CAAC,GAAGA,GAAWD,CAAS,CAAC;AAAA,IACrE,CAACL,CAAQ;AAAA,EACb,GACQO,IAAkB3B,EAAM;AAAA,IAC5B,CAACyB,MAAcL,EAAS,CAACM,IAAY,CAAA,MAAOA,EAAU,OAAO,CAACE,MAAWA,MAAWH,CAAS,CAAC;AAAA,IAC9F,CAACL,CAAQ;AAAA,EACb;AACE,SAAuB,gBAAAb;AAAA,IACrBG;AAAA,IACA;AAAA,MACE,OAAOT,EAAM;AAAA,MACb,OAAAkB;AAAA,MACA,YAAYK;AAAA,MACZ,aAAaG;AAAA,MACb,UAA0B,gBAAApB,EAAIK,GAA8B,EAAE,OAAOX,EAAM,kBAAkB,aAAa,IAAM,UAA0B,gBAAAM,EAAIe,GAAe,EAAE,GAAGC,GAAwB,KAAKrB,EAAY,CAAE,EAAC,CAAE;AAAA,IACtN;AAAA,EACA;AACA,CAAC,GACG,CAAC2B,IAAuBC,CAAmB,IAAInC,EAAuBN,CAAc,GACpFiC,IAAgBtB,EAAM;AAAA,EACxB,CAACC,GAAOC,MAAiB;AACvB,UAAM,EAAE,kBAAA6B,GAAkB,UAAAC,GAAU,KAAAC,GAAK,aAAAC,IAAc,YAAY,GAAG9B,EAAc,IAAKH,GACnFkC,IAAenC,EAAM,OAAO,IAAI,GAChCoC,IAAeC,GAAgBF,GAAcjC,CAAY,GACzDoC,IAAW9C,GAAcuC,CAAgB,GAEzCQ,IADYC,GAAaP,CAAG,MACG,OAC/BQ,IAAgBC,EAAqBzC,EAAM,WAAW,CAAC0C,MAAU;;AACrE,UAAI,CAACrD,GAAe,SAASqD,EAAM,GAAG,EAAG;AACzC,YAAMC,IAASD,EAAM,QACfE,IAAoBP,EAAQ,EAAG,OAAO,CAACQ,MAAI;;AAAK,kBAACC,IAAAD,EAAK,IAAI,YAAT,QAAAC,EAAkB;AAAA,OAAQ,GAC3EC,IAAeH,EAAkB,UAAU,CAACC,MAASA,EAAK,IAAI,YAAYF,CAAM,GAChFK,IAAeJ,EAAkB;AACvC,UAAIG,MAAiB,GAAI;AACzB,MAAAL,EAAM,eAAc;AACpB,UAAIO,IAAYF;AAChB,YAAMG,IAAY,GACZC,IAAWH,IAAe,GAC1BI,IAAW,MAAM;AACrB,QAAAH,IAAYF,IAAe,GACvBE,IAAYE,MACdF,IAAYC;AAAA,MAEhB,GACMG,IAAW,MAAM;AACrB,QAAAJ,IAAYF,IAAe,GACvBE,IAAYC,MACdD,IAAYE;AAAA,MAEhB;AACA,cAAQT,EAAM,KAAG;AAAA,QACf,KAAK;AACH,UAAAO,IAAYC;AACZ;AAAA,QACF,KAAK;AACH,UAAAD,IAAYE;AACZ;AAAA,QACF,KAAK;AACH,UAAIlB,MAAgB,iBACdK,IACFc,EAAQ,IAERC,EAAQ;AAGZ;AAAA,QACF,KAAK;AACH,UAAIpB,MAAgB,cAClBmB,EAAQ;AAEV;AAAA,QACF,KAAK;AACH,UAAInB,MAAgB,iBACdK,IACFe,EAAQ,IAERD,EAAQ;AAGZ;AAAA,QACF,KAAK;AACH,UAAInB,MAAgB,cAClBoB,EAAQ;AAEV;AAAA,MACV;AACM,YAAMC,IAAeL,IAAYD;AACjC,OAAAF,IAAAF,EAAkBU,CAAY,EAAE,IAAI,YAApC,QAAAR,EAA6C;AAAA,IAC/C,CAAC;AACD,WAAuB,gBAAAxC;AAAA,MACrBsB;AAAA,MACA;AAAA,QACE,OAAOE;AAAA,QACP,UAAAC;AAAA,QACA,WAAWC;AAAA,QACX,aAAAC;AAAA,QACA,UAA0B,gBAAA3B,EAAIhB,EAAW,MAAM,EAAE,OAAOwC,GAAkB,UAA0B,gBAAAxB;AAAA,UAClGiD,EAAU;AAAA,UACV;AAAA,YACE,GAAGpD;AAAA,YACH,oBAAoB8B;AAAA,YACpB,KAAKE;AAAA,YACL,WAAWJ,IAAW,SAASS;AAAA,UAC3C;AAAA,QACA,EAAS,CAAE;AAAA,MACX;AAAA,IACA;AAAA,EACE;AACF,GACIgB,IAAY,iBACZ,CAACC,IAAuBC,CAAuB,IAAIhE,EAAuB8D,CAAS,GACnFG,IAAgB5D,EAAM;AAAA,EACxB,CAACC,GAAOC,MAAiB;AACvB,UAAM,EAAE,kBAAA6B,GAAkB,OAAAZ,GAAO,GAAG0C,EAAkB,IAAK5D,GACrD6D,IAAmBhC,EAAoB2B,GAAW1B,CAAgB,GAClEgC,IAAepD,GAAyB8C,GAAW1B,CAAgB,GACnEiC,IAAmBlE,EAAoBiC,CAAgB,GACvDkC,IAAYC,GAAK,GACjBC,IAAOhD,KAAS4C,EAAa,MAAM,SAAS5C,CAAK,KAAK,IACtDa,IAAW8B,EAAiB,YAAY7D,EAAM;AACpD,WAAuB,gBAAAM;AAAA,MACrBmD;AAAA,MACA;AAAA,QACE,OAAO3B;AAAA,QACP,MAAAoC;AAAA,QACA,UAAAnC;AAAA,QACA,WAAAiC;AAAA,QACA,UAA0B,gBAAA1D;AAAA,UACxB6D;AAAAA,UACA;AAAA,YACE,oBAAoBN,EAAiB;AAAA,YACrC,cAAcO,EAASF,CAAI;AAAA,YAC3B,GAAGH;AAAA,YACH,GAAGH;AAAA,YACH,KAAK3D;AAAA,YACL,UAAA8B;AAAA,YACA,MAAAmC;AAAA,YACA,cAAc,CAACG,MAAU;AACvB,cAAIA,IACFP,EAAa,WAAW5C,CAAK,IAE7B4C,EAAa,YAAY5C,CAAK;AAAA,YAElC;AAAA,UACZ;AAAA,QACA;AAAA,MACA;AAAA,IACA;AAAA,EACE;AACF;AACAyC,EAAc,cAAcH;AAC5B,IAAIc,IAAc,mBACdC,IAAkBxE,EAAM;AAAA,EAC1B,CAACC,GAAOC,MAAiB;AACvB,UAAM,EAAE,kBAAA6B,GAAkB,GAAG0C,EAAW,IAAKxE,GACvC6D,IAAmBhC,EAAoBzC,GAAgB0C,CAAgB,GACvE2C,IAAcf,EAAwBY,GAAaxC,CAAgB;AACzE,WAAuB,gBAAAxB;AAAA,MACrBiD,EAAU;AAAA,MACV;AAAA,QACE,oBAAoBM,EAAiB;AAAA,QACrC,cAAcO,EAASK,EAAY,IAAI;AAAA,QACvC,iBAAiBA,EAAY,WAAW,KAAK;AAAA,QAC7C,GAAGD;AAAA,QACH,KAAKvE;AAAA,MACb;AAAA,IACA;AAAA,EACE;AACF;AACAsE,EAAgB,cAAcD;AAC9B,IAAII,IAAe,oBACfC,IAAmB5E,EAAM;AAAA,EAC3B,CAACC,GAAOC,MAAiB;AACvB,UAAM,EAAE,kBAAA6B,GAAkB,GAAG8C,EAAY,IAAK5E,GACxC6D,IAAmBhC,EAAoBzC,GAAgB0C,CAAgB,GACvE2C,IAAcf,EAAwBgB,GAAc5C,CAAgB,GACpE+C,IAAqBjE,GAA+B8D,GAAc5C,CAAgB,GAClFiC,IAAmBlE,EAAoBiC,CAAgB;AAC7D,WAAuB,gBAAAxB,EAAIhB,EAAW,UAAU,EAAE,OAAOwC,GAAkB,UAA0B,gBAAAxB;AAAA,MACnGwE;AAAAA,MACA;AAAA,QACE,iBAAiBL,EAAY,QAAQ,CAACI,EAAmB,eAAe;AAAA,QACxE,oBAAoBhB,EAAiB;AAAA,QACrC,IAAIY,EAAY;AAAA,QAChB,GAAGV;AAAA,QACH,GAAGa;AAAA,QACH,KAAK3E;AAAA,MACb;AAAA,IACA,GAAO;AAAA,EACL;AACF;AACA0E,EAAiB,cAAcD;AAC/B,IAAIK,IAAe,oBACfC,IAAmBjF,EAAM;AAAA,EAC3B,CAACC,GAAOC,MAAiB;AACvB,UAAM,EAAE,kBAAA6B,GAAkB,GAAGmD,EAAY,IAAKjF,GACxC6D,IAAmBhC,EAAoBzC,GAAgB0C,CAAgB,GACvE2C,IAAcf,EAAwBqB,GAAcjD,CAAgB,GACpEiC,IAAmBlE,EAAoBiC,CAAgB;AAC7D,WAAuB,gBAAAxB;AAAA,MACrB4E;AAAAA,MACA;AAAA,QACE,MAAM;AAAA,QACN,mBAAmBT,EAAY;AAAA,QAC/B,oBAAoBZ,EAAiB;AAAA,QACrC,GAAGE;AAAA,QACH,GAAGkB;AAAA,QACH,KAAKhF;AAAA,QACL,OAAO;AAAA,UACJ,oCAAqC;AAAA,UACrC,mCAAoC;AAAA,UACrC,GAAGD,EAAM;AAAA,QACnB;AAAA,MACA;AAAA,IACA;AAAA,EACE;AACF;AACAgF,EAAiB,cAAcD;AAC/B,SAASX,EAASF,GAAM;AACtB,SAAOA,IAAO,SAAS;AACzB;AACA,IAAIiB,KAAQrF,GACRsF,KAAOzB,GACP0B,KAASd,GACTe,KAAWX,GACXY,KAAWP;ACrRf,SAASlF,GAAU;AAAA,EACjB,GAAGE;AACL,GAAyD;AACvD,2BAAQwF,IAAA,EAAwB,aAAU,aAAa,GAAGxF,GAAO;AACnE;AAYA,SAAS2D,GAAc;AAAA,EACrB,WAAA8B;AAAA,EACA,GAAGzF;AACL,GAAyD;AACvD,SACE,gBAAAM;AAAA,IAACoF;AAAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWC,EAAG,4BAA4BF,CAAS;AAAA,MAClD,GAAGzF;AAAA,IAAA;AAAA,EAAA;AAGV;AAkBA,SAAS2E,GAAiB;AAAA,EACxB,WAAAc;AAAA,EACA,UAAAG;AAAA,EACA,GAAG5F;AACL,GAA4D;AAC1D,SACE,gBAAAM,EAACuF,IAAA,EAA0B,WAAU,QACnC,UAAA,gBAAAC;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAWJ;AAAA,QACT;AAAA,QACAF;AAAA,MAAA;AAAA,MAED,GAAGzF;AAAA,MAEH,UAAA;AAAA,QAAA4F;AAAA,QACD,gBAAAtF,EAAC0F,IAAA,EAAgB,WAAU,8GAAA,CAA8G;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,GAE7I;AAEJ;AAcA,SAAShB,GAAiB;AAAA,EACxB,WAAAS;AAAA,EACA,UAAAG;AAAA,EACA,GAAG5F;AACL,GAA4D;AAC1D,SACE,gBAAAM;AAAA,IAAC2F;AAAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,WAAU;AAAA,MACT,GAAGjG;AAAA,MAEJ,4BAAC,OAAA,EAAI,WAAW2F,EAAG,aAAaF,CAAS,GAAI,UAAAG,EAAA,CAAS;AAAA,IAAA;AAAA,EAAA;AAG5D;","x_google_ignoreList":[0]}