@commercetools/nimbus 0.0.0-canary-20251015173928 → 0.0.0-canary-20251015182814

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 (185) hide show
  1. package/dist/accordion.d.ts +26 -11
  2. package/dist/alert.d.ts +54 -28
  3. package/dist/avatar.d.ts +17 -19
  4. package/dist/badge.d.ts +16 -17
  5. package/dist/button.d.ts +23 -16
  6. package/dist/calendar.d.ts +0 -4
  7. package/dist/card.d.ts +18 -18
  8. package/dist/checkbox.d.ts +14 -9
  9. package/dist/chunks/accordion-B2FLWAh5.cjs.js.map +1 -1
  10. package/dist/chunks/accordion-CKDnNkVv.es.js.map +1 -1
  11. package/dist/chunks/alert-CPHjPe4-.cjs.js.map +1 -1
  12. package/dist/chunks/alert-lNg0Rz2w.es.js.map +1 -1
  13. package/dist/chunks/{avatar-BfEMp9g8.es.js → avatar-CTiSGVoD.es.js} +4 -2
  14. package/dist/chunks/avatar-CTiSGVoD.es.js.map +1 -0
  15. package/dist/chunks/avatar-_o-uSXYy.cjs.js.map +1 -1
  16. package/dist/chunks/{badge-JEfh4EDj.es.js → badge-Csn5glEd.es.js} +4 -2
  17. package/dist/chunks/badge-Csn5glEd.es.js.map +1 -0
  18. package/dist/chunks/badge-mMpNb3Qj.cjs.js.map +1 -1
  19. package/dist/chunks/button-B5OOW-2z.cjs.js.map +1 -1
  20. package/dist/chunks/button-IZUJaJku.es.js.map +1 -1
  21. package/dist/chunks/calendar-V0KeNCQ3.cjs.js.map +1 -1
  22. package/dist/chunks/calendar-lD6G93R9.es.js.map +1 -1
  23. package/dist/chunks/card-BB_1xrND.es.js.map +1 -1
  24. package/dist/chunks/card-BPEsGx1J.cjs.js.map +1 -1
  25. package/dist/chunks/{checkbox-DII0AOBy.es.js → checkbox-BB-WJdal.es.js} +2 -8
  26. package/dist/chunks/{checkbox-DII0AOBy.es.js.map → checkbox-BB-WJdal.es.js.map} +1 -1
  27. package/dist/chunks/checkbox-Dod-yTj4.cjs.js.map +1 -1
  28. package/dist/chunks/collapsible-motion-C7M_CLNI.cjs.js.map +1 -1
  29. package/dist/chunks/collapsible-motion-CSrKjF8X.es.js.map +1 -1
  30. package/dist/chunks/combobox-B5UxZWSX.cjs.js.map +1 -1
  31. package/dist/chunks/{combobox-CxEeal66.es.js → combobox-D_7gr3DY.es.js} +2 -2
  32. package/dist/chunks/{combobox-CxEeal66.es.js.map → combobox-D_7gr3DY.es.js.map} +1 -1
  33. package/dist/chunks/data-table-C51WU0Cc.cjs.js.map +1 -1
  34. package/dist/chunks/{data-table-BGCmY93Q.es.js → data-table-ClMivKY1.es.js} +5 -8
  35. package/dist/chunks/{data-table-BGCmY93Q.es.js.map → data-table-ClMivKY1.es.js.map} +1 -1
  36. package/dist/chunks/date-input-Cap8-3zj.es.js.map +1 -1
  37. package/dist/chunks/date-input-DvOM0DLT.cjs.js.map +1 -1
  38. package/dist/chunks/date-picker-CZAoPNsT.cjs.js.map +1 -1
  39. package/dist/chunks/date-picker-ChZ8H-MT.es.js.map +1 -1
  40. package/dist/chunks/date-range-picker-DGWMdcAN.es.js.map +1 -1
  41. package/dist/chunks/date-range-picker-iENzosfN.cjs.js.map +1 -1
  42. package/dist/chunks/{draggable-list-Dv372xXb.es.js → draggable-list-s43baxoM.es.js} +2 -2
  43. package/dist/chunks/{draggable-list-Dv372xXb.es.js.map → draggable-list-s43baxoM.es.js.map} +1 -1
  44. package/dist/chunks/{field-errors-CHxHaB5C.es.js → field-errors-ClQprmQz.es.js} +1 -6
  45. package/dist/chunks/field-errors-ClQprmQz.es.js.map +1 -0
  46. package/dist/chunks/field-errors-D2re_C_c.cjs.js.map +1 -1
  47. package/dist/chunks/group-BqUFlw5R.cjs.js.map +1 -1
  48. package/dist/chunks/group-CWADf2vF.es.js.map +1 -1
  49. package/dist/chunks/{icon-V6yr3oou.es.js → icon-CenxuChf.es.js} +2 -4
  50. package/dist/chunks/icon-CenxuChf.es.js.map +1 -0
  51. package/dist/chunks/icon-D39U--jA.cjs.js.map +1 -1
  52. package/dist/chunks/kbd-BaeV_DL-.cjs.js.map +1 -1
  53. package/dist/chunks/kbd-CH9rYghB.es.js.map +1 -1
  54. package/dist/chunks/link-BEhlSTUU.es.js.map +1 -1
  55. package/dist/chunks/link-DpU4rPCp.cjs.js.map +1 -1
  56. package/dist/chunks/loading-spinner-BiVTAfmp.es.js.map +1 -1
  57. package/dist/chunks/loading-spinner-DQM-6XnY.cjs.js.map +1 -1
  58. package/dist/chunks/{localized-field-D4R1lSbz.es.js → localized-field-D3G0Uy7Z.es.js} +6 -6
  59. package/dist/chunks/{localized-field-D4R1lSbz.es.js.map → localized-field-D3G0Uy7Z.es.js.map} +1 -1
  60. package/dist/chunks/{menu-BkPvV5Ey.es.js → menu-D-vE6ZpM.es.js} +3 -6
  61. package/dist/chunks/menu-D-vE6ZpM.es.js.map +1 -0
  62. package/dist/chunks/menu-DIepV2KZ.cjs.js.map +1 -1
  63. package/dist/chunks/{money-input-jPYw0Jyg.es.js → money-input-sk0Slpeu.es.js} +2 -2
  64. package/dist/chunks/{money-input-jPYw0Jyg.es.js.map → money-input-sk0Slpeu.es.js.map} +1 -1
  65. package/dist/chunks/multiline-text-input-B9TBDieZ.cjs.js.map +1 -1
  66. package/dist/chunks/multiline-text-input-CilSJJaO.es.js.map +1 -1
  67. package/dist/chunks/{password-input-Bf_SPzLj.es.js → password-input-6MO4I-2j.es.js} +2 -2
  68. package/dist/chunks/{password-input-Bf_SPzLj.es.js.map → password-input-6MO4I-2j.es.js.map} +1 -1
  69. package/dist/chunks/popover-CfEq5G5-.cjs.js.map +1 -1
  70. package/dist/chunks/{popover-DF0ppmkw.es.js → popover-DNaC7CwB.es.js} +2 -4
  71. package/dist/chunks/popover-DNaC7CwB.es.js.map +1 -0
  72. package/dist/chunks/progress-bar-Bhp7W6Eo.cjs.js.map +1 -1
  73. package/dist/chunks/progress-bar-DwuOjOcH.es.js.map +1 -1
  74. package/dist/chunks/range-calendar-DBpl6y5i.es.js.map +1 -1
  75. package/dist/chunks/range-calendar-_dZfAsdG.cjs.js.map +1 -1
  76. package/dist/chunks/{rich-text-input-D7DcSuhr.es.js → rich-text-input-BC8CBVio.es.js} +5 -5
  77. package/dist/chunks/rich-text-input-BC8CBVio.es.js.map +1 -0
  78. package/dist/chunks/rich-text-input-Da5WFZ3l.cjs.js.map +1 -1
  79. package/dist/chunks/search-input-BefkmgPy.cjs.js.map +1 -1
  80. package/dist/chunks/search-input-DJy2NHYW.es.js.map +1 -1
  81. package/dist/chunks/separator-CvRn_J0r.cjs.js.map +1 -1
  82. package/dist/chunks/{separator-B0qxXI4c.es.js → separator-DJGUFG-o.es.js} +2 -4
  83. package/dist/chunks/separator-DJGUFG-o.es.js.map +1 -0
  84. package/dist/chunks/split-button-BO52sL7h.cjs.js.map +1 -1
  85. package/dist/chunks/{split-button-yfUsgbxF.es.js → split-button-BxyZmuNi.es.js} +3 -3
  86. package/dist/chunks/split-button-BxyZmuNi.es.js.map +1 -0
  87. package/dist/chunks/{switch-Df_0twKu.es.js → switch-01hEhL9A.es.js} +2 -14
  88. package/dist/chunks/switch-01hEhL9A.es.js.map +1 -0
  89. package/dist/chunks/switch-CdLhBEPq.cjs.js.map +1 -1
  90. package/dist/chunks/tabs-CJ0OAUSR.cjs.js.map +1 -1
  91. package/dist/chunks/{tabs-BCLrKRoZ.es.js → tabs-Dhte-RCe.es.js} +2 -8
  92. package/dist/chunks/{tabs-BCLrKRoZ.es.js.map → tabs-Dhte-RCe.es.js.map} +1 -1
  93. package/dist/chunks/tag-group-Btt0egzG.cjs.js.map +1 -1
  94. package/dist/chunks/{tag-group-B-eOhltn.es.js → tag-group-D2dgXSsV.es.js} +3 -9
  95. package/dist/chunks/{tag-group-B-eOhltn.es.js.map → tag-group-D2dgXSsV.es.js.map} +1 -1
  96. package/dist/chunks/text-input-CSAODlCw.es.js.map +1 -1
  97. package/dist/chunks/text-input-DZdkCbdd.cjs.js.map +1 -1
  98. package/dist/chunks/time-input--a_qv-Jk.es.js.map +1 -1
  99. package/dist/chunks/time-input-zXykDANk.cjs.js.map +1 -1
  100. package/dist/chunks/toggle-button-DxMZsem4.cjs.js.map +1 -1
  101. package/dist/chunks/toggle-button-awb1jBf8.es.js.map +1 -1
  102. package/dist/chunks/toolbar-DV0l5MqA.cjs.js.map +1 -1
  103. package/dist/chunks/{toolbar-BDatiEYj.es.js → toolbar-Dduysqqi.es.js} +4 -2
  104. package/dist/chunks/toolbar-Dduysqqi.es.js.map +1 -0
  105. package/dist/chunks/tooltip-BPTOkK7W.cjs.js.map +1 -1
  106. package/dist/chunks/{tooltip-CHm25f4m.es.js → tooltip-sgakxhiy.es.js} +2 -4
  107. package/dist/chunks/{tooltip-CHm25f4m.es.js.map → tooltip-sgakxhiy.es.js.map} +1 -1
  108. package/dist/collapsible-motion.d.ts +55 -42
  109. package/dist/combobox.d.ts +45 -25
  110. package/dist/components/avatar.es.js +1 -1
  111. package/dist/components/badge.es.js +1 -1
  112. package/dist/components/checkbox.es.js +1 -1
  113. package/dist/components/combobox.es.js +1 -1
  114. package/dist/components/data-table.es.js +1 -1
  115. package/dist/components/draggable-list.es.js +1 -1
  116. package/dist/components/field-errors.es.js +1 -1
  117. package/dist/components/icon.es.js +1 -1
  118. package/dist/components/localized-field.es.js +1 -1
  119. package/dist/components/money-input.es.js +1 -1
  120. package/dist/components/password-input.es.js +1 -1
  121. package/dist/components/popover.es.js +1 -1
  122. package/dist/components/rich-text-input.es.js +1 -1
  123. package/dist/components/separator.es.js +1 -1
  124. package/dist/components/split-button.es.js +1 -1
  125. package/dist/components/switch.es.js +1 -1
  126. package/dist/components/tabs.es.js +1 -1
  127. package/dist/components/tag-group.es.js +1 -1
  128. package/dist/components/toolbar.es.js +1 -1
  129. package/dist/components/tooltip.es.js +1 -1
  130. package/dist/components.d.ts +31 -20
  131. package/dist/data-table.d.ts +4 -24
  132. package/dist/date-input.d.ts +10 -35
  133. package/dist/date-picker.d.ts +13 -66
  134. package/dist/date-range-picker.d.ts +10 -21
  135. package/dist/dialog.d.ts +31 -20
  136. package/dist/draggable-list.d.ts +35 -11
  137. package/dist/drawer.d.ts +45 -36
  138. package/dist/field-errors.d.ts +33 -25
  139. package/dist/form-field.d.ts +32 -12
  140. package/dist/group.d.ts +8 -12
  141. package/dist/icon-button.d.ts +29 -20
  142. package/dist/icon-toggle-button.d.ts +21 -16
  143. package/dist/icon.d.ts +0 -19
  144. package/dist/index.d.ts +31 -20
  145. package/dist/index.es.js +21 -21
  146. package/dist/inline-svg.d.ts +2 -21
  147. package/dist/link.d.ts +14 -24
  148. package/dist/loading-spinner.d.ts +13 -22
  149. package/dist/localized-field.d.ts +2 -5
  150. package/dist/money-input.d.ts +4 -0
  151. package/dist/multiline-text-input.d.ts +21 -7
  152. package/dist/nimbus-provider.d.ts +20 -8
  153. package/dist/number-input.d.ts +13 -2
  154. package/dist/pagination.d.ts +33 -9
  155. package/dist/password-input.d.ts +16 -10
  156. package/dist/popover.d.ts +3 -3
  157. package/dist/progress-bar.d.ts +21 -22
  158. package/dist/radio-input.d.ts +8 -3
  159. package/dist/range-calendar.d.ts +0 -7
  160. package/dist/scoped-search-input.d.ts +29 -92
  161. package/dist/search-input.d.ts +14 -10
  162. package/dist/select.d.ts +25 -9
  163. package/dist/separator.d.ts +10 -27
  164. package/dist/split-button.d.ts +23 -16
  165. package/dist/switch.d.ts +6 -11
  166. package/dist/tabs.d.ts +12 -13
  167. package/dist/tag-group.d.ts +4 -10
  168. package/dist/text-input.d.ts +19 -8
  169. package/dist/time-input.d.ts +8 -38
  170. package/dist/toggle-button-group.d.ts +9 -10
  171. package/dist/toggle-button.d.ts +15 -15
  172. package/dist/toolbar.d.ts +5 -11
  173. package/dist/tooltip.d.ts +23 -28
  174. package/package.json +5 -5
  175. package/dist/chunks/avatar-BfEMp9g8.es.js.map +0 -1
  176. package/dist/chunks/badge-JEfh4EDj.es.js.map +0 -1
  177. package/dist/chunks/field-errors-CHxHaB5C.es.js.map +0 -1
  178. package/dist/chunks/icon-V6yr3oou.es.js.map +0 -1
  179. package/dist/chunks/menu-BkPvV5Ey.es.js.map +0 -1
  180. package/dist/chunks/popover-DF0ppmkw.es.js.map +0 -1
  181. package/dist/chunks/rich-text-input-D7DcSuhr.es.js.map +0 -1
  182. package/dist/chunks/separator-B0qxXI4c.es.js.map +0 -1
  183. package/dist/chunks/split-button-yfUsgbxF.es.js.map +0 -1
  184. package/dist/chunks/switch-Df_0twKu.es.js.map +0 -1
  185. package/dist/chunks/toolbar-BDatiEYj.es.js.map +0 -1
package/dist/drawer.d.ts CHANGED
@@ -16,27 +16,39 @@ import { RecipeVariantProps } from '@chakra-ui/react';
16
16
  import { SlotRecipeDefinition } from '@chakra-ui/react';
17
17
  import { UnstyledProp } from '@chakra-ui/react';
18
18
 
19
- declare type ButtonProps = ButtonRootProps & FunctionalButtonProps & {
19
+ declare type ButtonProps = Omit<ButtonRootSlotProps, keyof AriaButtonProps> & AriaButtonProps & {
20
+ /**
21
+ * Data attributes for testing or custom metadata
22
+ */
23
+ [key: `data-${string}`]: unknown;
24
+ /**
25
+ * Slot name for React Aria Components composition
26
+ */
20
27
  slot?: string | null | undefined;
28
+ /**
29
+ * Ref forwarding to the button element
30
+ */
21
31
  ref?: React.Ref<HTMLButtonElement>;
22
32
  };
23
33
 
24
- /**
25
- * Base recipe props interface that combines Chakra UI's recipe props
26
- * with the unstyled prop option for the button element.
27
- */
28
34
  declare type ButtonRecipeProps = {
35
+ /**
36
+ * Size variant of the button
37
+ * @default "md"
38
+ */
29
39
  size?: RecipeProps<"button">["size"];
40
+ /**
41
+ * Visual style variant of the button
42
+ * @default "subtle"
43
+ */
30
44
  variant?: RecipeProps<"button">["variant"];
45
+ /**
46
+ * Color tone palette for the button
47
+ */
31
48
  tone?: RecipeProps<"button">["tone"];
32
49
  } & UnstyledProp;
33
50
 
34
- /**
35
- * Root props interface that extends Chakra's HTML props with our recipe props.
36
- * This creates a complete set of props for the root element, combining
37
- * HTML attributes, Chakra's styling system, and our custom recipe props.
38
- */
39
- declare type ButtonRootProps = Omit<HTMLChakraProps_2<"button", ButtonRecipeProps>, "slot"> & {
51
+ declare type ButtonRootSlotProps = Omit<HTMLChakraProps_2<"button", ButtonRecipeProps>, "slot"> & {
40
52
  slot?: string | null | undefined;
41
53
  };
42
54
 
@@ -267,7 +279,7 @@ export declare type DrawerBackdropSlotProps = HTMLChakraProps<"div">;
267
279
  *
268
280
  * The main body content section of the drawer.
269
281
  */
270
- export declare interface DrawerBodyProps extends DrawerBodySlotProps {
282
+ export declare type DrawerBodyProps = DrawerBodySlotProps & {
271
283
  /**
272
284
  * The body content
273
285
  */
@@ -276,7 +288,7 @@ export declare interface DrawerBodyProps extends DrawerBodySlotProps {
276
288
  * The ref to the drawer body
277
289
  */
278
290
  ref?: React.Ref<HTMLDivElement>;
279
- }
291
+ };
280
292
 
281
293
  export declare type DrawerBodySlotProps = HTMLChakraProps<"div">;
282
294
 
@@ -286,13 +298,13 @@ export declare type DrawerBodySlotProps = HTMLChakraProps<"div">;
286
298
  * A button that closes the drawer when activated.
287
299
  * Displays an IconButton with an X icon by default.
288
300
  */
289
- export declare interface DrawerCloseTriggerProps extends Omit<IconButtonProps, "aria-label"> {
301
+ export declare type DrawerCloseTriggerProps = Omit<IconButtonProps, "aria-label"> & {
290
302
  /**
291
303
  * Accessible label for the close button
292
304
  * @default "Close drawer"
293
305
  */
294
306
  "aria-label"?: string;
295
- }
307
+ };
296
308
 
297
309
  export declare type DrawerCloseTriggerSlotProps = HTMLChakraProps<"div">;
298
310
 
@@ -302,7 +314,7 @@ export declare type DrawerCloseTriggerSlotProps = HTMLChakraProps<"div">;
302
314
  * The main drawer content container that wraps the React Aria Dialog and Dialog.
303
315
  * Configuration (size, placement, etc.) is inherited from Drawer.Root via context.
304
316
  */
305
- export declare interface DrawerContentProps extends DrawerBackdropSlotProps {
317
+ export declare type DrawerContentProps = DrawerBackdropSlotProps & {
306
318
  /**
307
319
  * The drawer content
308
320
  */
@@ -311,7 +323,7 @@ export declare interface DrawerContentProps extends DrawerBackdropSlotProps {
311
323
  * The ref to the drawer content
312
324
  */
313
325
  ref?: React.RefObject<HTMLDivElement>;
314
- }
326
+ };
315
327
 
316
328
  export declare type DrawerContentSlotProps = HTMLChakraProps<"div">;
317
329
 
@@ -320,7 +332,7 @@ export declare type DrawerContentSlotProps = HTMLChakraProps<"div">;
320
332
  *
321
333
  * The footer section of the drawer, typically containing action buttons.
322
334
  */
323
- export declare interface DrawerFooterProps extends DrawerFooterSlotProps {
335
+ export declare type DrawerFooterProps = DrawerFooterSlotProps & {
324
336
  /**
325
337
  * The footer content (usually buttons)
326
338
  */
@@ -329,7 +341,7 @@ export declare interface DrawerFooterProps extends DrawerFooterSlotProps {
329
341
  * The ref to the drawer footer
330
342
  */
331
343
  ref?: React.Ref<HTMLElement>;
332
- }
344
+ };
333
345
 
334
346
  export declare type DrawerFooterSlotProps = HTMLChakraProps<"footer">;
335
347
 
@@ -338,7 +350,7 @@ export declare type DrawerFooterSlotProps = HTMLChakraProps<"footer">;
338
350
  *
339
351
  * The header section of the drawer content.
340
352
  */
341
- export declare interface DrawerHeaderProps extends DrawerHeaderSlotProps {
353
+ export declare type DrawerHeaderProps = DrawerHeaderSlotProps & {
342
354
  /**
343
355
  * The header content
344
356
  */
@@ -347,7 +359,7 @@ export declare interface DrawerHeaderProps extends DrawerHeaderSlotProps {
347
359
  * The ref to the drawer header
348
360
  */
349
361
  ref?: React.Ref<HTMLElement>;
350
- }
362
+ };
351
363
 
352
364
  export declare type DrawerHeaderSlotProps = HTMLChakraProps<"header">;
353
365
 
@@ -360,7 +372,7 @@ export declare type DrawerHeaderSlotProps = HTMLChakraProps<"header">;
360
372
  * This component handles configuration through recipe variants that are passed
361
373
  * down to child components via context.
362
374
  */
363
- export declare interface DrawerRootProps extends RecipeVariantProps<typeof drawerSlotRecipe> {
375
+ export declare type DrawerRootProps = RecipeVariantProps<typeof drawerSlotRecipe> & {
364
376
  /**
365
377
  * The children components (Trigger, Content, etc.)
366
378
  */
@@ -406,7 +418,7 @@ export declare interface DrawerRootProps extends RecipeVariantProps<typeof drawe
406
418
  * a `slot`-property set to `title`.
407
419
  */
408
420
  "aria-label"?: string;
409
- }
421
+ };
410
422
 
411
423
  export declare type DrawerRootSlotProps = HTMLChakraProps<"div">;
412
424
 
@@ -514,7 +526,7 @@ borderRadius: number;
514
526
  *
515
527
  * The accessible title element for the drawer.
516
528
  */
517
- export declare interface DrawerTitleProps extends DrawerTitleSlotProps {
529
+ export declare type DrawerTitleProps = DrawerTitleSlotProps & {
518
530
  /**
519
531
  * The title text
520
532
  */
@@ -523,7 +535,7 @@ export declare interface DrawerTitleProps extends DrawerTitleSlotProps {
523
535
  * The ref to the drawer title
524
536
  */
525
537
  ref?: React.Ref<HTMLHeadingElement>;
526
- }
538
+ };
527
539
 
528
540
  export declare type DrawerTitleSlotProps = HTMLChakraProps<"h2">;
529
541
 
@@ -532,7 +544,7 @@ export declare type DrawerTitleSlotProps = HTMLChakraProps<"h2">;
532
544
  *
533
545
  * The trigger element that opens the drawer when activated.
534
546
  */
535
- export declare interface DrawerTriggerProps extends DrawerTriggerSlotProps {
547
+ export declare type DrawerTriggerProps = DrawerTriggerSlotProps & {
536
548
  /**
537
549
  * The trigger content
538
550
  */
@@ -551,21 +563,18 @@ export declare interface DrawerTriggerProps extends DrawerTriggerSlotProps {
551
563
  * The ref to the trigger html-button
552
564
  */
553
565
  ref?: React.RefObject<HTMLButtonElement>;
554
- }
566
+ };
555
567
 
556
568
  export declare type DrawerTriggerSlotProps = HTMLChakraProps<"button">;
557
569
 
558
- /** combine chakra-button props with aria-button props */
559
- declare type FunctionalButtonProps = AriaButtonProps & Omit<ButtonRootProps, keyof AriaButtonProps | "slot"> & {
560
- [key: `data-${string}`]: unknown;
561
- };
562
-
563
- /**
564
- * Main props interface for the IconButton component.
565
- */
566
570
  declare type IconButtonProps = ButtonProps & {
567
- /** explains the intended action, required for accessibility */
571
+ /**
572
+ * Required accessible label explaining the intended action
573
+ */
568
574
  "aria-label": string;
575
+ /**
576
+ * Ref forwarding to the button element
577
+ */
569
578
  ref?: React.Ref<HTMLButtonElement>;
570
579
  };
571
580
 
@@ -36,65 +36,80 @@ export declare const FieldErrors: {
36
36
  getCustomMessage: (key: string, customMessages?: FieldErrorsProps["customMessages"]) => React.ReactNode;
37
37
  };
38
38
 
39
- /**
40
- * Props for FieldErrors component
41
- */
42
- export declare type FieldErrorsProps = FieldErrorsRootProps & {
39
+ export declare type FieldErrorsProps = FieldErrorsRootSlotProps & {
43
40
  /**
44
- * ID of the error field for accessibility
41
+ * Unique identifier for the field errors
45
42
  */
46
43
  id?: string;
47
44
  /**
48
- * Error object - only truthy values will be rendered
49
- * Compatible with UI-Kit FieldErrors format
45
+ * Object mapping error types to boolean values indicating presence
50
46
  */
51
47
  errors?: TFieldErrors;
52
48
  /**
53
- * Whether error messages should be visible
54
- * @deprecated This prop will be automatically handled by the component
49
+ * Whether the error messages are visible
50
+ * @default false
55
51
  */
56
52
  isVisible?: boolean;
57
53
  /**
58
- * Custom error renderer function
59
- * Return null to fall back to renderDefaultError or built-in errors
54
+ * Custom render function for error messages
60
55
  */
61
56
  renderError?: TErrorRenderer;
62
57
  /**
63
- * Default error renderer function for errors not handled by renderError
64
- * Return null to fall back to built-in error handling
58
+ * Default render function for error messages when no custom renderer is provided
65
59
  */
66
60
  renderDefaultError?: TErrorRenderer;
67
61
  /**
68
- * Custom error messages to override built-in ones
62
+ * Custom message overrides for specific error types
69
63
  */
70
64
  customMessages?: {
65
+ /** Message for missing field error */
71
66
  missing?: ReactNode;
67
+ /** Message for invalid field error */
72
68
  invalid?: ReactNode;
69
+ /** Message for empty field error */
73
70
  empty?: ReactNode;
71
+ /** Message for minimum length error */
74
72
  min?: ReactNode;
73
+ /** Message for maximum length error */
75
74
  max?: ReactNode;
75
+ /** Message for format error */
76
76
  format?: ReactNode;
77
+ /** Message for duplicate value error */
77
78
  duplicate?: ReactNode;
79
+ /** Message for negative value error */
78
80
  negative?: ReactNode;
81
+ /** Message for fractional value error */
79
82
  fractions?: ReactNode;
83
+ /** Message for below minimum value error */
80
84
  belowMin?: ReactNode;
85
+ /** Message for above maximum value error */
81
86
  aboveMax?: ReactNode;
87
+ /** Message for out of range error */
82
88
  outOfRange?: ReactNode;
89
+ /** Message for invalid from server error */
83
90
  invalidFromServer?: ReactNode;
91
+ /** Message for not found error */
84
92
  notFound?: ReactNode;
93
+ /** Message for blocked error */
85
94
  blocked?: ReactNode;
86
95
  };
87
96
  };
88
97
 
89
- declare type FieldErrorsRootProps = HTMLChakraProps<"div"> & {
98
+ declare type FieldErrorsRootSlotProps = HTMLChakraProps<"div"> & {
99
+ /**
100
+ * Unique identifier for the field errors container
101
+ */
90
102
  id?: string;
103
+ /**
104
+ * ARIA role for the container
105
+ */
91
106
  role?: string;
107
+ /**
108
+ * Error message content to display
109
+ */
92
110
  children?: ReactNode;
93
111
  };
94
112
 
95
- /**
96
- * Built-in error types that FieldErrors can handle automatically
97
- */
98
113
  export declare const FieldErrorTypes: {
99
114
  readonly MISSING: "missing";
100
115
  readonly INVALID: "invalid";
@@ -113,15 +128,8 @@ export declare const FieldErrorTypes: {
113
128
  readonly BLOCKED: "blocked";
114
129
  };
115
130
 
116
- /**
117
- * Function to render custom error messages
118
- */
119
131
  export declare type TErrorRenderer = (key: string, error?: boolean) => ReactNode;
120
132
 
121
- /**
122
- * Error object type - compatible with UI-Kit FieldErrors
123
- * Only entries with truthy values will be rendered as errors
124
- */
125
133
  export declare type TFieldErrors = Record<string, boolean>;
126
134
 
127
135
  export { }
@@ -47,31 +47,51 @@ export declare type FormFieldLabelSlotProps = HTMLChakraProps<"div">;
47
47
 
48
48
  export declare type FormFieldPopoverSlotProps = HTMLChakraProps<"div">;
49
49
 
50
- /**
51
- * Main props interface for the FormField component.
52
- * Extends FormFieldVariantProps to include both root props and variant props,
53
- * while adding support for React children.
54
- */
55
50
  export declare type FormFieldProps = FormFieldRootSlotProps & {
51
+ /**
52
+ * Form field content (label, input, description, error)
53
+ */
56
54
  children?: React.ReactNode;
57
- /** true if the field is a required field */
55
+ /**
56
+ * Whether the field is required for form submission
57
+ * @default false
58
+ */
58
59
  isRequired?: boolean;
59
- /** true if the field is invalid */
60
+ /**
61
+ * Whether the field has a validation error
62
+ * @default false
63
+ */
60
64
  isInvalid?: boolean;
61
- /** true if the field is disabled */
65
+ /**
66
+ * Whether the field is disabled
67
+ * @default false
68
+ */
62
69
  isDisabled?: boolean;
63
- /** true, if the field is read only */
70
+ /**
71
+ * Whether the field is read-only
72
+ * @default false
73
+ */
64
74
  isReadOnly?: boolean;
65
- /** id passed to the field's input component*/
75
+ /**
76
+ * Unique identifier for the input element
77
+ */
66
78
  id?: string;
67
79
  /**
68
- * React ref to be forwarded to the root element
80
+ * Ref forwarding to the root element
69
81
  */
70
82
  ref?: React.Ref<HTMLDivElement>;
71
83
  };
72
84
 
73
- export declare type FormFieldRecipeProps = {
85
+ declare type FormFieldRecipeProps = {
86
+ /**
87
+ * Size variant of the form field
88
+ * @default "md"
89
+ */
74
90
  size?: SlotRecipeProps<"formField">["size"];
91
+ /**
92
+ * Layout direction for label and input positioning
93
+ * @default "column"
94
+ */
75
95
  direction?: SlotRecipeProps<"formField">["direction"];
76
96
  };
77
97
 
package/dist/group.d.ts CHANGED
@@ -10,25 +10,21 @@ declare type DefaultExcludedProps = "css" | "asChild" | "as" | "colorScheme";
10
10
 
11
11
  export declare const Group: GroupComponent;
12
12
 
13
- /** Type signature for the main `Group` component. */
13
+ /**
14
+ * Type signature for the main Group component.
15
+ */
14
16
  export declare type GroupComponent = FC<GroupProps>;
15
17
 
16
- export declare interface GroupProps extends Omit<GroupSlotProps, DefaultExcludedProps>, Pick<GroupProps_2, "isDisabled" | "isInvalid" | "onHoverChange" | "onHoverStart" | "onHoverEnd"> {
18
+ export declare interface GroupProps extends Omit<GroupRootSlotProps, DefaultExcludedProps>, Pick<GroupProps_2, "isDisabled" | "isInvalid" | "onHoverChange" | "onHoverStart" | "onHoverEnd"> {
19
+ /**
20
+ * Ref forwarding to the root element
21
+ */
17
22
  ref?: Ref<typeof Group_2>;
18
23
  }
19
24
 
20
- /**
21
- * Base recipe props interface that combines Chakra UI's recipe props
22
- * with the unstyled prop option for the div element.
23
- */
24
25
  declare type GroupRecipeProps = RecipeProps<"group"> & UnstyledProp;
25
26
 
26
- /**
27
- * Root props interface that extends Chakra's HTML props with our recipe props.
28
- * This creates a complete set of props for the root element, combining
29
- * HTML attributes, Chakra's styling system, and our custom recipe props.
30
- */
31
- export declare type GroupSlotProps = HTMLChakraProps<"div", GroupRecipeProps>;
27
+ export declare type GroupRootSlotProps = HTMLChakraProps<"div", GroupRecipeProps>;
32
28
 
33
29
  export { }
34
30
 
@@ -4,35 +4,42 @@ import { JSX } from 'react/jsx-runtime';
4
4
  import { RecipeProps } from '@chakra-ui/react';
5
5
  import { UnstyledProp } from '@chakra-ui/react';
6
6
 
7
- declare type ButtonProps = ButtonRootProps & FunctionalButtonProps & {
7
+ declare type ButtonProps = Omit<ButtonRootSlotProps, keyof AriaButtonProps> & AriaButtonProps & {
8
+ /**
9
+ * Data attributes for testing or custom metadata
10
+ */
11
+ [key: `data-${string}`]: unknown;
12
+ /**
13
+ * Slot name for React Aria Components composition
14
+ */
8
15
  slot?: string | null | undefined;
16
+ /**
17
+ * Ref forwarding to the button element
18
+ */
9
19
  ref?: React.Ref<HTMLButtonElement>;
10
20
  };
11
21
 
12
- /**
13
- * Base recipe props interface that combines Chakra UI's recipe props
14
- * with the unstyled prop option for the button element.
15
- */
16
22
  declare type ButtonRecipeProps = {
23
+ /**
24
+ * Size variant of the button
25
+ * @default "md"
26
+ */
17
27
  size?: RecipeProps<"button">["size"];
28
+ /**
29
+ * Visual style variant of the button
30
+ * @default "subtle"
31
+ */
18
32
  variant?: RecipeProps<"button">["variant"];
33
+ /**
34
+ * Color tone palette for the button
35
+ */
19
36
  tone?: RecipeProps<"button">["tone"];
20
37
  } & UnstyledProp;
21
38
 
22
- /**
23
- * Root props interface that extends Chakra's HTML props with our recipe props.
24
- * This creates a complete set of props for the root element, combining
25
- * HTML attributes, Chakra's styling system, and our custom recipe props.
26
- */
27
- declare type ButtonRootProps = Omit<HTMLChakraProps<"button", ButtonRecipeProps>, "slot"> & {
39
+ declare type ButtonRootSlotProps = Omit<HTMLChakraProps<"button", ButtonRecipeProps>, "slot"> & {
28
40
  slot?: string | null | undefined;
29
41
  };
30
42
 
31
- /** combine chakra-button props with aria-button props */
32
- declare type FunctionalButtonProps = AriaButtonProps & Omit<ButtonRootProps, keyof AriaButtonProps | "slot"> & {
33
- [key: `data-${string}`]: unknown;
34
- };
35
-
36
43
  /**
37
44
  * # IconButton
38
45
  *
@@ -45,12 +52,14 @@ export declare const IconButton: {
45
52
  displayName: string;
46
53
  };
47
54
 
48
- /**
49
- * Main props interface for the IconButton component.
50
- */
51
55
  export declare type IconButtonProps = ButtonProps & {
52
- /** explains the intended action, required for accessibility */
56
+ /**
57
+ * Required accessible label explaining the intended action
58
+ */
53
59
  "aria-label": string;
60
+ /**
61
+ * Ref forwarding to the button element
62
+ */
54
63
  ref?: React.Ref<HTMLButtonElement>;
55
64
  };
56
65
 
@@ -3,10 +3,6 @@ import { JSX } from 'react/jsx-runtime';
3
3
  import { RecipeProps } from '@chakra-ui/react';
4
4
  import { ToggleButtonProps as ToggleButtonProps_2 } from 'react-aria-components';
5
5
 
6
- /**
7
- * Additional properties we want to exclude from the ToggleButton component.
8
- * These are chakra-ui props we don't want exposed for non-polymorphic components.
9
- */
10
6
  declare type ExcludedProps = "css" | "colorScheme" | "recipe" | "as" | "asChild";
11
7
 
12
8
  /**
@@ -22,33 +18,42 @@ export declare const IconToggleButton: {
22
18
  };
23
19
 
24
20
  export declare type IconToggleButtonProps = Omit<ToggleButtonProps, "aria-label"> & {
25
- /** explains the intended action, required for accessibility */
21
+ /**
22
+ * Required accessible label for the icon button
23
+ */
26
24
  "aria-label": string;
25
+ /**
26
+ * Ref forwarding to the button element
27
+ */
27
28
  ref?: React.Ref<HTMLButtonElement>;
28
29
  };
29
30
 
30
- declare type ToggleButtonProps = Omit<ToggleButtonRootProps, keyof ToggleButtonProps_2 | ExcludedProps> & ToggleButtonProps_2 & {
31
+ declare type ToggleButtonProps = Omit<ToggleButtonRootSlotProps, keyof ToggleButtonProps_2 | ExcludedProps> & ToggleButtonProps_2 & {
31
32
  /**
32
- * Ref to the underlying button element
33
+ * Ref forwarding to the button element
33
34
  */
34
35
  ref?: React.Ref<HTMLButtonElement>;
35
36
  };
36
37
 
37
- /**
38
- * Base recipe props interface.
39
- */
40
38
  declare type ToggleButtonRecipeProps = {
39
+ /**
40
+ * Size variant of the toggle button
41
+ * @default "md"
42
+ */
41
43
  size?: RecipeProps<"toggleButton">["size"];
44
+ /**
45
+ * Visual style variant of the toggle button
46
+ * @default "outline"
47
+ */
42
48
  variant?: RecipeProps<"toggleButton">["variant"];
49
+ /**
50
+ * Color tone palette for the toggle button
51
+ * @default "primary"
52
+ */
43
53
  tone?: RecipeProps<"toggleButton">["tone"];
44
54
  };
45
55
 
46
- /**
47
- * Root props interface that extends Chakra's HTML props with our recipe props.
48
- * This creates a complete set of props for the root element, combining
49
- * HTML attributes, Chakra's styling system, and our custom recipe props.
50
- */
51
- declare type ToggleButtonRootProps = HTMLChakraProps<"button", ToggleButtonRecipeProps>;
56
+ declare type ToggleButtonRootSlotProps = HTMLChakraProps<"button", ToggleButtonRecipeProps>;
52
57
 
53
58
  export { }
54
59
 
package/dist/icon.d.ts CHANGED
@@ -15,11 +15,6 @@ export declare const Icon: {
15
15
  displayName: string;
16
16
  };
17
17
 
18
- /**
19
- * Main props interface for the Icon component.
20
- * Extends IconVariantProps to include both root props and variant props,
21
- * while adding support for React children.
22
- */
23
18
  export declare type IconProps = IconVariantProps & {
24
19
  /**
25
20
  * Accepts only a single child - an icon-component or SVG html-element.
@@ -45,24 +40,10 @@ export declare type IconProps = IconVariantProps & {
45
40
  slot?: string | null | undefined;
46
41
  };
47
42
 
48
- /**
49
- * Base recipe props interface that combines Chakra UI's recipe props
50
- * with the unstyled prop option for the svg element.
51
- */
52
43
  declare type IconRecipeProps = RecipeProps<"icon"> & UnstyledProp;
53
44
 
54
- /**
55
- * Root props interface that extends Chakra's HTML props with our recipe props.
56
- * This creates a complete set of props for the root element, combining
57
- * HTML attributes, Chakra's styling system, and our custom recipe props.
58
- */
59
45
  export declare type IconRootSlotProps = HTMLChakraProps<"svg", IconRecipeProps>;
60
46
 
61
- /**
62
- * Combines the root props with Chakra UI's recipe variant props.
63
- * This allows the component to accept both structural props from Root
64
- * and styling variants from the recipe.
65
- */
66
47
  declare type IconVariantProps = Omit<IconRootSlotProps, keyof React.SVGProps<SVGSVGElement> | "css" | "unstyled" | "asChild" | "recipe">;
67
48
 
68
49
  export { }
package/dist/index.d.ts CHANGED
@@ -7,27 +7,39 @@ import { SlotRecipeProps } from '@chakra-ui/react';
7
7
  import { SystemContext } from '@chakra-ui/react';
8
8
  import { UnstyledProp } from '@chakra-ui/react';
9
9
 
10
- declare type ButtonProps = ButtonRootProps & FunctionalButtonProps & {
10
+ declare type ButtonProps = Omit<ButtonRootSlotProps, keyof AriaButtonProps> & AriaButtonProps & {
11
+ /**
12
+ * Data attributes for testing or custom metadata
13
+ */
14
+ [key: `data-${string}`]: unknown;
15
+ /**
16
+ * Slot name for React Aria Components composition
17
+ */
11
18
  slot?: string | null | undefined;
19
+ /**
20
+ * Ref forwarding to the button element
21
+ */
12
22
  ref?: React.Ref<HTMLButtonElement>;
13
23
  };
14
24
 
15
- /**
16
- * Base recipe props interface that combines Chakra UI's recipe props
17
- * with the unstyled prop option for the button element.
18
- */
19
25
  declare type ButtonRecipeProps = {
26
+ /**
27
+ * Size variant of the button
28
+ * @default "md"
29
+ */
20
30
  size?: RecipeProps<"button">["size"];
31
+ /**
32
+ * Visual style variant of the button
33
+ * @default "subtle"
34
+ */
21
35
  variant?: RecipeProps<"button">["variant"];
36
+ /**
37
+ * Color tone palette for the button
38
+ */
22
39
  tone?: RecipeProps<"button">["tone"];
23
40
  } & UnstyledProp;
24
41
 
25
- /**
26
- * Root props interface that extends Chakra's HTML props with our recipe props.
27
- * This creates a complete set of props for the root element, combining
28
- * HTML attributes, Chakra's styling system, and our custom recipe props.
29
- */
30
- declare type ButtonRootProps = Omit<HTMLChakraProps<"button", ButtonRecipeProps>, "slot"> & {
42
+ declare type ButtonRootSlotProps = Omit<HTMLChakraProps<"button", ButtonRecipeProps>, "slot"> & {
31
43
  slot?: string | null | undefined;
32
44
  };
33
45
 
@@ -144,7 +156,9 @@ declare type DialogHeaderSlotProps = HTMLChakraProps<"header">;
144
156
  declare type DialogModalOverlaySlotProps = HTMLChakraProps<"div">;
145
157
 
146
158
  declare type DialogRecipeProps = {
159
+ /** Placement of the dialog in the viewport */
147
160
  placement?: SlotRecipeProps<"dialog">["placement"];
161
+ /** How scrolling behavior is handled when content overflows */
148
162
  scrollBehavior?: SlotRecipeProps<"dialog">["scrollBehavior"];
149
163
  };
150
164
 
@@ -263,17 +277,14 @@ declare type DialogTriggerProps = DialogTriggerSlotProps & {
263
277
 
264
278
  declare type DialogTriggerSlotProps = HTMLChakraProps<"button">;
265
279
 
266
- /** combine chakra-button props with aria-button props */
267
- declare type FunctionalButtonProps = AriaButtonProps & Omit<ButtonRootProps, keyof AriaButtonProps | "slot"> & {
268
- [key: `data-${string}`]: unknown;
269
- };
270
-
271
- /**
272
- * Main props interface for the IconButton component.
273
- */
274
280
  declare type IconButtonProps = ButtonProps & {
275
- /** explains the intended action, required for accessibility */
281
+ /**
282
+ * Required accessible label explaining the intended action
283
+ */
276
284
  "aria-label": string;
285
+ /**
286
+ * Ref forwarding to the button element
287
+ */
277
288
  ref?: React.Ref<HTMLButtonElement>;
278
289
  };
279
290