@masumdev/rn-ui 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (521) hide show
  1. package/lib/commonjs/components/Accordion.js +239 -0
  2. package/lib/commonjs/components/Accordion.js.map +1 -0
  3. package/lib/commonjs/components/Alert.js +183 -0
  4. package/lib/commonjs/components/Alert.js.map +1 -0
  5. package/lib/commonjs/components/AlertDialog.js +223 -0
  6. package/lib/commonjs/components/AlertDialog.js.map +1 -0
  7. package/lib/commonjs/components/AspectRatio.js +44 -0
  8. package/lib/commonjs/components/AspectRatio.js.map +1 -0
  9. package/lib/commonjs/components/Attachment.js +236 -0
  10. package/lib/commonjs/components/Attachment.js.map +1 -0
  11. package/lib/commonjs/components/Avatar.js +268 -0
  12. package/lib/commonjs/components/Avatar.js.map +1 -0
  13. package/lib/commonjs/components/Badge.js +94 -0
  14. package/lib/commonjs/components/Badge.js.map +1 -0
  15. package/lib/commonjs/components/BottomSheet.js +127 -0
  16. package/lib/commonjs/components/BottomSheet.js.map +1 -0
  17. package/lib/commonjs/components/Box.js +55 -0
  18. package/lib/commonjs/components/Box.js.map +1 -0
  19. package/lib/commonjs/components/Breadcrumb.js +84 -0
  20. package/lib/commonjs/components/Breadcrumb.js.map +1 -0
  21. package/lib/commonjs/components/Bubble.js +236 -0
  22. package/lib/commonjs/components/Bubble.js.map +1 -0
  23. package/lib/commonjs/components/Button.js +117 -0
  24. package/lib/commonjs/components/Button.js.map +1 -0
  25. package/lib/commonjs/components/ButtonGroup.js +143 -0
  26. package/lib/commonjs/components/ButtonGroup.js.map +1 -0
  27. package/lib/commonjs/components/Calendar.js +495 -0
  28. package/lib/commonjs/components/Calendar.js.map +1 -0
  29. package/lib/commonjs/components/Card.js +39 -0
  30. package/lib/commonjs/components/Card.js.map +1 -0
  31. package/lib/commonjs/components/Carousel.js +345 -0
  32. package/lib/commonjs/components/Carousel.js.map +1 -0
  33. package/lib/commonjs/components/Checkbox.js +105 -0
  34. package/lib/commonjs/components/Checkbox.js.map +1 -0
  35. package/lib/commonjs/components/Collapsible.js +121 -0
  36. package/lib/commonjs/components/Collapsible.js.map +1 -0
  37. package/lib/commonjs/components/Combobox.js +374 -0
  38. package/lib/commonjs/components/Combobox.js.map +1 -0
  39. package/lib/commonjs/components/Command.js +118 -0
  40. package/lib/commonjs/components/Command.js.map +1 -0
  41. package/lib/commonjs/components/ContextMenu.js +348 -0
  42. package/lib/commonjs/components/ContextMenu.js.map +1 -0
  43. package/lib/commonjs/components/DataList.js +76 -0
  44. package/lib/commonjs/components/DataList.js.map +1 -0
  45. package/lib/commonjs/components/Divider.js +31 -0
  46. package/lib/commonjs/components/Divider.js.map +1 -0
  47. package/lib/commonjs/components/DropdownMenu.js +368 -0
  48. package/lib/commonjs/components/DropdownMenu.js.map +1 -0
  49. package/lib/commonjs/components/Empty.js +129 -0
  50. package/lib/commonjs/components/Empty.js.map +1 -0
  51. package/lib/commonjs/components/FloatingActionButton.js +184 -0
  52. package/lib/commonjs/components/FloatingActionButton.js.map +1 -0
  53. package/lib/commonjs/components/FormField.js +93 -0
  54. package/lib/commonjs/components/FormField.js.map +1 -0
  55. package/lib/commonjs/components/HoverCard.js +212 -0
  56. package/lib/commonjs/components/HoverCard.js.map +1 -0
  57. package/lib/commonjs/components/IconButton.js +98 -0
  58. package/lib/commonjs/components/IconButton.js.map +1 -0
  59. package/lib/commonjs/components/Input.js +94 -0
  60. package/lib/commonjs/components/Input.js.map +1 -0
  61. package/lib/commonjs/components/InputGroup.js +216 -0
  62. package/lib/commonjs/components/InputGroup.js.map +1 -0
  63. package/lib/commonjs/components/InputOTP.js +231 -0
  64. package/lib/commonjs/components/InputOTP.js.map +1 -0
  65. package/lib/commonjs/components/Item.js +226 -0
  66. package/lib/commonjs/components/Item.js.map +1 -0
  67. package/lib/commonjs/components/KeyboardAvoiding.js +69 -0
  68. package/lib/commonjs/components/KeyboardAvoiding.js.map +1 -0
  69. package/lib/commonjs/components/Label.js +39 -0
  70. package/lib/commonjs/components/Label.js.map +1 -0
  71. package/lib/commonjs/components/MetricCard.js +60 -0
  72. package/lib/commonjs/components/MetricCard.js.map +1 -0
  73. package/lib/commonjs/components/Pagination.js +60 -0
  74. package/lib/commonjs/components/Pagination.js.map +1 -0
  75. package/lib/commonjs/components/Popover.js +96 -0
  76. package/lib/commonjs/components/Popover.js.map +1 -0
  77. package/lib/commonjs/components/Progress.js +64 -0
  78. package/lib/commonjs/components/Progress.js.map +1 -0
  79. package/lib/commonjs/components/RadioGroup.js +127 -0
  80. package/lib/commonjs/components/RadioGroup.js.map +1 -0
  81. package/lib/commonjs/components/Select.js +147 -0
  82. package/lib/commonjs/components/Select.js.map +1 -0
  83. package/lib/commonjs/components/Sheet.js +89 -0
  84. package/lib/commonjs/components/Sheet.js.map +1 -0
  85. package/lib/commonjs/components/Skeleton.js +88 -0
  86. package/lib/commonjs/components/Skeleton.js.map +1 -0
  87. package/lib/commonjs/components/Slider.js +209 -0
  88. package/lib/commonjs/components/Slider.js.map +1 -0
  89. package/lib/commonjs/components/Stepper.js +95 -0
  90. package/lib/commonjs/components/Stepper.js.map +1 -0
  91. package/lib/commonjs/components/Switch.js +153 -0
  92. package/lib/commonjs/components/Switch.js.map +1 -0
  93. package/lib/commonjs/components/Table.js +102 -0
  94. package/lib/commonjs/components/Table.js.map +1 -0
  95. package/lib/commonjs/components/Tabs.js +133 -0
  96. package/lib/commonjs/components/Tabs.js.map +1 -0
  97. package/lib/commonjs/components/Text.js +33 -0
  98. package/lib/commonjs/components/Text.js.map +1 -0
  99. package/lib/commonjs/components/Textarea.js +30 -0
  100. package/lib/commonjs/components/Textarea.js.map +1 -0
  101. package/lib/commonjs/components/Timeline.js +97 -0
  102. package/lib/commonjs/components/Timeline.js.map +1 -0
  103. package/lib/commonjs/components/Toast.js +374 -0
  104. package/lib/commonjs/components/Toast.js.map +1 -0
  105. package/lib/commonjs/components/index.js +1048 -0
  106. package/lib/commonjs/components/index.js.map +1 -0
  107. package/lib/commonjs/components/types.js +14 -0
  108. package/lib/commonjs/components/types.js.map +1 -0
  109. package/lib/commonjs/index.js +39 -0
  110. package/lib/commonjs/index.js.map +1 -0
  111. package/lib/commonjs/package.json +1 -0
  112. package/lib/commonjs/theme/ThemeProvider.js +101 -0
  113. package/lib/commonjs/theme/ThemeProvider.js.map +1 -0
  114. package/lib/commonjs/theme/createTheme.js +62 -0
  115. package/lib/commonjs/theme/createTheme.js.map +1 -0
  116. package/lib/commonjs/theme/index.js +83 -0
  117. package/lib/commonjs/theme/index.js.map +1 -0
  118. package/lib/commonjs/theme/tokens.js +356 -0
  119. package/lib/commonjs/theme/tokens.js.map +1 -0
  120. package/lib/commonjs/theme/types.js +6 -0
  121. package/lib/commonjs/theme/types.js.map +1 -0
  122. package/lib/commonjs/theme/useTheme.js +16 -0
  123. package/lib/commonjs/theme/useTheme.js.map +1 -0
  124. package/lib/commonjs/theme/useThemeStyles.js +16 -0
  125. package/lib/commonjs/theme/useThemeStyles.js.map +1 -0
  126. package/lib/commonjs/utils/color.js +22 -0
  127. package/lib/commonjs/utils/color.js.map +1 -0
  128. package/lib/commonjs/utils/index.js +13 -0
  129. package/lib/commonjs/utils/index.js.map +1 -0
  130. package/lib/module/components/Accordion.js +234 -0
  131. package/lib/module/components/Accordion.js.map +1 -0
  132. package/lib/module/components/Alert.js +177 -0
  133. package/lib/module/components/Alert.js.map +1 -0
  134. package/lib/module/components/AlertDialog.js +218 -0
  135. package/lib/module/components/AlertDialog.js.map +1 -0
  136. package/lib/module/components/AspectRatio.js +39 -0
  137. package/lib/module/components/AspectRatio.js.map +1 -0
  138. package/lib/module/components/Attachment.js +231 -0
  139. package/lib/module/components/Attachment.js.map +1 -0
  140. package/lib/module/components/Avatar.js +258 -0
  141. package/lib/module/components/Avatar.js.map +1 -0
  142. package/lib/module/components/Badge.js +89 -0
  143. package/lib/module/components/Badge.js.map +1 -0
  144. package/lib/module/components/BottomSheet.js +68 -0
  145. package/lib/module/components/BottomSheet.js.map +1 -0
  146. package/lib/module/components/Box.js +50 -0
  147. package/lib/module/components/Box.js.map +1 -0
  148. package/lib/module/components/Breadcrumb.js +75 -0
  149. package/lib/module/components/Breadcrumb.js.map +1 -0
  150. package/lib/module/components/Bubble.js +228 -0
  151. package/lib/module/components/Bubble.js.map +1 -0
  152. package/lib/module/components/Button.js +112 -0
  153. package/lib/module/components/Button.js.map +1 -0
  154. package/lib/module/components/ButtonGroup.js +136 -0
  155. package/lib/module/components/ButtonGroup.js.map +1 -0
  156. package/lib/module/components/Calendar.js +489 -0
  157. package/lib/module/components/Calendar.js.map +1 -0
  158. package/lib/module/components/Card.js +34 -0
  159. package/lib/module/components/Card.js.map +1 -0
  160. package/lib/module/components/Carousel.js +334 -0
  161. package/lib/module/components/Carousel.js.map +1 -0
  162. package/lib/module/components/Checkbox.js +99 -0
  163. package/lib/module/components/Checkbox.js.map +1 -0
  164. package/lib/module/components/Collapsible.js +112 -0
  165. package/lib/module/components/Collapsible.js.map +1 -0
  166. package/lib/module/components/Combobox.js +362 -0
  167. package/lib/module/components/Combobox.js.map +1 -0
  168. package/lib/module/components/Command.js +113 -0
  169. package/lib/module/components/Command.js.map +1 -0
  170. package/lib/module/components/ContextMenu.js +334 -0
  171. package/lib/module/components/ContextMenu.js.map +1 -0
  172. package/lib/module/components/DataList.js +68 -0
  173. package/lib/module/components/DataList.js.map +1 -0
  174. package/lib/module/components/Divider.js +26 -0
  175. package/lib/module/components/Divider.js.map +1 -0
  176. package/lib/module/components/DropdownMenu.js +354 -0
  177. package/lib/module/components/DropdownMenu.js.map +1 -0
  178. package/lib/module/components/Empty.js +119 -0
  179. package/lib/module/components/Empty.js.map +1 -0
  180. package/lib/module/components/FloatingActionButton.js +178 -0
  181. package/lib/module/components/FloatingActionButton.js.map +1 -0
  182. package/lib/module/components/FormField.js +83 -0
  183. package/lib/module/components/FormField.js.map +1 -0
  184. package/lib/module/components/HoverCard.js +203 -0
  185. package/lib/module/components/HoverCard.js.map +1 -0
  186. package/lib/module/components/IconButton.js +93 -0
  187. package/lib/module/components/IconButton.js.map +1 -0
  188. package/lib/module/components/Input.js +89 -0
  189. package/lib/module/components/Input.js.map +1 -0
  190. package/lib/module/components/InputGroup.js +206 -0
  191. package/lib/module/components/InputGroup.js.map +1 -0
  192. package/lib/module/components/InputOTP.js +221 -0
  193. package/lib/module/components/InputOTP.js.map +1 -0
  194. package/lib/module/components/Item.js +212 -0
  195. package/lib/module/components/Item.js.map +1 -0
  196. package/lib/module/components/KeyboardAvoiding.js +64 -0
  197. package/lib/module/components/KeyboardAvoiding.js.map +1 -0
  198. package/lib/module/components/Label.js +34 -0
  199. package/lib/module/components/Label.js.map +1 -0
  200. package/lib/module/components/MetricCard.js +55 -0
  201. package/lib/module/components/MetricCard.js.map +1 -0
  202. package/lib/module/components/Pagination.js +55 -0
  203. package/lib/module/components/Pagination.js.map +1 -0
  204. package/lib/module/components/Popover.js +89 -0
  205. package/lib/module/components/Popover.js.map +1 -0
  206. package/lib/module/components/Progress.js +58 -0
  207. package/lib/module/components/Progress.js.map +1 -0
  208. package/lib/module/components/RadioGroup.js +121 -0
  209. package/lib/module/components/RadioGroup.js.map +1 -0
  210. package/lib/module/components/Select.js +142 -0
  211. package/lib/module/components/Select.js.map +1 -0
  212. package/lib/module/components/Sheet.js +75 -0
  213. package/lib/module/components/Sheet.js.map +1 -0
  214. package/lib/module/components/Skeleton.js +82 -0
  215. package/lib/module/components/Skeleton.js.map +1 -0
  216. package/lib/module/components/Slider.js +203 -0
  217. package/lib/module/components/Slider.js.map +1 -0
  218. package/lib/module/components/Stepper.js +90 -0
  219. package/lib/module/components/Stepper.js.map +1 -0
  220. package/lib/module/components/Switch.js +147 -0
  221. package/lib/module/components/Switch.js.map +1 -0
  222. package/lib/module/components/Table.js +94 -0
  223. package/lib/module/components/Table.js.map +1 -0
  224. package/lib/module/components/Tabs.js +125 -0
  225. package/lib/module/components/Tabs.js.map +1 -0
  226. package/lib/module/components/Text.js +28 -0
  227. package/lib/module/components/Text.js.map +1 -0
  228. package/lib/module/components/Textarea.js +25 -0
  229. package/lib/module/components/Textarea.js.map +1 -0
  230. package/lib/module/components/Timeline.js +89 -0
  231. package/lib/module/components/Timeline.js.map +1 -0
  232. package/lib/module/components/Toast.js +359 -0
  233. package/lib/module/components/Toast.js.map +1 -0
  234. package/lib/module/components/index.js +55 -0
  235. package/lib/module/components/index.js.map +1 -0
  236. package/lib/module/components/types.js +10 -0
  237. package/lib/module/components/types.js.map +1 -0
  238. package/lib/module/index.js +6 -0
  239. package/lib/module/index.js.map +1 -0
  240. package/lib/module/package.json +1 -0
  241. package/lib/module/theme/ThemeProvider.js +95 -0
  242. package/lib/module/theme/ThemeProvider.js.map +1 -0
  243. package/lib/module/theme/createTheme.js +57 -0
  244. package/lib/module/theme/createTheme.js.map +1 -0
  245. package/lib/module/theme/index.js +8 -0
  246. package/lib/module/theme/index.js.map +1 -0
  247. package/lib/module/theme/tokens.js +352 -0
  248. package/lib/module/theme/tokens.js.map +1 -0
  249. package/lib/module/theme/types.js +4 -0
  250. package/lib/module/theme/types.js.map +1 -0
  251. package/lib/module/theme/useTheme.js +12 -0
  252. package/lib/module/theme/useTheme.js.map +1 -0
  253. package/lib/module/theme/useThemeStyles.js +12 -0
  254. package/lib/module/theme/useThemeStyles.js.map +1 -0
  255. package/lib/module/utils/color.js +18 -0
  256. package/lib/module/utils/color.js.map +1 -0
  257. package/lib/module/utils/index.js +4 -0
  258. package/lib/module/utils/index.js.map +1 -0
  259. package/lib/typescript/commonjs/components/Accordion.d.ts +53 -0
  260. package/lib/typescript/commonjs/components/Accordion.d.ts.map +1 -0
  261. package/lib/typescript/commonjs/components/Alert.d.ts +29 -0
  262. package/lib/typescript/commonjs/components/Alert.d.ts.map +1 -0
  263. package/lib/typescript/commonjs/components/AlertDialog.d.ts +32 -0
  264. package/lib/typescript/commonjs/components/AlertDialog.d.ts.map +1 -0
  265. package/lib/typescript/commonjs/components/AspectRatio.d.ts +20 -0
  266. package/lib/typescript/commonjs/components/AspectRatio.d.ts.map +1 -0
  267. package/lib/typescript/commonjs/components/Attachment.d.ts +66 -0
  268. package/lib/typescript/commonjs/components/Attachment.d.ts.map +1 -0
  269. package/lib/typescript/commonjs/components/Avatar.d.ts +37 -0
  270. package/lib/typescript/commonjs/components/Avatar.d.ts.map +1 -0
  271. package/lib/typescript/commonjs/components/Badge.d.ts +16 -0
  272. package/lib/typescript/commonjs/components/Badge.d.ts.map +1 -0
  273. package/lib/typescript/commonjs/components/BottomSheet.d.ts +17 -0
  274. package/lib/typescript/commonjs/components/BottomSheet.d.ts.map +1 -0
  275. package/lib/typescript/commonjs/components/Box.d.ts +23 -0
  276. package/lib/typescript/commonjs/components/Box.d.ts.map +1 -0
  277. package/lib/typescript/commonjs/components/Breadcrumb.d.ts +23 -0
  278. package/lib/typescript/commonjs/components/Breadcrumb.d.ts.map +1 -0
  279. package/lib/typescript/commonjs/components/Bubble.d.ts +31 -0
  280. package/lib/typescript/commonjs/components/Bubble.d.ts.map +1 -0
  281. package/lib/typescript/commonjs/components/Button.d.ts +22 -0
  282. package/lib/typescript/commonjs/components/Button.d.ts.map +1 -0
  283. package/lib/typescript/commonjs/components/ButtonGroup.d.ts +21 -0
  284. package/lib/typescript/commonjs/components/ButtonGroup.d.ts.map +1 -0
  285. package/lib/typescript/commonjs/components/Calendar.d.ts +26 -0
  286. package/lib/typescript/commonjs/components/Calendar.d.ts.map +1 -0
  287. package/lib/typescript/commonjs/components/Card.d.ts +9 -0
  288. package/lib/typescript/commonjs/components/Card.d.ts.map +1 -0
  289. package/lib/typescript/commonjs/components/Carousel.d.ts +44 -0
  290. package/lib/typescript/commonjs/components/Carousel.d.ts.map +1 -0
  291. package/lib/typescript/commonjs/components/Checkbox.d.ts +13 -0
  292. package/lib/typescript/commonjs/components/Checkbox.d.ts.map +1 -0
  293. package/lib/typescript/commonjs/components/Collapsible.d.ts +26 -0
  294. package/lib/typescript/commonjs/components/Collapsible.d.ts.map +1 -0
  295. package/lib/typescript/commonjs/components/Combobox.d.ts +64 -0
  296. package/lib/typescript/commonjs/components/Combobox.d.ts.map +1 -0
  297. package/lib/typescript/commonjs/components/Command.d.ts +22 -0
  298. package/lib/typescript/commonjs/components/Command.d.ts.map +1 -0
  299. package/lib/typescript/commonjs/components/ContextMenu.d.ts +67 -0
  300. package/lib/typescript/commonjs/components/ContextMenu.d.ts.map +1 -0
  301. package/lib/typescript/commonjs/components/DataList.d.ts +19 -0
  302. package/lib/typescript/commonjs/components/DataList.d.ts.map +1 -0
  303. package/lib/typescript/commonjs/components/Divider.d.ts +9 -0
  304. package/lib/typescript/commonjs/components/Divider.d.ts.map +1 -0
  305. package/lib/typescript/commonjs/components/DropdownMenu.d.ts +77 -0
  306. package/lib/typescript/commonjs/components/DropdownMenu.d.ts.map +1 -0
  307. package/lib/typescript/commonjs/components/Empty.d.ts +32 -0
  308. package/lib/typescript/commonjs/components/Empty.d.ts.map +1 -0
  309. package/lib/typescript/commonjs/components/FloatingActionButton.d.ts +24 -0
  310. package/lib/typescript/commonjs/components/FloatingActionButton.d.ts.map +1 -0
  311. package/lib/typescript/commonjs/components/FormField.d.ts +34 -0
  312. package/lib/typescript/commonjs/components/FormField.d.ts.map +1 -0
  313. package/lib/typescript/commonjs/components/HoverCard.d.ts +51 -0
  314. package/lib/typescript/commonjs/components/HoverCard.d.ts.map +1 -0
  315. package/lib/typescript/commonjs/components/IconButton.d.ts +18 -0
  316. package/lib/typescript/commonjs/components/IconButton.d.ts.map +1 -0
  317. package/lib/typescript/commonjs/components/Input.d.ts +14 -0
  318. package/lib/typescript/commonjs/components/Input.d.ts.map +1 -0
  319. package/lib/typescript/commonjs/components/InputGroup.d.ts +36 -0
  320. package/lib/typescript/commonjs/components/InputGroup.d.ts.map +1 -0
  321. package/lib/typescript/commonjs/components/InputOTP.d.ts +42 -0
  322. package/lib/typescript/commonjs/components/InputOTP.d.ts.map +1 -0
  323. package/lib/typescript/commonjs/components/Item.d.ts +53 -0
  324. package/lib/typescript/commonjs/components/Item.d.ts.map +1 -0
  325. package/lib/typescript/commonjs/components/KeyboardAvoiding.d.ts +20 -0
  326. package/lib/typescript/commonjs/components/KeyboardAvoiding.d.ts.map +1 -0
  327. package/lib/typescript/commonjs/components/Label.d.ts +12 -0
  328. package/lib/typescript/commonjs/components/Label.d.ts.map +1 -0
  329. package/lib/typescript/commonjs/components/MetricCard.d.ts +12 -0
  330. package/lib/typescript/commonjs/components/MetricCard.d.ts.map +1 -0
  331. package/lib/typescript/commonjs/components/Pagination.d.ts +12 -0
  332. package/lib/typescript/commonjs/components/Pagination.d.ts.map +1 -0
  333. package/lib/typescript/commonjs/components/Popover.d.ts +20 -0
  334. package/lib/typescript/commonjs/components/Popover.d.ts.map +1 -0
  335. package/lib/typescript/commonjs/components/Progress.d.ts +11 -0
  336. package/lib/typescript/commonjs/components/Progress.d.ts.map +1 -0
  337. package/lib/typescript/commonjs/components/RadioGroup.d.ts +24 -0
  338. package/lib/typescript/commonjs/components/RadioGroup.d.ts.map +1 -0
  339. package/lib/typescript/commonjs/components/Select.d.ts +23 -0
  340. package/lib/typescript/commonjs/components/Select.d.ts.map +1 -0
  341. package/lib/typescript/commonjs/components/Sheet.d.ts +24 -0
  342. package/lib/typescript/commonjs/components/Sheet.d.ts.map +1 -0
  343. package/lib/typescript/commonjs/components/Skeleton.d.ts +10 -0
  344. package/lib/typescript/commonjs/components/Skeleton.d.ts.map +1 -0
  345. package/lib/typescript/commonjs/components/Slider.d.ts +21 -0
  346. package/lib/typescript/commonjs/components/Slider.d.ts.map +1 -0
  347. package/lib/typescript/commonjs/components/Stepper.d.ts +17 -0
  348. package/lib/typescript/commonjs/components/Stepper.d.ts.map +1 -0
  349. package/lib/typescript/commonjs/components/Switch.d.ts +34 -0
  350. package/lib/typescript/commonjs/components/Switch.d.ts.map +1 -0
  351. package/lib/typescript/commonjs/components/Table.d.ts +22 -0
  352. package/lib/typescript/commonjs/components/Table.d.ts.map +1 -0
  353. package/lib/typescript/commonjs/components/Tabs.d.ts +30 -0
  354. package/lib/typescript/commonjs/components/Tabs.d.ts.map +1 -0
  355. package/lib/typescript/commonjs/components/Text.d.ts +12 -0
  356. package/lib/typescript/commonjs/components/Text.d.ts.map +1 -0
  357. package/lib/typescript/commonjs/components/Textarea.d.ts +8 -0
  358. package/lib/typescript/commonjs/components/Textarea.d.ts.map +1 -0
  359. package/lib/typescript/commonjs/components/Timeline.d.ts +20 -0
  360. package/lib/typescript/commonjs/components/Timeline.d.ts.map +1 -0
  361. package/lib/typescript/commonjs/components/Toast.d.ts +87 -0
  362. package/lib/typescript/commonjs/components/Toast.d.ts.map +1 -0
  363. package/lib/typescript/commonjs/components/index.d.ts +106 -0
  364. package/lib/typescript/commonjs/components/index.d.ts.map +1 -0
  365. package/lib/typescript/commonjs/components/types.d.ts +9 -0
  366. package/lib/typescript/commonjs/components/types.d.ts.map +1 -0
  367. package/lib/typescript/commonjs/index.d.ts +4 -0
  368. package/lib/typescript/commonjs/index.d.ts.map +1 -0
  369. package/lib/typescript/commonjs/package.json +1 -0
  370. package/lib/typescript/commonjs/theme/ThemeProvider.d.ts +5 -0
  371. package/lib/typescript/commonjs/theme/ThemeProvider.d.ts.map +1 -0
  372. package/lib/typescript/commonjs/theme/createTheme.d.ts +4 -0
  373. package/lib/typescript/commonjs/theme/createTheme.d.ts.map +1 -0
  374. package/lib/typescript/commonjs/theme/index.d.ts +7 -0
  375. package/lib/typescript/commonjs/theme/index.d.ts.map +1 -0
  376. package/lib/typescript/commonjs/theme/tokens.d.ts +12 -0
  377. package/lib/typescript/commonjs/theme/tokens.d.ts.map +1 -0
  378. package/lib/typescript/commonjs/theme/types.d.ts +219 -0
  379. package/lib/typescript/commonjs/theme/types.d.ts.map +1 -0
  380. package/lib/typescript/commonjs/theme/useTheme.d.ts +2 -0
  381. package/lib/typescript/commonjs/theme/useTheme.d.ts.map +1 -0
  382. package/lib/typescript/commonjs/theme/useThemeStyles.d.ts +3 -0
  383. package/lib/typescript/commonjs/theme/useThemeStyles.d.ts.map +1 -0
  384. package/lib/typescript/commonjs/utils/color.d.ts +2 -0
  385. package/lib/typescript/commonjs/utils/color.d.ts.map +1 -0
  386. package/lib/typescript/commonjs/utils/index.d.ts +2 -0
  387. package/lib/typescript/commonjs/utils/index.d.ts.map +1 -0
  388. package/lib/typescript/module/components/Accordion.d.ts +53 -0
  389. package/lib/typescript/module/components/Accordion.d.ts.map +1 -0
  390. package/lib/typescript/module/components/Alert.d.ts +29 -0
  391. package/lib/typescript/module/components/Alert.d.ts.map +1 -0
  392. package/lib/typescript/module/components/AlertDialog.d.ts +32 -0
  393. package/lib/typescript/module/components/AlertDialog.d.ts.map +1 -0
  394. package/lib/typescript/module/components/AspectRatio.d.ts +20 -0
  395. package/lib/typescript/module/components/AspectRatio.d.ts.map +1 -0
  396. package/lib/typescript/module/components/Attachment.d.ts +66 -0
  397. package/lib/typescript/module/components/Attachment.d.ts.map +1 -0
  398. package/lib/typescript/module/components/Avatar.d.ts +37 -0
  399. package/lib/typescript/module/components/Avatar.d.ts.map +1 -0
  400. package/lib/typescript/module/components/Badge.d.ts +16 -0
  401. package/lib/typescript/module/components/Badge.d.ts.map +1 -0
  402. package/lib/typescript/module/components/BottomSheet.d.ts +17 -0
  403. package/lib/typescript/module/components/BottomSheet.d.ts.map +1 -0
  404. package/lib/typescript/module/components/Box.d.ts +23 -0
  405. package/lib/typescript/module/components/Box.d.ts.map +1 -0
  406. package/lib/typescript/module/components/Breadcrumb.d.ts +23 -0
  407. package/lib/typescript/module/components/Breadcrumb.d.ts.map +1 -0
  408. package/lib/typescript/module/components/Bubble.d.ts +31 -0
  409. package/lib/typescript/module/components/Bubble.d.ts.map +1 -0
  410. package/lib/typescript/module/components/Button.d.ts +22 -0
  411. package/lib/typescript/module/components/Button.d.ts.map +1 -0
  412. package/lib/typescript/module/components/ButtonGroup.d.ts +21 -0
  413. package/lib/typescript/module/components/ButtonGroup.d.ts.map +1 -0
  414. package/lib/typescript/module/components/Calendar.d.ts +26 -0
  415. package/lib/typescript/module/components/Calendar.d.ts.map +1 -0
  416. package/lib/typescript/module/components/Card.d.ts +9 -0
  417. package/lib/typescript/module/components/Card.d.ts.map +1 -0
  418. package/lib/typescript/module/components/Carousel.d.ts +44 -0
  419. package/lib/typescript/module/components/Carousel.d.ts.map +1 -0
  420. package/lib/typescript/module/components/Checkbox.d.ts +13 -0
  421. package/lib/typescript/module/components/Checkbox.d.ts.map +1 -0
  422. package/lib/typescript/module/components/Collapsible.d.ts +26 -0
  423. package/lib/typescript/module/components/Collapsible.d.ts.map +1 -0
  424. package/lib/typescript/module/components/Combobox.d.ts +64 -0
  425. package/lib/typescript/module/components/Combobox.d.ts.map +1 -0
  426. package/lib/typescript/module/components/Command.d.ts +22 -0
  427. package/lib/typescript/module/components/Command.d.ts.map +1 -0
  428. package/lib/typescript/module/components/ContextMenu.d.ts +67 -0
  429. package/lib/typescript/module/components/ContextMenu.d.ts.map +1 -0
  430. package/lib/typescript/module/components/DataList.d.ts +19 -0
  431. package/lib/typescript/module/components/DataList.d.ts.map +1 -0
  432. package/lib/typescript/module/components/Divider.d.ts +9 -0
  433. package/lib/typescript/module/components/Divider.d.ts.map +1 -0
  434. package/lib/typescript/module/components/DropdownMenu.d.ts +77 -0
  435. package/lib/typescript/module/components/DropdownMenu.d.ts.map +1 -0
  436. package/lib/typescript/module/components/Empty.d.ts +32 -0
  437. package/lib/typescript/module/components/Empty.d.ts.map +1 -0
  438. package/lib/typescript/module/components/FloatingActionButton.d.ts +24 -0
  439. package/lib/typescript/module/components/FloatingActionButton.d.ts.map +1 -0
  440. package/lib/typescript/module/components/FormField.d.ts +34 -0
  441. package/lib/typescript/module/components/FormField.d.ts.map +1 -0
  442. package/lib/typescript/module/components/HoverCard.d.ts +51 -0
  443. package/lib/typescript/module/components/HoverCard.d.ts.map +1 -0
  444. package/lib/typescript/module/components/IconButton.d.ts +18 -0
  445. package/lib/typescript/module/components/IconButton.d.ts.map +1 -0
  446. package/lib/typescript/module/components/Input.d.ts +14 -0
  447. package/lib/typescript/module/components/Input.d.ts.map +1 -0
  448. package/lib/typescript/module/components/InputGroup.d.ts +36 -0
  449. package/lib/typescript/module/components/InputGroup.d.ts.map +1 -0
  450. package/lib/typescript/module/components/InputOTP.d.ts +42 -0
  451. package/lib/typescript/module/components/InputOTP.d.ts.map +1 -0
  452. package/lib/typescript/module/components/Item.d.ts +53 -0
  453. package/lib/typescript/module/components/Item.d.ts.map +1 -0
  454. package/lib/typescript/module/components/KeyboardAvoiding.d.ts +20 -0
  455. package/lib/typescript/module/components/KeyboardAvoiding.d.ts.map +1 -0
  456. package/lib/typescript/module/components/Label.d.ts +12 -0
  457. package/lib/typescript/module/components/Label.d.ts.map +1 -0
  458. package/lib/typescript/module/components/MetricCard.d.ts +12 -0
  459. package/lib/typescript/module/components/MetricCard.d.ts.map +1 -0
  460. package/lib/typescript/module/components/Pagination.d.ts +12 -0
  461. package/lib/typescript/module/components/Pagination.d.ts.map +1 -0
  462. package/lib/typescript/module/components/Popover.d.ts +20 -0
  463. package/lib/typescript/module/components/Popover.d.ts.map +1 -0
  464. package/lib/typescript/module/components/Progress.d.ts +11 -0
  465. package/lib/typescript/module/components/Progress.d.ts.map +1 -0
  466. package/lib/typescript/module/components/RadioGroup.d.ts +24 -0
  467. package/lib/typescript/module/components/RadioGroup.d.ts.map +1 -0
  468. package/lib/typescript/module/components/Select.d.ts +23 -0
  469. package/lib/typescript/module/components/Select.d.ts.map +1 -0
  470. package/lib/typescript/module/components/Sheet.d.ts +24 -0
  471. package/lib/typescript/module/components/Sheet.d.ts.map +1 -0
  472. package/lib/typescript/module/components/Skeleton.d.ts +10 -0
  473. package/lib/typescript/module/components/Skeleton.d.ts.map +1 -0
  474. package/lib/typescript/module/components/Slider.d.ts +21 -0
  475. package/lib/typescript/module/components/Slider.d.ts.map +1 -0
  476. package/lib/typescript/module/components/Stepper.d.ts +17 -0
  477. package/lib/typescript/module/components/Stepper.d.ts.map +1 -0
  478. package/lib/typescript/module/components/Switch.d.ts +34 -0
  479. package/lib/typescript/module/components/Switch.d.ts.map +1 -0
  480. package/lib/typescript/module/components/Table.d.ts +22 -0
  481. package/lib/typescript/module/components/Table.d.ts.map +1 -0
  482. package/lib/typescript/module/components/Tabs.d.ts +30 -0
  483. package/lib/typescript/module/components/Tabs.d.ts.map +1 -0
  484. package/lib/typescript/module/components/Text.d.ts +12 -0
  485. package/lib/typescript/module/components/Text.d.ts.map +1 -0
  486. package/lib/typescript/module/components/Textarea.d.ts +8 -0
  487. package/lib/typescript/module/components/Textarea.d.ts.map +1 -0
  488. package/lib/typescript/module/components/Timeline.d.ts +20 -0
  489. package/lib/typescript/module/components/Timeline.d.ts.map +1 -0
  490. package/lib/typescript/module/components/Toast.d.ts +87 -0
  491. package/lib/typescript/module/components/Toast.d.ts.map +1 -0
  492. package/lib/typescript/module/components/index.d.ts +106 -0
  493. package/lib/typescript/module/components/index.d.ts.map +1 -0
  494. package/lib/typescript/module/components/types.d.ts +9 -0
  495. package/lib/typescript/module/components/types.d.ts.map +1 -0
  496. package/lib/typescript/module/index.d.ts +4 -0
  497. package/lib/typescript/module/index.d.ts.map +1 -0
  498. package/lib/typescript/module/package.json +1 -0
  499. package/lib/typescript/module/theme/ThemeProvider.d.ts +5 -0
  500. package/lib/typescript/module/theme/ThemeProvider.d.ts.map +1 -0
  501. package/lib/typescript/module/theme/createTheme.d.ts +4 -0
  502. package/lib/typescript/module/theme/createTheme.d.ts.map +1 -0
  503. package/lib/typescript/module/theme/index.d.ts +7 -0
  504. package/lib/typescript/module/theme/index.d.ts.map +1 -0
  505. package/lib/typescript/module/theme/tokens.d.ts +12 -0
  506. package/lib/typescript/module/theme/tokens.d.ts.map +1 -0
  507. package/lib/typescript/module/theme/types.d.ts +219 -0
  508. package/lib/typescript/module/theme/types.d.ts.map +1 -0
  509. package/lib/typescript/module/theme/useTheme.d.ts +2 -0
  510. package/lib/typescript/module/theme/useTheme.d.ts.map +1 -0
  511. package/lib/typescript/module/theme/useThemeStyles.d.ts +3 -0
  512. package/lib/typescript/module/theme/useThemeStyles.d.ts.map +1 -0
  513. package/lib/typescript/module/utils/color.d.ts +2 -0
  514. package/lib/typescript/module/utils/color.d.ts.map +1 -0
  515. package/lib/typescript/module/utils/index.d.ts +2 -0
  516. package/lib/typescript/module/utils/index.d.ts.map +1 -0
  517. package/package.json +44 -18
  518. package/dist/index.d.mts +0 -1593
  519. package/dist/index.d.ts +0 -1593
  520. package/dist/index.js +0 -7979
  521. package/dist/index.mjs +0 -8025
@@ -0,0 +1,184 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.FloatingActionButton = FloatingActionButton;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
10
+ var _index = require("../theme/index.js");
11
+ var _index2 = require("../utils/index.js");
12
+ var _Text = require("./Text.js");
13
+ var _types = require("./types.js");
14
+ var _jsxRuntime = require("react/jsx-runtime");
15
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
16
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
17
+ function getToneColors(tone, colors) {
18
+ if (tone === "primary") return {
19
+ base: colors.primary,
20
+ soft: colors.primarySoft,
21
+ on: colors.onPrimary
22
+ };
23
+ if (tone === "secondary") return {
24
+ base: colors.secondary,
25
+ soft: colors.secondarySoft,
26
+ on: colors.onSecondary
27
+ };
28
+ if (tone === "accent") return {
29
+ base: colors.accent,
30
+ soft: colors.accentSoft,
31
+ on: colors.onAccent
32
+ };
33
+ if (tone === "success") return {
34
+ base: colors.success,
35
+ soft: colors.successSoft,
36
+ on: colors.onSuccess
37
+ };
38
+ if (tone === "warning") return {
39
+ base: colors.warning,
40
+ soft: colors.warningSoft,
41
+ on: colors.onWarning
42
+ };
43
+ if (tone === "danger") return {
44
+ base: colors.danger,
45
+ soft: colors.dangerSoft,
46
+ on: colors.onDanger
47
+ };
48
+ return {
49
+ base: colors.info,
50
+ soft: colors.infoSoft,
51
+ on: colors.onInfo
52
+ };
53
+ }
54
+ function FloatingActionButton({
55
+ icon,
56
+ label,
57
+ extended = Boolean(label),
58
+ size = "md",
59
+ tone = "primary",
60
+ variant = "filled",
61
+ placement = "bottom-end",
62
+ offset,
63
+ visible = true,
64
+ animated = true,
65
+ loading,
66
+ disabled,
67
+ fullWidth,
68
+ style,
69
+ textStyle,
70
+ onPressIn,
71
+ onPressOut,
72
+ ...props
73
+ }) {
74
+ const {
75
+ colors,
76
+ components,
77
+ radii,
78
+ spacing,
79
+ typography
80
+ } = (0, _index.useTheme)();
81
+ const [mounted, setMounted] = _react.default.useState(visible);
82
+ const visibility = (0, _reactNativeReanimated.useSharedValue)(visible ? 1 : 0);
83
+ const press = (0, _reactNativeReanimated.useSharedValue)(1);
84
+ const isDisabled = disabled || loading;
85
+ const toneColors = getToneColors(tone, colors);
86
+ const fabTokens = components.floatingActionButton;
87
+ const dimension = fabTokens.size[size];
88
+ const iconSize = fabTokens.iconSize[size];
89
+ const resolvedOffset = offset ?? spacing.lg;
90
+ _react.default.useEffect(() => {
91
+ if (visible) {
92
+ setMounted(true);
93
+ }
94
+ if (!animated) {
95
+ visibility.value = visible ? 1 : 0;
96
+ if (!visible) {
97
+ setMounted(false);
98
+ }
99
+ return;
100
+ }
101
+ visibility.value = (0, _reactNativeReanimated.withTiming)(visible ? 1 : 0, {
102
+ duration: 180
103
+ }, finished => {
104
+ if (finished && !visible) {
105
+ (0, _reactNativeReanimated.runOnJS)(setMounted)(false);
106
+ }
107
+ });
108
+ }, [animated, visible, visibility]);
109
+ const animatedStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => ({
110
+ opacity: visibility.value,
111
+ transform: [{
112
+ scale: press.value * (0.88 + visibility.value * 0.12)
113
+ }, {
114
+ translateY: 8 * (1 - visibility.value)
115
+ }]
116
+ }));
117
+ if (!mounted) {
118
+ return null;
119
+ }
120
+ const backgroundColor = isDisabled ? colors.disabled : variant === "filled" ? toneColors.base : variant === "soft" ? toneColors.soft : variant === "outline" ? colors.surface : colors.transparent;
121
+ const foregroundColor = isDisabled ? colors.disabledText : variant === "filled" ? toneColors.on : toneColors.base;
122
+ const borderColor = isDisabled ? colors.disabled : variant === "outline" ? (0, _index2.withAlpha)(toneColors.base, 0.42) : colors.transparent;
123
+ const placementStyle = placement === "none" ? {} : {
124
+ position: "absolute",
125
+ bottom: placement.startsWith("bottom") ? resolvedOffset : undefined,
126
+ top: placement.startsWith("top") ? resolvedOffset : undefined,
127
+ right: placement.endsWith("end") ? resolvedOffset : undefined,
128
+ left: placement.endsWith("start") ? resolvedOffset : undefined,
129
+ zIndex: 100
130
+ };
131
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
132
+ style: [placementStyle, animated ? animatedStyle : undefined],
133
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Pressable, {
134
+ accessibilityRole: "button",
135
+ disabled: isDisabled,
136
+ onPressIn: event => {
137
+ if (animated) {
138
+ press.value = (0, _reactNativeReanimated.withSpring)(0.94, {
139
+ damping: 16,
140
+ stiffness: 260
141
+ });
142
+ }
143
+ onPressIn?.(event);
144
+ },
145
+ onPressOut: event => {
146
+ if (animated) {
147
+ press.value = (0, _reactNativeReanimated.withSpring)(1, {
148
+ damping: 16,
149
+ stiffness: 260
150
+ });
151
+ }
152
+ onPressOut?.(event);
153
+ },
154
+ style: ({
155
+ pressed
156
+ }) => [{
157
+ minWidth: extended ? undefined : dimension,
158
+ width: fullWidth ? "100%" : undefined,
159
+ height: dimension,
160
+ paddingHorizontal: extended ? fabTokens.paddingX[size] : 0,
161
+ borderRadius: radii.full,
162
+ borderWidth: variant === "outline" ? components.borderWidth.strong : 0,
163
+ borderColor,
164
+ backgroundColor,
165
+ flexDirection: "row",
166
+ alignItems: "center",
167
+ justifyContent: "center",
168
+ gap: spacing.sm,
169
+ opacity: !animated && pressed && !isDisabled ? 0.78 : 1
170
+ }, style],
171
+ ...props,
172
+ children: [loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.ActivityIndicator, {
173
+ size: "small",
174
+ color: foregroundColor
175
+ }) : (0, _types.renderIcon)(icon, foregroundColor, iconSize), extended && label ? typeof label === "string" ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.Text, {
176
+ style: [typography.label, {
177
+ color: foregroundColor
178
+ }, textStyle],
179
+ children: label
180
+ }) : label : null]
181
+ })
182
+ });
183
+ }
184
+ //# sourceMappingURL=FloatingActionButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeReanimated","_interopRequireWildcard","_index","_index2","_Text","_types","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","getToneColors","tone","colors","base","primary","soft","primarySoft","on","onPrimary","secondary","secondarySoft","onSecondary","accent","accentSoft","onAccent","success","successSoft","onSuccess","warning","warningSoft","onWarning","danger","dangerSoft","onDanger","info","infoSoft","onInfo","FloatingActionButton","icon","label","extended","Boolean","size","variant","placement","offset","visible","animated","loading","disabled","fullWidth","style","textStyle","onPressIn","onPressOut","props","components","radii","spacing","typography","useTheme","mounted","setMounted","React","useState","visibility","useSharedValue","press","isDisabled","toneColors","fabTokens","floatingActionButton","dimension","iconSize","resolvedOffset","lg","useEffect","value","withTiming","duration","finished","runOnJS","animatedStyle","useAnimatedStyle","opacity","transform","scale","translateY","backgroundColor","surface","transparent","foregroundColor","disabledText","borderColor","withAlpha","placementStyle","position","bottom","startsWith","undefined","top","right","endsWith","left","zIndex","jsx","View","children","jsxs","Pressable","accessibilityRole","event","withSpring","damping","stiffness","pressed","minWidth","width","height","paddingHorizontal","paddingX","borderRadius","full","borderWidth","strong","flexDirection","alignItems","justifyContent","gap","sm","ActivityIndicator","color","renderIcon","Text"],"sourceRoot":"../../../src","sources":["components/FloatingActionButton.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.FormControl = FormControl;
7
+ exports.FormDescription = FormDescription;
8
+ exports.FormField = FormField;
9
+ exports.FormLabel = FormLabel;
10
+ exports.FormMessage = FormMessage;
11
+ exports.useFormField = useFormField;
12
+ var _react = _interopRequireDefault(require("react"));
13
+ var _reactNative = require("react-native");
14
+ var _index = require("../theme/index.js");
15
+ var _Label = require("./Label.js");
16
+ var _Text = require("./Text.js");
17
+ var _jsxRuntime = require("react/jsx-runtime");
18
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
19
+ const FormFieldContext = /*#__PURE__*/_react.default.createContext(null);
20
+ function useFormField() {
21
+ return _react.default.useContext(FormFieldContext);
22
+ }
23
+ function FormField({
24
+ invalid = false,
25
+ disabled = false,
26
+ required = false,
27
+ style,
28
+ ...props
29
+ }) {
30
+ const {
31
+ spacing
32
+ } = (0, _index.useTheme)();
33
+ const value = _react.default.useMemo(() => ({
34
+ invalid,
35
+ disabled,
36
+ required
37
+ }), [disabled, invalid, required]);
38
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(FormFieldContext.Provider, {
39
+ value: value,
40
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
41
+ style: [{
42
+ width: "100%",
43
+ gap: spacing.xs
44
+ }, style],
45
+ ...props
46
+ })
47
+ });
48
+ }
49
+ function FormLabel(props) {
50
+ const field = useFormField();
51
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Label.Label, {
52
+ invalid: field?.invalid,
53
+ disabled: field?.disabled,
54
+ required: field?.required,
55
+ ...props
56
+ });
57
+ }
58
+ function FormControl({
59
+ style,
60
+ ...props
61
+ }) {
62
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
63
+ style: [{
64
+ width: "100%"
65
+ }, style],
66
+ ...props
67
+ });
68
+ }
69
+ function FormDescription({
70
+ children,
71
+ style
72
+ }) {
73
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.Text, {
74
+ variant: "bodySmall",
75
+ color: "textMuted",
76
+ style: style,
77
+ children: children
78
+ });
79
+ }
80
+ function FormMessage({
81
+ children,
82
+ style
83
+ }) {
84
+ const field = useFormField();
85
+ if (!children) return null;
86
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.Text, {
87
+ variant: "bodySmall",
88
+ color: field?.invalid ? "danger" : "textMuted",
89
+ style: style,
90
+ children: children
91
+ });
92
+ }
93
+ //# sourceMappingURL=FormField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_index","_Label","_Text","_jsxRuntime","e","__esModule","default","FormFieldContext","React","createContext","useFormField","useContext","FormField","invalid","disabled","required","style","props","spacing","useTheme","value","useMemo","jsx","Provider","children","View","width","gap","xs","FormLabel","field","Label","FormControl","FormDescription","Text","variant","color","FormMessage"],"sourceRoot":"../../../src","sources":["components/FormField.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,212 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.HoverCard = HoverCard;
7
+ exports.HoverCardContent = HoverCardContent;
8
+ exports.HoverCardTrigger = HoverCardTrigger;
9
+ exports.useHoverCard = useHoverCard;
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _reactNative = require("react-native");
12
+ var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
13
+ var _index = require("../theme/index.js");
14
+ var _jsxRuntime = require("react/jsx-runtime");
15
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
16
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
17
+ const HoverCardContext = /*#__PURE__*/_react.default.createContext(null);
18
+ function useHoverCard() {
19
+ const context = _react.default.useContext(HoverCardContext);
20
+ if (!context) {
21
+ throw new Error("useHoverCard must be used within a <HoverCard />");
22
+ }
23
+ return context;
24
+ }
25
+ function HoverCard({
26
+ open: controlledOpen,
27
+ defaultOpen = false,
28
+ onOpenChange,
29
+ openDelay = 10,
30
+ closeDelay = 100,
31
+ triggerMode = "longPress",
32
+ children
33
+ }) {
34
+ const {
35
+ colors
36
+ } = (0, _index.useTheme)();
37
+ const [uncontrolledOpen, setUncontrolledOpen] = _react.default.useState(defaultOpen);
38
+ const [triggerLayout, setTriggerLayout] = _react.default.useState({
39
+ pageX: 0,
40
+ pageY: 0,
41
+ width: 0,
42
+ height: 0
43
+ });
44
+ const isControlled = controlledOpen !== undefined;
45
+ const open = isControlled ? controlledOpen : uncontrolledOpen;
46
+ const setOpen = _react.default.useCallback(nextOpen => {
47
+ if (!isControlled) {
48
+ setUncontrolledOpen(nextOpen);
49
+ }
50
+ onOpenChange?.(nextOpen);
51
+ }, [isControlled, onOpenChange]);
52
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(HoverCardContext.Provider, {
53
+ value: {
54
+ open,
55
+ setOpen,
56
+ triggerLayout,
57
+ setTriggerLayout,
58
+ openDelay,
59
+ closeDelay,
60
+ triggerMode,
61
+ colors
62
+ },
63
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
64
+ style: {
65
+ alignSelf: "flex-start"
66
+ },
67
+ children: children
68
+ })
69
+ });
70
+ }
71
+ function HoverCardTrigger({
72
+ children,
73
+ disabled = false,
74
+ style
75
+ }) {
76
+ const {
77
+ open,
78
+ setOpen,
79
+ setTriggerLayout,
80
+ openDelay,
81
+ closeDelay,
82
+ triggerMode
83
+ } = useHoverCard();
84
+ const triggerRef = _react.default.useRef(null);
85
+ const openTimer = _react.default.useRef(null);
86
+ const closeTimer = _react.default.useRef(null);
87
+ _react.default.useEffect(() => {
88
+ return () => {
89
+ if (openTimer.current) clearTimeout(openTimer.current);
90
+ if (closeTimer.current) clearTimeout(closeTimer.current);
91
+ };
92
+ }, []);
93
+ const measureAndSetOpen = _react.default.useCallback(nextOpen => {
94
+ if (disabled || triggerMode === "manual") return;
95
+ if (closeTimer.current) clearTimeout(closeTimer.current);
96
+ triggerRef.current?.measureInWindow((x, y, width, height) => {
97
+ if (width > 0 && height > 0) {
98
+ setTriggerLayout({
99
+ pageX: x,
100
+ pageY: y,
101
+ width,
102
+ height
103
+ });
104
+ if (openTimer.current) clearTimeout(openTimer.current);
105
+ openTimer.current = setTimeout(() => setOpen(nextOpen), openDelay);
106
+ }
107
+ });
108
+ }, [disabled, openDelay, setOpen, setTriggerLayout, triggerMode]);
109
+ const close = _react.default.useCallback(() => {
110
+ if (triggerMode === "manual") return;
111
+ if (openTimer.current) clearTimeout(openTimer.current);
112
+ closeTimer.current = setTimeout(() => setOpen(false), closeDelay);
113
+ }, [closeDelay, setOpen, triggerMode]);
114
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
115
+ ref: triggerRef,
116
+ accessibilityRole: "button",
117
+ accessibilityState: {
118
+ expanded: open,
119
+ disabled
120
+ },
121
+ disabled: disabled,
122
+ onPress: triggerMode === "press" ? () => measureAndSetOpen(!open) : undefined,
123
+ onLongPress: triggerMode === "longPress" ? () => measureAndSetOpen(true) : undefined,
124
+ onPressOut: triggerMode === "longPress" ? close : undefined,
125
+ delayLongPress: 420,
126
+ style: style,
127
+ children: children
128
+ });
129
+ }
130
+ function HoverCardContent({
131
+ children,
132
+ align = "center",
133
+ width = 256,
134
+ maxHeight = 320,
135
+ sideOffset = 4,
136
+ style,
137
+ overlayStyle,
138
+ modalProps
139
+ }) {
140
+ const {
141
+ open,
142
+ setOpen,
143
+ triggerLayout,
144
+ colors
145
+ } = useHoverCard();
146
+ const {
147
+ components,
148
+ radii,
149
+ spacing
150
+ } = (0, _index.useTheme)();
151
+ const progress = (0, _reactNativeReanimated.useSharedValue)(0);
152
+ _react.default.useEffect(() => {
153
+ progress.value = (0, _reactNativeReanimated.withTiming)(open ? 1 : 0, {
154
+ duration: 100
155
+ });
156
+ }, [open, progress]);
157
+ const {
158
+ height: screenHeight,
159
+ width: screenWidth
160
+ } = _reactNative.Dimensions.get("window");
161
+ const resolvedWidth = Math.min(width, screenWidth - spacing.lg * 2);
162
+ const spaceBelow = screenHeight - (triggerLayout.pageY + triggerLayout.height);
163
+ const renderAbove = spaceBelow < maxHeight + spacing.xl;
164
+ const centerX = triggerLayout.pageX + triggerLayout.width / 2;
165
+ const rawLeft = align === "start" ? triggerLayout.pageX : align === "end" ? triggerLayout.pageX + triggerLayout.width - resolvedWidth : centerX - resolvedWidth / 2;
166
+ const left = Math.min(Math.max(spacing.lg, rawLeft), screenWidth - resolvedWidth - spacing.lg);
167
+ const positionStyle = renderAbove ? {
168
+ bottom: screenHeight - triggerLayout.pageY + sideOffset
169
+ } : {
170
+ top: triggerLayout.pageY + triggerLayout.height + sideOffset
171
+ };
172
+ const animatedStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => {
173
+ return {
174
+ opacity: progress.value,
175
+ transform: [{
176
+ translateY: renderAbove ? (1 - progress.value) * 8 : (1 - progress.value) * -8
177
+ }, {
178
+ scale: 0.95 + progress.value * 0.05
179
+ }]
180
+ };
181
+ });
182
+ if (!open) return null;
183
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Modal, {
184
+ transparent: true,
185
+ visible: open,
186
+ animationType: "none",
187
+ statusBarTranslucent: true,
188
+ navigationBarTranslucent: true,
189
+ hardwareAccelerated: true,
190
+ onRequestClose: () => setOpen(false),
191
+ ...modalProps,
192
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
193
+ style: [_reactNative.StyleSheet.absoluteFill, overlayStyle],
194
+ onPress: () => setOpen(false)
195
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
196
+ style: [{
197
+ position: "absolute",
198
+ left,
199
+ width: resolvedWidth,
200
+ maxHeight,
201
+ borderRadius: radii.lg,
202
+ backgroundColor: colors.surface,
203
+ borderWidth: components.borderWidth.strong,
204
+ borderColor: colors.border,
205
+ padding: spacing.md,
206
+ overflow: "hidden"
207
+ }, positionStyle, animatedStyle, style],
208
+ children: children
209
+ })]
210
+ });
211
+ }
212
+ //# sourceMappingURL=HoverCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeReanimated","_interopRequireWildcard","_index","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","HoverCardContext","React","createContext","useHoverCard","context","useContext","Error","HoverCard","open","controlledOpen","defaultOpen","onOpenChange","openDelay","closeDelay","triggerMode","children","colors","useTheme","uncontrolledOpen","setUncontrolledOpen","useState","triggerLayout","setTriggerLayout","pageX","pageY","width","height","isControlled","undefined","setOpen","useCallback","nextOpen","jsx","Provider","value","View","style","alignSelf","HoverCardTrigger","disabled","triggerRef","useRef","openTimer","closeTimer","useEffect","current","clearTimeout","measureAndSetOpen","measureInWindow","x","y","setTimeout","close","Pressable","ref","accessibilityRole","accessibilityState","expanded","onPress","onLongPress","onPressOut","delayLongPress","HoverCardContent","align","maxHeight","sideOffset","overlayStyle","modalProps","components","radii","spacing","progress","useSharedValue","withTiming","duration","screenHeight","screenWidth","Dimensions","resolvedWidth","Math","min","lg","spaceBelow","renderAbove","xl","centerX","rawLeft","left","max","positionStyle","bottom","top","animatedStyle","useAnimatedStyle","opacity","transform","translateY","scale","jsxs","Modal","transparent","visible","animationType","statusBarTranslucent","navigationBarTranslucent","hardwareAccelerated","onRequestClose","StyleSheet","absoluteFill","position","borderRadius","backgroundColor","surface","borderWidth","strong","borderColor","border","padding","md","overflow"],"sourceRoot":"../../../src","sources":["components/HoverCard.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.IconButton = IconButton;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _index = require("../theme/index.js");
10
+ var _index2 = require("../utils/index.js");
11
+ var _Text = require("./Text.js");
12
+ var _types = require("./types.js");
13
+ var _jsxRuntime = require("react/jsx-runtime");
14
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
+ function getToneColor(tone, colors) {
16
+ if (tone === "primary") return colors.primary;
17
+ if (tone === "secondary") return colors.secondary;
18
+ if (tone === "accent") return colors.accent;
19
+ if (tone === "success") return colors.success;
20
+ if (tone === "warning") return colors.warning;
21
+ if (tone === "danger") return colors.danger;
22
+ return colors.info;
23
+ }
24
+ function resolveColor(color, colors) {
25
+ if (!color) return undefined;
26
+ return color in colors ? colors[color] : color;
27
+ }
28
+ function IconButton({
29
+ icon,
30
+ variant = "ghost",
31
+ size = "md",
32
+ tone = "primary",
33
+ color,
34
+ loading,
35
+ disabled,
36
+ badge,
37
+ style,
38
+ ...props
39
+ }) {
40
+ const {
41
+ colors,
42
+ components
43
+ } = (0, _index.useTheme)();
44
+ const base = resolveColor(color, colors) ?? getToneColor(tone, colors);
45
+ const isDisabled = disabled || loading;
46
+ const containerSize = components.iconButton.size[size];
47
+ const iconSize = components.iconButton.iconSize[size];
48
+ const badgeTokens = components.iconButton.badge;
49
+ const backgroundColor = isDisabled ? colors.disabled : variant === "filled" ? base : variant === "soft" ? (0, _index2.withAlpha)(base, 0.12) : variant === "outline" ? colors.surface : colors.transparent;
50
+ const iconColor = isDisabled ? colors.disabledText : variant === "filled" ? colors.onPrimary : variant === "ghost" ? colors.text : base;
51
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Pressable, {
52
+ accessibilityRole: "button",
53
+ disabled: isDisabled,
54
+ style: ({
55
+ pressed
56
+ }) => [{
57
+ width: containerSize,
58
+ height: containerSize,
59
+ borderRadius: containerSize / 2,
60
+ backgroundColor,
61
+ borderColor: variant === "outline" ? colors.border : colors.transparent,
62
+ borderWidth: variant === "outline" ? components.borderWidth.strong : 0,
63
+ alignItems: "center",
64
+ justifyContent: "center",
65
+ opacity: pressed && !isDisabled ? 0.72 : 1
66
+ }, style],
67
+ ...props,
68
+ children: [loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.ActivityIndicator, {
69
+ color: iconColor
70
+ }) : (0, _types.renderIcon)(icon, iconColor, iconSize), !!badge && badge > 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
71
+ style: {
72
+ position: "absolute",
73
+ top: badgeTokens.offset,
74
+ right: badgeTokens.offset,
75
+ minWidth: badgeTokens.minWidth,
76
+ height: badgeTokens.size,
77
+ paddingHorizontal: badgeTokens.paddingX,
78
+ borderRadius: badgeTokens.size / 2,
79
+ alignItems: "center",
80
+ justifyContent: "center",
81
+ backgroundColor: colors.danger,
82
+ borderWidth: badgeTokens.borderWidth,
83
+ borderColor: colors.surface
84
+ },
85
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.Text, {
86
+ variant: "caption",
87
+ color: "onDanger",
88
+ weight: "700",
89
+ style: {
90
+ fontSize: badgeTokens.fontSize,
91
+ lineHeight: badgeTokens.lineHeight
92
+ },
93
+ children: badge > 99 ? "99+" : String(badge)
94
+ })
95
+ })]
96
+ });
97
+ }
98
+ //# sourceMappingURL=IconButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_index","_index2","_Text","_types","_jsxRuntime","e","__esModule","default","getToneColor","tone","colors","primary","secondary","accent","success","warning","danger","info","resolveColor","color","undefined","IconButton","icon","variant","size","loading","disabled","badge","style","props","components","useTheme","base","isDisabled","containerSize","iconButton","iconSize","badgeTokens","backgroundColor","withAlpha","surface","transparent","iconColor","disabledText","onPrimary","text","jsxs","Pressable","accessibilityRole","pressed","width","height","borderRadius","borderColor","border","borderWidth","strong","alignItems","justifyContent","opacity","children","jsx","ActivityIndicator","renderIcon","View","position","top","offset","right","minWidth","paddingHorizontal","paddingX","Text","weight","fontSize","lineHeight","String"],"sourceRoot":"../../../src","sources":["components/IconButton.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AASA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AAA2E,IAAAM,WAAA,GAAAN,OAAA;AAAA,SAAAD,uBAAAQ,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AA2B3E,SAASG,YAAYA,CACnBC,IAAoB,EACpBC,MAA6C,EAC7C;EACA,IAAID,IAAI,KAAK,SAAS,EAAE,OAAOC,MAAM,CAACC,OAAO;EAC7C,IAAIF,IAAI,KAAK,WAAW,EAAE,OAAOC,MAAM,CAACE,SAAS;EACjD,IAAIH,IAAI,KAAK,QAAQ,EAAE,OAAOC,MAAM,CAACG,MAAM;EAC3C,IAAIJ,IAAI,KAAK,SAAS,EAAE,OAAOC,MAAM,CAACI,OAAO;EAC7C,IAAIL,IAAI,KAAK,SAAS,EAAE,OAAOC,MAAM,CAACK,OAAO;EAC7C,IAAIN,IAAI,KAAK,QAAQ,EAAE,OAAOC,MAAM,CAACM,MAAM;EAC3C,OAAON,MAAM,CAACO,IAAI;AACpB;AAEA,SAASC,YAAYA,CACnBC,KAA0C,EAC1CT,MAA6C,EAC7C;EACA,IAAI,CAACS,KAAK,EAAE,OAAOC,SAAS;EAC5B,OAAOD,KAAK,IAAIT,MAAM,GAAGA,MAAM,CAACS,KAAK,CAAmB,GAAGA,KAAK;AAClE;AAEO,SAASE,UAAUA,CAAC;EACzBC,IAAI;EACJC,OAAO,GAAG,OAAO;EACjBC,IAAI,GAAG,IAAI;EACXf,IAAI,GAAG,SAAS;EAChBU,KAAK;EACLM,OAAO;EACPC,QAAQ;EACRC,KAAK;EACLC,KAAK;EACL,GAAGC;AACY,CAAC,EAAE;EAClB,MAAM;IAAEnB,MAAM;IAAEoB;EAAW,CAAC,GAAG,IAAAC,eAAQ,EAAC,CAAC;EACzC,MAAMC,IAAI,GAAGd,YAAY,CAACC,KAAK,EAAET,MAAM,CAAC,IAAIF,YAAY,CAACC,IAAI,EAAEC,MAAM,CAAC;EACtE,MAAMuB,UAAU,GAAGP,QAAQ,IAAID,OAAO;EACtC,MAAMS,aAAa,GAAGJ,UAAU,CAACK,UAAU,CAACX,IAAI,CAACA,IAAI,CAAC;EACtD,MAAMY,QAAQ,GAAGN,UAAU,CAACK,UAAU,CAACC,QAAQ,CAACZ,IAAI,CAAC;EACrD,MAAMa,WAAW,GAAGP,UAAU,CAACK,UAAU,CAACR,KAAK;EAE/C,MAAMW,eAAe,GAAGL,UAAU,GAC9BvB,MAAM,CAACgB,QAAQ,GACfH,OAAO,KAAK,QAAQ,GAClBS,IAAI,GACJT,OAAO,KAAK,MAAM,GAChB,IAAAgB,iBAAS,EAACP,IAAI,EAAE,IAAI,CAAC,GACrBT,OAAO,KAAK,SAAS,GACnBb,MAAM,CAAC8B,OAAO,GACd9B,MAAM,CAAC+B,WAAW;EAE5B,MAAMC,SAAS,GAAGT,UAAU,GACxBvB,MAAM,CAACiC,YAAY,GACnBpB,OAAO,KAAK,QAAQ,GAClBb,MAAM,CAACkC,SAAS,GAChBrB,OAAO,KAAK,OAAO,GACjBb,MAAM,CAACmC,IAAI,GACXb,IAAI;EAEZ,oBACE,IAAA5B,WAAA,CAAA0C,IAAA,EAAC/C,YAAA,CAAAgD,SAAS;IACRC,iBAAiB,EAAC,QAAQ;IAC1BtB,QAAQ,EAAEO,UAAW;IACrBL,KAAK,EAAEA,CAAC;MAAEqB;IAAQ,CAAC,KAAK,CACtB;MACEC,KAAK,EAAEhB,aAAa;MACpBiB,MAAM,EAAEjB,aAAa;MACrBkB,YAAY,EAAElB,aAAa,GAAG,CAAC;MAC/BI,eAAe;MACfe,WAAW,EACT9B,OAAO,KAAK,SAAS,GAAGb,MAAM,CAAC4C,MAAM,GAAG5C,MAAM,CAAC+B,WAAW;MAC5Dc,WAAW,EACThC,OAAO,KAAK,SAAS,GAAGO,UAAU,CAACyB,WAAW,CAACC,MAAM,GAAG,CAAC;MAC3DC,UAAU,EAAE,QAAQ;MACpBC,cAAc,EAAE,QAAQ;MACxBC,OAAO,EAAEV,OAAO,IAAI,CAAChB,UAAU,GAAG,IAAI,GAAG;IAC3C,CAAC,EACDL,KAAK,CACL;IAAA,GACEC,KAAK;IAAA+B,QAAA,GAERnC,OAAO,gBACN,IAAArB,WAAA,CAAAyD,GAAA,EAAC9D,YAAA,CAAA+D,iBAAiB;MAAC3C,KAAK,EAAEuB;IAAU,CAAE,CAAC,GAEvC,IAAAqB,iBAAU,EAACzC,IAAI,EAAEoB,SAAS,EAAEN,QAAQ,CACrC,EACA,CAAC,CAACT,KAAK,IAAIA,KAAK,GAAG,CAAC,iBACnB,IAAAvB,WAAA,CAAAyD,GAAA,EAAC9D,YAAA,CAAAiE,IAAI;MACHpC,KAAK,EAAE;QACLqC,QAAQ,EAAE,UAAU;QACpBC,GAAG,EAAE7B,WAAW,CAAC8B,MAAM;QACvBC,KAAK,EAAE/B,WAAW,CAAC8B,MAAM;QACzBE,QAAQ,EAAEhC,WAAW,CAACgC,QAAQ;QAC9BlB,MAAM,EAAEd,WAAW,CAACb,IAAI;QACxB8C,iBAAiB,EAAEjC,WAAW,CAACkC,QAAQ;QACvCnB,YAAY,EAAEf,WAAW,CAACb,IAAI,GAAG,CAAC;QAClCiC,UAAU,EAAE,QAAQ;QACpBC,cAAc,EAAE,QAAQ;QACxBpB,eAAe,EAAE5B,MAAM,CAACM,MAAM;QAC9BuC,WAAW,EAAElB,WAAW,CAACkB,WAAW;QACpCF,WAAW,EAAE3C,MAAM,CAAC8B;MACtB,CAAE;MAAAoB,QAAA,eAEF,IAAAxD,WAAA,CAAAyD,GAAA,EAAC3D,KAAA,CAAAsE,IAAI;QACHjD,OAAO,EAAC,SAAS;QACjBJ,KAAK,EAAC,UAAU;QAChBsD,MAAM,EAAC,KAAK;QACZ7C,KAAK,EAAE;UACL8C,QAAQ,EAAErC,WAAW,CAACqC,QAAQ;UAC9BC,UAAU,EAAEtC,WAAW,CAACsC;QAC1B,CAAE;QAAAf,QAAA,EAEDjC,KAAK,GAAG,EAAE,GAAG,KAAK,GAAGiD,MAAM,CAACjD,KAAK;MAAC,CAC/B;IAAC,CACH,CACP;EAAA,CACQ,CAAC;AAEhB","ignoreList":[]}