@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,6 @@
1
+ /**
2
+ * ANAN-UI — Component: CheckBox Barrel Export
3
+ */
4
+ export { CheckBox } from './CheckBox';
5
+ export type { CheckBoxProps, CheckBoxSize } from './CheckBox.types';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/checkbox/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ /**
3
+ * ANAN-UI — Component: CheckBox Barrel Export
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.CheckBox = void 0;
7
+ var CheckBox_1 = require("./CheckBox");
8
+ Object.defineProperty(exports, "CheckBox", { enumerable: true, get: function () { return CheckBox_1.CheckBox; } });
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/checkbox/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * ANAN-UI — Component: ComboBox
3
+ *
4
+ * A combobox (select) with a dropdown presented in a Modal. The trigger field
5
+ * mirrors Input's variant/size/error API. Options are shown in a modal card
6
+ * anchored to the bottom of the screen (reliable across platforms without
7
+ * measuring the trigger). The trigger exposes `accessibilityRole="combobox"`
8
+ * with `accessibilityState={{ expanded, disabled }}`; options are `menuitem`s
9
+ * with a `selected` state.
10
+ */
11
+ import type { ComboBoxProps } from './ComboBox.types';
12
+ export declare function ComboBox({ options, placeholder, value: valueProp, defaultValue, onValueChange, error, label, hint, variant: variantProp, size: sizeProp, disabled, style, fieldStyle, dropdownStyle, optionStyle, ...rest }: ComboBoxProps): import("react").JSX.Element;
13
+ export declare namespace ComboBox {
14
+ var displayName: string;
15
+ }
16
+ //# sourceMappingURL=ComboBox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ComboBox.d.ts","sourceRoot":"","sources":["../../../src/components/combobox/ComboBox.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AASH,OAAO,KAAK,EACV,aAAa,EAId,MAAM,kBAAkB,CAAC;AAE1B,wBAAgB,QAAQ,CAAC,EACvB,OAAO,EACP,WAAsB,EACtB,KAAK,EAAE,SAAS,EAChB,YAAY,EACZ,aAAa,EACb,KAAK,EACL,KAAK,EACL,IAAI,EACJ,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,QAAQ,EACd,QAAgB,EAChB,KAAK,EACL,UAAU,EACV,aAAa,EACb,WAAW,EACX,GAAG,IAAI,EACR,EAAE,aAAa,+BAmLf;yBApMe,QAAQ"}
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ComboBox = ComboBox;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ /**
6
+ * ANAN-UI — Component: ComboBox
7
+ *
8
+ * A combobox (select) with a dropdown presented in a Modal. The trigger field
9
+ * mirrors Input's variant/size/error API. Options are shown in a modal card
10
+ * anchored to the bottom of the screen (reliable across platforms without
11
+ * measuring the trigger). The trigger exposes `accessibilityRole="combobox"`
12
+ * with `accessibilityState={{ expanded, disabled }}`; options are `menuitem`s
13
+ * with a `selected` state.
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 ComboBox_variants_1 = require("./ComboBox.variants");
21
+ const ComboBox_styles_1 = require("./ComboBox.styles");
22
+ function ComboBox({ options, placeholder = 'Select', value: valueProp, defaultValue, onValueChange, error, label, hint, variant: variantProp, size: sizeProp, disabled = false, style, fieldStyle, dropdownStyle, optionStyle, ...rest }) {
23
+ const { theme } = (0, theme_1.useTheme)();
24
+ const isControlled = valueProp !== undefined;
25
+ const [internal, setInternal] = (0, react_1.useState)(defaultValue ?? '');
26
+ const value = isControlled ? valueProp ?? '' : internal;
27
+ const [open, setOpen] = (0, react_1.useState)(false);
28
+ const { variant, size, textSize, defaultVariant, defaultSize } = (0, ComboBox_variants_1.getComboBoxVariants)(theme);
29
+ const variantKey = variantProp ?? defaultVariant;
30
+ const sizeKey = sizeProp ?? defaultSize;
31
+ const hasError = error !== undefined && error.length > 0;
32
+ const message = hasError ? error : hint;
33
+ // Close on Android hardware back.
34
+ (0, react_1.useEffect)(() => {
35
+ if (!open)
36
+ return;
37
+ const sub = react_native_1.BackHandler.addEventListener('hardwareBackPress', () => {
38
+ setOpen(false);
39
+ return true;
40
+ });
41
+ return () => sub.remove();
42
+ }, [open]);
43
+ const selectedOption = options.find((o) => o.value === value);
44
+ const displayText = selectedOption?.label ?? placeholder;
45
+ const isPlaceholder = selectedOption === undefined;
46
+ const handleOpen = (0, react_1.useCallback)(() => {
47
+ if (!disabled)
48
+ setOpen(true);
49
+ }, [disabled]);
50
+ const handleClose = (0, react_1.useCallback)(() => setOpen(false), []);
51
+ const handleSelect = (0, react_1.useCallback)((opt) => {
52
+ if (opt.disabled)
53
+ return;
54
+ if (!isControlled)
55
+ setInternal(opt.value);
56
+ onValueChange?.(opt.value);
57
+ setOpen(false);
58
+ }, [isControlled, onValueChange]);
59
+ const baseBorder = variant[variantKey].container.borderColor ?? 'transparent';
60
+ const borderColor = hasError
61
+ ? theme.colors.destructive
62
+ : open
63
+ ? theme.colors.ring
64
+ : baseBorder;
65
+ return ((0, jsx_runtime_1.jsxs)(react_native_1.View, { ...rest, style: (0, cn_1.cn)(ComboBox_styles_1.comboBoxStyles.container, style), children: [label !== undefined && ((0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { color: disabled ? 'mutedForeground' : 'foreground', fontSize: "sm", fontWeight: "medium", style: ComboBox_styles_1.comboBoxStyles.label, children: label })), (0, jsx_runtime_1.jsxs)(react_native_1.Pressable, { onPress: handleOpen, disabled: disabled, accessibilityRole: "combobox", accessibilityState: { expanded: open, disabled }, accessibilityLabel: label ?? placeholder, style: (0, cn_1.cn)(ComboBox_styles_1.comboBoxStyles.fieldContainer, variant[variantKey].container, size[sizeKey], { borderColor }, disabled && { opacity: 0.5 }, fieldStyle), children: [(0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { color: isPlaceholder ? 'mutedForeground' : 'foreground', numberOfLines: 1, style: (0, cn_1.cn)(ComboBox_styles_1.comboBoxStyles.fieldText, textSize[sizeKey]), children: displayText }), (0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { color: "mutedForeground", fontSize: sizeKey === 'sm' ? 'xs' : sizeKey === 'lg' ? 'lg' : 'base', accessibilityElementsHidden: true, importantForAccessibility: "no-hide-descendants", children: '\u25BC' })] }), message !== undefined && ((0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { color: hasError ? 'destructive' : 'mutedForeground', fontSize: "sm", style: ComboBox_styles_1.comboBoxStyles.message, accessibilityRole: hasError ? 'alert' : 'text', children: message })), (0, jsx_runtime_1.jsx)(react_native_1.Modal, { visible: open, animationType: "fade", transparent: true, onRequestClose: handleClose, supportedOrientations: [
66
+ 'portrait',
67
+ 'landscape-left',
68
+ 'landscape-right',
69
+ 'portrait-upside-down',
70
+ ], children: (0, jsx_runtime_1.jsx)(react_native_1.Pressable, { style: ComboBox_styles_1.comboBoxStyles.backdrop, onPress: handleClose, accessibilityLabel: "Close options", accessibilityRole: "button", children: (0, jsx_runtime_1.jsx)(react_native_1.View, { style: (0, cn_1.cn)(ComboBox_styles_1.comboBoxStyles.dropdown, {
71
+ backgroundColor: theme.colors.card,
72
+ borderColor: theme.colors.border,
73
+ }, dropdownStyle), children: options.map((opt) => {
74
+ const selected = opt.value === value;
75
+ return ((0, jsx_runtime_1.jsxs)(react_native_1.Pressable, { onPress: () => handleSelect(opt), disabled: opt.disabled, accessibilityRole: "menuitem", accessibilityState: { selected, disabled: opt.disabled }, style: (0, cn_1.cn)(ComboBox_styles_1.comboBoxStyles.option, selected && { backgroundColor: theme.colors.muted }, opt.disabled && { opacity: 0.4 }, optionStyle), children: [(0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { fontSize: "base", color: opt.disabled ? 'mutedForeground' : 'foreground', style: ComboBox_styles_1.comboBoxStyles.optionText, children: opt.label }), selected && ((0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { color: "primary", fontSize: "sm", fontWeight: "bold", accessibilityElementsHidden: true, importantForAccessibility: "no-hide-descendants", children: '\u2713' }))] }, opt.value));
76
+ }) }) }) })] }));
77
+ }
78
+ ComboBox.displayName = 'ComboBox';
79
+ //# sourceMappingURL=ComboBox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ComboBox.js","sourceRoot":"","sources":["../../../src/components/combobox/ComboBox.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * ANAN-UI — Component: ComboBox Styles
3
+ *
4
+ * Static styles created with StyleSheet.create. The trigger field and
5
+ * dropdown colors are resolved from the theme at render time.
6
+ */
7
+ export declare const comboBoxStyles: any;
8
+ //# sourceMappingURL=ComboBox.styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ComboBox.styles.d.ts","sourceRoot":"","sources":["../../../src/components/combobox/ComboBox.styles.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,eAAO,MAAM,cAAc,KA4CzB,CAAC"}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ /**
3
+ * ANAN-UI — Component: ComboBox Styles
4
+ *
5
+ * Static styles created with StyleSheet.create. The trigger field and
6
+ * dropdown colors are resolved from the theme at render time.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.comboBoxStyles = void 0;
10
+ const react_native_1 = require("react-native");
11
+ const design_tokens_1 = require("../../design-tokens");
12
+ exports.comboBoxStyles = react_native_1.StyleSheet.create({
13
+ container: {
14
+ width: '100%',
15
+ },
16
+ fieldContainer: {
17
+ flexDirection: 'row',
18
+ alignItems: 'center',
19
+ justifyContent: 'space-between',
20
+ gap: design_tokens_1.spacing[2],
21
+ width: '100%',
22
+ },
23
+ fieldText: {
24
+ flex: 1,
25
+ },
26
+ label: {
27
+ marginBottom: design_tokens_1.spacing[1],
28
+ },
29
+ message: {
30
+ marginTop: design_tokens_1.spacing[1],
31
+ },
32
+ backdrop: {
33
+ flex: 1,
34
+ justifyContent: 'flex-end',
35
+ padding: design_tokens_1.spacing[4],
36
+ backgroundColor: 'rgba(0, 0, 0, 0.4)',
37
+ },
38
+ dropdown: {
39
+ width: '100%',
40
+ borderRadius: design_tokens_1.borderRadius.lg,
41
+ borderWidth: 1,
42
+ overflow: 'hidden',
43
+ ...(0, design_tokens_1.resolveShadow)('md'),
44
+ },
45
+ option: {
46
+ flexDirection: 'row',
47
+ alignItems: 'center',
48
+ justifyContent: 'space-between',
49
+ paddingHorizontal: design_tokens_1.spacing[4],
50
+ paddingVertical: design_tokens_1.spacing[3],
51
+ minHeight: 44,
52
+ },
53
+ optionText: {
54
+ flex: 1,
55
+ },
56
+ });
57
+ //# sourceMappingURL=ComboBox.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ComboBox.styles.js","sourceRoot":"","sources":["../../../src/components/combobox/ComboBox.styles.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,+CAA0C;AAC1C,uDAA2E;AAE9D,QAAA,cAAc,GAAG,yBAAU,CAAC,MAAM,CAAC;IAC9C,SAAS,EAAE;QACT,KAAK,EAAE,MAAM;KACd;IACD,cAAc,EAAE;QACd,aAAa,EAAE,KAAK;QACpB,UAAU,EAAE,QAAQ;QACpB,cAAc,EAAE,eAAe;QAC/B,GAAG,EAAE,uBAAO,CAAC,CAAC,CAAC;QACf,KAAK,EAAE,MAAM;KACd;IACD,SAAS,EAAE;QACT,IAAI,EAAE,CAAC;KACR;IACD,KAAK,EAAE;QACL,YAAY,EAAE,uBAAO,CAAC,CAAC,CAAC;KACzB;IACD,OAAO,EAAE;QACP,SAAS,EAAE,uBAAO,CAAC,CAAC,CAAC;KACtB;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,CAAC;QACP,cAAc,EAAE,UAAU;QAC1B,OAAO,EAAE,uBAAO,CAAC,CAAC,CAAC;QACnB,eAAe,EAAE,oBAAoB;KACtC;IACD,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM;QACb,YAAY,EAAE,4BAAY,CAAC,EAAE;QAC7B,WAAW,EAAE,CAAC;QACd,QAAQ,EAAE,QAAQ;QAClB,GAAG,IAAA,6BAAa,EAAC,IAAI,CAAC;KACvB;IACD,MAAM,EAAE;QACN,aAAa,EAAE,KAAK;QACpB,UAAU,EAAE,QAAQ;QACpB,cAAc,EAAE,eAAe;QAC/B,iBAAiB,EAAE,uBAAO,CAAC,CAAC,CAAC;QAC7B,eAAe,EAAE,uBAAO,CAAC,CAAC,CAAC;QAC3B,SAAS,EAAE,EAAE;KACd;IACD,UAAU,EAAE;QACV,IAAI,EAAE,CAAC;KACR;CACF,CAAC,CAAC"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * ANAN-UI — Component: ComboBox Types
3
+ *
4
+ * A combobox (select) with dropdown rendered in a Modal. Mirrors Input's
5
+ * variant/size/error API for the trigger field.
6
+ */
7
+ import type { ViewProps, StyleProp, ViewStyle, TextStyle } from 'react-native';
8
+ export interface ComboBoxOption {
9
+ /** Unique value for this option. */
10
+ value: string;
11
+ /** Visible label. */
12
+ label: string;
13
+ /** Disables this option. */
14
+ disabled?: boolean;
15
+ }
16
+ export type ComboBoxVariant = 'outline' | 'filled' | 'ghost';
17
+ export type ComboBoxSize = 'sm' | 'default' | 'lg';
18
+ export interface ComboBoxProps extends Omit<ViewProps, 'style' | 'onChange'> {
19
+ /** List of options. */
20
+ options: ComboBoxOption[];
21
+ /** Placeholder shown when no value is selected. */
22
+ placeholder?: string;
23
+ /** Controlled selected value. */
24
+ value?: string;
25
+ /** Uncontrolled default selected value. */
26
+ defaultValue?: string;
27
+ /** Called when the selection changes. */
28
+ onValueChange?: (value: string) => void;
29
+ /** Error message; shows destructive border and announces error. */
30
+ error?: string;
31
+ /** Optional label above the trigger field. */
32
+ label?: string;
33
+ /** Optional hint below the trigger field (hidden when error is set). */
34
+ hint?: string;
35
+ variant?: ComboBoxVariant;
36
+ size?: ComboBoxSize;
37
+ disabled?: boolean;
38
+ style?: StyleProp<ViewStyle>;
39
+ /** Style applied to the trigger field container. */
40
+ fieldStyle?: StyleProp<ViewStyle>;
41
+ /** Style applied to the dropdown container. */
42
+ dropdownStyle?: StyleProp<ViewStyle>;
43
+ /** Style applied to each option text. */
44
+ optionStyle?: StyleProp<TextStyle>;
45
+ }
46
+ //# sourceMappingURL=ComboBox.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ComboBox.types.d.ts","sourceRoot":"","sources":["../../../src/components/combobox/ComboBox.types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG/E,MAAM,WAAW,cAAc;IAC7B,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE7D,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAAC;AAEnD,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,SAAS,EAAE,OAAO,GAAG,UAAU,CAAC;IAC1E,uBAAuB;IACvB,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yCAAyC;IACzC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,mEAAmE;IACnE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,oDAAoD;IACpD,UAAU,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAClC,+CAA+C;IAC/C,aAAa,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACrC,yCAAyC;IACzC,WAAW,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CACpC"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ /**
3
+ * ANAN-UI — Component: ComboBox Types
4
+ *
5
+ * A combobox (select) with dropdown rendered in a Modal. Mirrors Input's
6
+ * variant/size/error API for the trigger field.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ //# sourceMappingURL=ComboBox.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ComboBox.types.js","sourceRoot":"","sources":["../../../src/components/combobox/ComboBox.types.ts"],"names":[],"mappings":";AAAA;;;;;GAKG"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * ANAN-UI — Component: ComboBox Variants
3
+ *
4
+ * Variant/size style definitions for the trigger field, resolved against the
5
+ * active theme at render time.
6
+ */
7
+ import type { TextStyle, ViewStyle } from 'react-native';
8
+ import type { Theme } from '../../theme/types';
9
+ import type { ComboBoxVariant, ComboBoxSize } from './ComboBox.types';
10
+ export interface ComboBoxFieldVariantEntry {
11
+ container: ViewStyle;
12
+ text: TextStyle;
13
+ }
14
+ export interface ComboBoxVariantsConfig {
15
+ variant: Record<ComboBoxVariant, ComboBoxFieldVariantEntry>;
16
+ size: Record<ComboBoxSize, ViewStyle>;
17
+ textSize: Record<ComboBoxSize, TextStyle>;
18
+ defaultVariant: ComboBoxVariant;
19
+ defaultSize: ComboBoxSize;
20
+ }
21
+ export declare function getComboBoxVariants(theme: Theme): ComboBoxVariantsConfig;
22
+ //# sourceMappingURL=ComboBox.variants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ComboBox.variants.d.ts","sourceRoot":"","sources":["../../../src/components/combobox/ComboBox.variants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGtE,MAAM,WAAW,yBAAyB;IACxC,SAAS,EAAE,SAAS,CAAC;IACrB,IAAI,EAAE,SAAS,CAAC;CACjB;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,CAAC,eAAe,EAAE,yBAAyB,CAAC,CAAC;IAC5D,IAAI,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IACtC,QAAQ,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC1C,cAAc,EAAE,eAAe,CAAC;IAChC,WAAW,EAAE,YAAY,CAAC;CAC3B;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,sBAAsB,CAwDxE"}
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ /**
3
+ * ANAN-UI — Component: ComboBox Variants
4
+ *
5
+ * Variant/size style definitions for the trigger field, resolved against the
6
+ * active theme at render time.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.getComboBoxVariants = getComboBoxVariants;
10
+ const design_tokens_1 = require("../../design-tokens");
11
+ function getComboBoxVariants(theme) {
12
+ return {
13
+ variant: {
14
+ outline: {
15
+ container: {
16
+ borderWidth: 1,
17
+ borderColor: theme.colors.border,
18
+ backgroundColor: theme.colors.card,
19
+ },
20
+ text: { color: theme.colors.foreground },
21
+ },
22
+ filled: {
23
+ container: {
24
+ borderWidth: 1,
25
+ borderColor: 'transparent',
26
+ backgroundColor: theme.colors.muted,
27
+ },
28
+ text: { color: theme.colors.foreground },
29
+ },
30
+ ghost: {
31
+ container: {
32
+ borderWidth: 1,
33
+ borderColor: 'transparent',
34
+ backgroundColor: 'transparent',
35
+ },
36
+ text: { color: theme.colors.foreground },
37
+ },
38
+ },
39
+ size: {
40
+ sm: {
41
+ minHeight: 32,
42
+ paddingHorizontal: design_tokens_1.spacing[2],
43
+ paddingVertical: design_tokens_1.spacing[1],
44
+ borderRadius: design_tokens_1.borderRadius.md,
45
+ },
46
+ default: {
47
+ minHeight: 40,
48
+ paddingHorizontal: design_tokens_1.spacing[3],
49
+ paddingVertical: design_tokens_1.spacing[2],
50
+ borderRadius: design_tokens_1.borderRadius.md,
51
+ },
52
+ lg: {
53
+ minHeight: 48,
54
+ paddingHorizontal: design_tokens_1.spacing[4],
55
+ paddingVertical: design_tokens_1.spacing[3],
56
+ borderRadius: design_tokens_1.borderRadius.lg,
57
+ },
58
+ },
59
+ textSize: {
60
+ sm: { fontSize: theme.typography.fontSize.sm },
61
+ default: { fontSize: theme.typography.fontSize.base },
62
+ lg: { fontSize: theme.typography.fontSize.lg },
63
+ },
64
+ defaultVariant: 'outline',
65
+ defaultSize: 'default',
66
+ };
67
+ }
68
+ //# sourceMappingURL=ComboBox.variants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ComboBox.variants.js","sourceRoot":"","sources":["../../../src/components/combobox/ComboBox.variants.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAoBH,kDAwDC;AAvED,uDAA4D;AAe5D,SAAgB,mBAAmB,CAAC,KAAY;IAC9C,OAAO;QACL,OAAO,EAAE;YACP,OAAO,EAAE;gBACP,SAAS,EAAE;oBACT,WAAW,EAAE,CAAC;oBACd,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM;oBAChC,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI;iBACnC;gBACD,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE;aACzC;YACD,MAAM,EAAE;gBACN,SAAS,EAAE;oBACT,WAAW,EAAE,CAAC;oBACd,WAAW,EAAE,aAAa;oBAC1B,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK;iBACpC;gBACD,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE;aACzC;YACD,KAAK,EAAE;gBACL,SAAS,EAAE;oBACT,WAAW,EAAE,CAAC;oBACd,WAAW,EAAE,aAAa;oBAC1B,eAAe,EAAE,aAAa;iBAC/B;gBACD,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE;aACzC;SACF;QACD,IAAI,EAAE;YACJ,EAAE,EAAE;gBACF,SAAS,EAAE,EAAE;gBACb,iBAAiB,EAAE,uBAAO,CAAC,CAAC,CAAC;gBAC7B,eAAe,EAAE,uBAAO,CAAC,CAAC,CAAC;gBAC3B,YAAY,EAAE,4BAAY,CAAC,EAAE;aAC9B;YACD,OAAO,EAAE;gBACP,SAAS,EAAE,EAAE;gBACb,iBAAiB,EAAE,uBAAO,CAAC,CAAC,CAAC;gBAC7B,eAAe,EAAE,uBAAO,CAAC,CAAC,CAAC;gBAC3B,YAAY,EAAE,4BAAY,CAAC,EAAE;aAC9B;YACD,EAAE,EAAE;gBACF,SAAS,EAAE,EAAE;gBACb,iBAAiB,EAAE,uBAAO,CAAC,CAAC,CAAC;gBAC7B,eAAe,EAAE,uBAAO,CAAC,CAAC,CAAC;gBAC3B,YAAY,EAAE,4BAAY,CAAC,EAAE;aAC9B;SACF;QACD,QAAQ,EAAE;YACR,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,EAAE;YAC9C,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE;YACrD,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,EAAE;SAC/C;QACD,cAAc,EAAE,SAAS;QACzB,WAAW,EAAE,SAAS;KACvB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * ANAN-UI — Component: ComboBox Barrel Export
3
+ */
4
+ export { ComboBox } from './ComboBox';
5
+ export type { ComboBoxProps, ComboBoxVariant, ComboBoxSize, ComboBoxOption } from './ComboBox.types';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/combobox/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ /**
3
+ * ANAN-UI — Component: ComboBox Barrel Export
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ComboBox = void 0;
7
+ var ComboBox_1 = require("./ComboBox");
8
+ Object.defineProperty(exports, "ComboBox", { enumerable: true, get: function () { return ComboBox_1.ComboBox; } });
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/combobox/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * ANAN-UI — Component: Dialog
3
+ *
4
+ * A modal dialog with composable sub-components. Controlled via `open` /
5
+ * `onOpenChange`. Supports backdrop dismiss and Android hardware back.
6
+ *
7
+ * The content exposes `accessibilityViewIsModal` so screen readers trap
8
+ * focus within the dialog. The overlay is a semi-transparent backdrop that
9
+ * captures taps to dismiss when `dismissible` is true.
10
+ */
11
+ import type { DialogProps, DialogContentProps, DialogTitleProps, DialogDescriptionProps, DialogFooterProps, DialogCloseProps } from './Dialog.types';
12
+ export declare function Dialog({ open, onOpenChange, dismissible, animationType, overlayColor, overlayOpacity, style, children, ...rest }: DialogProps): import("react").JSX.Element | null;
13
+ export declare namespace Dialog {
14
+ var displayName: string;
15
+ }
16
+ export declare function DialogContent({ style, children, ...rest }: DialogContentProps): import("react").JSX.Element;
17
+ export declare namespace DialogContent {
18
+ var displayName: string;
19
+ }
20
+ export declare function DialogTitle({ style, children, ...rest }: DialogTitleProps): import("react").JSX.Element;
21
+ export declare namespace DialogTitle {
22
+ var displayName: string;
23
+ }
24
+ export declare function DialogDescription({ style, children, ...rest }: DialogDescriptionProps): import("react").JSX.Element;
25
+ export declare namespace DialogDescription {
26
+ var displayName: string;
27
+ }
28
+ export declare function DialogFooter({ style, children, ...rest }: DialogFooterProps): import("react").JSX.Element;
29
+ export declare namespace DialogFooter {
30
+ var displayName: string;
31
+ }
32
+ export declare function DialogClose({ label, style, ...rest }: DialogCloseProps): import("react").JSX.Element;
33
+ export declare namespace DialogClose {
34
+ var displayName: string;
35
+ }
36
+ //# sourceMappingURL=Dialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../src/components/dialog/Dialog.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAeH,OAAO,KAAK,EACV,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AAgBxB,wBAAgB,MAAM,CAAC,EACrB,IAAI,EACJ,YAAY,EACZ,WAAkB,EAClB,aAAsB,EACtB,YAAY,EACZ,cAAoB,EACpB,KAAK,EACL,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,WAAW,sCA2Db;yBArEe,MAAM;;;AAyEtB,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,kBAAkB,+BAMpB;yBAVe,aAAa;;;AAc7B,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,gBAAgB,+BAalB;yBAjBe,WAAW;;;AAqB3B,wBAAgB,iBAAiB,CAAC,EAChC,KAAK,EACL,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,sBAAsB,+BAWxB;yBAfe,iBAAiB;;;AAmBjC,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,iBAAiB,+BAMnB;yBAVe,YAAY;;;AAc5B,wBAAgB,WAAW,CAAC,EAC1B,KAAe,EACf,KAAK,EACL,GAAG,IAAI,EACR,EAAE,gBAAgB,+BA0BlB;yBA9Be,WAAW"}
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Dialog = Dialog;
4
+ exports.DialogContent = DialogContent;
5
+ exports.DialogTitle = DialogTitle;
6
+ exports.DialogDescription = DialogDescription;
7
+ exports.DialogFooter = DialogFooter;
8
+ exports.DialogClose = DialogClose;
9
+ const jsx_runtime_1 = require("react/jsx-runtime");
10
+ /**
11
+ * ANAN-UI — Component: Dialog
12
+ *
13
+ * A modal dialog with composable sub-components. Controlled via `open` /
14
+ * `onOpenChange`. Supports backdrop dismiss and Android hardware back.
15
+ *
16
+ * The content exposes `accessibilityViewIsModal` so screen readers trap
17
+ * focus within the dialog. The overlay is a semi-transparent backdrop that
18
+ * captures taps to dismiss when `dismissible` is true.
19
+ */
20
+ const react_1 = require("react");
21
+ const react_native_1 = require("react-native");
22
+ const theme_1 = require("../../theme");
23
+ const cn_1 = require("../../utils/cn");
24
+ const Text_1 = require("../../primitives/Text");
25
+ const Dialog_variants_1 = require("./Dialog.variants");
26
+ const Dialog_styles_1 = require("./Dialog.styles");
27
+ const DialogContext = (0, react_1.createContext)(null);
28
+ function useDialogContext() {
29
+ const ctx = (0, react_1.useContext)(DialogContext);
30
+ if (ctx === null) {
31
+ throw new Error('Dialog sub-components must be used within a <Dialog>');
32
+ }
33
+ return ctx;
34
+ }
35
+ function Dialog({ open, onOpenChange, dismissible = true, animationType = 'fade', overlayColor, overlayOpacity = 0.5, style, children, ...rest }) {
36
+ const { theme } = (0, theme_1.useTheme)();
37
+ const { content: contentVariant, overlay: overlayVariant } = (0, Dialog_variants_1.getDialogVariants)(theme);
38
+ // Android hardware back dismiss
39
+ (0, react_1.useEffect)(() => {
40
+ if (!open || !dismissible)
41
+ return;
42
+ const sub = react_native_1.BackHandler.addEventListener('hardwareBackPress', () => {
43
+ onOpenChange(false);
44
+ return true;
45
+ });
46
+ return () => sub.remove();
47
+ }, [open, dismissible, onOpenChange]);
48
+ if (!open)
49
+ return null;
50
+ const backdropColor = overlayColor ?? `rgba(0, 0, 0, ${overlayOpacity})`;
51
+ const context = {
52
+ onClose: () => onOpenChange(false),
53
+ };
54
+ return ((0, jsx_runtime_1.jsx)(DialogContext.Provider, { value: context, children: (0, jsx_runtime_1.jsx)(react_native_1.Modal, { visible: open, animationType: animationType, transparent: true, onRequestClose: dismissible ? () => onOpenChange(false) : undefined, supportedOrientations: [
55
+ 'portrait',
56
+ 'landscape-left',
57
+ 'landscape-right',
58
+ 'portrait-upside-down',
59
+ ], children: (0, jsx_runtime_1.jsxs)(react_native_1.View, { accessibilityElementsHidden: !open, importantForAccessibility: open ? 'auto' : 'no-hide-descendants', style: (0, cn_1.cn)(Dialog_styles_1.dialogStyles.overlay, overlayVariant, { backgroundColor: backdropColor }), children: [(0, jsx_runtime_1.jsx)(react_native_1.Pressable, { onPress: dismissible ? () => onOpenChange(false) : undefined, style: react_native_1.StyleSheet.absoluteFill, accessibilityElementsHidden: true, importantForAccessibility: "no-hide-descendants" }), (0, jsx_runtime_1.jsx)(react_native_1.View, { accessibilityViewIsModal: true, ...rest, style: (0, cn_1.cn)(Dialog_styles_1.dialogStyles.content, contentVariant, style), children: children })] }) }) }));
60
+ }
61
+ Dialog.displayName = 'Dialog';
62
+ function DialogContent({ style, children, ...rest }) {
63
+ return ((0, jsx_runtime_1.jsx)(react_native_1.View, { ...rest, style: style, children: children }));
64
+ }
65
+ DialogContent.displayName = 'DialogContent';
66
+ function DialogTitle({ style, children, ...rest }) {
67
+ return ((0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { color: "foreground", fontSize: "lg", fontWeight: "semibold", accessibilityRole: "header", ...rest, style: style, children: children }));
68
+ }
69
+ DialogTitle.displayName = 'DialogTitle';
70
+ function DialogDescription({ style, children, ...rest }) {
71
+ return ((0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { color: "mutedForeground", fontSize: "sm", ...rest, style: style, children: children }));
72
+ }
73
+ DialogDescription.displayName = 'DialogDescription';
74
+ function DialogFooter({ style, children, ...rest }) {
75
+ return ((0, jsx_runtime_1.jsx)(react_native_1.View, { ...rest, style: (0, cn_1.cn)(Dialog_styles_1.dialogStyles.footer, style), children: children }));
76
+ }
77
+ DialogFooter.displayName = 'DialogFooter';
78
+ function DialogClose({ label = 'Close', style, ...rest }) {
79
+ const { theme } = (0, theme_1.useTheme)();
80
+ const { onClose } = useDialogContext();
81
+ return ((0, jsx_runtime_1.jsx)(react_native_1.Pressable, { ...rest, onPress: onClose, accessibilityRole: "button", accessibilityLabel: label, hitSlop: 8, style: (0, cn_1.cn)(Dialog_styles_1.dialogStyles.closeButton, { backgroundColor: theme.colors.muted }, style), children: (0, jsx_runtime_1.jsx)(Text_1.TextPrimitive, { color: "mutedForeground", fontSize: "sm", fontWeight: "bold", children: '\u00D7' }) }));
82
+ }
83
+ DialogClose.displayName = 'DialogClose';
84
+ //# sourceMappingURL=Dialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dialog.js","sourceRoot":"","sources":["../../../src/components/dialog/Dialog.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * ANAN-UI — Component: Dialog Styles
3
+ *
4
+ * Static styles created with StyleSheet.create. The content surface and
5
+ * shadows are resolved from the theme at render time via Dialog.variants.
6
+ */
7
+ export declare const dialogStyles: any;
8
+ //# sourceMappingURL=Dialog.styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dialog.styles.d.ts","sourceRoot":"","sources":["../../../src/components/dialog/Dialog.styles.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,eAAO,MAAM,YAAY,KAuCvB,CAAC"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ /**
3
+ * ANAN-UI — Component: Dialog Styles
4
+ *
5
+ * Static styles created with StyleSheet.create. The content surface and
6
+ * shadows are resolved from the theme at render time via Dialog.variants.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.dialogStyles = void 0;
10
+ const react_native_1 = require("react-native");
11
+ const design_tokens_1 = require("../../design-tokens");
12
+ exports.dialogStyles = react_native_1.StyleSheet.create({
13
+ overlay: {
14
+ ...react_native_1.StyleSheet.absoluteFillObject,
15
+ alignItems: 'center',
16
+ justifyContent: 'center',
17
+ padding: design_tokens_1.spacing[4],
18
+ },
19
+ content: {
20
+ width: '100%',
21
+ maxWidth: 400,
22
+ borderRadius: design_tokens_1.borderRadius.lg,
23
+ overflow: 'hidden',
24
+ },
25
+ header: {
26
+ padding: design_tokens_1.spacing[5],
27
+ gap: design_tokens_1.spacing[1],
28
+ },
29
+ body: {
30
+ paddingHorizontal: design_tokens_1.spacing[5],
31
+ paddingBottom: design_tokens_1.spacing[4],
32
+ },
33
+ footer: {
34
+ flexDirection: 'row',
35
+ alignItems: 'center',
36
+ justifyContent: 'flex-end',
37
+ gap: design_tokens_1.spacing[2],
38
+ padding: design_tokens_1.spacing[4],
39
+ paddingTop: 0,
40
+ },
41
+ closeButton: {
42
+ position: 'absolute',
43
+ top: design_tokens_1.spacing[3],
44
+ right: design_tokens_1.spacing[3],
45
+ width: 32,
46
+ height: 32,
47
+ alignItems: 'center',
48
+ justifyContent: 'center',
49
+ borderRadius: 9999,
50
+ },
51
+ });
52
+ //# sourceMappingURL=Dialog.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dialog.styles.js","sourceRoot":"","sources":["../../../src/components/dialog/Dialog.styles.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,+CAA0C;AAC1C,uDAA4D;AAE/C,QAAA,YAAY,GAAG,yBAAU,CAAC,MAAM,CAAC;IAC5C,OAAO,EAAE;QACP,GAAG,yBAAU,CAAC,kBAAkB;QAChC,UAAU,EAAE,QAAQ;QACpB,cAAc,EAAE,QAAQ;QACxB,OAAO,EAAE,uBAAO,CAAC,CAAC,CAAC;KACpB;IACD,OAAO,EAAE;QACP,KAAK,EAAE,MAAM;QACb,QAAQ,EAAE,GAAG;QACb,YAAY,EAAE,4BAAY,CAAC,EAAE;QAC7B,QAAQ,EAAE,QAAQ;KACnB;IACD,MAAM,EAAE;QACN,OAAO,EAAE,uBAAO,CAAC,CAAC,CAAC;QACnB,GAAG,EAAE,uBAAO,CAAC,CAAC,CAAC;KAChB;IACD,IAAI,EAAE;QACJ,iBAAiB,EAAE,uBAAO,CAAC,CAAC,CAAC;QAC7B,aAAa,EAAE,uBAAO,CAAC,CAAC,CAAC;KAC1B;IACD,MAAM,EAAE;QACN,aAAa,EAAE,KAAK;QACpB,UAAU,EAAE,QAAQ;QACpB,cAAc,EAAE,UAAU;QAC1B,GAAG,EAAE,uBAAO,CAAC,CAAC,CAAC;QACf,OAAO,EAAE,uBAAO,CAAC,CAAC,CAAC;QACnB,UAAU,EAAE,CAAC;KACd;IACD,WAAW,EAAE;QACX,QAAQ,EAAE,UAAU;QACpB,GAAG,EAAE,uBAAO,CAAC,CAAC,CAAC;QACf,KAAK,EAAE,uBAAO,CAAC,CAAC,CAAC;QACjB,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;QACV,UAAU,EAAE,QAAQ;QACpB,cAAc,EAAE,QAAQ;QACxB,YAAY,EAAE,IAAI;KACnB;CACF,CAAC,CAAC"}