@rnative/ui 0.0.0-stage → 1.0.0

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 (422) hide show
  1. package/README.md +1 -3
  2. package/dist/components/accordion/Accordion.d.ts +31 -0
  3. package/dist/components/accordion/Accordion.d.ts.map +1 -0
  4. package/dist/components/accordion/Accordion.js +121 -0
  5. package/dist/components/accordion/Accordion.js.map +1 -0
  6. package/dist/components/accordion/Accordion.styles.d.ts +8 -0
  7. package/dist/components/accordion/Accordion.styles.d.ts.map +1 -0
  8. package/dist/components/accordion/Accordion.styles.js +48 -0
  9. package/dist/components/accordion/Accordion.styles.js.map +1 -0
  10. package/dist/components/accordion/Accordion.types.d.ts +45 -0
  11. package/dist/components/accordion/Accordion.types.d.ts.map +1 -0
  12. package/dist/components/accordion/Accordion.types.js +9 -0
  13. package/dist/components/accordion/Accordion.types.js.map +1 -0
  14. package/dist/components/accordion/index.d.ts +6 -0
  15. package/dist/components/accordion/index.d.ts.map +1 -0
  16. package/dist/components/accordion/index.js +12 -0
  17. package/dist/components/accordion/index.js.map +1 -0
  18. package/dist/components/alert/Alert.d.ts +16 -0
  19. package/dist/components/alert/Alert.d.ts.map +1 -0
  20. package/dist/components/alert/Alert.js +28 -0
  21. package/dist/components/alert/Alert.js.map +1 -0
  22. package/dist/components/alert/Alert.styles.d.ts +8 -0
  23. package/dist/components/alert/Alert.styles.d.ts.map +1 -0
  24. package/dist/components/alert/Alert.styles.js +36 -0
  25. package/dist/components/alert/Alert.styles.js.map +1 -0
  26. package/dist/components/alert/Alert.types.d.ts +22 -0
  27. package/dist/components/alert/Alert.types.d.ts.map +1 -0
  28. package/dist/components/alert/Alert.types.js +9 -0
  29. package/dist/components/alert/Alert.types.js.map +1 -0
  30. package/dist/components/alert/Alert.variants.d.ts +19 -0
  31. package/dist/components/alert/Alert.variants.d.ts.map +1 -0
  32. package/dist/components/alert/Alert.variants.js +51 -0
  33. package/dist/components/alert/Alert.variants.js.map +1 -0
  34. package/dist/components/alert/index.d.ts +6 -0
  35. package/dist/components/alert/index.d.ts.map +1 -0
  36. package/dist/components/alert/index.js +9 -0
  37. package/dist/components/alert/index.js.map +1 -0
  38. package/dist/components/avatar/Avatar.d.ts +13 -0
  39. package/dist/components/avatar/Avatar.d.ts.map +1 -0
  40. package/dist/components/avatar/Avatar.js +31 -0
  41. package/dist/components/avatar/Avatar.js.map +1 -0
  42. package/dist/components/avatar/Avatar.styles.d.ts +8 -0
  43. package/dist/components/avatar/Avatar.styles.d.ts.map +1 -0
  44. package/dist/components/avatar/Avatar.styles.js +22 -0
  45. package/dist/components/avatar/Avatar.styles.js.map +1 -0
  46. package/dist/components/avatar/Avatar.types.d.ts +21 -0
  47. package/dist/components/avatar/Avatar.types.d.ts.map +1 -0
  48. package/dist/components/avatar/Avatar.types.js +9 -0
  49. package/dist/components/avatar/Avatar.types.js.map +1 -0
  50. package/dist/components/avatar/Avatar.variants.d.ts +23 -0
  51. package/dist/components/avatar/Avatar.variants.d.ts.map +1 -0
  52. package/dist/components/avatar/Avatar.variants.js +48 -0
  53. package/dist/components/avatar/Avatar.variants.js.map +1 -0
  54. package/dist/components/avatar/index.d.ts +6 -0
  55. package/dist/components/avatar/index.d.ts.map +1 -0
  56. package/dist/components/avatar/index.js +9 -0
  57. package/dist/components/avatar/index.js.map +1 -0
  58. package/dist/components/badge/Badge.d.ts +12 -0
  59. package/dist/components/badge/Badge.d.ts.map +1 -0
  60. package/dist/components/badge/Badge.js +25 -0
  61. package/dist/components/badge/Badge.js.map +1 -0
  62. package/dist/components/badge/Badge.styles.d.ts +8 -0
  63. package/dist/components/badge/Badge.styles.d.ts.map +1 -0
  64. package/dist/components/badge/Badge.styles.js +32 -0
  65. package/dist/components/badge/Badge.styles.js.map +1 -0
  66. package/dist/components/badge/Badge.types.d.ts +16 -0
  67. package/dist/components/badge/Badge.types.d.ts.map +1 -0
  68. package/dist/components/badge/Badge.types.js +8 -0
  69. package/dist/components/badge/Badge.types.js.map +1 -0
  70. package/dist/components/badge/Badge.variants.d.ts +23 -0
  71. package/dist/components/badge/Badge.variants.d.ts.map +1 -0
  72. package/dist/components/badge/Badge.variants.js +48 -0
  73. package/dist/components/badge/Badge.variants.js.map +1 -0
  74. package/dist/components/badge/index.d.ts +6 -0
  75. package/dist/components/badge/index.d.ts.map +1 -0
  76. package/dist/components/badge/index.js +9 -0
  77. package/dist/components/badge/index.js.map +1 -0
  78. package/dist/components/button/Button.d.ts +16 -0
  79. package/dist/components/button/Button.d.ts.map +1 -0
  80. package/dist/components/button/Button.js +61 -0
  81. package/dist/components/button/Button.js.map +1 -0
  82. package/dist/components/button/Button.styles.d.ts +8 -0
  83. package/dist/components/button/Button.styles.d.ts.map +1 -0
  84. package/dist/components/button/Button.styles.js +18 -0
  85. package/dist/components/button/Button.styles.js.map +1 -0
  86. package/dist/components/button/Button.types.d.ts +23 -0
  87. package/dist/components/button/Button.types.d.ts.map +1 -0
  88. package/dist/components/button/Button.types.js +6 -0
  89. package/dist/components/button/Button.types.js.map +1 -0
  90. package/dist/components/button/Button.variants.d.ts +11 -0
  91. package/dist/components/button/Button.variants.d.ts.map +1 -0
  92. package/dist/components/button/Button.variants.js +65 -0
  93. package/dist/components/button/Button.variants.js.map +1 -0
  94. package/dist/components/button/index.d.ts +6 -0
  95. package/dist/components/button/index.d.ts.map +1 -0
  96. package/dist/components/button/index.js +9 -0
  97. package/dist/components/button/index.js.map +1 -0
  98. package/dist/components/card/Card.d.ts +36 -0
  99. package/dist/components/card/Card.d.ts.map +1 -0
  100. package/dist/components/card/Card.js +53 -0
  101. package/dist/components/card/Card.js.map +1 -0
  102. package/dist/components/card/Card.styles.d.ts +8 -0
  103. package/dist/components/card/Card.styles.d.ts.map +1 -0
  104. package/dist/components/card/Card.styles.js +30 -0
  105. package/dist/components/card/Card.styles.js.map +1 -0
  106. package/dist/components/card/Card.types.d.ts +22 -0
  107. package/dist/components/card/Card.types.d.ts.map +1 -0
  108. package/dist/components/card/Card.types.js +9 -0
  109. package/dist/components/card/Card.types.js.map +1 -0
  110. package/dist/components/card/Card.variants.d.ts +14 -0
  111. package/dist/components/card/Card.variants.d.ts.map +1 -0
  112. package/dist/components/card/Card.variants.js +32 -0
  113. package/dist/components/card/Card.variants.js.map +1 -0
  114. package/dist/components/card/index.d.ts +6 -0
  115. package/dist/components/card/index.d.ts.map +1 -0
  116. package/dist/components/card/index.js +14 -0
  117. package/dist/components/card/index.js.map +1 -0
  118. package/dist/components/checkbox/CheckBox.d.ts +14 -0
  119. package/dist/components/checkbox/CheckBox.d.ts.map +1 -0
  120. package/dist/components/checkbox/CheckBox.js +40 -0
  121. package/dist/components/checkbox/CheckBox.js.map +1 -0
  122. package/dist/components/checkbox/CheckBox.styles.d.ts +8 -0
  123. package/dist/components/checkbox/CheckBox.styles.d.ts.map +1 -0
  124. package/dist/components/checkbox/CheckBox.styles.js +32 -0
  125. package/dist/components/checkbox/CheckBox.styles.js.map +1 -0
  126. package/dist/components/checkbox/CheckBox.types.d.ts +24 -0
  127. package/dist/components/checkbox/CheckBox.types.d.ts.map +1 -0
  128. package/dist/components/checkbox/CheckBox.types.js +9 -0
  129. package/dist/components/checkbox/CheckBox.types.js.map +1 -0
  130. package/dist/components/checkbox/CheckBox.variants.d.ts +14 -0
  131. package/dist/components/checkbox/CheckBox.variants.d.ts.map +1 -0
  132. package/dist/components/checkbox/CheckBox.variants.js +19 -0
  133. package/dist/components/checkbox/CheckBox.variants.js.map +1 -0
  134. package/dist/components/checkbox/index.d.ts +6 -0
  135. package/dist/components/checkbox/index.d.ts.map +1 -0
  136. package/dist/components/checkbox/index.js +9 -0
  137. package/dist/components/checkbox/index.js.map +1 -0
  138. package/dist/components/combobox/ComboBox.d.ts +16 -0
  139. package/dist/components/combobox/ComboBox.d.ts.map +1 -0
  140. package/dist/components/combobox/ComboBox.js +79 -0
  141. package/dist/components/combobox/ComboBox.js.map +1 -0
  142. package/dist/components/combobox/ComboBox.styles.d.ts +8 -0
  143. package/dist/components/combobox/ComboBox.styles.d.ts.map +1 -0
  144. package/dist/components/combobox/ComboBox.styles.js +57 -0
  145. package/dist/components/combobox/ComboBox.styles.js.map +1 -0
  146. package/dist/components/combobox/ComboBox.types.d.ts +46 -0
  147. package/dist/components/combobox/ComboBox.types.d.ts.map +1 -0
  148. package/dist/components/combobox/ComboBox.types.js +9 -0
  149. package/dist/components/combobox/ComboBox.types.js.map +1 -0
  150. package/dist/components/combobox/ComboBox.variants.d.ts +22 -0
  151. package/dist/components/combobox/ComboBox.variants.d.ts.map +1 -0
  152. package/dist/components/combobox/ComboBox.variants.js +68 -0
  153. package/dist/components/combobox/ComboBox.variants.js.map +1 -0
  154. package/dist/components/combobox/index.d.ts +6 -0
  155. package/dist/components/combobox/index.d.ts.map +1 -0
  156. package/dist/components/combobox/index.js +9 -0
  157. package/dist/components/combobox/index.js.map +1 -0
  158. package/dist/components/dialog/Dialog.d.ts +36 -0
  159. package/dist/components/dialog/Dialog.d.ts.map +1 -0
  160. package/dist/components/dialog/Dialog.js +84 -0
  161. package/dist/components/dialog/Dialog.js.map +1 -0
  162. package/dist/components/dialog/Dialog.styles.d.ts +8 -0
  163. package/dist/components/dialog/Dialog.styles.d.ts.map +1 -0
  164. package/dist/components/dialog/Dialog.styles.js +52 -0
  165. package/dist/components/dialog/Dialog.styles.js.map +1 -0
  166. package/dist/components/dialog/Dialog.types.d.ts +48 -0
  167. package/dist/components/dialog/Dialog.types.d.ts.map +1 -0
  168. package/dist/components/dialog/Dialog.types.js +10 -0
  169. package/dist/components/dialog/Dialog.types.js.map +1 -0
  170. package/dist/components/dialog/Dialog.variants.d.ts +13 -0
  171. package/dist/components/dialog/Dialog.variants.d.ts.map +1 -0
  172. package/dist/components/dialog/Dialog.variants.js +19 -0
  173. package/dist/components/dialog/Dialog.variants.js.map +1 -0
  174. package/dist/components/dialog/index.d.ts +6 -0
  175. package/dist/components/dialog/index.d.ts.map +1 -0
  176. package/dist/components/dialog/index.js +14 -0
  177. package/dist/components/dialog/index.js.map +1 -0
  178. package/dist/components/fab/FAB.d.ts +14 -0
  179. package/dist/components/fab/FAB.d.ts.map +1 -0
  180. package/dist/components/fab/FAB.js +46 -0
  181. package/dist/components/fab/FAB.js.map +1 -0
  182. package/dist/components/fab/FAB.styles.d.ts +8 -0
  183. package/dist/components/fab/FAB.styles.d.ts.map +1 -0
  184. package/dist/components/fab/FAB.styles.js +51 -0
  185. package/dist/components/fab/FAB.styles.js.map +1 -0
  186. package/dist/components/fab/FAB.types.d.ts +23 -0
  187. package/dist/components/fab/FAB.types.d.ts.map +1 -0
  188. package/dist/components/fab/FAB.types.js +8 -0
  189. package/dist/components/fab/FAB.types.js.map +1 -0
  190. package/dist/components/fab/FAB.variants.d.ts +48 -0
  191. package/dist/components/fab/FAB.variants.d.ts.map +1 -0
  192. package/dist/components/fab/FAB.variants.js +43 -0
  193. package/dist/components/fab/FAB.variants.js.map +1 -0
  194. package/dist/components/fab/index.d.ts +6 -0
  195. package/dist/components/fab/index.d.ts.map +1 -0
  196. package/dist/components/fab/index.js +9 -0
  197. package/dist/components/fab/index.js.map +1 -0
  198. package/dist/components/index.d.ts +30 -0
  199. package/dist/components/index.d.ts.map +1 -0
  200. package/dist/components/index.js +46 -0
  201. package/dist/components/index.js.map +1 -0
  202. package/dist/components/input/Input.d.ts +17 -0
  203. package/dist/components/input/Input.d.ts.map +1 -0
  204. package/dist/components/input/Input.js +59 -0
  205. package/dist/components/input/Input.js.map +1 -0
  206. package/dist/components/input/Input.styles.d.ts +8 -0
  207. package/dist/components/input/Input.styles.d.ts.map +1 -0
  208. package/dist/components/input/Input.styles.js +25 -0
  209. package/dist/components/input/Input.styles.js.map +1 -0
  210. package/dist/components/input/Input.types.d.ts +25 -0
  211. package/dist/components/input/Input.types.d.ts.map +1 -0
  212. package/dist/components/input/Input.types.js +9 -0
  213. package/dist/components/input/Input.types.js.map +1 -0
  214. package/dist/components/input/Input.variants.d.ts +23 -0
  215. package/dist/components/input/Input.variants.d.ts.map +1 -0
  216. package/dist/components/input/Input.variants.js +61 -0
  217. package/dist/components/input/Input.variants.js.map +1 -0
  218. package/dist/components/input/index.d.ts +6 -0
  219. package/dist/components/input/index.d.ts.map +1 -0
  220. package/dist/components/input/index.js +9 -0
  221. package/dist/components/input/index.js.map +1 -0
  222. package/dist/components/separator/Separator.d.ts +17 -0
  223. package/dist/components/separator/Separator.d.ts.map +1 -0
  224. package/dist/components/separator/Separator.js +46 -0
  225. package/dist/components/separator/Separator.js.map +1 -0
  226. package/dist/components/separator/Separator.styles.d.ts +8 -0
  227. package/dist/components/separator/Separator.styles.d.ts.map +1 -0
  228. package/dist/components/separator/Separator.styles.js +25 -0
  229. package/dist/components/separator/Separator.styles.js.map +1 -0
  230. package/dist/components/separator/Separator.types.d.ts +25 -0
  231. package/dist/components/separator/Separator.types.d.ts.map +1 -0
  232. package/dist/components/separator/Separator.types.js +8 -0
  233. package/dist/components/separator/Separator.types.js.map +1 -0
  234. package/dist/components/separator/index.d.ts +6 -0
  235. package/dist/components/separator/index.d.ts.map +1 -0
  236. package/dist/components/separator/index.js +9 -0
  237. package/dist/components/separator/index.js.map +1 -0
  238. package/dist/components/text/Text.d.ts +18 -0
  239. package/dist/components/text/Text.d.ts.map +1 -0
  240. package/dist/components/text/Text.js +45 -0
  241. package/dist/components/text/Text.js.map +1 -0
  242. package/dist/components/text/Text.types.d.ts +14 -0
  243. package/dist/components/text/Text.types.d.ts.map +1 -0
  244. package/dist/components/text/Text.types.js +10 -0
  245. package/dist/components/text/Text.types.js.map +1 -0
  246. package/dist/components/text/Text.variants.d.ts +23 -0
  247. package/dist/components/text/Text.variants.d.ts.map +1 -0
  248. package/dist/components/text/Text.variants.js +32 -0
  249. package/dist/components/text/Text.variants.js.map +1 -0
  250. package/dist/components/text/index.d.ts +6 -0
  251. package/dist/components/text/index.d.ts.map +1 -0
  252. package/dist/components/text/index.js +9 -0
  253. package/dist/components/text/index.js.map +1 -0
  254. package/dist/design-tokens/animation.d.ts +22 -0
  255. package/dist/design-tokens/animation.d.ts.map +1 -0
  256. package/dist/design-tokens/animation.js +23 -0
  257. package/dist/design-tokens/animation.js.map +1 -0
  258. package/dist/design-tokens/border-radius.d.ts +15 -0
  259. package/dist/design-tokens/border-radius.d.ts.map +1 -0
  260. package/dist/design-tokens/border-radius.js +17 -0
  261. package/dist/design-tokens/border-radius.js.map +1 -0
  262. package/dist/design-tokens/colors.d.ts +179 -0
  263. package/dist/design-tokens/colors.d.ts.map +1 -0
  264. package/dist/design-tokens/colors.js +109 -0
  265. package/dist/design-tokens/colors.js.map +1 -0
  266. package/dist/design-tokens/index.d.ts +16 -0
  267. package/dist/design-tokens/index.d.ts.map +1 -0
  268. package/dist/design-tokens/index.js +32 -0
  269. package/dist/design-tokens/index.js.map +1 -0
  270. package/dist/design-tokens/shadows.d.ts +103 -0
  271. package/dist/design-tokens/shadows.d.ts.map +1 -0
  272. package/dist/design-tokens/shadows.js +75 -0
  273. package/dist/design-tokens/shadows.js.map +1 -0
  274. package/dist/design-tokens/spacing.d.ts +30 -0
  275. package/dist/design-tokens/spacing.d.ts.map +1 -0
  276. package/dist/design-tokens/spacing.js +32 -0
  277. package/dist/design-tokens/spacing.js.map +1 -0
  278. package/dist/design-tokens/typography.d.ts +40 -0
  279. package/dist/design-tokens/typography.d.ts.map +1 -0
  280. package/dist/design-tokens/typography.js +40 -0
  281. package/dist/design-tokens/typography.js.map +1 -0
  282. package/dist/primitives/Box.d.ts +38 -0
  283. package/dist/primitives/Box.d.ts.map +1 -0
  284. package/dist/primitives/Box.js +70 -0
  285. package/dist/primitives/Box.js.map +1 -0
  286. package/dist/primitives/Pressable.d.ts +30 -0
  287. package/dist/primitives/Pressable.d.ts.map +1 -0
  288. package/dist/primitives/Pressable.js +48 -0
  289. package/dist/primitives/Pressable.js.map +1 -0
  290. package/dist/primitives/Text.d.ts +23 -0
  291. package/dist/primitives/Text.d.ts.map +1 -0
  292. package/dist/primitives/Text.js +42 -0
  293. package/dist/primitives/Text.js.map +1 -0
  294. package/dist/primitives/index.d.ts +14 -0
  295. package/dist/primitives/index.d.ts.map +1 -0
  296. package/dist/primitives/index.js +16 -0
  297. package/dist/primitives/index.js.map +1 -0
  298. package/dist/theme/ThemeContext.d.ts +10 -0
  299. package/dist/theme/ThemeContext.d.ts.map +1 -0
  300. package/dist/theme/ThemeContext.js +19 -0
  301. package/dist/theme/ThemeContext.js.map +1 -0
  302. package/dist/theme/ThemeProvider.d.ts +23 -0
  303. package/dist/theme/ThemeProvider.d.ts.map +1 -0
  304. package/dist/theme/ThemeProvider.js +87 -0
  305. package/dist/theme/ThemeProvider.js.map +1 -0
  306. package/dist/theme/index.d.ts +9 -0
  307. package/dist/theme/index.d.ts.map +1 -0
  308. package/dist/theme/index.js +14 -0
  309. package/dist/theme/index.js.map +1 -0
  310. package/dist/theme/themes.d.ts +20 -0
  311. package/dist/theme/themes.d.ts.map +1 -0
  312. package/dist/theme/themes.js +65 -0
  313. package/dist/theme/themes.js.map +1 -0
  314. package/dist/theme/types.d.ts +92 -0
  315. package/dist/theme/types.d.ts.map +1 -0
  316. package/dist/theme/types.js +9 -0
  317. package/dist/theme/types.js.map +1 -0
  318. package/dist/theme/useTheme.d.ts +7 -0
  319. package/dist/theme/useTheme.d.ts.map +1 -0
  320. package/dist/theme/useTheme.js +9 -0
  321. package/dist/theme/useTheme.js.map +1 -0
  322. package/dist/utils/cn.d.ts +16 -0
  323. package/dist/utils/cn.d.ts.map +1 -0
  324. package/dist/utils/cn.js +33 -0
  325. package/dist/utils/cn.js.map +1 -0
  326. package/dist/utils/createVariants.d.ts +32 -0
  327. package/dist/utils/createVariants.d.ts.map +1 -0
  328. package/dist/utils/createVariants.js +26 -0
  329. package/dist/utils/createVariants.js.map +1 -0
  330. package/dist/utils/index.d.ts +7 -0
  331. package/dist/utils/index.d.ts.map +1 -0
  332. package/dist/utils/index.js +13 -0
  333. package/dist/utils/index.js.map +1 -0
  334. package/dist/utils/mergeProps.d.ts +10 -0
  335. package/dist/utils/mergeProps.d.ts.map +1 -0
  336. package/dist/utils/mergeProps.js +31 -0
  337. package/dist/utils/mergeProps.js.map +1 -0
  338. package/package.json +46 -3
  339. package/src/components/accordion/Accordion.styles.ts +46 -0
  340. package/src/components/accordion/Accordion.tsx +247 -0
  341. package/src/components/accordion/Accordion.types.ts +52 -0
  342. package/src/components/accordion/index.ts +17 -0
  343. package/src/components/alert/Alert.styles.ts +34 -0
  344. package/src/components/alert/Alert.tsx +87 -0
  345. package/src/components/alert/Alert.types.ts +24 -0
  346. package/src/components/alert/Alert.variants.ts +57 -0
  347. package/src/components/alert/index.ts +6 -0
  348. package/src/components/avatar/Avatar.styles.ts +20 -0
  349. package/src/components/avatar/Avatar.tsx +74 -0
  350. package/src/components/avatar/Avatar.types.ts +24 -0
  351. package/src/components/avatar/Avatar.variants.ts +55 -0
  352. package/src/components/avatar/index.ts +6 -0
  353. package/src/components/badge/Badge.styles.ts +30 -0
  354. package/src/components/badge/Badge.tsx +47 -0
  355. package/src/components/badge/Badge.types.ts +24 -0
  356. package/src/components/badge/Badge.variants.ts +62 -0
  357. package/src/components/badge/index.ts +6 -0
  358. package/src/components/button/Button.styles.ts +16 -0
  359. package/src/components/button/Button.tsx +108 -0
  360. package/src/components/button/Button.types.ts +30 -0
  361. package/src/components/button/Button.variants.ts +68 -0
  362. package/src/components/button/index.ts +6 -0
  363. package/src/components/card/Card.styles.ts +28 -0
  364. package/src/components/card/Card.tsx +112 -0
  365. package/src/components/card/Card.types.ts +26 -0
  366. package/src/components/card/Card.variants.ts +38 -0
  367. package/src/components/card/index.ts +18 -0
  368. package/src/components/checkbox/CheckBox.styles.ts +30 -0
  369. package/src/components/checkbox/CheckBox.tsx +98 -0
  370. package/src/components/checkbox/CheckBox.types.ts +26 -0
  371. package/src/components/checkbox/CheckBox.variants.ts +25 -0
  372. package/src/components/checkbox/index.ts +6 -0
  373. package/src/components/combobox/ComboBox.styles.ts +55 -0
  374. package/src/components/combobox/ComboBox.tsx +224 -0
  375. package/src/components/combobox/ComboBox.types.ts +51 -0
  376. package/src/components/combobox/ComboBox.variants.ts +82 -0
  377. package/src/components/combobox/index.ts +6 -0
  378. package/src/components/dialog/Dialog.styles.ts +50 -0
  379. package/src/components/dialog/Dialog.tsx +221 -0
  380. package/src/components/dialog/Dialog.types.ts +55 -0
  381. package/src/components/dialog/Dialog.variants.ts +24 -0
  382. package/src/components/dialog/index.ts +20 -0
  383. package/src/components/fab/FAB.styles.ts +49 -0
  384. package/src/components/fab/FAB.tsx +84 -0
  385. package/src/components/fab/FAB.types.ts +31 -0
  386. package/src/components/fab/FAB.variants.ts +55 -0
  387. package/src/components/fab/index.ts +6 -0
  388. package/src/components/index.ts +88 -0
  389. package/src/components/input/Input.styles.ts +23 -0
  390. package/src/components/input/Input.tsx +139 -0
  391. package/src/components/input/Input.types.ts +28 -0
  392. package/src/components/input/Input.variants.ts +71 -0
  393. package/src/components/input/index.ts +6 -0
  394. package/src/components/separator/Separator.styles.ts +23 -0
  395. package/src/components/separator/Separator.tsx +70 -0
  396. package/src/components/separator/Separator.types.ts +28 -0
  397. package/src/components/separator/index.ts +10 -0
  398. package/src/components/text/Text.tsx +75 -0
  399. package/src/components/text/Text.types.ts +27 -0
  400. package/src/components/text/Text.variants.ts +44 -0
  401. package/src/components/text/index.ts +6 -0
  402. package/src/design-tokens/animation.ts +23 -0
  403. package/src/design-tokens/border-radius.ts +16 -0
  404. package/src/design-tokens/colors.ts +120 -0
  405. package/src/design-tokens/index.ts +21 -0
  406. package/src/design-tokens/shadows.ts +78 -0
  407. package/src/design-tokens/spacing.ts +31 -0
  408. package/src/design-tokens/typography.ts +45 -0
  409. package/src/primitives/Box.tsx +121 -0
  410. package/src/primitives/Pressable.tsx +106 -0
  411. package/src/primitives/Text.tsx +84 -0
  412. package/src/primitives/index.ts +15 -0
  413. package/src/theme/ThemeContext.ts +20 -0
  414. package/src/theme/ThemeProvider.tsx +152 -0
  415. package/src/theme/index.ts +9 -0
  416. package/src/theme/themes.ts +71 -0
  417. package/src/theme/types.ts +89 -0
  418. package/src/theme/useTheme.ts +7 -0
  419. package/src/utils/cn.ts +37 -0
  420. package/src/utils/createVariants.ts +47 -0
  421. package/src/utils/index.ts +7 -0
  422. package/src/utils/mergeProps.ts +35 -0
@@ -0,0 +1,48 @@
1
+ /**
2
+ * ANAN-UI — Component: Dialog Types
3
+ *
4
+ * A modal dialog with composable sub-components (Title, Description, Footer,
5
+ * Close). Controlled via `open` / `onOpenChange`. Supports backdrop dismiss
6
+ * and Android hardware back.
7
+ */
8
+ import type { ViewProps, StyleProp, ViewStyle } from 'react-native';
9
+ import type { ReactNode } from 'react';
10
+ export type DialogAnimation = 'fade' | 'slide' | 'none';
11
+ export interface DialogProps extends Omit<ViewProps, 'style' | 'onChange'> {
12
+ /** Controlled open state. */
13
+ open: boolean;
14
+ /** Called when the dialog should close. */
15
+ onOpenChange: (open: boolean) => void;
16
+ /** Allows closing via backdrop press or Android back. Defaults to `true`. */
17
+ dismissible?: boolean;
18
+ /** Animation type. Defaults to `fade`. */
19
+ animationType?: DialogAnimation;
20
+ /** Optional overlay color for the backdrop. */
21
+ overlayColor?: string;
22
+ /** Optional overlay opacity (0-1). Defaults to 0.5. */
23
+ overlayOpacity?: number;
24
+ style?: StyleProp<ViewStyle>;
25
+ children?: ReactNode;
26
+ }
27
+ export interface DialogContentProps extends Omit<ViewProps, 'style'> {
28
+ style?: StyleProp<ViewStyle>;
29
+ children?: ReactNode;
30
+ }
31
+ export interface DialogTitleProps extends Omit<ViewProps, 'style'> {
32
+ style?: StyleProp<ViewStyle>;
33
+ children?: ReactNode;
34
+ }
35
+ export interface DialogDescriptionProps extends Omit<ViewProps, 'style'> {
36
+ style?: StyleProp<ViewStyle>;
37
+ children?: ReactNode;
38
+ }
39
+ export interface DialogFooterProps extends Omit<ViewProps, 'style'> {
40
+ style?: StyleProp<ViewStyle>;
41
+ children?: ReactNode;
42
+ }
43
+ export interface DialogCloseProps extends Omit<ViewProps, 'style'> {
44
+ /** Accessible label for the close button. Defaults to "Close". */
45
+ label?: string;
46
+ style?: StyleProp<ViewStyle>;
47
+ }
48
+ //# sourceMappingURL=Dialog.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dialog.types.d.ts","sourceRoot":"","sources":["../../../src/components/dialog/Dialog.types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;AAExD,MAAM,WAAW,WAAY,SAAQ,IAAI,CAAC,SAAS,EAAE,OAAO,GAAG,UAAU,CAAC;IACxE,6BAA6B;IAC7B,IAAI,EAAE,OAAO,CAAC;IACd,2CAA2C;IAC3C,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,6EAA6E;IAC7E,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,0CAA0C;IAC1C,aAAa,CAAC,EAAE,eAAe,CAAC;IAChC,+CAA+C;IAC/C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,uDAAuD;IACvD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,WAAW,kBAAmB,SAAQ,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC;IAClE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC;IAChE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,WAAW,sBAAuB,SAAQ,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC;IACtE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC;IACjE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC;IAChE,kEAAkE;IAClE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ /**
3
+ * ANAN-UI — Component: Dialog Types
4
+ *
5
+ * A modal dialog with composable sub-components (Title, Description, Footer,
6
+ * Close). Controlled via `open` / `onOpenChange`. Supports backdrop dismiss
7
+ * and Android hardware back.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ //# sourceMappingURL=Dialog.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dialog.types.js","sourceRoot":"","sources":["../../../src/components/dialog/Dialog.types.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * ANAN-UI — Component: Dialog Variants
3
+ *
4
+ * Content surface style resolved against the active theme at render time.
5
+ */
6
+ import type { ViewStyle } from 'react-native';
7
+ import type { Theme } from '../../theme/types';
8
+ export interface DialogVariantConfig {
9
+ content: ViewStyle;
10
+ overlay: ViewStyle;
11
+ }
12
+ export declare function getDialogVariants(theme: Theme): DialogVariantConfig;
13
+ //# sourceMappingURL=Dialog.variants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dialog.variants.d.ts","sourceRoot":"","sources":["../../../src/components/dialog/Dialog.variants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE/C,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,SAAS,CAAC;IACnB,OAAO,EAAE,SAAS,CAAC;CACpB;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,mBAAmB,CASnE"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ /**
3
+ * ANAN-UI — Component: Dialog Variants
4
+ *
5
+ * Content surface style resolved against the active theme at render time.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.getDialogVariants = getDialogVariants;
9
+ function getDialogVariants(theme) {
10
+ return {
11
+ content: {
12
+ backgroundColor: theme.colors.card,
13
+ },
14
+ overlay: {
15
+ backgroundColor: theme.colors.background,
16
+ },
17
+ };
18
+ }
19
+ //# sourceMappingURL=Dialog.variants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dialog.variants.js","sourceRoot":"","sources":["../../../src/components/dialog/Dialog.variants.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AAUH,8CASC;AATD,SAAgB,iBAAiB,CAAC,KAAY;IAC5C,OAAO;QACL,OAAO,EAAE;YACP,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI;SACnC;QACD,OAAO,EAAE;YACP,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU;SACzC;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * ANAN-UI — Component: Dialog Barrel Export
3
+ */
4
+ export { Dialog, DialogContent, DialogTitle, DialogDescription, DialogFooter, DialogClose, } from './Dialog';
5
+ export type { DialogProps, DialogContentProps, DialogTitleProps, DialogDescriptionProps, DialogFooterProps, DialogCloseProps, } from './Dialog.types';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/dialog/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,MAAM,EACN,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,WAAW,GACZ,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ /**
3
+ * ANAN-UI — Component: Dialog Barrel Export
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.DialogClose = exports.DialogFooter = exports.DialogDescription = exports.DialogTitle = exports.DialogContent = exports.Dialog = void 0;
7
+ var Dialog_1 = require("./Dialog");
8
+ Object.defineProperty(exports, "Dialog", { enumerable: true, get: function () { return Dialog_1.Dialog; } });
9
+ Object.defineProperty(exports, "DialogContent", { enumerable: true, get: function () { return Dialog_1.DialogContent; } });
10
+ Object.defineProperty(exports, "DialogTitle", { enumerable: true, get: function () { return Dialog_1.DialogTitle; } });
11
+ Object.defineProperty(exports, "DialogDescription", { enumerable: true, get: function () { return Dialog_1.DialogDescription; } });
12
+ Object.defineProperty(exports, "DialogFooter", { enumerable: true, get: function () { return Dialog_1.DialogFooter; } });
13
+ Object.defineProperty(exports, "DialogClose", { enumerable: true, get: function () { return Dialog_1.DialogClose; } });
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/dialog/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,mCAOkB;AANhB,gGAAA,MAAM,OAAA;AACN,uGAAA,aAAa,OAAA;AACb,qGAAA,WAAW,OAAA;AACX,2GAAA,iBAAiB,OAAA;AACjB,sGAAA,YAAY,OAAA;AACZ,qGAAA,WAAW,OAAA"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * ANAN-UI — Component: FAB
3
+ *
4
+ * A floating action button with variant/size/position support. When `fixed`
5
+ * (default), it positions itself at a screen corner. Exposes
6
+ * `accessibilityRole="button"` with ≥48dp hit targets. Themed shadow
7
+ * elevates the FAB.
8
+ */
9
+ import type { FABProps } from './FAB.types';
10
+ export declare function FAB({ children, variant: variantProp, size: sizeProp, position, disabled, fixed, style, ...rest }: FABProps): import("react").JSX.Element;
11
+ export declare namespace FAB {
12
+ var displayName: string;
13
+ }
14
+ //# sourceMappingURL=FAB.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FAB.d.ts","sourceRoot":"","sources":["../../../src/components/fab/FAB.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAQH,OAAO,KAAK,EAAE,QAAQ,EAAoC,MAAM,aAAa,CAAC;AAsB9E,wBAAgB,GAAG,CAAC,EAClB,QAAc,EACd,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,QAAQ,EACd,QAAyB,EACzB,QAAgB,EAChB,KAAY,EACZ,KAAK,EACL,GAAG,IAAI,EACR,EAAE,QAAQ,+BAmCV;yBA5Ce,GAAG"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FAB = FAB;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ /**
6
+ * ANAN-UI — Component: FAB
7
+ *
8
+ * A floating action button with variant/size/position support. When `fixed`
9
+ * (default), it positions itself at a screen corner. Exposes
10
+ * `accessibilityRole="button"` with ≥48dp hit targets. Themed shadow
11
+ * elevates the FAB.
12
+ */
13
+ const theme_1 = require("../../theme");
14
+ const cn_1 = require("../../utils/cn");
15
+ const Pressable_1 = require("../../primitives/Pressable");
16
+ const Text_1 = require("../../primitives/Text");
17
+ const FAB_variants_1 = require("./FAB.variants");
18
+ const FAB_styles_1 = require("./FAB.styles");
19
+ function toStyleKey(position) {
20
+ switch (position) {
21
+ case 'top-left':
22
+ return 'topLeft';
23
+ case 'top-right':
24
+ return 'topRight';
25
+ case 'bottom-left':
26
+ return 'bottomLeft';
27
+ case 'bottom-right':
28
+ return 'bottomRight';
29
+ }
30
+ }
31
+ const glyphSize = {
32
+ sm: 'base',
33
+ default: 'lg',
34
+ lg: 'xl',
35
+ };
36
+ function FAB({ children = '+', variant: variantProp, size: sizeProp, position = 'bottom-right', disabled = false, fixed = true, style, ...rest }) {
37
+ const { theme } = (0, theme_1.useTheme)();
38
+ const { variant, defaultVariant, defaultSize } = (0, FAB_variants_1.getFABVariants)(theme);
39
+ const variantKey = variantProp ?? defaultVariant;
40
+ const sizeKey = sizeProp ?? defaultSize;
41
+ const entry = variant[variantKey];
42
+ const positionStyle = fixed ? FAB_styles_1.fabStyles[toStyleKey(position)] : undefined;
43
+ return ((0, jsx_runtime_1.jsx)(Pressable_1.PressablePrimitive, { ...rest, disabled: disabled, accessibilityRole: "button", accessibilityState: { disabled }, style: (0, cn_1.cn)(FAB_styles_1.fabStyles.root, FAB_styles_1.fabStyles[sizeKey], entry.container, (0, FAB_variants_1.getFABShadow)(), positionStyle, disabled && { opacity: 0.5 }, style), hitSlop: 12, children: (0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { color: entry.textColor, fontSize: glyphSize[sizeKey], fontWeight: "bold", children: children }) }));
44
+ }
45
+ FAB.displayName = 'FAB';
46
+ //# sourceMappingURL=FAB.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FAB.js","sourceRoot":"","sources":["../../../src/components/fab/FAB.tsx"],"names":[],"mappings":";;AAqCA,kBA4CC;;AAjFD;;;;;;;GAOG;AAEH,uCAAuC;AACvC,uCAAoC;AACpC,0DAAgE;AAChE,gDAAsD;AACtD,iDAA8D;AAC9D,6CAAyC;AAIzC,SAAS,UAAU,CAAC,QAAqB;IACvC,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,UAAU;YACb,OAAO,SAAS,CAAC;QACnB,KAAK,WAAW;YACd,OAAO,UAAU,CAAC;QACpB,KAAK,aAAa;YAChB,OAAO,YAAY,CAAC;QACtB,KAAK,cAAc;YACjB,OAAO,aAAa,CAAC;IACzB,CAAC;AACH,CAAC;AAED,MAAM,SAAS,GAA8B;IAC3C,EAAE,EAAE,MAAM;IACV,OAAO,EAAE,IAAI;IACb,EAAE,EAAE,IAAI;CACT,CAAC;AAEF,SAAgB,GAAG,CAAC,EAClB,QAAQ,GAAG,GAAG,EACd,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,QAAQ,EACd,QAAQ,GAAG,cAAc,EACzB,QAAQ,GAAG,KAAK,EAChB,KAAK,GAAG,IAAI,EACZ,KAAK,EACL,GAAG,IAAI,EACE;IACT,MAAM,EAAE,KAAK,EAAE,GAAG,IAAA,gBAAQ,GAAE,CAAC;IAC7B,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,GAAG,IAAA,6BAAc,EAAC,KAAK,CAAC,CAAC;IACvE,MAAM,UAAU,GAAe,WAAW,IAAI,cAAc,CAAC;IAC7D,MAAM,OAAO,GAAY,QAAQ,IAAI,WAAW,CAAC;IAEjD,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAClC,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,CAAC,sBAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE1E,OAAO,CACL,uBAAC,8BAAkB,OACb,IAAI,EACR,QAAQ,EAAE,QAAQ,EAClB,iBAAiB,EAAC,QAAQ,EAC1B,kBAAkB,EAAE,EAAE,QAAQ,EAAE,EAChC,KAAK,EAAE,IAAA,OAAE,EACP,sBAAS,CAAC,IAAI,EACd,sBAAS,CAAC,OAAO,CAAC,EAClB,KAAK,CAAC,SAAS,EACf,IAAA,2BAAY,GAAE,EACd,aAAa,EACb,QAAQ,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,EAC5B,KAAK,CACN,EACD,OAAO,EAAE,EAAE,YAEX,uBAAC,oBAAa,IACZ,KAAK,EAAE,KAAK,CAAC,SAAS,EACtB,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,EAC5B,UAAU,EAAC,MAAM,YAEhB,QAAQ,GACK,GACG,CACtB,CAAC;AACJ,CAAC;AAED,GAAG,CAAC,WAAW,GAAG,KAAK,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * ANAN-UI — Component: FAB Styles
3
+ *
4
+ * Static styles created with StyleSheet.create. Positioning for fixed FABs
5
+ * and base sizing; colors/shadows are resolved from the theme at render time.
6
+ */
7
+ export declare const fabStyles: any;
8
+ //# sourceMappingURL=FAB.styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FAB.styles.d.ts","sourceRoot":"","sources":["../../../src/components/fab/FAB.styles.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,eAAO,MAAM,SAAS,KAuCpB,CAAC"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ /**
3
+ * ANAN-UI — Component: FAB Styles
4
+ *
5
+ * Static styles created with StyleSheet.create. Positioning for fixed FABs
6
+ * and base sizing; colors/shadows are resolved from the theme at render time.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.fabStyles = void 0;
10
+ const react_native_1 = require("react-native");
11
+ exports.fabStyles = react_native_1.StyleSheet.create({
12
+ root: {
13
+ alignItems: 'center',
14
+ justifyContent: 'center',
15
+ borderRadius: 9999,
16
+ },
17
+ fixed: {
18
+ position: 'absolute',
19
+ right: 16,
20
+ bottom: 16,
21
+ },
22
+ topLeft: {
23
+ top: 16,
24
+ left: 16,
25
+ },
26
+ topRight: {
27
+ top: 16,
28
+ right: 16,
29
+ },
30
+ bottomLeft: {
31
+ bottom: 16,
32
+ left: 16,
33
+ },
34
+ bottomRight: {
35
+ bottom: 16,
36
+ right: 16,
37
+ },
38
+ sm: {
39
+ width: 40,
40
+ height: 40,
41
+ },
42
+ default: {
43
+ width: 56,
44
+ height: 56,
45
+ },
46
+ lg: {
47
+ width: 72,
48
+ height: 72,
49
+ },
50
+ });
51
+ //# sourceMappingURL=FAB.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FAB.styles.js","sourceRoot":"","sources":["../../../src/components/fab/FAB.styles.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,+CAA0C;AAE7B,QAAA,SAAS,GAAG,yBAAU,CAAC,MAAM,CAAC;IACzC,IAAI,EAAE;QACJ,UAAU,EAAE,QAAQ;QACpB,cAAc,EAAE,QAAQ;QACxB,YAAY,EAAE,IAAI;KACnB;IACD,KAAK,EAAE;QACL,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;KACX;IACD,OAAO,EAAE;QACP,GAAG,EAAE,EAAE;QACP,IAAI,EAAE,EAAE;KACT;IACD,QAAQ,EAAE;QACR,GAAG,EAAE,EAAE;QACP,KAAK,EAAE,EAAE;KACV;IACD,UAAU,EAAE;QACV,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,EAAE;KACT;IACD,WAAW,EAAE;QACX,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,EAAE;KACV;IACD,EAAE,EAAE;QACF,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;KACX;IACD,OAAO,EAAE;QACP,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;KACX;IACD,EAAE,EAAE;QACF,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;KACX;CACF,CAAC,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * ANAN-UI — Component: FAB Types
3
+ *
4
+ * A floating action button with variant/size/position support.
5
+ */
6
+ import type { PressableProps, StyleProp, ViewStyle } from 'react-native';
7
+ import type { ReactNode } from 'react';
8
+ export type FABVariant = 'default' | 'secondary' | 'outline' | 'destructive';
9
+ export type FABSize = 'sm' | 'default' | 'lg';
10
+ export type FABPosition = 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
11
+ export interface FABProps extends Omit<PressableProps, 'style'> {
12
+ /** FAB content (icon or text). Defaults to "+". */
13
+ children?: ReactNode;
14
+ variant?: FABVariant;
15
+ size?: FABSize;
16
+ /** Position when used as a fixed overlay. Defaults to `bottom-right`. */
17
+ position?: FABPosition;
18
+ disabled?: boolean;
19
+ /** Whether the FAB is fixed to the screen edges. Defaults to `true`. */
20
+ fixed?: boolean;
21
+ style?: StyleProp<ViewStyle>;
22
+ }
23
+ //# sourceMappingURL=FAB.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FAB.types.d.ts","sourceRoot":"","sources":["../../../src/components/fab/FAB.types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,aAAa,CAAC;AAE7E,MAAM,MAAM,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAAC;AAE9C,MAAM,MAAM,WAAW,GACnB,UAAU,GACV,WAAW,GACX,aAAa,GACb,cAAc,CAAC;AAEnB,MAAM,WAAW,QAAS,SAAQ,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC;IAC7D,mDAAmD;IACnD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,yEAAyE;IACzE,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wEAAwE;IACxE,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ /**
3
+ * ANAN-UI — Component: FAB Types
4
+ *
5
+ * A floating action button with variant/size/position support.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ //# sourceMappingURL=FAB.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FAB.types.js","sourceRoot":"","sources":["../../../src/components/fab/FAB.types.ts"],"names":[],"mappings":";AAAA;;;;GAIG"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * ANAN-UI — Component: FAB Variants
3
+ *
4
+ * Variant surface colors and text color roles resolved against the active
5
+ * theme at render time, plus the themed elevation shadow.
6
+ */
7
+ import type { ViewStyle } from 'react-native';
8
+ import type { Theme, ThemeColors } from '../../theme/types';
9
+ import type { FABVariant, FABSize } from './FAB.types';
10
+ export interface FABVariantEntry {
11
+ container: ViewStyle;
12
+ textColor: keyof ThemeColors;
13
+ }
14
+ export interface FABVariantConfig {
15
+ variant: Record<FABVariant, FABVariantEntry>;
16
+ defaultVariant: FABVariant;
17
+ defaultSize: FABSize;
18
+ }
19
+ export declare function getFABVariants(theme: Theme): FABVariantConfig;
20
+ export declare function getFABShadow(): {
21
+ elevation: 16 | 1 | 4 | 8 | 2;
22
+ shadowColor?: undefined;
23
+ shadowOffset?: undefined;
24
+ shadowOpacity?: undefined;
25
+ shadowRadius?: undefined;
26
+ } | {
27
+ shadowColor: "#000";
28
+ shadowOffset: {
29
+ readonly width: 0;
30
+ readonly height: 1;
31
+ } | {
32
+ readonly width: 0;
33
+ readonly height: 1;
34
+ } | {
35
+ readonly width: 0;
36
+ readonly height: 2;
37
+ } | {
38
+ readonly width: 0;
39
+ readonly height: 4;
40
+ } | {
41
+ readonly width: 0;
42
+ readonly height: 8;
43
+ };
44
+ shadowOpacity: 0.05 | 0.1 | 0.15 | 0.2;
45
+ shadowRadius: 12 | 4 | 6 | 2;
46
+ elevation: 16 | 1 | 4 | 8 | 2;
47
+ };
48
+ //# sourceMappingURL=FAB.variants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FAB.variants.d.ts","sourceRoot":"","sources":["../../../src/components/fab/FAB.variants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAGvD,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,MAAM,WAAW,CAAC;CAC9B;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;IAC7C,cAAc,EAAE,UAAU,CAAC;IAC3B,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,gBAAgB,CA2B7D;AAED,wBAAgB,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE3B"}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ /**
3
+ * ANAN-UI — Component: FAB Variants
4
+ *
5
+ * Variant surface colors and text color roles resolved against the active
6
+ * theme at render time, plus the themed elevation shadow.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.getFABVariants = getFABVariants;
10
+ exports.getFABShadow = getFABShadow;
11
+ const design_tokens_1 = require("../../design-tokens");
12
+ function getFABVariants(theme) {
13
+ return {
14
+ variant: {
15
+ default: {
16
+ container: { backgroundColor: theme.colors.primary },
17
+ textColor: 'primaryForeground',
18
+ },
19
+ secondary: {
20
+ container: { backgroundColor: theme.colors.secondary },
21
+ textColor: 'secondaryForeground',
22
+ },
23
+ outline: {
24
+ container: {
25
+ backgroundColor: 'transparent',
26
+ borderWidth: 1,
27
+ borderColor: theme.colors.primary,
28
+ },
29
+ textColor: 'primary',
30
+ },
31
+ destructive: {
32
+ container: { backgroundColor: theme.colors.destructive },
33
+ textColor: 'destructiveForeground',
34
+ },
35
+ },
36
+ defaultVariant: 'default',
37
+ defaultSize: 'default',
38
+ };
39
+ }
40
+ function getFABShadow() {
41
+ return (0, design_tokens_1.resolveShadow)('md');
42
+ }
43
+ //# sourceMappingURL=FAB.variants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FAB.variants.js","sourceRoot":"","sources":["../../../src/components/fab/FAB.variants.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAkBH,wCA2BC;AAED,oCAEC;AA5CD,uDAAoD;AAapD,SAAgB,cAAc,CAAC,KAAY;IACzC,OAAO;QACL,OAAO,EAAE;YACP,OAAO,EAAE;gBACP,SAAS,EAAE,EAAE,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE;gBACpD,SAAS,EAAE,mBAAmB;aAC/B;YACD,SAAS,EAAE;gBACT,SAAS,EAAE,EAAE,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE;gBACtD,SAAS,EAAE,qBAAqB;aACjC;YACD,OAAO,EAAE;gBACP,SAAS,EAAE;oBACT,eAAe,EAAE,aAAa;oBAC9B,WAAW,EAAE,CAAC;oBACd,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO;iBAClC;gBACD,SAAS,EAAE,SAAS;aACrB;YACD,WAAW,EAAE;gBACX,SAAS,EAAE,EAAE,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE;gBACxD,SAAS,EAAE,uBAAuB;aACnC;SACF;QACD,cAAc,EAAE,SAAS;QACzB,WAAW,EAAE,SAAS;KACvB,CAAC;AACJ,CAAC;AAED,SAAgB,YAAY;IAC1B,OAAO,IAAA,6BAAa,EAAC,IAAI,CAAC,CAAC;AAC7B,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * ANAN-UI — Component: FAB Barrel Export
3
+ */
4
+ export { FAB } from './FAB';
5
+ export type { FABProps, FABVariant, FABSize, FABPosition } from './FAB.types';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/fab/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ /**
3
+ * ANAN-UI — Component: FAB Barrel Export
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.FAB = void 0;
7
+ var FAB_1 = require("./FAB");
8
+ Object.defineProperty(exports, "FAB", { enumerable: true, get: function () { return FAB_1.FAB; } });
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/fab/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,6BAA4B;AAAnB,0FAAA,GAAG,OAAA"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * ANAN-UI — Components: Barrel Export
3
+ */
4
+ export { Button } from './button';
5
+ export type { ButtonProps, ButtonVariant, ButtonSize } from './button/Button.types';
6
+ export { Text } from './text';
7
+ export type { TextProps, TextVariant } from './text/Text.types';
8
+ export { Input } from './input';
9
+ export type { InputProps, InputVariant, InputSize } from './input/Input.types';
10
+ export { Card, CardHeader, CardTitle, CardDescription, CardContent, CardFooter, } from './card';
11
+ export type { CardProps, CardPartProps, CardTextPartProps, CardVariant, } from './card/Card.types';
12
+ export { Separator } from './separator';
13
+ export type { SeparatorProps, SeparatorOrientation, SeparatorVariant, } from './separator/Separator.types';
14
+ export { Accordion, AccordionItem, AccordionTrigger, AccordionContent, } from './accordion';
15
+ export type { AccordionProps, AccordionType, AccordionItemProps, AccordionTriggerProps, AccordionContentProps, } from './accordion/Accordion.types';
16
+ export { Alert } from './alert';
17
+ export type { AlertProps, AlertVariant } from './alert/Alert.types';
18
+ export { Avatar } from './avatar';
19
+ export type { AvatarProps, AvatarSize, AvatarVariant } from './avatar/Avatar.types';
20
+ export { Badge } from './badge';
21
+ export type { BadgeProps, BadgeVariant, BadgeSize } from './badge/Badge.types';
22
+ export { CheckBox } from './checkbox';
23
+ export type { CheckBoxProps, CheckBoxSize } from './checkbox/CheckBox.types';
24
+ export { ComboBox } from './combobox';
25
+ export type { ComboBoxProps, ComboBoxVariant, ComboBoxSize, ComboBoxOption, } from './combobox/ComboBox.types';
26
+ export { Dialog, DialogContent, DialogTitle, DialogDescription, DialogFooter, DialogClose, } from './dialog';
27
+ export type { DialogProps, DialogContentProps, DialogTitleProps, DialogDescriptionProps, DialogFooterProps, DialogCloseProps, } from './dialog/Dialog.types';
28
+ export { FAB } from './fab';
29
+ export type { FABProps, FABVariant, FABSize, FABPosition } from './fab/FAB.types';
30
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEpF,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhE,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAE/E,OAAO,EACL,IAAI,EACJ,UAAU,EACV,SAAS,EACT,eAAe,EACf,WAAW,EACX,UAAU,GACX,MAAM,QAAQ,CAAC;AAChB,YAAY,EACV,SAAS,EACT,aAAa,EACb,iBAAiB,EACjB,WAAW,GACZ,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EACV,cAAc,EACd,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEpE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEpF,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAE/E,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE7E,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EACV,aAAa,EACb,eAAe,EACf,YAAY,EACZ,cAAc,GACf,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,MAAM,EACN,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,WAAW,GACZ,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ /**
3
+ * ANAN-UI — Components: Barrel Export
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.FAB = exports.DialogClose = exports.DialogFooter = exports.DialogDescription = exports.DialogTitle = exports.DialogContent = exports.Dialog = exports.ComboBox = exports.CheckBox = exports.Badge = exports.Avatar = exports.Alert = exports.AccordionContent = exports.AccordionTrigger = exports.AccordionItem = exports.Accordion = exports.Separator = exports.CardFooter = exports.CardContent = exports.CardDescription = exports.CardTitle = exports.CardHeader = exports.Card = exports.Input = exports.Text = exports.Button = void 0;
7
+ var button_1 = require("./button");
8
+ Object.defineProperty(exports, "Button", { enumerable: true, get: function () { return button_1.Button; } });
9
+ var text_1 = require("./text");
10
+ Object.defineProperty(exports, "Text", { enumerable: true, get: function () { return text_1.Text; } });
11
+ var input_1 = require("./input");
12
+ Object.defineProperty(exports, "Input", { enumerable: true, get: function () { return input_1.Input; } });
13
+ var card_1 = require("./card");
14
+ Object.defineProperty(exports, "Card", { enumerable: true, get: function () { return card_1.Card; } });
15
+ Object.defineProperty(exports, "CardHeader", { enumerable: true, get: function () { return card_1.CardHeader; } });
16
+ Object.defineProperty(exports, "CardTitle", { enumerable: true, get: function () { return card_1.CardTitle; } });
17
+ Object.defineProperty(exports, "CardDescription", { enumerable: true, get: function () { return card_1.CardDescription; } });
18
+ Object.defineProperty(exports, "CardContent", { enumerable: true, get: function () { return card_1.CardContent; } });
19
+ Object.defineProperty(exports, "CardFooter", { enumerable: true, get: function () { return card_1.CardFooter; } });
20
+ var separator_1 = require("./separator");
21
+ Object.defineProperty(exports, "Separator", { enumerable: true, get: function () { return separator_1.Separator; } });
22
+ var accordion_1 = require("./accordion");
23
+ Object.defineProperty(exports, "Accordion", { enumerable: true, get: function () { return accordion_1.Accordion; } });
24
+ Object.defineProperty(exports, "AccordionItem", { enumerable: true, get: function () { return accordion_1.AccordionItem; } });
25
+ Object.defineProperty(exports, "AccordionTrigger", { enumerable: true, get: function () { return accordion_1.AccordionTrigger; } });
26
+ Object.defineProperty(exports, "AccordionContent", { enumerable: true, get: function () { return accordion_1.AccordionContent; } });
27
+ var alert_1 = require("./alert");
28
+ Object.defineProperty(exports, "Alert", { enumerable: true, get: function () { return alert_1.Alert; } });
29
+ var avatar_1 = require("./avatar");
30
+ Object.defineProperty(exports, "Avatar", { enumerable: true, get: function () { return avatar_1.Avatar; } });
31
+ var badge_1 = require("./badge");
32
+ Object.defineProperty(exports, "Badge", { enumerable: true, get: function () { return badge_1.Badge; } });
33
+ var checkbox_1 = require("./checkbox");
34
+ Object.defineProperty(exports, "CheckBox", { enumerable: true, get: function () { return checkbox_1.CheckBox; } });
35
+ var combobox_1 = require("./combobox");
36
+ Object.defineProperty(exports, "ComboBox", { enumerable: true, get: function () { return combobox_1.ComboBox; } });
37
+ var dialog_1 = require("./dialog");
38
+ Object.defineProperty(exports, "Dialog", { enumerable: true, get: function () { return dialog_1.Dialog; } });
39
+ Object.defineProperty(exports, "DialogContent", { enumerable: true, get: function () { return dialog_1.DialogContent; } });
40
+ Object.defineProperty(exports, "DialogTitle", { enumerable: true, get: function () { return dialog_1.DialogTitle; } });
41
+ Object.defineProperty(exports, "DialogDescription", { enumerable: true, get: function () { return dialog_1.DialogDescription; } });
42
+ Object.defineProperty(exports, "DialogFooter", { enumerable: true, get: function () { return dialog_1.DialogFooter; } });
43
+ Object.defineProperty(exports, "DialogClose", { enumerable: true, get: function () { return dialog_1.DialogClose; } });
44
+ var fab_1 = require("./fab");
45
+ Object.defineProperty(exports, "FAB", { enumerable: true, get: function () { return fab_1.FAB; } });
46
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AAGf,+BAA8B;AAArB,4FAAA,IAAI,OAAA;AAGb,iCAAgC;AAAvB,8FAAA,KAAK,OAAA;AAGd,+BAOgB;AANd,4FAAA,IAAI,OAAA;AACJ,kGAAA,UAAU,OAAA;AACV,iGAAA,SAAS,OAAA;AACT,uGAAA,eAAe,OAAA;AACf,mGAAA,WAAW,OAAA;AACX,kGAAA,UAAU,OAAA;AASZ,yCAAwC;AAA/B,sGAAA,SAAS,OAAA;AAOlB,yCAKqB;AAJnB,sGAAA,SAAS,OAAA;AACT,0GAAA,aAAa,OAAA;AACb,6GAAA,gBAAgB,OAAA;AAChB,6GAAA,gBAAgB,OAAA;AAUlB,iCAAgC;AAAvB,8FAAA,KAAK,OAAA;AAGd,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AAGf,iCAAgC;AAAvB,8FAAA,KAAK,OAAA;AAGd,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AAGjB,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AAQjB,mCAOkB;AANhB,gGAAA,MAAM,OAAA;AACN,uGAAA,aAAa,OAAA;AACb,qGAAA,WAAW,OAAA;AACX,2GAAA,iBAAiB,OAAA;AACjB,sGAAA,YAAY,OAAA;AACZ,qGAAA,WAAW,OAAA;AAWb,6BAA4B;AAAnB,0FAAA,GAAG,OAAA"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * ANAN-UI — Component: Input
3
+ *
4
+ * A labeled text input with variant/size support, focus and error states, and
5
+ * full accessibility. Built on React Native's TextInput.
6
+ *
7
+ * The border reflects focus (ring) and error (destructive) states. The label
8
+ * doubles as the accessibility label when none is provided, and errors are
9
+ * announced to screen readers via `accessibilityHint`.
10
+ */
11
+ import type { InputProps, InputVariant, InputSize } from './Input.types';
12
+ export declare function Input({ label, hint, error, variant: variantProp, size: sizeProp, disabled, style, inputStyle, onFocus, onBlur, editable, accessibilityLabel, accessibilityHint, ...rest }: InputProps): import("react").JSX.Element;
13
+ export declare namespace Input {
14
+ var displayName: string;
15
+ }
16
+ export type { InputProps, InputVariant, InputSize };
17
+ //# sourceMappingURL=Input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../src/components/input/Input.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAUH,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAEzE,wBAAgB,KAAK,CAAC,EACpB,KAAK,EACL,IAAI,EACJ,KAAK,EACL,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,QAAQ,EACd,QAAgB,EAChB,KAAK,EACL,UAAU,EACV,OAAO,EACP,MAAM,EACN,QAAQ,EACR,kBAAkB,EAClB,iBAAiB,EACjB,GAAG,IAAI,EACR,EAAE,UAAU,+BA0FZ;yBAzGe,KAAK;;;AAqHrB,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC"}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Input = Input;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ /**
6
+ * ANAN-UI — Component: Input
7
+ *
8
+ * A labeled text input with variant/size support, focus and error states, and
9
+ * full accessibility. Built on React Native's TextInput.
10
+ *
11
+ * The border reflects focus (ring) and error (destructive) states. The label
12
+ * doubles as the accessibility label when none is provided, and errors are
13
+ * announced to screen readers via `accessibilityHint`.
14
+ */
15
+ const react_1 = require("react");
16
+ const react_native_1 = require("react-native");
17
+ const theme_1 = require("../../theme");
18
+ const cn_1 = require("../../utils/cn");
19
+ const Text_1 = require("../../primitives/Text");
20
+ const Input_variants_1 = require("./Input.variants");
21
+ const Input_styles_1 = require("./Input.styles");
22
+ function Input({ label, hint, error, variant: variantProp, size: sizeProp, disabled = false, style, inputStyle, onFocus, onBlur, editable, accessibilityLabel, accessibilityHint, ...rest }) {
23
+ const { theme } = (0, theme_1.useTheme)();
24
+ const [focused, setFocused] = (0, react_1.useState)(false);
25
+ const { variants, text, defaultVariants } = (0, Input_variants_1.getInputVariants)(theme);
26
+ const variant = variantProp ?? defaultVariants.variant;
27
+ const size = sizeProp ?? defaultVariants.size;
28
+ const hasError = error !== undefined && error.length > 0;
29
+ // Base border color from the variant (transparent for filled/ghost).
30
+ const baseBorder = variants.variant[variant].borderColor ?? 'transparent';
31
+ // Border reflects error > focus > base variant.
32
+ const borderColor = hasError
33
+ ? theme.colors.destructive
34
+ : focused
35
+ ? theme.colors.ring
36
+ : baseBorder;
37
+ const handleFocus = (e) => {
38
+ setFocused(true);
39
+ onFocus?.(e);
40
+ };
41
+ const handleBlur = (e) => {
42
+ setFocused(false);
43
+ onBlur?.(e);
44
+ };
45
+ const fieldStyle = (0, cn_1.cn)(Input_styles_1.inputStyles.field, variants.variant[variant], variants.size[size], { borderColor }, disabled && { opacity: 0.5 }, style);
46
+ const resolvedInputStyle = (0, cn_1.cn)(styles.input, text[size], { color: disabled ? theme.colors.mutedForeground : theme.colors.foreground }, inputStyle);
47
+ const message = hasError ? error : hint;
48
+ const messageColor = hasError ? 'destructive' : 'mutedForeground';
49
+ return ((0, jsx_runtime_1.jsxs)(react_native_1.View, { style: Input_styles_1.inputStyles.container, children: [label !== undefined && ((0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { color: disabled ? 'mutedForeground' : 'foreground', fontSize: "sm", fontWeight: "medium", style: Input_styles_1.inputStyles.label, accessibilityRole: "text", children: label })), (0, jsx_runtime_1.jsx)(react_native_1.View, { style: fieldStyle, children: (0, jsx_runtime_1.jsx)(react_native_1.TextInput, { ...rest, editable: editable !== undefined ? editable : !disabled, onFocus: handleFocus, onBlur: handleBlur, placeholderTextColor: theme.colors.mutedForeground, accessibilityLabel: accessibilityLabel ?? label, accessibilityHint: accessibilityHint ?? (hasError ? error : undefined), accessibilityState: { disabled }, style: resolvedInputStyle }) }), message !== undefined && ((0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { color: messageColor, fontSize: "sm", style: Input_styles_1.inputStyles.message, accessibilityRole: hasError ? 'alert' : 'text', children: message }))] }));
50
+ }
51
+ Input.displayName = 'Input';
52
+ const styles = react_native_1.StyleSheet.create({
53
+ input: {
54
+ padding: 0,
55
+ borderWidth: 0,
56
+ backgroundColor: 'transparent',
57
+ },
58
+ });
59
+ //# sourceMappingURL=Input.js.map