@cloudflare/kumo 1.3.0 → 1.4.1

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 (139) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/ai/USAGE.md +193 -0
  3. package/ai/component-registry.json +1425 -237
  4. package/ai/component-registry.md +531 -67
  5. package/ai/schemas.ts +366 -107
  6. package/dist/.build-complete +1 -1
  7. package/dist/badge-Dc99vsfo.js.map +1 -1
  8. package/dist/banner-4fkH6Sbt.js.map +1 -1
  9. package/dist/breadcrumbs-DyKi7BcP.js.map +1 -1
  10. package/dist/button-Bh96oxRL.js.map +1 -1
  11. package/dist/catalog.js +1 -1
  12. package/dist/checkbox-C1LPq8eL.js.map +1 -1
  13. package/dist/clipboard-text-CJSI9X2m.js.map +1 -1
  14. package/dist/cloudflare-logo-Dqd1VD9z.js +166 -0
  15. package/dist/cloudflare-logo-Dqd1VD9z.js.map +1 -0
  16. package/dist/code-T2wPDiM0.js.map +1 -1
  17. package/dist/collapsible-OBNkTO48.js.map +1 -1
  18. package/dist/combobox-CWxn5aHA.js.map +1 -1
  19. package/dist/command-line/cli.js +46 -21
  20. package/dist/command-line/commands/ai.js +23 -0
  21. package/dist/command-line/commands/blocks.js +2 -2
  22. package/dist/command-line/commands/doc.js +3 -3
  23. package/dist/command-line/commands/ls.js +4 -4
  24. package/dist/{command-palette-BxmGYxBv.js → command-palette-J50WKjS7.js} +14 -8
  25. package/dist/command-palette-J50WKjS7.js.map +1 -0
  26. package/dist/components/cloudflare-logo.js +10 -0
  27. package/dist/components/cloudflare-logo.js.map +1 -0
  28. package/dist/components/command-palette.js +1 -1
  29. package/dist/date-range-picker-CbKEQ9pi.js.map +1 -1
  30. package/dist/dialog-x9n9wI13.js.map +1 -1
  31. package/dist/dropdown-BAyk1knz.js.map +1 -1
  32. package/dist/empty-D03cbzRS.js.map +1 -1
  33. package/dist/field-B7ORz5ej.js.map +1 -1
  34. package/dist/grid-DKajRHh8.js.map +1 -1
  35. package/dist/index.js +67 -61
  36. package/dist/index.js.map +1 -1
  37. package/dist/input-D6YgDfDG.js.map +1 -1
  38. package/dist/label-B4FY8MX_.js.map +1 -1
  39. package/dist/layer-card-C8j5Hkkj.js.map +1 -1
  40. package/dist/link-CcuZKqob.js.map +1 -1
  41. package/dist/loader-DHGMYlC6.js.map +1 -1
  42. package/dist/menubar-CzimiryS.js.map +1 -1
  43. package/dist/meter-BrJnHJ3Q.js.map +1 -1
  44. package/dist/pagination-D0x9KQSk.js.map +1 -1
  45. package/dist/popover-CtKDH8Yc.js.map +1 -1
  46. package/dist/radio-CYejLANA.js.map +1 -1
  47. package/dist/schemas-DCw6TIy0.js +3859 -0
  48. package/dist/{schemas-C2YJKpDC.js.map → schemas-DCw6TIy0.js.map} +1 -1
  49. package/dist/select-D4rKQAax.js.map +1 -1
  50. package/dist/sensitive-input-DYvAmxkN.js.map +1 -1
  51. package/dist/src/command-line/commands/ai.d.ts +10 -0
  52. package/dist/src/command-line/commands/ai.d.ts.map +1 -0
  53. package/dist/src/components/badge/badge.d.ts +31 -4
  54. package/dist/src/components/badge/badge.d.ts.map +1 -1
  55. package/dist/src/components/banner/banner.d.ts +39 -4
  56. package/dist/src/components/banner/banner.d.ts.map +1 -1
  57. package/dist/src/components/breadcrumbs/breadcrumbs.d.ts +35 -0
  58. package/dist/src/components/breadcrumbs/breadcrumbs.d.ts.map +1 -1
  59. package/dist/src/components/button/button.d.ts +86 -0
  60. package/dist/src/components/button/button.d.ts.map +1 -1
  61. package/dist/src/components/checkbox/checkbox.d.ts +7 -0
  62. package/dist/src/components/checkbox/checkbox.d.ts.map +1 -1
  63. package/dist/src/components/clipboard-text/clipboard-text.d.ts +28 -3
  64. package/dist/src/components/clipboard-text/clipboard-text.d.ts.map +1 -1
  65. package/dist/src/components/cloudflare-logo/cloudflare-logo.d.ts +133 -0
  66. package/dist/src/components/cloudflare-logo/cloudflare-logo.d.ts.map +1 -0
  67. package/dist/src/components/cloudflare-logo/index.d.ts +2 -0
  68. package/dist/src/components/cloudflare-logo/index.d.ts.map +1 -0
  69. package/dist/src/components/code/code.d.ts +38 -6
  70. package/dist/src/components/code/code.d.ts.map +1 -1
  71. package/dist/src/components/collapsible/collapsible.d.ts +10 -0
  72. package/dist/src/components/collapsible/collapsible.d.ts.map +1 -1
  73. package/dist/src/components/combobox/combobox.d.ts +61 -0
  74. package/dist/src/components/combobox/combobox.d.ts.map +1 -1
  75. package/dist/src/components/command-palette/command-palette.d.ts +41 -6
  76. package/dist/src/components/command-palette/command-palette.d.ts.map +1 -1
  77. package/dist/src/components/date-range-picker/date-range-picker.d.ts +57 -4
  78. package/dist/src/components/date-range-picker/date-range-picker.d.ts.map +1 -1
  79. package/dist/src/components/dialog/dialog.d.ts +27 -0
  80. package/dist/src/components/dialog/dialog.d.ts.map +1 -1
  81. package/dist/src/components/dropdown/dropdown.d.ts +33 -0
  82. package/dist/src/components/dropdown/dropdown.d.ts.map +1 -1
  83. package/dist/src/components/empty/empty.d.ts +35 -0
  84. package/dist/src/components/empty/empty.d.ts.map +1 -1
  85. package/dist/src/components/field/field.d.ts +34 -4
  86. package/dist/src/components/field/field.d.ts.map +1 -1
  87. package/dist/src/components/grid/grid.d.ts +45 -17
  88. package/dist/src/components/grid/grid.d.ts.map +1 -1
  89. package/dist/src/components/input/input.d.ts +15 -0
  90. package/dist/src/components/input/input.d.ts.map +1 -1
  91. package/dist/src/components/label/label.d.ts +16 -5
  92. package/dist/src/components/label/label.d.ts.map +1 -1
  93. package/dist/src/components/layer-card/layer-card.d.ts +13 -0
  94. package/dist/src/components/layer-card/layer-card.d.ts.map +1 -1
  95. package/dist/src/components/link/link.d.ts +20 -0
  96. package/dist/src/components/link/link.d.ts.map +1 -1
  97. package/dist/src/components/loader/loader.d.ts +34 -0
  98. package/dist/src/components/loader/loader.d.ts.map +1 -1
  99. package/dist/src/components/menubar/menubar.d.ts +44 -0
  100. package/dist/src/components/menubar/menubar.d.ts.map +1 -1
  101. package/dist/src/components/meter/meter.d.ts +26 -0
  102. package/dist/src/components/meter/meter.d.ts.map +1 -1
  103. package/dist/src/components/pagination/pagination.d.ts +25 -0
  104. package/dist/src/components/pagination/pagination.d.ts.map +1 -1
  105. package/dist/src/components/popover/popover.d.ts +33 -5
  106. package/dist/src/components/popover/popover.d.ts.map +1 -1
  107. package/dist/src/components/radio/radio.d.ts +22 -0
  108. package/dist/src/components/radio/radio.d.ts.map +1 -1
  109. package/dist/src/components/select/select.d.ts +42 -20
  110. package/dist/src/components/select/select.d.ts.map +1 -1
  111. package/dist/src/components/sensitive-input/sensitive-input.d.ts +30 -6
  112. package/dist/src/components/sensitive-input/sensitive-input.d.ts.map +1 -1
  113. package/dist/src/components/surface/surface.d.ts +18 -6
  114. package/dist/src/components/surface/surface.d.ts.map +1 -1
  115. package/dist/src/components/switch/switch.d.ts +14 -0
  116. package/dist/src/components/switch/switch.d.ts.map +1 -1
  117. package/dist/src/components/table/table.d.ts +33 -0
  118. package/dist/src/components/table/table.d.ts.map +1 -1
  119. package/dist/src/components/tabs/tabs.d.ts +48 -9
  120. package/dist/src/components/tabs/tabs.d.ts.map +1 -1
  121. package/dist/src/components/text/text.d.ts +35 -7
  122. package/dist/src/components/text/text.d.ts.map +1 -1
  123. package/dist/src/components/toast/toast.d.ts +34 -0
  124. package/dist/src/components/toast/toast.d.ts.map +1 -1
  125. package/dist/src/components/tooltip/tooltip.d.ts +41 -0
  126. package/dist/src/components/tooltip/tooltip.d.ts.map +1 -1
  127. package/dist/src/index.d.ts +30 -0
  128. package/dist/src/index.d.ts.map +1 -1
  129. package/dist/styles/kumo-standalone.css +1 -1
  130. package/dist/surface-BIC6CXiz.js.map +1 -1
  131. package/dist/switch-z7FE1nQE.js.map +1 -1
  132. package/dist/table-Sd2Etb1N.js.map +1 -1
  133. package/dist/tabs-DAEeuQLd.js.map +1 -1
  134. package/dist/text-BEhqwMfe.js.map +1 -1
  135. package/dist/toast-B8ebpHaU.js.map +1 -1
  136. package/dist/tooltip-C4DRhJi1.js.map +1 -1
  137. package/package.json +7 -3
  138. package/dist/command-palette-BxmGYxBv.js.map +0 -1
  139. package/dist/schemas-C2YJKpDC.js +0 -3543
@@ -1,3 +1,4 @@
1
+ /** Pagination controls variant definitions. */
1
2
  export declare const KUMO_PAGINATION_VARIANTS: {
2
3
  readonly controls: {
3
4
  readonly full: {
@@ -18,11 +19,35 @@ export interface KumoPaginationVariantsProps {
18
19
  controls?: KumoPaginationControls;
19
20
  }
20
21
  export declare function paginationVariants({ controls, }?: KumoPaginationVariantsProps): string;
22
+ /**
23
+ * Pagination component props.
24
+ *
25
+ * @example
26
+ * ```tsx
27
+ * <Pagination page={page} setPage={setPage} perPage={10} totalCount={100} />
28
+ * <Pagination page={page} setPage={setPage} perPage={10} totalCount={100} controls="simple" />
29
+ * ```
30
+ */
21
31
  export interface PaginationProps extends KumoPaginationVariantsProps {
32
+ /** Callback fired when the current page changes. */
22
33
  setPage: (page: number) => void;
34
+ /**
35
+ * Current page number (1-indexed).
36
+ * @default 1
37
+ */
23
38
  page?: number;
39
+ /** Number of items displayed per page. */
24
40
  perPage?: number;
41
+ /** Total number of items across all pages. */
25
42
  totalCount?: number;
26
43
  }
44
+ /**
45
+ * Page navigation controls with page count display.
46
+ *
47
+ * @example
48
+ * ```tsx
49
+ * <Pagination page={page} setPage={setPage} perPage={10} totalCount={100} />
50
+ * ```
51
+ */
27
52
  export declare function Pagination({ page, perPage, totalCount, setPage, controls, }: PaginationProps): import("react/jsx-runtime").JSX.Element;
28
53
  //# sourceMappingURL=pagination.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../../src/components/pagination/pagination.tsx"],"names":[],"mappings":"AAUA,eAAO,MAAM,wBAAwB;;;;;;;;;;;CAa3B,CAAC;AAEX,MAAM,MAAM,sBAAsB,GAChC,MAAM,OAAO,wBAAwB,CAAC,QAAQ,CAAC;AAEjD,eAAO,MAAM,gCAAgC;;CAEnC,CAAC;AAEX,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CACnC;AAED,wBAAgB,kBAAkB,CAAC,EACjC,QAAoD,GACrD,GAAE,2BAAgC,UAKlC;AAED,MAAM,WAAW,eAAgB,SAAQ,2BAA2B;IAClE,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,UAAU,CAAC,EACzB,IAAQ,EACR,OAAO,EACP,UAAU,EACV,OAAO,EACP,QAAoD,GACrD,EAAE,eAAe,2CAsGjB"}
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../../src/components/pagination/pagination.tsx"],"names":[],"mappings":"AAUA,+CAA+C;AAC/C,eAAO,MAAM,wBAAwB;;;;;;;;;;;CAa3B,CAAC;AAEX,MAAM,MAAM,sBAAsB,GAChC,MAAM,OAAO,wBAAwB,CAAC,QAAQ,CAAC;AAEjD,eAAO,MAAM,gCAAgC;;CAEnC,CAAC;AAEX,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CACnC;AAED,wBAAgB,kBAAkB,CAAC,EACjC,QAAoD,GACrD,GAAE,2BAAgC,UAKlC;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,eAAgB,SAAQ,2BAA2B;IAClE,oDAAoD;IACpD,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,EACzB,IAAQ,EACR,OAAO,EACP,UAAU,EACV,OAAO,EACP,QAAoD,GACrD,EAAE,eAAe,2CAsGjB"}
@@ -1,5 +1,6 @@
1
1
  import { Popover as PopoverBase } from '@base-ui/react/popover';
2
2
  import { ComponentPropsWithoutRef, ReactNode } from 'react';
3
+ /** Popover side variant definitions mapping positions to their Tailwind classes. */
3
4
  export declare const KUMO_POPOVER_VARIANTS: {
4
5
  readonly side: {
5
6
  readonly top: {
@@ -25,6 +26,14 @@ export declare const KUMO_POPOVER_DEFAULT_VARIANTS: {
25
26
  };
26
27
  export type KumoPopoverSide = keyof typeof KUMO_POPOVER_VARIANTS.side;
27
28
  export interface KumoPopoverVariantsProps {
29
+ /**
30
+ * Which side of the trigger the popover appears on.
31
+ * - `"top"` — Above the trigger
32
+ * - `"bottom"` — Below the trigger
33
+ * - `"left"` — Left of the trigger
34
+ * - `"right"` — Right of the trigger
35
+ * @default "bottom"
36
+ */
28
37
  side?: KumoPopoverSide;
29
38
  }
30
39
  type BasePopoverRootProps = ComponentPropsWithoutRef<typeof PopoverBase.Root>;
@@ -44,16 +53,35 @@ declare namespace PopoverTrigger {
44
53
  }
45
54
  /** Alignment options for popover positioning */
46
55
  type PopoverAlign = "start" | "center" | "end";
56
+ /**
57
+ * Popover content panel props.
58
+ *
59
+ * @example
60
+ * ```tsx
61
+ * <Popover.Content side="top" align="start" sideOffset={12}>
62
+ * <p>Popover body</p>
63
+ * </Popover.Content>
64
+ * ```
65
+ */
47
66
  export type PopoverContentProps = KumoPopoverVariantsProps & {
48
- /** How to align the popover relative to the trigger */
67
+ /**
68
+ * How to align the popover relative to the trigger.
69
+ * @default "center"
70
+ */
49
71
  align?: PopoverAlign;
50
- /** Distance between the trigger and the popover in pixels */
72
+ /**
73
+ * Distance between the trigger and the popover in pixels.
74
+ * @default 8
75
+ */
51
76
  sideOffset?: number;
52
- /** Additional offset along the alignment axis in pixels */
77
+ /**
78
+ * Additional offset along the alignment axis in pixels.
79
+ * @default 0
80
+ */
53
81
  alignOffset?: number;
54
- /** Additional class name for the popup */
82
+ /** Additional CSS classes merged via `cn()`. */
55
83
  className?: string;
56
- /** Content to render inside the popover */
84
+ /** Content to render inside the popover. */
57
85
  children?: ReactNode;
58
86
  };
59
87
  declare function PopoverContent({ children, side, align, sideOffset, alignOffset, className, }: PopoverContentProps): import("react/jsx-runtime").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"popover.d.ts","sourceRoot":"","sources":["../../../../src/components/popover/popover.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"popover.d.ts","sourceRoot":"","sources":["../../../../src/components/popover/popover.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
+ /** Radio variant definitions mapping variant names to their Tailwind classes. */
2
3
  export declare const KUMO_RADIO_VARIANTS: {
3
4
  readonly variant: {
4
5
  readonly default: {
@@ -16,6 +17,12 @@ export declare const KUMO_RADIO_DEFAULT_VARIANTS: {
16
17
  };
17
18
  export type KumoRadioVariant = keyof typeof KUMO_RADIO_VARIANTS.variant;
18
19
  export interface KumoRadioVariantsProps {
20
+ /**
21
+ * Visual variant.
22
+ * - `"default"` — Standard radio appearance
23
+ * - `"error"` — Error state for validation failures
24
+ * @default "default"
25
+ */
19
26
  variant?: KumoRadioVariant;
20
27
  }
21
28
  export declare function radioVariants({ variant, }?: KumoRadioVariantsProps): string;
@@ -134,6 +141,21 @@ declare namespace RadioGroup {
134
141
  var displayName: string;
135
142
  }
136
143
  export { RadioGroup };
144
+ /**
145
+ * Radio — radio button group for single-select choices.
146
+ *
147
+ * Compound component: `Radio.Group` (with built-in Fieldset) and `Radio.Item`.
148
+ * Built on `@base-ui/react/radio-group` + `@base-ui/react/radio`.
149
+ *
150
+ * @example
151
+ * ```tsx
152
+ * <Radio.Group legend="Notification preference" defaultValue="email">
153
+ * <Radio.Item label="Email" value="email" />
154
+ * <Radio.Item label="SMS" value="sms" />
155
+ * <Radio.Item label="Push" value="push" />
156
+ * </Radio.Group>
157
+ * ```
158
+ */
137
159
  export declare const Radio: {
138
160
  Item: import('react').ForwardRefExoticComponent<RadioItemProps & import('react').RefAttributes<HTMLButtonElement>>;
139
161
  Group: typeof RadioGroup;
@@ -1 +1 @@
1
- {"version":3,"file":"radio.d.ts","sourceRoot":"","sources":["../../../../src/components/radio/radio.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAyC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAM9E,eAAO,MAAM,mBAAmB;;;;;;;;;;;CAWtB,CAAC;AAEX,eAAO,MAAM,2BAA2B;;CAE9B,CAAC;AAGX,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,mBAAmB,CAAC,OAAO,CAAC;AAExE,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,gBAAgB,CAAC;CAC5B;AAED,wBAAgB,aAAa,CAAC,EAC5B,OAA6C,GAC9C,GAAE,sBAA2B,UAE7B;AAGD,MAAM,MAAM,YAAY,GAAG,gBAAgB,CAAC;AAE5C,0DAA0D;AAC1D,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,KAAK,CAAC;AASnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AACH,MAAM,WAAW,eAAe;IAC9B,6DAA6D;IAC7D,MAAM,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,QAAQ,EAAE,SAAS,CAAC;IACpB,0CAA0C;IAC1C,WAAW,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IACxC,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gCAAgC;IAChC,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,0EAA0E;IAC1E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,8DAA8D;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oDAAoD;IACpD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,mDAAmD;IACnD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4HAA4H;IAC5H,eAAe,CAAC,EAAE,oBAAoB,CAAC;IACvC,+CAA+C;IAC/C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,mEAAmE;IACnE,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AA2CF,iBAAS,UAAU,CAAC,EAClB,MAAM,EACN,QAAQ,EACR,WAAwB,EACxB,KAAK,EACL,WAAW,EACX,YAAY,EACZ,KAAK,EACL,aAAa,EACb,QAAQ,EACR,eAAyB,EACzB,IAAI,EACJ,SAAS,GACV,EAAE,eAAe,2CAiCjB;kBA9CQ,UAAU;;;AAmDnB,OAAO,EAAE,UAAU,EAAE,CAAC;AAGtB,eAAO,MAAM,KAAK;;;CAGjB,CAAC"}
1
+ {"version":3,"file":"radio.d.ts","sourceRoot":"","sources":["../../../../src/components/radio/radio.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAyC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAM9E,iFAAiF;AACjF,eAAO,MAAM,mBAAmB;;;;;;;;;;;CAWtB,CAAC;AAEX,eAAO,MAAM,2BAA2B;;CAE9B,CAAC;AAGX,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,mBAAmB,CAAC,OAAO,CAAC;AAExE,MAAM,WAAW,sBAAsB;IACrC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,gBAAgB,CAAC;CAC5B;AAED,wBAAgB,aAAa,CAAC,EAC5B,OAA6C,GAC9C,GAAE,sBAA2B,UAE7B;AAGD,MAAM,MAAM,YAAY,GAAG,gBAAgB,CAAC;AAE5C,0DAA0D;AAC1D,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,KAAK,CAAC;AASnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AACH,MAAM,WAAW,eAAe;IAC9B,6DAA6D;IAC7D,MAAM,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,QAAQ,EAAE,SAAS,CAAC;IACpB,0CAA0C;IAC1C,WAAW,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IACxC,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gCAAgC;IAChC,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,0EAA0E;IAC1E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,8DAA8D;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oDAAoD;IACpD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,mDAAmD;IACnD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4HAA4H;IAC5H,eAAe,CAAC,EAAE,oBAAoB,CAAC;IACvC,+CAA+C;IAC/C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,mEAAmE;IACnE,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AA2CF,iBAAS,UAAU,CAAC,EAClB,MAAM,EACN,QAAQ,EACR,WAAwB,EACxB,KAAK,EACL,WAAW,EACX,YAAY,EACZ,KAAK,EACL,aAAa,EACb,QAAQ,EACR,eAAyB,EACzB,IAAI,EACJ,SAAS,GACV,EAAE,eAAe,2CAiCjB;kBA9CQ,UAAU;;;AAmDnB,OAAO,EAAE,UAAU,EAAE,CAAC;AAEtB;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,KAAK;;;CAGjB,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { Select as SelectBase } from '@base-ui/react/select';
2
2
  import { ReactNode } from 'react';
3
3
  import { FieldErrorMatch } from '../field/field';
4
+ /** Select variant definitions (currently empty, reserved for future additions). */
4
5
  export declare const KUMO_SELECT_VARIANTS: {};
5
6
  export declare const KUMO_SELECT_DEFAULT_VARIANTS: {};
6
7
  /**
@@ -59,6 +60,7 @@ type SelectPropsGeneric<T, Multiple extends boolean | undefined = false> = Selec
59
60
  className?: string;
60
61
  /** Label content for the select (enables Field wrapper) - can be a string or any React node */
61
62
  label?: ReactNode;
63
+ /** Visually hide the label (sr-only). Set to `false` for a visible label. @default true */
62
64
  hideLabel?: boolean;
63
65
  placeholder?: string;
64
66
  loading?: boolean;
@@ -73,47 +75,67 @@ type SelectPropsGeneric<T, Multiple extends boolean | undefined = false> = Selec
73
75
  };
74
76
  };
75
77
  /**
76
- * Props for the Select component.
77
- * @description A dropdown select component for choosing from a list of options.
78
- * @property {ReactNode} [label] - Label content for the select (enables Field wrapper)
79
- * @property {ReactNode} [description] - Helper text displayed below the select
80
- * @property {string | { message: ReactNode, match: FieldErrorMatch }} [error] - Error message or validation error object
78
+ * Select component props.
79
+ *
80
+ * @example
81
+ * ```tsx
82
+ * <Select label="Country" onValueChange={setValue}>
83
+ * <Select.Option value="us">United States</Select.Option>
84
+ * <Select.Option value="uk">United Kingdom</Select.Option>
85
+ * </Select>
86
+ * ```
81
87
  */
82
88
  export interface SelectProps {
83
- /** Additional CSS classes */
89
+ /** Additional CSS classes merged via `cn()`. */
84
90
  className?: string;
85
- /** Label content for the select (enables Field wrapper) - can be a string or any React node */
91
+ /** Label content for the select (enables Field wrapper) can be a string or any React node. */
86
92
  label?: ReactNode;
87
- /** Whether to visually hide the label (still accessible to screen readers) */
93
+ /**
94
+ * Visually hide the label while keeping it accessible to screen readers.
95
+ * Set to `false` to show a visible label above the select via the Field wrapper.
96
+ * @default true
97
+ */
88
98
  hideLabel?: boolean;
89
- /** Placeholder text when no value is selected */
99
+ /** Placeholder text shown when no value is selected. */
90
100
  placeholder?: string;
91
- /** Whether the select is in a loading state */
101
+ /** When `true`, shows a skeleton loader in place of the selected value. */
92
102
  loading?: boolean;
93
- /** Whether the select is disabled */
103
+ /** Whether the select is disabled. */
94
104
  disabled?: boolean;
95
- /** Whether the select is required */
105
+ /** Whether the select is required. When `false`, shows "(optional)" text. */
96
106
  required?: boolean;
97
- /** Tooltip content to display next to the label via an info icon */
107
+ /** Tooltip content displayed next to the label via an info icon. */
98
108
  labelTooltip?: ReactNode;
99
- /** The currently selected value */
109
+ /** Currently selected value (controlled mode). */
100
110
  value?: unknown;
101
- /** Default value for uncontrolled usage */
111
+ /** Initial value for uncontrolled mode. */
102
112
  defaultValue?: unknown;
103
- /** Callback when the value changes */
113
+ /** Callback fired when the selected value changes. */
104
114
  onValueChange?: (value: unknown) => void;
105
- /** Whether multiple selection is enabled */
115
+ /** Enable multi-select mode. */
106
116
  multiple?: boolean;
107
- /** Child elements (Select.Option components) */
117
+ /** `Select.Option` elements to render in the dropdown. */
108
118
  children?: ReactNode;
109
- /** Helper text displayed below the select */
119
+ /** Helper text displayed below the select. */
110
120
  description?: ReactNode;
111
- /** Error message or validation error object */
121
+ /** Error message string or validation error object with `match` key. */
112
122
  error?: string | {
113
123
  message: ReactNode;
114
124
  match: FieldErrorMatch;
115
125
  };
116
126
  }
127
+ /**
128
+ * Dropdown for selecting a value from a list of options.
129
+ * Wraps Base UI Select with Kumo styling and optional Field integration.
130
+ *
131
+ * @example
132
+ * ```tsx
133
+ * <Select label="Fruit" onValueChange={setFruit}>
134
+ * <Select.Option value="apple">Apple</Select.Option>
135
+ * <Select.Option value="banana">Banana</Select.Option>
136
+ * </Select>
137
+ * ```
138
+ */
117
139
  export declare function Select<T, Multiple extends boolean | undefined = false>({ children, className, renderValue, label, hideLabel, placeholder, loading, labelTooltip, description, error, required, ...props }: SelectPropsGeneric<T, Multiple> & {
118
140
  required?: boolean;
119
141
  }): import("react/jsx-runtime").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../../src/components/select/select.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAG7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,OAAO,EAAS,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAE7D,eAAO,MAAM,oBAAoB,IAEvB,CAAC;AAEX,eAAO,MAAM,4BAA4B,IAAc,CAAC;AAExD;;;GAGG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgCtB,CAAC;AAGX,MAAM,WAAW,uBAAuB;CAAG;AAE3C,wBAAgB,cAAc,CAAC,MAAM,GAAE,uBAA4B,UAMlE;AAED,KAAK,kBAAkB,CACrB,CAAC,EACD,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,KAAK,IAC1C,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,GACpC,uBAAuB,GAAG;IACxB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,SAAS,IAAI,GAAG,CAAC,EAAE,GAAG,CAAC,KAAK,SAAS,CAAC;IACpE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+FAA+F;IAC/F,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,oEAAoE;IACpE,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,SAAS,CAAC;QAAC,KAAK,EAAE,eAAe,CAAA;KAAE,CAAC;CACjE,CAAC;AAEJ;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+FAA+F;IAC/F,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,8EAA8E;IAC9E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+CAA+C;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oEAAoE;IACpE,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,mCAAmC;IACnC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,2CAA2C;IAC3C,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,sCAAsC;IACtC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gDAAgD;IAChD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,SAAS,CAAC;QAAC,KAAK,EAAE,eAAe,CAAA;KAAE,CAAC;CACjE;AAED,wBAAgB,MAAM,CAAC,CAAC,EAAE,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,KAAK,EAAE,EACtE,QAAQ,EACR,SAAS,EACT,WAAW,EACX,KAAK,EACL,SAAgB,EAChB,WAAW,EACX,OAAO,EACP,YAAY,EACZ,WAAW,EACX,KAAK,EACL,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,kBAAkB,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,2CA4H1D;yBAzIe,MAAM;iBAgJN,CAAC,uBAAuB,WAAW,CAAC,CAAC,CAAC;;AALtD,KAAK,WAAW,CAAC,CAAC,IAAI;IACpB,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,EAAE,CAAC,CAAC;CACV,CAAC"}
1
+ {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../../src/components/select/select.tsx"],"names":[],"mappings":"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"}
@@ -36,10 +36,13 @@ export declare const KUMO_SENSITIVE_INPUT_DEFAULT_VARIANTS: {
36
36
  readonly variant: "default";
37
37
  };
38
38
  /**
39
- * SensitiveInput component props
40
- * @property {ReactNode} [label] - Label content for the input (enables Field wrapper)
41
- * @property {ReactNode} [description] - Helper text displayed below the input
42
- * @property {string | { message: ReactNode, match: FieldErrorMatch }} [error] - Error message or validation error object
39
+ * SensitiveInput component props.
40
+ *
41
+ * @example
42
+ * ```tsx
43
+ * <SensitiveInput label="API Key" defaultValue="sk_live_abc123xyz789" />
44
+ * <SensitiveInput label="Secret" value={secret} onValueChange={setSecret} />
45
+ * ```
43
46
  */
44
47
  export interface SensitiveInputProps extends Omit<ComponentPropsWithoutRef<"input">, "size" | "type" | "value" | "defaultValue"> {
45
48
  /** Controlled value */
@@ -50,9 +53,21 @@ export interface SensitiveInputProps extends Omit<ComponentPropsWithoutRef<"inpu
50
53
  onValueChange?: (value: string) => void;
51
54
  /** Callback fired after value is copied to clipboard */
52
55
  onCopy?: () => void;
53
- /** Size variant */
56
+ /**
57
+ * Size of the input.
58
+ * - `"xs"` — Extra small for compact UIs
59
+ * - `"sm"` — Small for secondary fields
60
+ * - `"base"` — Default input size
61
+ * - `"lg"` — Large for prominent fields
62
+ * @default "base"
63
+ */
54
64
  size?: KumoInputSize;
55
- /** Style variant */
65
+ /**
66
+ * Style variant of the input.
67
+ * - `"default"` — Default input appearance
68
+ * - `"error"` — Error state for validation failures
69
+ * @default "default"
70
+ */
56
71
  variant?: KumoInputVariant;
57
72
  /** Label content for the input (enables Field wrapper and sets masked state label) - can be a string or any React node */
58
73
  label?: ReactNode;
@@ -66,5 +81,14 @@ export interface SensitiveInputProps extends Omit<ComponentPropsWithoutRef<"inpu
66
81
  match: FieldErrorMatch;
67
82
  };
68
83
  }
84
+ /**
85
+ * Password/secret input that masks its value by default and reveals on click.
86
+ * Includes a built-in copy-to-clipboard button on hover.
87
+ *
88
+ * @example
89
+ * ```tsx
90
+ * <SensitiveInput label="API Key" defaultValue="sk_live_abc123xyz789" />
91
+ * ```
92
+ */
69
93
  export declare const SensitiveInput: import('react').ForwardRefExoticComponent<SensitiveInputProps & import('react').RefAttributes<HTMLInputElement>>;
70
94
  //# sourceMappingURL=sensitive-input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sensitive-input.d.ts","sourceRoot":"","sources":["../../../../src/components/sensitive-input/sensitive-input.tsx"],"names":[],"mappings":"AACA,OAAO,EAOL,KAAK,wBAAwB,EAC7B,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAGf,OAAO,EAGL,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAS,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAE7D,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAsB,CAAC;AAEjE,eAAO,MAAM,qCAAqC;;;CAGxC,CAAC;AAIX;;;;;GAKG;AACH,MAAM,WAAW,mBACf,SAAQ,IAAI,CACV,wBAAwB,CAAC,OAAO,CAAC,EACjC,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,cAAc,CAC3C;IACD,uBAAuB;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iCAAiC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yDAAyD;IACzD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,mBAAmB;IACnB,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,oBAAoB;IACpB,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,0HAA0H;IAC1H,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,oEAAoE;IACpE,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,SAAS,CAAC;QAAC,KAAK,EAAE,eAAe,CAAA;KAAE,CAAC;CACjE;AAED,eAAO,MAAM,cAAc,kHAkZ1B,CAAC"}
1
+ {"version":3,"file":"sensitive-input.d.ts","sourceRoot":"","sources":["../../../../src/components/sensitive-input/sensitive-input.tsx"],"names":[],"mappings":"AACA,OAAO,EAOL,KAAK,wBAAwB,EAC7B,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAGf,OAAO,EAGL,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAS,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAE7D,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAsB,CAAC;AAEjE,eAAO,MAAM,qCAAqC;;;CAGxC,CAAC;AAIX;;;;;;;;GAQG;AACH,MAAM,WAAW,mBACf,SAAQ,IAAI,CACV,wBAAwB,CAAC,OAAO,CAAC,EACjC,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,cAAc,CAC3C;IACD,uBAAuB;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iCAAiC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yDAAyD;IACzD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,0HAA0H;IAC1H,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,oEAAoE;IACpE,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,SAAS,CAAC;QAAC,KAAK,EAAE,eAAe,CAAA;KAAE,CAAC;CACjE;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc,kHAkZ1B,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { default as React, ComponentPropsWithoutRef, ComponentPropsWithRef, ElementType, PropsWithChildren } from 'react';
2
+ /** Surface color variant definitions. */
2
3
  export declare const KUMO_SURFACE_VARIANTS: {
3
4
  readonly color: {
4
5
  readonly primary: {
@@ -16,6 +17,12 @@ export declare const KUMO_SURFACE_DEFAULT_VARIANTS: {
16
17
  };
17
18
  export type KumoSurfaceColor = keyof typeof KUMO_SURFACE_VARIANTS.color;
18
19
  export interface KumoSurfaceVariantsProps {
20
+ /**
21
+ * Surface color variant.
22
+ * - `"primary"` — Primary surface color
23
+ * - `"secondary"` — Secondary surface color
24
+ * @default "primary"
25
+ */
19
26
  color?: KumoSurfaceColor;
20
27
  }
21
28
  export declare function surfaceVariants({ color, }?: KumoSurfaceVariantsProps): string;
@@ -27,17 +34,22 @@ type PolymorphicRef<E extends ElementType> = ComponentPropsWithRef<E>["ref"];
27
34
  declare const defaultElement = "div";
28
35
  type SurfacePropsGeneric<E extends ElementType = typeof defaultElement> = PolymorphicProps<E> & KumoSurfaceVariantsProps;
29
36
  /**
30
- * Props for the Surface component.
31
- * @description A polymorphic container component for creating elevated surfaces with consistent styling.
37
+ * Surface component props.
38
+ *
39
+ * @example
40
+ * ```tsx
41
+ * <Surface className="rounded-lg p-4">Card content</Surface>
42
+ * <Surface as="section" className="rounded-lg p-6">Section content</Surface>
43
+ * ```
32
44
  */
33
45
  export interface SurfaceProps {
34
- /** The element type to render as (default: "div") */
46
+ /** The HTML element type to render as (e.g. `"div"`, `"section"`, `"article"`). @default "div" */
35
47
  as?: ElementType;
36
- /** Surface color variant */
48
+ /** Surface color variant. @default "primary" */
37
49
  color?: KumoSurfaceColor;
38
- /** Additional CSS classes */
50
+ /** Additional CSS classes merged via `cn()`. */
39
51
  className?: string;
40
- /** Child elements */
52
+ /** Content rendered inside the surface. */
41
53
  children?: React.ReactNode;
42
54
  }
43
55
  type SurfaceComponent = <E extends ElementType = typeof defaultElement>(props: SurfacePropsGeneric<E> & {
@@ -1 +1 @@
1
- {"version":3,"file":"surface.d.ts","sourceRoot":"","sources":["../../../../src/components/surface/surface.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAEZ,KAAK,wBAAwB,EAC7B,KAAK,qBAAqB,EAC1B,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACvB,MAAM,OAAO,CAAC;AAGf,eAAO,MAAM,qBAAqB;;;;;;;;;;;CAWxB,CAAC;AAEX,eAAO,MAAM,6BAA6B;;CAEhC,CAAC;AAGX,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,qBAAqB,CAAC,KAAK,CAAC;AAExE,MAAM,WAAW,wBAAwB;IACvC,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B;AAED,wBAAgB,eAAe,CAAC,EAC9B,KAA2C,GAC5C,GAAE,wBAA6B,UAO/B;AAED,KAAK,iBAAiB,CAAC,CAAC,SAAS,WAAW,IAAI;IAC9C,EAAE,CAAC,EAAE,CAAC,CAAC;CACR,CAAC;AAEF,KAAK,gBAAgB,CAAC,CAAC,SAAS,WAAW,IAAI,iBAAiB,CAC9D,wBAAwB,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CACnD,CAAC;AAEF,KAAK,cAAc,CAAC,CAAC,SAAS,WAAW,IAAI,qBAAqB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAE7E,QAAA,MAAM,cAAc,QAAQ,CAAC;AAE7B,KAAK,mBAAmB,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,cAAc,IACpE,gBAAgB,CAAC,CAAC,CAAC,GAAG,wBAAwB,CAAC;AAEjD;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,qDAAqD;IACrD,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,4BAA4B;IAC5B,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qBAAqB;IACrB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,KAAK,gBAAgB,GAAG,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,cAAc,EACpE,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG;IAAE,GAAG,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAA;CAAE,KACxD,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;AAoBvB,eAAO,MAAM,OAAO,EAEJ,gBAAgB,CAAC"}
1
+ {"version":3,"file":"surface.d.ts","sourceRoot":"","sources":["../../../../src/components/surface/surface.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAEZ,KAAK,wBAAwB,EAC7B,KAAK,qBAAqB,EAC1B,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACvB,MAAM,OAAO,CAAC;AAGf,yCAAyC;AACzC,eAAO,MAAM,qBAAqB;;;;;;;;;;;CAWxB,CAAC;AAEX,eAAO,MAAM,6BAA6B;;CAEhC,CAAC;AAGX,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,qBAAqB,CAAC,KAAK,CAAC;AAExE,MAAM,WAAW,wBAAwB;IACvC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B;AAED,wBAAgB,eAAe,CAAC,EAC9B,KAA2C,GAC5C,GAAE,wBAA6B,UAO/B;AAED,KAAK,iBAAiB,CAAC,CAAC,SAAS,WAAW,IAAI;IAC9C,EAAE,CAAC,EAAE,CAAC,CAAC;CACR,CAAC;AAEF,KAAK,gBAAgB,CAAC,CAAC,SAAS,WAAW,IAAI,iBAAiB,CAC9D,wBAAwB,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CACnD,CAAC;AAEF,KAAK,cAAc,CAAC,CAAC,SAAS,WAAW,IAAI,qBAAqB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAE7E,QAAA,MAAM,cAAc,QAAQ,CAAC;AAE7B,KAAK,mBAAmB,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,cAAc,IACpE,gBAAgB,CAAC,CAAC,CAAC,GAAG,wBAAwB,CAAC;AAEjD;;;;;;;;GAQG;AACH,MAAM,WAAW,YAAY;IAC3B,kGAAkG;IAClG,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,gDAAgD;IAChD,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,KAAK,gBAAgB,GAAG,CAAC,CAAC,SAAS,WAAW,GAAG,OAAO,cAAc,EACpE,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG;IAAE,GAAG,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAA;CAAE,KACxD,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;AA4BvB,eAAO,MAAM,OAAO,EAEJ,gBAAgB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { ButtonHTMLAttributes, ReactNode } from 'react';
2
+ /** Switch size and variant definitions mapping names to their Tailwind classes. */
2
3
  export declare const KUMO_SWITCH_VARIANTS: {
3
4
  readonly size: {
4
5
  readonly sm: {
@@ -32,7 +33,20 @@ export declare const KUMO_SWITCH_DEFAULT_VARIANTS: {
32
33
  export type KumoSwitchSize = keyof typeof KUMO_SWITCH_VARIANTS.size;
33
34
  export type KumoSwitchVariant = keyof typeof KUMO_SWITCH_VARIANTS.variant;
34
35
  export interface KumoSwitchVariantsProps {
36
+ /**
37
+ * Switch size.
38
+ * - `"sm"` — Small for compact UIs
39
+ * - `"base"` — Default size
40
+ * - `"lg"` — Large for prominent toggles
41
+ * @default "base"
42
+ */
35
43
  size?: KumoSwitchSize;
44
+ /**
45
+ * Visual variant.
46
+ * - `"default"` — Standard switch appearance
47
+ * - `"error"` — Error state for validation failures
48
+ * @default "default"
49
+ */
36
50
  variant?: KumoSwitchVariant;
37
51
  }
38
52
  export declare function switchVariants({ size, variant, }?: KumoSwitchVariantsProps): string;
@@ -1 +1 @@
1
- {"version":3,"file":"switch.d.ts","sourceRoot":"","sources":["../../../../src/components/switch/switch.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"switch.d.ts","sourceRoot":"","sources":["../../../../src/components/switch/switch.tsx"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ /** Table layout and row variant definitions mapping names to their Tailwind classes. */
1
2
  export declare const KUMO_TABLE_VARIANTS: {
2
3
  readonly layout: {
3
4
  readonly auto: {
@@ -26,7 +27,39 @@ export declare const KUMO_TABLE_DEFAULT_VARIANTS: {
26
27
  };
27
28
  export type KumoTableRowVariant = keyof typeof KUMO_TABLE_VARIANTS.variant;
28
29
  export type KumoTableLayout = keyof typeof KUMO_TABLE_VARIANTS.layout;
30
+ /**
31
+ * Table — semantic HTML table with styled rows, cells, and selection support.
32
+ *
33
+ * Compound component: `Table` (Root), `.Header`, `.Head`, `.Body`, `.Row`,
34
+ * `.Cell`, `.Footer`, `.CheckCell`, `.CheckHead`, `.ResizeHandle`.
35
+ *
36
+ * @example
37
+ * ```tsx
38
+ * <Table>
39
+ * <Table.Header>
40
+ * <Table.Row>
41
+ * <Table.CheckHead checked={allSelected} onValueChange={toggleAll} />
42
+ * <Table.Head>Name</Table.Head>
43
+ * </Table.Row>
44
+ * </Table.Header>
45
+ * <Table.Body>
46
+ * {rows.map((row) => (
47
+ * <Table.Row key={row.id} variant={selected.has(row.id) ? "selected" : "default"}>
48
+ * <Table.CheckCell checked={selected.has(row.id)} onValueChange={() => toggle(row.id)} />
49
+ * <Table.Cell>{row.name}</Table.Cell>
50
+ * </Table.Row>
51
+ * ))}
52
+ * </Table.Body>
53
+ * </Table>
54
+ * ```
55
+ */
29
56
  export declare const Table: import('react').ForwardRefExoticComponent<import('react').HTMLAttributes<HTMLTableElement> & {
57
+ /**
58
+ * Table layout algorithm.
59
+ * - `"auto"` — columns resize based on content
60
+ * - `"fixed"` — equal-width columns, controlled via `<colgroup>`
61
+ * @default "auto"
62
+ */
30
63
  layout?: KumoTableLayout;
31
64
  } & import('react').RefAttributes<HTMLTableElement>> & {
32
65
  Header: import('react').ForwardRefExoticComponent<import('react').HTMLAttributes<HTMLTableSectionElement> & import('react').RefAttributes<HTMLTableSectionElement>>;
@@ -1 +1 @@
1
- {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../../../src/components/table/table.tsx"],"names":[],"mappings":"AAIA,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;CAsBtB,CAAC;AAEX,eAAO,MAAM,2BAA2B;;;CAG9B,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,mBAAmB,CAAC,OAAO,CAAC;AAC3E,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,mBAAmB,CAAC,MAAM,CAAC;AAuLtE,eAAO,MAAM,KAAK;aAlLL,eAAe;;;;;kBAmCd,mBAAmB;;;;;kBA+DnB,OAAO;wBACD,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI;gBAClC,MAAM;mBACH,OAAO;;;kBAiCR,OAAO;wBACD,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI;gBAClC,MAAM;mBACH,OAAO;;;;CAmDpB,CAAC"}
1
+ {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../../../src/components/table/table.tsx"],"names":[],"mappings":"AAIA,wFAAwF;AACxF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;CAsBtB,CAAC;AAEX,eAAO,MAAM,2BAA2B;;;CAG9B,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,mBAAmB,CAAC,OAAO,CAAC;AAC3E,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,mBAAmB,CAAC,MAAM,CAAC;AAkNtE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,KAAK;IAlNd;;;;;OAKG;aACM,eAAe;;;;;kBAmCd,mBAAmB;;;;;kBA+DnB,OAAO;wBACD,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI;gBAClC,MAAM;mBACH,OAAO;;;kBAiCR,OAAO;wBACD,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI;gBAClC,MAAM;mBACH,OAAO;;;;CA6EpB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
+ /** Tabs variant definitions. */
2
3
  export declare const KUMO_TABS_VARIANTS: {
3
4
  readonly variant: readonly ["segmented", "underline"];
4
5
  };
@@ -29,36 +30,74 @@ export declare const KUMO_TABS_STYLING: {
29
30
  };
30
31
  };
31
32
  export interface KumoTabsVariantsProps {
33
+ /**
34
+ * Tab style.
35
+ * - `"segmented"` — Pill-shaped indicator on a filled track
36
+ * - `"underline"` — Underline indicator below tab text
37
+ * @default "segmented"
38
+ */
32
39
  variant?: (typeof KUMO_TABS_VARIANTS.variant)[number];
33
40
  }
41
+ /** Configuration for a single tab within the Tabs component. */
34
42
  export type TabsItem = {
43
+ /** Unique identifier for the tab, used as the controlled value. */
35
44
  value: string;
45
+ /** Display content for the tab trigger. */
36
46
  label: ReactNode;
47
+ /** Additional CSS classes for this tab trigger. */
37
48
  className?: string;
38
- /** Optional render function to customize the tab element (e.g., for links) */
49
+ /** Custom render function to replace the tab element (e.g. for link-based tabs). */
39
50
  render?: (props: Record<string, unknown>) => React.ReactElement;
40
51
  };
52
+ /**
53
+ * Tabs component props.
54
+ *
55
+ * @example
56
+ * ```tsx
57
+ * <Tabs
58
+ * tabs={[
59
+ * { value: "overview", label: "Overview" },
60
+ * { value: "settings", label: "Settings" },
61
+ * ]}
62
+ * value={activeTab}
63
+ * onValueChange={setActiveTab}
64
+ * />
65
+ * ```
66
+ */
41
67
  export type TabsProps = KumoTabsVariantsProps & {
42
- /** Array of tab items to render */
68
+ /** Array of tab items to render. */
43
69
  tabs?: TabsItem[];
44
70
  /** Controlled value. When set, component becomes controlled. */
45
71
  value?: string;
46
72
  /** Default selected value for uncontrolled mode. Ignored when `value` is set. */
47
73
  selectedValue?: string;
48
- /** Callback fired when the active tab changes */
74
+ /** Callback fired when the active tab changes. */
49
75
  onValueChange?: (value: string) => void;
50
76
  /**
51
- * When true, tabs are activated immediately upon receiving focus via arrow keys.
52
- * When false (default), tabs receive focus but require Enter/Space to activate.
53
- * Set to true for better keyboard UX in most cases.
77
+ * When `true`, tabs are activated immediately upon receiving focus via arrow keys.
78
+ * When `false` (default), tabs receive focus but require Enter/Space to activate.
54
79
  */
55
80
  activateOnFocus?: boolean;
56
- /** Additional class name for the root element */
81
+ /** Additional CSS classes for the root element. */
57
82
  className?: string;
58
- /** Additional class name for the tab list element */
83
+ /** Additional CSS classes for the tab list element. */
59
84
  listClassName?: string;
60
- /** Additional class name for the indicator element */
85
+ /** Additional CSS classes for the indicator element. */
61
86
  indicatorClassName?: string;
62
87
  };
88
+ /**
89
+ * Tab navigation component with segmented or underline style.
90
+ * Built on Base UI Tabs with animated active indicator.
91
+ *
92
+ * @example
93
+ * ```tsx
94
+ * <Tabs
95
+ * variant="segmented"
96
+ * tabs={[{ value: "tab1", label: "Tab 1" }, { value: "tab2", label: "Tab 2" }]}
97
+ * value={active}
98
+ * onValueChange={setActive}
99
+ * />
100
+ * ```
101
+ */
63
102
  export declare function Tabs({ tabs, value, selectedValue, onValueChange, activateOnFocus, className, listClassName, indicatorClassName, variant, }: TabsProps): import("react/jsx-runtime").JSX.Element | null;
64
103
  //# sourceMappingURL=tabs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../../src/components/tabs/tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,eAAO,MAAM,kBAAkB;;CAErB,CAAC;AAEX,eAAO,MAAM,0BAA0B;;CAE7B,CAAC;AAEX,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;CAsBpB,CAAC;AAGX,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,CAAC,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;CACvD;AAED,MAAM,MAAM,QAAQ,GAAG;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8EAA8E;IAC9E,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,KAAK,CAAC,YAAY,CAAC;CACjE,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,qBAAqB,GAAG;IAC9C,mCAAmC;IACnC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC;IAClB,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iDAAiD;IACjD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sDAAsD;IACtD,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,wBAAgB,IAAI,CAAC,EACnB,IAAI,EACJ,KAAK,EACL,aAAa,EACb,aAAa,EACb,eAAe,EACf,SAAS,EACT,aAAa,EACb,kBAAkB,EAClB,OAA4C,GAC7C,EAAE,SAAS,kDAqEX"}
1
+ {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../../src/components/tabs/tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,gCAAgC;AAChC,eAAO,MAAM,kBAAkB;;CAErB,CAAC;AAEX,eAAO,MAAM,0BAA0B;;CAE7B,CAAC;AAEX,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;CAsBpB,CAAC;AAGX,MAAM,WAAW,qBAAqB;IACpC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,CAAC,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;CACvD;AAED,gEAAgE;AAChE,MAAM,MAAM,QAAQ,GAAG;IACrB,mEAAmE;IACnE,KAAK,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,KAAK,EAAE,SAAS,CAAC;IACjB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oFAAoF;IACpF,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,KAAK,CAAC,YAAY,CAAC;CACjE,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,SAAS,GAAG,qBAAqB,GAAG;IAC9C,oCAAoC;IACpC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC;IAClB,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kDAAkD;IAClD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uDAAuD;IACvD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,IAAI,CAAC,EACnB,IAAI,EACJ,KAAK,EACL,aAAa,EACb,aAAa,EACb,eAAe,EACf,SAAS,EACT,aAAa,EACb,kBAAkB,EAClB,OAA4C,GAC7C,EAAE,SAAS,kDAqEX"}