@cerberus-design/react 0.16.0-next-004ae01 → 0.16.0-next-7f1fa64

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 (97) hide show
  1. package/build/legacy/_tsup-dts-rollup.d.cts +104 -112
  2. package/build/legacy/components/accordion/index.cjs +178 -0
  3. package/build/legacy/components/accordion/index.cjs.map +1 -0
  4. package/build/legacy/components/accordion/item-group.cjs +166 -0
  5. package/build/legacy/components/accordion/item-group.cjs.map +1 -0
  6. package/build/legacy/components/accordion/item-indicator.cjs +114 -0
  7. package/build/legacy/components/accordion/item-indicator.cjs.map +1 -0
  8. package/build/legacy/components/accordion/parts.cjs +91 -0
  9. package/build/legacy/components/accordion/parts.cjs.map +1 -0
  10. package/build/legacy/components/{Accordion.cjs → accordion/primitives.cjs} +35 -32
  11. package/build/legacy/components/accordion/primitives.cjs.map +1 -0
  12. package/build/legacy/index.cjs +471 -473
  13. package/build/legacy/index.cjs.map +1 -1
  14. package/build/modern/_tsup-dts-rollup.d.ts +104 -112
  15. package/build/modern/{chunk-RHCTPSKT.js → chunk-2KPSUYFL.js} +4 -4
  16. package/build/modern/{chunk-6I2FW4WI.js → chunk-32M5JS5F.js} +5 -5
  17. package/build/modern/{chunk-FBS7AX76.js → chunk-3J5D3O6Z.js} +5 -5
  18. package/build/modern/chunk-6OJ27QWV.js +21 -0
  19. package/build/modern/chunk-6OJ27QWV.js.map +1 -0
  20. package/build/modern/{chunk-RKVY2HJ3.js → chunk-AAGQR6B4.js} +4 -4
  21. package/build/modern/chunk-CPNKDKC2.js +64 -0
  22. package/build/modern/chunk-CPNKDKC2.js.map +1 -0
  23. package/build/modern/chunk-FWVFM7RK.js +38 -0
  24. package/build/modern/chunk-FWVFM7RK.js.map +1 -0
  25. package/build/modern/chunk-R2V75WU6.js +1 -0
  26. package/build/modern/{chunk-R7MPDSXX.js → chunk-R662TP4N.js} +5 -5
  27. package/build/modern/{chunk-LT62577B.js → chunk-R7IDIIST.js} +2 -2
  28. package/build/modern/{chunk-VSTOSLFS.js → chunk-VNPLKMEM.js} +4 -4
  29. package/build/modern/{chunk-U5XRQ2JZ.js → chunk-WA3QADO4.js} +4 -4
  30. package/build/modern/chunk-XBDEIBW2.js +21 -0
  31. package/build/modern/chunk-XBDEIBW2.js.map +1 -0
  32. package/build/modern/{chunk-QQCB6JXW.js → chunk-XTIIAYPU.js} +4 -4
  33. package/build/modern/{chunk-VTQ6RW3Z.js → chunk-Z6EXPMTS.js} +3 -3
  34. package/build/modern/components/DatePicker.client.js +3 -3
  35. package/build/modern/components/FileStatus.js +6 -6
  36. package/build/modern/components/accordion/index.js +31 -0
  37. package/build/modern/components/accordion/item-group.js +16 -0
  38. package/build/modern/components/accordion/item-indicator.js +11 -0
  39. package/build/modern/components/accordion/item-indicator.js.map +1 -0
  40. package/build/modern/components/accordion/parts.js +8 -0
  41. package/build/modern/components/accordion/parts.js.map +1 -0
  42. package/build/modern/components/accordion/primitives.js +15 -0
  43. package/build/modern/components/accordion/primitives.js.map +1 -0
  44. package/build/modern/components/combobox/index.js +3 -3
  45. package/build/modern/components/cta-dialog/index.js +2 -2
  46. package/build/modern/components/cta-dialog/provider.js +2 -2
  47. package/build/modern/components/deprecated/Label.js +6 -6
  48. package/build/modern/components/field/field.js +4 -4
  49. package/build/modern/components/field/index.js +7 -7
  50. package/build/modern/components/field/parts.js +3 -3
  51. package/build/modern/components/field/primitives.js +2 -2
  52. package/build/modern/components/rating/index.js +2 -2
  53. package/build/modern/components/rating/rating.js +2 -2
  54. package/build/modern/components/select/index.js +4 -4
  55. package/build/modern/context/confirm-modal.js +3 -3
  56. package/build/modern/context/field.js +2 -2
  57. package/build/modern/context/notification-center.js +3 -3
  58. package/build/modern/context/prompt-modal.js +8 -8
  59. package/build/modern/index.js +118 -112
  60. package/build/modern/index.js.map +1 -1
  61. package/package.json +2 -2
  62. package/src/components/accordion/index.ts +3 -0
  63. package/src/components/accordion/item-group.tsx +66 -0
  64. package/src/components/accordion/item-indicator.tsx +27 -0
  65. package/src/components/accordion/parts.ts +53 -0
  66. package/src/components/accordion/primitives.tsx +101 -0
  67. package/src/index.ts +1 -3
  68. package/build/legacy/components/Accordion.cjs.map +0 -1
  69. package/build/legacy/components/Accordion.client.cjs +0 -64
  70. package/build/legacy/components/Accordion.client.cjs.map +0 -1
  71. package/build/legacy/components/AccordionItemGroup.cjs +0 -142
  72. package/build/legacy/components/AccordionItemGroup.cjs.map +0 -1
  73. package/build/modern/chunk-AZRFYQO7.js +0 -60
  74. package/build/modern/chunk-AZRFYQO7.js.map +0 -1
  75. package/build/modern/chunk-WN7TJX6J.js +0 -41
  76. package/build/modern/chunk-WN7TJX6J.js.map +0 -1
  77. package/build/modern/chunk-XZGXRRSQ.js +0 -31
  78. package/build/modern/chunk-XZGXRRSQ.js.map +0 -1
  79. package/build/modern/components/Accordion.client.js +0 -9
  80. package/build/modern/components/Accordion.js +0 -13
  81. package/build/modern/components/AccordionItemGroup.js +0 -11
  82. package/src/components/Accordion.client.tsx +0 -46
  83. package/src/components/Accordion.tsx +0 -125
  84. package/src/components/AccordionItemGroup.tsx +0 -79
  85. /package/build/modern/{chunk-RHCTPSKT.js.map → chunk-2KPSUYFL.js.map} +0 -0
  86. /package/build/modern/{chunk-6I2FW4WI.js.map → chunk-32M5JS5F.js.map} +0 -0
  87. /package/build/modern/{chunk-FBS7AX76.js.map → chunk-3J5D3O6Z.js.map} +0 -0
  88. /package/build/modern/{chunk-RKVY2HJ3.js.map → chunk-AAGQR6B4.js.map} +0 -0
  89. /package/build/modern/{components/Accordion.client.js.map → chunk-R2V75WU6.js.map} +0 -0
  90. /package/build/modern/{chunk-R7MPDSXX.js.map → chunk-R662TP4N.js.map} +0 -0
  91. /package/build/modern/{chunk-LT62577B.js.map → chunk-R7IDIIST.js.map} +0 -0
  92. /package/build/modern/{chunk-VSTOSLFS.js.map → chunk-VNPLKMEM.js.map} +0 -0
  93. /package/build/modern/{chunk-U5XRQ2JZ.js.map → chunk-WA3QADO4.js.map} +0 -0
  94. /package/build/modern/{chunk-QQCB6JXW.js.map → chunk-XTIIAYPU.js.map} +0 -0
  95. /package/build/modern/{chunk-VTQ6RW3Z.js.map → chunk-Z6EXPMTS.js.map} +0 -0
  96. /package/build/modern/components/{Accordion.js.map → accordion/index.js.map} +0 -0
  97. /package/build/modern/components/{AccordionItemGroup.js.map → accordion/item-group.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/accordion/item-group.tsx","../../../../src/utils/index.ts","../../../../src/components/Show.tsx","../../../../src/components/accordion/primitives.tsx","../../../../src/components/accordion/parts.ts","../../../../src/context/cerberus.tsx","../../../../src/components/accordion/item-indicator.tsx"],"sourcesContent":["import type { AccordionItemProps } from '@ark-ui/react/accordion'\nimport { type AccordionVariantProps } from '@cerberus/styled-system/recipes'\nimport { splitProps } from '../../utils/index'\nimport { Show } from '../Show'\nimport { AccordionParts } from './parts'\nimport { AccordionChevronItemIndicator } from './item-indicator'\n\n/**\n * This module contains an abstraction of the AccordionItem components.\n * @module\n */\n\n// We are only exposing this to keep the API consistent\nexport const Accordion = AccordionParts.Root\n\nexport interface AccordionItemGroupProps\n extends AccordionItemProps,\n AccordionVariantProps {\n /**\n * The heading of the accordion item to open and close the content.\n */\n heading: string\n /**\n * The position of the arrow indicator.\n */\n indicatorPosition?: 'start' | 'end'\n}\n\n/**\n * The AccordionItemGroup component is an abstraction of the Accordion primitive\n * components which renders an accordion item with a heading and an indicator.\n *\n * It is a wrapper around the `AccordionParts.Item`, `AccordionParts.\n * ItemTrigger`, `AccordionParts.ItemIndicator`, and `AccordionParts.ItemContent` components.\n *\n * @description [Cerberus docs](https://cerberus.digitalu.design/react/accordion)\n * @description [Ark docs](https://ark-ui.com/react/docs/components/accordion)\n */\nexport function AccordionItemGroup(props: AccordionItemGroupProps) {\n const [groupProps, itemProps] = splitProps(props, [\n 'heading',\n 'children',\n 'indicatorPosition',\n ])\n const indicatorPosition = groupProps.indicatorPosition ?? 'end'\n\n return (\n <AccordionParts.Item {...itemProps}>\n <AccordionParts.ItemTrigger data-indicator-position={indicatorPosition}>\n <Show when={indicatorPosition === 'start'}>\n <AccordionChevronItemIndicator />\n </Show>\n\n {groupProps.heading}\n\n <Show when={indicatorPosition === 'end'}>\n <AccordionChevronItemIndicator />\n </Show>\n </AccordionParts.ItemTrigger>\n\n <AccordionParts.ItemContent>\n {groupProps.children}\n </AccordionParts.ItemContent>\n </AccordionParts.Item>\n )\n}\n","/**\n * This module contains utility functions that are used across your app.\n * @module Utils\n */\n\n/**\n * Formats the count of notifications to be displayed in the notification badge.\n * @param count - The number of notifications.\n * @returns The formatted count of notifications.\n * @example\n * ```tsx\n * const count = formatNotifyCount(100)\n * console.log(count) // '99+'\n * ```\n */\nexport function formatNotifyCount(count: number): string {\n if (count > 99) return '99+'\n return count.toString()\n}\n\n/**\n * Splits the properties of an object into multiple groups based on lists of keys.\n * @param props - The object to split.\n * @param keyGroups - The lists of keys to include in each group.\n * @returns An array of objects: each containing the properties specified in the corresponding key group, and the last object containing the remaining keys.\n */\nexport function splitProps<T extends object>(\n props: T,\n ...keyGroups: (keyof T)[][]\n): { [K in keyof T]?: T[K] }[] {\n const result = keyGroups.map(() => ({}) as { [K in keyof T]?: T[K] })\n const rest = {} as { [K in keyof T]?: T[K] }\n\n for (const key in props) {\n let assigned = false\n for (let i = 0; i < keyGroups.length; i++) {\n if (keyGroups[i].includes(key as keyof T)) {\n result[i][key as keyof T] = props[key]\n assigned = true\n break\n }\n }\n if (!assigned) {\n rest[key as keyof T] = props[key]\n }\n }\n\n return [...result, rest]\n}\n\nexport * from './localStorage'\n","'use client'\n\nimport { useMemo, type PropsWithChildren, type ReactNode } from 'react'\n\n/**\n * This module contains the Show component.\n * @module\n */\n\nexport interface ShowProps {\n /**\n * The condition to render memoized children or the fallback content.\n */\n when: boolean | null | undefined\n /**\n * The children to render when the condition is false.\n */\n fallback?: ReactNode\n}\n\n/**\n * Conditionally render a memoized version of the children or optional fallback\n * content.\n * @see https://cerberus.digitalu.design/react/show\n * @example\n * ```tsx\n * <Show when={isLoggedIn} fallback={<Navigate to=\"/login\" />}>\n * <Dashboard />\n * </Show>\n */\nexport function Show(props: PropsWithChildren<ShowProps>): ReactNode {\n const { when, children, fallback } = props\n const condition = useMemo(() => when ?? false, [when])\n\n return useMemo(() => {\n if (condition) return children\n return fallback ?? null\n }, [condition, children, fallback])\n}\n","import {\n Accordion,\n type AccordionItemContentProps,\n type AccordionItemIndicatorProps,\n type AccordionItemProps,\n type AccordionItemTriggerProps,\n type AccordionRootProps,\n} from '@ark-ui/react/accordion'\nimport { cx } from '@cerberus/styled-system/css'\nimport {\n accordion,\n type AccordionVariantProps,\n} from '@cerberus/styled-system/recipes'\n\n/**\n * This module contains the primitives of the Accordion component.\n * @module 'accordion/primitives'\n */\n\n/**\n * The primitive root component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Root` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionRoot(\n props: AccordionRootProps & AccordionVariantProps,\n) {\n const { size, ...rootProps } = props\n const styles = accordion({ size })\n return (\n <Accordion.Root\n {...props}\n className={cx(styles.root, rootProps.className)}\n data-size={size}\n />\n )\n}\n\n/**\n * The primitive item component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Item` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItem(\n props: AccordionItemProps & AccordionVariantProps,\n) {\n const styles = accordion()\n return (\n <Accordion.Item {...props} className={cx(styles.item, props.className)} />\n )\n}\n\n/**\n * The primitive trigger component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemTrigger` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemTrigger(props: AccordionItemTriggerProps) {\n const styles = accordion()\n return (\n <Accordion.ItemTrigger\n {...props}\n className={cx(styles.itemTrigger, props.className)}\n />\n )\n}\n\n/**\n * The primitive item indicator component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemIndicator` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemIndicator(props: AccordionItemIndicatorProps) {\n const styles = accordion()\n return (\n <Accordion.ItemIndicator\n {...props}\n className={cx(styles.itemIndicator, props.className)}\n />\n )\n}\n\n/**\n * The primitive content component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Content` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemContent(props: AccordionItemContentProps) {\n const styles = accordion()\n return (\n <Accordion.ItemContent\n {...props}\n className={cx(styles.itemContent, props.className)}\n />\n )\n}\n","import type { ElementType } from 'react'\nimport {\n AccordionItem,\n AccordionItemContent,\n AccordionItemIndicator,\n AccordionItemTrigger,\n AccordionRoot,\n} from './primitives'\n\n/**\n * This module contains the parts of the Accordion component.\n * @module 'accordion/parts'\n */\n\ninterface AccordionPartsValue {\n /**\n * The context provider of the accordion.\n */\n Root: ElementType\n /**\n * The item of the accordion.\n */\n Item: ElementType\n /**\n * The trigger of the accordion item.\n */\n ItemTrigger: ElementType\n /**\n * The content of the accordion item.\n */\n ItemContent: ElementType\n /**\n * The indicator of the accordion item.\n */\n ItemIndicator: ElementType\n}\n\n/**\n * An Object containing the parts of the Accordion component. For users that\n * prefer Object component syntax.\n *\n * @remarks\n *\n * When using object component syntax, you import the AccordionParts object and\n * the entire family of components vs. only what you use.\n */\nexport const AccordionParts: AccordionPartsValue = {\n Root: AccordionRoot,\n Item: AccordionItem,\n ItemTrigger: AccordionItemTrigger,\n ItemContent: AccordionItemContent,\n ItemIndicator: AccordionItemIndicator,\n}\n","'use client'\n\nimport { createContext, useContext, type PropsWithChildren } from 'react'\nimport type { SystemConfig } from '../config'\n\n/**\n * This module contains the Cerberus configuration context and helpers.\n * @module context/cerberus\n */\n\ntype CerberusContextValue = SystemConfig\n\nconst CerberusContext = createContext<CerberusContextValue | null>(null)\n\ninterface CerberusProviderProps {\n config: SystemConfig\n}\n\n/**\n * Cerberus configuration provider.\n * @param props.config The Cerberus configuration created with\n * `makeSystemConfig` helper.\n */\nexport function CerberusProvider(\n props: PropsWithChildren<CerberusProviderProps>,\n) {\n return (\n <CerberusContext.Provider value={props.config}>\n {props.children}\n </CerberusContext.Provider>\n )\n}\n\n/**\n * Returns the Cerberus configuration context.\n * @returns The Cerberus configuration context.\n */\nexport function useCerberusContext() {\n const context = useContext(CerberusContext)\n if (!context) {\n throw new Error('useCerberus must be used within a CerberusProvider')\n }\n return context\n}\n","'use client'\n\nimport { type AccordionItemIndicatorProps } from '@ark-ui/react/accordion'\nimport { type AccordionVariantProps } from '@cerberus/styled-system/recipes'\nimport { useCerberusContext } from '../../context/cerberus'\nimport { AccordionParts } from './parts'\n\n/**\n * This module contains the internal AccordionItemIndicator component.\n * @module 'accordion/item-indicator'\n */\n\nexport function AccordionChevronItemIndicator(\n props: AccordionItemIndicatorProps & AccordionVariantProps,\n) {\n const { size, ...indicatorProps } = props\n const iconSize = size === 'sm' ? 16 : '24'\n\n const { icons } = useCerberusContext()\n const { accordionIndicator: ChevronDown } = icons\n\n return (\n <AccordionParts.ItemIndicator {...indicatorProps}>\n <ChevronDown size={iconSize} />\n </AccordionParts.ItemIndicator>\n )\n}\n"],"mappings":"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","names":["Accordion","import_react","import_jsx_runtime","import_jsx_runtime","import_jsx_runtime","Accordion"]}
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ "use client";
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+
21
+ // src/components/accordion/item-indicator.tsx
22
+ var item_indicator_exports = {};
23
+ __export(item_indicator_exports, {
24
+ AccordionChevronItemIndicator: () => AccordionChevronItemIndicator
25
+ });
26
+ module.exports = __toCommonJS(item_indicator_exports);
27
+
28
+ // src/context/cerberus.tsx
29
+ var import_react = require("react");
30
+ var import_jsx_runtime = require("react/jsx-runtime");
31
+ var CerberusContext = (0, import_react.createContext)(null);
32
+ function useCerberusContext() {
33
+ const context = (0, import_react.useContext)(CerberusContext);
34
+ if (!context) {
35
+ throw new Error("useCerberus must be used within a CerberusProvider");
36
+ }
37
+ return context;
38
+ }
39
+
40
+ // src/components/accordion/primitives.tsx
41
+ var import_accordion = require("@ark-ui/react/accordion");
42
+ var import_css = require("@cerberus/styled-system/css");
43
+ var import_recipes = require("@cerberus/styled-system/recipes");
44
+ var import_jsx_runtime2 = require("react/jsx-runtime");
45
+ function AccordionRoot(props) {
46
+ const { size, ...rootProps } = props;
47
+ const styles = (0, import_recipes.accordion)({ size });
48
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
49
+ import_accordion.Accordion.Root,
50
+ {
51
+ ...props,
52
+ className: (0, import_css.cx)(styles.root, rootProps.className),
53
+ "data-size": size
54
+ }
55
+ );
56
+ }
57
+ function AccordionItem(props) {
58
+ const styles = (0, import_recipes.accordion)();
59
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_accordion.Accordion.Item, { ...props, className: (0, import_css.cx)(styles.item, props.className) });
60
+ }
61
+ function AccordionItemTrigger(props) {
62
+ const styles = (0, import_recipes.accordion)();
63
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
64
+ import_accordion.Accordion.ItemTrigger,
65
+ {
66
+ ...props,
67
+ className: (0, import_css.cx)(styles.itemTrigger, props.className)
68
+ }
69
+ );
70
+ }
71
+ function AccordionItemIndicator(props) {
72
+ const styles = (0, import_recipes.accordion)();
73
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
74
+ import_accordion.Accordion.ItemIndicator,
75
+ {
76
+ ...props,
77
+ className: (0, import_css.cx)(styles.itemIndicator, props.className)
78
+ }
79
+ );
80
+ }
81
+ function AccordionItemContent(props) {
82
+ const styles = (0, import_recipes.accordion)();
83
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
84
+ import_accordion.Accordion.ItemContent,
85
+ {
86
+ ...props,
87
+ className: (0, import_css.cx)(styles.itemContent, props.className)
88
+ }
89
+ );
90
+ }
91
+
92
+ // src/components/accordion/parts.ts
93
+ var AccordionParts = {
94
+ Root: AccordionRoot,
95
+ Item: AccordionItem,
96
+ ItemTrigger: AccordionItemTrigger,
97
+ ItemContent: AccordionItemContent,
98
+ ItemIndicator: AccordionItemIndicator
99
+ };
100
+
101
+ // src/components/accordion/item-indicator.tsx
102
+ var import_jsx_runtime3 = require("react/jsx-runtime");
103
+ function AccordionChevronItemIndicator(props) {
104
+ const { size, ...indicatorProps } = props;
105
+ const iconSize = size === "sm" ? 16 : "24";
106
+ const { icons } = useCerberusContext();
107
+ const { accordionIndicator: ChevronDown } = icons;
108
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(AccordionParts.ItemIndicator, { ...indicatorProps, children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(ChevronDown, { size: iconSize }) });
109
+ }
110
+ // Annotate the CommonJS export names for ESM import in node:
111
+ 0 && (module.exports = {
112
+ AccordionChevronItemIndicator
113
+ });
114
+ //# sourceMappingURL=item-indicator.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/accordion/item-indicator.tsx","../../../../src/context/cerberus.tsx","../../../../src/components/accordion/primitives.tsx","../../../../src/components/accordion/parts.ts"],"sourcesContent":["'use client'\n\nimport { type AccordionItemIndicatorProps } from '@ark-ui/react/accordion'\nimport { type AccordionVariantProps } from '@cerberus/styled-system/recipes'\nimport { useCerberusContext } from '../../context/cerberus'\nimport { AccordionParts } from './parts'\n\n/**\n * This module contains the internal AccordionItemIndicator component.\n * @module 'accordion/item-indicator'\n */\n\nexport function AccordionChevronItemIndicator(\n props: AccordionItemIndicatorProps & AccordionVariantProps,\n) {\n const { size, ...indicatorProps } = props\n const iconSize = size === 'sm' ? 16 : '24'\n\n const { icons } = useCerberusContext()\n const { accordionIndicator: ChevronDown } = icons\n\n return (\n <AccordionParts.ItemIndicator {...indicatorProps}>\n <ChevronDown size={iconSize} />\n </AccordionParts.ItemIndicator>\n )\n}\n","'use client'\n\nimport { createContext, useContext, type PropsWithChildren } from 'react'\nimport type { SystemConfig } from '../config'\n\n/**\n * This module contains the Cerberus configuration context and helpers.\n * @module context/cerberus\n */\n\ntype CerberusContextValue = SystemConfig\n\nconst CerberusContext = createContext<CerberusContextValue | null>(null)\n\ninterface CerberusProviderProps {\n config: SystemConfig\n}\n\n/**\n * Cerberus configuration provider.\n * @param props.config The Cerberus configuration created with\n * `makeSystemConfig` helper.\n */\nexport function CerberusProvider(\n props: PropsWithChildren<CerberusProviderProps>,\n) {\n return (\n <CerberusContext.Provider value={props.config}>\n {props.children}\n </CerberusContext.Provider>\n )\n}\n\n/**\n * Returns the Cerberus configuration context.\n * @returns The Cerberus configuration context.\n */\nexport function useCerberusContext() {\n const context = useContext(CerberusContext)\n if (!context) {\n throw new Error('useCerberus must be used within a CerberusProvider')\n }\n return context\n}\n","import {\n Accordion,\n type AccordionItemContentProps,\n type AccordionItemIndicatorProps,\n type AccordionItemProps,\n type AccordionItemTriggerProps,\n type AccordionRootProps,\n} from '@ark-ui/react/accordion'\nimport { cx } from '@cerberus/styled-system/css'\nimport {\n accordion,\n type AccordionVariantProps,\n} from '@cerberus/styled-system/recipes'\n\n/**\n * This module contains the primitives of the Accordion component.\n * @module 'accordion/primitives'\n */\n\n/**\n * The primitive root component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Root` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionRoot(\n props: AccordionRootProps & AccordionVariantProps,\n) {\n const { size, ...rootProps } = props\n const styles = accordion({ size })\n return (\n <Accordion.Root\n {...props}\n className={cx(styles.root, rootProps.className)}\n data-size={size}\n />\n )\n}\n\n/**\n * The primitive item component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Item` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItem(\n props: AccordionItemProps & AccordionVariantProps,\n) {\n const styles = accordion()\n return (\n <Accordion.Item {...props} className={cx(styles.item, props.className)} />\n )\n}\n\n/**\n * The primitive trigger component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemTrigger` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemTrigger(props: AccordionItemTriggerProps) {\n const styles = accordion()\n return (\n <Accordion.ItemTrigger\n {...props}\n className={cx(styles.itemTrigger, props.className)}\n />\n )\n}\n\n/**\n * The primitive item indicator component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemIndicator` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemIndicator(props: AccordionItemIndicatorProps) {\n const styles = accordion()\n return (\n <Accordion.ItemIndicator\n {...props}\n className={cx(styles.itemIndicator, props.className)}\n />\n )\n}\n\n/**\n * The primitive content component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Content` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemContent(props: AccordionItemContentProps) {\n const styles = accordion()\n return (\n <Accordion.ItemContent\n {...props}\n className={cx(styles.itemContent, props.className)}\n />\n )\n}\n","import type { ElementType } from 'react'\nimport {\n AccordionItem,\n AccordionItemContent,\n AccordionItemIndicator,\n AccordionItemTrigger,\n AccordionRoot,\n} from './primitives'\n\n/**\n * This module contains the parts of the Accordion component.\n * @module 'accordion/parts'\n */\n\ninterface AccordionPartsValue {\n /**\n * The context provider of the accordion.\n */\n Root: ElementType\n /**\n * The item of the accordion.\n */\n Item: ElementType\n /**\n * The trigger of the accordion item.\n */\n ItemTrigger: ElementType\n /**\n * The content of the accordion item.\n */\n ItemContent: ElementType\n /**\n * The indicator of the accordion item.\n */\n ItemIndicator: ElementType\n}\n\n/**\n * An Object containing the parts of the Accordion component. For users that\n * prefer Object component syntax.\n *\n * @remarks\n *\n * When using object component syntax, you import the AccordionParts object and\n * the entire family of components vs. only what you use.\n */\nexport const AccordionParts: AccordionPartsValue = {\n Root: AccordionRoot,\n Item: AccordionItem,\n ItemTrigger: AccordionItemTrigger,\n ItemContent: AccordionItemContent,\n ItemIndicator: AccordionItemIndicator,\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACEA,mBAAkE;AAyB9D;AAfJ,IAAM,sBAAkB,4BAA2C,IAAI;AAyBhE,SAAS,qBAAqB;AACnC,QAAM,cAAU,yBAAW,eAAe;AAC1C,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,oDAAoD;AAAA,EACtE;AACA,SAAO;AACT;;;AC3CA,uBAOO;AACP,iBAAmB;AACnB,qBAGO;AAmBH,IAAAA,sBAAA;AANG,SAAS,cACd,OACA;AACA,QAAM,EAAE,MAAM,GAAG,UAAU,IAAI;AAC/B,QAAM,aAAS,0BAAU,EAAE,KAAK,CAAC;AACjC,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,MAAM,UAAU,SAAS;AAAA,MAC9C,aAAW;AAAA;AAAA,EACb;AAEJ;AAQO,SAAS,cACd,OACA;AACA,QAAM,aAAS,0BAAU;AACzB,SACE,6CAAC,2BAAU,MAAV,EAAgB,GAAG,OAAO,eAAW,eAAG,OAAO,MAAM,MAAM,SAAS,GAAG;AAE5E;AAQO,SAAS,qBAAqB,OAAkC;AACrE,QAAM,aAAS,0BAAU;AACzB,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,aAAa,MAAM,SAAS;AAAA;AAAA,EACnD;AAEJ;AAQO,SAAS,uBAAuB,OAAoC;AACzE,QAAM,aAAS,0BAAU;AACzB,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,eAAe,MAAM,SAAS;AAAA;AAAA,EACrD;AAEJ;AAQO,SAAS,qBAAqB,OAAkC;AACrE,QAAM,aAAS,0BAAU;AACzB,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,aAAa,MAAM,SAAS;AAAA;AAAA,EACnD;AAEJ;;;ACtDO,IAAM,iBAAsC;AAAA,EACjD,MAAM;AAAA,EACN,MAAM;AAAA,EACN,aAAa;AAAA,EACb,aAAa;AAAA,EACb,eAAe;AACjB;;;AH7BM,IAAAC,sBAAA;AAXC,SAAS,8BACd,OACA;AACA,QAAM,EAAE,MAAM,GAAG,eAAe,IAAI;AACpC,QAAM,WAAW,SAAS,OAAO,KAAK;AAEtC,QAAM,EAAE,MAAM,IAAI,mBAAmB;AACrC,QAAM,EAAE,oBAAoB,YAAY,IAAI;AAE5C,SACE,6CAAC,eAAe,eAAf,EAA8B,GAAG,gBAChC,uDAAC,eAAY,MAAM,UAAU,GAC/B;AAEJ;","names":["import_jsx_runtime","import_jsx_runtime"]}
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/components/accordion/parts.ts
21
+ var parts_exports = {};
22
+ __export(parts_exports, {
23
+ AccordionParts: () => AccordionParts
24
+ });
25
+ module.exports = __toCommonJS(parts_exports);
26
+
27
+ // src/components/accordion/primitives.tsx
28
+ var import_accordion = require("@ark-ui/react/accordion");
29
+ var import_css = require("@cerberus/styled-system/css");
30
+ var import_recipes = require("@cerberus/styled-system/recipes");
31
+ var import_jsx_runtime = require("react/jsx-runtime");
32
+ function AccordionRoot(props) {
33
+ const { size, ...rootProps } = props;
34
+ const styles = (0, import_recipes.accordion)({ size });
35
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
36
+ import_accordion.Accordion.Root,
37
+ {
38
+ ...props,
39
+ className: (0, import_css.cx)(styles.root, rootProps.className),
40
+ "data-size": size
41
+ }
42
+ );
43
+ }
44
+ function AccordionItem(props) {
45
+ const styles = (0, import_recipes.accordion)();
46
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_accordion.Accordion.Item, { ...props, className: (0, import_css.cx)(styles.item, props.className) });
47
+ }
48
+ function AccordionItemTrigger(props) {
49
+ const styles = (0, import_recipes.accordion)();
50
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
51
+ import_accordion.Accordion.ItemTrigger,
52
+ {
53
+ ...props,
54
+ className: (0, import_css.cx)(styles.itemTrigger, props.className)
55
+ }
56
+ );
57
+ }
58
+ function AccordionItemIndicator(props) {
59
+ const styles = (0, import_recipes.accordion)();
60
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
61
+ import_accordion.Accordion.ItemIndicator,
62
+ {
63
+ ...props,
64
+ className: (0, import_css.cx)(styles.itemIndicator, props.className)
65
+ }
66
+ );
67
+ }
68
+ function AccordionItemContent(props) {
69
+ const styles = (0, import_recipes.accordion)();
70
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
71
+ import_accordion.Accordion.ItemContent,
72
+ {
73
+ ...props,
74
+ className: (0, import_css.cx)(styles.itemContent, props.className)
75
+ }
76
+ );
77
+ }
78
+
79
+ // src/components/accordion/parts.ts
80
+ var AccordionParts = {
81
+ Root: AccordionRoot,
82
+ Item: AccordionItem,
83
+ ItemTrigger: AccordionItemTrigger,
84
+ ItemContent: AccordionItemContent,
85
+ ItemIndicator: AccordionItemIndicator
86
+ };
87
+ // Annotate the CommonJS export names for ESM import in node:
88
+ 0 && (module.exports = {
89
+ AccordionParts
90
+ });
91
+ //# sourceMappingURL=parts.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/accordion/parts.ts","../../../../src/components/accordion/primitives.tsx"],"sourcesContent":["import type { ElementType } from 'react'\nimport {\n AccordionItem,\n AccordionItemContent,\n AccordionItemIndicator,\n AccordionItemTrigger,\n AccordionRoot,\n} from './primitives'\n\n/**\n * This module contains the parts of the Accordion component.\n * @module 'accordion/parts'\n */\n\ninterface AccordionPartsValue {\n /**\n * The context provider of the accordion.\n */\n Root: ElementType\n /**\n * The item of the accordion.\n */\n Item: ElementType\n /**\n * The trigger of the accordion item.\n */\n ItemTrigger: ElementType\n /**\n * The content of the accordion item.\n */\n ItemContent: ElementType\n /**\n * The indicator of the accordion item.\n */\n ItemIndicator: ElementType\n}\n\n/**\n * An Object containing the parts of the Accordion component. For users that\n * prefer Object component syntax.\n *\n * @remarks\n *\n * When using object component syntax, you import the AccordionParts object and\n * the entire family of components vs. only what you use.\n */\nexport const AccordionParts: AccordionPartsValue = {\n Root: AccordionRoot,\n Item: AccordionItem,\n ItemTrigger: AccordionItemTrigger,\n ItemContent: AccordionItemContent,\n ItemIndicator: AccordionItemIndicator,\n}\n","import {\n Accordion,\n type AccordionItemContentProps,\n type AccordionItemIndicatorProps,\n type AccordionItemProps,\n type AccordionItemTriggerProps,\n type AccordionRootProps,\n} from '@ark-ui/react/accordion'\nimport { cx } from '@cerberus/styled-system/css'\nimport {\n accordion,\n type AccordionVariantProps,\n} from '@cerberus/styled-system/recipes'\n\n/**\n * This module contains the primitives of the Accordion component.\n * @module 'accordion/primitives'\n */\n\n/**\n * The primitive root component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Root` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionRoot(\n props: AccordionRootProps & AccordionVariantProps,\n) {\n const { size, ...rootProps } = props\n const styles = accordion({ size })\n return (\n <Accordion.Root\n {...props}\n className={cx(styles.root, rootProps.className)}\n data-size={size}\n />\n )\n}\n\n/**\n * The primitive item component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Item` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItem(\n props: AccordionItemProps & AccordionVariantProps,\n) {\n const styles = accordion()\n return (\n <Accordion.Item {...props} className={cx(styles.item, props.className)} />\n )\n}\n\n/**\n * The primitive trigger component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemTrigger` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemTrigger(props: AccordionItemTriggerProps) {\n const styles = accordion()\n return (\n <Accordion.ItemTrigger\n {...props}\n className={cx(styles.itemTrigger, props.className)}\n />\n )\n}\n\n/**\n * The primitive item indicator component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemIndicator` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemIndicator(props: AccordionItemIndicatorProps) {\n const styles = accordion()\n return (\n <Accordion.ItemIndicator\n {...props}\n className={cx(styles.itemIndicator, props.className)}\n />\n )\n}\n\n/**\n * The primitive content component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Content` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemContent(props: AccordionItemContentProps) {\n const styles = accordion()\n return (\n <Accordion.ItemContent\n {...props}\n className={cx(styles.itemContent, props.className)}\n />\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,uBAOO;AACP,iBAAmB;AACnB,qBAGO;AAmBH;AANG,SAAS,cACd,OACA;AACA,QAAM,EAAE,MAAM,GAAG,UAAU,IAAI;AAC/B,QAAM,aAAS,0BAAU,EAAE,KAAK,CAAC;AACjC,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,MAAM,UAAU,SAAS;AAAA,MAC9C,aAAW;AAAA;AAAA,EACb;AAEJ;AAQO,SAAS,cACd,OACA;AACA,QAAM,aAAS,0BAAU;AACzB,SACE,4CAAC,2BAAU,MAAV,EAAgB,GAAG,OAAO,eAAW,eAAG,OAAO,MAAM,MAAM,SAAS,GAAG;AAE5E;AAQO,SAAS,qBAAqB,OAAkC;AACrE,QAAM,aAAS,0BAAU;AACzB,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,aAAa,MAAM,SAAS;AAAA;AAAA,EACnD;AAEJ;AAQO,SAAS,uBAAuB,OAAoC;AACzE,QAAM,aAAS,0BAAU;AACzB,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,eAAe,MAAM,SAAS;AAAA;AAAA,EACrD;AAEJ;AAQO,SAAS,qBAAqB,OAAkC;AACrE,QAAM,aAAS,0BAAU;AACzB,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,aAAa,MAAM,SAAS;AAAA;AAAA,EACnD;AAEJ;;;ADtDO,IAAM,iBAAsC;AAAA,EACjD,MAAM;AAAA,EACN,MAAM;AAAA,EACN,aAAa;AAAA,EACb,aAAa;AAAA,EACb,eAAe;AACjB;","names":[]}
@@ -17,69 +17,72 @@ var __copyProps = (to, from, except, desc) => {
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
 
20
- // src/components/Accordion.tsx
21
- var Accordion_exports = {};
22
- __export(Accordion_exports, {
23
- Accordion: () => Accordion,
20
+ // src/components/accordion/primitives.tsx
21
+ var primitives_exports = {};
22
+ __export(primitives_exports, {
24
23
  AccordionItem: () => AccordionItem,
25
24
  AccordionItemContent: () => AccordionItemContent,
26
- AccordionItemTrigger: () => AccordionItemTrigger
25
+ AccordionItemIndicator: () => AccordionItemIndicator,
26
+ AccordionItemTrigger: () => AccordionItemTrigger,
27
+ AccordionRoot: () => AccordionRoot
27
28
  });
28
- module.exports = __toCommonJS(Accordion_exports);
29
- var import_react = require("@ark-ui/react");
29
+ module.exports = __toCommonJS(primitives_exports);
30
+ var import_accordion = require("@ark-ui/react/accordion");
30
31
  var import_css = require("@cerberus/styled-system/css");
31
32
  var import_recipes = require("@cerberus/styled-system/recipes");
32
33
  var import_jsx_runtime = require("react/jsx-runtime");
33
- function Accordion(props) {
34
- const { size, className, ...rootProps } = props;
34
+ function AccordionRoot(props) {
35
+ const { size, ...rootProps } = props;
35
36
  const styles = (0, import_recipes.accordion)({ size });
36
37
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
37
- import_react.Accordion.Root,
38
+ import_accordion.Accordion.Root,
38
39
  {
39
- collapsible: true,
40
- className: (0, import_css.cx)(className, styles.root),
41
- ...rootProps
40
+ ...props,
41
+ className: (0, import_css.cx)(styles.root, rootProps.className),
42
+ "data-size": size
42
43
  }
43
44
  );
44
45
  }
45
46
  function AccordionItem(props) {
46
- const { size, ...itemProps } = props;
47
- const styles = (0, import_recipes.accordion)({ size });
47
+ const styles = (0, import_recipes.accordion)();
48
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_accordion.Accordion.Item, { ...props, className: (0, import_css.cx)(styles.item, props.className) });
49
+ }
50
+ function AccordionItemTrigger(props) {
51
+ const styles = (0, import_recipes.accordion)();
48
52
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
49
- import_react.Accordion.Item,
53
+ import_accordion.Accordion.ItemTrigger,
50
54
  {
51
- ...itemProps,
52
- className: (0, import_css.cx)(itemProps.className, styles.item)
55
+ ...props,
56
+ className: (0, import_css.cx)(styles.itemTrigger, props.className)
53
57
  }
54
58
  );
55
59
  }
56
- function AccordionItemTrigger(props) {
57
- const { size, ...triggerProps } = props;
58
- const styles = (0, import_recipes.accordion)({ size });
60
+ function AccordionItemIndicator(props) {
61
+ const styles = (0, import_recipes.accordion)();
59
62
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
60
- import_react.Accordion.ItemTrigger,
63
+ import_accordion.Accordion.ItemIndicator,
61
64
  {
62
- ...triggerProps,
63
- className: (0, import_css.cx)(triggerProps.className, styles.itemTrigger)
65
+ ...props,
66
+ className: (0, import_css.cx)(styles.itemIndicator, props.className)
64
67
  }
65
68
  );
66
69
  }
67
70
  function AccordionItemContent(props) {
68
- const { size, ...contentProps } = props;
69
- const styles = (0, import_recipes.accordion)({ size });
71
+ const styles = (0, import_recipes.accordion)();
70
72
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
71
- import_react.Accordion.ItemContent,
73
+ import_accordion.Accordion.ItemContent,
72
74
  {
73
- ...contentProps,
74
- className: (0, import_css.cx)(contentProps.className, styles.itemContent)
75
+ ...props,
76
+ className: (0, import_css.cx)(styles.itemContent, props.className)
75
77
  }
76
78
  );
77
79
  }
78
80
  // Annotate the CommonJS export names for ESM import in node:
79
81
  0 && (module.exports = {
80
- Accordion,
81
82
  AccordionItem,
82
83
  AccordionItemContent,
83
- AccordionItemTrigger
84
+ AccordionItemIndicator,
85
+ AccordionItemTrigger,
86
+ AccordionRoot
84
87
  });
85
- //# sourceMappingURL=Accordion.cjs.map
88
+ //# sourceMappingURL=primitives.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/accordion/primitives.tsx"],"sourcesContent":["import {\n Accordion,\n type AccordionItemContentProps,\n type AccordionItemIndicatorProps,\n type AccordionItemProps,\n type AccordionItemTriggerProps,\n type AccordionRootProps,\n} from '@ark-ui/react/accordion'\nimport { cx } from '@cerberus/styled-system/css'\nimport {\n accordion,\n type AccordionVariantProps,\n} from '@cerberus/styled-system/recipes'\n\n/**\n * This module contains the primitives of the Accordion component.\n * @module 'accordion/primitives'\n */\n\n/**\n * The primitive root component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Root` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionRoot(\n props: AccordionRootProps & AccordionVariantProps,\n) {\n const { size, ...rootProps } = props\n const styles = accordion({ size })\n return (\n <Accordion.Root\n {...props}\n className={cx(styles.root, rootProps.className)}\n data-size={size}\n />\n )\n}\n\n/**\n * The primitive item component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Item` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItem(\n props: AccordionItemProps & AccordionVariantProps,\n) {\n const styles = accordion()\n return (\n <Accordion.Item {...props} className={cx(styles.item, props.className)} />\n )\n}\n\n/**\n * The primitive trigger component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemTrigger` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemTrigger(props: AccordionItemTriggerProps) {\n const styles = accordion()\n return (\n <Accordion.ItemTrigger\n {...props}\n className={cx(styles.itemTrigger, props.className)}\n />\n )\n}\n\n/**\n * The primitive item indicator component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemIndicator` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemIndicator(props: AccordionItemIndicatorProps) {\n const styles = accordion()\n return (\n <Accordion.ItemIndicator\n {...props}\n className={cx(styles.itemIndicator, props.className)}\n />\n )\n}\n\n/**\n * The primitive content component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Content` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemContent(props: AccordionItemContentProps) {\n const styles = accordion()\n return (\n <Accordion.ItemContent\n {...props}\n className={cx(styles.itemContent, props.className)}\n />\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAOO;AACP,iBAAmB;AACnB,qBAGO;AAmBH;AANG,SAAS,cACd,OACA;AACA,QAAM,EAAE,MAAM,GAAG,UAAU,IAAI;AAC/B,QAAM,aAAS,0BAAU,EAAE,KAAK,CAAC;AACjC,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,MAAM,UAAU,SAAS;AAAA,MAC9C,aAAW;AAAA;AAAA,EACb;AAEJ;AAQO,SAAS,cACd,OACA;AACA,QAAM,aAAS,0BAAU;AACzB,SACE,4CAAC,2BAAU,MAAV,EAAgB,GAAG,OAAO,eAAW,eAAG,OAAO,MAAM,MAAM,SAAS,GAAG;AAE5E;AAQO,SAAS,qBAAqB,OAAkC;AACrE,QAAM,aAAS,0BAAU;AACzB,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,aAAa,MAAM,SAAS;AAAA;AAAA,EACnD;AAEJ;AAQO,SAAS,uBAAuB,OAAoC;AACzE,QAAM,aAAS,0BAAU;AACzB,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,eAAe,MAAM,SAAS;AAAA;AAAA,EACrD;AAEJ;AAQO,SAAS,qBAAqB,OAAkC;AACrE,QAAM,aAAS,0BAAU;AACzB,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,aAAa,MAAM,SAAS;AAAA;AAAA,EACnD;AAEJ;","names":[]}