@teja-app/ui 0.0.1 → 0.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 (166) hide show
  1. package/dist/components/Badge/Badge.d.ts +13 -0
  2. package/dist/components/Badge/Badge.d.ts.map +1 -0
  3. package/dist/components/Badge/Badge.types.d.ts +12 -0
  4. package/dist/components/Badge/Badge.types.d.ts.map +1 -0
  5. package/dist/components/Badge/index.d.ts +3 -0
  6. package/dist/components/Badge/index.d.ts.map +1 -0
  7. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +18 -0
  8. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts.map +1 -0
  9. package/dist/components/Breadcrumbs/Breadcrumbs.types.d.ts +20 -0
  10. package/dist/components/Breadcrumbs/Breadcrumbs.types.d.ts.map +1 -0
  11. package/dist/components/Breadcrumbs/index.d.ts +3 -0
  12. package/dist/components/Breadcrumbs/index.d.ts.map +1 -0
  13. package/dist/components/Button/Button.d.ts.map +1 -1
  14. package/dist/components/Card/Card.d.ts +18 -0
  15. package/dist/components/Card/Card.d.ts.map +1 -0
  16. package/dist/components/Card/Card.types.d.ts +14 -0
  17. package/dist/components/Card/Card.types.d.ts.map +1 -0
  18. package/dist/components/Card/index.d.ts +3 -0
  19. package/dist/components/Card/index.d.ts.map +1 -0
  20. package/dist/components/Checkbox/Checkbox.d.ts +13 -0
  21. package/dist/components/Checkbox/Checkbox.d.ts.map +1 -0
  22. package/dist/components/Checkbox/Checkbox.types.d.ts +19 -0
  23. package/dist/components/Checkbox/Checkbox.types.d.ts.map +1 -0
  24. package/dist/components/Checkbox/index.d.ts +3 -0
  25. package/dist/components/Checkbox/index.d.ts.map +1 -0
  26. package/dist/components/Combobox/Combobox.d.ts +24 -0
  27. package/dist/components/Combobox/Combobox.d.ts.map +1 -0
  28. package/dist/components/Combobox/Combobox.types.d.ts +41 -0
  29. package/dist/components/Combobox/Combobox.types.d.ts.map +1 -0
  30. package/dist/components/Combobox/index.d.ts +3 -0
  31. package/dist/components/Combobox/index.d.ts.map +1 -0
  32. package/dist/components/ConfirmDialog/ConfirmDialog.d.ts +23 -0
  33. package/dist/components/ConfirmDialog/ConfirmDialog.d.ts.map +1 -0
  34. package/dist/components/ConfirmDialog/ConfirmDialog.types.d.ts +22 -0
  35. package/dist/components/ConfirmDialog/ConfirmDialog.types.d.ts.map +1 -0
  36. package/dist/components/ConfirmDialog/index.d.ts +3 -0
  37. package/dist/components/ConfirmDialog/index.d.ts.map +1 -0
  38. package/dist/components/Drawer/Drawer.d.ts +27 -0
  39. package/dist/components/Drawer/Drawer.d.ts.map +1 -0
  40. package/dist/components/Drawer/Drawer.types.d.ts +23 -0
  41. package/dist/components/Drawer/Drawer.types.d.ts.map +1 -0
  42. package/dist/components/Drawer/index.d.ts +3 -0
  43. package/dist/components/Drawer/index.d.ts.map +1 -0
  44. package/dist/components/EmptyState/EmptyState.d.ts +34 -0
  45. package/dist/components/EmptyState/EmptyState.d.ts.map +1 -0
  46. package/dist/components/EmptyState/EmptyState.types.d.ts +17 -0
  47. package/dist/components/EmptyState/EmptyState.types.d.ts.map +1 -0
  48. package/dist/components/EmptyState/index.d.ts +3 -0
  49. package/dist/components/EmptyState/index.d.ts.map +1 -0
  50. package/dist/components/Input/Input.d.ts +13 -0
  51. package/dist/components/Input/Input.d.ts.map +1 -0
  52. package/dist/components/Input/Input.types.d.ts +18 -0
  53. package/dist/components/Input/Input.types.d.ts.map +1 -0
  54. package/dist/components/Input/index.d.ts +3 -0
  55. package/dist/components/Input/index.d.ts.map +1 -0
  56. package/dist/components/Modal/Modal.d.ts +28 -0
  57. package/dist/components/Modal/Modal.d.ts.map +1 -0
  58. package/dist/components/Modal/Modal.types.d.ts +27 -0
  59. package/dist/components/Modal/Modal.types.d.ts.map +1 -0
  60. package/dist/components/Modal/index.d.ts +3 -0
  61. package/dist/components/Modal/index.d.ts.map +1 -0
  62. package/dist/components/MultiSelect/MultiSelect.d.ts +26 -0
  63. package/dist/components/MultiSelect/MultiSelect.d.ts.map +1 -0
  64. package/dist/components/MultiSelect/MultiSelect.types.d.ts +49 -0
  65. package/dist/components/MultiSelect/MultiSelect.types.d.ts.map +1 -0
  66. package/dist/components/MultiSelect/index.d.ts +3 -0
  67. package/dist/components/MultiSelect/index.d.ts.map +1 -0
  68. package/dist/components/Pagination/Pagination.d.ts +35 -0
  69. package/dist/components/Pagination/Pagination.d.ts.map +1 -0
  70. package/dist/components/Pagination/Pagination.types.d.ts +29 -0
  71. package/dist/components/Pagination/Pagination.types.d.ts.map +1 -0
  72. package/dist/components/Pagination/index.d.ts +3 -0
  73. package/dist/components/Pagination/index.d.ts.map +1 -0
  74. package/dist/components/PasswordInput/PasswordInput.d.ts +12 -0
  75. package/dist/components/PasswordInput/PasswordInput.d.ts.map +1 -0
  76. package/dist/components/PasswordInput/PasswordInput.types.d.ts +14 -0
  77. package/dist/components/PasswordInput/PasswordInput.types.d.ts.map +1 -0
  78. package/dist/components/PasswordInput/index.d.ts +3 -0
  79. package/dist/components/PasswordInput/index.d.ts.map +1 -0
  80. package/dist/components/Radio/Radio.d.ts +12 -0
  81. package/dist/components/Radio/Radio.d.ts.map +1 -0
  82. package/dist/components/Radio/Radio.types.d.ts +45 -0
  83. package/dist/components/Radio/Radio.types.d.ts.map +1 -0
  84. package/dist/components/Radio/RadioGroup.d.ts +23 -0
  85. package/dist/components/Radio/RadioGroup.d.ts.map +1 -0
  86. package/dist/components/Radio/index.d.ts +4 -0
  87. package/dist/components/Radio/index.d.ts.map +1 -0
  88. package/dist/components/Select/Select.d.ts +22 -0
  89. package/dist/components/Select/Select.d.ts.map +1 -0
  90. package/dist/components/Select/Select.types.d.ts +37 -0
  91. package/dist/components/Select/Select.types.d.ts.map +1 -0
  92. package/dist/components/Select/index.d.ts +3 -0
  93. package/dist/components/Select/index.d.ts.map +1 -0
  94. package/dist/components/Skeleton/Skeleton.d.ts +22 -0
  95. package/dist/components/Skeleton/Skeleton.d.ts.map +1 -0
  96. package/dist/components/Skeleton/Skeleton.types.d.ts +17 -0
  97. package/dist/components/Skeleton/Skeleton.types.d.ts.map +1 -0
  98. package/dist/components/Skeleton/index.d.ts +3 -0
  99. package/dist/components/Skeleton/index.d.ts.map +1 -0
  100. package/dist/components/Spinner/Spinner.d.ts +13 -0
  101. package/dist/components/Spinner/Spinner.d.ts.map +1 -0
  102. package/dist/components/Spinner/Spinner.types.d.ts +12 -0
  103. package/dist/components/Spinner/Spinner.types.d.ts.map +1 -0
  104. package/dist/components/Spinner/index.d.ts +3 -0
  105. package/dist/components/Spinner/index.d.ts.map +1 -0
  106. package/dist/components/Table/Table.d.ts +44 -0
  107. package/dist/components/Table/Table.d.ts.map +1 -0
  108. package/dist/components/Table/Table.types.d.ts +33 -0
  109. package/dist/components/Table/Table.types.d.ts.map +1 -0
  110. package/dist/components/Table/index.d.ts +3 -0
  111. package/dist/components/Table/index.d.ts.map +1 -0
  112. package/dist/components/Tabs/Tabs.d.ts +43 -0
  113. package/dist/components/Tabs/Tabs.d.ts.map +1 -0
  114. package/dist/components/Tabs/Tabs.types.d.ts +38 -0
  115. package/dist/components/Tabs/Tabs.types.d.ts.map +1 -0
  116. package/dist/components/Tabs/index.d.ts +3 -0
  117. package/dist/components/Tabs/index.d.ts.map +1 -0
  118. package/dist/components/Textarea/Textarea.d.ts +13 -0
  119. package/dist/components/Textarea/Textarea.d.ts.map +1 -0
  120. package/dist/components/Textarea/Textarea.types.d.ts +20 -0
  121. package/dist/components/Textarea/Textarea.types.d.ts.map +1 -0
  122. package/dist/components/Textarea/index.d.ts +3 -0
  123. package/dist/components/Textarea/index.d.ts.map +1 -0
  124. package/dist/components/Toggle/Toggle.d.ts +20 -0
  125. package/dist/components/Toggle/Toggle.d.ts.map +1 -0
  126. package/dist/components/Toggle/Toggle.types.d.ts +20 -0
  127. package/dist/components/Toggle/Toggle.types.d.ts.map +1 -0
  128. package/dist/components/Toggle/index.d.ts +3 -0
  129. package/dist/components/Toggle/index.d.ts.map +1 -0
  130. package/dist/components/index.d.ts +21 -0
  131. package/dist/components/index.d.ts.map +1 -1
  132. package/dist/hooks/index.cjs +7 -0
  133. package/dist/hooks/index.cjs.map +1 -1
  134. package/dist/hooks/index.d.ts +6 -9
  135. package/dist/hooks/index.d.ts.map +1 -1
  136. package/dist/hooks/index.js +8 -1
  137. package/dist/hooks/index.js.map +1 -1
  138. package/dist/hooks/useDebounce.d.ts +65 -0
  139. package/dist/hooks/useDebounce.d.ts.map +1 -0
  140. package/dist/hooks/useDebounce.test.d.ts +2 -0
  141. package/dist/hooks/useDebounce.test.d.ts.map +1 -0
  142. package/dist/hooks/useSelection.d.ts +84 -0
  143. package/dist/hooks/useSelection.d.ts.map +1 -0
  144. package/dist/hooks/useSelection.test.d.ts +2 -0
  145. package/dist/hooks/useSelection.test.d.ts.map +1 -0
  146. package/dist/hooks/useTable.d.ts +91 -0
  147. package/dist/hooks/useTable.d.ts.map +1 -0
  148. package/dist/hooks/useTable.test.d.ts +2 -0
  149. package/dist/hooks/useTable.test.d.ts.map +1 -0
  150. package/dist/index.cjs +9451 -11
  151. package/dist/index.cjs.map +1 -1
  152. package/dist/index.d.ts +1 -0
  153. package/dist/index.d.ts.map +1 -1
  154. package/dist/index.js +9435 -11
  155. package/dist/index.js.map +1 -1
  156. package/dist/tailwind/colors.d.ts +28 -2
  157. package/dist/tailwind/colors.d.ts.map +1 -1
  158. package/dist/tailwind/index.cjs +33 -3
  159. package/dist/tailwind/index.cjs.map +1 -1
  160. package/dist/tailwind/index.js +33 -3
  161. package/dist/tailwind/index.js.map +1 -1
  162. package/dist/useSelection-BK6u5Ezx.js +359 -0
  163. package/dist/useSelection-BK6u5Ezx.js.map +1 -0
  164. package/dist/useSelection-DyXUWnGK.cjs +358 -0
  165. package/dist/useSelection-DyXUWnGK.cjs.map +1 -0
  166. package/package.json +4 -1
@@ -0,0 +1,13 @@
1
+ import type { BadgeProps } from './Badge.types';
2
+ /**
3
+ * Badge component for status indicators, labels, and tags.
4
+ *
5
+ * @example
6
+ * ```tsx
7
+ * <Badge variant="success">Active</Badge>
8
+ * <Badge variant="error" size="sm">Overdue</Badge>
9
+ * <Badge variant="gold">Premium</Badge>
10
+ * ```
11
+ */
12
+ export declare const Badge: import("react").ForwardRefExoticComponent<BadgeProps & import("react").RefAttributes<HTMLSpanElement>>;
13
+ //# sourceMappingURL=Badge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../../src/components/Badge/Badge.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAA2B,MAAM,eAAe,CAAC;AAmCzE;;;;;;;;;GASG;AACH,eAAO,MAAM,KAAK,wGAiBjB,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { HTMLAttributes, ReactNode } from 'react';
2
+ export type BadgeVariant = 'default' | 'success' | 'warning' | 'error' | 'info' | 'gold';
3
+ export type BadgeSize = 'sm' | 'md' | 'lg';
4
+ export interface BadgeProps extends HTMLAttributes<HTMLSpanElement> {
5
+ /** Badge variant/color scheme */
6
+ variant?: BadgeVariant;
7
+ /** Badge size */
8
+ size?: BadgeSize;
9
+ /** Badge content */
10
+ children: ReactNode;
11
+ }
12
+ //# sourceMappingURL=Badge.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Badge.types.d.ts","sourceRoot":"","sources":["../../../src/components/Badge/Badge.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvD,MAAM,MAAM,YAAY,GACpB,SAAS,GACT,SAAS,GACT,SAAS,GACT,OAAO,GACP,MAAM,GACN,MAAM,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE3C,MAAM,WAAW,UAAW,SAAQ,cAAc,CAAC,eAAe,CAAC;IACjE,iCAAiC;IACjC,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,iBAAiB;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,oBAAoB;IACpB,QAAQ,EAAE,SAAS,CAAC;CACrB"}
@@ -0,0 +1,3 @@
1
+ export { Badge } from './Badge';
2
+ export type { BadgeProps, BadgeVariant, BadgeSize } from './Badge.types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Badge/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { BreadcrumbsProps } from './Breadcrumbs.types';
2
+ /**
3
+ * Breadcrumbs component for navigation hierarchy.
4
+ *
5
+ * @example
6
+ * ```tsx
7
+ * <Breadcrumbs
8
+ * items={[
9
+ * { label: 'Home', href: '/' },
10
+ * { label: 'Clients', href: '/clients' },
11
+ * { label: 'John Smith', href: '/clients/123' },
12
+ * { label: 'Notes' },
13
+ * ]}
14
+ * />
15
+ * ```
16
+ */
17
+ export declare const Breadcrumbs: import("react").ForwardRefExoticComponent<BreadcrumbsProps & import("react").RefAttributes<HTMLElement>>;
18
+ //# sourceMappingURL=Breadcrumbs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Breadcrumbs.d.ts","sourceRoot":"","sources":["../../../src/components/Breadcrumbs/Breadcrumbs.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAkB,MAAM,qBAAqB,CAAC;AAkD5E;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,WAAW,0GA4GvB,CAAC"}
@@ -0,0 +1,20 @@
1
+ import type { HTMLAttributes, ReactNode } from 'react';
2
+ export interface BreadcrumbItem {
3
+ /** Display label */
4
+ label: string;
5
+ /** URL/path for navigation (omit for current page) */
6
+ href?: string;
7
+ /** Optional icon before label */
8
+ icon?: ReactNode;
9
+ }
10
+ export interface BreadcrumbsProps extends HTMLAttributes<HTMLElement> {
11
+ /** Breadcrumb items */
12
+ items: BreadcrumbItem[];
13
+ /** Separator between items (default: /) */
14
+ separator?: ReactNode;
15
+ /** Maximum items to show before collapsing (0 = no collapse) */
16
+ maxItems?: number;
17
+ /** Render function for links (for custom routing) */
18
+ renderLink?: (item: BreadcrumbItem, children: ReactNode) => ReactNode;
19
+ }
20
+ //# sourceMappingURL=Breadcrumbs.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Breadcrumbs.types.d.ts","sourceRoot":"","sources":["../../../src/components/Breadcrumbs/Breadcrumbs.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvD,MAAM,WAAW,cAAc;IAC7B,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,sDAAsD;IACtD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB;AAED,MAAM,WAAW,gBAAiB,SAAQ,cAAc,CAAC,WAAW,CAAC;IACnE,uBAAuB;IACvB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,2CAA2C;IAC3C,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qDAAqD;IACrD,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,KAAK,SAAS,CAAC;CACvE"}
@@ -0,0 +1,3 @@
1
+ export { Breadcrumbs } from './Breadcrumbs';
2
+ export type { BreadcrumbsProps, BreadcrumbItem } from './Breadcrumbs.types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Breadcrumbs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/Button/Button.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAA6B,MAAM,gBAAgB,CAAC;AAmB7E;;;;;;;;;GASG;AACH,eAAO,MAAM,MAAM,2GAwElB,CAAC"}
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/Button/Button.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAA6B,MAAM,gBAAgB,CAAC;AAiD7E;;;;;;;;;GASG;AACH,eAAO,MAAM,MAAM,2GAyElB,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { CardProps } from './Card.types';
2
+ /**
3
+ * Card component for containing related content.
4
+ *
5
+ * @example
6
+ * ```tsx
7
+ * <Card>
8
+ * <h3>Card Title</h3>
9
+ * <p>Card content goes here.</p>
10
+ * </Card>
11
+ *
12
+ * <Card variant="gold-accent" hoverable>
13
+ * <p>Clickable card with gold accent</p>
14
+ * </Card>
15
+ * ```
16
+ */
17
+ export declare const Card: import("react").ForwardRefExoticComponent<CardProps & import("react").RefAttributes<HTMLDivElement>>;
18
+ //# sourceMappingURL=Card.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../src/components/Card/Card.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAA4B,MAAM,cAAc,CAAC;AA8BxE;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,IAAI,sGAwChB,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { HTMLAttributes, ReactNode } from 'react';
2
+ export type CardPadding = 'none' | 'sm' | 'md' | 'lg';
3
+ export type CardVariant = 'default' | 'bordered' | 'elevated' | 'gold-accent';
4
+ export interface CardProps extends HTMLAttributes<HTMLDivElement> {
5
+ /** Card padding: none, sm (16px), md (24px), lg (32px) */
6
+ padding?: CardPadding;
7
+ /** Card styling variant */
8
+ variant?: CardVariant;
9
+ /** Enable hover effect with shadow and gold border */
10
+ hoverable?: boolean;
11
+ /** Card content */
12
+ children: ReactNode;
13
+ }
14
+ //# sourceMappingURL=Card.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Card.types.d.ts","sourceRoot":"","sources":["../../../src/components/Card/Card.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvD,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AACtD,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,aAAa,CAAC;AAE9E,MAAM,WAAW,SAAU,SAAQ,cAAc,CAAC,cAAc,CAAC;IAC/D,0DAA0D;IAC1D,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,2BAA2B;IAC3B,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,sDAAsD;IACtD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,mBAAmB;IACnB,QAAQ,EAAE,SAAS,CAAC;CACrB"}
@@ -0,0 +1,3 @@
1
+ export { Card } from './Card';
2
+ export type { CardProps, CardPadding, CardVariant } from './Card.types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Card/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,13 @@
1
+ import type { CheckboxProps } from './Checkbox.types';
2
+ /**
3
+ * Checkbox component with label, error states, and indeterminate support.
4
+ *
5
+ * @example
6
+ * ```tsx
7
+ * <Checkbox label="Accept terms" checked={accepted} onChange={setAccepted} />
8
+ * <Checkbox label="Select all" indeterminate={someSelected} />
9
+ * <Checkbox label="Option" size="sm" />
10
+ * ```
11
+ */
12
+ export declare const Checkbox: import("react").ForwardRefExoticComponent<CheckboxProps & import("react").RefAttributes<HTMLInputElement>>;
13
+ //# sourceMappingURL=Checkbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../src/components/Checkbox/Checkbox.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAgB,MAAM,kBAAkB,CAAC;AAepE;;;;;;;;;GASG;AACH,eAAO,MAAM,QAAQ,4GAqHpB,CAAC"}
@@ -0,0 +1,19 @@
1
+ import type { InputHTMLAttributes } from 'react';
2
+ export type CheckboxSize = 'sm' | 'md' | 'lg';
3
+ export interface CheckboxProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'onChange' | 'size'> {
4
+ /** Checkbox label */
5
+ label?: string;
6
+ /** Controlled checked state */
7
+ checked?: boolean;
8
+ /** Callback when checked state changes */
9
+ onChange?: (checked: boolean) => void;
10
+ /** Checkbox size */
11
+ size?: CheckboxSize;
12
+ /** Error message to display */
13
+ error?: string;
14
+ /** Helper text to display */
15
+ helperText?: string;
16
+ /** Indeterminate state (partial selection) */
17
+ indeterminate?: boolean;
18
+ }
19
+ //# sourceMappingURL=Checkbox.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Checkbox.types.d.ts","sourceRoot":"","sources":["../../../src/components/Checkbox/Checkbox.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAEjD,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE9C,MAAM,WAAW,aACf,SAAQ,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;IACjF,qBAAqB;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+BAA+B;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,oBAAoB;IACpB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,+BAA+B;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6BAA6B;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8CAA8C;IAC9C,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB"}
@@ -0,0 +1,3 @@
1
+ export { Checkbox } from './Checkbox';
2
+ export type { CheckboxProps, CheckboxSize } from './Checkbox.types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Checkbox/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,24 @@
1
+ import type { ComboboxProps } from './Combobox.types';
2
+ /**
3
+ * Combobox component for searchable selection.
4
+ * Built on Headless UI Combobox for accessibility.
5
+ *
6
+ * @example
7
+ * ```tsx
8
+ * <Combobox
9
+ * label="Select Client"
10
+ * options={[
11
+ * { value: '1', label: 'John Doe' },
12
+ * { value: '2', label: 'Jane Smith' },
13
+ * ]}
14
+ * value={selectedClient}
15
+ * onChange={setSelectedClient}
16
+ * placeholder="Search clients..."
17
+ * />
18
+ * ```
19
+ */
20
+ export declare function Combobox({ options, value, onChange, placeholder, label, error, helperText, disabled, required, fullWidth, className, isLoading, loadingText, emptyText, onSearch, }: ComboboxProps): import("react/jsx-runtime").JSX.Element;
21
+ export declare namespace Combobox {
22
+ var displayName: string;
23
+ }
24
+ //# sourceMappingURL=Combobox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Combobox.d.ts","sourceRoot":"","sources":["../../../src/components/Combobox/Combobox.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAkCtD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,QAAQ,CAAC,EACvB,OAAO,EACP,KAAK,EACL,QAAQ,EACR,WAAyB,EACzB,KAAK,EACL,KAAK,EACL,UAAU,EACV,QAAgB,EAChB,QAAgB,EAChB,SAAiB,EACjB,SAAS,EACT,SAAiB,EACjB,WAA0B,EAC1B,SAA8B,EAC9B,QAAQ,GACT,EAAE,aAAa,2CAsJf;yBAtKe,QAAQ"}
@@ -0,0 +1,41 @@
1
+ export interface ComboboxOption {
2
+ /** Option value */
3
+ value: string;
4
+ /** Option display label */
5
+ label: string;
6
+ /** Disable this option */
7
+ disabled?: boolean;
8
+ }
9
+ export interface ComboboxProps {
10
+ /** Available options */
11
+ options: ComboboxOption[];
12
+ /** Currently selected value */
13
+ value?: string | null;
14
+ /** Callback when selection changes */
15
+ onChange?: (value: string | null) => void;
16
+ /** Placeholder text when no selection */
17
+ placeholder?: string;
18
+ /** Field label */
19
+ label?: string;
20
+ /** Error message */
21
+ error?: string;
22
+ /** Helper text */
23
+ helperText?: string;
24
+ /** Disabled state */
25
+ disabled?: boolean;
26
+ /** Required field indicator */
27
+ required?: boolean;
28
+ /** Full width mode */
29
+ fullWidth?: boolean;
30
+ /** Additional class name */
31
+ className?: string;
32
+ /** Shows loading spinner and disables combobox */
33
+ isLoading?: boolean;
34
+ /** Text to show while loading (default: "Loading...") */
35
+ loadingText?: string;
36
+ /** Text to show when no results (default: "No results found") */
37
+ emptyText?: string;
38
+ /** Callback for server-side search (called when query changes) */
39
+ onSearch?: (query: string) => void;
40
+ }
41
+ //# sourceMappingURL=Combobox.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Combobox.types.d.ts","sourceRoot":"","sources":["../../../src/components/Combobox/Combobox.types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,mBAAmB;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,wBAAwB;IACxB,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,+BAA+B;IAC/B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,sCAAsC;IACtC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC1C,yCAAyC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oBAAoB;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kBAAkB;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qBAAqB;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,sBAAsB;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kDAAkD;IAClD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,yDAAyD;IACzD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iEAAiE;IACjE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC"}
@@ -0,0 +1,3 @@
1
+ export { Combobox } from './Combobox';
2
+ export type { ComboboxProps, ComboboxOption } from './Combobox.types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Combobox/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,23 @@
1
+ import type { ConfirmDialogProps } from './ConfirmDialog.types';
2
+ /**
3
+ * ConfirmDialog component for confirmation prompts.
4
+ * Built on Modal for consistent styling and accessibility.
5
+ *
6
+ * @example
7
+ * ```tsx
8
+ * <ConfirmDialog
9
+ * isOpen={isOpen}
10
+ * onClose={() => setIsOpen(false)}
11
+ * onConfirm={handleDelete}
12
+ * title="Delete this note?"
13
+ * description="This will permanently delete the note. This action cannot be undone."
14
+ * variant="destructive"
15
+ * confirmText="Delete"
16
+ * />
17
+ * ```
18
+ */
19
+ export declare function ConfirmDialog({ isOpen, onClose, onConfirm, title, description, variant, cancelText, confirmText, loading, }: ConfirmDialogProps): import("react/jsx-runtime").JSX.Element;
20
+ export declare namespace ConfirmDialog {
21
+ var displayName: string;
22
+ }
23
+ //# sourceMappingURL=ConfirmDialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfirmDialog.d.ts","sourceRoot":"","sources":["../../../src/components/ConfirmDialog/ConfirmDialog.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAwB,MAAM,uBAAuB,CAAC;AAUtF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,aAAa,CAAC,EAC5B,MAAM,EACN,OAAO,EACP,SAAS,EACT,KAAK,EACL,WAAW,EACX,OAAmB,EACnB,UAAqB,EACrB,WAAuB,EACvB,OAAe,GAChB,EAAE,kBAAkB,2CAoCpB;yBA9Ce,aAAa"}
@@ -0,0 +1,22 @@
1
+ export type ConfirmDialogVariant = 'destructive' | 'neutral' | 'caution';
2
+ export interface ConfirmDialogProps {
3
+ /** Controls whether the dialog is open */
4
+ isOpen: boolean;
5
+ /** Callback when the dialog should close */
6
+ onClose: () => void;
7
+ /** Callback when user confirms the action */
8
+ onConfirm: () => void;
9
+ /** Dialog title - should be a clear question (e.g., "Delete this note?") */
10
+ title: string;
11
+ /** Description explaining consequences of the action */
12
+ description?: string;
13
+ /** Dialog variant affecting confirm button styling */
14
+ variant?: ConfirmDialogVariant;
15
+ /** Text for cancel button */
16
+ cancelText?: string;
17
+ /** Text for confirm button - should be action verb (e.g., "Delete", "Save") */
18
+ confirmText?: string;
19
+ /** Loading state for confirm button */
20
+ loading?: boolean;
21
+ }
22
+ //# sourceMappingURL=ConfirmDialog.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfirmDialog.types.d.ts","sourceRoot":"","sources":["../../../src/components/ConfirmDialog/ConfirmDialog.types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,oBAAoB,GAAG,aAAa,GAAG,SAAS,GAAG,SAAS,CAAC;AAEzE,MAAM,WAAW,kBAAkB;IACjC,0CAA0C;IAC1C,MAAM,EAAE,OAAO,CAAC;IAChB,4CAA4C;IAC5C,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,6CAA6C;IAC7C,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,4EAA4E;IAC5E,KAAK,EAAE,MAAM,CAAC;IACd,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sDAAsD;IACtD,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,6BAA6B;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+EAA+E;IAC/E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uCAAuC;IACvC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB"}
@@ -0,0 +1,3 @@
1
+ export { ConfirmDialog } from './ConfirmDialog';
2
+ export type { ConfirmDialogProps, ConfirmDialogVariant } from './ConfirmDialog.types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ConfirmDialog/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,27 @@
1
+ import type { DrawerProps } from './Drawer.types';
2
+ /**
3
+ * Drawer component for slide-in panels without losing page context.
4
+ * Built on Headless UI Dialog for accessibility.
5
+ *
6
+ * @example
7
+ * ```tsx
8
+ * <Drawer
9
+ * isOpen={isOpen}
10
+ * onClose={() => setIsOpen(false)}
11
+ * title="New Client"
12
+ * footer={
13
+ * <div className="flex justify-end gap-3">
14
+ * <Button variant="secondary" onClick={() => setIsOpen(false)}>Cancel</Button>
15
+ * <Button onClick={handleSave}>Save</Button>
16
+ * </div>
17
+ * }
18
+ * >
19
+ * <form>...</form>
20
+ * </Drawer>
21
+ * ```
22
+ */
23
+ export declare function Drawer({ isOpen, onClose, title, children, size, showCloseButton, footer, className, isLoading, }: DrawerProps): import("react/jsx-runtime").JSX.Element;
24
+ export declare namespace Drawer {
25
+ var displayName: string;
26
+ }
27
+ //# sourceMappingURL=Drawer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Drawer.d.ts","sourceRoot":"","sources":["../../../src/components/Drawer/Drawer.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAc,MAAM,gBAAgB,CAAC;AA2B9D;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,MAAM,CAAC,EACrB,MAAM,EACN,OAAO,EACP,KAAK,EACL,QAAQ,EACR,IAAW,EACX,eAAsB,EACtB,MAAM,EACN,SAAS,EACT,SAAiB,GAClB,EAAE,WAAW,2CAmGb;yBA7Ge,MAAM"}
@@ -0,0 +1,23 @@
1
+ import type { ReactNode } from 'react';
2
+ export type DrawerSize = 'sm' | 'md' | 'lg';
3
+ export interface DrawerProps {
4
+ /** Controls whether the drawer is open */
5
+ isOpen: boolean;
6
+ /** Callback when the drawer should close */
7
+ onClose: () => void;
8
+ /** Drawer title displayed in header */
9
+ title?: string;
10
+ /** Drawer content (scrollable) */
11
+ children: ReactNode;
12
+ /** Drawer size: sm (400px), md (560px), lg (720px) */
13
+ size?: DrawerSize;
14
+ /** Show close button in header */
15
+ showCloseButton?: boolean;
16
+ /** Footer content (typically action buttons) */
17
+ footer?: ReactNode;
18
+ /** Additional class name for the drawer panel */
19
+ className?: string;
20
+ /** Shows loading spinner overlay on content */
21
+ isLoading?: boolean;
22
+ }
23
+ //# sourceMappingURL=Drawer.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Drawer.types.d.ts","sourceRoot":"","sources":["../../../src/components/Drawer/Drawer.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE5C,MAAM,WAAW,WAAW;IAC1B,0CAA0C;IAC1C,MAAM,EAAE,OAAO,CAAC;IAChB,4CAA4C;IAC5C,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,uCAAuC;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,QAAQ,EAAE,SAAS,CAAC;IACpB,sDAAsD;IACtD,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,kCAAkC;IAClC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gDAAgD;IAChD,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB"}
@@ -0,0 +1,3 @@
1
+ export { Drawer } from './Drawer';
2
+ export type { DrawerProps, DrawerSize } from './Drawer.types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Drawer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,34 @@
1
+ import type { EmptyStateProps } from './EmptyState.types';
2
+ /**
3
+ * EmptyState component for displaying empty, no-results, or error states.
4
+ * Commonly used in tables, lists, and search results.
5
+ *
6
+ * @example
7
+ * ```tsx
8
+ * // No data state
9
+ * <EmptyState
10
+ * type="no-data"
11
+ * title="No clients yet"
12
+ * description="Get started by adding your first client."
13
+ * action={<Button>Add Client</Button>}
14
+ * />
15
+ *
16
+ * // No search results
17
+ * <EmptyState
18
+ * type="no-results"
19
+ * title="No matching results"
20
+ * description="Try adjusting your search or filters."
21
+ * action={<Button variant="ghost" onClick={clearFilters}>Clear filters</Button>}
22
+ * />
23
+ *
24
+ * // Error state
25
+ * <EmptyState
26
+ * type="error"
27
+ * title="Something went wrong"
28
+ * description="We couldn't load the data. Please try again."
29
+ * action={<Button onClick={retry}>Retry</Button>}
30
+ * />
31
+ * ```
32
+ */
33
+ export declare const EmptyState: import("react").ForwardRefExoticComponent<EmptyStateProps & import("react").RefAttributes<HTMLDivElement>>;
34
+ //# sourceMappingURL=EmptyState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmptyState.d.ts","sourceRoot":"","sources":["../../../src/components/EmptyState/EmptyState.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAkB,MAAM,oBAAoB,CAAC;AAiF1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,UAAU,4GAqDtB,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { HTMLAttributes, ReactNode } from 'react';
2
+ export type EmptyStateType = 'no-data' | 'no-results' | 'error';
3
+ export interface EmptyStateProps extends HTMLAttributes<HTMLDivElement> {
4
+ /** Type of empty state */
5
+ type?: EmptyStateType;
6
+ /** Title text */
7
+ title: string;
8
+ /** Description text */
9
+ description?: string;
10
+ /** Custom icon (overrides default type icon) */
11
+ icon?: ReactNode;
12
+ /** Action button or link */
13
+ action?: ReactNode;
14
+ /** Size variant */
15
+ size?: 'sm' | 'md' | 'lg';
16
+ }
17
+ //# sourceMappingURL=EmptyState.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmptyState.types.d.ts","sourceRoot":"","sources":["../../../src/components/EmptyState/EmptyState.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvD,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,YAAY,GAAG,OAAO,CAAC;AAEhE,MAAM,WAAW,eAAgB,SAAQ,cAAc,CAAC,cAAc,CAAC;IACrE,0BAA0B;IAC1B,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,uBAAuB;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gDAAgD;IAChD,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,4BAA4B;IAC5B,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,mBAAmB;IACnB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;CAC3B"}
@@ -0,0 +1,3 @@
1
+ export { EmptyState } from './EmptyState';
2
+ export type { EmptyStateProps, EmptyStateType } from './EmptyState.types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/EmptyState/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,13 @@
1
+ import type { InputProps } from './Input.types';
2
+ /**
3
+ * Input component with label, error states, icons, and helper text.
4
+ *
5
+ * @example
6
+ * ```tsx
7
+ * <Input label="Email" placeholder="you@example.com" />
8
+ * <Input label="Search" leftIcon={<SearchIcon />} />
9
+ * <Input label="Password" error="Password is required" />
10
+ * ```
11
+ */
12
+ export declare const Input: import("react").ForwardRefExoticComponent<InputProps & import("react").RefAttributes<HTMLInputElement>>;
13
+ //# sourceMappingURL=Input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../src/components/Input/Input.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD;;;;;;;;;GASG;AACH,eAAO,MAAM,KAAK,yGAgGjB,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { InputHTMLAttributes, ReactNode } from 'react';
2
+ export interface InputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size'> {
3
+ /** Input label displayed above the field */
4
+ label?: string;
5
+ /** Error message - displays in red below the field */
6
+ error?: string;
7
+ /** Helper text - displays below the field (hidden when error is present) */
8
+ helperText?: string;
9
+ /** Icon displayed on the left side of the input */
10
+ leftIcon?: ReactNode;
11
+ /** Icon displayed on the right side of the input */
12
+ rightIcon?: ReactNode;
13
+ /** Makes input take full width of container */
14
+ fullWidth?: boolean;
15
+ /** Shows loading spinner in right position */
16
+ isLoading?: boolean;
17
+ }
18
+ //# sourceMappingURL=Input.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Input.types.d.ts","sourceRoot":"","sources":["../../../src/components/Input/Input.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAE5D,MAAM,WAAW,UACf,SAAQ,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC3D,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sDAAsD;IACtD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4EAA4E;IAC5E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,oDAAoD;IACpD,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,+CAA+C;IAC/C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,8CAA8C;IAC9C,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB"}
@@ -0,0 +1,3 @@
1
+ export { Input } from './Input';
2
+ export type { InputProps } from './Input.types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Input/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,28 @@
1
+ import type { ModalProps } from './Modal.types';
2
+ /**
3
+ * Modal component for focused tasks requiring attention.
4
+ * Built on Headless UI Dialog for accessibility.
5
+ *
6
+ * @example
7
+ * ```tsx
8
+ * <Modal
9
+ * isOpen={isOpen}
10
+ * onClose={() => setIsOpen(false)}
11
+ * title="Delete Note?"
12
+ * description="This action cannot be undone."
13
+ * footer={
14
+ * <div className="flex justify-end gap-3">
15
+ * <Button variant="secondary" onClick={() => setIsOpen(false)}>Cancel</Button>
16
+ * <Button variant="danger" onClick={handleDelete}>Delete</Button>
17
+ * </div>
18
+ * }
19
+ * >
20
+ * <p>Are you sure you want to delete this note?</p>
21
+ * </Modal>
22
+ * ```
23
+ */
24
+ export declare function Modal({ isOpen, onClose, title, description, children, size, showCloseButton, footer, closeOnOverlay, className, isLoading, }: ModalProps): import("react/jsx-runtime").JSX.Element;
25
+ export declare namespace Modal {
26
+ var displayName: string;
27
+ }
28
+ //# sourceMappingURL=Modal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Modal.d.ts","sourceRoot":"","sources":["../../../src/components/Modal/Modal.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,UAAU,EAAa,MAAM,eAAe,CAAC;AA2B3D;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,KAAK,CAAC,EACpB,MAAM,EACN,OAAO,EACP,KAAK,EACL,WAAW,EACX,QAAQ,EACR,IAAW,EACX,eAAsB,EACtB,MAAM,EACN,cAAqB,EACrB,SAAS,EACT,SAAiB,GAClB,EAAE,UAAU,2CA+GZ;yBA3He,KAAK"}
@@ -0,0 +1,27 @@
1
+ import type { ReactNode } from 'react';
2
+ export type ModalSize = 'sm' | 'md' | 'lg';
3
+ export interface ModalProps {
4
+ /** Controls whether the modal is open */
5
+ isOpen: boolean;
6
+ /** Callback when the modal should close */
7
+ onClose: () => void;
8
+ /** Modal title displayed in header */
9
+ title?: string;
10
+ /** Description text displayed below title */
11
+ description?: string;
12
+ /** Modal content */
13
+ children?: ReactNode;
14
+ /** Modal size: sm (400px), md (560px), lg (720px) */
15
+ size?: ModalSize;
16
+ /** Show close button in header */
17
+ showCloseButton?: boolean;
18
+ /** Footer content (typically action buttons) */
19
+ footer?: ReactNode;
20
+ /** Allow closing by clicking overlay */
21
+ closeOnOverlay?: boolean;
22
+ /** Additional class name for the modal panel */
23
+ className?: string;
24
+ /** Shows loading spinner overlay on content */
25
+ isLoading?: boolean;
26
+ }
27
+ //# sourceMappingURL=Modal.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Modal.types.d.ts","sourceRoot":"","sources":["../../../src/components/Modal/Modal.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE3C,MAAM,WAAW,UAAU;IACzB,yCAAyC;IACzC,MAAM,EAAE,OAAO,CAAC;IAChB,2CAA2C;IAC3C,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,sCAAsC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB;IACpB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,qDAAqD;IACrD,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,kCAAkC;IAClC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gDAAgD;IAChD,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,wCAAwC;IACxC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB"}