@adam-milo/ui 1.0.2

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 (198) hide show
  1. package/LICENSE +23 -0
  2. package/README.md +341 -0
  3. package/dist/index.cjs +1 -0
  4. package/dist/index.d.ts +1 -0
  5. package/dist/index.js +1 -0
  6. package/dist/index10.cjs +1 -0
  7. package/dist/index10.js +4 -0
  8. package/dist/index11.cjs +1 -0
  9. package/dist/index11.js +9 -0
  10. package/dist/index12.cjs +1 -0
  11. package/dist/index12.js +11 -0
  12. package/dist/index13.cjs +1 -0
  13. package/dist/index13.js +3 -0
  14. package/dist/index14.cjs +1 -0
  15. package/dist/index14.js +5 -0
  16. package/dist/index15.cjs +1 -0
  17. package/dist/index15.js +4 -0
  18. package/dist/index16.cjs +1 -0
  19. package/dist/index16.js +4 -0
  20. package/dist/index17.cjs +1 -0
  21. package/dist/index17.js +8 -0
  22. package/dist/index18.cjs +1 -0
  23. package/dist/index18.js +4 -0
  24. package/dist/index19.cjs +1 -0
  25. package/dist/index19.js +2 -0
  26. package/dist/index2.cjs +1 -0
  27. package/dist/index2.js +2 -0
  28. package/dist/index20.cjs +1 -0
  29. package/dist/index20.js +5 -0
  30. package/dist/index21.cjs +1 -0
  31. package/dist/index21.js +11 -0
  32. package/dist/index22.cjs +1 -0
  33. package/dist/index22.js +2 -0
  34. package/dist/index23.cjs +1 -0
  35. package/dist/index23.js +2 -0
  36. package/dist/index24.cjs +1 -0
  37. package/dist/index24.js +2 -0
  38. package/dist/index25.cjs +1 -0
  39. package/dist/index25.js +7 -0
  40. package/dist/index26.cjs +1 -0
  41. package/dist/index26.js +2 -0
  42. package/dist/index27.cjs +1 -0
  43. package/dist/index27.js +2 -0
  44. package/dist/index28.cjs +1 -0
  45. package/dist/index28.js +2 -0
  46. package/dist/index29.cjs +1 -0
  47. package/dist/index29.js +2 -0
  48. package/dist/index3.cjs +1 -0
  49. package/dist/index3.js +3 -0
  50. package/dist/index30.cjs +1 -0
  51. package/dist/index30.js +10 -0
  52. package/dist/index31.cjs +1 -0
  53. package/dist/index31.js +1 -0
  54. package/dist/index32.cjs +1 -0
  55. package/dist/index32.js +1 -0
  56. package/dist/index33.cjs +1 -0
  57. package/dist/index33.js +15 -0
  58. package/dist/index34.cjs +1 -0
  59. package/dist/index34.js +1 -0
  60. package/dist/index35.cjs +1 -0
  61. package/dist/index35.js +1 -0
  62. package/dist/index36.cjs +1 -0
  63. package/dist/index36.js +1 -0
  64. package/dist/index37.cjs +1 -0
  65. package/dist/index37.js +5 -0
  66. package/dist/index38.cjs +1 -0
  67. package/dist/index38.js +1 -0
  68. package/dist/index39.cjs +1 -0
  69. package/dist/index39.js +1 -0
  70. package/dist/index4.cjs +1 -0
  71. package/dist/index4.js +2 -0
  72. package/dist/index40.cjs +1 -0
  73. package/dist/index40.js +2 -0
  74. package/dist/index41.cjs +1 -0
  75. package/dist/index41.js +1 -0
  76. package/dist/index42.cjs +1 -0
  77. package/dist/index42.js +1 -0
  78. package/dist/index43.cjs +1 -0
  79. package/dist/index43.js +4 -0
  80. package/dist/index44.cjs +1 -0
  81. package/dist/index44.js +1 -0
  82. package/dist/index45.cjs +1 -0
  83. package/dist/index45.js +1 -0
  84. package/dist/index46.cjs +1 -0
  85. package/dist/index46.js +1 -0
  86. package/dist/index47.cjs +1 -0
  87. package/dist/index47.js +3 -0
  88. package/dist/index48.cjs +1 -0
  89. package/dist/index48.js +1 -0
  90. package/dist/index49.cjs +1 -0
  91. package/dist/index49.js +1 -0
  92. package/dist/index5.cjs +1 -0
  93. package/dist/index5.js +2 -0
  94. package/dist/index50.cjs +1 -0
  95. package/dist/index50.js +1 -0
  96. package/dist/index51.cjs +1 -0
  97. package/dist/index51.js +1 -0
  98. package/dist/index52.cjs +1 -0
  99. package/dist/index52.js +1 -0
  100. package/dist/index53.cjs +1 -0
  101. package/dist/index53.js +1 -0
  102. package/dist/index54.cjs +1 -0
  103. package/dist/index54.js +2 -0
  104. package/dist/index55.cjs +1 -0
  105. package/dist/index55.js +1 -0
  106. package/dist/index56.cjs +1 -0
  107. package/dist/index56.js +1 -0
  108. package/dist/index57.cjs +1 -0
  109. package/dist/index57.js +1 -0
  110. package/dist/index58.cjs +1 -0
  111. package/dist/index58.js +1 -0
  112. package/dist/index59.cjs +1 -0
  113. package/dist/index59.js +1 -0
  114. package/dist/index6.cjs +1 -0
  115. package/dist/index6.js +1 -0
  116. package/dist/index7.cjs +1 -0
  117. package/dist/index7.js +2 -0
  118. package/dist/index8.cjs +1 -0
  119. package/dist/index8.js +2 -0
  120. package/dist/index9.cjs +1 -0
  121. package/dist/index9.js +4 -0
  122. package/dist/src/components/core/button/Button.component.d.ts +36 -0
  123. package/dist/src/components/core/button/Button.component.d.ts.map +1 -0
  124. package/dist/src/components/core/icon/Icon.component.d.ts +6 -0
  125. package/dist/src/components/core/icon/Icon.component.d.ts.map +1 -0
  126. package/dist/src/components/core/icon-button/IconButton.component.d.ts +36 -0
  127. package/dist/src/components/core/icon-button/IconButton.component.d.ts.map +1 -0
  128. package/dist/src/components/core/menu-icon-button/MenuIconButton.component.d.ts +34 -0
  129. package/dist/src/components/core/menu-icon-button/MenuIconButton.component.d.ts.map +1 -0
  130. package/dist/src/components/data-display/card/Card.component.d.ts +42 -0
  131. package/dist/src/components/data-display/card/Card.component.d.ts.map +1 -0
  132. package/dist/src/components/data-display/chip/Chip.component.d.ts +36 -0
  133. package/dist/src/components/data-display/chip/Chip.component.d.ts.map +1 -0
  134. package/dist/src/components/data-display/chip-group/ChipGroup.component.d.ts +72 -0
  135. package/dist/src/components/data-display/chip-group/ChipGroup.component.d.ts.map +1 -0
  136. package/dist/src/components/data-display/datatable/DataTable.component.d.ts +25 -0
  137. package/dist/src/components/data-display/datatable/DataTable.component.d.ts.map +1 -0
  138. package/dist/src/components/feedback/alert/Alert.component.d.ts +19 -0
  139. package/dist/src/components/feedback/alert/Alert.component.d.ts.map +1 -0
  140. package/dist/src/components/feedback/spinner/Spinner.component.d.ts +17 -0
  141. package/dist/src/components/feedback/spinner/Spinner.component.d.ts.map +1 -0
  142. package/dist/src/components/forms/alphanumeric-input/AlphanumericInput.component.d.ts +47 -0
  143. package/dist/src/components/forms/alphanumeric-input/AlphanumericInput.component.d.ts.map +1 -0
  144. package/dist/src/components/forms/checkbox/Checkbox.component.d.ts +18 -0
  145. package/dist/src/components/forms/checkbox/Checkbox.component.d.ts.map +1 -0
  146. package/dist/src/components/forms/email-input/EmailInput.component.d.ts +31 -0
  147. package/dist/src/components/forms/email-input/EmailInput.component.d.ts.map +1 -0
  148. package/dist/src/components/forms/input/Input.component.d.ts +28 -0
  149. package/dist/src/components/forms/input/Input.component.d.ts.map +1 -0
  150. package/dist/src/components/forms/numeric-input/NumericInput.component.d.ts +44 -0
  151. package/dist/src/components/forms/numeric-input/NumericInput.component.d.ts.map +1 -0
  152. package/dist/src/components/forms/otp-input/OTPInput.component.d.ts +81 -0
  153. package/dist/src/components/forms/otp-input/OTPInput.component.d.ts.map +1 -0
  154. package/dist/src/components/forms/password-input/PasswordInput.component.d.ts +28 -0
  155. package/dist/src/components/forms/password-input/PasswordInput.component.d.ts.map +1 -0
  156. package/dist/src/components/forms/phone-input/PhoneInput.component.d.ts +96 -0
  157. package/dist/src/components/forms/phone-input/PhoneInput.component.d.ts.map +1 -0
  158. package/dist/src/components/forms/phone-input/countries.d.ts +93 -0
  159. package/dist/src/components/forms/phone-input/countries.d.ts.map +1 -0
  160. package/dist/src/components/forms/radio/Radio.component.d.ts +17 -0
  161. package/dist/src/components/forms/radio/Radio.component.d.ts.map +1 -0
  162. package/dist/src/components/forms/select/Select.component.d.ts +108 -0
  163. package/dist/src/components/forms/select/Select.component.d.ts.map +1 -0
  164. package/dist/src/components/forms/toggle/Toggle.component.d.ts +80 -0
  165. package/dist/src/components/forms/toggle/Toggle.component.d.ts.map +1 -0
  166. package/dist/src/components/layout/auth-layout/AuthLayout.component.d.ts +87 -0
  167. package/dist/src/components/layout/auth-layout/AuthLayout.component.d.ts.map +1 -0
  168. package/dist/src/components/layout/container/Container.component.d.ts +26 -0
  169. package/dist/src/components/layout/container/Container.component.d.ts.map +1 -0
  170. package/dist/src/components/layout/divider/Divider.component.d.ts +12 -0
  171. package/dist/src/components/layout/divider/Divider.component.d.ts.map +1 -0
  172. package/dist/src/components/layout/grid/Grid.component.d.ts +53 -0
  173. package/dist/src/components/layout/grid/Grid.component.d.ts.map +1 -0
  174. package/dist/src/components/layout/stack/Stack.component.d.ts +13 -0
  175. package/dist/src/components/layout/stack/Stack.component.d.ts.map +1 -0
  176. package/dist/src/components/navigation/tabs/Tabs.component.d.ts +46 -0
  177. package/dist/src/components/navigation/tabs/Tabs.component.d.ts.map +1 -0
  178. package/dist/src/components/overlays/dialog/Dialog.component.d.ts +83 -0
  179. package/dist/src/components/overlays/dialog/Dialog.component.d.ts.map +1 -0
  180. package/dist/src/components/typography/heading/Heading.component.d.ts +20 -0
  181. package/dist/src/components/typography/heading/Heading.component.d.ts.map +1 -0
  182. package/dist/src/components/typography/link/Link.component.d.ts +61 -0
  183. package/dist/src/components/typography/link/Link.component.d.ts.map +1 -0
  184. package/dist/src/components/typography/text/Text.component.d.ts +21 -0
  185. package/dist/src/components/typography/text/Text.component.d.ts.map +1 -0
  186. package/dist/src/index.d.ts +61 -0
  187. package/dist/src/index.d.ts.map +1 -0
  188. package/dist/src/lib/debounce.d.ts +12 -0
  189. package/dist/src/lib/debounce.d.ts.map +1 -0
  190. package/dist/src/lib/debounce.spec.d.ts +2 -0
  191. package/dist/src/lib/debounce.spec.d.ts.map +1 -0
  192. package/dist/src/lib/dev-utils.d.ts +41 -0
  193. package/dist/src/lib/dev-utils.d.ts.map +1 -0
  194. package/dist/src/lib/index.d.ts +19 -0
  195. package/dist/src/lib/index.d.ts.map +1 -0
  196. package/dist/src/lib/useMergedRef.d.ts +19 -0
  197. package/dist/src/lib/useMergedRef.d.ts.map +1 -0
  198. package/package.json +92 -0
@@ -0,0 +1,34 @@
1
+ import { ButtonHTMLAttributes } from 'react';
2
+
3
+ export interface MenuIconButtonProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'style' | 'className'> {
4
+ /**
5
+ * Variant of the menu icon button
6
+ * - settings: Shows gear/settings icon
7
+ * - user: Shows user icon or initials
8
+ */
9
+ variant: 'settings' | 'user';
10
+ /**
11
+ * Whether the button is in selected/active state
12
+ * @default false
13
+ */
14
+ selected?: boolean;
15
+ /**
16
+ * User initials to display instead of icon (for existing users)
17
+ * Only applies when variant is 'user'
18
+ */
19
+ initials?: string;
20
+ /**
21
+ * Accessible label for screen readers
22
+ */
23
+ 'aria-label': string;
24
+ /**
25
+ * An ID for testing purposes
26
+ */
27
+ 'data-testid'?: string;
28
+ /**
29
+ * An ID for Cypress E2E testing
30
+ */
31
+ 'data-cy'?: string;
32
+ }
33
+ export declare const MenuIconButton: import('react').ForwardRefExoticComponent<MenuIconButtonProps & import('react').RefAttributes<HTMLButtonElement>>;
34
+ //# sourceMappingURL=MenuIconButton.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuIconButton.component.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/menu-icon-button/MenuIconButton.component.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAc,MAAM,OAAO,CAAC;AAIzD,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAC/C,oBAAoB,CAAC,iBAAiB,CAAC,EACvC,OAAO,GAAG,WAAW,CACtB;IACC;;;;OAIG;IACH,OAAO,EAAE,UAAU,GAAG,MAAM,CAAC;IAE7B;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAqDD,eAAO,MAAM,cAAc,mHAuE1B,CAAC"}
@@ -0,0 +1,42 @@
1
+ import { HTMLAttributes } from 'react';
2
+
3
+ export interface CardProps extends HTMLAttributes<HTMLDivElement> {
4
+ variant?: 'default' | 'outlined' | 'elevated';
5
+ /**
6
+ * Custom data-cy attribute for Cypress testing
7
+ * Auto-generates as "card-{variant}" if not provided
8
+ */
9
+ 'data-cy'?: string;
10
+ /**
11
+ * Custom data-testid attribute for unit testing
12
+ * Auto-generates as "card-{variant}" if not provided
13
+ */
14
+ 'data-testid'?: string;
15
+ }
16
+ export declare const Card: import('react').ForwardRefExoticComponent<CardProps & import('react').RefAttributes<HTMLDivElement>>;
17
+ export interface CardHeaderProps extends HTMLAttributes<HTMLDivElement> {
18
+ 'data-cy'?: string;
19
+ 'data-testid'?: string;
20
+ }
21
+ export declare const CardHeader: import('react').ForwardRefExoticComponent<CardHeaderProps & import('react').RefAttributes<HTMLDivElement>>;
22
+ export interface CardTitleProps extends HTMLAttributes<HTMLHeadingElement> {
23
+ 'data-cy'?: string;
24
+ 'data-testid'?: string;
25
+ }
26
+ export declare const CardTitle: import('react').ForwardRefExoticComponent<CardTitleProps & import('react').RefAttributes<HTMLHeadingElement>>;
27
+ export interface CardDescriptionProps extends HTMLAttributes<HTMLParagraphElement> {
28
+ 'data-cy'?: string;
29
+ 'data-testid'?: string;
30
+ }
31
+ export declare const CardDescription: import('react').ForwardRefExoticComponent<CardDescriptionProps & import('react').RefAttributes<HTMLParagraphElement>>;
32
+ export interface CardContentProps extends HTMLAttributes<HTMLDivElement> {
33
+ 'data-cy'?: string;
34
+ 'data-testid'?: string;
35
+ }
36
+ export declare const CardContent: import('react').ForwardRefExoticComponent<CardContentProps & import('react').RefAttributes<HTMLDivElement>>;
37
+ export interface CardFooterProps extends HTMLAttributes<HTMLDivElement> {
38
+ 'data-cy'?: string;
39
+ 'data-testid'?: string;
40
+ }
41
+ export declare const CardFooter: import('react').ForwardRefExoticComponent<CardFooterProps & import('react').RefAttributes<HTMLDivElement>>;
42
+ //# sourceMappingURL=Card.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Card.component.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/card/Card.component.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAc,MAAM,OAAO,CAAC;AAUnD,MAAM,WAAW,SAAU,SAAQ,cAAc,CAAC,cAAc,CAAC;IAC/D,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,UAAU,CAAC;IAE9C;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,IAAI,sGA+BhB,CAAC;AAIF,MAAM,WAAW,eAAgB,SAAQ,cAAc,CAAC,cAAc,CAAC;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,UAAU,4GAetB,CAAC;AAIF,MAAM,WAAW,cAAe,SAAQ,cAAc,CAAC,kBAAkB,CAAC;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,SAAS,+GAgBrB,CAAC;AAIF,MAAM,WAAW,oBAAqB,SAAQ,cAAc,CAAC,oBAAoB,CAAC;IAChF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,eAAe,uHAe3B,CAAC;AAIF,MAAM,WAAW,gBAAiB,SAAQ,cAAc,CAAC,cAAc,CAAC;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,WAAW,6GAevB,CAAC;AAIF,MAAM,WAAW,eAAgB,SAAQ,cAAc,CAAC,cAAc,CAAC;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,UAAU,4GAetB,CAAC"}
@@ -0,0 +1,36 @@
1
+ import { HTMLAttributes, ReactNode } from 'react';
2
+
3
+ export interface ChipProps extends Omit<HTMLAttributes<HTMLDivElement>, 'style'> {
4
+ /**
5
+ * Chip variant based on Smart V2 design system
6
+ * - primary: Teal/cyan color
7
+ * - secondary: Purple color
8
+ * - tertiary: Orange color
9
+ * - quaternary: Blue color
10
+ */
11
+ variant?: 'primary' | 'secondary' | 'tertiary' | 'quaternary';
12
+ /**
13
+ * Whether the chip is in selected state
14
+ */
15
+ selected?: boolean;
16
+ /**
17
+ * Whether the chip is disabled
18
+ */
19
+ disabled?: boolean;
20
+ /**
21
+ * Chip label text
22
+ */
23
+ children: ReactNode;
24
+ /**
25
+ * An ID for testing purposes, used by Vitest/React Testing Library.
26
+ * Defaults to `chip-{variant}` if not provided.
27
+ */
28
+ 'data-testid'?: string;
29
+ /**
30
+ * An ID for Cypress E2E testing purposes.
31
+ * Defaults to `chip-{variant}` if not provided.
32
+ */
33
+ 'data-cy'?: string;
34
+ }
35
+ export declare const Chip: import('react').ForwardRefExoticComponent<ChipProps & import('react').RefAttributes<HTMLDivElement>>;
36
+ //# sourceMappingURL=Chip.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Chip.component.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/chip/Chip.component.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAc,SAAS,EAAE,MAAM,OAAO,CAAC;AAgC9D,MAAM,WAAW,SAAU,SAAQ,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAC9E;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY,CAAC;IAE9D;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,QAAQ,EAAE,SAAS,CAAC;IAEpB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,IAAI,sGAsChB,CAAC"}
@@ -0,0 +1,72 @@
1
+ import { HTMLAttributes, KeyboardEvent, MouseEvent as ReactMouseEvent } from 'react';
2
+
3
+ export interface ChipGroupItem {
4
+ /**
5
+ * Unique identifier for the chip
6
+ */
7
+ value: string;
8
+ /**
9
+ * Display label for the chip
10
+ */
11
+ label: string;
12
+ /**
13
+ * Visual variant for this specific chip
14
+ */
15
+ variant?: 'primary' | 'secondary' | 'tertiary' | 'quaternary';
16
+ /**
17
+ * Whether this specific chip is disabled
18
+ */
19
+ disabled?: boolean;
20
+ }
21
+ export interface ChipGroupProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onSelect'> {
22
+ /**
23
+ * Array of chips to display
24
+ */
25
+ items: ChipGroupItem[];
26
+ /**
27
+ * Currently selected chip value (controlled)
28
+ */
29
+ selectedValue?: string | null;
30
+ /**
31
+ * Callback when selection changes
32
+ * Passes null when deselecting
33
+ * @param value - The selected value or null if deselected
34
+ * @param event - The click or keyboard event that triggered the change
35
+ */
36
+ onSelectionChange?: (value: string | null, event: ReactMouseEvent | KeyboardEvent) => void;
37
+ /**
38
+ * Whether chips can be removed
39
+ */
40
+ removable?: boolean;
41
+ /**
42
+ * Callback when a chip is removed
43
+ * @param value - The value of the removed chip
44
+ * @param event - The click event that triggered the removal
45
+ */
46
+ onRemove?: (value: string, event: ReactMouseEvent) => void;
47
+ /**
48
+ * Default variant for all chips (can be overridden per chip)
49
+ */
50
+ variant?: 'primary' | 'secondary' | 'tertiary' | 'quaternary';
51
+ /**
52
+ * Whether the entire chip group is disabled
53
+ */
54
+ disabled?: boolean;
55
+ /**
56
+ * Optional maximum number of visible chips before showing overflow
57
+ * If not provided, overflow is calculated based on container width
58
+ */
59
+ maxVisible?: number;
60
+ /**
61
+ * An ID for testing purposes, used by Vitest/React Testing Library.
62
+ * Defaults to `chip-group` if not provided.
63
+ */
64
+ 'data-testid'?: string;
65
+ /**
66
+ * An ID for Cypress E2E testing purposes.
67
+ * Defaults to `chip-group` if not provided.
68
+ */
69
+ 'data-cy'?: string;
70
+ }
71
+ export declare const ChipGroup: import('react').ForwardRefExoticComponent<ChipGroupProps & import('react').RefAttributes<HTMLDivElement>>;
72
+ //# sourceMappingURL=ChipGroup.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChipGroup.component.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/chip-group/ChipGroup.component.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EAMd,KAAK,aAAa,EAClB,KAAK,UAAU,IAAI,eAAe,EACnC,MAAM,OAAO,CAAC;AAgBf,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY,CAAC;IAE9D;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC;IACtF;;OAEG;IACH,KAAK,EAAE,aAAa,EAAE,CAAC;IAEvB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE9B;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,eAAe,GAAG,aAAa,KAAK,IAAI,CAAC;IAE3F;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IAE3D;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY,CAAC;IAE9D;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA2ND,eAAO,MAAM,SAAS,2GAyXrB,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { TableHTMLAttributes } from 'react';
2
+
3
+ export interface DataTableColumn {
4
+ key: string;
5
+ header: string;
6
+ width?: string;
7
+ }
8
+ export interface DataTableProps extends TableHTMLAttributes<HTMLTableElement> {
9
+ columns: DataTableColumn[];
10
+ data: Record<string, unknown>[];
11
+ striped?: boolean;
12
+ hoverable?: boolean;
13
+ /**
14
+ * Custom data-cy attribute for Cypress testing
15
+ * Auto-generates as "datatable" if not provided
16
+ */
17
+ 'data-cy'?: string;
18
+ /**
19
+ * Custom data-testid attribute for unit testing
20
+ * Auto-generates as "datatable" if not provided
21
+ */
22
+ 'data-testid'?: string;
23
+ }
24
+ export declare const DataTable: import('react').ForwardRefExoticComponent<DataTableProps & import('react').RefAttributes<HTMLTableElement>>;
25
+ //# sourceMappingURL=DataTable.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataTable.component.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/datatable/DataTable.component.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAc,MAAM,OAAO,CAAC;AAGxD,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAe,SAAQ,mBAAmB,CAAC,gBAAgB,CAAC;IAC3E,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,SAAS,6GA6FrB,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { HTMLAttributes, ReactNode } from 'react';
2
+
3
+ export interface AlertProps extends HTMLAttributes<HTMLDivElement> {
4
+ variant?: 'info' | 'success' | 'warning' | 'error';
5
+ title?: string;
6
+ icon?: ReactNode;
7
+ /**
8
+ * Custom data-cy attribute for Cypress testing
9
+ * Auto-generates as "alert-{variant}" if not provided
10
+ */
11
+ 'data-cy'?: string;
12
+ /**
13
+ * Custom data-testid attribute for unit testing
14
+ * Auto-generates as "alert-{variant}" if not provided
15
+ */
16
+ 'data-testid'?: string;
17
+ }
18
+ export declare const Alert: import('react').ForwardRefExoticComponent<AlertProps & import('react').RefAttributes<HTMLDivElement>>;
19
+ //# sourceMappingURL=Alert.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Alert.component.d.ts","sourceRoot":"","sources":["../../../../../src/components/feedback/alert/Alert.component.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAc,SAAS,EAAE,MAAM,OAAO,CAAC;AAa9D,MAAM,WAAW,UAAW,SAAQ,cAAc,CAAC,cAAc,CAAC;IAChE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;IACnD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,SAAS,CAAC;IAEjB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,KAAK,uGAmEjB,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { HTMLAttributes } from 'react';
2
+
3
+ export type SpinnerSize = 'sm' | 'md' | 'lg' | 'xl' | 'verify';
4
+ export type SpinnerColor = 'action' | 'orange' | 'white' | 'text' | 'teal';
5
+ export type SpinnerVariant = 'default' | 'segmented';
6
+ export interface SpinnerProps extends Omit<HTMLAttributes<HTMLDivElement>, 'style' | 'className'> {
7
+ size?: SpinnerSize;
8
+ color?: SpinnerColor;
9
+ /** Visual style: default (continuous arc) or segmented (dashed ring, Figma Verify dialog) */
10
+ variant?: SpinnerVariant;
11
+ label?: string;
12
+ 'data-cy'?: string;
13
+ 'data-testid'?: string;
14
+ }
15
+ /** Dark orange → lighter orange/peach along arc (photo: rounded caps, solid stroke, no fade to white) */
16
+ export declare const Spinner: import('react').ForwardRefExoticComponent<SpinnerProps & import('react').RefAttributes<HTMLDivElement>>;
17
+ //# sourceMappingURL=Spinner.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Spinner.component.d.ts","sourceRoot":"","sources":["../../../../../src/components/feedback/spinner/Spinner.component.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AAG/D,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,QAAQ,CAAC;AAC/D,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAC3E,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,WAAW,CAAC;AAErD,MAAM,WAAW,YAAa,SAAQ,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,GAAG,WAAW,CAAC;IAC/F,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,6FAA6F;IAC7F,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAsBD,yGAAyG;AAEzG,eAAO,MAAM,OAAO,yGAqGnB,CAAC"}
@@ -0,0 +1,47 @@
1
+ import { InputProps } from '../input/Input.component';
2
+
3
+ export interface AlphanumericInputProps extends Omit<InputProps, 'type'> {
4
+ /**
5
+ * Allow hyphens in the input
6
+ * @default false
7
+ */
8
+ allowHyphen?: boolean;
9
+ /**
10
+ * Allow underscores in the input
11
+ * @default false
12
+ */
13
+ allowUnderscore?: boolean;
14
+ /**
15
+ * Allow spaces in the input
16
+ * @default false
17
+ */
18
+ allowSpace?: boolean;
19
+ /**
20
+ * Minimum length
21
+ */
22
+ minLength?: number;
23
+ /**
24
+ * Maximum length
25
+ */
26
+ maxLength?: number;
27
+ }
28
+ /**
29
+ * AlphanumericInput - Specialized input component for alphanumeric values
30
+ *
31
+ * A wrapper around the base Input component that only allows letters and numbers,
32
+ * with optional support for hyphens, underscores, and spaces.
33
+ *
34
+ * @example
35
+ * ```tsx
36
+ * <AlphanumericInput
37
+ * label="Username"
38
+ * placeholder="Enter username"
39
+ * minLength={3}
40
+ * maxLength={20}
41
+ * allowUnderscore={true}
42
+ * required
43
+ * />
44
+ * ```
45
+ */
46
+ export declare const AlphanumericInput: import('react').ForwardRefExoticComponent<AlphanumericInputProps & import('react').RefAttributes<HTMLInputElement>>;
47
+ //# sourceMappingURL=AlphanumericInput.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AlphanumericInput.component.d.ts","sourceRoot":"","sources":["../../../../../src/components/forms/alphanumeric-input/AlphanumericInput.component.tsx"],"names":[],"mappings":"AACA,OAAO,EAAS,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAG7D,MAAM,WAAW,sBAAuB,SAAQ,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;IACtE;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,iBAAiB,qHAwJ7B,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { InputHTMLAttributes } from 'react';
2
+
3
+ export interface CheckboxProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type'> {
4
+ label?: string;
5
+ error?: string;
6
+ helperText?: string;
7
+ indeterminate?: boolean;
8
+ onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
9
+ onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
10
+ onFocus?: (event: React.FocusEvent<HTMLInputElement>) => void;
11
+ onClick?: (event: React.MouseEvent<HTMLInputElement>) => void;
12
+ onKeyDown?: (event: React.KeyboardEvent<HTMLInputElement>) => void;
13
+ onKeyUp?: (event: React.KeyboardEvent<HTMLInputElement>) => void;
14
+ 'data-cy'?: string;
15
+ 'data-testid'?: string;
16
+ }
17
+ export declare const Checkbox: import('react').ForwardRefExoticComponent<CheckboxProps & import('react').RefAttributes<HTMLInputElement>>;
18
+ //# sourceMappingURL=Checkbox.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Checkbox.component.d.ts","sourceRoot":"","sources":["../../../../../src/components/forms/checkbox/Checkbox.component.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,mBAAmB,EAAyC,MAAM,OAAO,CAAC;AAG/F,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACxF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAChE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAC7D,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAC9D,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAC9D,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACnE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACjE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AA4BD,eAAO,MAAM,QAAQ,4GAmHpB,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { InputProps } from '../input/Input.component';
2
+
3
+ export interface EmailInputProps extends Omit<InputProps, 'type'> {
4
+ /**
5
+ * Enable client-side email validation
6
+ * @default true
7
+ */
8
+ validateEmail?: boolean;
9
+ /**
10
+ * Custom validation message for invalid email
11
+ * @default "Not a valid email address"
12
+ */
13
+ invalidEmailMessage?: string;
14
+ }
15
+ /**
16
+ * EmailInput - Specialized input component for email addresses
17
+ *
18
+ * A wrapper around the base Input component with built-in email validation.
19
+ *
20
+ * @example
21
+ * ```tsx
22
+ * <EmailInput
23
+ * label="Email"
24
+ * placeholder="Enter your email"
25
+ * required
26
+ * validateEmail={true}
27
+ * />
28
+ * ```
29
+ */
30
+ export declare const EmailInput: import('react').ForwardRefExoticComponent<EmailInputProps & import('react').RefAttributes<HTMLInputElement>>;
31
+ //# sourceMappingURL=EmailInput.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmailInput.component.d.ts","sourceRoot":"","sources":["../../../../../src/components/forms/email-input/EmailInput.component.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAS,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE7D,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;IAC/D;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,UAAU,8GA4CtB,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { InputHTMLAttributes } from 'react';
2
+
3
+ export interface InputProps extends InputHTMLAttributes<HTMLInputElement> {
4
+ /** Label text for the input */
5
+ label?: string;
6
+ /** Tooltip text to display next to the label (info icon) */
7
+ tooltip?: string;
8
+ /** Error message to display below the input */
9
+ error?: string;
10
+ /** Helper text to display below the input (only shown when no error) */
11
+ helperText?: string;
12
+ /** Whether the input should take full width @default false */
13
+ fullWidth?: boolean;
14
+ /** Show password visibility toggle (only for type="password") @default true */
15
+ showPasswordToggle?: boolean;
16
+ /** Show last character preview for password inputs @default true */
17
+ showLastChar?: boolean;
18
+ /** Delay in ms before fully masking the last character @default 500 */
19
+ lastCharDelay?: number;
20
+ /** Custom validation function */
21
+ validate?: (value: string) => string | undefined;
22
+ /** Callback when validation state changes */
23
+ onValidationChange?: (isValid: boolean) => void;
24
+ 'data-cy'?: string;
25
+ 'data-testid'?: string;
26
+ }
27
+ export declare const Input: import('react').ForwardRefExoticComponent<InputProps & import('react').RefAttributes<HTMLInputElement>>;
28
+ //# sourceMappingURL=Input.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Input.component.d.ts","sourceRoot":"","sources":["../../../../../src/components/forms/input/Input.component.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EAQpB,MAAM,OAAO,CAAC;AAIf,MAAM,WAAW,UAAW,SAAQ,mBAAmB,CAAC,gBAAgB,CAAC;IACvE,+BAA+B;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,+EAA+E;IAC/E,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,oEAAoE;IACpE,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,uEAAuE;IACvE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACjD,6CAA6C;IAC7C,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AA0DD,eAAO,MAAM,KAAK,yGAgXjB,CAAC"}
@@ -0,0 +1,44 @@
1
+ import { InputProps } from '../input/Input.component';
2
+
3
+ export interface NumericInputProps extends Omit<InputProps, 'type'> {
4
+ /**
5
+ * Minimum value allowed
6
+ */
7
+ min?: number;
8
+ /**
9
+ * Maximum value allowed
10
+ */
11
+ max?: number;
12
+ /**
13
+ * Step increment for the number input
14
+ * @default 1
15
+ */
16
+ step?: number;
17
+ /**
18
+ * Allow decimal numbers
19
+ * @default false
20
+ */
21
+ allowDecimals?: boolean;
22
+ }
23
+ /**
24
+ * NumericInput - Specialized input component for numeric values
25
+ *
26
+ * A wrapper around the base Input component with number-specific features:
27
+ * - Type="number" by default
28
+ * - Min/max validation
29
+ * - Step increments
30
+ * - Optional decimal support
31
+ *
32
+ * @example
33
+ * ```tsx
34
+ * <NumericInput
35
+ * label="Age"
36
+ * placeholder="Enter age"
37
+ * min={0}
38
+ * max={120}
39
+ * required
40
+ * />
41
+ * ```
42
+ */
43
+ export declare const NumericInput: import('react').ForwardRefExoticComponent<NumericInputProps & import('react').RefAttributes<HTMLInputElement>>;
44
+ //# sourceMappingURL=NumericInput.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NumericInput.component.d.ts","sourceRoot":"","sources":["../../../../../src/components/forms/numeric-input/NumericInput.component.tsx"],"names":[],"mappings":"AACA,OAAO,EAAS,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE7D,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;IACjE;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,YAAY,gHAmExB,CAAC"}
@@ -0,0 +1,81 @@
1
+ export interface OTPInputProps {
2
+ /**
3
+ * Number of OTP digits/inputs
4
+ * @default 4
5
+ */
6
+ length?: number;
7
+ /**
8
+ * Label text for the OTP input
9
+ */
10
+ label?: string;
11
+ /**
12
+ * Current OTP value as a string
13
+ */
14
+ value?: string;
15
+ /**
16
+ * Callback when OTP value changes
17
+ */
18
+ onChange?: (value: string) => void;
19
+ /**
20
+ * Callback when all digits are filled
21
+ */
22
+ onComplete?: (value: string) => void;
23
+ /**
24
+ * Error message to display
25
+ */
26
+ error?: string;
27
+ /**
28
+ * Helper text to display below the input
29
+ */
30
+ helperText?: string;
31
+ /**
32
+ * Whether the input is disabled
33
+ * @default false
34
+ */
35
+ disabled?: boolean;
36
+ /**
37
+ * Whether to auto-focus the first input on mount
38
+ * @default false
39
+ */
40
+ autoFocus?: boolean;
41
+ /**
42
+ * Whether the input should take full width of container
43
+ * @default false
44
+ */
45
+ fullWidth?: boolean;
46
+ /**
47
+ * Whether to center the inputs within the container
48
+ * @default false
49
+ */
50
+ centered?: boolean;
51
+ /**
52
+ * Input type - can be 'numeric' (numbers only) or 'alphanumeric'
53
+ * @default 'numeric'
54
+ */
55
+ type?: 'numeric' | 'alphanumeric';
56
+ /**
57
+ * Whether the field is required
58
+ * @default false
59
+ */
60
+ required?: boolean;
61
+ /**
62
+ * Custom data-cy attribute for Cypress testing
63
+ * @default "otp-input"
64
+ */
65
+ 'data-cy'?: string;
66
+ /**
67
+ * Custom data-testid attribute for unit testing
68
+ * @default "otp-input"
69
+ */
70
+ 'data-testid'?: string;
71
+ }
72
+ export interface OTPInputRef {
73
+ /** Focus the first empty input or the last input */
74
+ focus: () => void;
75
+ /** Clear all inputs */
76
+ clear: () => void;
77
+ /** Get the current OTP value */
78
+ getValue: () => string;
79
+ }
80
+ export declare const OTPInput: import('react').ForwardRefExoticComponent<OTPInputProps & import('react').RefAttributes<OTPInputRef>>;
81
+ //# sourceMappingURL=OTPInput.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OTPInput.component.d.ts","sourceRoot":"","sources":["../../../../../src/components/forms/otp-input/OTPInput.component.tsx"],"names":[],"mappings":"AAeA,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAEnC;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAErC;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,IAAI,CAAC,EAAE,SAAS,GAAG,cAAc,CAAC;IAElC;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,oDAAoD;IACpD,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,uBAAuB;IACvB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,gCAAgC;IAChC,QAAQ,EAAE,MAAM,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,QAAQ,uGA4VpB,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { InputProps } from '../input/Input.component';
2
+
3
+ export interface PasswordInputProps extends Omit<InputProps, 'type'> {
4
+ /**
5
+ * Show password visibility toggle button
6
+ * @default true
7
+ */
8
+ showToggle?: boolean;
9
+ }
10
+ /**
11
+ * PasswordInput - Specialized input component for passwords
12
+ *
13
+ * A wrapper around the base Input component with password-specific features:
14
+ * - Password visibility toggle
15
+ * - Type="password" by default
16
+ *
17
+ * @example
18
+ * ```tsx
19
+ * <PasswordInput
20
+ * label="Password"
21
+ * placeholder="Enter your password"
22
+ * required
23
+ * showToggle={true}
24
+ * />
25
+ * ```
26
+ */
27
+ export declare const PasswordInput: import('react').ForwardRefExoticComponent<PasswordInputProps & import('react').RefAttributes<HTMLInputElement>>;
28
+ //# sourceMappingURL=PasswordInput.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PasswordInput.component.d.ts","sourceRoot":"","sources":["../../../../../src/components/forms/password-input/PasswordInput.component.tsx"],"names":[],"mappings":"AACA,OAAO,EAAS,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE7D,MAAM,WAAW,kBAAmB,SAAQ,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;IAClE;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,aAAa,iHAazB,CAAC"}