@cerberus-design/react 0.13.2-next-d63dca1 → 0.13.2-next-4bdc7c3

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 (41) hide show
  1. package/build/legacy/_tsup-dts-rollup.d.cts +159 -0
  2. package/build/legacy/components/Accordion.cjs +101 -0
  3. package/build/legacy/components/Accordion.cjs.map +1 -0
  4. package/build/legacy/components/AccordionItemGroup.cjs +119 -0
  5. package/build/legacy/components/AccordionItemGroup.cjs.map +1 -0
  6. package/build/legacy/components/Tooltip.cjs +2 -2
  7. package/build/legacy/components/Tooltip.cjs.map +1 -1
  8. package/build/legacy/index.cjs +722 -622
  9. package/build/legacy/index.cjs.map +1 -1
  10. package/build/modern/_tsup-dts-rollup.d.ts +159 -0
  11. package/build/modern/{chunk-FBSESDWJ.js → chunk-4QBPJVEN.js} +4 -4
  12. package/build/modern/{chunk-WFJWCZ7E.js → chunk-622N7YRT.js} +4 -4
  13. package/build/modern/{chunk-3XGLNXJJ.js → chunk-C3CDRCHS.js} +7 -7
  14. package/build/modern/chunk-CSMPRYNC.js +39 -0
  15. package/build/modern/chunk-CSMPRYNC.js.map +1 -0
  16. package/build/modern/{chunk-KML4CTMK.js → chunk-LPALHB6R.js} +3 -3
  17. package/build/modern/chunk-LPALHB6R.js.map +1 -0
  18. package/build/modern/{chunk-GRUXP3NG.js → chunk-TM5AS6M6.js} +4 -4
  19. package/build/modern/chunk-ZTYKIWYQ.js +75 -0
  20. package/build/modern/chunk-ZTYKIWYQ.js.map +1 -0
  21. package/build/modern/components/Accordion.js +15 -0
  22. package/build/modern/components/Accordion.js.map +1 -0
  23. package/build/modern/components/AccordionItemGroup.js +9 -0
  24. package/build/modern/components/AccordionItemGroup.js.map +1 -0
  25. package/build/modern/components/Tooltip.js +1 -1
  26. package/build/modern/context/confirm-modal.js +2 -2
  27. package/build/modern/context/cta-modal.js +2 -2
  28. package/build/modern/context/notification-center.js +3 -3
  29. package/build/modern/context/prompt-modal.js +2 -2
  30. package/build/modern/index.js +51 -35
  31. package/build/modern/index.js.map +1 -1
  32. package/package.json +3 -3
  33. package/src/components/Accordion.tsx +161 -0
  34. package/src/components/AccordionItemGroup.tsx +79 -0
  35. package/src/components/Tooltip.tsx +2 -2
  36. package/src/index.ts +2 -0
  37. package/build/modern/chunk-KML4CTMK.js.map +0 -1
  38. /package/build/modern/{chunk-FBSESDWJ.js.map → chunk-4QBPJVEN.js.map} +0 -0
  39. /package/build/modern/{chunk-WFJWCZ7E.js.map → chunk-622N7YRT.js.map} +0 -0
  40. /package/build/modern/{chunk-3XGLNXJJ.js.map → chunk-C3CDRCHS.js.map} +0 -0
  41. /package/build/modern/{chunk-GRUXP3NG.js.map → chunk-TM5AS6M6.js.map} +0 -0
@@ -1,15 +1,21 @@
1
1
  import {
2
2
  NotificationCenter,
3
3
  useNotificationCenter
4
- } from "./chunk-3XGLNXJJ.js";
4
+ } from "./chunk-C3CDRCHS.js";
5
5
  import {
6
6
  PromptModal,
7
7
  usePromptModal
8
- } from "./chunk-FBSESDWJ.js";
8
+ } from "./chunk-4QBPJVEN.js";
9
9
  import {
10
10
  ThemeProvider,
11
11
  useThemeContext
12
12
  } from "./chunk-EB37HRCN.js";
13
+ import {
14
+ Textarea
15
+ } from "./chunk-JIJM6JFJ.js";
16
+ import {
17
+ Th
18
+ } from "./chunk-SGKHA4EB.js";
13
19
  import {
14
20
  Thead
15
21
  } from "./chunk-Y6QQCRQV.js";
@@ -18,15 +24,21 @@ import {
18
24
  } from "./chunk-NMNONSHU.js";
19
25
  import {
20
26
  Tooltip
21
- } from "./chunk-KML4CTMK.js";
27
+ } from "./chunk-LPALHB6R.js";
22
28
  import {
23
29
  ConfirmModal,
24
30
  useConfirmModal
25
- } from "./chunk-GRUXP3NG.js";
31
+ } from "./chunk-TM5AS6M6.js";
26
32
  import {
27
33
  CTAModal,
28
34
  useCTAModal
29
- } from "./chunk-WFJWCZ7E.js";
35
+ } from "./chunk-622N7YRT.js";
36
+ import {
37
+ Spinner
38
+ } from "./chunk-7SYJFI5E.js";
39
+ import {
40
+ Tab
41
+ } from "./chunk-SLF6SIPB.js";
30
42
  import {
31
43
  TabList
32
44
  } from "./chunk-UKPF7JOB.js";
@@ -47,11 +59,11 @@ import {
47
59
  Td
48
60
  } from "./chunk-3R4TIF2X.js";
49
61
  import {
50
- Textarea
51
- } from "./chunk-JIJM6JFJ.js";
62
+ Notification
63
+ } from "./chunk-7SGPJM66.js";
52
64
  import {
53
- Th
54
- } from "./chunk-SGKHA4EB.js";
65
+ NotificationDescription
66
+ } from "./chunk-XEW6TJJ4.js";
55
67
  import {
56
68
  NotificationHeading
57
69
  } from "./chunk-SXIXDXG3.js";
@@ -66,11 +78,17 @@ import {
66
78
  Select
67
79
  } from "./chunk-XL4JREDT.js";
68
80
  import {
69
- Spinner
70
- } from "./chunk-7SYJFI5E.js";
81
+ Menu,
82
+ MenuContent,
83
+ MenuGroupLabel,
84
+ MenuItem,
85
+ MenuItemGroup,
86
+ MenuSeparator,
87
+ MenuTrigger
88
+ } from "./chunk-RUR5MV54.js";
71
89
  import {
72
- Tab
73
- } from "./chunk-SLF6SIPB.js";
90
+ Modal
91
+ } from "./chunk-BE4EOU2P.js";
74
92
  import {
75
93
  ModalDescription
76
94
  } from "./chunk-Q7BRMIBR.js";
@@ -95,11 +113,11 @@ import {
95
113
  useNavMenuContext
96
114
  } from "./chunk-6WS765J3.js";
97
115
  import {
98
- Notification
99
- } from "./chunk-7SGPJM66.js";
116
+ Fieldset
117
+ } from "./chunk-3ZDFQO25.js";
100
118
  import {
101
- NotificationDescription
102
- } from "./chunk-XEW6TJJ4.js";
119
+ FieldsetLabel
120
+ } from "./chunk-PZAZKQMO.js";
103
121
  import {
104
122
  FileStatus,
105
123
  processStatus
@@ -122,18 +140,6 @@ import {
122
140
  import {
123
141
  Legend
124
142
  } from "./chunk-ILQW5VZT.js";
125
- import {
126
- Menu,
127
- MenuContent,
128
- MenuGroupLabel,
129
- MenuItem,
130
- MenuItemGroup,
131
- MenuSeparator,
132
- MenuTrigger
133
- } from "./chunk-RUR5MV54.js";
134
- import {
135
- Modal
136
- } from "./chunk-BE4EOU2P.js";
137
143
  import {
138
144
  Button
139
145
  } from "./chunk-EXGKZGML.js";
@@ -156,16 +162,10 @@ import {
156
162
  import {
157
163
  FieldMessage
158
164
  } from "./chunk-JWIJHSI6.js";
159
- import {
160
- Fieldset
161
- } from "./chunk-3ZDFQO25.js";
162
165
  import {
163
166
  Field,
164
167
  useFieldContext
165
168
  } from "./chunk-UZDVOIW5.js";
166
- import {
167
- FieldsetLabel
168
- } from "./chunk-PZAZKQMO.js";
169
169
  import {
170
170
  useModal
171
171
  } from "./chunk-KGQG5JGW.js";
@@ -183,6 +183,16 @@ import {
183
183
  import {
184
184
  formatNotifyCount
185
185
  } from "./chunk-UTGEFJ3L.js";
186
+ import {
187
+ AccordionItemGroup
188
+ } from "./chunk-CSMPRYNC.js";
189
+ import {
190
+ Accordion,
191
+ AccordionItem,
192
+ AccordionItemContent,
193
+ AccordionItemIndicator,
194
+ AccordionItemTrigger
195
+ } from "./chunk-ZTYKIWYQ.js";
186
196
  import {
187
197
  Admonition,
188
198
  AdmonitionDescription,
@@ -227,6 +237,12 @@ import {
227
237
  export * from "@dnd-kit/core";
228
238
  export {
229
239
  $cerberusIcons,
240
+ Accordion,
241
+ AccordionItem,
242
+ AccordionItemContent,
243
+ AccordionItemGroup,
244
+ AccordionItemIndicator,
245
+ AccordionItemTrigger,
230
246
  Admonition,
231
247
  AdmonitionDescription,
232
248
  AdmonitionHeading,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts"],"sourcesContent":["/**\n * This module is the entry point for the Cerberus React package.\n * @module\n */\n\n// components\n\nexport * from './components/Admonition'\nexport * from './components/Avatar'\nexport * from './components/Button'\nexport * from './components/Checkbox'\nexport * from './components/CircularProgress'\nexport * from './components/Droppable'\nexport * from './components/FieldMessage'\nexport * from './components/FeatureFlag'\nexport * from './components/Fieldset'\nexport * from './components/FieldsetLabel'\nexport * from './components/FileStatus'\nexport * from './components/FileUploader'\nexport * from './components/IconButton'\nexport * from './components/Input'\nexport * from './components/Label'\nexport * from './components/Legend'\nexport * from './components/Menu'\nexport * from './components/Modal'\nexport * from './components/ModalHeader'\nexport * from './components/ModalHeading'\nexport * from './components/ModalDescription'\nexport * from './components/NavMenuTrigger'\nexport * from './components/NavMenuList'\nexport * from './components/NavMenuLink'\nexport * from './components/Notification'\nexport * from './components/NotificationHeading'\nexport * from './components/NotificationDescription'\nexport * from './components/Portal'\nexport * from './components/ProgressBar'\nexport * from './components/Radio'\nexport * from './components/Select'\nexport * from './components/Spinner'\nexport * from './components/Tab'\nexport * from './components/TabList'\nexport * from './components/TabPanel'\nexport * from './components/Table'\nexport * from './components/Thead'\nexport * from './components/Th'\nexport * from './components/Td'\nexport * from './components/Tbody'\nexport * from './components/Tag'\nexport * from './components/Textarea'\nexport * from './components/Toggle'\nexport * from './components/Tooltip'\nexport * from './components/Show'\n\n// context\n\nexport * from './context/confirm-modal'\nexport * from './context/cta-modal'\nexport * from './context/feature-flags'\nexport * from './context/field'\nexport * from './context/navMenu'\nexport * from './context/notification-center'\nexport * from './context/prompt-modal'\nexport * from './context/tabs'\nexport * from './context/theme'\n\n// hooks\n\nexport * from './hooks/useDate'\nexport * from './hooks/useModal'\nexport * from './hooks/useTheme'\nexport * from './hooks/useToggle'\nexport * from './hooks/useRootColors'\n\n// aria-helpers\n\nexport * from './aria-helpers/nav-menu.aria'\nexport * from './aria-helpers/tabs.aria'\nexport * from './aria-helpers/trap-focus.aria'\n\n// utils\n\nexport * from './config/defineIcons'\nexport * from './utils/index'\n\n// shared types\n\nexport * from './types'\n\n// 3rd party\n\nexport * from '@dnd-kit/core'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0FA,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../src/index.ts"],"sourcesContent":["/**\n * This module is the entry point for the Cerberus React package.\n * @module\n */\n\n// components\n\nexport * from './components/Accordion'\nexport * from './components/AccordionItemGroup'\nexport * from './components/Admonition'\nexport * from './components/Avatar'\nexport * from './components/Button'\nexport * from './components/Checkbox'\nexport * from './components/CircularProgress'\nexport * from './components/Droppable'\nexport * from './components/FieldMessage'\nexport * from './components/FeatureFlag'\nexport * from './components/Fieldset'\nexport * from './components/FieldsetLabel'\nexport * from './components/FileStatus'\nexport * from './components/FileUploader'\nexport * from './components/IconButton'\nexport * from './components/Input'\nexport * from './components/Label'\nexport * from './components/Legend'\nexport * from './components/Menu'\nexport * from './components/Modal'\nexport * from './components/ModalHeader'\nexport * from './components/ModalHeading'\nexport * from './components/ModalDescription'\nexport * from './components/NavMenuTrigger'\nexport * from './components/NavMenuList'\nexport * from './components/NavMenuLink'\nexport * from './components/Notification'\nexport * from './components/NotificationHeading'\nexport * from './components/NotificationDescription'\nexport * from './components/Portal'\nexport * from './components/ProgressBar'\nexport * from './components/Radio'\nexport * from './components/Select'\nexport * from './components/Spinner'\nexport * from './components/Tab'\nexport * from './components/TabList'\nexport * from './components/TabPanel'\nexport * from './components/Table'\nexport * from './components/Thead'\nexport * from './components/Th'\nexport * from './components/Td'\nexport * from './components/Tbody'\nexport * from './components/Tag'\nexport * from './components/Textarea'\nexport * from './components/Toggle'\nexport * from './components/Tooltip'\nexport * from './components/Show'\n\n// context\n\nexport * from './context/confirm-modal'\nexport * from './context/cta-modal'\nexport * from './context/feature-flags'\nexport * from './context/field'\nexport * from './context/navMenu'\nexport * from './context/notification-center'\nexport * from './context/prompt-modal'\nexport * from './context/tabs'\nexport * from './context/theme'\n\n// hooks\n\nexport * from './hooks/useDate'\nexport * from './hooks/useModal'\nexport * from './hooks/useTheme'\nexport * from './hooks/useToggle'\nexport * from './hooks/useRootColors'\n\n// aria-helpers\n\nexport * from './aria-helpers/nav-menu.aria'\nexport * from './aria-helpers/tabs.aria'\nexport * from './aria-helpers/trap-focus.aria'\n\n// utils\n\nexport * from './config/defineIcons'\nexport * from './utils/index'\n\n// shared types\n\nexport * from './types'\n\n// 3rd party\n\nexport * from '@dnd-kit/core'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4FA,cAAc;","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cerberus-design/react",
3
- "version": "0.13.2-next-d63dca1",
3
+ "version": "0.13.2-next-4bdc7c3",
4
4
  "description": "The Cerberus Design React component library.",
5
5
  "browserslist": "> 0.25%, not dead",
6
6
  "sideEffects": false,
@@ -26,8 +26,8 @@
26
26
  "react": "^18",
27
27
  "react-dom": "^18",
28
28
  "tsup": "^8.1.0",
29
- "@cerberus-design/configs": "0.0.0",
30
- "@cerberus-design/styled-system": "0.13.2-next-d63dca1"
29
+ "@cerberus-design/styled-system": "0.13.2-next-4bdc7c3",
30
+ "@cerberus-design/configs": "0.0.0"
31
31
  },
32
32
  "publishConfig": {
33
33
  "access": "public"
@@ -0,0 +1,161 @@
1
+ import { Accordion as ArkAccordion } from '@ark-ui/react'
2
+ import { ChevronDown } from '@cerberus/icons'
3
+ import { cx } from '@cerberus/styled-system/css'
4
+ import {
5
+ accordion,
6
+ type AccordionVariantProps,
7
+ } from '@cerberus/styled-system/recipes'
8
+
9
+ export type AccordionProps = ArkAccordion.RootProps & AccordionVariantProps
10
+
11
+ /**
12
+ * The context provider for the Accordion family.
13
+ * @definition [ARK docs](https://ark-ui.com/react/docs/components/accordion)
14
+ * @definition [Accordion docs](https://cerberus.digitalu.design/react/accordion)
15
+ * @example
16
+ * ```tsx
17
+ * <Accordion>
18
+ * <AccordionItemGroup heading="Item 1 heading" value="one">
19
+ * This is the content
20
+ * </AccordionItemGroup>
21
+ * </Accordion>
22
+ * ```
23
+ */
24
+ export function Accordion(props: AccordionProps) {
25
+ const { size, className, ...rootProps } = props
26
+ const styles = accordion({ size })
27
+ return (
28
+ <ArkAccordion.Root
29
+ collapsible
30
+ className={cx(className, styles.root)}
31
+ {...rootProps}
32
+ />
33
+ )
34
+ }
35
+
36
+ type AccordionItemProps = ArkAccordion.ItemProps & AccordionVariantProps
37
+
38
+ /**
39
+ * The item for the Accordion component.
40
+ * @definition [ARK docs](https://ark-ui.com/react/docs/components/accordion)
41
+ * @definition [Accordion docs](https://cerberus.digitalu.design/react/accordion)
42
+ * @example
43
+ * ```tsx
44
+ * <Accordion>
45
+ * <AccordionItem value="one">
46
+ * <AccordionTrigger>
47
+ * Accordion Item 1
48
+ * <AccordionIndicator />
49
+ * </AccordionTrigger>
50
+ * <AccordionContent>Accordion Item 1 content</AccordionContent>
51
+ * </AccordionItem>
52
+ * </Accordion>
53
+ * ```
54
+ */
55
+ export function AccordionItem(props: AccordionItemProps) {
56
+ const { size, ...itemProps } = props
57
+ const styles = accordion({ size })
58
+ return (
59
+ <ArkAccordion.Item
60
+ {...itemProps}
61
+ className={cx(itemProps.className, styles.item)}
62
+ />
63
+ )
64
+ }
65
+
66
+ export type AccordionItemTriggerProps = ArkAccordion.ItemTriggerProps &
67
+ AccordionVariantProps
68
+
69
+ /**
70
+ * The trigger for the Accordion component.
71
+ * @definition [ARK docs](https://ark-ui.com/react/docs/components/accordion)
72
+ * @definition [Accordion docs](https://cerberus.digitalu.design/react/accordion)
73
+ * @example
74
+ * ```tsx
75
+ * <Accordion>
76
+ * <AccordionItem value="one">
77
+ * <AccordionTrigger>
78
+ * Accordion Item 1
79
+ * <AccordionIndicator />
80
+ * </AccordionTrigger>
81
+ * <AccordionContent>Accordion Item 1 content</AccordionContent>
82
+ * </AccordionItem>
83
+ * </Accordion>
84
+ * ```
85
+ */
86
+ export function AccordionItemTrigger(props: AccordionItemTriggerProps) {
87
+ const { size, ...triggerProps } = props
88
+ const styles = accordion({ size })
89
+ return (
90
+ <ArkAccordion.ItemTrigger
91
+ {...triggerProps}
92
+ className={cx(triggerProps.className, styles.itemTrigger)}
93
+ />
94
+ )
95
+ }
96
+
97
+ export type AccordionItemIndicatorProps = ArkAccordion.ItemIndicatorProps &
98
+ AccordionVariantProps
99
+
100
+ /**
101
+ * The indicator for the Accordion component.
102
+ * @definition [ARK docs](https://ark-ui.com/react/docs/components/accordion)
103
+ * @definition [Accordion docs](https://cerberus.digitalu.design/react/accordion)
104
+ * @example
105
+ * ```tsx
106
+ * <Accordion>
107
+ * <AccordionItem value="one">
108
+ * <AccordionTrigger>
109
+ * Accordion Item 1
110
+ * <AccordionIndicator />
111
+ * </AccordionTrigger>
112
+ * <AccordionContent>Accordion Item 1 content</AccordionContent>
113
+ * </AccordionItem>
114
+ * </Accordion>
115
+ * ```
116
+ * */
117
+ export function AccordionItemIndicator(props: AccordionItemIndicatorProps) {
118
+ const { size, ...indicatorProps } = props
119
+ const styles = accordion({ size })
120
+ const iconSize = size === 'sm' ? 16 : '24'
121
+
122
+ return (
123
+ <ArkAccordion.ItemIndicator
124
+ {...indicatorProps}
125
+ className={cx(indicatorProps.className, styles.itemIndicator)}
126
+ >
127
+ <ChevronDown size={iconSize} />
128
+ </ArkAccordion.ItemIndicator>
129
+ )
130
+ }
131
+
132
+ export type AccordionItemContentProps = ArkAccordion.ItemContentProps &
133
+ AccordionVariantProps
134
+
135
+ /**
136
+ * The content for the Accordion component.
137
+ * @definition [ARK docs](https://ark-ui.com/react/docs/components/accordion)
138
+ * @definition [Accordion docs](https://cerberus.digitalu.design/react/accordion)
139
+ * @example
140
+ * ```tsx
141
+ * <Accordion>
142
+ * <AccordionItem value="one">
143
+ * <AccordionTrigger>
144
+ * Accordion Item 1
145
+ * <AccordionIndicator />
146
+ * </AccordionTrigger>
147
+ * <AccordionContent>Accordion Item 1 content</AccordionContent>
148
+ * </AccordionItem>
149
+ * </Accordion>
150
+ * ```
151
+ * */
152
+ export function AccordionItemContent(props: AccordionItemContentProps) {
153
+ const { size, ...contentProps } = props
154
+ const styles = accordion({ size })
155
+ return (
156
+ <ArkAccordion.ItemContent
157
+ {...contentProps}
158
+ className={cx(contentProps.className, styles.itemContent)}
159
+ />
160
+ )
161
+ }
@@ -0,0 +1,79 @@
1
+ import { Accordion as ArkAccordion } from '@ark-ui/react'
2
+ import { type AccordionVariantProps } from '@cerberus/styled-system/recipes'
3
+ import type { PropsWithChildren } from 'react'
4
+ import { Show } from './Show'
5
+ import {
6
+ AccordionItem,
7
+ AccordionItemContent,
8
+ AccordionItemIndicator,
9
+ AccordionItemTrigger,
10
+ } from './Accordion'
11
+ import { css } from '@cerberus/styled-system/css'
12
+
13
+ /**
14
+ * This module contains an abstraction of the AccordionItem components.
15
+ * @module
16
+ */
17
+
18
+ export interface AccordionItemGroupBaseProps extends ArkAccordion.ItemProps {
19
+ /**
20
+ * The heading of the accordion item to open and close the content.
21
+ */
22
+ heading: string
23
+ /**
24
+ * The position of the arrow indicator.
25
+ */
26
+ indicatorPosition?: 'start' | 'end'
27
+ }
28
+ export type AccordionItemGroupProps = AccordionItemGroupBaseProps &
29
+ AccordionVariantProps
30
+
31
+ /**
32
+ * A grouped item for the Accordion component.
33
+ * @definition [ARK docs](https://ark-ui.com/react/docs/components/accordion)
34
+ * @definition [Accordion docs](https://cerberus.digitalu.design/react/accordion)
35
+ * @example
36
+ * ```tsx
37
+ * <Accordion>
38
+ * <AccordionItemGroup heading="Accordion Item 1" value="one">
39
+ * Accordion Item 1 content
40
+ * </AccordionItemGroup>
41
+ * </Accordion>
42
+ * ```
43
+ */
44
+ export function AccordionItemGroup(
45
+ props: PropsWithChildren<AccordionItemGroupProps>,
46
+ ) {
47
+ const {
48
+ size,
49
+ heading,
50
+ children,
51
+ indicatorPosition = 'end',
52
+ ...itemProps
53
+ } = props
54
+ const triggerStyles =
55
+ indicatorPosition === 'start'
56
+ ? {
57
+ gap: 'md',
58
+ justifyContent: 'flex-start',
59
+ }
60
+ : undefined
61
+
62
+ return (
63
+ <AccordionItem {...itemProps}>
64
+ <AccordionItemTrigger className={css(triggerStyles)} size={size}>
65
+ <Show when={indicatorPosition === 'start'}>
66
+ <AccordionItemIndicator size={size} />
67
+ </Show>
68
+
69
+ {heading}
70
+
71
+ <Show when={indicatorPosition === 'end'}>
72
+ <AccordionItemIndicator size={size} />
73
+ </Show>
74
+ </AccordionItemTrigger>
75
+
76
+ <AccordionItemContent size={size}>{children}</AccordionItemContent>
77
+ </AccordionItem>
78
+ )
79
+ }
@@ -32,7 +32,7 @@ export interface TooltipProps {
32
32
  * </Tooltip>
33
33
  */
34
34
  export function Tooltip(props: TooltipProps & TooltipContentProps) {
35
- const { content, children, ...nativeProps } = props
35
+ const { content, children, asChild, ...nativeProps } = props
36
36
  const styles = tooltip()
37
37
  const position = {
38
38
  placement: props.position || 'top',
@@ -40,7 +40,7 @@ export function Tooltip(props: TooltipProps & TooltipContentProps) {
40
40
 
41
41
  return (
42
42
  <ArkTooltip.Root openDelay={400} positioning={position}>
43
- <ArkTooltip.Trigger className={styles.trigger}>
43
+ <ArkTooltip.Trigger className={styles.trigger} asChild={asChild}>
44
44
  {children}
45
45
  </ArkTooltip.Trigger>
46
46
 
package/src/index.ts CHANGED
@@ -5,6 +5,8 @@
5
5
 
6
6
  // components
7
7
 
8
+ export * from './components/Accordion'
9
+ export * from './components/AccordionItemGroup'
8
10
  export * from './components/Admonition'
9
11
  export * from './components/Avatar'
10
12
  export * from './components/Button'
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/Tooltip.tsx"],"sourcesContent":["import {\n Tooltip as ArkTooltip,\n type TooltipContentProps,\n} from '@ark-ui/react/tooltip'\nimport { cx } from '@cerberus/styled-system/css'\nimport { tooltip } from '@cerberus/styled-system/recipes'\nimport type { ReactNode } from 'react'\n\n/**\n * This module contains the Tooltip component.\n * @module Tooltip\n */\n\nexport interface TooltipProps {\n /**\n * The text content to display in the tooltip.\n */\n content: ReactNode\n /**\n * The position of the tooltip relative to the trigger element.\n */\n position?: 'top' | 'right' | 'bottom' | 'left'\n}\n\n/**\n * The Tooltip component is used to provide additional information about an element when it is hovered over.\n * @definition [Tooltip docs](https://cerberus.digitalu.design/react/tooltip)\n * @example\n * ```tsx\n * <Tooltip content=\"This is a tooltip\">\n * <Information />\n * </Tooltip>\n */\nexport function Tooltip(props: TooltipProps & TooltipContentProps) {\n const { content, children, ...nativeProps } = props\n const styles = tooltip()\n const position = {\n placement: props.position || 'top',\n }\n\n return (\n <ArkTooltip.Root openDelay={400} positioning={position}>\n <ArkTooltip.Trigger className={styles.trigger}>\n {children}\n </ArkTooltip.Trigger>\n\n <ArkTooltip.Positioner>\n <ArkTooltip.Content\n {...nativeProps}\n className={cx(nativeProps.className, styles.content)}\n >\n <ArkTooltip.Arrow className={styles.arrow}>\n <ArkTooltip.ArrowTip className={styles.arrowTip} />\n </ArkTooltip.Arrow>\n\n {content}\n </ArkTooltip.Content>\n </ArkTooltip.Positioner>\n </ArkTooltip.Root>\n )\n}\n"],"mappings":";AAAA;AAAA,EACE,WAAW;AAAA,OAEN;AACP,SAAS,UAAU;AACnB,SAAS,eAAe;AAqClB,cAKE,YALF;AATC,SAAS,QAAQ,OAA2C;AACjE,QAAM,EAAE,SAAS,UAAU,GAAG,YAAY,IAAI;AAC9C,QAAM,SAAS,QAAQ;AACvB,QAAM,WAAW;AAAA,IACf,WAAW,MAAM,YAAY;AAAA,EAC/B;AAEA,SACE,qBAAC,WAAW,MAAX,EAAgB,WAAW,KAAK,aAAa,UAC5C;AAAA,wBAAC,WAAW,SAAX,EAAmB,WAAW,OAAO,SACnC,UACH;AAAA,IAEA,oBAAC,WAAW,YAAX,EACC;AAAA,MAAC,WAAW;AAAA,MAAX;AAAA,QACE,GAAG;AAAA,QACJ,WAAW,GAAG,YAAY,WAAW,OAAO,OAAO;AAAA,QAEnD;AAAA,8BAAC,WAAW,OAAX,EAAiB,WAAW,OAAO,OAClC,8BAAC,WAAW,UAAX,EAAoB,WAAW,OAAO,UAAU,GACnD;AAAA,UAEC;AAAA;AAAA;AAAA,IACH,GACF;AAAA,KACF;AAEJ;","names":[]}