@campxdev/react-native-blueprint 0.1.9 → 0.1.12

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 (410) hide show
  1. package/README.md +287 -26
  2. package/lib/commonjs/app/_layout.js +34 -0
  3. package/lib/commonjs/app/_layout.js.map +1 -0
  4. package/lib/commonjs/assets/icons/weather_icons/drizzle.png +0 -0
  5. package/lib/commonjs/assets/icons/weather_icons/foggy.png +0 -0
  6. package/lib/commonjs/assets/icons/weather_icons/freezing_rain.png +0 -0
  7. package/lib/commonjs/assets/icons/weather_icons/partly_cloudy.png +0 -0
  8. package/lib/commonjs/assets/icons/weather_icons/rainy.png +0 -0
  9. package/lib/commonjs/assets/icons/weather_icons/showers.png +0 -0
  10. package/lib/commonjs/assets/icons/weather_icons/sunny_weather.png +0 -0
  11. package/lib/commonjs/assets/icons/weather_icons/thunderstorm.png +0 -0
  12. package/lib/commonjs/assets/icons/weather_icons/thunderstorm_hail.png +0 -0
  13. package/lib/commonjs/components/theme-config.js +274 -0
  14. package/lib/commonjs/components/theme-config.js.map +1 -0
  15. package/lib/commonjs/components/ui/Accordion.js +235 -0
  16. package/lib/commonjs/components/ui/Accordion.js.map +1 -0
  17. package/lib/commonjs/components/ui/Alert-Dialog.js +280 -0
  18. package/lib/commonjs/components/ui/Alert-Dialog.js.map +1 -0
  19. package/lib/commonjs/components/ui/Alert.js +113 -0
  20. package/lib/commonjs/components/ui/Alert.js.map +1 -0
  21. package/lib/commonjs/components/ui/AppBar.js +407 -0
  22. package/lib/commonjs/components/ui/AppBar.js.map +1 -0
  23. package/lib/commonjs/components/ui/Aspect-Ratio.js +30 -0
  24. package/lib/commonjs/components/ui/Aspect-Ratio.js.map +1 -0
  25. package/lib/commonjs/components/ui/Avatar.js +101 -0
  26. package/lib/commonjs/components/ui/Avatar.js.map +1 -0
  27. package/lib/commonjs/components/ui/Badge.js +131 -0
  28. package/lib/commonjs/components/ui/Badge.js.map +1 -0
  29. package/lib/commonjs/components/ui/Bottom-Sheet.js +156 -0
  30. package/lib/commonjs/components/ui/Bottom-Sheet.js.map +1 -0
  31. package/lib/commonjs/components/ui/Button.js +92 -0
  32. package/lib/commonjs/components/ui/Button.js.map +1 -0
  33. package/lib/commonjs/components/ui/Card.js +180 -0
  34. package/lib/commonjs/components/ui/Card.js.map +1 -0
  35. package/lib/commonjs/components/ui/Checkbox.js +69 -0
  36. package/lib/commonjs/components/ui/Checkbox.js.map +1 -0
  37. package/lib/commonjs/components/ui/Collapsible.js +45 -0
  38. package/lib/commonjs/components/ui/Collapsible.js.map +1 -0
  39. package/lib/commonjs/components/ui/Context-Menu.js +304 -0
  40. package/lib/commonjs/components/ui/Context-Menu.js.map +1 -0
  41. package/lib/commonjs/components/ui/Custom-Card.js +210 -0
  42. package/lib/commonjs/components/ui/Custom-Card.js.map +1 -0
  43. package/lib/commonjs/components/ui/Dialog.js +214 -0
  44. package/lib/commonjs/components/ui/Dialog.js.map +1 -0
  45. package/lib/commonjs/components/ui/Dropdown-Menu.js +438 -0
  46. package/lib/commonjs/components/ui/Dropdown-Menu.js.map +1 -0
  47. package/lib/commonjs/components/ui/Floating-Action.js +55 -0
  48. package/lib/commonjs/components/ui/Floating-Action.js.map +1 -0
  49. package/lib/commonjs/components/ui/Greeting-Card.js +401 -0
  50. package/lib/commonjs/components/ui/Greeting-Card.js.map +1 -0
  51. package/lib/commonjs/components/ui/Hover-Card.js +100 -0
  52. package/lib/commonjs/components/ui/Hover-Card.js.map +1 -0
  53. package/lib/commonjs/components/ui/Icon.js +76 -0
  54. package/lib/commonjs/components/ui/Icon.js.map +1 -0
  55. package/lib/commonjs/components/ui/Input.js +79 -0
  56. package/lib/commonjs/components/ui/Input.js.map +1 -0
  57. package/lib/commonjs/components/ui/Label.js +48 -0
  58. package/lib/commonjs/components/ui/Label.js.map +1 -0
  59. package/lib/commonjs/components/ui/Menubar.js +392 -0
  60. package/lib/commonjs/components/ui/Menubar.js.map +1 -0
  61. package/lib/commonjs/components/ui/Native-Only-Animated-View.js +43 -0
  62. package/lib/commonjs/components/ui/Native-Only-Animated-View.js.map +1 -0
  63. package/lib/commonjs/components/ui/NavBar.js +356 -0
  64. package/lib/commonjs/components/ui/NavBar.js.map +1 -0
  65. package/lib/commonjs/components/ui/Popover.js +105 -0
  66. package/lib/commonjs/components/ui/Popover.js.map +1 -0
  67. package/lib/commonjs/components/ui/Progress.js +127 -0
  68. package/lib/commonjs/components/ui/Progress.js.map +1 -0
  69. package/lib/commonjs/components/ui/Radio-Group.js +78 -0
  70. package/lib/commonjs/components/ui/Radio-Group.js.map +1 -0
  71. package/lib/commonjs/components/ui/Select.js +283 -0
  72. package/lib/commonjs/components/ui/Select.js.map +1 -0
  73. package/lib/commonjs/components/ui/Separator.js +62 -0
  74. package/lib/commonjs/components/ui/Separator.js.map +1 -0
  75. package/lib/commonjs/components/ui/SizedBox.js +106 -0
  76. package/lib/commonjs/components/ui/SizedBox.js.map +1 -0
  77. package/lib/commonjs/components/ui/Skeleton.js +60 -0
  78. package/lib/commonjs/components/ui/Skeleton.js.map +1 -0
  79. package/lib/commonjs/components/ui/Slider.js +178 -0
  80. package/lib/commonjs/components/ui/Slider.js.map +1 -0
  81. package/lib/commonjs/components/ui/Switch.js +57 -0
  82. package/lib/commonjs/components/ui/Switch.js.map +1 -0
  83. package/lib/commonjs/components/ui/Table.js +161 -0
  84. package/lib/commonjs/components/ui/Table.js.map +1 -0
  85. package/lib/commonjs/components/ui/Tabs.js +111 -0
  86. package/lib/commonjs/components/ui/Tabs.js.map +1 -0
  87. package/lib/commonjs/components/ui/Text.js +73 -0
  88. package/lib/commonjs/components/ui/Text.js.map +1 -0
  89. package/lib/commonjs/components/ui/Textarea.js +93 -0
  90. package/lib/commonjs/components/ui/Textarea.js.map +1 -0
  91. package/lib/commonjs/components/ui/Theme-Toggle.js +160 -0
  92. package/lib/commonjs/components/ui/Theme-Toggle.js.map +1 -0
  93. package/lib/commonjs/components/ui/Toast.js +107 -0
  94. package/lib/commonjs/components/ui/Toast.js.map +1 -0
  95. package/lib/commonjs/components/ui/Toggle-Group.js +133 -0
  96. package/lib/commonjs/components/ui/Toggle-Group.js.map +1 -0
  97. package/lib/commonjs/components/ui/Toggle.js +110 -0
  98. package/lib/commonjs/components/ui/Toggle.js.map +1 -0
  99. package/lib/commonjs/components/ui/Tooltip.js +110 -0
  100. package/lib/commonjs/components/ui/Tooltip.js.map +1 -0
  101. package/lib/commonjs/components/ui/index.js +479 -0
  102. package/lib/commonjs/components/ui/index.js.map +1 -0
  103. package/lib/commonjs/global.css +417 -0
  104. package/lib/commonjs/index.js +118 -0
  105. package/lib/commonjs/index.js.map +1 -0
  106. package/lib/commonjs/lib/ThemeProvider.js +180 -0
  107. package/lib/commonjs/lib/ThemeProvider.js.map +1 -0
  108. package/lib/commonjs/lib/cornerRadius.js +171 -0
  109. package/lib/commonjs/lib/cornerRadius.js.map +1 -0
  110. package/lib/commonjs/lib/fonts.js +101 -0
  111. package/lib/commonjs/lib/fonts.js.map +1 -0
  112. package/lib/commonjs/lib/slot-helpers.js +24 -0
  113. package/lib/commonjs/lib/slot-helpers.js.map +1 -0
  114. package/lib/commonjs/lib/theme.js +215 -0
  115. package/lib/commonjs/lib/theme.js.map +1 -0
  116. package/lib/commonjs/lib/utils.js +142 -0
  117. package/lib/commonjs/lib/utils.js.map +1 -0
  118. package/lib/commonjs/package.json +1 -0
  119. package/lib/commonjs/types/components.d.js +6 -0
  120. package/lib/commonjs/types/components.d.js.map +1 -0
  121. package/lib/commonjs/types/global.d.js +8 -0
  122. package/lib/commonjs/types/global.d.js.map +1 -0
  123. package/lib/commonjs/types/rn-primitives.d.js +6 -0
  124. package/lib/commonjs/types/rn-primitives.d.js.map +1 -0
  125. package/lib/module/components/ui/Alert-Dialog.js.map +1 -1
  126. package/lib/module/components/ui/Context-Menu.js.map +1 -1
  127. package/lib/module/components/ui/Dropdown-Menu.js.map +1 -1
  128. package/lib/module/components/ui/Menubar.js.map +1 -1
  129. package/lib/module/components/ui/Tabs.js.map +1 -1
  130. package/lib/module/components/ui/Toggle-Group.js.map +1 -1
  131. package/lib/module/components/ui/index.js +24 -19
  132. package/lib/module/components/ui/index.js.map +1 -1
  133. package/lib/module/lib/fonts.js +81 -8
  134. package/lib/module/lib/fonts.js.map +1 -1
  135. package/lib/typescript/commonjs/package.json +1 -0
  136. package/lib/typescript/commonjs/src/app/_layout.d.ts.map +1 -0
  137. package/lib/typescript/commonjs/src/components/theme-config.d.ts.map +1 -0
  138. package/lib/typescript/commonjs/src/components/ui/Accordion.d.ts.map +1 -0
  139. package/lib/typescript/commonjs/src/components/ui/Alert-Dialog.d.ts.map +1 -0
  140. package/lib/typescript/commonjs/src/components/ui/Alert.d.ts.map +1 -0
  141. package/lib/typescript/commonjs/src/components/ui/AppBar.d.ts.map +1 -0
  142. package/lib/typescript/commonjs/src/components/ui/Aspect-Ratio.d.ts.map +1 -0
  143. package/lib/typescript/{src → commonjs/src}/components/ui/Avatar.d.ts +65 -65
  144. package/lib/typescript/{src → commonjs/src}/components/ui/Avatar.d.ts.map +1 -1
  145. package/lib/typescript/{src → commonjs/src}/components/ui/Badge.d.ts +3 -3
  146. package/lib/typescript/commonjs/src/components/ui/Badge.d.ts.map +1 -0
  147. package/lib/typescript/commonjs/src/components/ui/Bottom-Sheet.d.ts.map +1 -0
  148. package/lib/typescript/{src → commonjs/src}/components/ui/Button.d.ts +3 -3
  149. package/lib/typescript/commonjs/src/components/ui/Button.d.ts.map +1 -0
  150. package/lib/typescript/commonjs/src/components/ui/Card.d.ts.map +1 -0
  151. package/lib/typescript/commonjs/src/components/ui/Checkbox.d.ts.map +1 -0
  152. package/lib/typescript/commonjs/src/components/ui/Collapsible.d.ts.map +1 -0
  153. package/lib/typescript/commonjs/src/components/ui/Context-Menu.d.ts.map +1 -0
  154. package/lib/typescript/commonjs/src/components/ui/Custom-Card.d.ts.map +1 -0
  155. package/lib/typescript/commonjs/src/components/ui/Dialog.d.ts.map +1 -0
  156. package/lib/typescript/commonjs/src/components/ui/Dropdown-Menu.d.ts.map +1 -0
  157. package/lib/typescript/commonjs/src/components/ui/Floating-Action.d.ts.map +1 -0
  158. package/lib/typescript/commonjs/src/components/ui/Greeting-Card.d.ts.map +1 -0
  159. package/lib/typescript/commonjs/src/components/ui/Hover-Card.d.ts.map +1 -0
  160. package/lib/typescript/commonjs/src/components/ui/Icon.d.ts.map +1 -0
  161. package/lib/typescript/commonjs/src/components/ui/Input.d.ts.map +1 -0
  162. package/lib/typescript/commonjs/src/components/ui/Label.d.ts.map +1 -0
  163. package/lib/typescript/commonjs/src/components/ui/Menubar.d.ts.map +1 -0
  164. package/lib/typescript/commonjs/src/components/ui/Native-Only-Animated-View.d.ts.map +1 -0
  165. package/lib/typescript/commonjs/src/components/ui/NavBar.d.ts.map +1 -0
  166. package/lib/typescript/commonjs/src/components/ui/Popover.d.ts.map +1 -0
  167. package/lib/typescript/commonjs/src/components/ui/Progress.d.ts.map +1 -0
  168. package/lib/typescript/commonjs/src/components/ui/Radio-Group.d.ts.map +1 -0
  169. package/lib/typescript/commonjs/src/components/ui/Select.d.ts.map +1 -0
  170. package/lib/typescript/commonjs/src/components/ui/Separator.d.ts.map +1 -0
  171. package/lib/typescript/commonjs/src/components/ui/SizedBox.d.ts.map +1 -0
  172. package/lib/typescript/commonjs/src/components/ui/Skeleton.d.ts.map +1 -0
  173. package/lib/typescript/commonjs/src/components/ui/Slider.d.ts.map +1 -0
  174. package/lib/typescript/commonjs/src/components/ui/Switch.d.ts.map +1 -0
  175. package/lib/typescript/commonjs/src/components/ui/Table.d.ts.map +1 -0
  176. package/lib/typescript/commonjs/src/components/ui/Tabs.d.ts.map +1 -0
  177. package/lib/typescript/commonjs/src/components/ui/Text.d.ts.map +1 -0
  178. package/lib/typescript/commonjs/src/components/ui/Textarea.d.ts.map +1 -0
  179. package/lib/typescript/commonjs/src/components/ui/Theme-Toggle.d.ts.map +1 -0
  180. package/lib/typescript/commonjs/src/components/ui/Toast.d.ts.map +1 -0
  181. package/lib/typescript/commonjs/src/components/ui/Toggle-Group.d.ts.map +1 -0
  182. package/lib/typescript/commonjs/src/components/ui/Toggle.d.ts.map +1 -0
  183. package/lib/typescript/commonjs/src/components/ui/Tooltip.d.ts.map +1 -0
  184. package/lib/typescript/{src → commonjs/src}/components/ui/index.d.ts +19 -19
  185. package/lib/typescript/commonjs/src/components/ui/index.d.ts.map +1 -0
  186. package/lib/typescript/commonjs/src/index.d.ts.map +1 -0
  187. package/lib/typescript/commonjs/src/lib/ThemeProvider.d.ts.map +1 -0
  188. package/lib/typescript/commonjs/src/lib/cornerRadius.d.ts.map +1 -0
  189. package/lib/typescript/commonjs/src/lib/fonts.d.ts +16 -0
  190. package/lib/typescript/commonjs/src/lib/fonts.d.ts.map +1 -0
  191. package/lib/typescript/commonjs/src/lib/slot-helpers.d.ts.map +1 -0
  192. package/lib/typescript/commonjs/src/lib/theme.d.ts.map +1 -0
  193. package/lib/typescript/commonjs/src/lib/utils.d.ts.map +1 -0
  194. package/lib/typescript/module/src/app/_layout.d.ts +7 -0
  195. package/lib/typescript/module/src/app/_layout.d.ts.map +1 -0
  196. package/lib/typescript/module/src/components/theme-config.d.ts +174 -0
  197. package/lib/typescript/module/src/components/theme-config.d.ts.map +1 -0
  198. package/lib/typescript/module/src/components/ui/Accordion.d.ts +103 -0
  199. package/lib/typescript/module/src/components/ui/Accordion.d.ts.map +1 -0
  200. package/lib/typescript/module/src/components/ui/Alert-Dialog.d.ts +145 -0
  201. package/lib/typescript/module/src/components/ui/Alert-Dialog.d.ts.map +1 -0
  202. package/lib/typescript/module/src/components/ui/Alert.d.ts +61 -0
  203. package/lib/typescript/module/src/components/ui/Alert.d.ts.map +1 -0
  204. package/lib/typescript/module/src/components/ui/AppBar.d.ts +227 -0
  205. package/lib/typescript/module/src/components/ui/AppBar.d.ts.map +1 -0
  206. package/lib/typescript/module/src/components/ui/Aspect-Ratio.d.ts +24 -0
  207. package/lib/typescript/module/src/components/ui/Aspect-Ratio.d.ts.map +1 -0
  208. package/lib/typescript/module/src/components/ui/Avatar.d.ts +1486 -0
  209. package/lib/typescript/module/src/components/ui/Avatar.d.ts.map +1 -0
  210. package/lib/typescript/module/src/components/ui/Badge.d.ts +77 -0
  211. package/lib/typescript/module/src/components/ui/Badge.d.ts.map +1 -0
  212. package/lib/typescript/module/src/components/ui/Bottom-Sheet.d.ts +43 -0
  213. package/lib/typescript/module/src/components/ui/Bottom-Sheet.d.ts.map +1 -0
  214. package/lib/typescript/module/src/components/ui/Button.d.ts +23 -0
  215. package/lib/typescript/module/src/components/ui/Button.d.ts.map +1 -0
  216. package/lib/typescript/module/src/components/ui/Card.d.ts +93 -0
  217. package/lib/typescript/module/src/components/ui/Card.d.ts.map +1 -0
  218. package/lib/typescript/module/src/components/ui/Checkbox.d.ts +36 -0
  219. package/lib/typescript/module/src/components/ui/Checkbox.d.ts.map +1 -0
  220. package/lib/typescript/module/src/components/ui/Collapsible.d.ts +37 -0
  221. package/lib/typescript/module/src/components/ui/Collapsible.d.ts.map +1 -0
  222. package/lib/typescript/module/src/components/ui/Context-Menu.d.ts +107 -0
  223. package/lib/typescript/module/src/components/ui/Context-Menu.d.ts.map +1 -0
  224. package/lib/typescript/module/src/components/ui/Custom-Card.d.ts +103 -0
  225. package/lib/typescript/module/src/components/ui/Custom-Card.d.ts.map +1 -0
  226. package/lib/typescript/module/src/components/ui/Dialog.d.ts +90 -0
  227. package/lib/typescript/module/src/components/ui/Dialog.d.ts.map +1 -0
  228. package/lib/typescript/module/src/components/ui/Dropdown-Menu.d.ts +242 -0
  229. package/lib/typescript/module/src/components/ui/Dropdown-Menu.d.ts.map +1 -0
  230. package/lib/typescript/module/src/components/ui/Floating-Action.d.ts +44 -0
  231. package/lib/typescript/module/src/components/ui/Floating-Action.d.ts.map +1 -0
  232. package/lib/typescript/module/src/components/ui/Greeting-Card.d.ts +153 -0
  233. package/lib/typescript/module/src/components/ui/Greeting-Card.d.ts.map +1 -0
  234. package/lib/typescript/module/src/components/ui/Hover-Card.d.ts +49 -0
  235. package/lib/typescript/module/src/components/ui/Hover-Card.d.ts.map +1 -0
  236. package/lib/typescript/module/src/components/ui/Icon.d.ts +43 -0
  237. package/lib/typescript/module/src/components/ui/Icon.d.ts.map +1 -0
  238. package/lib/typescript/module/src/components/ui/Input.d.ts +54 -0
  239. package/lib/typescript/module/src/components/ui/Input.d.ts.map +1 -0
  240. package/lib/typescript/module/src/components/ui/Label.d.ts +34 -0
  241. package/lib/typescript/module/src/components/ui/Label.d.ts.map +1 -0
  242. package/lib/typescript/module/src/components/ui/Menubar.d.ts +142 -0
  243. package/lib/typescript/module/src/components/ui/Menubar.d.ts.map +1 -0
  244. package/lib/typescript/module/src/components/ui/Native-Only-Animated-View.d.ts +26 -0
  245. package/lib/typescript/module/src/components/ui/Native-Only-Animated-View.d.ts.map +1 -0
  246. package/lib/typescript/module/src/components/ui/NavBar.d.ts +273 -0
  247. package/lib/typescript/module/src/components/ui/NavBar.d.ts.map +1 -0
  248. package/lib/typescript/module/src/components/ui/Popover.d.ts +54 -0
  249. package/lib/typescript/module/src/components/ui/Popover.d.ts.map +1 -0
  250. package/lib/typescript/module/src/components/ui/Progress.d.ts +27 -0
  251. package/lib/typescript/module/src/components/ui/Progress.d.ts.map +1 -0
  252. package/lib/typescript/module/src/components/ui/Radio-Group.d.ts +47 -0
  253. package/lib/typescript/module/src/components/ui/Radio-Group.d.ts.map +1 -0
  254. package/lib/typescript/module/src/components/ui/Select.d.ts +86 -0
  255. package/lib/typescript/module/src/components/ui/Select.d.ts.map +1 -0
  256. package/lib/typescript/module/src/components/ui/Separator.d.ts +40 -0
  257. package/lib/typescript/module/src/components/ui/Separator.d.ts.map +1 -0
  258. package/lib/typescript/module/src/components/ui/SizedBox.d.ts +79 -0
  259. package/lib/typescript/module/src/components/ui/SizedBox.d.ts.map +1 -0
  260. package/lib/typescript/module/src/components/ui/Skeleton.d.ts +42 -0
  261. package/lib/typescript/module/src/components/ui/Skeleton.d.ts.map +1 -0
  262. package/lib/typescript/module/src/components/ui/Slider.d.ts +56 -0
  263. package/lib/typescript/module/src/components/ui/Slider.d.ts.map +1 -0
  264. package/lib/typescript/module/src/components/ui/Switch.d.ts +34 -0
  265. package/lib/typescript/module/src/components/ui/Switch.d.ts.map +1 -0
  266. package/lib/typescript/module/src/components/ui/Table.d.ts +80 -0
  267. package/lib/typescript/module/src/components/ui/Table.d.ts.map +1 -0
  268. package/lib/typescript/module/src/components/ui/Tabs.d.ts +51 -0
  269. package/lib/typescript/module/src/components/ui/Tabs.d.ts.map +1 -0
  270. package/lib/typescript/module/src/components/ui/Text.d.ts +45 -0
  271. package/lib/typescript/module/src/components/ui/Text.d.ts.map +1 -0
  272. package/lib/typescript/module/src/components/ui/Textarea.d.ts +65 -0
  273. package/lib/typescript/module/src/components/ui/Textarea.d.ts.map +1 -0
  274. package/lib/typescript/module/src/components/ui/Theme-Toggle.d.ts +67 -0
  275. package/lib/typescript/module/src/components/ui/Theme-Toggle.d.ts.map +1 -0
  276. package/lib/typescript/module/src/components/ui/Toast.d.ts +56 -0
  277. package/lib/typescript/module/src/components/ui/Toast.d.ts.map +1 -0
  278. package/lib/typescript/module/src/components/ui/Toggle-Group.d.ts +49 -0
  279. package/lib/typescript/module/src/components/ui/Toggle-Group.d.ts.map +1 -0
  280. package/lib/typescript/module/src/components/ui/Toggle.d.ts +53 -0
  281. package/lib/typescript/module/src/components/ui/Toggle.d.ts.map +1 -0
  282. package/lib/typescript/module/src/components/ui/Tooltip.d.ts +51 -0
  283. package/lib/typescript/module/src/components/ui/Tooltip.d.ts.map +1 -0
  284. package/lib/typescript/module/src/components/ui/index.d.ts +44 -0
  285. package/lib/typescript/module/src/components/ui/index.d.ts.map +1 -0
  286. package/lib/typescript/module/src/index.d.ts +9 -0
  287. package/lib/typescript/module/src/index.d.ts.map +1 -0
  288. package/lib/typescript/module/src/lib/ThemeProvider.d.ts +137 -0
  289. package/lib/typescript/module/src/lib/ThemeProvider.d.ts.map +1 -0
  290. package/lib/typescript/module/src/lib/cornerRadius.d.ts +112 -0
  291. package/lib/typescript/module/src/lib/cornerRadius.d.ts.map +1 -0
  292. package/lib/typescript/module/src/lib/fonts.d.ts +16 -0
  293. package/lib/typescript/module/src/lib/fonts.d.ts.map +1 -0
  294. package/lib/typescript/module/src/lib/slot-helpers.d.ts +32 -0
  295. package/lib/typescript/module/src/lib/slot-helpers.d.ts.map +1 -0
  296. package/lib/typescript/module/src/lib/theme.d.ts +87 -0
  297. package/lib/typescript/module/src/lib/theme.d.ts.map +1 -0
  298. package/lib/typescript/module/src/lib/utils.d.ts +111 -0
  299. package/lib/typescript/module/src/lib/utils.d.ts.map +1 -0
  300. package/package.json +609 -50
  301. package/src/components/ui/Alert-Dialog.tsx +2 -2
  302. package/src/components/ui/Context-Menu.tsx +1 -1
  303. package/src/components/ui/Dropdown-Menu.tsx +1 -1
  304. package/src/components/ui/Menubar.tsx +2 -2
  305. package/src/components/ui/Tabs.tsx +1 -1
  306. package/src/components/ui/Toggle-Group.tsx +2 -2
  307. package/src/components/ui/index.ts +24 -19
  308. package/src/lib/fonts.ts +83 -12
  309. package/lib/typescript/src/app/_layout.d.ts.map +0 -1
  310. package/lib/typescript/src/components/theme-config.d.ts.map +0 -1
  311. package/lib/typescript/src/components/ui/Accordion.d.ts.map +0 -1
  312. package/lib/typescript/src/components/ui/Alert-Dialog.d.ts.map +0 -1
  313. package/lib/typescript/src/components/ui/Alert.d.ts.map +0 -1
  314. package/lib/typescript/src/components/ui/AppBar.d.ts.map +0 -1
  315. package/lib/typescript/src/components/ui/Aspect-Ratio.d.ts.map +0 -1
  316. package/lib/typescript/src/components/ui/Badge.d.ts.map +0 -1
  317. package/lib/typescript/src/components/ui/Bottom-Sheet.d.ts.map +0 -1
  318. package/lib/typescript/src/components/ui/Button.d.ts.map +0 -1
  319. package/lib/typescript/src/components/ui/Card.d.ts.map +0 -1
  320. package/lib/typescript/src/components/ui/Checkbox.d.ts.map +0 -1
  321. package/lib/typescript/src/components/ui/Collapsible.d.ts.map +0 -1
  322. package/lib/typescript/src/components/ui/Context-Menu.d.ts.map +0 -1
  323. package/lib/typescript/src/components/ui/Custom-Card.d.ts.map +0 -1
  324. package/lib/typescript/src/components/ui/Dialog.d.ts.map +0 -1
  325. package/lib/typescript/src/components/ui/Dropdown-Menu.d.ts.map +0 -1
  326. package/lib/typescript/src/components/ui/Floating-Action.d.ts.map +0 -1
  327. package/lib/typescript/src/components/ui/Greeting-Card.d.ts.map +0 -1
  328. package/lib/typescript/src/components/ui/Hover-Card.d.ts.map +0 -1
  329. package/lib/typescript/src/components/ui/Icon.d.ts.map +0 -1
  330. package/lib/typescript/src/components/ui/Input.d.ts.map +0 -1
  331. package/lib/typescript/src/components/ui/Label.d.ts.map +0 -1
  332. package/lib/typescript/src/components/ui/Menubar.d.ts.map +0 -1
  333. package/lib/typescript/src/components/ui/Native-Only-Animated-View.d.ts.map +0 -1
  334. package/lib/typescript/src/components/ui/NavBar.d.ts.map +0 -1
  335. package/lib/typescript/src/components/ui/Popover.d.ts.map +0 -1
  336. package/lib/typescript/src/components/ui/Progress.d.ts.map +0 -1
  337. package/lib/typescript/src/components/ui/Radio-Group.d.ts.map +0 -1
  338. package/lib/typescript/src/components/ui/Select.d.ts.map +0 -1
  339. package/lib/typescript/src/components/ui/Separator.d.ts.map +0 -1
  340. package/lib/typescript/src/components/ui/SizedBox.d.ts.map +0 -1
  341. package/lib/typescript/src/components/ui/Skeleton.d.ts.map +0 -1
  342. package/lib/typescript/src/components/ui/Slider.d.ts.map +0 -1
  343. package/lib/typescript/src/components/ui/Switch.d.ts.map +0 -1
  344. package/lib/typescript/src/components/ui/Table.d.ts.map +0 -1
  345. package/lib/typescript/src/components/ui/Tabs.d.ts.map +0 -1
  346. package/lib/typescript/src/components/ui/Text.d.ts.map +0 -1
  347. package/lib/typescript/src/components/ui/Textarea.d.ts.map +0 -1
  348. package/lib/typescript/src/components/ui/Theme-Toggle.d.ts.map +0 -1
  349. package/lib/typescript/src/components/ui/Toast.d.ts.map +0 -1
  350. package/lib/typescript/src/components/ui/Toggle-Group.d.ts.map +0 -1
  351. package/lib/typescript/src/components/ui/Toggle.d.ts.map +0 -1
  352. package/lib/typescript/src/components/ui/Tooltip.d.ts.map +0 -1
  353. package/lib/typescript/src/components/ui/index.d.ts.map +0 -1
  354. package/lib/typescript/src/index.d.ts.map +0 -1
  355. package/lib/typescript/src/lib/ThemeProvider.d.ts.map +0 -1
  356. package/lib/typescript/src/lib/cornerRadius.d.ts.map +0 -1
  357. package/lib/typescript/src/lib/fonts.d.ts +0 -21
  358. package/lib/typescript/src/lib/fonts.d.ts.map +0 -1
  359. package/lib/typescript/src/lib/slot-helpers.d.ts.map +0 -1
  360. package/lib/typescript/src/lib/theme.d.ts.map +0 -1
  361. package/lib/typescript/src/lib/utils.d.ts.map +0 -1
  362. /package/lib/typescript/{src → commonjs/src}/app/_layout.d.ts +0 -0
  363. /package/lib/typescript/{src → commonjs/src}/components/theme-config.d.ts +0 -0
  364. /package/lib/typescript/{src → commonjs/src}/components/ui/Accordion.d.ts +0 -0
  365. /package/lib/typescript/{src → commonjs/src}/components/ui/Alert-Dialog.d.ts +0 -0
  366. /package/lib/typescript/{src → commonjs/src}/components/ui/Alert.d.ts +0 -0
  367. /package/lib/typescript/{src → commonjs/src}/components/ui/AppBar.d.ts +0 -0
  368. /package/lib/typescript/{src → commonjs/src}/components/ui/Aspect-Ratio.d.ts +0 -0
  369. /package/lib/typescript/{src → commonjs/src}/components/ui/Bottom-Sheet.d.ts +0 -0
  370. /package/lib/typescript/{src → commonjs/src}/components/ui/Card.d.ts +0 -0
  371. /package/lib/typescript/{src → commonjs/src}/components/ui/Checkbox.d.ts +0 -0
  372. /package/lib/typescript/{src → commonjs/src}/components/ui/Collapsible.d.ts +0 -0
  373. /package/lib/typescript/{src → commonjs/src}/components/ui/Context-Menu.d.ts +0 -0
  374. /package/lib/typescript/{src → commonjs/src}/components/ui/Custom-Card.d.ts +0 -0
  375. /package/lib/typescript/{src → commonjs/src}/components/ui/Dialog.d.ts +0 -0
  376. /package/lib/typescript/{src → commonjs/src}/components/ui/Dropdown-Menu.d.ts +0 -0
  377. /package/lib/typescript/{src → commonjs/src}/components/ui/Floating-Action.d.ts +0 -0
  378. /package/lib/typescript/{src → commonjs/src}/components/ui/Greeting-Card.d.ts +0 -0
  379. /package/lib/typescript/{src → commonjs/src}/components/ui/Hover-Card.d.ts +0 -0
  380. /package/lib/typescript/{src → commonjs/src}/components/ui/Icon.d.ts +0 -0
  381. /package/lib/typescript/{src → commonjs/src}/components/ui/Input.d.ts +0 -0
  382. /package/lib/typescript/{src → commonjs/src}/components/ui/Label.d.ts +0 -0
  383. /package/lib/typescript/{src → commonjs/src}/components/ui/Menubar.d.ts +0 -0
  384. /package/lib/typescript/{src → commonjs/src}/components/ui/Native-Only-Animated-View.d.ts +0 -0
  385. /package/lib/typescript/{src → commonjs/src}/components/ui/NavBar.d.ts +0 -0
  386. /package/lib/typescript/{src → commonjs/src}/components/ui/Popover.d.ts +0 -0
  387. /package/lib/typescript/{src → commonjs/src}/components/ui/Progress.d.ts +0 -0
  388. /package/lib/typescript/{src → commonjs/src}/components/ui/Radio-Group.d.ts +0 -0
  389. /package/lib/typescript/{src → commonjs/src}/components/ui/Select.d.ts +0 -0
  390. /package/lib/typescript/{src → commonjs/src}/components/ui/Separator.d.ts +0 -0
  391. /package/lib/typescript/{src → commonjs/src}/components/ui/SizedBox.d.ts +0 -0
  392. /package/lib/typescript/{src → commonjs/src}/components/ui/Skeleton.d.ts +0 -0
  393. /package/lib/typescript/{src → commonjs/src}/components/ui/Slider.d.ts +0 -0
  394. /package/lib/typescript/{src → commonjs/src}/components/ui/Switch.d.ts +0 -0
  395. /package/lib/typescript/{src → commonjs/src}/components/ui/Table.d.ts +0 -0
  396. /package/lib/typescript/{src → commonjs/src}/components/ui/Tabs.d.ts +0 -0
  397. /package/lib/typescript/{src → commonjs/src}/components/ui/Text.d.ts +0 -0
  398. /package/lib/typescript/{src → commonjs/src}/components/ui/Textarea.d.ts +0 -0
  399. /package/lib/typescript/{src → commonjs/src}/components/ui/Theme-Toggle.d.ts +0 -0
  400. /package/lib/typescript/{src → commonjs/src}/components/ui/Toast.d.ts +0 -0
  401. /package/lib/typescript/{src → commonjs/src}/components/ui/Toggle-Group.d.ts +0 -0
  402. /package/lib/typescript/{src → commonjs/src}/components/ui/Toggle.d.ts +0 -0
  403. /package/lib/typescript/{src → commonjs/src}/components/ui/Tooltip.d.ts +0 -0
  404. /package/lib/typescript/{src → commonjs/src}/index.d.ts +0 -0
  405. /package/lib/typescript/{src → commonjs/src}/lib/ThemeProvider.d.ts +0 -0
  406. /package/lib/typescript/{src → commonjs/src}/lib/cornerRadius.d.ts +0 -0
  407. /package/lib/typescript/{src → commonjs/src}/lib/slot-helpers.d.ts +0 -0
  408. /package/lib/typescript/{src → commonjs/src}/lib/theme.d.ts +0 -0
  409. /package/lib/typescript/{src → commonjs/src}/lib/utils.d.ts +0 -0
  410. /package/lib/typescript/{package.json → module/package.json} +0 -0
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.NativeOnlyAnimatedView = NativeOnlyAnimatedView;
7
+ var _reactNative = require("react-native");
8
+ var _reactNativeReanimated = _interopRequireDefault(require("react-native-reanimated"));
9
+ var _jsxRuntime = require("react/jsx-runtime");
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
+ /**
12
+ * Platform-conditional animated view component
13
+ *
14
+ * Renders an Animated.View on native platforms (iOS/Android) and a React Fragment
15
+ * on web. This utility helps maintain consistent animation APIs across platforms
16
+ * while avoiding web-incompatible animations.
17
+ *
18
+ * Used internally by other components like Dialog, Popover, Tooltip, etc. to provide
19
+ * smooth entrance/exit animations on native while gracefully degrading to no animation
20
+ * on web where certain Reanimated features are not supported.
21
+ *
22
+ * @component
23
+ * @example
24
+ * ```tsx
25
+ * <NativeOnlyAnimatedView entering={FadeIn} exiting={FadeOut}>
26
+ * <View><Text>Animated content on native, static on web</Text></View>
27
+ * </NativeOnlyAnimatedView>
28
+ * ```
29
+ *
30
+ * @platform iOS, Android - Full animation support
31
+ * @platform web - Renders as Fragment without animations
32
+ */function NativeOnlyAnimatedView(props) {
33
+ if (_reactNative.Platform.OS === 'web') {
34
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
35
+ children: props.children
36
+ });
37
+ } else {
38
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
39
+ ...props
40
+ });
41
+ }
42
+ }
43
+ //# sourceMappingURL=Native-Only-Animated-View.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNative","require","_reactNativeReanimated","_interopRequireDefault","_jsxRuntime","e","__esModule","default","NativeOnlyAnimatedView","props","Platform","OS","jsx","Fragment","children","View"],"sourceRoot":"../../../../src","sources":["components/ui/Native-Only-Animated-View.tsx"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAA+C,IAAAG,WAAA,GAAAH,OAAA;AAAA,SAAAE,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GACA,SAASG,sBAAsBA,CAC7BC,KACoC,EACpC;EACA,IAAIC,qBAAQ,CAACC,EAAE,KAAK,KAAK,EAAE;IACzB,oBAAO,IAAAP,WAAA,CAAAQ,GAAA,EAAAR,WAAA,CAAAS,QAAA;MAAAC,QAAA,EAAGL,KAAK,CAACK;IAAQ,CAAsB,CAAC;EACjD,CAAC,MAAM;IACL,oBAAO,IAAAV,WAAA,CAAAQ,GAAA,EAACV,sBAAA,CAAAK,OAAQ,CAACQ,IAAI;MAAA,GAAMN;IAAK,CAAW,CAAC;EAC9C;AACF","ignoreList":[]}
@@ -0,0 +1,356 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.NavBar = void 0;
7
+ var React = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _reactNativeSafeAreaContext = require("react-native-safe-area-context");
10
+ var _nativewind = require("nativewind");
11
+ var _utils = require("../../lib/utils");
12
+ var _Text = require("./Text");
13
+ var _jsxRuntime = require("react/jsx-runtime");
14
+ 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); }
15
+ // Enable NativeWind className support
16
+ const View = (0, _nativewind.cssInterop)(_reactNative.View, {
17
+ className: 'style'
18
+ });
19
+ const Pressable = (0, _nativewind.cssInterop)(_reactNative.Pressable, {
20
+ className: 'style'
21
+ });
22
+ const SafeAreaView = (0, _nativewind.cssInterop)(_reactNativeSafeAreaContext.SafeAreaView, {
23
+ className: 'style'
24
+ });
25
+
26
+ /**
27
+ * Props for individual navigation bar items
28
+ *
29
+ * Defines the structure for each item displayed in the NavBar component.
30
+ * Each item can have both active and inactive states with different icons.
31
+ *
32
+ * @interface NavBarItem
33
+ *
34
+ * @property {ImageSourcePropType | React.ReactElement} icon - Icon displayed when item is inactive
35
+ * - Can be an image source from require() or { uri: 'url' }
36
+ * - Can be a React element like lucide-react-native icons
37
+ * @property {ImageSourcePropType | React.ReactElement} activeIcon - Icon displayed when item is active
38
+ * - Same types as icon property
39
+ * - Typically a different color or style variant
40
+ * @property {string} label - Text label displayed below the icon
41
+ * @property {() => void} onPress - Callback function invoked when item is pressed
42
+ * @property {boolean} [disabled] - Optional flag to disable the item interaction
43
+ *
44
+ * @example
45
+ * ```tsx
46
+ * // Using image sources
47
+ * const homeItem: NavBarItem = {
48
+ * icon: require('./assets/home-inactive.png'),
49
+ * activeIcon: require('./assets/home-active.png'),
50
+ * label: 'Home',
51
+ * onPress: () => console.log('Home pressed'),
52
+ * };
53
+ *
54
+ * // Using React elements (lucide icons)
55
+ * import { Home } from 'lucide-react-native';
56
+ * const homeItem: NavBarItem = {
57
+ * icon: <Icon as={Home} color="#666" />,
58
+ * activeIcon: <Icon as={Home} color="#000" />,
59
+ * label: 'Home',
60
+ * onPress: () => navigation.navigate('Home'),
61
+ * };
62
+ * ```
63
+ */
64
+
65
+ /**
66
+ * Props for NavBar component
67
+ *
68
+ * Configuration options for customizing the NavBar appearance and behavior.
69
+ * Provides fine-grained control over styling for different states and elements.
70
+ *
71
+ * @interface NavBarProps
72
+ *
73
+ * @property {NavBarItem[]} items - Array of navigation items to display in the bar
74
+ * @property {number} activeIndex - Zero-based index of the currently active item
75
+ *
76
+ * @property {string} [className] - Additional Tailwind classes for the main container
77
+ * @property {string} [itemClassName] - Additional Tailwind classes applied to all items
78
+ * @property {string} [activeItemClassName] - Additional Tailwind classes for the active item only
79
+ * @property {string} [labelClassName] - Additional Tailwind classes for all labels
80
+ * @property {string} [activeLabelClassName] - Additional Tailwind classes for the active label only
81
+ * @property {string} [backgroundColor] - Custom background color classes (overrides default)
82
+ * @property {number} [iconSize] - Size of icons in pixels (default: 24)
83
+ *
84
+ * @example
85
+ * ```tsx
86
+ * const navBarProps: NavBarProps = {
87
+ * items: navigationItems,
88
+ * activeIndex: 0,
89
+ * iconSize: 28,
90
+ * className: 'px-4',
91
+ * activeItemClassName: 'scale-110',
92
+ * backgroundColor: 'bg-white dark:bg-gray-900',
93
+ * };
94
+ * ```
95
+ */
96
+
97
+ /**
98
+ * NavBar - Bottom navigation bar component
99
+ *
100
+ * A navigation component designed for mobile applications that displays at the bottom
101
+ * of the screen with proper safe area handling. Similar to Flutter's BottomNavigationBar,
102
+ * it provides an intuitive way to switch between different sections of your app.
103
+ *
104
+ * Features:
105
+ * - Automatic safe area handling for devices with notches/home indicators
106
+ * - Support for both image and React element icons
107
+ * - Active/inactive state management with visual feedback
108
+ * - Customizable styling through Tailwind classes
109
+ * - Full dark mode support
110
+ * - Accessibility features built-in
111
+ * - Disabled state support for items
112
+ *
113
+ * @component
114
+ *
115
+ * @example
116
+ * // Basic usage with state management
117
+ * ```tsx
118
+ * import { useState } from 'react';
119
+ * import { NavBar, NavBarItem } from 'react-native-blueprint';
120
+ *
121
+ * function App() {
122
+ * const [activeIndex, setActiveIndex] = useState(0);
123
+ *
124
+ * const navItems: NavBarItem[] = [
125
+ * {
126
+ * icon: require('./assets/home-inactive.png'),
127
+ * activeIcon: require('./assets/home-active.png'),
128
+ * label: 'Home',
129
+ * onPress: () => setActiveIndex(0),
130
+ * },
131
+ * {
132
+ * icon: require('./assets/browse-inactive.png'),
133
+ * activeIcon: require('./assets/browse-active.png'),
134
+ * label: 'Browse',
135
+ * onPress: () => setActiveIndex(1),
136
+ * },
137
+ * {
138
+ * icon: require('./assets/feed-inactive.png'),
139
+ * activeIcon: require('./assets/feed-active.png'),
140
+ * label: 'Feed',
141
+ * onPress: () => setActiveIndex(2),
142
+ * },
143
+ * {
144
+ * icon: require('./assets/chat-inactive.png'),
145
+ * activeIcon: require('./assets/chat-active.png'),
146
+ * label: 'Chat',
147
+ * onPress: () => setActiveIndex(3),
148
+ * },
149
+ * ];
150
+ *
151
+ * return (
152
+ * <View style={{ flex: 1 }}>
153
+ * <View style={{ flex: 1 }}>
154
+ * {renderScreen(activeIndex)}
155
+ * </View>
156
+ * <NavBar items={navItems} activeIndex={activeIndex} />
157
+ * </View>
158
+ * );
159
+ * }
160
+ * ```
161
+ *
162
+ * @example
163
+ * // With React Navigation
164
+ * ```tsx
165
+ * import { useNavigation, useRoute } from '@react-navigation/native';
166
+ * import { Home, Search, Bell, MessageCircle } from 'lucide-react-native';
167
+ * import { Icon } from 'react-native-blueprint';
168
+ *
169
+ * function BottomTabBar() {
170
+ * const navigation = useNavigation();
171
+ * const route = useRoute();
172
+ * const [activeIndex, setActiveIndex] = useState(0);
173
+ *
174
+ * const navItems: NavBarItem[] = [
175
+ * {
176
+ * icon: <Icon as={Home} size={24} color="#666" />,
177
+ * activeIcon: <Icon as={Home} size={24} color="#000" />,
178
+ * label: 'Home',
179
+ * onPress: () => {
180
+ * setActiveIndex(0);
181
+ * navigation.navigate('Home');
182
+ * },
183
+ * },
184
+ * {
185
+ * icon: <Icon as={Search} size={24} color="#666" />,
186
+ * activeIcon: <Icon as={Search} size={24} color="#000" />,
187
+ * label: 'Browse',
188
+ * onPress: () => {
189
+ * setActiveIndex(1);
190
+ * navigation.navigate('Browse');
191
+ * },
192
+ * },
193
+ * {
194
+ * icon: <Icon as={Bell} size={24} color="#666" />,
195
+ * activeIcon: <Icon as={Bell} size={24} color="#000" />,
196
+ * label: 'Feed',
197
+ * onPress: () => {
198
+ * setActiveIndex(2);
199
+ * navigation.navigate('Feed');
200
+ * },
201
+ * },
202
+ * {
203
+ * icon: <Icon as={MessageCircle} size={24} color="#666" />,
204
+ * activeIcon: <Icon as={MessageCircle} size={24} color="#000" />,
205
+ * label: 'Chat',
206
+ * onPress: () => {
207
+ * setActiveIndex(3);
208
+ * navigation.navigate('Chat');
209
+ * },
210
+ * },
211
+ * ];
212
+ *
213
+ * return <NavBar items={navItems} activeIndex={activeIndex} />;
214
+ * }
215
+ * ```
216
+ *
217
+ * @example
218
+ * // With custom styling and theming
219
+ * ```tsx
220
+ * import { useTheme } from 'react-native-blueprint';
221
+ *
222
+ * function ThemedNavBar() {
223
+ * const { isDark } = useTheme();
224
+ * const [activeIndex, setActiveIndex] = useState(0);
225
+ *
226
+ * return (
227
+ * <NavBar
228
+ * items={navItems}
229
+ * activeIndex={activeIndex}
230
+ * backgroundColor="bg-gray-100 dark:bg-gray-900"
231
+ * iconSize={28}
232
+ * className="py-2 px-4"
233
+ * activeItemClassName="scale-110 transition-transform"
234
+ * activeLabelClassName="text-blue-600 dark:text-blue-400 font-bold"
235
+ * labelClassName="text-gray-500 dark:text-gray-400"
236
+ * />
237
+ * );
238
+ * }
239
+ * ```
240
+ *
241
+ * @example
242
+ * // With disabled items
243
+ * ```tsx
244
+ * const navItems: NavBarItem[] = [
245
+ * {
246
+ * icon: require('./assets/home-inactive.png'),
247
+ * activeIcon: require('./assets/home-active.png'),
248
+ * label: 'Home',
249
+ * onPress: () => setActiveIndex(0),
250
+ * },
251
+ * {
252
+ * icon: require('./assets/premium-inactive.png'),
253
+ * activeIcon: require('./assets/premium-active.png'),
254
+ * label: 'Premium',
255
+ * onPress: () => showUpgradeModal(),
256
+ * disabled: !user.isPremium, // Disable if user is not premium
257
+ * },
258
+ * ];
259
+ * ```
260
+ *
261
+ * @param {NavBarProps} props - Component props
262
+ * @param {React.Ref<ViewRef>} ref - Forwarded ref to the container View
263
+ *
264
+ * @returns {React.ReactElement} The rendered NavBar component
265
+ *
266
+ * @accessibility
267
+ * - Sets role="navigation" on the container for proper semantic structure
268
+ * - Each item has role="button" with appropriate labels
269
+ * - Uses aria-label for screen reader support
270
+ * - Indicates selected state with aria-selected
271
+ * - Respects and communicates disabled state
272
+ * - Provides accessibilityRole and accessibilityLabel for React Native
273
+ * - Includes accessibilityState for selected and disabled states
274
+ *
275
+ * @see {@link NavBarItem} for item configuration
276
+ * @see {@link NavBarProps} for all available props
277
+ */
278
+ const NavBar = exports.NavBar = /*#__PURE__*/React.forwardRef(({
279
+ items,
280
+ activeIndex,
281
+ className,
282
+ itemClassName,
283
+ activeItemClassName,
284
+ labelClassName,
285
+ activeLabelClassName,
286
+ backgroundColor,
287
+ iconSize = 24
288
+ }, ref) => {
289
+ /**
290
+ * Renders an icon based on its type (image source or React element)
291
+ *
292
+ * @param {NavBarItem} item - The navigation item containing the icon
293
+ * @param {boolean} isActive - Whether this item is currently active
294
+ * @returns {React.ReactElement} The rendered icon
295
+ */
296
+ const renderIcon = (item, isActive) => {
297
+ const iconSource = isActive ? item.activeIcon : item.icon;
298
+
299
+ // Check if it's a React element (like lucide icon)
300
+ if (/*#__PURE__*/React.isValidElement(iconSource)) {
301
+ return iconSource;
302
+ }
303
+
304
+ // It's an image source
305
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Image, {
306
+ source: iconSource,
307
+ style: {
308
+ width: iconSize,
309
+ height: iconSize
310
+ },
311
+ resizeMode: "contain",
312
+ accessibilityIgnoresInvertColors: true
313
+ });
314
+ };
315
+
316
+ // Default background color with dark mode support
317
+ const defaultBgColor = 'bg-background';
318
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(SafeAreaView, {
319
+ edges: ['bottom'],
320
+ className: (0, _utils.cn)('border-t border-border', backgroundColor || defaultBgColor),
321
+ ref: ref,
322
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(View, {
323
+ className: (0, _utils.cn)('flex-row items-center justify-around px-2 py-1', className),
324
+ role: "navigation",
325
+ children: items.map((item, index) => {
326
+ const isActive = index === activeIndex;
327
+ const isDisabled = item.disabled;
328
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Pressable, {
329
+ onPress: item.onPress,
330
+ disabled: isDisabled,
331
+ className: (0, _utils.cn)('flex-1 items-center justify-center py-2 px-1 active:opacity-70', isDisabled && 'opacity-40', itemClassName, isActive && activeItemClassName),
332
+ role: "button",
333
+ "aria-label": item.label,
334
+ "aria-selected": isActive,
335
+ accessibilityRole: "button",
336
+ accessibilityLabel: item.label,
337
+ accessibilityState: {
338
+ selected: isActive,
339
+ disabled: isDisabled
340
+ },
341
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(View, {
342
+ className: "mb-1.5 mt-2.5",
343
+ children: renderIcon(item, isActive)
344
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.TextClassContext.Provider, {
345
+ value: (0, _utils.cn)('text-xs font-medium text-center', isActive ? activeLabelClassName || 'text-foreground' : labelClassName || 'text-muted-foreground'),
346
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.Text, {
347
+ children: item.label
348
+ })
349
+ })]
350
+ }, `nav-item-${index}-${item.label}`);
351
+ })
352
+ })
353
+ });
354
+ });
355
+ NavBar.displayName = 'NavBar';
356
+ //# sourceMappingURL=NavBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_reactNativeSafeAreaContext","_nativewind","_utils","_Text","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","View","cssInterop","RNView","className","Pressable","RNPressable","SafeAreaView","RNSafeAreaView","NavBar","exports","forwardRef","items","activeIndex","itemClassName","activeItemClassName","labelClassName","activeLabelClassName","backgroundColor","iconSize","ref","renderIcon","item","isActive","iconSource","activeIcon","icon","isValidElement","jsx","Image","source","style","width","height","resizeMode","accessibilityIgnoresInvertColors","defaultBgColor","edges","cn","children","role","map","index","isDisabled","disabled","jsxs","onPress","label","accessibilityRole","accessibilityLabel","accessibilityState","selected","TextClassContext","Provider","value","Text","displayName"],"sourceRoot":"../../../../src","sources":["components/ui/NavBar.tsx"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,2BAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,KAAA,GAAAL,OAAA;AAAgD,IAAAM,WAAA,GAAAN,OAAA;AAAA,SAAAD,wBAAAQ,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAV,uBAAA,YAAAA,CAAAQ,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAGhD;AACA,MAAMkB,IAAI,GAAG,IAAAC,sBAAU,EAACC,iBAAM,EAAE;EAC9BC,SAAS,EAAE;AACb,CAAC,CAA6B;AAC9B,MAAMC,SAAS,GAAG,IAAAH,sBAAU,EAACI,sBAAW,EAAE;EACxCF,SAAS,EAAE;AACb,CAAC,CAA6B;AAC9B,MAAMG,YAAY,GAAG,IAAAL,sBAAU,EAACM,wCAAc,EAAE;EAC9CJ,SAAS,EAAE;AACb,CAAC,CAA6B;;AAE9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAC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","ignoreList":[]}
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Popover = void 0;
7
+ exports.PopoverContent = PopoverContent;
8
+ exports.PopoverTrigger = void 0;
9
+ var _NativeOnlyAnimatedView = require("./Native-Only-Animated-View");
10
+ var _Text = require("./Text");
11
+ var _utils = require("../../lib/utils");
12
+ var PopoverPrimitive = _interopRequireWildcard(require("@rn-primitives/popover"));
13
+ var React = _interopRequireWildcard(require("react"));
14
+ var _reactNative = require("react-native");
15
+ var _reactNativeReanimated = require("react-native-reanimated");
16
+ var _reactNativeScreens = require("react-native-screens");
17
+ var _jsxRuntime = require("react/jsx-runtime");
18
+ 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); }
19
+ /**
20
+ * Root component for popover - provides context for trigger and content
21
+ *
22
+ * @component
23
+ * @example
24
+ * ```tsx
25
+ * <Popover>
26
+ * <PopoverTrigger>
27
+ * <Button variant="outline">
28
+ * <Text>Open Popover</Text>
29
+ * </Button>
30
+ * </PopoverTrigger>
31
+ * <PopoverContent>
32
+ * <Text>Popover content goes here</Text>
33
+ * </PopoverContent>
34
+ * </Popover>
35
+ * ```
36
+ */const Popover = exports.Popover = PopoverPrimitive.Root;
37
+
38
+ /**
39
+ * Trigger component that opens the popover when pressed
40
+ *
41
+ * @component
42
+ */
43
+ const PopoverTrigger = exports.PopoverTrigger = PopoverPrimitive.Trigger;
44
+
45
+ /**
46
+ * Full window overlay wrapper for iOS, Fragment for other platforms
47
+ */
48
+ const FullWindowOverlay = _reactNative.Platform.OS === 'ios' ? _reactNativeScreens.FullWindowOverlay : React.Fragment;
49
+
50
+ /**
51
+ * Content container for popover
52
+ *
53
+ * Displays content in a floating panel anchored to the trigger.
54
+ * Includes smooth animations and proper positioning.
55
+ *
56
+ * @component
57
+ * @example
58
+ * ```tsx
59
+ * <PopoverContent align="start" sideOffset={8}>
60
+ * <View className="gap-2">
61
+ * <Text className="font-semibold">Dimensions</Text>
62
+ * <Text className="text-sm">Set the dimensions for the layer</Text>
63
+ * </View>
64
+ * </PopoverContent>
65
+ * ```
66
+ *
67
+ * @accessibility
68
+ * - Content is announced by screen readers
69
+ * - Dismissible with escape key on web
70
+ * - Proper focus management
71
+ */
72
+ function PopoverContent({
73
+ className,
74
+ align = 'center',
75
+ sideOffset = 4,
76
+ portalHost,
77
+ ...props
78
+ }) {
79
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(PopoverPrimitive.Portal, {
80
+ hostName: portalHost,
81
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(FullWindowOverlay, {
82
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(PopoverPrimitive.Overlay, {
83
+ style: _reactNative.Platform.select({
84
+ native: _reactNative.StyleSheet.absoluteFill
85
+ }),
86
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_NativeOnlyAnimatedView.NativeOnlyAnimatedView, {
87
+ entering: _reactNativeReanimated.FadeIn.duration(200),
88
+ exiting: _reactNativeReanimated.FadeOut,
89
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.TextClassContext.Provider, {
90
+ value: "text-popover-foreground",
91
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(PopoverPrimitive.Content, {
92
+ align: align,
93
+ sideOffset: sideOffset,
94
+ className: (0, _utils.cn)('bg-popover border-border outline-hidden z-50 w-72 rounded-md border p-4 shadow-md shadow-black/5', _reactNative.Platform.select({
95
+ web: (0, _utils.cn)('animate-in fade-in-0 zoom-in-95 origin-(--radix-popover-content-transform-origin) cursor-auto', props.side === 'bottom' && 'slide-in-from-top-2', props.side === 'top' && 'slide-in-from-bottom-2')
96
+ }), className),
97
+ ...props
98
+ })
99
+ })
100
+ })
101
+ })
102
+ })
103
+ });
104
+ }
105
+ //# sourceMappingURL=Popover.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_NativeOnlyAnimatedView","require","_Text","_utils","PopoverPrimitive","_interopRequireWildcard","React","_reactNative","_reactNativeReanimated","_reactNativeScreens","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Popover","exports","Root","PopoverTrigger","Trigger","FullWindowOverlay","Platform","OS","RNFullWindowOverlay","Fragment","PopoverContent","className","align","sideOffset","portalHost","props","jsx","Portal","hostName","children","Overlay","style","select","native","StyleSheet","absoluteFill","NativeOnlyAnimatedView","entering","FadeIn","duration","exiting","FadeOut","TextClassContext","Provider","value","Content","cn","web","side"],"sourceRoot":"../../../../src","sources":["components/ui/Popover.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Progress = Progress;
7
+ var _utils = require("../../lib/utils");
8
+ var ProgressPrimitive = _interopRequireWildcard(require("@rn-primitives/progress"));
9
+ var _reactNative = require("react-native");
10
+ var _nativewind = require("nativewind");
11
+ var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
12
+ var _jsxRuntime = require("react/jsx-runtime");
13
+ 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); }
14
+ const View = (0, _nativewind.cssInterop)(_reactNative.View, {
15
+ className: 'style'
16
+ });
17
+
18
+ /**
19
+ * Progress bar component for displaying task completion
20
+ *
21
+ * Displays an animated progress indicator with customizable styles.
22
+ * Uses spring animations on native platforms for smooth transitions.
23
+ *
24
+ * @component
25
+ * @example
26
+ * ```tsx
27
+ * <Progress value={60} className="w-full" />
28
+ *
29
+ * <Progress
30
+ * value={progress}
31
+ * indicatorClassName="bg-green-500"
32
+ * />
33
+ * ```
34
+ *
35
+ * @accessibility
36
+ * - Uses proper ARIA attributes for progress indication
37
+ * - Value changes are announced by screen readers
38
+ */
39
+ function Progress({
40
+ className,
41
+ value,
42
+ indicatorClassName,
43
+ ...props
44
+ }) {
45
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(ProgressPrimitive.Root, {
46
+ className: (0, _utils.cn)('bg-primary/20 relative h-2 w-full overflow-hidden rounded-full', className),
47
+ ...props,
48
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Indicator, {
49
+ value: value,
50
+ className: indicatorClassName
51
+ })
52
+ });
53
+ }
54
+ /**
55
+ * Platform-specific indicator component selector
56
+ */
57
+ const Indicator = _reactNative.Platform.select({
58
+ web: WebIndicator,
59
+ native: NativeIndicator,
60
+ default: NullIndicator
61
+ });
62
+
63
+ /**
64
+ * Props for progress indicator components
65
+ */
66
+
67
+ /**
68
+ * Web-specific progress indicator using CSS transforms
69
+ *
70
+ * @platform web
71
+ */
72
+ function WebIndicator({
73
+ value,
74
+ className
75
+ }) {
76
+ if (_reactNative.Platform.OS !== 'web') {
77
+ return null;
78
+ }
79
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(View, {
80
+ className: (0, _utils.cn)('bg-primary h-full w-full flex-1 transition-all', className),
81
+ style: {
82
+ transform: `translateX(-${100 - (value ?? 0)}%)`
83
+ },
84
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(ProgressPrimitive.Indicator, {
85
+ className: (0, _utils.cn)('h-full w-full', className)
86
+ })
87
+ });
88
+ }
89
+
90
+ /**
91
+ * Native-specific progress indicator using Reanimated
92
+ *
93
+ * Provides smooth spring animations for progress changes.
94
+ *
95
+ * @platform native
96
+ */
97
+ function NativeIndicator({
98
+ value,
99
+ className
100
+ }) {
101
+ const progress = (0, _reactNativeReanimated.useDerivedValue)(() => value ?? 0);
102
+ const indicator = (0, _reactNativeReanimated.useAnimatedStyle)(() => {
103
+ return {
104
+ width: (0, _reactNativeReanimated.withSpring)(`${(0, _reactNativeReanimated.interpolate)(progress.value, [0, 100], [1, 100], _reactNativeReanimated.Extrapolation.CLAMP)}%`, {
105
+ overshootClamping: true
106
+ })
107
+ };
108
+ }, [value]);
109
+ if (_reactNative.Platform.OS === 'web') {
110
+ return null;
111
+ }
112
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(ProgressPrimitive.Indicator, {
113
+ asChild: true,
114
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
115
+ style: indicator,
116
+ className: (0, _utils.cn)('bg-foreground h-full', className)
117
+ })
118
+ });
119
+ }
120
+
121
+ /**
122
+ * Null indicator fallback for unsupported platforms
123
+ */
124
+ function NullIndicator(_props) {
125
+ return null;
126
+ }
127
+ //# sourceMappingURL=Progress.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_utils","require","ProgressPrimitive","_interopRequireWildcard","_reactNative","_nativewind","_reactNativeReanimated","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","View","cssInterop","RNView","className","Progress","value","indicatorClassName","props","jsx","Root","cn","children","Indicator","Platform","select","web","WebIndicator","native","NativeIndicator","NullIndicator","OS","style","transform","progress","useDerivedValue","indicator","useAnimatedStyle","width","withSpring","interpolate","Extrapolation","CLAMP","overshootClamping","asChild","_props"],"sourceRoot":"../../../../src","sources":["components/ui/Progress.tsx"],"mappings":"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","ignoreList":[]}