@donotdev/expo 0.0.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 (261) hide show
  1. package/dist/__tests__/components/atomic.test.d.ts +10 -0
  2. package/dist/__tests__/components/atomic.test.d.ts.map +1 -0
  3. package/dist/__tests__/providers/ExpoAppProviders.test.d.ts +10 -0
  4. package/dist/__tests__/providers/ExpoAppProviders.test.d.ts.map +1 -0
  5. package/dist/__tests__/setup.d.ts +10 -0
  6. package/dist/__tests__/setup.d.ts.map +1 -0
  7. package/dist/__tests__/test-utils.d.ts +22 -0
  8. package/dist/__tests__/test-utils.d.ts.map +1 -0
  9. package/dist/atomic/Accordion/index.d.ts +65 -0
  10. package/dist/atomic/Accordion/index.d.ts.map +1 -0
  11. package/dist/atomic/Alert/index.d.ts +69 -0
  12. package/dist/atomic/Alert/index.d.ts.map +1 -0
  13. package/dist/atomic/AlertDialog/index.d.ts +83 -0
  14. package/dist/atomic/AlertDialog/index.d.ts.map +1 -0
  15. package/dist/atomic/Avatar/index.d.ts +53 -0
  16. package/dist/atomic/Avatar/index.d.ts.map +1 -0
  17. package/dist/atomic/Badge/index.d.ts +61 -0
  18. package/dist/atomic/Badge/index.d.ts.map +1 -0
  19. package/dist/atomic/Blockquote/index.d.ts +70 -0
  20. package/dist/atomic/Blockquote/index.d.ts.map +1 -0
  21. package/dist/atomic/Button/index.d.ts +117 -0
  22. package/dist/atomic/Button/index.d.ts.map +1 -0
  23. package/dist/atomic/Calendar/index.d.ts +55 -0
  24. package/dist/atomic/Calendar/index.d.ts.map +1 -0
  25. package/dist/atomic/CallToAction/index.d.ts +56 -0
  26. package/dist/atomic/CallToAction/index.d.ts.map +1 -0
  27. package/dist/atomic/Card/index.d.ts +102 -0
  28. package/dist/atomic/Card/index.d.ts.map +1 -0
  29. package/dist/atomic/Checkbox/index.d.ts +79 -0
  30. package/dist/atomic/Checkbox/index.d.ts.map +1 -0
  31. package/dist/atomic/Collapsible/index.d.ts +56 -0
  32. package/dist/atomic/Collapsible/index.d.ts.map +1 -0
  33. package/dist/atomic/Combobox/index.d.ts +137 -0
  34. package/dist/atomic/Combobox/index.d.ts.map +1 -0
  35. package/dist/atomic/Command/index.d.ts +94 -0
  36. package/dist/atomic/Command/index.d.ts.map +1 -0
  37. package/dist/atomic/CommandDialog/index.d.ts +62 -0
  38. package/dist/atomic/CommandDialog/index.d.ts.map +1 -0
  39. package/dist/atomic/ContextMenu/index.d.ts +60 -0
  40. package/dist/atomic/ContextMenu/index.d.ts.map +1 -0
  41. package/dist/atomic/CopyToClipboard/index.d.ts +78 -0
  42. package/dist/atomic/CopyToClipboard/index.d.ts.map +1 -0
  43. package/dist/atomic/DescriptionList/index.d.ts +60 -0
  44. package/dist/atomic/DescriptionList/index.d.ts.map +1 -0
  45. package/dist/atomic/Dialog/index.d.ts +105 -0
  46. package/dist/atomic/Dialog/index.d.ts.map +1 -0
  47. package/dist/atomic/DropdownMenu/index.d.ts +85 -0
  48. package/dist/atomic/DropdownMenu/index.d.ts.map +1 -0
  49. package/dist/atomic/DualCard/index.d.ts +101 -0
  50. package/dist/atomic/DualCard/index.d.ts.map +1 -0
  51. package/dist/atomic/FeatureFallback/index.d.ts +75 -0
  52. package/dist/atomic/FeatureFallback/index.d.ts.map +1 -0
  53. package/dist/atomic/FileButton/index.d.ts +55 -0
  54. package/dist/atomic/FileButton/index.d.ts.map +1 -0
  55. package/dist/atomic/Grid/index.d.ts +93 -0
  56. package/dist/atomic/Grid/index.d.ts.map +1 -0
  57. package/dist/atomic/HeroSection/index.d.ts +72 -0
  58. package/dist/atomic/HeroSection/index.d.ts.map +1 -0
  59. package/dist/atomic/HoverCard/index.d.ts +70 -0
  60. package/dist/atomic/HoverCard/index.d.ts.map +1 -0
  61. package/dist/atomic/Icons/index.d.ts +55 -0
  62. package/dist/atomic/Icons/index.d.ts.map +1 -0
  63. package/dist/atomic/InfiniteScroll/index.d.ts +62 -0
  64. package/dist/atomic/InfiniteScroll/index.d.ts.map +1 -0
  65. package/dist/atomic/Input/index.d.ts +100 -0
  66. package/dist/atomic/Input/index.d.ts.map +1 -0
  67. package/dist/atomic/Label/index.d.ts +49 -0
  68. package/dist/atomic/Label/index.d.ts.map +1 -0
  69. package/dist/atomic/List/index.d.ts +62 -0
  70. package/dist/atomic/List/index.d.ts.map +1 -0
  71. package/dist/atomic/NavigationMenu/index.d.ts +81 -0
  72. package/dist/atomic/NavigationMenu/index.d.ts.map +1 -0
  73. package/dist/atomic/Pagination/index.d.ts +86 -0
  74. package/dist/atomic/Pagination/index.d.ts.map +1 -0
  75. package/dist/atomic/PasswordInput/index.d.ts +95 -0
  76. package/dist/atomic/PasswordInput/index.d.ts.map +1 -0
  77. package/dist/atomic/Popover/index.d.ts +98 -0
  78. package/dist/atomic/Popover/index.d.ts.map +1 -0
  79. package/dist/atomic/Portal/index.d.ts +41 -0
  80. package/dist/atomic/Portal/index.d.ts.map +1 -0
  81. package/dist/atomic/PortalButton/index.d.ts +54 -0
  82. package/dist/atomic/PortalButton/index.d.ts.map +1 -0
  83. package/dist/atomic/Progress/index.d.ts +59 -0
  84. package/dist/atomic/Progress/index.d.ts.map +1 -0
  85. package/dist/atomic/RadioGroup/index.d.ts +91 -0
  86. package/dist/atomic/RadioGroup/index.d.ts.map +1 -0
  87. package/dist/atomic/RangeInput/index.d.ts +117 -0
  88. package/dist/atomic/RangeInput/index.d.ts.map +1 -0
  89. package/dist/atomic/Rating/index.d.ts +74 -0
  90. package/dist/atomic/Rating/index.d.ts.map +1 -0
  91. package/dist/atomic/ScrollArea/index.d.ts +59 -0
  92. package/dist/atomic/ScrollArea/index.d.ts.map +1 -0
  93. package/dist/atomic/Section/index.d.ts +83 -0
  94. package/dist/atomic/Section/index.d.ts.map +1 -0
  95. package/dist/atomic/Select/index.d.ts +116 -0
  96. package/dist/atomic/Select/index.d.ts.map +1 -0
  97. package/dist/atomic/Separator/index.d.ts +58 -0
  98. package/dist/atomic/Separator/index.d.ts.map +1 -0
  99. package/dist/atomic/Sheet/index.d.ts +106 -0
  100. package/dist/atomic/Sheet/index.d.ts.map +1 -0
  101. package/dist/atomic/Skeleton/index.d.ts +59 -0
  102. package/dist/atomic/Skeleton/index.d.ts.map +1 -0
  103. package/dist/atomic/Slider/index.d.ts +101 -0
  104. package/dist/atomic/Slider/index.d.ts.map +1 -0
  105. package/dist/atomic/Slot/index.d.ts +28 -0
  106. package/dist/atomic/Slot/index.d.ts.map +1 -0
  107. package/dist/atomic/Spinner/index.d.ts +52 -0
  108. package/dist/atomic/Spinner/index.d.ts.map +1 -0
  109. package/dist/atomic/Stack/index.d.ts +123 -0
  110. package/dist/atomic/Stack/index.d.ts.map +1 -0
  111. package/dist/atomic/Stepper/index.d.ts +102 -0
  112. package/dist/atomic/Stepper/index.d.ts.map +1 -0
  113. package/dist/atomic/Switch/index.d.ts +88 -0
  114. package/dist/atomic/Switch/index.d.ts.map +1 -0
  115. package/dist/atomic/Table/index.d.ts +107 -0
  116. package/dist/atomic/Table/index.d.ts.map +1 -0
  117. package/dist/atomic/Tabs/index.d.ts +91 -0
  118. package/dist/atomic/Tabs/index.d.ts.map +1 -0
  119. package/dist/atomic/Tag/index.d.ts +78 -0
  120. package/dist/atomic/Tag/index.d.ts.map +1 -0
  121. package/dist/atomic/Text/index.d.ts +81 -0
  122. package/dist/atomic/Text/index.d.ts.map +1 -0
  123. package/dist/atomic/Textarea/index.d.ts +66 -0
  124. package/dist/atomic/Textarea/index.d.ts.map +1 -0
  125. package/dist/atomic/Toaster/index.d.ts +69 -0
  126. package/dist/atomic/Toaster/index.d.ts.map +1 -0
  127. package/dist/atomic/Toggle/index.d.ts +76 -0
  128. package/dist/atomic/Toggle/index.d.ts.map +1 -0
  129. package/dist/atomic/ToggleGroup/index.d.ts +82 -0
  130. package/dist/atomic/ToggleGroup/index.d.ts.map +1 -0
  131. package/dist/atomic/Tooltip/index.d.ts +68 -0
  132. package/dist/atomic/Tooltip/index.d.ts.map +1 -0
  133. package/dist/atomic/VideoPlayer/index.d.ts +68 -0
  134. package/dist/atomic/VideoPlayer/index.d.ts.map +1 -0
  135. package/dist/atomic/VisuallyHidden/index.d.ts +33 -0
  136. package/dist/atomic/VisuallyHidden/index.d.ts.map +1 -0
  137. package/dist/atomic/index.d.ts +146 -0
  138. package/dist/atomic/index.d.ts.map +1 -0
  139. package/dist/crud/components/DateFilter.d.ts +29 -0
  140. package/dist/crud/components/DateFilter.d.ts.map +1 -0
  141. package/dist/crud/components/DisplayFieldRenderer.d.ts +29 -0
  142. package/dist/crud/components/DisplayFieldRenderer.d.ts.map +1 -0
  143. package/dist/crud/components/EntityCardList.d.ts +25 -0
  144. package/dist/crud/components/EntityCardList.d.ts.map +1 -0
  145. package/dist/crud/components/EntityDisplayRenderer.d.ts +26 -0
  146. package/dist/crud/components/EntityDisplayRenderer.d.ts.map +1 -0
  147. package/dist/crud/components/EntityFilters.d.ts +40 -0
  148. package/dist/crud/components/EntityFilters.d.ts.map +1 -0
  149. package/dist/crud/components/EntityFormRenderer.d.ts +66 -0
  150. package/dist/crud/components/EntityFormRenderer.d.ts.map +1 -0
  151. package/dist/crud/components/EntityList.d.ts +23 -0
  152. package/dist/crud/components/EntityList.d.ts.map +1 -0
  153. package/dist/crud/components/FormFieldRenderer.d.ts +38 -0
  154. package/dist/crud/components/FormFieldRenderer.d.ts.map +1 -0
  155. package/dist/crud/components/FormLayout.d.ts +33 -0
  156. package/dist/crud/components/FormLayout.d.ts.map +1 -0
  157. package/dist/crud/components/index.d.ts +27 -0
  158. package/dist/crud/components/index.d.ts.map +1 -0
  159. package/dist/crud/contexts/UploadContext.d.ts +22 -0
  160. package/dist/crud/contexts/UploadContext.d.ts.map +1 -0
  161. package/dist/crud/forms/hooks/useEntityForm.d.ts +11 -0
  162. package/dist/crud/forms/hooks/useEntityForm.d.ts.map +1 -0
  163. package/dist/crud/hooks/useUnsavedChangesWarning.d.ts +23 -0
  164. package/dist/crud/hooks/useUnsavedChangesWarning.d.ts.map +1 -0
  165. package/dist/crud/index.d.ts +17 -0
  166. package/dist/crud/index.d.ts.map +1 -0
  167. package/dist/crud/stores/index.d.ts +11 -0
  168. package/dist/crud/stores/index.d.ts.map +1 -0
  169. package/dist/features/auth/components/AuthPartnerButton.d.ts +31 -0
  170. package/dist/features/auth/components/AuthPartnerButton.d.ts.map +1 -0
  171. package/dist/features/auth/components/ConfirmDeleteDialog.d.ts +30 -0
  172. package/dist/features/auth/components/ConfirmDeleteDialog.d.ts.map +1 -0
  173. package/dist/features/auth/components/FeatureGuard.d.ts +53 -0
  174. package/dist/features/auth/components/FeatureGuard.d.ts.map +1 -0
  175. package/dist/features/auth/components/GoogleOneTap.d.ts +19 -0
  176. package/dist/features/auth/components/GoogleOneTap.d.ts.map +1 -0
  177. package/dist/features/auth/components/LoginModal.d.ts +18 -0
  178. package/dist/features/auth/components/LoginModal.d.ts.map +1 -0
  179. package/dist/features/auth/components/MultipleAuthProviders.d.ts +37 -0
  180. package/dist/features/auth/components/MultipleAuthProviders.d.ts.map +1 -0
  181. package/dist/features/auth/components/ReauthDialog.d.ts +30 -0
  182. package/dist/features/auth/components/ReauthDialog.d.ts.map +1 -0
  183. package/dist/features/auth/components/index.d.ts +22 -0
  184. package/dist/features/auth/components/index.d.ts.map +1 -0
  185. package/dist/features/auth/hooks/index.d.ts +14 -0
  186. package/dist/features/auth/hooks/index.d.ts.map +1 -0
  187. package/dist/features/auth/hooks/useAuthState.d.ts +29 -0
  188. package/dist/features/auth/hooks/useAuthState.d.ts.map +1 -0
  189. package/dist/features/auth/hooks/useCanAccess.d.ts +25 -0
  190. package/dist/features/auth/hooks/useCanAccess.d.ts.map +1 -0
  191. package/dist/features/auth/hooks/useHasRole.d.ts +26 -0
  192. package/dist/features/auth/hooks/useHasRole.d.ts.map +1 -0
  193. package/dist/features/auth/hooks/useUserRole.d.ts +25 -0
  194. package/dist/features/auth/hooks/useUserRole.d.ts.map +1 -0
  195. package/dist/features/auth/index.d.ts +16 -0
  196. package/dist/features/auth/index.d.ts.map +1 -0
  197. package/dist/features/billing/components/ProductCard.d.ts +37 -0
  198. package/dist/features/billing/components/ProductCard.d.ts.map +1 -0
  199. package/dist/features/billing/components/SecurityNotice.d.ts +26 -0
  200. package/dist/features/billing/components/SecurityNotice.d.ts.map +1 -0
  201. package/dist/features/billing/components/StripeCheckoutButton.d.ts +41 -0
  202. package/dist/features/billing/components/StripeCheckoutButton.d.ts.map +1 -0
  203. package/dist/features/billing/components/SubscriptionManager.d.ts +29 -0
  204. package/dist/features/billing/components/SubscriptionManager.d.ts.map +1 -0
  205. package/dist/features/billing/components/index.d.ts +17 -0
  206. package/dist/features/billing/components/index.d.ts.map +1 -0
  207. package/dist/features/billing/index.d.ts +12 -0
  208. package/dist/features/billing/index.d.ts.map +1 -0
  209. package/dist/features/index.d.ts +12 -0
  210. package/dist/features/index.d.ts.map +1 -0
  211. package/dist/features/oauth/components/MultipleOAuthProviders.d.ts +42 -0
  212. package/dist/features/oauth/components/MultipleOAuthProviders.d.ts.map +1 -0
  213. package/dist/features/oauth/components/OAuthConnectionModal.d.ts +21 -0
  214. package/dist/features/oauth/components/OAuthConnectionModal.d.ts.map +1 -0
  215. package/dist/features/oauth/components/OAuthFallback.d.ts +22 -0
  216. package/dist/features/oauth/components/OAuthFallback.d.ts.map +1 -0
  217. package/dist/features/oauth/components/OAuthPartnerButton.d.ts +35 -0
  218. package/dist/features/oauth/components/OAuthPartnerButton.d.ts.map +1 -0
  219. package/dist/features/oauth/components/index.d.ts +17 -0
  220. package/dist/features/oauth/components/index.d.ts.map +1 -0
  221. package/dist/features/oauth/index.d.ts +11 -0
  222. package/dist/features/oauth/index.d.ts.map +1 -0
  223. package/dist/firebase/authPersistence.d.ts +23 -0
  224. package/dist/firebase/authPersistence.d.ts.map +1 -0
  225. package/dist/firebase/index.d.ts +10 -0
  226. package/dist/firebase/index.d.ts.map +1 -0
  227. package/dist/index.d.ts +18 -0
  228. package/dist/index.d.ts.map +1 -0
  229. package/dist/providers/ExpoAppProviders.d.ts +46 -0
  230. package/dist/providers/ExpoAppProviders.d.ts.map +1 -0
  231. package/dist/routing/components.d.ts +26 -0
  232. package/dist/routing/components.d.ts.map +1 -0
  233. package/dist/routing/hooks.d.ts +87 -0
  234. package/dist/routing/hooks.d.ts.map +1 -0
  235. package/dist/routing/index.d.ts +11 -0
  236. package/dist/routing/index.d.ts.map +1 -0
  237. package/dist/routing/utils/useFormStoreSafe.d.ts +15 -0
  238. package/dist/routing/utils/useFormStoreSafe.d.ts.map +1 -0
  239. package/dist/storage/AsyncStorageStrategy.d.ts +55 -0
  240. package/dist/storage/AsyncStorageStrategy.d.ts.map +1 -0
  241. package/dist/storage/zustandAsyncStorage.d.ts +22 -0
  242. package/dist/storage/zustandAsyncStorage.d.ts.map +1 -0
  243. package/dist/theme/ThemeProvider.d.ts +111 -0
  244. package/dist/theme/ThemeProvider.d.ts.map +1 -0
  245. package/dist/theme/index.d.ts +8 -0
  246. package/dist/theme/index.d.ts.map +1 -0
  247. package/dist/theme/tokens.d.ts +152 -0
  248. package/dist/theme/tokens.d.ts.map +1 -0
  249. package/dist/utils/constants.d.ts +73 -0
  250. package/dist/utils/constants.d.ts.map +1 -0
  251. package/dist/utils/helpers.d.ts +39 -0
  252. package/dist/utils/helpers.d.ts.map +1 -0
  253. package/dist/utils/index.d.ts +9 -0
  254. package/dist/utils/index.d.ts.map +1 -0
  255. package/dist/utils/theme-helpers.d.ts +29 -0
  256. package/dist/utils/theme-helpers.d.ts.map +1 -0
  257. package/dist/utils/useAuthSafe.d.ts +8 -0
  258. package/dist/utils/useAuthSafe.d.ts.map +1 -0
  259. package/dist/utils/variants.d.ts +25 -0
  260. package/dist/utils/variants.d.ts.map +1 -0
  261. package/package.json +85 -0
@@ -0,0 +1,95 @@
1
+ /**
2
+ * @fileoverview PasswordInput component
3
+ * @description Password input with show/hide toggle functionality
4
+ *
5
+ * @version 0.0.1
6
+ * @since 0.0.1
7
+ * @author AMBROISE PARK Consulting
8
+ */
9
+ import { type TextInputProps, type ViewStyle, type TextStyle } from 'react-native';
10
+ /**
11
+ * PasswordInput component props interface
12
+ */
13
+ export interface PasswordInputProps extends Omit<TextInputProps, 'type' | 'style'> {
14
+ /**
15
+ * Whether the password is currently visible
16
+ */
17
+ visible?: boolean;
18
+ /**
19
+ * Callback when visibility changes
20
+ */
21
+ onVisibilityChange?: (visible: boolean) => void;
22
+ /**
23
+ * Label text (shown above input)
24
+ */
25
+ label?: string;
26
+ /**
27
+ * Error message (shown below input)
28
+ */
29
+ error?: string;
30
+ /**
31
+ * Whether the field is required
32
+ */
33
+ required?: boolean;
34
+ /**
35
+ * Whether the input is disabled
36
+ * @default false
37
+ */
38
+ disabled?: boolean;
39
+ /**
40
+ * Additional container style
41
+ */
42
+ containerStyle?: ViewStyle;
43
+ /**
44
+ * Additional input style
45
+ */
46
+ inputStyle?: TextStyle;
47
+ /**
48
+ * Test ID for testing
49
+ */
50
+ testID?: string;
51
+ /**
52
+ * Form name attribute (for API parity with web)
53
+ */
54
+ name?: string;
55
+ /**
56
+ * Form type attribute (for API parity with web)
57
+ */
58
+ type?: string;
59
+ /**
60
+ * Checked state (for API parity with web)
61
+ */
62
+ checked?: boolean;
63
+ /**
64
+ * Maximum value (for API parity with web)
65
+ */
66
+ max?: number | string;
67
+ /**
68
+ * Minimum value (for API parity with web)
69
+ */
70
+ min?: number | string;
71
+ /**
72
+ * Step value (for API parity with web)
73
+ */
74
+ step?: number | string;
75
+ /**
76
+ * Style prop (for API parity with web, maps to inputStyle)
77
+ */
78
+ style?: TextStyle;
79
+ }
80
+ /**
81
+ * Password input field with show/hide toggle functionality.
82
+ *
83
+ * @component
84
+ * @example
85
+ * ```tsx
86
+ * <PasswordInput
87
+ * value={password}
88
+ * onChangeText={setPassword}
89
+ * placeholder="Enter password"
90
+ * />
91
+ * ```
92
+ */
93
+ declare const PasswordInput: ({ visible: controlledVisible, onVisibilityChange, label, error, required, disabled, containerStyle, inputStyle, name, type, checked, max, min, step, style, testID, ...textInputProps }: PasswordInputProps) => import("react/jsx-runtime").JSX.Element;
94
+ export default PasswordInput;
95
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atomic/PasswordInput/index.tsx"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAGH,OAAO,EAKL,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAOtB;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,IAAI,CAC9C,cAAc,EACd,MAAM,GAAG,OAAO,CACjB;IACC;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAChD;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B;;OAEG;IACH,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AA4CD;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,aAAa,GAAI,yLAkBpB,kBAAkB,4CAwEpB,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -0,0 +1,98 @@
1
+ /**
2
+ * @fileoverview Popover component
3
+ * @description Accessible popover component
4
+ *
5
+ * @version 0.0.1
6
+ * @since 0.0.1
7
+ * @author AMBROISE PARK Consulting
8
+ */
9
+ import { type ViewStyle } from 'react-native';
10
+ import { FLOATING_VARIANT } from '../../utils/constants';
11
+ import type { ReactNode } from 'react';
12
+ /**
13
+ * Popover variant constants
14
+ */
15
+ export declare const POPOVER_VARIANT: {
16
+ readonly OUTLINE: "outline";
17
+ readonly GLASS: "glass";
18
+ readonly DEFAULT: "default";
19
+ readonly MUTED: "muted";
20
+ readonly PRIMARY: "primary";
21
+ readonly SECONDARY: "secondary";
22
+ readonly ACCENT: "accent";
23
+ readonly SUCCESS: "success";
24
+ readonly WARNING: "warning";
25
+ readonly DESTRUCTIVE: "destructive";
26
+ };
27
+ export type PopoverVariant = (typeof FLOATING_VARIANT)[keyof typeof FLOATING_VARIANT];
28
+ /**
29
+ * Popover component props interface
30
+ */
31
+ export interface PopoverProps {
32
+ /**
33
+ * The element that opens the popover
34
+ */
35
+ trigger?: ReactNode;
36
+ /**
37
+ * Trigger content (alternative to trigger prop)
38
+ */
39
+ children?: ReactNode;
40
+ /**
41
+ * Popover content
42
+ */
43
+ content: ReactNode;
44
+ /**
45
+ * Controlled open state
46
+ */
47
+ open?: boolean;
48
+ /**
49
+ * Callback when open state changes
50
+ */
51
+ onOpenChange?: (open: boolean) => void;
52
+ /**
53
+ * Popover side
54
+ * @default 'bottom'
55
+ */
56
+ side?: 'top' | 'right' | 'bottom' | 'left';
57
+ /**
58
+ * Content alignment relative to trigger
59
+ * @default 'center'
60
+ */
61
+ align?: 'start' | 'center' | 'end';
62
+ /**
63
+ * Offset from the trigger edge (in pixels)
64
+ * @default 4
65
+ */
66
+ sideOffset?: number;
67
+ /**
68
+ * Whether the popover is modal (blocks interaction with rest of page)
69
+ * @default false
70
+ */
71
+ modal?: boolean;
72
+ /**
73
+ * Variant style
74
+ * @default 'default'
75
+ */
76
+ variant?: PopoverVariant;
77
+ /**
78
+ * Additional style
79
+ */
80
+ style?: ViewStyle;
81
+ /**
82
+ * Test ID for testing
83
+ */
84
+ testID?: string;
85
+ }
86
+ /**
87
+ * Accessible popover component.
88
+ * On React Native, popovers are simpler and show on press.
89
+ *
90
+ * @component
91
+ * @example
92
+ * ```tsx
93
+ * <Popover trigger={<Button>Open</Button>} content={<Text>Popover content</Text>} />
94
+ * ```
95
+ */
96
+ declare const Popover: ({ trigger, children, content, open: controlledOpen, onOpenChange, side, align, sideOffset, modal, variant, style, testID, }: PopoverProps) => import("react/jsx-runtime").JSX.Element;
97
+ export default Popover;
98
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atomic/Popover/index.tsx"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAGH,OAAO,EAA0B,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAEtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;CAAmB,CAAC;AAEhD,MAAM,MAAM,cAAc,GACxB,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,OAAO,gBAAgB,CAAC,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;OAEG;IACH,OAAO,EAAE,SAAS,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC;;;OAGG;IACH,IAAI,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC3C;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IACnC;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAID;;;;;;;;;GASG;AACH,QAAA,MAAM,OAAO,GAAI,6HAad,YAAY,4CAuEd,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * @fileoverview Portal component
3
+ * @description Portal component for rendering outside the normal tree
4
+ *
5
+ * @version 0.0.1
6
+ * @since 0.0.1
7
+ * @author AMBROISE PARK Consulting
8
+ */
9
+ import type { ReactNode } from 'react';
10
+ /**
11
+ * Portal component props interface
12
+ */
13
+ export interface PortalProps {
14
+ /**
15
+ * Portal content
16
+ */
17
+ children: ReactNode;
18
+ /**
19
+ * Container name (unused on React Native)
20
+ */
21
+ container?: string;
22
+ /**
23
+ * Style prop (for API parity with web)
24
+ */
25
+ style?: any;
26
+ }
27
+ /**
28
+ * Portal component for rendering outside the normal tree.
29
+ * On React Native, uses Modal for overlay rendering.
30
+ *
31
+ * @component
32
+ * @example
33
+ * ```tsx
34
+ * <Portal>
35
+ * <Dialog>Content</Dialog>
36
+ * </Portal>
37
+ * ```
38
+ */
39
+ declare const Portal: ({ children, container }: PortalProps) => import("react/jsx-runtime").JSX.Element;
40
+ export default Portal;
41
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atomic/Portal/index.tsx"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,QAAQ,EAAE,SAAS,CAAC;IACpB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,KAAK,CAAC,EAAE,GAAG,CAAC;CACb;AAED;;;;;;;;;;;GAWG;AACH,QAAA,MAAM,MAAM,GAAI,yBAAyB,WAAW,4CAInD,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * @fileoverview PortalButton component
3
+ * @description Button that opens content in a portal/modal
4
+ *
5
+ * @version 0.0.1
6
+ * @since 0.0.1
7
+ * @author AMBROISE PARK Consulting
8
+ */
9
+ import { type ViewStyle } from 'react-native';
10
+ import { type ButtonProps } from '../Button';
11
+ import type { ReactNode } from 'react';
12
+ /**
13
+ * PortalButton component props interface
14
+ */
15
+ export interface PortalButtonProps extends Omit<ButtonProps, 'onPress'> {
16
+ /**
17
+ * Content to show in portal/modal
18
+ */
19
+ portalContent: ReactNode;
20
+ /**
21
+ * Additional style
22
+ */
23
+ style?: ViewStyle;
24
+ /**
25
+ * Test ID for testing
26
+ */
27
+ testID?: string;
28
+ /**
29
+ * Form name attribute (for API parity with web)
30
+ */
31
+ name?: string;
32
+ /**
33
+ * Button type (for API parity with web)
34
+ */
35
+ type?: 'button' | 'submit' | 'reset';
36
+ /**
37
+ * Form value attribute (for API parity with web)
38
+ */
39
+ value?: string;
40
+ }
41
+ /**
42
+ * Button that opens content in a portal/modal.
43
+ *
44
+ * @component
45
+ * @example
46
+ * ```tsx
47
+ * <PortalButton portalContent={<Text>Portal content</Text>}>
48
+ * Open Portal
49
+ * </PortalButton>
50
+ * ```
51
+ */
52
+ declare const PortalButton: ({ portalContent, children, style, testID, ...buttonProps }: PortalButtonProps) => import("react/jsx-runtime").JSX.Element;
53
+ export default PortalButton;
54
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atomic/PortalButton/index.tsx"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAGH,OAAO,EAKL,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAGtB,OAAe,EAAE,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AAErD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC;IACrE;;OAEG;IACH,aAAa,EAAE,SAAS,CAAC;IACzB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;IACrC;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAiBD;;;;;;;;;;GAUG;AACH,QAAA,MAAM,YAAY,GAAI,4DAMnB,iBAAiB,4CAsCnB,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * @fileoverview Progress component
3
+ * @description Accessible progress component
4
+ *
5
+ * @version 0.0.1
6
+ * @since 0.0.1
7
+ * @author AMBROISE PARK Consulting
8
+ */
9
+ import { type ViewStyle } from 'react-native';
10
+ import type { ReactNode } from 'react';
11
+ /**
12
+ * Progress component props interface
13
+ */
14
+ export interface ProgressProps {
15
+ /**
16
+ * Progress value (0-100)
17
+ * @default 0
18
+ */
19
+ value?: number;
20
+ /**
21
+ * Maximum value
22
+ * @default 100
23
+ */
24
+ max?: number;
25
+ /**
26
+ * Color variant
27
+ * @default 'default'
28
+ */
29
+ variant?: 'default' | 'primary' | 'success' | 'warning' | 'destructive';
30
+ /**
31
+ * Custom accessibility value label
32
+ */
33
+ getValueLabel?: (value: number, max: number) => string;
34
+ /**
35
+ * Content below the progress bar
36
+ */
37
+ children?: ReactNode;
38
+ /**
39
+ * Additional style
40
+ */
41
+ style?: ViewStyle;
42
+ /**
43
+ * Test ID for testing
44
+ */
45
+ testID?: string;
46
+ }
47
+ /**
48
+ * Accessible progress component.
49
+ *
50
+ * @component
51
+ * @example
52
+ * ```tsx
53
+ * <Progress value={50} />
54
+ * <Progress value={75} max={100} />
55
+ * ```
56
+ */
57
+ declare const Progress: ({ value, max, variant, getValueLabel, children, style, testID, }: ProgressProps) => import("react/jsx-runtime").JSX.Element;
58
+ export default Progress;
59
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atomic/Progress/index.tsx"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAEH,OAAO,EAAQ,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAKpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,aAAa,CAAC;IACxE;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IACvD;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAaD;;;;;;;;;GASG;AACH,QAAA,MAAM,QAAQ,GAAI,kEAQf,aAAa,4CAsCf,CAAC;AAEF,eAAe,QAAQ,CAAC"}
@@ -0,0 +1,91 @@
1
+ /**
2
+ * @fileoverview RadioGroup component
3
+ * @description Accessible radio group component with semantic color variants
4
+ *
5
+ * @version 0.0.1
6
+ * @since 0.0.1
7
+ * @author AMBROISE PARK Consulting
8
+ */
9
+ import { type ViewStyle } from 'react-native';
10
+ import { CONTROL_VARIANT } from '../../utils/constants';
11
+ import type { ReactNode } from 'react';
12
+ /**
13
+ * Radio option interface
14
+ */
15
+ export interface RadioOption {
16
+ value: string;
17
+ label: string;
18
+ disabled?: boolean;
19
+ }
20
+ /**
21
+ * RadioGroup component props interface
22
+ */
23
+ export interface RadioGroupProps {
24
+ /**
25
+ * Selected value
26
+ */
27
+ value?: string;
28
+ /**
29
+ * Change handler
30
+ */
31
+ onValueChange?: (value: string) => void;
32
+ /**
33
+ * List of radio options
34
+ */
35
+ items?: RadioOption[];
36
+ /**
37
+ * Semantic color variant
38
+ * @default 'default'
39
+ */
40
+ variant?: (typeof CONTROL_VARIANT)[keyof typeof CONTROL_VARIANT];
41
+ /**
42
+ * Disables all radio items
43
+ * @default false
44
+ */
45
+ disabled?: boolean;
46
+ /**
47
+ * Layout direction
48
+ * @default 'vertical'
49
+ */
50
+ orientation?: 'horizontal' | 'vertical';
51
+ /**
52
+ * Indicates required field
53
+ * @default false
54
+ */
55
+ required?: boolean;
56
+ /**
57
+ * Custom content to render
58
+ */
59
+ children?: ReactNode;
60
+ /**
61
+ * Additional style
62
+ */
63
+ style?: ViewStyle;
64
+ /**
65
+ * Test ID for testing
66
+ */
67
+ testID?: string;
68
+ /**
69
+ * Form name attribute (for API parity with web)
70
+ */
71
+ name?: string;
72
+ }
73
+ /**
74
+ * Accessible radio group component with semantic color variants.
75
+ *
76
+ * @component
77
+ * @example
78
+ * ```tsx
79
+ * <RadioGroup
80
+ * value={value}
81
+ * onValueChange={setValue}
82
+ * items={[
83
+ * { value: 'option1', label: 'Option 1' },
84
+ * { value: 'option2', label: 'Option 2' }
85
+ * ]}
86
+ * />
87
+ * ```
88
+ */
89
+ declare const RadioGroup: ({ value, onValueChange, items, variant, disabled, orientation, required, children, style, testID, }: RadioGroupProps) => import("react/jsx-runtime").JSX.Element;
90
+ export default RadioGroup;
91
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atomic/RadioGroup/index.tsx"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAEH,OAAO,EAGL,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAMxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;OAEG;IACH,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC;IACtB;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;IACjE;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACxC;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAwBD;;;;;;;;;;;;;;;GAeG;AACH,QAAA,MAAM,UAAU,GAAI,qGAWjB,eAAe,4CA6DjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,117 @@
1
+ /**
2
+ * @fileoverview RangeInput component
3
+ * @description Two-input range component for min/max values
4
+ *
5
+ * @version 0.0.1
6
+ * @since 0.0.1
7
+ * @author AMBROISE PARK Consulting
8
+ */
9
+ import { type ViewStyle } from 'react-native';
10
+ import type { ReactNode } from 'react';
11
+ /**
12
+ * RangeInput component props interface
13
+ */
14
+ export interface RangeInputProps {
15
+ /**
16
+ * Label for the range
17
+ */
18
+ label?: string;
19
+ /**
20
+ * Placeholder for min input
21
+ */
22
+ minPlaceholder?: string;
23
+ /**
24
+ * Placeholder for max input
25
+ */
26
+ maxPlaceholder?: string;
27
+ /**
28
+ * Current min value
29
+ */
30
+ minValue?: string;
31
+ /**
32
+ * Current max value
33
+ */
34
+ maxValue?: string;
35
+ /**
36
+ * Display minimum (different from track min)
37
+ */
38
+ actualMin?: number;
39
+ /**
40
+ * Display maximum (different from track max)
41
+ */
42
+ actualMax?: number;
43
+ /**
44
+ * Whether the range input is disabled
45
+ * @default false
46
+ */
47
+ disabled?: boolean;
48
+ /**
49
+ * Track minimum value
50
+ */
51
+ min?: number;
52
+ /**
53
+ * Track maximum value
54
+ */
55
+ max?: number;
56
+ /**
57
+ * Placeholder text
58
+ */
59
+ placeholder?: string;
60
+ /**
61
+ * Whether the field is required
62
+ * @default false
63
+ */
64
+ required?: boolean;
65
+ /**
66
+ * Step value for numeric inputs
67
+ */
68
+ step?: number;
69
+ /**
70
+ * Change handler: (min, max) => void
71
+ */
72
+ onChange: (min: string, max: string) => void;
73
+ /**
74
+ * Clear handler
75
+ */
76
+ onClear: () => void;
77
+ /**
78
+ * Custom content
79
+ */
80
+ children?: ReactNode;
81
+ /**
82
+ * Additional style
83
+ */
84
+ style?: ViewStyle;
85
+ /**
86
+ * Test ID for testing
87
+ */
88
+ testID?: string;
89
+ /**
90
+ * Form name attribute (for API parity with web)
91
+ */
92
+ name?: string;
93
+ /**
94
+ * Form type attribute (for API parity with web)
95
+ */
96
+ type?: string;
97
+ /**
98
+ * Checked state (for API parity with web)
99
+ */
100
+ checked?: boolean;
101
+ }
102
+ /**
103
+ * Two-input range component for min/max values.
104
+ *
105
+ * @component
106
+ * @example
107
+ * ```tsx
108
+ * <RangeInput
109
+ * label="Price"
110
+ * onChange={(min, max) => setFilter({ min, max })}
111
+ * onClear={() => setFilter({ min: '', max: '' })}
112
+ * />
113
+ * ```
114
+ */
115
+ declare const RangeInput: ({ label, minPlaceholder, maxPlaceholder, minValue, maxValue, actualMin, actualMax, disabled, min, max, placeholder, required, step, onChange, onClear, children, style, testID, }: RangeInputProps) => import("react/jsx-runtime").JSX.Element;
116
+ export default RangeInput;
117
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atomic/RangeInput/index.tsx"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAEH,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAOhE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C;;OAEG;IACH,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAQD;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,UAAU,GAAI,mLAmBjB,eAAe,4CA+CjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,74 @@
1
+ /**
2
+ * @fileoverview Rating component
3
+ * @description Interactive star rating component for forms and display
4
+ *
5
+ * @version 0.0.1
6
+ * @since 0.0.1
7
+ * @author AMBROISE PARK Consulting
8
+ */
9
+ import { type ViewStyle } from 'react-native';
10
+ import { CONTROL_VARIANT } from '../../utils/constants';
11
+ import type { ReactNode } from 'react';
12
+ /**
13
+ * Rating component props interface
14
+ */
15
+ export interface RatingProps {
16
+ /**
17
+ * Current rating value (1-5, supports decimals for display)
18
+ */
19
+ value?: number;
20
+ /**
21
+ * Callback when rating changes (only fires whole numbers 1-5)
22
+ */
23
+ onChange?: (value: number) => void;
24
+ /**
25
+ * Maximum rating value
26
+ * @default 5
27
+ */
28
+ max?: number;
29
+ /**
30
+ * Read-only mode (no interaction)
31
+ * @default false
32
+ */
33
+ readonly?: boolean;
34
+ /**
35
+ * Disabled state
36
+ * @default false
37
+ */
38
+ disabled?: boolean;
39
+ /**
40
+ * Semantic color variant
41
+ * @default 'warning'
42
+ */
43
+ variant?: (typeof CONTROL_VARIANT)[keyof typeof CONTROL_VARIANT];
44
+ /**
45
+ * Show numeric value next to stars
46
+ * @default false
47
+ */
48
+ showValue?: boolean;
49
+ /**
50
+ * Custom content after the rating stars
51
+ */
52
+ children?: ReactNode;
53
+ /**
54
+ * Additional style
55
+ */
56
+ style?: ViewStyle;
57
+ /**
58
+ * Test ID for testing
59
+ */
60
+ testID?: string;
61
+ }
62
+ /**
63
+ * Interactive star rating component.
64
+ *
65
+ * @component
66
+ * @example
67
+ * ```tsx
68
+ * <Rating value={3} onChange={setRating} />
69
+ * <Rating value={4.5} readonly showValue />
70
+ * ```
71
+ */
72
+ declare const Rating: ({ value, onChange, max, readonly, disabled, variant, showValue, children, style, testID, }: RatingProps) => import("react/jsx-runtime").JSX.Element;
73
+ export default Rating;
74
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/atomic/Rating/index.tsx"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAEH,OAAO,EAIL,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAKxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;IACjE;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAuCD;;;;;;;;;GASG;AACH,QAAA,MAAM,MAAM,GAAI,4FAWb,WAAW,4CAgDb,CAAC;AAEF,eAAe,MAAM,CAAC"}