frey-ui 1.0.9 → 1.0.10

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 (154) hide show
  1. package/README.md +191 -26
  2. package/dist/cjs/Alert/alert.module.css.js +1 -1
  3. package/dist/cjs/Alert/index.js +10 -7
  4. package/dist/cjs/Alert/index.js.map +1 -1
  5. package/dist/cjs/Button/index.js +3 -5
  6. package/dist/cjs/Button/index.js.map +1 -1
  7. package/dist/cjs/Checkbox/index.js +2 -1
  8. package/dist/cjs/Checkbox/index.js.map +1 -1
  9. package/dist/cjs/Chip/index.js +3 -5
  10. package/dist/cjs/Chip/index.js.map +1 -1
  11. package/dist/cjs/Dialog/dialog.module.css.js +9 -0
  12. package/dist/cjs/Dialog/dialog.module.css.js.map +1 -0
  13. package/dist/cjs/Dialog/index.js +130 -0
  14. package/dist/cjs/Dialog/index.js.map +1 -0
  15. package/dist/cjs/DropdownMenu/dropdownmenu.module.css.js +9 -0
  16. package/dist/cjs/DropdownMenu/dropdownmenu.module.css.js.map +1 -0
  17. package/dist/cjs/DropdownMenu/index.js +220 -0
  18. package/dist/cjs/DropdownMenu/index.js.map +1 -0
  19. package/dist/cjs/Field/field.module.css.js +9 -0
  20. package/dist/cjs/Field/field.module.css.js.map +1 -0
  21. package/dist/cjs/Field/index.js +35 -0
  22. package/dist/cjs/Field/index.js.map +1 -0
  23. package/dist/cjs/Icons/icons.module.css.js +9 -0
  24. package/dist/cjs/Icons/icons.module.css.js.map +1 -0
  25. package/dist/cjs/Icons/index.js +96 -0
  26. package/dist/cjs/Icons/index.js.map +1 -0
  27. package/dist/cjs/Popover/index.js +145 -0
  28. package/dist/cjs/Popover/index.js.map +1 -0
  29. package/dist/cjs/Popover/popover.module.css.js +9 -0
  30. package/dist/cjs/Popover/popover.module.css.js.map +1 -0
  31. package/dist/cjs/Progress/index.js +31 -0
  32. package/dist/cjs/Progress/index.js.map +1 -0
  33. package/dist/cjs/Progress/progress.module.css.js +9 -0
  34. package/dist/cjs/Progress/progress.module.css.js.map +1 -0
  35. package/dist/cjs/RadioGroup/index.js +44 -0
  36. package/dist/cjs/RadioGroup/index.js.map +1 -0
  37. package/dist/cjs/RadioGroup/radiogroup.module.css.js +9 -0
  38. package/dist/cjs/RadioGroup/radiogroup.module.css.js.map +1 -0
  39. package/dist/cjs/Select/index.js +31 -0
  40. package/dist/cjs/Select/index.js.map +1 -0
  41. package/dist/cjs/Select/select.module.css.js +9 -0
  42. package/dist/cjs/Select/select.module.css.js.map +1 -0
  43. package/dist/cjs/Skeleton/index.js +5 -3
  44. package/dist/cjs/Skeleton/index.js.map +1 -1
  45. package/dist/cjs/Spinner/index.js +29 -0
  46. package/dist/cjs/Spinner/index.js.map +1 -0
  47. package/dist/cjs/Spinner/spinner.module.css.js +9 -0
  48. package/dist/cjs/Spinner/spinner.module.css.js.map +1 -0
  49. package/dist/cjs/Switch/index.js.map +1 -1
  50. package/dist/cjs/TextInput/index.js.map +1 -1
  51. package/dist/cjs/Textarea/index.js +31 -0
  52. package/dist/cjs/Textarea/index.js.map +1 -0
  53. package/dist/cjs/Textarea/textarea.module.css.js +9 -0
  54. package/dist/cjs/Textarea/textarea.module.css.js.map +1 -0
  55. package/dist/cjs/ThemeProvider/index.js +16 -2
  56. package/dist/cjs/ThemeProvider/index.js.map +1 -1
  57. package/dist/cjs/Toast/index.js +111 -0
  58. package/dist/cjs/Toast/index.js.map +1 -0
  59. package/dist/cjs/Toast/toast.module.css.js +9 -0
  60. package/dist/cjs/Toast/toast.module.css.js.map +1 -0
  61. package/dist/cjs/Tooltip/index.js +165 -0
  62. package/dist/cjs/Tooltip/index.js.map +1 -0
  63. package/dist/cjs/Tooltip/tooltip.module.css.js +9 -0
  64. package/dist/cjs/Tooltip/tooltip.module.css.js.map +1 -0
  65. package/dist/cjs/index.js +45 -12
  66. package/dist/cjs/index.js.map +1 -1
  67. package/dist/esm/Alert/alert.module.css.js +1 -1
  68. package/dist/esm/Alert/index.js +10 -7
  69. package/dist/esm/Alert/index.js.map +1 -1
  70. package/dist/esm/Button/index.js +3 -5
  71. package/dist/esm/Button/index.js.map +1 -1
  72. package/dist/esm/Checkbox/index.js +2 -1
  73. package/dist/esm/Checkbox/index.js.map +1 -1
  74. package/dist/esm/Chip/index.js +3 -5
  75. package/dist/esm/Chip/index.js.map +1 -1
  76. package/dist/esm/Dialog/dialog.module.css.js +5 -0
  77. package/dist/esm/Dialog/dialog.module.css.js.map +1 -0
  78. package/dist/esm/Dialog/index.js +126 -0
  79. package/dist/esm/Dialog/index.js.map +1 -0
  80. package/dist/esm/DropdownMenu/dropdownmenu.module.css.js +5 -0
  81. package/dist/esm/DropdownMenu/dropdownmenu.module.css.js.map +1 -0
  82. package/dist/esm/DropdownMenu/index.js +216 -0
  83. package/dist/esm/DropdownMenu/index.js.map +1 -0
  84. package/dist/esm/Field/field.module.css.js +5 -0
  85. package/dist/esm/Field/field.module.css.js.map +1 -0
  86. package/dist/esm/Field/index.js +31 -0
  87. package/dist/esm/Field/index.js.map +1 -0
  88. package/dist/esm/Icons/icons.module.css.js +5 -0
  89. package/dist/esm/Icons/icons.module.css.js.map +1 -0
  90. package/dist/esm/Icons/index.js +84 -0
  91. package/dist/esm/Icons/index.js.map +1 -0
  92. package/dist/esm/Popover/index.js +141 -0
  93. package/dist/esm/Popover/index.js.map +1 -0
  94. package/dist/esm/Popover/popover.module.css.js +5 -0
  95. package/dist/esm/Popover/popover.module.css.js.map +1 -0
  96. package/dist/esm/Progress/index.js +27 -0
  97. package/dist/esm/Progress/index.js.map +1 -0
  98. package/dist/esm/Progress/progress.module.css.js +5 -0
  99. package/dist/esm/Progress/progress.module.css.js.map +1 -0
  100. package/dist/esm/RadioGroup/index.js +40 -0
  101. package/dist/esm/RadioGroup/index.js.map +1 -0
  102. package/dist/esm/RadioGroup/radiogroup.module.css.js +5 -0
  103. package/dist/esm/RadioGroup/radiogroup.module.css.js.map +1 -0
  104. package/dist/esm/Select/index.js +27 -0
  105. package/dist/esm/Select/index.js.map +1 -0
  106. package/dist/esm/Select/select.module.css.js +5 -0
  107. package/dist/esm/Select/select.module.css.js.map +1 -0
  108. package/dist/esm/Skeleton/index.js +5 -3
  109. package/dist/esm/Skeleton/index.js.map +1 -1
  110. package/dist/esm/Spinner/index.js +25 -0
  111. package/dist/esm/Spinner/index.js.map +1 -0
  112. package/dist/esm/Spinner/spinner.module.css.js +5 -0
  113. package/dist/esm/Spinner/spinner.module.css.js.map +1 -0
  114. package/dist/esm/Switch/index.js.map +1 -1
  115. package/dist/esm/TextInput/index.js.map +1 -1
  116. package/dist/esm/Textarea/index.js +27 -0
  117. package/dist/esm/Textarea/index.js.map +1 -0
  118. package/dist/esm/Textarea/textarea.module.css.js +5 -0
  119. package/dist/esm/Textarea/textarea.module.css.js.map +1 -0
  120. package/dist/esm/ThemeProvider/index.js +16 -2
  121. package/dist/esm/ThemeProvider/index.js.map +1 -1
  122. package/dist/esm/Toast/index.js +108 -0
  123. package/dist/esm/Toast/index.js.map +1 -0
  124. package/dist/esm/Toast/toast.module.css.js +5 -0
  125. package/dist/esm/Toast/toast.module.css.js.map +1 -0
  126. package/dist/esm/Tooltip/index.js +161 -0
  127. package/dist/esm/Tooltip/index.js.map +1 -0
  128. package/dist/esm/Tooltip/tooltip.module.css.js +5 -0
  129. package/dist/esm/Tooltip/tooltip.module.css.js.map +1 -0
  130. package/dist/esm/index.js +12 -0
  131. package/dist/esm/index.js.map +1 -1
  132. package/dist/index.d.ts +246 -11
  133. package/dist/styles.css +1 -1
  134. package/dist/styles.css.map +1 -1
  135. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  136. package/dist/types/src/Alert/index.d.ts +2 -2
  137. package/dist/types/src/Button/index.d.ts +4 -2
  138. package/dist/types/src/Chip/index.d.ts +4 -2
  139. package/dist/types/src/Dialog/index.d.ts +18 -0
  140. package/dist/types/src/DropdownMenu/index.d.ts +27 -0
  141. package/dist/types/src/Field/index.d.ts +22 -0
  142. package/dist/types/src/Icons/index.d.ts +29 -0
  143. package/dist/types/src/Popover/index.d.ts +20 -0
  144. package/dist/types/src/Progress/index.d.ts +15 -0
  145. package/dist/types/src/RadioGroup/index.d.ts +27 -0
  146. package/dist/types/src/Select/index.d.ts +14 -0
  147. package/dist/types/src/Skeleton/index.d.ts +2 -2
  148. package/dist/types/src/Spinner/index.d.ts +10 -0
  149. package/dist/types/src/Textarea/index.d.ts +13 -0
  150. package/dist/types/src/ThemeProvider/index.d.ts +3 -2
  151. package/dist/types/src/Toast/index.d.ts +30 -0
  152. package/dist/types/src/Tooltip/index.d.ts +17 -0
  153. package/dist/types/src/index.d.ts +24 -0
  154. package/package.json +4 -3
package/README.md CHANGED
@@ -62,18 +62,182 @@ Frey UI currently exports:
62
62
  - `Button`
63
63
  - `Checkbox`
64
64
  - `Chip`
65
+ - `Dialog`
66
+ - `DropdownMenu`
67
+ - `Field`
68
+ - `Icons` (`CloseIcon`, `ChevronDownIcon`, `CheckIcon`, `MinusIcon`, `CircleXIcon`, `CircleCheckIcon`, `TriangleAlertIcon`, `CircleInfoIcon`)
69
+ - `Popover`
70
+ - `RadioGroup`
71
+ - `Progress`
72
+ - `Select`
65
73
  - `Skeleton`
74
+ - `Spinner`
66
75
  - `Switch`
76
+ - `Textarea`
67
77
  - `TextInput`
78
+ - `ToastProvider` + `useToast`
79
+ - `Tooltip`
68
80
  - `ThemeProvider`
69
81
 
82
+ ### `Field`
83
+
84
+ Shared form field wrapper for labels, helper text, and error messaging.
85
+
86
+ - `label` (`string`, required): field label text.
87
+ - `hideLabel` (`boolean`, default `false`): visually hide label while keeping it accessible.
88
+ - `error` (`string`): error text rendered with `role='alert'`.
89
+ - `helperText` (`string`): helper text shown below control content.
90
+ - `required` (`boolean`, default `false`): shows required indicator.
91
+ - `disabled` (`boolean`, default `false`): applies disabled label styling.
92
+ - `children` (`(props: FieldRenderProps) => ReactNode`, required): render function with generated ids + validation state.
93
+ - `className` (`string`): additional CSS class.
94
+ - `style` (`CSSProperties`): inline style / CSS variable overrides.
95
+
96
+ ### `Dialog`
97
+
98
+ Accessible modal dialog primitive for confirmation and settings flows.
99
+
100
+ Recommended usage: pair it with a trigger button and controlled `open` state.
101
+
102
+ - `open` (`boolean`, required): controls visibility.
103
+ - `title` (`string`, required): dialog heading used as accessible name.
104
+ - `children` (`ReactNode`): body content.
105
+ - `description` (`string`): optional secondary description text.
106
+ - `onOpenChange` (`(open: boolean) => void`): state change callback for close actions.
107
+ - `closeOnEscape` (`boolean`, default `true`): close when Escape is pressed.
108
+ - `closeOnOverlayClick` (`boolean`, default `true`): close when backdrop is clicked.
109
+ - `closeLabel` (`string`, default `'Close dialog'`): accessible label for close button.
110
+ - `className` / `style`: overlay/dialog root customization.
111
+ - `contentClassName` / `contentStyle`: dialog panel customization.
112
+
113
+ ### `DropdownMenu`
114
+
115
+ Trigger-based menu for compact actions.
116
+
117
+ - `trigger` (`ReactElement`, required): trigger control.
118
+ - `items` (`ReadonlyArray<DropdownMenuItem>`, required): menu options.
119
+ - `onSelect` (`(value: string) => void`): item selection callback.
120
+ - `open` / `defaultOpen` / `onOpenChange`: controlled/uncontrolled state.
121
+ - `placement` (`'top' | 'right' | 'bottom' | 'left'`, default `'bottom'`): menu placement.
122
+ - `closeOnEscape` (`boolean`, default `true`): close with Escape key.
123
+ - `closeOnOutsideClick` (`boolean`, default `true`): outside click dismiss.
124
+
125
+ ### `Icons`
126
+
127
+ Shared SVG icon primitives used by Frey UI components.
128
+
129
+ - `CloseIcon`, `ChevronDownIcon`, `CheckIcon`, `MinusIcon`
130
+ - `CircleXIcon`, `CircleCheckIcon`, `TriangleAlertIcon`, `CircleInfoIcon`
131
+
132
+ Both icons support:
133
+
134
+ - `size` (`'xs' | 'sm' | 'md' | 'lg' | 'xl' | number`, default `'md'`): icon size token or numeric override.
135
+ - `strokeWidth` (`'thin' | 'regular' | 'bold' | number`, default `'regular'`): stroke token or numeric override.
136
+ - `title` (`string`): accessible name when you want semantic/icon-only meaning.
137
+ - `className` / `style`: visual customization.
138
+
139
+ ### `Popover`
140
+
141
+ Non-modal floating surface anchored to a trigger.
142
+
143
+ - `trigger` (`ReactElement`, required): trigger control.
144
+ - `children` (`ReactNode`, required): popover content.
145
+ - `open` / `defaultOpen` / `onOpenChange`: controlled/uncontrolled state.
146
+ - `placement` (`'top' | 'right' | 'bottom' | 'left'`, default `'bottom'`): popover placement.
147
+ - `closeOnEscape` (`boolean`, default `true`) and `closeOnOutsideClick` (`boolean`, default `true`).
148
+
149
+ ### `Progress`
150
+
151
+ Progress indicator for determinate or indeterminate loading.
152
+
153
+ - `value` (`number`, default `0`) and `max` (`number`, default `100`).
154
+ - `indeterminate` (`boolean`, default `false`): animated loading state.
155
+ - `label` (`string`): accessible and visible label.
156
+ - `showValue` (`boolean`, default `false`): show percentage text.
157
+ - `size` (`'sm' | 'md' | 'lg'`, default `'md'`).
158
+
159
+ ### `Spinner`
160
+
161
+ Compact busy indicator for short background operations.
162
+
163
+ - `size` (`'sm' | 'md' | 'lg' | number`, default `'md'`).
164
+ - `label` (`string`, default `'Loading'`): status label for assistive tech.
165
+ - `className` / `style`: visual overrides.
166
+
167
+ ### `ToastProvider` + `useToast`
168
+
169
+ Imperative notification system for transient messages.
170
+
171
+ - Wrap app sections with `ToastProvider`.
172
+ - Use `useToast()` to access:
173
+ - `toast(options)`
174
+ - `dismiss(id)`
175
+ - `dismissAll()`
176
+
177
+ `ToastProvider` props:
178
+
179
+ - `placement` (`'top-right' | 'top-left' | 'bottom-right' | 'bottom-left'`, default `'top-right'`)
180
+ - `limit` (`number`, default `4`)
181
+
182
+ `toast(options)` supports:
183
+
184
+ - `title`, `description` (required), `variant`, `duration`, and optional action button.
185
+
186
+ ### `Tooltip`
187
+
188
+ Accessible hint text on hover/focus.
189
+
190
+ - `children` (`ReactElement`, required): trigger element.
191
+ - `content` (`ReactNode`, required): tooltip text/content.
192
+ - `open` / `defaultOpen` / `onOpenChange`: controlled/uncontrolled state.
193
+ - `placement` (`'top' | 'right' | 'bottom' | 'left'`, default `'top'`).
194
+ - `delay` (`number`, default `120` ms): show delay on hover/focus.
195
+
196
+ ### `RadioGroup`
197
+
198
+ Accessible grouped radios with controlled and uncontrolled support.
199
+
200
+ - `label` (`string`, required): group label text.
201
+ - `options` (`ReadonlyArray<RadioOption>`, required): radio options.
202
+ - `value` (`string`): controlled selected value.
203
+ - `defaultValue` (`string`): initial value for uncontrolled usage.
204
+ - `onChange` (`ChangeEventHandler<HTMLInputElement>`): native change handler.
205
+ - `orientation` (`'vertical' | 'horizontal'`, default `'vertical'`): options layout direction.
206
+ - `error` (`string`): error text for validation state.
207
+ - `helperText` (`string`): helper text below group.
208
+ - `disabled` (`boolean`, default `false`): disables all options.
209
+
210
+ ### `Select`
211
+
212
+ Accessible native `<select>` with helper/error messages and size variants.
213
+
214
+ - `label` (`string`, required): accessible label text.
215
+ - `placeholder` (`string`): placeholder option for single-select usage.
216
+ - `size` (`'sm' | 'md' | 'lg'`, default `'md'`): visual size variant.
217
+ - `error` (`string`): error text and invalid state.
218
+ - `helperText` (`string`): helper text below control.
219
+ - `children` (`ReactNode`): `<option>` / `<optgroup>` content.
220
+ - `disabled` (`boolean`, default `false`): disables the control.
221
+
222
+ ### `Textarea`
223
+
224
+ Accessible multiline text input with helper/error messaging.
225
+
226
+ - `label` (`string`, required): accessible label text.
227
+ - `resize` (`'none' | 'vertical' | 'horizontal' | 'both'`, default `'vertical'`): resize behavior.
228
+ - `error` (`string`): error text and invalid state.
229
+ - `helperText` (`string`): helper text below control.
230
+ - `disabled` (`boolean`, default `false`): disables the textarea.
231
+ - `className` (`string`): additional CSS class.
232
+ - `style` (`CSSProperties`): inline style / CSS variable overrides.
233
+
70
234
  ### `Alert`
71
235
 
72
236
  Inline status and feedback messaging.
73
237
 
74
238
  | Prop | Type | Default | Description |
75
239
  | ----------- | ---------------------------------------------- | -------- | ------------------------------------------------ |
76
- | `variant` | `'error' \| 'success' \| 'warning' \| 'info'` | `'info'` | Visual style and live-region semantics. |
240
+ | `variant` | `'error' \| 'success' \| 'warning' \| 'info'` | `'info'` | Visual style and live-region semantics. |
77
241
  | `title` | `string` | — | Optional short heading rendered above the body. |
78
242
  | `children` | `ReactNode` | — | **Required.** Main alert message content. |
79
243
  | `className` | `string` | — | Additional CSS class. |
@@ -83,16 +247,16 @@ Inline status and feedback messaging.
83
247
 
84
248
  Polymorphic action control with loading and disabled states.
85
249
 
86
- | Prop | Type | Default | Description |
87
- | ----------- | ------------------------------------------------- | ----------- | --------------------------------------------------------------------------------------- |
88
- | `as` | `'button' \| 'a'` | `'button'` | HTML element to render. |
250
+ | Prop | Type | Default | Description |
251
+ | ----------- | ------------------------------------------------------ | ----------- | --------------------------------------------------------------------------------------- |
252
+ | `as` | `'button' \| 'a'` | `'button'` | HTML element to render. |
89
253
  | `variant` | `'primary' \| 'secondary' \| 'ghost' \| 'destructive'` | `'primary'` | Visual style variant. |
90
- | `size` | `'sm' \| 'md' \| 'lg'` | `'md'` | Size variant. |
91
- | `loading` | `boolean` | `false` | Shows spinner and marks element as busy. |
92
- | `disabled` | `boolean` | `false` | Disables native buttons; for anchors sets `aria-disabled`. |
93
- | `className` | `string` | — | Additional CSS class. |
94
- | `style` | `CSSProperties` | — | Inline styles / CSS variable overrides. |
95
- | `ref` | `Ref<HTMLButtonElement \| HTMLAnchorElement>` | — | Forwarded ref to the underlying element. |
254
+ | `size` | `'sm' \| 'md' \| 'lg'` | `'md'` | Size variant. |
255
+ | `loading` | `boolean` | `false` | Shows spinner and marks element as busy. |
256
+ | `disabled` | `boolean` | `false` | Disables native buttons; for anchors sets `aria-disabled`. |
257
+ | `className` | `string` | — | Additional CSS class. |
258
+ | `style` | `CSSProperties` | — | Inline styles / CSS variable overrides. |
259
+ | `ref` | `Ref<HTMLButtonElement \| HTMLAnchorElement>` | — | Forwarded ref to the underlying element. |
96
260
 
97
261
  Component-specific native attributes are supported based on `as` (`button` or `a`).
98
262
 
@@ -105,7 +269,7 @@ Accessible checkbox with optional indeterminate state.
105
269
  | `label` | `string` | — | **Required.** Accessible label text. |
106
270
  | `hideLabel` | `boolean` | `false` | Visually hide the label (remains accessible to screen readers). |
107
271
  | `size` | `'sm' \| 'md' \| 'lg'` | `'md'` | Size variant. |
108
- | `indeterminate` | `boolean` | `false` | Shows mixed state and sets `aria-checked="mixed"`. |
272
+ | `indeterminate` | `boolean` | `false` | Shows mixed state and sets `aria-checked="mixed"`. |
109
273
  | `disabled` | `boolean` | `false` | Disables the checkbox. |
110
274
  | `className` | `string` | — | Additional CSS class. |
111
275
  | `style` | `CSSProperties` | — | Inline styles / CSS variable overrides. |
@@ -133,13 +297,13 @@ Non-native interactive chips (`as="div"` with `onClick`) automatically receive `
133
297
 
134
298
  Loading placeholder for pending UI states.
135
299
 
136
- | Prop | Type | Default | Description |
137
- | ----------- | ------------------------------- | ------------- | ----------------------------------------------------- |
300
+ | Prop | Type | Default | Description |
301
+ | ----------- | ------------------------------- | ------------- | ------------------------------------------------------- |
138
302
  | `width` | `string \| number` | — | Placeholder width (for circles, can infer from height). |
139
303
  | `height` | `string \| number` | — | Placeholder height (for circles, can infer from width). |
140
- | `shape` | `'rectangle' \| 'circle'` | `'rectangle'` | Skeleton shape. |
141
- | `className` | `string` | — | Additional CSS class. |
142
- | `style` | `CSSProperties` | — | Inline styles / CSS variable overrides. |
304
+ | `shape` | `'rectangle' \| 'circle'` | `'rectangle'` | Skeleton shape. |
305
+ | `className` | `string` | — | Additional CSS class. |
306
+ | `style` | `CSSProperties` | — | Inline styles / CSS variable overrides. |
143
307
 
144
308
  ### `Switch`
145
309
 
@@ -168,8 +332,8 @@ Accessible text field with helper and error messaging.
168
332
  | ------------ | ----------------------------------------------------------------------- | -------- | --------------------------------------------------------------- |
169
333
  | `label` | `string` | — | **Required.** Accessible label text. |
170
334
  | `hideLabel` | `boolean` | `false` | Visually hide the label (remains accessible to screen readers). |
171
- | `type` | `'text' \| 'email' \| 'password' \| 'search' \| 'tel' \| 'url'` | `'text'` | Input type. |
172
- | `error` | `string` | — | Error message text; sets `aria-invalid` and `role="alert"`. |
335
+ | `type` | `'text' \| 'email' \| 'password' \| 'search' \| 'tel' \| 'url'` | `'text'` | Input type. |
336
+ | `error` | `string` | — | Error message text; sets `aria-invalid` and `role="alert"`. |
173
337
  | `helperText` | `string` | — | Helper text shown below the input. |
174
338
  | `disabled` | `boolean` | `false` | Disables the input. |
175
339
  | `className` | `string` | — | Additional CSS class. |
@@ -180,15 +344,16 @@ All standard `<input>` attributes (except `type`) are also supported and spread
180
344
 
181
345
  ### `ThemeProvider`
182
346
 
183
- Wraps children with theme CSS variables.
347
+ Wraps children with theme CSS variables and controls semantic token mapping.
184
348
 
185
- | Prop | Type | Default | Description |
186
- | ----------- | ------------------- | --------- | ---------------------------- |
187
- | `children` | `ReactNode` | — | **Required.** Child content. |
188
- | `theme` | `'light' \| 'dark'` | `'light'` | Active theme. |
189
- | `id` | `string` | | Container id. |
190
- | `className` | `string` | — | Additional CSS class. |
191
- | `style` | `CSSProperties` | — | Inline styles. |
349
+ | Prop | Type | Default | Description |
350
+ | -------------- | ------------------------------ | --------- | ----------------------------------------------------- |
351
+ | `children` | `ReactNode` | — | **Required.** Child content. |
352
+ | `theme` | `'light' \| 'dark' \| 'system'`| `'light'` | Active theme. `'system'` follows OS preferences. |
353
+ | `highContrast` | `boolean` | `false` | Enables high-contrast mode for better accessibility. |
354
+ | `id` | `string` | — | Container id. |
355
+ | `className` | `string` | — | Additional CSS class. |
356
+ | `style` | `CSSProperties` | — | Inline styles. |
192
357
 
193
358
  ## Theming
194
359
 
@@ -3,7 +3,7 @@
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
- var styles = {"alert":"alert-module_alert__j-fLL","alert-error":"alert-module_alert-error__U8yC8","alert-success":"alert-module_alert-success__FYP1Q","alert-warning":"alert-module_alert-warning__tuLWQ","alert-info":"alert-module_alert-info__d2xVj","alert-icon":"alert-module_alert-icon__j-8MC","alert-content":"alert-module_alert-content__PUQPc","alert-title":"alert-module_alert-title__3yZS1","alert-message":"alert-module_alert-message__0AJ04"};
6
+ var styles = {"alert":"alert-module_alert__j-fLL","alert-error":"alert-module_alert-error__U8yC8","alert-success":"alert-module_alert-success__FYP1Q","alert-warning":"alert-module_alert-warning__tuLWQ","alert-info":"alert-module_alert-info__d2xVj","alert-icon":"alert-module_alert-icon__j-8MC","alert_icon_svg":"alert-module_alert_icon_svg__EBN75","alert-content":"alert-module_alert-content__PUQPc","alert-title":"alert-module_alert-title__3yZS1","alert-message":"alert-module_alert-message__0AJ04"};
7
7
 
8
8
  exports.default = styles;
9
9
  //# sourceMappingURL=alert.module.css.js.map
@@ -5,6 +5,8 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
6
  var jsxRuntime = require('react/jsx-runtime');
7
7
  var clsx = require('clsx');
8
+ var React = require('react');
9
+ var index = require('../Icons/index.js');
8
10
  var alert_module = require('./alert.module.css.js');
9
11
 
10
12
  const VariantClassMap = {
@@ -20,14 +22,15 @@ const VariantRoleMap = {
20
22
  info: 'status'
21
23
  };
22
24
  const icons = {
23
- error: (jsxRuntime.jsx("svg", { xmlns: 'http://www.w3.org/2000/svg', viewBox: '0 0 20 20', fill: 'currentColor', "aria-hidden": 'true', children: jsxRuntime.jsx("path", { fillRule: 'evenodd', d: 'M10 18a8 8 0 100-16 8 8 0 000 16zM8.28 7.22a.75.75 0 00-1.06 1.06L8.94 10l-1.72 1.72a.75.75 0 101.06 1.06L10 11.06l1.72 1.72a.75.75 0 101.06-1.06L11.06 10l1.72-1.72a.75.75 0 00-1.06-1.06L10 8.94 8.28 7.22z', clipRule: 'evenodd' }) })),
24
- success: (jsxRuntime.jsx("svg", { xmlns: 'http://www.w3.org/2000/svg', viewBox: '0 0 20 20', fill: 'currentColor', "aria-hidden": 'true', children: jsxRuntime.jsx("path", { fillRule: 'evenodd', d: 'M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z', clipRule: 'evenodd' }) })),
25
- warning: (jsxRuntime.jsx("svg", { xmlns: 'http://www.w3.org/2000/svg', viewBox: '0 0 20 20', fill: 'currentColor', "aria-hidden": 'true', children: jsxRuntime.jsx("path", { fillRule: 'evenodd', d: 'M8.485 2.495c.673-1.167 2.357-1.167 3.03 0l6.28 10.875c.673 1.167-.168 2.625-1.516 2.625H3.72c-1.347 0-2.189-1.458-1.515-2.625L8.485 2.495zM10 5a.75.75 0 01.75.75v3.5a.75.75 0 01-1.5 0v-3.5A.75.75 0 0110 5zm0 9a1 1 0 100-2 1 1 0 000 2z', clipRule: 'evenodd' }) })),
26
- info: (jsxRuntime.jsx("svg", { xmlns: 'http://www.w3.org/2000/svg', viewBox: '0 0 20 20', fill: 'currentColor', "aria-hidden": 'true', children: jsxRuntime.jsx("path", { fillRule: 'evenodd', d: 'M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z', clipRule: 'evenodd' }) }))
25
+ error: (jsxRuntime.jsx(index.CircleXIcon, { size: 'lg', strokeWidth: 'bold', className: alert_module.default.alert_icon_svg })),
26
+ success: (jsxRuntime.jsx(index.CircleCheckIcon, { size: 'lg', strokeWidth: 'bold', className: alert_module.default.alert_icon_svg })),
27
+ warning: (jsxRuntime.jsx(index.TriangleAlertIcon, { size: 'lg', strokeWidth: 'bold', className: alert_module.default.alert_icon_svg })),
28
+ info: (jsxRuntime.jsx(index.CircleInfoIcon, { size: 'lg', strokeWidth: 'bold', className: alert_module.default.alert_icon_svg }))
27
29
  };
28
- function Alert({ variant = 'info', title, children, className, style }) {
29
- return (jsxRuntime.jsxs("div", { role: VariantRoleMap[variant], className: clsx(alert_module.default.alert, VariantClassMap[variant], className), style: style, children: [jsxRuntime.jsx("span", { className: alert_module.default['alert-icon'], children: icons[variant] }), jsxRuntime.jsxs("div", { className: alert_module.default['alert-content'], children: [title && jsxRuntime.jsx("p", { className: alert_module.default['alert-title'], children: title }), jsxRuntime.jsx("p", { className: alert_module.default['alert-message'], children: children })] })] }));
30
- }
30
+ const Alert = React.forwardRef(function Alert({ variant = 'info', title, children, className, style }, ref) {
31
+ return (jsxRuntime.jsxs("div", { ref: ref, role: VariantRoleMap[variant], className: clsx(alert_module.default.alert, VariantClassMap[variant], className), style: style, children: [jsxRuntime.jsx("span", { className: alert_module.default['alert-icon'], children: icons[variant] }), jsxRuntime.jsxs("div", { className: alert_module.default['alert-content'], children: [title && jsxRuntime.jsx("p", { className: alert_module.default['alert-title'], children: title }), jsxRuntime.jsx("p", { className: alert_module.default['alert-message'], children: children })] })] }));
32
+ });
33
+ Alert.displayName = 'Alert';
31
34
 
32
35
  exports.default = Alert;
33
36
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/Alert/index.tsx"],"sourcesContent":[null],"names":["styles","_jsx","_jsxs"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/Alert/index.tsx"],"sourcesContent":[null],"names":["styles","_jsx","CircleXIcon","CircleCheckIcon","TriangleAlertIcon","CircleInfoIcon","_jsxs"],"mappings":";;;;;;;;;;;AAoBA,MAAM,eAAe,GAAiC;AACpD,IAAA,KAAK,EAAEA,oBAAM,CAAC,aAAa,CAAC;AAC5B,IAAA,OAAO,EAAEA,oBAAM,CAAC,eAAe,CAAC;AAChC,IAAA,OAAO,EAAEA,oBAAM,CAAC,eAAe,CAAC;AAChC,IAAA,IAAI,EAAEA,oBAAM,CAAC,YAAY;CAC1B;AAED,MAAM,cAAc,GAA6C;AAC/D,IAAA,KAAK,EAAE,OAAO;AACd,IAAA,OAAO,EAAE,OAAO;AAChB,IAAA,OAAO,EAAE,QAAQ;AACjB,IAAA,IAAI,EAAE;CACP;AAED,MAAM,KAAK,GAA0C;AACnD,IAAA,KAAK,GACHC,cAAA,CAACC,iBAAW,EAAA,EACV,IAAI,EAAC,IAAI,EACT,WAAW,EAAC,MAAM,EAClB,SAAS,EAAEF,oBAAM,CAAC,cAAc,GAChC,CACH;AACD,IAAA,OAAO,GACLC,cAAA,CAACE,qBAAe,EAAA,EACd,IAAI,EAAC,IAAI,EACT,WAAW,EAAC,MAAM,EAClB,SAAS,EAAEH,oBAAM,CAAC,cAAc,GAChC,CACH;AACD,IAAA,OAAO,GACLC,cAAA,CAACG,uBAAiB,EAAA,EAChB,IAAI,EAAC,IAAI,EACT,WAAW,EAAC,MAAM,EAClB,SAAS,EAAEJ,oBAAM,CAAC,cAAc,GAChC,CACH;AACD,IAAA,IAAI,GACFC,cAAA,CAACI,oBAAc,EAAA,EACb,IAAI,EAAC,IAAI,EACT,WAAW,EAAC,MAAM,EAClB,SAAS,EAAEL,oBAAM,CAAC,cAAc,GAChC;CAEL;AAED,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAC5B,SAAS,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,GAAG,EAAA;AACzE,IAAA,QACEM,eAAA,CAAA,KAAA,EAAA,EACE,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,EAC7B,SAAS,EAAE,IAAI,CAACN,oBAAM,CAAC,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,EAClE,KAAK,EAAE,KAAK,EAAA,QAAA,EAAA,CAEZC,cAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAED,oBAAM,CAAC,YAAY,CAAC,EAAA,QAAA,EAAG,KAAK,CAAC,OAAO,CAAC,EAAA,CAAQ,EAC9DM,yBAAK,SAAS,EAAEN,oBAAM,CAAC,eAAe,CAAC,EAAA,QAAA,EAAA,CACpC,KAAK,IAAIC,cAAA,CAAA,GAAA,EAAA,EAAG,SAAS,EAAED,oBAAM,CAAC,aAAa,CAAC,EAAA,QAAA,EAAG,KAAK,GAAK,EAC1DC,cAAA,CAAA,GAAA,EAAA,EAAG,SAAS,EAAED,oBAAM,CAAC,eAAe,CAAC,EAAA,QAAA,EAAG,QAAQ,GAAK,CAAA,EAAA,CACjD,CAAA,EAAA,CACF;AAEV,CAAC;AAGH,KAAK,CAAC,WAAW,GAAG,OAAO;;;;"}
@@ -20,15 +20,13 @@ const SizeClassMap = {
20
20
  md: button_module.default['button-md'],
21
21
  lg: button_module.default['button-lg']
22
22
  };
23
- function ButtonInner(_a, ref) {
23
+ const Button = React.forwardRef(function Button(_a, ref) {
24
24
  var { as, variant = 'primary', size = 'md', loading = false, disabled = false, className, style, children } = _a, restProps = tslib.__rest(_a, ["as", "variant", "size", "loading", "disabled", "className", "style", "children"]);
25
25
  const Component = (as !== null && as !== void 0 ? as : 'button');
26
26
  const isButton = (as !== null && as !== void 0 ? as : 'button') === 'button';
27
27
  return (jsxRuntime.jsxs(Component, Object.assign({ ref: ref, className: clsx(button_module.default.button, VariantClassMap[variant], SizeClassMap[size], { [button_module.default['button-loading']]: loading }, className), style: style, disabled: isButton ? disabled || loading : undefined, "aria-disabled": !isButton && (disabled || loading) ? true : undefined, type: isButton ? 'button' : undefined, "aria-busy": loading || undefined }, restProps, { children: [loading && jsxRuntime.jsx("span", { className: button_module.default.spinner, "aria-hidden": 'true' }), children] })));
28
- }
29
- const ForwardedButton = React.forwardRef(ButtonInner);
30
- ForwardedButton.displayName = 'Button';
31
- const Button = ForwardedButton;
28
+ });
29
+ Button.displayName = 'Button';
32
30
 
33
31
  exports.default = Button;
34
32
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/Button/index.tsx"],"sourcesContent":[null],"names":["styles","__rest","_jsxs","_jsx"],"mappings":";;;;;;;;;;;AA+BA,MAAM,eAAe,GAAkC;AACrD,IAAA,OAAO,EAAEA,qBAAM,CAAC,gBAAgB,CAAC;AACjC,IAAA,SAAS,EAAEA,qBAAM,CAAC,kBAAkB,CAAC;AACrC,IAAA,KAAK,EAAEA,qBAAM,CAAC,cAAc,CAAC;AAC7B,IAAA,WAAW,EAAEA,qBAAM,CAAC,oBAAoB;CACzC;AAED,MAAM,YAAY,GAA+B;AAC/C,IAAA,EAAE,EAAEA,qBAAM,CAAC,WAAW,CAAC;AACvB,IAAA,EAAE,EAAEA,qBAAM,CAAC,WAAW,CAAC;AACvB,IAAA,EAAE,EAAEA,qBAAM,CAAC,WAAW;CACvB;AAED,SAAS,WAAW,CAClB,EAU2B,EAC3B,GAA8E,EAAA;AAX9E,IAAA,IAAA,EACE,EAAE,EACF,OAAO,GAAG,SAAS,EACnB,IAAI,GAAG,IAAI,EACX,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,KAAK,EAChB,SAAS,EACT,KAAK,EACL,QAAQ,EAAA,GAAA,EAEiB,EADtB,SAAS,GAAAC,YAAA,CAAA,EAAA,EATd,CAAA,IAAA,EAAA,SAAA,EAAA,MAAA,EAAA,SAAA,EAAA,UAAA,EAAA,WAAA,EAAA,OAAA,EAAA,UAAA,CAUC,CADa;IAId,MAAM,SAAS,IAAI,EAAE,KAAA,IAAA,IAAF,EAAE,KAAA,MAAA,GAAF,EAAE,GAAI,QAAQ,CAAsB;AACvD,IAAA,MAAM,QAAQ,GAAG,CAAC,EAAE,KAAA,IAAA,IAAF,EAAE,KAAA,MAAA,GAAF,EAAE,GAAI,QAAQ,MAAM,QAAQ;IAE9C,QACEC,eAAA,CAAC,SAAS,EAAA,MAAA,CAAA,MAAA,CAAA,EACR,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,IAAI,CACbF,qBAAM,CAAC,MAAM,EACb,eAAe,CAAC,OAAO,CAAC,EACxB,YAAY,CAAC,IAAI,CAAC,EAClB,EAAE,CAACA,qBAAM,CAAC,gBAAgB,CAAC,GAAG,OAAO,EAAE,EACvC,SAAS,CACV,EACD,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,GAAG,QAAQ,IAAI,OAAO,GAAG,SAAS,EAAA,eAAA,EACrC,CAAC,QAAQ,KAAK,QAAQ,IAAI,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,EACpE,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,EAAA,WAAA,EAC1B,OAAO,IAAI,SAAS,EAAA,EAC3B,SAAS,EAAA,EAAA,QAAA,EAAA,CAEZ,OAAO,IAAIG,cAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAEH,qBAAM,CAAC,OAAO,EAAA,aAAA,EAAc,MAAM,GAAG,EACjE,QAAQ,CAAA,EAAA,CAAA,CACC;AAEhB;AAEA,MAAM,eAAe,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC;AAErD,eAAe,CAAC,WAAW,GAAG,QAAQ;AAEtC,MAAM,MAAM,GAAG;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/Button/index.tsx"],"sourcesContent":[null],"names":["styles","__rest","_jsxs","_jsx"],"mappings":";;;;;;;;;;;AA+BA,MAAM,eAAe,GAAkC;AACrD,IAAA,OAAO,EAAEA,qBAAM,CAAC,gBAAgB,CAAC;AACjC,IAAA,SAAS,EAAEA,qBAAM,CAAC,kBAAkB,CAAC;AACrC,IAAA,KAAK,EAAEA,qBAAM,CAAC,cAAc,CAAC;AAC7B,IAAA,WAAW,EAAEA,qBAAM,CAAC,oBAAoB;CACzC;AAED,MAAM,YAAY,GAA+B;AAC/C,IAAA,EAAE,EAAEA,qBAAM,CAAC,WAAW,CAAC;AACvB,IAAA,EAAE,EAAEA,qBAAM,CAAC,WAAW,CAAC;AACvB,IAAA,EAAE,EAAEA,qBAAM,CAAC,WAAW;CACvB;AAED,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,MAAM,CAG7C,EAU2B,EAC3B,GAAgC,EAAA;AAXhC,IAAA,IAAA,EACE,EAAE,EACF,OAAO,GAAG,SAAS,EACnB,IAAI,GAAG,IAAI,EACX,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,KAAK,EAChB,SAAS,EACT,KAAK,EACL,QAAQ,EAAA,GAAA,EAEiB,EADtB,SAAS,GAAAC,YAAA,CAAA,EAAA,EATd,CAAA,IAAA,EAAA,SAAA,EAAA,MAAA,EAAA,SAAA,EAAA,UAAA,EAAA,WAAA,EAAA,OAAA,EAAA,UAAA,CAUC,CADa;IAId,MAAM,SAAS,IAAI,EAAE,KAAA,IAAA,IAAF,EAAE,KAAA,MAAA,GAAF,EAAE,GAAI,QAAQ,CAAsB;AACvD,IAAA,MAAM,QAAQ,GAAG,CAAC,EAAE,KAAA,IAAA,IAAF,EAAE,KAAA,MAAA,GAAF,EAAE,GAAI,QAAQ,MAAM,QAAQ;IAE9C,QACEC,eAAA,CAAC,SAAS,EAAA,MAAA,CAAA,MAAA,CAAA,EACR,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,IAAI,CACbF,qBAAM,CAAC,MAAM,EACb,eAAe,CAAC,OAAO,CAAC,EACxB,YAAY,CAAC,IAAI,CAAC,EAClB,EAAE,CAACA,qBAAM,CAAC,gBAAgB,CAAC,GAAG,OAAO,EAAE,EACvC,SAAS,CACV,EACD,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,GAAG,QAAQ,IAAI,OAAO,GAAG,SAAS,EAAA,eAAA,EACrC,CAAC,QAAQ,KAAK,QAAQ,IAAI,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,EACpE,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,EAAA,WAAA,EAC1B,OAAO,IAAI,SAAS,EAAA,EAC3B,SAAS,EAAA,EAAA,QAAA,EAAA,CAEZ,OAAO,IAAIG,cAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAEH,qBAAM,CAAC,OAAO,EAAA,aAAA,EAAc,MAAM,GAAG,EACjE,QAAQ,CAAA,EAAA,CAAA,CACC;AAEhB,CAAC;AAED,MAAM,CAAC,WAAW,GAAG,QAAQ;;;;"}
@@ -7,6 +7,7 @@ var tslib = require('tslib');
7
7
  var jsxRuntime = require('react/jsx-runtime');
8
8
  var clsx = require('clsx');
9
9
  var React = require('react');
10
+ var index = require('../Icons/index.js');
10
11
  var checkbox_module = require('./checkbox.module.css.js');
11
12
 
12
13
  const SizeClassMap = {
@@ -38,7 +39,7 @@ const Checkbox = React.forwardRef(function Checkbox(_a, forwardedRef) {
38
39
  };
39
40
  return (jsxRuntime.jsxs("div", { className: clsx(checkbox_module.default['checkbox-container'], className), style: style, children: [jsxRuntime.jsxs("span", { className: clsx(checkbox_module.default.checkbox, SizeClassMap[size], {
40
41
  [checkbox_module.default['checkbox-disabled']]: disabled
41
- }), "aria-disabled": disabled || undefined, children: [jsxRuntime.jsx("input", Object.assign({ type: 'checkbox', id: inputId, disabled: disabled, ref: setRef, "aria-checked": indeterminate ? 'mixed' : undefined }, inputProps)), jsxRuntime.jsxs("span", { className: checkbox_module.default['checkbox-box'], "aria-hidden": 'true', children: [jsxRuntime.jsx("svg", { className: checkbox_module.default['check-icon'], viewBox: '0 0 12 12', fill: 'none', xmlns: 'http://www.w3.org/2000/svg', "aria-hidden": 'true', children: jsxRuntime.jsx("path", { d: 'M2.5 6L5 8.5L9.5 3.5', stroke: 'currentColor', strokeWidth: '2', strokeLinecap: 'round', strokeLinejoin: 'round' }) }), jsxRuntime.jsx("svg", { className: checkbox_module.default['indeterminate-icon'], viewBox: '0 0 12 12', fill: 'none', xmlns: 'http://www.w3.org/2000/svg', "aria-hidden": 'true', children: jsxRuntime.jsx("path", { d: 'M2.5 6H9.5', stroke: 'currentColor', strokeWidth: '2', strokeLinecap: 'round' }) })] })] }), jsxRuntime.jsx("label", { htmlFor: inputId, className: clsx(checkbox_module.default.label, {
42
+ }), "aria-disabled": disabled || undefined, children: [jsxRuntime.jsx("input", Object.assign({ type: 'checkbox', id: inputId, disabled: disabled, ref: setRef, "aria-checked": indeterminate ? 'mixed' : undefined }, inputProps)), jsxRuntime.jsxs("span", { className: checkbox_module.default['checkbox-box'], "aria-hidden": 'true', children: [jsxRuntime.jsx(index.CheckIcon, { className: checkbox_module.default['check-icon'], strokeWidth: 'bold', size: 'md' }), jsxRuntime.jsx(index.MinusIcon, { className: checkbox_module.default['indeterminate-icon'], strokeWidth: 'bold', size: 'md' })] })] }), jsxRuntime.jsx("label", { htmlFor: inputId, className: clsx(checkbox_module.default.label, {
42
43
  [checkbox_module.default['visually-hidden']]: hideLabel
43
44
  }), children: label })] }));
44
45
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/Checkbox/index.tsx"],"sourcesContent":[null],"names":["styles","__rest","useId","useRef","useLayoutEffect","_jsxs","_jsx"],"mappings":";;;;;;;;;;;AAkBA,MAAM,YAAY,GAAiC;AACjD,IAAA,EAAE,EAAEA,uBAAM,CAAC,aAAa,CAAC;AACzB,IAAA,EAAE,EAAEA,uBAAM,CAAC,aAAa,CAAC;AACzB,IAAA,EAAE,EAAEA,uBAAM,CAAC,aAAa;CACzB;AAED,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAC/B,SAAS,QAAQ,CACf,EAUC,EACD,YAAY,EAAA;AAXZ,IAAA,IAAA,EACE,KAAK,EACL,SAAS,GAAG,KAAK,EACjB,IAAI,GAAG,IAAI,EACX,aAAa,GAAG,KAAK,EACrB,SAAS,EACT,KAAK,EACL,EAAE,EACF,QAAQ,GAAG,KAAK,EAAA,GAAA,EAEjB,EADI,UAAU,GAAAC,YAAA,CAAA,EAAA,EATf,CAAA,OAAA,EAAA,WAAA,EAAA,MAAA,EAAA,eAAA,EAAA,WAAA,EAAA,OAAA,EAAA,IAAA,EAAA,UAAA,CAUC,CADc;AAIf,IAAA,MAAM,WAAW,GAAGC,WAAK,EAAE;IAC3B,MAAM,OAAO,GAAG,EAAE,KAAA,IAAA,IAAF,EAAE,KAAA,MAAA,GAAF,EAAE,GAAI,WAAW;AACjC,IAAA,MAAM,WAAW,GAAGC,YAAM,CAA0B,IAAI,CAAC;IAEzDC,qBAAe,CAAC,MAAK;AACnB,QAAA,IAAI,WAAW,CAAC,OAAO,EAAE;AACvB,YAAA,WAAW,CAAC,OAAO,CAAC,aAAa,GAAG,aAAa;QACnD;AACF,IAAA,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;AAEnB,IAAA,MAAM,MAAM,GAAG,CAAC,IAA6B,KAAI;AAC/C,QAAA,WAAW,CAAC,OAAO,GAAG,IAAI;QAC1B,IAAI,IAAI,EAAE;AACR,YAAA,IAAI,CAAC,aAAa,GAAG,aAAa;QACpC;AACA,QAAA,IAAI,OAAO,YAAY,KAAK,UAAU,EAAE;YACtC,YAAY,CAAC,IAAI,CAAC;QACpB;aAAO,IAAI,YAAY,EAAE;AACvB,YAAA,YAAY,CAAC,OAAO,GAAG,IAAI;QAC7B;AACF,IAAA,CAAC;AAED,IAAA,QACEC,eAAA,CAAA,KAAA,EAAA,EACE,SAAS,EAAE,IAAI,CAACL,uBAAM,CAAC,oBAAoB,CAAC,EAAE,SAAS,CAAC,EACxD,KAAK,EAAE,KAAK,EAAA,QAAA,EAAA,CAEZK,eAAA,CAAA,MAAA,EAAA,EACE,SAAS,EAAE,IAAI,CAACL,uBAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE;AACnD,oBAAA,CAACA,uBAAM,CAAC,mBAAmB,CAAC,GAAG;AAChC,iBAAA,CAAC,EAAA,eAAA,EACa,QAAQ,IAAI,SAAS,aAEpCM,cAAA,CAAA,OAAA,EAAA,MAAA,CAAA,MAAA,CAAA,EACE,IAAI,EAAC,UAAU,EACf,EAAE,EAAE,OAAO,EACX,QAAQ,EAAE,QAAQ,EAClB,GAAG,EAAE,MAAM,EAAA,cAAA,EACG,aAAa,GAAG,OAAO,GAAG,SAAS,EAAA,EAC7C,UAAU,CAAA,CACd,EACFD,eAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAEL,uBAAM,CAAC,cAAc,CAAC,EAAA,aAAA,EAAc,MAAM,EAAA,QAAA,EAAA,CACzDM,cAAA,CAAA,KAAA,EAAA,EACE,SAAS,EAAEN,uBAAM,CAAC,YAAY,CAAC,EAC/B,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,4BAA4B,iBACtB,MAAM,EAAA,QAAA,EAElBM,cAAA,CAAA,MAAA,EAAA,EACE,CAAC,EAAC,sBAAsB,EACxB,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,GAAG,EACf,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,GACtB,EAAA,CACE,EACNA,cAAA,CAAA,KAAA,EAAA,EACE,SAAS,EAAEN,uBAAM,CAAC,oBAAoB,CAAC,EACvC,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,4BAA4B,EAAA,aAAA,EACtB,MAAM,EAAA,QAAA,EAElBM,cAAA,CAAA,MAAA,EAAA,EACE,CAAC,EAAC,YAAY,EACd,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,GAAG,EACf,aAAa,EAAC,OAAO,EAAA,CACrB,EAAA,CACE,CAAA,EAAA,CACD,CAAA,EAAA,CACF,EACPA,cAAA,CAAA,OAAA,EAAA,EACE,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,IAAI,CAACN,uBAAM,CAAC,KAAK,EAAE;AAC5B,oBAAA,CAACA,uBAAM,CAAC,iBAAiB,CAAC,GAAG;AAC9B,iBAAA,CAAC,EAAA,QAAA,EAED,KAAK,EAAA,CACA,CAAA,EAAA,CACJ;AAEV,CAAC;AAGH,QAAQ,CAAC,WAAW,GAAG,UAAU;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/Checkbox/index.tsx"],"sourcesContent":[null],"names":["styles","__rest","useId","useRef","useLayoutEffect","_jsxs","_jsx","CheckIcon","MinusIcon"],"mappings":"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"}
@@ -17,7 +17,7 @@ const VariantClickableMap = {
17
17
  default: chip_module.default['chip-default-clickable'],
18
18
  outlined: chip_module.default['chip-outlined-clickable']
19
19
  };
20
- function ChipInner(_a, ref) {
20
+ const Chip = React.forwardRef(function Chip(_a, ref) {
21
21
  var { label, onClick, as, style, className, variant = 'default' } = _a, elementProps = tslib.__rest(_a, ["label", "onClick", "as", "style", "className", "variant"]);
22
22
  const resolvedElement = as !== null && as !== void 0 ? as : (onClick ? 'button' : 'span');
23
23
  const Component = resolvedElement;
@@ -41,10 +41,8 @@ function ChipInner(_a, ref) {
41
41
  [VariantClickableMap[variant]]: isInteractive
42
42
  }, className);
43
43
  return (jsxRuntime.jsx(Component, Object.assign({}, elementProps, { ref: ref, className: classes, onClick: onClick, style: style, type: resolvedElement === 'button' ? 'button' : undefined, role: isNonNativeInteractive ? 'button' : undefined, tabIndex: isNonNativeInteractive ? 0 : undefined, onKeyDown: isNonNativeInteractive ? handleKeyDown : undefined, children: jsxRuntime.jsx("span", { className: chip_module.default['chip-text'], children: label }) })));
44
- }
45
- const ForwardedChip = React.forwardRef(ChipInner);
46
- ForwardedChip.displayName = 'Chip';
47
- const Chip = ForwardedChip;
44
+ });
45
+ Chip.displayName = 'Chip';
48
46
 
49
47
  exports.default = Chip;
50
48
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/Chip/index.tsx"],"sourcesContent":[null],"names":["styles","__rest","_jsx"],"mappings":";;;;;;;;;;;AA+BA,MAAM,iBAAiB,GAA4B;AACjD,IAAA,OAAO,EAAEA,mBAAM,CAAC,cAAc,CAAC;AAC/B,IAAA,QAAQ,EAAEA,mBAAM,CAAC,eAAe;CACjC;AAED,MAAM,mBAAmB,GAA4B;AACnD,IAAA,OAAO,EAAEA,mBAAM,CAAC,wBAAwB,CAAC;AACzC,IAAA,QAAQ,EAAEA,mBAAM,CAAC,yBAAyB;CAC3C;AAMD,SAAS,SAAS,CAChB,EAQyB,EACzB,GAA2C,EAAA;AAT3C,IAAA,IAAA,EACE,KAAK,EACL,OAAO,EACP,EAAE,EACF,KAAK,EACL,SAAS,EACT,OAAO,GAAG,SAAS,EAAA,GAAA,EAEI,EADpB,YAAY,GAAAC,YAAA,CAAA,EAAA,EAPjB,2DAQC,CADgB;AAIjB,IAAA,MAAM,eAAe,GAAG,EAAE,aAAF,EAAE,KAAA,MAAA,GAAF,EAAE,IAAK,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC3D,MAAM,SAAS,GAAG,eAAoC;AACtD,IAAA,MAAM,IAAI,GACR,eAAe,KAAK;UACf,YAA8D,CAAC;UAChE,SAAS;AACf,IAAA,MAAM,OAAO,GAAG,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;AAClE,IAAA,MAAM,aAAa,GACjB,eAAe,KAAK,QAAQ;AAC5B,SAAC,eAAe,KAAK,GAAG,IAAI,OAAO,CAAC;QACpC,OAAO,CAAC,OAAO,CAAC;IAElB,MAAM,sBAAsB,GAC1B,aAAa,IAAI,eAAe,KAAK,QAAQ,IAAI,eAAe,KAAK,GAAG;IAE1E,MAAM,aAAa,GAAG;AACpB,UAAE,CAAC,KAA0B,KAAI;AAC7B,YAAA,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE;gBAC9C,KAAK,CAAC,cAAc,EAAE;AACrB,gBAAA,KAAK,CAAC,aAA6B,CAAC,KAAK,EAAE;YAC9C;QACF;UACA,SAAS;IAEb,MAAM,OAAO,GAAG,IAAI,CAClB,iBAAiB,CAAC,OAAO,CAAC,EAC1B;AACE,QAAA,CAAC,mBAAmB,CAAC,OAAO,CAAC,GAAG;KACjC,EACD,SAAS,CACV;AAED,IAAA,QACEC,cAAA,CAAC,SAAS,oBACJ,YAAY,EAAA,EAChB,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,OAAO,EAClB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,eAAe,KAAK,QAAQ,GAAG,QAAQ,GAAG,SAAS,EACzD,IAAI,EAAE,sBAAsB,GAAG,QAAQ,GAAG,SAAS,EACnD,QAAQ,EAAE,sBAAsB,GAAG,CAAC,GAAG,SAAS,EAChD,SAAS,EAAE,sBAAsB,GAAG,aAAa,GAAG,SAAS,EAAA,QAAA,EAE7DA,yBAAM,SAAS,EAAEF,mBAAM,CAAC,WAAW,CAAC,EAAA,QAAA,EAAG,KAAK,EAAA,CAAQ,EAAA,CAAA,CAC1C;AAEhB;AAEA,MAAM,aAAa,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC;AAEjD,aAAa,CAAC,WAAW,GAAG,MAAM;AAElC,MAAM,IAAI,GAAG;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/Chip/index.tsx"],"sourcesContent":[null],"names":["styles","__rest","_jsx"],"mappings":";;;;;;;;;;;AA+BA,MAAM,iBAAiB,GAA4B;AACjD,IAAA,OAAO,EAAEA,mBAAM,CAAC,cAAc,CAAC;AAC/B,IAAA,QAAQ,EAAEA,mBAAM,CAAC,eAAe;CACjC;AAED,MAAM,mBAAmB,GAA4B;AACnD,IAAA,OAAO,EAAEA,mBAAM,CAAC,wBAAwB,CAAC;AACzC,IAAA,QAAQ,EAAEA,mBAAM,CAAC,yBAAyB;CAC3C;AAMD,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,IAAI,CACzC,EAQyB,EACzB,GAAgC,EAAA;AAThC,IAAA,IAAA,EACE,KAAK,EACL,OAAO,EACP,EAAE,EACF,KAAK,EACL,SAAS,EACT,OAAO,GAAG,SAAS,EAAA,GAAA,EAEI,EADpB,YAAY,GAAAC,YAAA,CAAA,EAAA,EAPjB,2DAQC,CADgB;AAIjB,IAAA,MAAM,eAAe,GAAG,EAAE,aAAF,EAAE,KAAA,MAAA,GAAF,EAAE,IAAK,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC3D,MAAM,SAAS,GAAG,eAAoC;AACtD,IAAA,MAAM,IAAI,GACR,eAAe,KAAK;UACf,YAA8D,CAAC;UAChE,SAAS;AACf,IAAA,MAAM,OAAO,GAAG,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;AAClE,IAAA,MAAM,aAAa,GACjB,eAAe,KAAK,QAAQ;AAC5B,SAAC,eAAe,KAAK,GAAG,IAAI,OAAO,CAAC;QACpC,OAAO,CAAC,OAAO,CAAC;IAElB,MAAM,sBAAsB,GAC1B,aAAa,IAAI,eAAe,KAAK,QAAQ,IAAI,eAAe,KAAK,GAAG;IAE1E,MAAM,aAAa,GAAG;AACpB,UAAE,CAAC,KAA0B,KAAI;AAC7B,YAAA,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE;gBAC9C,KAAK,CAAC,cAAc,EAAE;AACrB,gBAAA,KAAK,CAAC,aAA6B,CAAC,KAAK,EAAE;YAC9C;QACF;UACA,SAAS;IAEb,MAAM,OAAO,GAAG,IAAI,CAClB,iBAAiB,CAAC,OAAO,CAAC,EAC1B;AACE,QAAA,CAAC,mBAAmB,CAAC,OAAO,CAAC,GAAG;KACjC,EACD,SAAS,CACV;AAED,IAAA,QACEC,cAAA,CAAC,SAAS,oBACJ,YAAY,EAAA,EAChB,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,OAAO,EAClB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,eAAe,KAAK,QAAQ,GAAG,QAAQ,GAAG,SAAS,EACzD,IAAI,EAAE,sBAAsB,GAAG,QAAQ,GAAG,SAAS,EACnD,QAAQ,EAAE,sBAAsB,GAAG,CAAC,GAAG,SAAS,EAChD,SAAS,EAAE,sBAAsB,GAAG,aAAa,GAAG,SAAS,EAAA,QAAA,EAE7DA,yBAAM,SAAS,EAAEF,mBAAM,CAAC,WAAW,CAAC,EAAA,QAAA,EAAG,KAAK,EAAA,CAAQ,EAAA,CAAA,CAC1C;AAEhB,CAAC;AAED,IAAI,CAAC,WAAW,GAAG,MAAM;;;;"}
@@ -0,0 +1,9 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var styles = {"dialog_root":"dialog-module_dialog_root__jMqkW","dialog_content":"dialog-module_dialog_content__0IqkB","dialog_header":"dialog-module_dialog_header__VSRxM","dialog_title":"dialog-module_dialog_title__Mw7jc","dialog_close":"dialog-module_dialog_close__tuhJi","dialog_close_icon":"dialog-module_dialog_close_icon__5hPpw","dialog_description":"dialog-module_dialog_description__fh-8z","dialog_body":"dialog-module_dialog_body__5qjkS"};
7
+
8
+ exports.default = styles;
9
+ //# sourceMappingURL=dialog.module.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialog.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}
@@ -0,0 +1,130 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+ var clsx = require('clsx');
8
+ var React = require('react');
9
+ var reactDom = require('react-dom');
10
+ var index = require('../Icons/index.js');
11
+ var dialog_module = require('./dialog.module.css.js');
12
+
13
+ const Dialog = React.forwardRef(function Dialog({ open, title, children, description, onOpenChange, id, closeLabel = 'Close dialog', closeOnEscape = true, closeOnOverlayClick = true, className, style, contentClassName, contentStyle }, ref) {
14
+ const generatedId = React.useId();
15
+ const dialogRef = React.useRef(null);
16
+ const previousFocusedElementRef = React.useRef(null);
17
+ const dialogId = id !== null && id !== void 0 ? id : `${generatedId}-dialog`;
18
+ const titleId = `${dialogId}-title`;
19
+ const descriptionId = `${dialogId}-description`;
20
+ const hasDescription = typeof description === 'string' && description.length > 0;
21
+ React.useEffect(() => {
22
+ var _a;
23
+ if (open) {
24
+ if (document.activeElement instanceof HTMLElement) {
25
+ previousFocusedElementRef.current = document.activeElement;
26
+ }
27
+ return;
28
+ }
29
+ (_a = previousFocusedElementRef.current) === null || _a === void 0 ? void 0 : _a.focus();
30
+ previousFocusedElementRef.current = null;
31
+ }, [open]);
32
+ React.useEffect(() => {
33
+ const dialogElement = dialogRef.current;
34
+ if (!dialogElement) {
35
+ return;
36
+ }
37
+ const canShowModal = typeof dialogElement.showModal === 'function';
38
+ if (open) {
39
+ if (!dialogElement.open) {
40
+ if (canShowModal) {
41
+ dialogElement.showModal();
42
+ }
43
+ else {
44
+ dialogElement.setAttribute('open', '');
45
+ }
46
+ }
47
+ return;
48
+ }
49
+ if (dialogElement.open || dialogElement.hasAttribute('open')) {
50
+ if (typeof dialogElement.close === 'function') {
51
+ dialogElement.close();
52
+ }
53
+ else {
54
+ dialogElement.removeAttribute('open');
55
+ }
56
+ }
57
+ }, [open]);
58
+ React.useEffect(() => {
59
+ if (!open || !closeOnEscape) {
60
+ return;
61
+ }
62
+ const dialogElement = dialogRef.current;
63
+ if (!dialogElement || typeof dialogElement.showModal === 'function') {
64
+ return;
65
+ }
66
+ const handleEscape = (event) => {
67
+ if (event.key === 'Escape') {
68
+ event.preventDefault();
69
+ onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(false);
70
+ }
71
+ };
72
+ document.addEventListener('keydown', handleEscape);
73
+ return () => {
74
+ document.removeEventListener('keydown', handleEscape);
75
+ };
76
+ }, [open, closeOnEscape, onOpenChange]);
77
+ React.useEffect(() => {
78
+ if (!open) {
79
+ return;
80
+ }
81
+ const dialogElement = dialogRef.current;
82
+ if (!dialogElement || typeof dialogElement.showModal === 'function') {
83
+ return;
84
+ }
85
+ const previousOverflow = document.body.style.overflow;
86
+ document.body.style.overflow = 'hidden';
87
+ return () => {
88
+ document.body.style.overflow = previousOverflow;
89
+ };
90
+ }, [open]);
91
+ React.useEffect(() => {
92
+ const dialogElement = dialogRef.current;
93
+ if (!dialogElement || !closeOnOverlayClick) {
94
+ return;
95
+ }
96
+ const handleDialogClick = (event) => {
97
+ if (event.target === dialogElement) {
98
+ onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(false);
99
+ }
100
+ };
101
+ dialogElement.addEventListener('click', handleDialogClick);
102
+ return () => {
103
+ dialogElement.removeEventListener('click', handleDialogClick);
104
+ };
105
+ }, [closeOnOverlayClick, onOpenChange]);
106
+ if (typeof document === 'undefined') {
107
+ return null;
108
+ }
109
+ return reactDom.createPortal(jsxRuntime.jsx("dialog", { id: dialogId, ref: (node) => {
110
+ dialogRef.current = node;
111
+ if (typeof ref === 'function') {
112
+ ref(node);
113
+ }
114
+ else if (ref) {
115
+ ref.current = node;
116
+ }
117
+ }, "aria-labelledby": titleId, "aria-describedby": hasDescription ? descriptionId : undefined, className: clsx(dialog_module.default.dialog_root, className), style: style, onCancel: (event) => {
118
+ if (!closeOnEscape) {
119
+ event.preventDefault();
120
+ }
121
+ }, onClose: () => {
122
+ if (open) {
123
+ onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(false);
124
+ }
125
+ }, children: jsxRuntime.jsxs("div", { className: clsx(dialog_module.default.dialog_content, contentClassName), style: contentStyle, children: [jsxRuntime.jsxs("div", { className: dialog_module.default.dialog_header, children: [jsxRuntime.jsx("h2", { id: titleId, className: dialog_module.default.dialog_title, children: title }), jsxRuntime.jsx("button", { type: 'button', className: dialog_module.default.dialog_close, onClick: () => onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(false), "aria-label": closeLabel, children: jsxRuntime.jsx(index.CloseIcon, { size: 16, className: dialog_module.default.dialog_close_icon }) })] }), hasDescription && (jsxRuntime.jsx("p", { id: descriptionId, className: dialog_module.default.dialog_description, children: description })), jsxRuntime.jsx("div", { className: dialog_module.default.dialog_body, children: children })] }) }), document.body);
126
+ });
127
+ Dialog.displayName = 'Dialog';
128
+
129
+ exports.default = Dialog;
130
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../src/Dialog/index.tsx"],"sourcesContent":[null],"names":["createPortal","_jsx","styles","_jsxs","CloseIcon"],"mappings":";;;;;;;;;;;;AAsBA,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAC7B,SAAS,MAAM,CACb,EACE,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,EAAE,EACF,UAAU,GAAG,cAAc,EAC3B,aAAa,GAAG,IAAI,EACpB,mBAAmB,GAAG,IAAI,EAC1B,SAAS,EACT,KAAK,EACL,gBAAgB,EAChB,YAAY,EACb,EACD,GAAG,EAAA;AAEH,IAAA,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,EAAE;IACjC,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAA2B,IAAI,CAAC;IAC9D,MAAM,yBAAyB,GAAG,KAAK,CAAC,MAAM,CAAqB,IAAI,CAAC;IACxE,MAAM,QAAQ,GAAG,EAAE,KAAA,IAAA,IAAF,EAAE,KAAA,MAAA,GAAF,EAAE,GAAI,CAAA,EAAG,WAAW,CAAA,OAAA,CAAS;AAC9C,IAAA,MAAM,OAAO,GAAG,CAAA,EAAG,QAAQ,QAAQ;AACnC,IAAA,MAAM,aAAa,GAAG,CAAA,EAAG,QAAQ,cAAc;AAE/C,IAAA,MAAM,cAAc,GAClB,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;AAE3D,IAAA,KAAK,CAAC,SAAS,CAAC,MAAK;;QACnB,IAAI,IAAI,EAAE;AACR,YAAA,IAAI,QAAQ,CAAC,aAAa,YAAY,WAAW,EAAE;AACjD,gBAAA,yBAAyB,CAAC,OAAO,GAAG,QAAQ,CAAC,aAAa;YAC5D;YAEA;QACF;AAEA,QAAA,CAAA,EAAA,GAAA,yBAAyB,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,KAAK,EAAE;AAC1C,QAAA,yBAAyB,CAAC,OAAO,GAAG,IAAI;AAC1C,IAAA,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;AAEV,IAAA,KAAK,CAAC,SAAS,CAAC,MAAK;AACnB,QAAA,MAAM,aAAa,GAAG,SAAS,CAAC,OAAO;QAEvC,IAAI,CAAC,aAAa,EAAE;YAClB;QACF;QAEA,MAAM,YAAY,GAAG,OAAO,aAAa,CAAC,SAAS,KAAK,UAAU;QAElE,IAAI,IAAI,EAAE;AACR,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE;gBACvB,IAAI,YAAY,EAAE;oBAChB,aAAa,CAAC,SAAS,EAAE;gBAC3B;qBAAO;AACL,oBAAA,aAAa,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;gBACxC;YACF;YAEA;QACF;QAEA,IAAI,aAAa,CAAC,IAAI,IAAI,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE;AAC5D,YAAA,IAAI,OAAO,aAAa,CAAC,KAAK,KAAK,UAAU,EAAE;gBAC7C,aAAa,CAAC,KAAK,EAAE;YACvB;iBAAO;AACL,gBAAA,aAAa,CAAC,eAAe,CAAC,MAAM,CAAC;YACvC;QACF;AACF,IAAA,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;AAEV,IAAA,KAAK,CAAC,SAAS,CAAC,MAAK;AACnB,QAAA,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE;YAC3B;QACF;AAEA,QAAA,MAAM,aAAa,GAAG,SAAS,CAAC,OAAO;QAEvC,IAAI,CAAC,aAAa,IAAI,OAAO,aAAa,CAAC,SAAS,KAAK,UAAU,EAAE;YACnE;QACF;AAEA,QAAA,MAAM,YAAY,GAAG,CAAC,KAAoB,KAAI;AAC5C,YAAA,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE;gBAC1B,KAAK,CAAC,cAAc,EAAE;AACtB,gBAAA,YAAY,aAAZ,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZ,YAAY,CAAG,KAAK,CAAC;YACvB;AACF,QAAA,CAAC;AAED,QAAA,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,YAAY,CAAC;AAElD,QAAA,OAAO,MAAK;AACV,YAAA,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,YAAY,CAAC;AACvD,QAAA,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;AAEvC,IAAA,KAAK,CAAC,SAAS,CAAC,MAAK;QACnB,IAAI,CAAC,IAAI,EAAE;YACT;QACF;AAEA,QAAA,MAAM,aAAa,GAAG,SAAS,CAAC,OAAO;QAEvC,IAAI,CAAC,aAAa,IAAI,OAAO,aAAa,CAAC,SAAS,KAAK,UAAU,EAAE;YACnE;QACF;QAEA,MAAM,gBAAgB,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ;QACrD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ;AAEvC,QAAA,OAAO,MAAK;YACV,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,gBAAgB;AACjD,QAAA,CAAC;AACH,IAAA,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;AAEV,IAAA,KAAK,CAAC,SAAS,CAAC,MAAK;AACnB,QAAA,MAAM,aAAa,GAAG,SAAS,CAAC,OAAO;AAEvC,QAAA,IAAI,CAAC,aAAa,IAAI,CAAC,mBAAmB,EAAE;YAC1C;QACF;AAEA,QAAA,MAAM,iBAAiB,GAAG,CAAC,KAAiB,KAAI;AAC9C,YAAA,IAAI,KAAK,CAAC,MAAM,KAAK,aAAa,EAAE;AAClC,gBAAA,YAAY,aAAZ,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZ,YAAY,CAAG,KAAK,CAAC;YACvB;AACF,QAAA,CAAC;AAED,QAAA,aAAa,CAAC,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,CAAC;AAE1D,QAAA,OAAO,MAAK;AACV,YAAA,aAAa,CAAC,mBAAmB,CAAC,OAAO,EAAE,iBAAiB,CAAC;AAC/D,QAAA,CAAC;AACH,IAAA,CAAC,EAAE,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC;AAEvC,IAAA,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;AACnC,QAAA,OAAO,IAAI;IACb;AAEA,IAAA,OAAOA,qBAAY,CACjBC,cAAA,CAAA,QAAA,EAAA,EACE,EAAE,EAAE,QAAQ,EACZ,GAAG,EAAE,CAAC,IAAI,KAAI;AACZ,YAAA,SAAS,CAAC,OAAO,GAAG,IAAI;AACxB,YAAA,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE;gBAC7B,GAAG,CAAC,IAAI,CAAC;YACX;iBAAO,IAAI,GAAG,EAAE;AACd,gBAAA,GAAG,CAAC,OAAO,GAAG,IAAI;YACpB;AACF,QAAA,CAAC,EAAA,iBAAA,EACgB,OAAO,EAAA,kBAAA,EACN,cAAc,GAAG,aAAa,GAAG,SAAS,EAC5D,SAAS,EAAE,IAAI,CAACC,qBAAM,CAAC,WAAW,EAAE,SAAS,CAAC,EAC9C,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,CAAC,KAAK,KAAI;YAClB,IAAI,CAAC,aAAa,EAAE;gBAClB,KAAK,CAAC,cAAc,EAAE;YACxB;AACF,QAAA,CAAC,EACD,OAAO,EAAE,MAAK;YACZ,IAAI,IAAI,EAAE;AACR,gBAAA,YAAY,aAAZ,YAAY,KAAA,MAAA,GAAA,MAAA,GAAZ,YAAY,CAAG,KAAK,CAAC;YACvB;QACF,CAAC,EAAA,QAAA,EAEDC,eAAA,CAAA,KAAA,EAAA,EACE,SAAS,EAAE,IAAI,CAACD,qBAAM,CAAC,cAAc,EAAE,gBAAgB,CAAC,EACxD,KAAK,EAAE,YAAY,EAAA,QAAA,EAAA,CAEnBC,eAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAED,qBAAM,CAAC,aAAa,EAAA,QAAA,EAAA,CAClCD,cAAA,CAAA,IAAA,EAAA,EAAI,EAAE,EAAE,OAAO,EAAE,SAAS,EAAEC,qBAAM,CAAC,YAAY,EAAA,QAAA,EAC5C,KAAK,EAAA,CACH,EACLD,cAAA,CAAA,QAAA,EAAA,EACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAEC,qBAAM,CAAC,YAAY,EAC9B,OAAO,EAAE,MAAM,YAAY,KAAA,IAAA,IAAZ,YAAY,uBAAZ,YAAY,CAAG,KAAK,CAAC,EAAA,YAAA,EACxB,UAAU,EAAA,QAAA,EAEtBD,cAAA,CAACG,eAAS,EAAA,EAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAEF,qBAAM,CAAC,iBAAiB,EAAA,CAAI,EAAA,CACrD,CAAA,EAAA,CACL,EAEL,cAAc,KACbD,cAAA,CAAA,GAAA,EAAA,EAAG,EAAE,EAAE,aAAa,EAAE,SAAS,EAAEC,qBAAM,CAAC,kBAAkB,EAAA,QAAA,EACvD,WAAW,EAAA,CACV,CACL,EAEDD,cAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAEC,qBAAM,CAAC,WAAW,EAAA,QAAA,EAAG,QAAQ,EAAA,CAAO,CAAA,EAAA,CAChD,EAAA,CACC,EACT,QAAQ,CAAC,IAAI,CACd;AACH,CAAC;AAGH,MAAM,CAAC,WAAW,GAAG,QAAQ;;;;"}
@@ -0,0 +1,9 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var styles = {"dropdown_menu":"dropdownmenu-module_dropdown_menu__AHiFI","dropdown_menu_item_container":"dropdownmenu-module_dropdown_menu_item_container__FI7MR","dropdown_menu_item":"dropdownmenu-module_dropdown_menu_item__ncHAK","dropdown_menu_item_destructive":"dropdownmenu-module_dropdown_menu_item_destructive__-QIlU"};
7
+
8
+ exports.default = styles;
9
+ //# sourceMappingURL=dropdownmenu.module.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropdownmenu.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}