@korsolutions/ui 0.0.52 → 0.0.54

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 (430) hide show
  1. package/AGENTS.md +3 -3
  2. package/babel.config.js +1 -11
  3. package/dist/module/components/alert/components/alert-body.js.map +1 -1
  4. package/dist/module/components/alert/components/alert-description.js.map +1 -1
  5. package/dist/module/components/alert/components/alert-icon.js.map +1 -1
  6. package/dist/module/components/alert/components/alert-root.js.map +1 -1
  7. package/dist/module/components/alert/components/alert-title.js.map +1 -1
  8. package/dist/module/components/alert/index.js.map +1 -1
  9. package/dist/module/components/alert/variants/default.js.map +1 -1
  10. package/dist/module/components/alert/variants/destructive.js.map +1 -1
  11. package/dist/module/components/alert/variants/index.js.map +1 -1
  12. package/dist/module/components/alert-dialog/async-alert-dialog.js.map +1 -1
  13. package/dist/module/components/alert-dialog/components/alert-dialog-action.js.map +1 -1
  14. package/dist/module/components/alert-dialog/components/alert-dialog-cancel.js.map +1 -1
  15. package/dist/module/components/alert-dialog/components/alert-dialog-content.js.map +1 -1
  16. package/dist/module/components/alert-dialog/components/alert-dialog-description.js.map +1 -1
  17. package/dist/module/components/alert-dialog/components/alert-dialog-footer.js.map +1 -1
  18. package/dist/module/components/alert-dialog/components/alert-dialog-overlay.js.map +1 -1
  19. package/dist/module/components/alert-dialog/components/alert-dialog-portal.js.map +1 -1
  20. package/dist/module/components/alert-dialog/components/alert-dialog-root.js.map +1 -1
  21. package/dist/module/components/alert-dialog/components/alert-dialog-title.js.map +1 -1
  22. package/dist/module/components/alert-dialog/components/alert-dialog-trigger.js.map +1 -1
  23. package/dist/module/components/alert-dialog/index.js.map +1 -1
  24. package/dist/module/components/alert-dialog/variants/default.js.map +1 -1
  25. package/dist/module/components/alert-dialog/variants/index.js.map +1 -1
  26. package/dist/module/components/avatar/components/avatar-fallback.js.map +1 -1
  27. package/dist/module/components/avatar/components/avatar-image.js.map +1 -1
  28. package/dist/module/components/avatar/components/avatar-root.js.map +1 -1
  29. package/dist/module/components/avatar/index.js.map +1 -1
  30. package/dist/module/components/avatar/variants/default.js.map +1 -1
  31. package/dist/module/components/avatar/variants/index.js.map +1 -1
  32. package/dist/module/components/badge/components/badge-label.js.map +1 -1
  33. package/dist/module/components/badge/components/badge-root.js.map +1 -1
  34. package/dist/module/components/badge/index.js.map +1 -1
  35. package/dist/module/components/badge/variants/default.js.map +1 -1
  36. package/dist/module/components/badge/variants/index.js.map +1 -1
  37. package/dist/module/components/badge/variants/secondary.js.map +1 -1
  38. package/dist/module/components/button/components/button-label.js.map +1 -1
  39. package/dist/module/components/button/components/button-root.js.map +1 -1
  40. package/dist/module/components/button/components/button-spinner.js.map +1 -1
  41. package/dist/module/components/button/index.js.map +1 -1
  42. package/dist/module/components/button/variants/default.js.map +1 -1
  43. package/dist/module/components/button/variants/index.js.map +1 -1
  44. package/dist/module/components/button/variants/secondary.js.map +1 -1
  45. package/dist/module/components/calendar/components/calendar-day.js.map +1 -1
  46. package/dist/module/components/calendar/components/calendar-header.js.map +1 -1
  47. package/dist/module/components/calendar/components/calendar-nav-button.js.map +1 -1
  48. package/dist/module/components/calendar/components/calendar-root.js.map +1 -1
  49. package/dist/module/components/calendar/components/calendar-title.js.map +1 -1
  50. package/dist/module/components/calendar/components/calendar-week-labels.js.map +1 -1
  51. package/dist/module/components/calendar/components/calendar-weeks.js.map +1 -1
  52. package/dist/module/components/calendar/index.js.map +1 -1
  53. package/dist/module/components/calendar/variants/default.js.map +1 -1
  54. package/dist/module/components/calendar/variants/index.js.map +1 -1
  55. package/dist/module/components/card/card-body.js.map +1 -1
  56. package/dist/module/components/card/card-footer.js.map +1 -1
  57. package/dist/module/components/card/card-header.js.map +1 -1
  58. package/dist/module/components/card/card-root.js.map +1 -1
  59. package/dist/module/components/card/card-title.js.map +1 -1
  60. package/dist/module/components/card/index.js.map +1 -1
  61. package/dist/module/components/card/variants/default.js.map +1 -1
  62. package/dist/module/components/card/variants/index.js.map +1 -1
  63. package/dist/module/components/checkbox/components/checkbox-content.js.map +1 -1
  64. package/dist/module/components/checkbox/components/checkbox-description.js.map +1 -1
  65. package/dist/module/components/checkbox/components/checkbox-indicator.js.map +1 -1
  66. package/dist/module/components/checkbox/components/checkbox-root.js.map +1 -1
  67. package/dist/module/components/checkbox/components/checkbox-title.js.map +1 -1
  68. package/dist/module/components/checkbox/index.js.map +1 -1
  69. package/dist/module/components/checkbox/variants/default.js.map +1 -1
  70. package/dist/module/components/checkbox/variants/index.js.map +1 -1
  71. package/dist/module/components/checkbox/variants/outlined.js.map +1 -1
  72. package/dist/module/components/empty/components/empty-description.js.map +1 -1
  73. package/dist/module/components/empty/components/empty-media.js.map +1 -1
  74. package/dist/module/components/empty/components/empty-root.js.map +1 -1
  75. package/dist/module/components/empty/components/empty-title.js.map +1 -1
  76. package/dist/module/components/empty/index.js.map +1 -1
  77. package/dist/module/components/empty/variants/default.js.map +1 -1
  78. package/dist/module/components/empty/variants/index.js.map +1 -1
  79. package/dist/module/components/field/components/field-description.js.map +1 -1
  80. package/dist/module/components/field/components/field-error.js.map +1 -1
  81. package/dist/module/components/field/components/field-label.js.map +1 -1
  82. package/dist/module/components/field/components/field-root.js.map +1 -1
  83. package/dist/module/components/field/index.js.map +1 -1
  84. package/dist/module/components/field/variants/default.js.map +1 -1
  85. package/dist/module/components/field/variants/index.js.map +1 -1
  86. package/dist/module/components/icon/icon.js.map +1 -1
  87. package/dist/module/components/icon/index.js.map +1 -1
  88. package/dist/module/components/icon/variants/default.js.map +1 -1
  89. package/dist/module/components/icon/variants/index.js.map +1 -1
  90. package/dist/module/components/index.js +1 -0
  91. package/dist/module/components/index.js.map +1 -1
  92. package/dist/module/components/input/index.js.map +1 -1
  93. package/dist/module/components/input/input.js.map +1 -1
  94. package/dist/module/components/input/numeric-input.js +1 -1
  95. package/dist/module/components/input/numeric-input.js.map +1 -1
  96. package/dist/module/components/input/variants/default.js +9 -2
  97. package/dist/module/components/input/variants/default.js.map +1 -1
  98. package/dist/module/components/input/variants/index.js.map +1 -1
  99. package/dist/module/components/input/variants/secondary.js +9 -2
  100. package/dist/module/components/input/variants/secondary.js.map +1 -1
  101. package/dist/module/components/link/index.js.map +1 -1
  102. package/dist/module/components/link/link.js.map +1 -1
  103. package/dist/module/components/link/variants/default.js.map +1 -1
  104. package/dist/module/components/link/variants/index.js.map +1 -1
  105. package/dist/module/components/list/index.js.map +1 -1
  106. package/dist/module/components/menu/components/menu-content.js.map +1 -1
  107. package/dist/module/components/menu/components/menu-item.js.map +1 -1
  108. package/dist/module/components/menu/components/menu-overlay.js.map +1 -1
  109. package/dist/module/components/menu/components/menu-portal.js.map +1 -1
  110. package/dist/module/components/menu/components/menu-root.js.map +1 -1
  111. package/dist/module/components/menu/components/menu-trigger.js +1 -1
  112. package/dist/module/components/menu/components/menu-trigger.js.map +1 -1
  113. package/dist/module/components/menu/index.js.map +1 -1
  114. package/dist/module/components/menu/variants/default.js.map +1 -1
  115. package/dist/module/components/menu/variants/index.js.map +1 -1
  116. package/dist/module/components/phone-input/components/country-picker.js +101 -0
  117. package/dist/module/components/phone-input/components/country-picker.js.map +1 -0
  118. package/dist/module/components/phone-input/components/phone-input-root.js +57 -0
  119. package/dist/module/components/phone-input/components/phone-input-root.js.map +1 -0
  120. package/dist/module/components/phone-input/components/phone-input.js +31 -0
  121. package/dist/module/components/phone-input/components/phone-input.js.map +1 -0
  122. package/dist/module/components/phone-input/context.js +12 -0
  123. package/dist/module/components/phone-input/context.js.map +1 -0
  124. package/dist/module/components/phone-input/index.js +11 -0
  125. package/dist/module/components/phone-input/index.js.map +1 -0
  126. package/dist/module/components/phone-input/types.js +4 -0
  127. package/dist/module/components/phone-input/types.js.map +1 -0
  128. package/dist/module/components/phone-input/variants/default.js +128 -0
  129. package/dist/module/components/phone-input/variants/default.js.map +1 -0
  130. package/dist/module/components/phone-input/variants/index.js +7 -0
  131. package/dist/module/components/phone-input/variants/index.js.map +1 -0
  132. package/dist/module/components/popover/components/popover-close.js.map +1 -1
  133. package/dist/module/components/popover/components/popover-content.js.map +1 -1
  134. package/dist/module/components/popover/components/popover-overlay.js.map +1 -1
  135. package/dist/module/components/popover/components/popover-portal.js.map +1 -1
  136. package/dist/module/components/popover/components/popover-root.js.map +1 -1
  137. package/dist/module/components/popover/components/popover-trigger.js.map +1 -1
  138. package/dist/module/components/popover/index.js.map +1 -1
  139. package/dist/module/components/popover/variants/default.js.map +1 -1
  140. package/dist/module/components/popover/variants/index.js.map +1 -1
  141. package/dist/module/components/popover/variants/unstyled.js.map +1 -1
  142. package/dist/module/components/portal/index.js.map +1 -1
  143. package/dist/module/components/portal/portal.js.map +1 -1
  144. package/dist/module/components/portal/portal.web.js.map +1 -1
  145. package/dist/module/components/progress/components/progress-indicator.js.map +1 -1
  146. package/dist/module/components/progress/components/progress-root.js.map +1 -1
  147. package/dist/module/components/progress/index.js.map +1 -1
  148. package/dist/module/components/progress/variants/default.js.map +1 -1
  149. package/dist/module/components/progress/variants/index.js.map +1 -1
  150. package/dist/module/components/scroll-bar/index.js.map +1 -1
  151. package/dist/module/components/scroll-bar/scroll-bar.js.map +1 -1
  152. package/dist/module/components/select/components/select-content.js.map +1 -1
  153. package/dist/module/components/select/components/select-option.js.map +1 -1
  154. package/dist/module/components/select/components/select-overlay.js.map +1 -1
  155. package/dist/module/components/select/components/select-portal.js.map +1 -1
  156. package/dist/module/components/select/components/select-root.js.map +1 -1
  157. package/dist/module/components/select/components/select-trigger.js +2 -2
  158. package/dist/module/components/select/components/select-trigger.js.map +1 -1
  159. package/dist/module/components/select/index.js.map +1 -1
  160. package/dist/module/components/select/variants/default.js.map +1 -1
  161. package/dist/module/components/select/variants/index.js.map +1 -1
  162. package/dist/module/components/tabs/components/tabs-list.js.map +1 -1
  163. package/dist/module/components/tabs/components/tabs-root.js.map +1 -1
  164. package/dist/module/components/tabs/components/tabs-trigger-text.js.map +1 -1
  165. package/dist/module/components/tabs/components/tabs-trigger.js.map +1 -1
  166. package/dist/module/components/tabs/index.js.map +1 -1
  167. package/dist/module/components/tabs/variants/default.js.map +1 -1
  168. package/dist/module/components/tabs/variants/index.js.map +1 -1
  169. package/dist/module/components/tabs/variants/line.js.map +1 -1
  170. package/dist/module/components/textarea/index.js.map +1 -1
  171. package/dist/module/components/textarea/textarea.js.map +1 -1
  172. package/dist/module/components/textarea/variants/default.js.map +1 -1
  173. package/dist/module/components/textarea/variants/index.js.map +1 -1
  174. package/dist/module/components/toast/components/toast-description.js.map +1 -1
  175. package/dist/module/components/toast/components/toast-icon.js.map +1 -1
  176. package/dist/module/components/toast/components/toast-root.js.map +1 -1
  177. package/dist/module/components/toast/components/toast-title.js.map +1 -1
  178. package/dist/module/components/toast/index.js.map +1 -1
  179. package/dist/module/components/toast/manager.js +2 -2
  180. package/dist/module/components/toast/manager.js.map +1 -1
  181. package/dist/module/components/toast/variants/danger.js.map +1 -1
  182. package/dist/module/components/toast/variants/default.js.map +1 -1
  183. package/dist/module/components/toast/variants/index.js.map +1 -1
  184. package/dist/module/components/toast/variants/success.js.map +1 -1
  185. package/dist/module/components/typography/index.js.map +1 -1
  186. package/dist/module/components/typography/typography.js.map +1 -1
  187. package/dist/module/components/typography/variants/body-lg.js.map +1 -1
  188. package/dist/module/components/typography/variants/body-md.js.map +1 -1
  189. package/dist/module/components/typography/variants/body-sm.js.map +1 -1
  190. package/dist/module/components/typography/variants/heading-lg.js.map +1 -1
  191. package/dist/module/components/typography/variants/heading-md.js.map +1 -1
  192. package/dist/module/components/typography/variants/heading-sm.js.map +1 -1
  193. package/dist/module/components/typography/variants/index.js.map +1 -1
  194. package/dist/module/data/countries.js +476 -0
  195. package/dist/module/data/countries.js.map +1 -0
  196. package/dist/module/hooks/index.js +1 -0
  197. package/dist/module/hooks/index.js.map +1 -1
  198. package/dist/module/hooks/use-phone-mask.js +121 -0
  199. package/dist/module/hooks/use-phone-mask.js.map +1 -0
  200. package/dist/module/hooks/use-relative-position.js.map +1 -1
  201. package/dist/module/index.js +2 -2
  202. package/dist/module/index.js.map +1 -1
  203. package/dist/module/safe-area/index.js.map +1 -1
  204. package/dist/module/safe-area/provider.js.map +1 -1
  205. package/dist/module/themes/adapters/index.js.map +1 -1
  206. package/dist/module/themes/adapters/react-navigation.js.map +1 -1
  207. package/dist/module/themes/default/index.js.map +1 -1
  208. package/dist/module/themes/index.js.map +1 -1
  209. package/dist/module/themes/provider.js.map +1 -1
  210. package/dist/module/themes/utils.js.map +1 -1
  211. package/dist/module/utils/input-utils.js.map +1 -1
  212. package/dist/module/utils/normalize-layout.js.map +1 -1
  213. package/dist/module/utils/use-themed-styles.js.map +1 -1
  214. package/dist/typescript/babel.config.d.ts +1 -6
  215. package/dist/typescript/babel.config.d.ts.map +1 -1
  216. package/dist/typescript/src/components/alert/components/alert-body.d.ts.map +1 -1
  217. package/dist/typescript/src/components/alert/components/alert-description.d.ts +2 -2
  218. package/dist/typescript/src/components/alert/components/alert-description.d.ts.map +1 -1
  219. package/dist/typescript/src/components/alert/components/alert-icon.d.ts.map +1 -1
  220. package/dist/typescript/src/components/alert/components/alert-root.d.ts.map +1 -1
  221. package/dist/typescript/src/components/alert/components/alert-title.d.ts.map +1 -1
  222. package/dist/typescript/src/components/alert/variants/default.d.ts +1 -1
  223. package/dist/typescript/src/components/alert/variants/default.d.ts.map +1 -1
  224. package/dist/typescript/src/components/alert/variants/destructive.d.ts +1 -1
  225. package/dist/typescript/src/components/alert/variants/destructive.d.ts.map +1 -1
  226. package/dist/typescript/src/components/alert-dialog/components/alert-dialog-trigger.d.ts.map +1 -1
  227. package/dist/typescript/src/components/alert-dialog/variants/default.d.ts +1 -1
  228. package/dist/typescript/src/components/alert-dialog/variants/default.d.ts.map +1 -1
  229. package/dist/typescript/src/components/avatar/variants/default.d.ts +1 -1
  230. package/dist/typescript/src/components/avatar/variants/default.d.ts.map +1 -1
  231. package/dist/typescript/src/components/badge/components/badge-root.d.ts.map +1 -1
  232. package/dist/typescript/src/components/badge/variants/default.d.ts +1 -1
  233. package/dist/typescript/src/components/badge/variants/default.d.ts.map +1 -1
  234. package/dist/typescript/src/components/badge/variants/secondary.d.ts +1 -1
  235. package/dist/typescript/src/components/badge/variants/secondary.d.ts.map +1 -1
  236. package/dist/typescript/src/components/button/components/button-label.d.ts.map +1 -1
  237. package/dist/typescript/src/components/button/variants/default.d.ts +1 -1
  238. package/dist/typescript/src/components/button/variants/default.d.ts.map +1 -1
  239. package/dist/typescript/src/components/button/variants/secondary.d.ts +1 -1
  240. package/dist/typescript/src/components/button/variants/secondary.d.ts.map +1 -1
  241. package/dist/typescript/src/components/calendar/variants/default.d.ts +1 -1
  242. package/dist/typescript/src/components/calendar/variants/default.d.ts.map +1 -1
  243. package/dist/typescript/src/components/card/card-body.d.ts.map +1 -1
  244. package/dist/typescript/src/components/card/card-footer.d.ts.map +1 -1
  245. package/dist/typescript/src/components/card/card-header.d.ts.map +1 -1
  246. package/dist/typescript/src/components/card/card-root.d.ts.map +1 -1
  247. package/dist/typescript/src/components/card/card-title.d.ts.map +1 -1
  248. package/dist/typescript/src/components/card/variants/default.d.ts +1 -1
  249. package/dist/typescript/src/components/card/variants/default.d.ts.map +1 -1
  250. package/dist/typescript/src/components/checkbox/variants/default.d.ts +1 -1
  251. package/dist/typescript/src/components/checkbox/variants/default.d.ts.map +1 -1
  252. package/dist/typescript/src/components/checkbox/variants/outlined.d.ts +1 -1
  253. package/dist/typescript/src/components/checkbox/variants/outlined.d.ts.map +1 -1
  254. package/dist/typescript/src/components/empty/variants/default.d.ts +1 -1
  255. package/dist/typescript/src/components/empty/variants/default.d.ts.map +1 -1
  256. package/dist/typescript/src/components/field/variants/default.d.ts +1 -1
  257. package/dist/typescript/src/components/field/variants/default.d.ts.map +1 -1
  258. package/dist/typescript/src/components/icon/icon.d.ts.map +1 -1
  259. package/dist/typescript/src/components/index.d.ts +1 -0
  260. package/dist/typescript/src/components/index.d.ts.map +1 -1
  261. package/dist/typescript/src/components/input/input.d.ts.map +1 -1
  262. package/dist/typescript/src/components/input/numeric-input.d.ts +1 -1
  263. package/dist/typescript/src/components/input/numeric-input.d.ts.map +1 -1
  264. package/dist/typescript/src/components/input/variants/default.d.ts +1 -1
  265. package/dist/typescript/src/components/input/variants/default.d.ts.map +1 -1
  266. package/dist/typescript/src/components/input/variants/secondary.d.ts +1 -1
  267. package/dist/typescript/src/components/input/variants/secondary.d.ts.map +1 -1
  268. package/dist/typescript/src/components/link/variants/default.d.ts.map +1 -1
  269. package/dist/typescript/src/components/menu/components/menu-trigger.d.ts +1 -1
  270. package/dist/typescript/src/components/menu/components/menu-trigger.d.ts.map +1 -1
  271. package/dist/typescript/src/components/menu/context.d.ts.map +1 -1
  272. package/dist/typescript/src/components/menu/variants/default.d.ts +1 -1
  273. package/dist/typescript/src/components/menu/variants/default.d.ts.map +1 -1
  274. package/dist/typescript/src/components/phone-input/components/country-picker.d.ts +3 -0
  275. package/dist/typescript/src/components/phone-input/components/country-picker.d.ts.map +1 -0
  276. package/dist/typescript/src/components/phone-input/components/phone-input-root.d.ts +17 -0
  277. package/dist/typescript/src/components/phone-input/components/phone-input-root.d.ts.map +1 -0
  278. package/dist/typescript/src/components/phone-input/components/phone-input.d.ts +8 -0
  279. package/dist/typescript/src/components/phone-input/components/phone-input.d.ts.map +1 -0
  280. package/dist/typescript/src/components/phone-input/context.d.ts +17 -0
  281. package/dist/typescript/src/components/phone-input/context.d.ts.map +1 -0
  282. package/dist/typescript/src/components/phone-input/index.d.ts +10 -0
  283. package/dist/typescript/src/components/phone-input/index.d.ts.map +1 -0
  284. package/dist/typescript/src/components/phone-input/types.d.ts +15 -0
  285. package/dist/typescript/src/components/phone-input/types.d.ts.map +1 -0
  286. package/dist/typescript/src/components/phone-input/variants/default.d.ts +3 -0
  287. package/dist/typescript/src/components/phone-input/variants/default.d.ts.map +1 -0
  288. package/dist/typescript/src/components/phone-input/variants/index.d.ts +5 -0
  289. package/dist/typescript/src/components/phone-input/variants/index.d.ts.map +1 -0
  290. package/dist/typescript/src/components/popover/components/popover-trigger.d.ts.map +1 -1
  291. package/dist/typescript/src/components/popover/context.d.ts.map +1 -1
  292. package/dist/typescript/src/components/popover/variants/default.d.ts +1 -1
  293. package/dist/typescript/src/components/popover/variants/default.d.ts.map +1 -1
  294. package/dist/typescript/src/components/popover/variants/unstyled.d.ts +1 -1
  295. package/dist/typescript/src/components/popover/variants/unstyled.d.ts.map +1 -1
  296. package/dist/typescript/src/components/progress/variants/default.d.ts +1 -1
  297. package/dist/typescript/src/components/progress/variants/default.d.ts.map +1 -1
  298. package/dist/typescript/src/components/select/components/select-trigger.d.ts.map +1 -1
  299. package/dist/typescript/src/components/select/context.d.ts.map +1 -1
  300. package/dist/typescript/src/components/select/variants/default.d.ts +1 -1
  301. package/dist/typescript/src/components/select/variants/default.d.ts.map +1 -1
  302. package/dist/typescript/src/components/tabs/variants/default.d.ts +1 -1
  303. package/dist/typescript/src/components/tabs/variants/default.d.ts.map +1 -1
  304. package/dist/typescript/src/components/tabs/variants/line.d.ts +1 -1
  305. package/dist/typescript/src/components/tabs/variants/line.d.ts.map +1 -1
  306. package/dist/typescript/src/components/textarea/variants/default.d.ts +1 -1
  307. package/dist/typescript/src/components/textarea/variants/default.d.ts.map +1 -1
  308. package/dist/typescript/src/components/toast/components/toast-icon.d.ts +1 -1
  309. package/dist/typescript/src/components/toast/components/toast-icon.d.ts.map +1 -1
  310. package/dist/typescript/src/components/toast/manager.d.ts.map +1 -1
  311. package/dist/typescript/src/components/typography/variants/body-lg.d.ts.map +1 -1
  312. package/dist/typescript/src/components/typography/variants/body-md.d.ts.map +1 -1
  313. package/dist/typescript/src/components/typography/variants/body-sm.d.ts.map +1 -1
  314. package/dist/typescript/src/components/typography/variants/heading-lg.d.ts.map +1 -1
  315. package/dist/typescript/src/components/typography/variants/heading-md.d.ts.map +1 -1
  316. package/dist/typescript/src/components/typography/variants/heading-sm.d.ts.map +1 -1
  317. package/dist/typescript/src/data/countries.d.ts +18 -0
  318. package/dist/typescript/src/data/countries.d.ts.map +1 -0
  319. package/dist/typescript/src/hooks/index.d.ts +1 -0
  320. package/dist/typescript/src/hooks/index.d.ts.map +1 -1
  321. package/dist/typescript/src/hooks/use-phone-mask.d.ts +20 -0
  322. package/dist/typescript/src/hooks/use-phone-mask.d.ts.map +1 -0
  323. package/dist/typescript/src/hooks/use-relative-position.d.ts +1 -1
  324. package/dist/typescript/src/hooks/use-relative-position.d.ts.map +1 -1
  325. package/dist/typescript/src/index.d.ts +2 -2
  326. package/dist/typescript/src/index.d.ts.map +1 -1
  327. package/dist/typescript/src/themes/provider.d.ts +1 -1
  328. package/dist/typescript/src/themes/provider.d.ts.map +1 -1
  329. package/dist/typescript/src/themes/utils.d.ts.map +1 -1
  330. package/dist/typescript/src/utils/input-utils.d.ts.map +1 -1
  331. package/dist/typescript/src/utils/normalize-layout.d.ts +1 -1
  332. package/dist/typescript/src/utils/normalize-layout.d.ts.map +1 -1
  333. package/dist/typescript/src/utils/use-themed-styles.d.ts.map +1 -1
  334. package/package.json +2 -7
  335. package/src/components/alert/components/alert-body.tsx +1 -1
  336. package/src/components/alert/components/alert-description.tsx +5 -3
  337. package/src/components/alert/components/alert-icon.tsx +1 -1
  338. package/src/components/alert/components/alert-root.tsx +1 -1
  339. package/src/components/alert/components/alert-title.tsx +2 -2
  340. package/src/components/alert/variants/default.tsx +2 -2
  341. package/src/components/alert/variants/destructive.tsx +2 -2
  342. package/src/components/alert-dialog/components/alert-dialog-trigger.tsx +1 -1
  343. package/src/components/alert-dialog/variants/default.tsx +2 -2
  344. package/src/components/avatar/variants/default.tsx +2 -2
  345. package/src/components/badge/components/badge-label.tsx +1 -1
  346. package/src/components/badge/components/badge-root.tsx +2 -2
  347. package/src/components/badge/variants/default.tsx +2 -2
  348. package/src/components/badge/variants/secondary.tsx +2 -2
  349. package/src/components/button/components/button-label.tsx +2 -2
  350. package/src/components/button/variants/default.tsx +3 -3
  351. package/src/components/button/variants/secondary.tsx +3 -3
  352. package/src/components/calendar/components/calendar-day.tsx +1 -1
  353. package/src/components/calendar/components/calendar-nav-button.tsx +1 -1
  354. package/src/components/calendar/components/calendar-title.tsx +1 -1
  355. package/src/components/calendar/components/calendar-weeks.tsx +1 -1
  356. package/src/components/calendar/variants/default.tsx +2 -2
  357. package/src/components/card/card-body.tsx +2 -2
  358. package/src/components/card/card-footer.tsx +2 -2
  359. package/src/components/card/card-header.tsx +2 -2
  360. package/src/components/card/card-root.tsx +2 -2
  361. package/src/components/card/card-title.tsx +3 -3
  362. package/src/components/card/variants/default.tsx +2 -2
  363. package/src/components/checkbox/variants/default.tsx +2 -2
  364. package/src/components/checkbox/variants/outlined.tsx +2 -2
  365. package/src/components/empty/variants/default.tsx +2 -2
  366. package/src/components/field/variants/default.tsx +2 -2
  367. package/src/components/icon/icon.tsx +1 -1
  368. package/src/components/icon/variants/default.tsx +1 -1
  369. package/src/components/index.ts +1 -0
  370. package/src/components/input/input.tsx +1 -1
  371. package/src/components/input/numeric-input.tsx +8 -2
  372. package/src/components/input/variants/default.tsx +10 -3
  373. package/src/components/input/variants/secondary.tsx +10 -3
  374. package/src/components/link/variants/default.tsx +2 -2
  375. package/src/components/menu/components/menu-content.tsx +1 -1
  376. package/src/components/menu/components/menu-root.tsx +1 -1
  377. package/src/components/menu/components/menu-trigger.tsx +40 -38
  378. package/src/components/menu/context.ts +1 -1
  379. package/src/components/menu/variants/default.tsx +2 -2
  380. package/src/components/phone-input/components/country-picker.tsx +155 -0
  381. package/src/components/phone-input/components/phone-input-root.tsx +85 -0
  382. package/src/components/phone-input/components/phone-input.tsx +43 -0
  383. package/src/components/phone-input/context.ts +32 -0
  384. package/src/components/phone-input/index.ts +11 -0
  385. package/src/components/phone-input/types.ts +20 -0
  386. package/src/components/phone-input/variants/default.tsx +124 -0
  387. package/src/components/phone-input/variants/index.ts +5 -0
  388. package/src/components/popover/components/popover-content.tsx +2 -2
  389. package/src/components/popover/components/popover-root.tsx +1 -1
  390. package/src/components/popover/components/popover-trigger.tsx +2 -2
  391. package/src/components/popover/context.ts +1 -1
  392. package/src/components/popover/variants/default.tsx +2 -2
  393. package/src/components/popover/variants/unstyled.tsx +2 -2
  394. package/src/components/progress/components/progress-indicator.tsx +1 -1
  395. package/src/components/progress/components/progress-root.tsx +1 -1
  396. package/src/components/progress/variants/default.tsx +2 -2
  397. package/src/components/scroll-bar/scroll-bar.tsx +1 -1
  398. package/src/components/select/components/select-content.tsx +2 -2
  399. package/src/components/select/components/select-option.tsx +1 -1
  400. package/src/components/select/components/select-overlay.tsx +1 -1
  401. package/src/components/select/components/select-root.tsx +2 -2
  402. package/src/components/select/components/select-trigger.tsx +35 -9
  403. package/src/components/select/context.ts +1 -1
  404. package/src/components/select/variants/default.tsx +2 -2
  405. package/src/components/tabs/variants/default.tsx +2 -2
  406. package/src/components/tabs/variants/line.tsx +2 -2
  407. package/src/components/textarea/variants/default.tsx +2 -2
  408. package/src/components/toast/components/toast-icon.tsx +8 -2
  409. package/src/components/toast/manager.tsx +11 -4
  410. package/src/components/toast/variants/danger.tsx +1 -1
  411. package/src/components/toast/variants/default.tsx +1 -1
  412. package/src/components/toast/variants/success.tsx +1 -1
  413. package/src/components/typography/variants/body-lg.tsx +1 -1
  414. package/src/components/typography/variants/body-md.tsx +1 -1
  415. package/src/components/typography/variants/body-sm.tsx +1 -1
  416. package/src/components/typography/variants/heading-lg.tsx +1 -1
  417. package/src/components/typography/variants/heading-md.tsx +1 -1
  418. package/src/components/typography/variants/heading-sm.tsx +1 -1
  419. package/src/data/countries.ts +626 -0
  420. package/src/hooks/index.ts +1 -0
  421. package/src/hooks/use-phone-mask.ts +183 -0
  422. package/src/hooks/use-relative-position.ts +94 -18
  423. package/src/index.tsx +8 -3
  424. package/src/themes/provider.tsx +23 -5
  425. package/src/themes/utils.ts +5 -2
  426. package/src/utils/input-utils.ts +5 -2
  427. package/src/utils/normalize-layout.ts +5 -2
  428. package/src/utils/use-themed-styles.ts +11 -3
  429. package/tsconfig.json +14 -7
  430. package/scripts/build.sh +0 -2
@@ -0,0 +1,183 @@
1
+ import { useCallback, useEffect, useRef, useState } from "react";
2
+ import {
3
+ type CountryData,
4
+ COUNTRIES,
5
+ getCountryByCode,
6
+ } from "../data/countries";
7
+
8
+ export interface UsePhoneMaskOptions {
9
+ value?: string;
10
+ defaultCountry?: string;
11
+ onChange?: (e164Value: string) => void;
12
+ onCountryChange?: (country: CountryData) => void;
13
+ countries?: CountryData[];
14
+ }
15
+
16
+ export interface PhoneMask {
17
+ displayValue: string;
18
+ e164Value: string;
19
+ country: CountryData;
20
+ countries: CountryData[];
21
+ onChangeText: (text: string) => void;
22
+ setCountry: (countryCode: string) => void;
23
+ setValue: (e164: string) => void;
24
+ keyboardType: "phone-pad";
25
+ }
26
+
27
+ function stripToDigits(text: string): string {
28
+ return text.replace(/\D/g, "");
29
+ }
30
+
31
+ function formatNational(digits: string, format: string): string {
32
+ let result = "";
33
+ let digitIndex = 0;
34
+ for (let i = 0; i < format.length && digitIndex < digits.length; i++) {
35
+ if (format[i] === "#") {
36
+ result += digits[digitIndex];
37
+ digitIndex++;
38
+ } else {
39
+ result += format[i];
40
+ }
41
+ }
42
+ return result;
43
+ }
44
+
45
+ function toE164(dialCode: string, nationalDigits: string): string {
46
+ return `+${dialCode}${nationalDigits}`;
47
+ }
48
+
49
+ function getMaxDigits(format: string): number {
50
+ return format.split("").filter((c) => c === "#").length;
51
+ }
52
+
53
+ function parseE164(
54
+ e164: string,
55
+ countries: CountryData[],
56
+ ): { country: CountryData; nationalDigits: string } | null {
57
+ if (!e164.startsWith("+")) return null;
58
+ const digits = e164.slice(1);
59
+
60
+ const sorted = [...countries].sort(
61
+ (a, b) => b.dialCode.length - a.dialCode.length,
62
+ );
63
+
64
+ for (const country of sorted) {
65
+ if (digits.startsWith(country.dialCode)) {
66
+ return {
67
+ country,
68
+ nationalDigits: digits.slice(country.dialCode.length),
69
+ };
70
+ }
71
+ }
72
+ return null;
73
+ }
74
+
75
+ export function usePhoneMask({
76
+ value: controlledValue,
77
+ defaultCountry = "US",
78
+ onChange,
79
+ onCountryChange,
80
+ countries: customCountries,
81
+ }: UsePhoneMaskOptions = {}): PhoneMask {
82
+ const availableCountries = customCountries ?? COUNTRIES;
83
+ const isInternalChange = useRef(false);
84
+
85
+ const [country, setCountryState] = useState<CountryData>(
86
+ () => getCountryByCode(defaultCountry) ?? availableCountries[0]!,
87
+ );
88
+ const [nationalDigits, setNationalDigits] = useState<string>("");
89
+ const [displayValue, setDisplayValue] = useState<string>("");
90
+
91
+ useEffect(() => {
92
+ if (isInternalChange.current) {
93
+ isInternalChange.current = false;
94
+ return;
95
+ }
96
+
97
+ if (controlledValue) {
98
+ const parsed = parseE164(controlledValue, availableCountries);
99
+ if (parsed) {
100
+ setCountryState(parsed.country);
101
+ setNationalDigits(parsed.nationalDigits);
102
+ setDisplayValue(
103
+ formatNational(parsed.nationalDigits, parsed.country.format),
104
+ );
105
+ }
106
+ } else {
107
+ setNationalDigits("");
108
+ setDisplayValue("");
109
+ }
110
+ }, [controlledValue]);
111
+
112
+ const onChangeText = useCallback(
113
+ (text: string) => {
114
+ const digits = stripToDigits(text);
115
+ const maxDigits = getMaxDigits(country.format);
116
+ const trimmed = digits.slice(0, maxDigits);
117
+
118
+ setNationalDigits(trimmed);
119
+ setDisplayValue(formatNational(trimmed, country.format));
120
+
121
+ const e164 = trimmed.length > 0 ? toE164(country.dialCode, trimmed) : "";
122
+ isInternalChange.current = true;
123
+ onChange?.(e164);
124
+ },
125
+ [country, onChange],
126
+ );
127
+
128
+ const handleSetCountry = useCallback(
129
+ (countryCode: string) => {
130
+ const newCountry = availableCountries.find((c) => c.code === countryCode);
131
+ if (!newCountry) return;
132
+
133
+ setCountryState(newCountry);
134
+ onCountryChange?.(newCountry);
135
+
136
+ const maxDigits = getMaxDigits(newCountry.format);
137
+ const trimmed = nationalDigits.slice(0, maxDigits);
138
+ setNationalDigits(trimmed);
139
+ setDisplayValue(formatNational(trimmed, newCountry.format));
140
+
141
+ const e164 =
142
+ trimmed.length > 0 ? toE164(newCountry.dialCode, trimmed) : "";
143
+ isInternalChange.current = true;
144
+ onChange?.(e164);
145
+ },
146
+ [nationalDigits, availableCountries, onChange, onCountryChange],
147
+ );
148
+
149
+ const setValue = useCallback(
150
+ (e164: string) => {
151
+ if (!e164) {
152
+ setNationalDigits("");
153
+ setDisplayValue("");
154
+ isInternalChange.current = true;
155
+ onChange?.("");
156
+ return;
157
+ }
158
+ const parsed = parseE164(e164, availableCountries);
159
+ if (parsed) {
160
+ setCountryState(parsed.country);
161
+ setNationalDigits(parsed.nationalDigits);
162
+ setDisplayValue(
163
+ formatNational(parsed.nationalDigits, parsed.country.format),
164
+ );
165
+ isInternalChange.current = true;
166
+ onChange?.(e164);
167
+ }
168
+ },
169
+ [availableCountries, onChange],
170
+ );
171
+
172
+ return {
173
+ displayValue,
174
+ e164Value:
175
+ nationalDigits.length > 0 ? toE164(country.dialCode, nationalDigits) : "",
176
+ country,
177
+ countries: availableCountries,
178
+ onChangeText,
179
+ setCountry: handleSetCountry,
180
+ setValue,
181
+ keyboardType: "phone-pad",
182
+ };
183
+ }
@@ -1,8 +1,16 @@
1
- import type { SafeAreaInsets } from "@/safe-area";
2
1
  import { useMemo } from "react";
3
- import { useWindowDimensions, type DisplayMetrics, type LayoutRectangle, type ViewStyle } from "react-native";
2
+ import {
3
+ useWindowDimensions,
4
+ type DisplayMetrics,
5
+ type LayoutRectangle,
6
+ type ViewStyle,
7
+ } from "react-native";
8
+ import type { SafeAreaInsets } from "../safe-area";
4
9
 
5
- type UseRelativePositionArgs = Omit<GetContentStyleArgs, "triggerPosition" | "contentLayout" | "dimensions"> & {
10
+ type UseRelativePositionArgs = Omit<
11
+ GetContentStyleArgs,
12
+ "triggerPosition" | "contentLayout" | "dimensions"
13
+ > & {
6
14
  triggerPosition: LayoutPosition | null;
7
15
  contentLayout: LayoutRectangle | null;
8
16
  };
@@ -40,7 +48,17 @@ export function useRelativePosition({
40
48
  });
41
49
 
42
50
  return style;
43
- }, [align, preferredSide, alignOffset, insets, triggerPosition, contentLayout, dimensions.width, dimensions.height, sideOffset]);
51
+ }, [
52
+ align,
53
+ preferredSide,
54
+ alignOffset,
55
+ insets,
56
+ triggerPosition,
57
+ contentLayout,
58
+ dimensions.width,
59
+ dimensions.height,
60
+ sideOffset,
61
+ ]);
44
62
  }
45
63
 
46
64
  export interface LayoutPosition {
@@ -62,8 +80,18 @@ interface GetSidePositionArgs extends GetPositionArgs {
62
80
  sideOffset: number;
63
81
  }
64
82
 
65
- export const DEFAULT_LAYOUT: LayoutRectangle = { x: 0, y: 0, width: 0, height: 0 };
66
- export const DEFAULT_POSITION: LayoutPosition = { height: 0, width: 0, pageX: 0, pageY: 0 };
83
+ export const DEFAULT_LAYOUT: LayoutRectangle = {
84
+ x: 0,
85
+ y: 0,
86
+ width: 0,
87
+ height: 0,
88
+ };
89
+ export const DEFAULT_POSITION: LayoutPosition = {
90
+ height: 0,
91
+ width: 0,
92
+ pageX: 0,
93
+ pageY: 0,
94
+ };
67
95
 
68
96
  interface GetSideArgs {
69
97
  preferredSide: "top" | "bottom";
@@ -75,7 +103,15 @@ interface GetSideArgs {
75
103
  dimensions: DisplayMetrics;
76
104
  }
77
105
 
78
- function getSide({ preferredSide, insetTop, insetBottom, positionTop, positionBottom, contentLayout, dimensions }: GetSideArgs) {
106
+ function getSide({
107
+ preferredSide,
108
+ insetTop,
109
+ insetBottom,
110
+ positionTop,
111
+ positionBottom,
112
+ contentLayout,
113
+ dimensions,
114
+ }: GetSideArgs) {
79
115
  if (preferredSide === "bottom") {
80
116
  const spaceBelow = dimensions.height - insetBottom - positionBottom;
81
117
  if (spaceBelow >= contentLayout.height) {
@@ -98,11 +134,20 @@ function getSide({ preferredSide, insetTop, insetBottom, positionTop, positionBo
98
134
  return "top";
99
135
  }
100
136
 
101
- function getSidePosition({ preferredSide, triggerPosition, contentLayout, sideOffset, insets, dimensions }: GetSidePositionArgs) {
137
+ function getSidePosition({
138
+ preferredSide,
139
+ triggerPosition,
140
+ contentLayout,
141
+ sideOffset,
142
+ insets,
143
+ dimensions,
144
+ }: GetSidePositionArgs) {
102
145
  const insetTop = insets?.top ?? 0;
103
146
  const insetBottom = insets?.bottom ?? 0;
104
- const positionTop = triggerPosition?.pageY - sideOffset - contentLayout.height;
105
- const positionBottom = triggerPosition.pageY + triggerPosition.height + sideOffset;
147
+ const positionTop =
148
+ triggerPosition?.pageY - sideOffset - contentLayout.height;
149
+ const positionBottom =
150
+ triggerPosition.pageY + triggerPosition.height + sideOffset;
106
151
 
107
152
  const side = getSide({
108
153
  preferredSide,
@@ -116,12 +161,18 @@ function getSidePosition({ preferredSide, triggerPosition, contentLayout, sideOf
116
161
 
117
162
  if (side === "top") {
118
163
  return {
119
- top: Math.min(Math.max(insetTop, positionTop), dimensions.height - insetBottom - contentLayout.height),
164
+ top: Math.min(
165
+ Math.max(insetTop, positionTop),
166
+ dimensions.height - insetBottom - contentLayout.height,
167
+ ),
120
168
  };
121
169
  }
122
170
 
123
171
  return {
124
- top: Math.min(dimensions.height - insetBottom - contentLayout.height, positionBottom),
172
+ top: Math.min(
173
+ dimensions.height - insetBottom - contentLayout.height,
174
+ positionBottom,
175
+ ),
125
176
  };
126
177
  }
127
178
 
@@ -130,16 +181,33 @@ interface GetAlignPositionArgs extends GetPositionArgs {
130
181
  alignOffset: number;
131
182
  }
132
183
 
133
- function getAlignPosition({ align, contentLayout, triggerPosition, alignOffset, insets, dimensions }: GetAlignPositionArgs) {
184
+ function getAlignPosition({
185
+ align,
186
+ contentLayout,
187
+ triggerPosition,
188
+ alignOffset,
189
+ insets,
190
+ dimensions,
191
+ }: GetAlignPositionArgs) {
134
192
  const insetLeft = insets?.left ?? 0;
135
193
  const insetRight = insets?.right ?? 0;
136
194
  const maxContentWidth = dimensions.width - insetLeft - insetRight;
137
195
 
138
196
  const contentWidth = Math.min(contentLayout.width, maxContentWidth);
139
197
 
140
- let left = getLeftPosition(align, triggerPosition.pageX, triggerPosition.width, contentWidth, alignOffset, insetLeft, insetRight, dimensions);
198
+ let left = getLeftPosition(
199
+ align,
200
+ triggerPosition.pageX,
201
+ triggerPosition.width,
202
+ contentWidth,
203
+ alignOffset,
204
+ insetLeft,
205
+ insetRight,
206
+ dimensions,
207
+ );
141
208
 
142
- const doesCollide = left < insetLeft || left + contentWidth > dimensions.width - insetRight;
209
+ const doesCollide =
210
+ left < insetLeft || left + contentWidth > dimensions.width - insetRight;
143
211
  if (doesCollide) {
144
212
  const spaceLeft = left - insetLeft;
145
213
  const spaceRight = dimensions.width - insetRight - (left + contentWidth);
@@ -149,7 +217,10 @@ function getAlignPosition({ align, contentLayout, triggerPosition, alignOffset,
149
217
  } else if (spaceRight >= contentWidth) {
150
218
  left = dimensions.width - insetRight - contentWidth;
151
219
  } else {
152
- const centeredPosition = Math.max(insetLeft, (dimensions.width - contentWidth - insetRight) / 2);
220
+ const centeredPosition = Math.max(
221
+ insetLeft,
222
+ (dimensions.width - contentWidth - insetRight) / 2,
223
+ );
153
224
  left = centeredPosition;
154
225
  }
155
226
  }
@@ -177,10 +248,15 @@ function getLeftPosition(
177
248
  if (align === "end") {
178
249
  left = triggerPageX + triggerWidth - contentWidth;
179
250
  }
180
- return Math.max(insetLeft, Math.min(left + alignOffset, dimensions.width - contentWidth - insetRight));
251
+ return Math.max(
252
+ insetLeft,
253
+ Math.min(left + alignOffset, dimensions.width - contentWidth - insetRight),
254
+ );
181
255
  }
182
256
 
183
- type GetContentStyleArgs = GetPositionArgs & GetSidePositionArgs & GetAlignPositionArgs;
257
+ type GetContentStyleArgs = GetPositionArgs &
258
+ GetSidePositionArgs &
259
+ GetAlignPositionArgs;
184
260
 
185
261
  function getContentStyle(args: GetContentStyleArgs): ViewStyle {
186
262
  return {
package/src/index.tsx CHANGED
@@ -1,9 +1,9 @@
1
- import { SafeAreaProvider, type SafeAreaInsets } from "@/safe-area";
2
- import { ThemeProvider, type ThemeProviderProps } from "@/themes";
3
1
  import { AsyncAlertDialogManager } from "./components/alert-dialog/async-alert-dialog";
4
2
  import { PortalHost } from "./components/portal";
5
3
  import { type PortalHostProps } from "./components/portal/portal.constants";
6
4
  import { ToastContainer } from "./components/toast/manager";
5
+ import { SafeAreaProvider, type SafeAreaInsets } from "./safe-area";
6
+ import { ThemeProvider, type ThemeProviderProps } from "./themes";
7
7
 
8
8
  export interface ProviderProps {
9
9
  children: React.ReactNode;
@@ -12,7 +12,12 @@ export interface ProviderProps {
12
12
  safeAreaInsets?: SafeAreaInsets;
13
13
  }
14
14
 
15
- export const UIProvider = ({ children, portalContainer, theme, safeAreaInsets }: ProviderProps) => {
15
+ export const UIProvider = ({
16
+ children,
17
+ portalContainer,
18
+ theme,
19
+ safeAreaInsets,
20
+ }: ProviderProps) => {
16
21
  return (
17
22
  <SafeAreaProvider insets={safeAreaInsets}>
18
23
  <ThemeProvider theme={theme}>
@@ -1,8 +1,22 @@
1
- import type { DeepPartial } from "@/types/util.types";
2
- import { createContext, type PropsWithChildren, useContext, useEffect, useState } from "react";
1
+ import {
2
+ createContext,
3
+ type PropsWithChildren,
4
+ useContext,
5
+ useEffect,
6
+ useState,
7
+ } from "react";
3
8
  import { useColorScheme } from "react-native";
9
+ import type { DeepPartial } from "../types/util.types";
4
10
  import { defaultThemeAssets } from "./default";
5
- import type { Colors, ColorScheme, FontFamily, FontSize, LetterSpacing, Radius, ThemeAssets } from "./types";
11
+ import type {
12
+ Colors,
13
+ ColorScheme,
14
+ FontFamily,
15
+ FontSize,
16
+ LetterSpacing,
17
+ Radius,
18
+ ThemeAssets,
19
+ } from "./types";
6
20
  import { mergeThemeAssets } from "./utils";
7
21
 
8
22
  interface ThemeContext {
@@ -25,9 +39,13 @@ export const ThemeProvider = (props: ThemeProviderProps) => {
25
39
  const { children, theme } = props;
26
40
 
27
41
  const systemColorScheme = useColorScheme();
28
- const [colorScheme, setColorScheme] = useState<ColorScheme>(systemColorScheme === "dark" ? "dark" : "light");
42
+ const [colorScheme, setColorScheme] = useState<ColorScheme>(
43
+ systemColorScheme === "dark" ? "dark" : "light",
44
+ );
29
45
 
30
- const themeAssets = theme ? mergeThemeAssets(defaultThemeAssets, theme) : defaultThemeAssets;
46
+ const themeAssets = theme
47
+ ? mergeThemeAssets(defaultThemeAssets, theme)
48
+ : defaultThemeAssets;
31
49
 
32
50
  const colors = themeAssets.colors[colorScheme];
33
51
 
@@ -1,7 +1,10 @@
1
- import type { DeepPartial } from "@/types/util.types";
1
+ import type { DeepPartial } from "../types/util.types";
2
2
  import type { ThemeAssets } from "./types";
3
3
 
4
- export function mergeThemeAssets(base: ThemeAssets, override: DeepPartial<ThemeAssets>): ThemeAssets {
4
+ export function mergeThemeAssets(
5
+ base: ThemeAssets,
6
+ override: DeepPartial<ThemeAssets>,
7
+ ): ThemeAssets {
5
8
  return {
6
9
  colors: {
7
10
  light: { ...base.colors.light, ...override.colors?.light },
@@ -1,7 +1,10 @@
1
- import type { TextInputRef } from "@/types/element.types";
2
1
  import { Platform } from "react-native";
2
+ import type { TextInputRef } from "../types/element.types";
3
3
 
4
- export function setInnerInputValue(element: HTMLInputElement | TextInputRef, value: string) {
4
+ export function setInnerInputValue(
5
+ element: HTMLInputElement | TextInputRef,
6
+ value: string,
7
+ ) {
5
8
  if (Platform.OS === "web") {
6
9
  (element as HTMLInputElement).value = value;
7
10
  } else {
@@ -1,5 +1,5 @@
1
- import type { LayoutPosition } from "@/hooks";
2
1
  import type { HostInstance, LayoutRectangle } from "react-native";
2
+ import type { LayoutPosition } from "../hooks";
3
3
 
4
4
  export const normalizeLayout = (layout: LayoutRectangle) => {
5
5
  const _layout = { ...layout };
@@ -21,7 +21,10 @@ const isValidNumber = (value: unknown): value is number => {
21
21
  return isValid;
22
22
  };
23
23
 
24
- export const measureLayoutPosition = (ref: HostInstance | null, callback: (layout: LayoutPosition) => void) => {
24
+ export const measureLayoutPosition = (
25
+ ref: HostInstance | null,
26
+ callback: (layout: LayoutPosition) => void,
27
+ ) => {
25
28
  ref?.measureInWindow((pageX, pageY, width, height) => {
26
29
  callback({
27
30
  height: isValidNumber(height) ? height : 0,
@@ -1,5 +1,11 @@
1
- import { useTheme } from "@/themes";
2
- import type { Colors, FontFamily, FontSize, LetterSpacing, Radius } from "@/themes/types";
1
+ import { useTheme } from "../themes";
2
+ import type {
3
+ Colors,
4
+ FontFamily,
5
+ FontSize,
6
+ LetterSpacing,
7
+ Radius,
8
+ } from "../themes/types";
3
9
 
4
10
  interface CallbackProps {
5
11
  colors: Colors;
@@ -9,7 +15,9 @@ interface CallbackProps {
9
15
  fontSize: FontSize;
10
16
  }
11
17
 
12
- export const useThemedStyles = <T>(callback: (props: CallbackProps) => T): T => {
18
+ export const useThemedStyles = <T>(
19
+ callback: (props: CallbackProps) => T,
20
+ ): T => {
13
21
  const theme = useTheme();
14
22
  return callback({
15
23
  colors: theme.colors,
package/tsconfig.json CHANGED
@@ -1,10 +1,17 @@
1
1
  {
2
2
  "compilerOptions": {
3
- "customConditions": ["dev-source", "react-native", "react-native-strict-api"],
3
+ "customConditions": [
4
+ "dev-source",
5
+ "react-native",
6
+ "react-native-strict-api"
7
+ ],
4
8
  "allowJs": true,
5
9
  "esModuleInterop": true,
6
10
  "jsx": "react-native",
7
- "lib": ["DOM", "ESNext"],
11
+ "lib": [
12
+ "DOM",
13
+ "ESNext"
14
+ ],
8
15
  "module": "preserve",
9
16
  "moduleDetection": "force",
10
17
  "moduleResolution": "bundler",
@@ -24,9 +31,9 @@
24
31
  "noUncheckedIndexedAccess": true,
25
32
  "noUnusedLocals": true,
26
33
  "noUnusedParameters": true,
27
- "paths": {
28
- "@/*": ["./src/*"]
29
- }
30
34
  },
31
- "exclude": ["node_modules", "dist"]
32
- }
35
+ "exclude": [
36
+ "node_modules",
37
+ "dist"
38
+ ]
39
+ }
package/scripts/build.sh DELETED
@@ -1,2 +0,0 @@
1
- bob build
2
- tsc-alias -p tsconfig.json --outDir dist/typescript