@arkyn/components 3.0.1-beta.17 → 3.0.1-beta.170

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 (417) hide show
  1. package/README.md +41 -0
  2. package/package.json +458 -20
  3. package/styles.d.ts +3 -0
  4. package/dist/bundle.js +0 -4292
  5. package/dist/bundle.umd.cjs +0 -30
  6. package/dist/documentation/src/app.d.ts +0 -3
  7. package/dist/documentation/src/app.d.ts.map +0 -1
  8. package/dist/documentation/src/app.js +0 -55
  9. package/dist/documentation/src/components/examples.alert.d.ts +0 -3
  10. package/dist/documentation/src/components/examples.alert.d.ts.map +0 -1
  11. package/dist/documentation/src/components/examples.alert.js +0 -7
  12. package/dist/documentation/src/components/examples.audioPlayer.d.ts +0 -3
  13. package/dist/documentation/src/components/examples.audioPlayer.d.ts.map +0 -1
  14. package/dist/documentation/src/components/examples.audioPlayer.js +0 -8
  15. package/dist/documentation/src/components/examples.badge.d.ts +0 -3
  16. package/dist/documentation/src/components/examples.badge.d.ts.map +0 -1
  17. package/dist/documentation/src/components/examples.badge.js +0 -9
  18. package/dist/documentation/src/components/examples.button.d.ts +0 -3
  19. package/dist/documentation/src/components/examples.button.d.ts.map +0 -1
  20. package/dist/documentation/src/components/examples.button.js +0 -9
  21. package/dist/documentation/src/components/examples.cardTab.d.ts +0 -3
  22. package/dist/documentation/src/components/examples.cardTab.d.ts.map +0 -1
  23. package/dist/documentation/src/components/examples.cardTab.js +0 -7
  24. package/dist/documentation/src/components/examples.checkbox.d.ts +0 -3
  25. package/dist/documentation/src/components/examples.checkbox.d.ts.map +0 -1
  26. package/dist/documentation/src/components/examples.checkbox.js +0 -13
  27. package/dist/documentation/src/components/examples.currencyInput.d.ts +0 -3
  28. package/dist/documentation/src/components/examples.currencyInput.d.ts.map +0 -1
  29. package/dist/documentation/src/components/examples.currencyInput.js +0 -9
  30. package/dist/documentation/src/components/examples.divider.d.ts +0 -3
  31. package/dist/documentation/src/components/examples.divider.d.ts.map +0 -1
  32. package/dist/documentation/src/components/examples.divider.js +0 -7
  33. package/dist/documentation/src/components/examples.drawer.d.ts +0 -3
  34. package/dist/documentation/src/components/examples.drawer.d.ts.map +0 -1
  35. package/dist/documentation/src/components/examples.drawer.js +0 -11
  36. package/dist/documentation/src/components/examples.iconButton.d.ts +0 -3
  37. package/dist/documentation/src/components/examples.iconButton.d.ts.map +0 -1
  38. package/dist/documentation/src/components/examples.iconButton.js +0 -9
  39. package/dist/documentation/src/components/examples.input.d.ts +0 -3
  40. package/dist/documentation/src/components/examples.input.d.ts.map +0 -1
  41. package/dist/documentation/src/components/examples.input.js +0 -9
  42. package/dist/documentation/src/components/examples.maskedInput.d.ts +0 -3
  43. package/dist/documentation/src/components/examples.maskedInput.d.ts.map +0 -1
  44. package/dist/documentation/src/components/examples.maskedInput.js +0 -9
  45. package/dist/documentation/src/components/examples.modal.d.ts +0 -3
  46. package/dist/documentation/src/components/examples.modal.d.ts.map +0 -1
  47. package/dist/documentation/src/components/examples.modal.js +0 -10
  48. package/dist/documentation/src/components/examples.multiSelect.d.ts +0 -3
  49. package/dist/documentation/src/components/examples.multiSelect.d.ts.map +0 -1
  50. package/dist/documentation/src/components/examples.multiSelect.js +0 -92
  51. package/dist/documentation/src/components/examples.phoneInput.d.ts +0 -3
  52. package/dist/documentation/src/components/examples.phoneInput.d.ts.map +0 -1
  53. package/dist/documentation/src/components/examples.phoneInput.js +0 -26
  54. package/dist/documentation/src/components/examples.radio.d.ts +0 -3
  55. package/dist/documentation/src/components/examples.radio.d.ts.map +0 -1
  56. package/dist/documentation/src/components/examples.radio.js +0 -11
  57. package/dist/documentation/src/components/examples.slider.d.ts +0 -3
  58. package/dist/documentation/src/components/examples.slider.d.ts.map +0 -1
  59. package/dist/documentation/src/components/examples.slider.js +0 -10
  60. package/dist/documentation/src/components/examples.switch.d.ts +0 -3
  61. package/dist/documentation/src/components/examples.switch.d.ts.map +0 -1
  62. package/dist/documentation/src/components/examples.switch.js +0 -20
  63. package/dist/documentation/src/components/examples.tab.d.ts +0 -3
  64. package/dist/documentation/src/components/examples.tab.d.ts.map +0 -1
  65. package/dist/documentation/src/components/examples.tab.js +0 -7
  66. package/dist/documentation/src/components/examples.texarea.d.ts +0 -3
  67. package/dist/documentation/src/components/examples.texarea.d.ts.map +0 -1
  68. package/dist/documentation/src/components/examples.texarea.js +0 -34
  69. package/dist/documentation/src/components/examples.tooltip.d.ts +0 -3
  70. package/dist/documentation/src/components/examples.tooltip.d.ts.map +0 -1
  71. package/dist/documentation/src/components/examples.tooltip.js +0 -8
  72. package/dist/documentation/src/main.d.ts +0 -3
  73. package/dist/documentation/src/main.d.ts.map +0 -1
  74. package/dist/documentation/src/main.js +0 -7
  75. package/dist/documentation/src/ui/box.d.ts +0 -8
  76. package/dist/documentation/src/ui/box.d.ts.map +0 -1
  77. package/dist/documentation/src/ui/box.js +0 -5
  78. package/dist/documentation/src/ui/row.d.ts +0 -7
  79. package/dist/documentation/src/ui/row.d.ts.map +0 -1
  80. package/dist/documentation/src/ui/row.js +0 -5
  81. package/dist/documentation/vite.config.d.ts +0 -3
  82. package/dist/documentation/vite.config.d.ts.map +0 -1
  83. package/dist/documentation/vite.config.js +0 -12
  84. package/dist/src/components/alert/alertContainer/index.d.ts +0 -44
  85. package/dist/src/components/alert/alertContainer/index.d.ts.map +0 -1
  86. package/dist/src/components/alert/alertContainer/index.js +0 -71
  87. package/dist/src/components/alert/alertContent/index.d.ts +0 -45
  88. package/dist/src/components/alert/alertContent/index.d.ts.map +0 -1
  89. package/dist/src/components/alert/alertContent/index.js +0 -47
  90. package/dist/src/components/alert/alertDescription/index.d.ts +0 -49
  91. package/dist/src/components/alert/alertDescription/index.d.ts.map +0 -1
  92. package/dist/src/components/alert/alertDescription/index.js +0 -51
  93. package/dist/src/components/alert/alertIcon/index.d.ts +0 -52
  94. package/dist/src/components/alert/alertIcon/index.d.ts.map +0 -1
  95. package/dist/src/components/alert/alertIcon/index.js +0 -66
  96. package/dist/src/components/alert/alertTitle/index.d.ts +0 -46
  97. package/dist/src/components/alert/alertTitle/index.d.ts.map +0 -1
  98. package/dist/src/components/alert/alertTitle/index.js +0 -48
  99. package/dist/src/components/audioPlayer/index.d.ts +0 -60
  100. package/dist/src/components/audioPlayer/index.d.ts.map +0 -1
  101. package/dist/src/components/audioPlayer/index.js +0 -130
  102. package/dist/src/components/badge/index.d.ts +0 -51
  103. package/dist/src/components/badge/index.d.ts.map +0 -1
  104. package/dist/src/components/badge/index.js +0 -49
  105. package/dist/src/components/button/index.d.ts +0 -60
  106. package/dist/src/components/button/index.d.ts.map +0 -1
  107. package/dist/src/components/button/index.js +0 -61
  108. package/dist/src/components/cardTab/cardTabButton/index.d.ts +0 -72
  109. package/dist/src/components/cardTab/cardTabButton/index.d.ts.map +0 -1
  110. package/dist/src/components/cardTab/cardTabButton/index.js +0 -80
  111. package/dist/src/components/cardTab/cardTabContainer/index.d.ts +0 -83
  112. package/dist/src/components/cardTab/cardTabContainer/index.d.ts.map +0 -1
  113. package/dist/src/components/cardTab/cardTabContainer/index.js +0 -88
  114. package/dist/src/components/cardTab/cardTabContext.d.ts +0 -16
  115. package/dist/src/components/cardTab/cardTabContext.d.ts.map +0 -1
  116. package/dist/src/components/cardTab/cardTabContext.js +0 -10
  117. package/dist/src/components/checkbox/index.d.ts +0 -73
  118. package/dist/src/components/checkbox/index.d.ts.map +0 -1
  119. package/dist/src/components/checkbox/index.js +0 -86
  120. package/dist/src/components/currencyInput/index.d.ts +0 -98
  121. package/dist/src/components/currencyInput/index.d.ts.map +0 -1
  122. package/dist/src/components/currencyInput/index.js +0 -140
  123. package/dist/src/components/divider/index.d.ts +0 -45
  124. package/dist/src/components/divider/index.d.ts.map +0 -1
  125. package/dist/src/components/divider/index.js +0 -45
  126. package/dist/src/components/drawer/drawerContainer/index.d.ts +0 -71
  127. package/dist/src/components/drawer/drawerContainer/index.d.ts.map +0 -1
  128. package/dist/src/components/drawer/drawerContainer/index.js +0 -75
  129. package/dist/src/components/drawer/drawerContext.d.ts +0 -12
  130. package/dist/src/components/drawer/drawerContext.d.ts.map +0 -1
  131. package/dist/src/components/drawer/drawerContext.js +0 -10
  132. package/dist/src/components/drawer/drawerHeader/index.d.ts +0 -55
  133. package/dist/src/components/drawer/drawerHeader/index.d.ts.map +0 -1
  134. package/dist/src/components/drawer/drawerHeader/index.js +0 -58
  135. package/dist/src/components/fieldError/index.d.ts +0 -29
  136. package/dist/src/components/fieldError/index.d.ts.map +0 -1
  137. package/dist/src/components/fieldError/index.js +0 -33
  138. package/dist/src/components/fieldLabel/index.d.ts +0 -38
  139. package/dist/src/components/fieldLabel/index.d.ts.map +0 -1
  140. package/dist/src/components/fieldLabel/index.js +0 -39
  141. package/dist/src/components/fieldWrapper/index.d.ts +0 -41
  142. package/dist/src/components/fieldWrapper/index.d.ts.map +0 -1
  143. package/dist/src/components/fieldWrapper/index.js +0 -41
  144. package/dist/src/components/iconButton/index.d.ts +0 -44
  145. package/dist/src/components/iconButton/index.d.ts.map +0 -1
  146. package/dist/src/components/iconButton/index.js +0 -41
  147. package/dist/src/components/input/index.d.ts +0 -81
  148. package/dist/src/components/input/index.d.ts.map +0 -1
  149. package/dist/src/components/input/index.js +0 -112
  150. package/dist/src/components/maskedInput/index.d.ts +0 -103
  151. package/dist/src/components/maskedInput/index.d.ts.map +0 -1
  152. package/dist/src/components/maskedInput/index.js +0 -130
  153. package/dist/src/components/modal/modalContainer/index.d.ts +0 -78
  154. package/dist/src/components/modal/modalContainer/index.d.ts.map +0 -1
  155. package/dist/src/components/modal/modalContainer/index.js +0 -82
  156. package/dist/src/components/modal/modalContext.d.ts +0 -12
  157. package/dist/src/components/modal/modalContext.d.ts.map +0 -1
  158. package/dist/src/components/modal/modalContext.js +0 -10
  159. package/dist/src/components/modal/modalFooter/index.d.ts +0 -72
  160. package/dist/src/components/modal/modalFooter/index.d.ts.map +0 -1
  161. package/dist/src/components/modal/modalFooter/index.js +0 -72
  162. package/dist/src/components/modal/modalHeader/index.d.ts +0 -66
  163. package/dist/src/components/modal/modalHeader/index.d.ts.map +0 -1
  164. package/dist/src/components/modal/modalHeader/index.js +0 -69
  165. package/dist/src/components/multiSelect/index.d.ts +0 -125
  166. package/dist/src/components/multiSelect/index.d.ts.map +0 -1
  167. package/dist/src/components/multiSelect/index.js +0 -169
  168. package/dist/src/components/multiSelect/multiSelectChevron/index.d.ts +0 -11
  169. package/dist/src/components/multiSelect/multiSelectChevron/index.d.ts.map +0 -1
  170. package/dist/src/components/multiSelect/multiSelectChevron/index.js +0 -13
  171. package/dist/src/components/multiSelect/multiSelectContainer/index.d.ts +0 -19
  172. package/dist/src/components/multiSelect/multiSelectContainer/index.d.ts.map +0 -1
  173. package/dist/src/components/multiSelect/multiSelectContainer/index.js +0 -11
  174. package/dist/src/components/multiSelect/multiSelectContent/index.d.ts +0 -9
  175. package/dist/src/components/multiSelect/multiSelectContent/index.d.ts.map +0 -1
  176. package/dist/src/components/multiSelect/multiSelectContent/index.js +0 -8
  177. package/dist/src/components/multiSelect/multiSelectMark/index.d.ts +0 -10
  178. package/dist/src/components/multiSelect/multiSelectMark/index.d.ts.map +0 -1
  179. package/dist/src/components/multiSelect/multiSelectMark/index.js +0 -11
  180. package/dist/src/components/multiSelect/multiSelectOption/index.d.ts +0 -11
  181. package/dist/src/components/multiSelect/multiSelectOption/index.d.ts.map +0 -1
  182. package/dist/src/components/multiSelect/multiSelectOption/index.js +0 -10
  183. package/dist/src/components/multiSelect/multiSelectOptionsContainer/index.d.ts +0 -12
  184. package/dist/src/components/multiSelect/multiSelectOptionsContainer/index.d.ts.map +0 -1
  185. package/dist/src/components/multiSelect/multiSelectOptionsContainer/index.js +0 -44
  186. package/dist/src/components/multiSelect/multiSelectOverlay/index.d.ts +0 -8
  187. package/dist/src/components/multiSelect/multiSelectOverlay/index.d.ts.map +0 -1
  188. package/dist/src/components/multiSelect/multiSelectOverlay/index.js +0 -9
  189. package/dist/src/components/multiSelect/multiSelectSpinner/index.d.ts +0 -8
  190. package/dist/src/components/multiSelect/multiSelectSpinner/index.d.ts.map +0 -1
  191. package/dist/src/components/multiSelect/multiSelectSpinner/index.js +0 -10
  192. package/dist/src/components/phoneInput/index.d.ts +0 -127
  193. package/dist/src/components/phoneInput/index.d.ts.map +0 -1
  194. package/dist/src/components/phoneInput/index.js +0 -202
  195. package/dist/src/components/phoneInput/phoneInputContainer/index.d.ts +0 -18
  196. package/dist/src/components/phoneInput/phoneInputContainer/index.d.ts.map +0 -1
  197. package/dist/src/components/phoneInput/phoneInputContainer/index.js +0 -11
  198. package/dist/src/components/phoneInput/phoneInputCountriesOverlay/index.d.ts +0 -8
  199. package/dist/src/components/phoneInput/phoneInputCountriesOverlay/index.d.ts.map +0 -1
  200. package/dist/src/components/phoneInput/phoneInputCountriesOverlay/index.js +0 -9
  201. package/dist/src/components/phoneInput/phoneInputCountryOption/index.d.ts +0 -18
  202. package/dist/src/components/phoneInput/phoneInputCountryOption/index.d.ts.map +0 -1
  203. package/dist/src/components/phoneInput/phoneInputCountryOption/index.js +0 -10
  204. package/dist/src/components/phoneInput/phoneInputCountryOptionsContainer/index.d.ts +0 -12
  205. package/dist/src/components/phoneInput/phoneInputCountryOptionsContainer/index.d.ts.map +0 -1
  206. package/dist/src/components/phoneInput/phoneInputCountryOptionsContainer/index.js +0 -40
  207. package/dist/src/components/phoneInput/phoneInputCountrySelector/index.d.ts +0 -17
  208. package/dist/src/components/phoneInput/phoneInputCountrySelector/index.d.ts.map +0 -1
  209. package/dist/src/components/phoneInput/phoneInputCountrySelector/index.js +0 -9
  210. package/dist/src/components/phoneInput/phoneInputMask/index.d.ts +0 -21
  211. package/dist/src/components/phoneInput/phoneInputMask/index.d.ts.map +0 -1
  212. package/dist/src/components/phoneInput/phoneInputMask/index.js +0 -34
  213. package/dist/src/components/radio/radioBox/index.d.ts +0 -85
  214. package/dist/src/components/radio/radioBox/index.d.ts.map +0 -1
  215. package/dist/src/components/radio/radioBox/index.js +0 -90
  216. package/dist/src/components/radio/radioContext.d.ts +0 -18
  217. package/dist/src/components/radio/radioContext.d.ts.map +0 -1
  218. package/dist/src/components/radio/radioContext.js +0 -11
  219. package/dist/src/components/radio/radioGroup/index.d.ts +0 -92
  220. package/dist/src/components/radio/radioGroup/index.d.ts.map +0 -1
  221. package/dist/src/components/radio/radioGroup/index.js +0 -100
  222. package/dist/src/components/slider/index.d.ts +0 -57
  223. package/dist/src/components/slider/index.d.ts.map +0 -1
  224. package/dist/src/components/slider/index.js +0 -97
  225. package/dist/src/components/switch/index.d.ts +0 -94
  226. package/dist/src/components/switch/index.d.ts.map +0 -1
  227. package/dist/src/components/switch/index.js +0 -99
  228. package/dist/src/components/tab/tabButton/index.d.ts +0 -72
  229. package/dist/src/components/tab/tabButton/index.d.ts.map +0 -1
  230. package/dist/src/components/tab/tabButton/index.js +0 -80
  231. package/dist/src/components/tab/tabContainer/index.d.ts +0 -83
  232. package/dist/src/components/tab/tabContainer/index.d.ts.map +0 -1
  233. package/dist/src/components/tab/tabContainer/index.js +0 -88
  234. package/dist/src/components/tab/tabContext.d.ts +0 -16
  235. package/dist/src/components/tab/tabContext.d.ts.map +0 -1
  236. package/dist/src/components/tab/tabContext.js +0 -10
  237. package/dist/src/components/textarea/index.d.ts +0 -103
  238. package/dist/src/components/textarea/index.d.ts.map +0 -1
  239. package/dist/src/components/textarea/index.js +0 -127
  240. package/dist/src/components/tooltip/index.d.ts +0 -80
  241. package/dist/src/components/tooltip/index.d.ts.map +0 -1
  242. package/dist/src/components/tooltip/index.js +0 -135
  243. package/dist/src/hooks/useForm.d.ts +0 -52
  244. package/dist/src/hooks/useForm.d.ts.map +0 -1
  245. package/dist/src/hooks/useForm.js +0 -52
  246. package/dist/src/hooks/useScopedParams.d.ts +0 -89
  247. package/dist/src/hooks/useScopedParams.d.ts.map +0 -1
  248. package/dist/src/hooks/useScopedParams.js +0 -107
  249. package/dist/src/hooks/useScrollLock.d.ts +0 -39
  250. package/dist/src/hooks/useScrollLock.d.ts.map +0 -1
  251. package/dist/src/hooks/useScrollLock.js +0 -49
  252. package/dist/src/hooks/useSlider.d.ts +0 -31
  253. package/dist/src/hooks/useSlider.d.ts.map +0 -1
  254. package/dist/src/hooks/useSlider.js +0 -49
  255. package/dist/src/index.d.ts +0 -40
  256. package/dist/src/index.d.ts.map +0 -1
  257. package/dist/src/index.js +0 -42
  258. package/dist/src/providers/formProvider.d.ts +0 -76
  259. package/dist/src/providers/formProvider.d.ts.map +0 -1
  260. package/dist/src/providers/formProvider.js +0 -69
  261. package/dist/src/services/iconRenderer.d.ts +0 -10
  262. package/dist/src/services/iconRenderer.d.ts.map +0 -1
  263. package/dist/src/services/iconRenderer.js +0 -13
  264. package/dist/src/services/maskCurrencyValues.d.ts +0 -4
  265. package/dist/src/services/maskCurrencyValues.d.ts.map +0 -1
  266. package/dist/src/services/maskCurrencyValues.js +0 -23
  267. package/dist/src/utils/phoneInputUtilities.d.ts +0 -1722
  268. package/dist/src/utils/phoneInputUtilities.d.ts.map +0 -1
  269. package/dist/src/utils/phoneInputUtilities.js +0 -99
  270. package/dist/style.css +0 -1
  271. package/dist/vite.config.d.ts +0 -3
  272. package/dist/vite.config.d.ts.map +0 -1
  273. package/dist/vite.config.js +0 -24
  274. package/dist/vitest.config.d.ts +0 -3
  275. package/dist/vitest.config.d.ts.map +0 -1
  276. package/dist/vitest.config.js +0 -4
  277. package/documentation/css/reset.css +0 -38
  278. package/documentation/css/variables.css +0 -41
  279. package/documentation/index.html +0 -13
  280. package/documentation/src/app.tsx +0 -93
  281. package/documentation/src/components/examples.alert.tsx +0 -49
  282. package/documentation/src/components/examples.audioPlayer.tsx +0 -16
  283. package/documentation/src/components/examples.badge.tsx +0 -38
  284. package/documentation/src/components/examples.button.tsx +0 -66
  285. package/documentation/src/components/examples.cardTab.tsx +0 -36
  286. package/documentation/src/components/examples.checkbox.tsx +0 -94
  287. package/documentation/src/components/examples.currencyInput.tsx +0 -263
  288. package/documentation/src/components/examples.divider.tsx +0 -12
  289. package/documentation/src/components/examples.drawer.tsx +0 -43
  290. package/documentation/src/components/examples.iconButton.tsx +0 -78
  291. package/documentation/src/components/examples.input.tsx +0 -256
  292. package/documentation/src/components/examples.maskedInput.tsx +0 -274
  293. package/documentation/src/components/examples.modal.tsx +0 -31
  294. package/documentation/src/components/examples.multiSelect.tsx +0 -320
  295. package/documentation/src/components/examples.phoneInput.tsx +0 -262
  296. package/documentation/src/components/examples.radio.tsx +0 -149
  297. package/documentation/src/components/examples.slider.tsx +0 -28
  298. package/documentation/src/components/examples.switch.tsx +0 -180
  299. package/documentation/src/components/examples.tab.tsx +0 -36
  300. package/documentation/src/components/examples.texarea.tsx +0 -188
  301. package/documentation/src/components/examples.tooltip.tsx +0 -45
  302. package/documentation/src/main.tsx +0 -12
  303. package/documentation/src/ui/box.tsx +0 -17
  304. package/documentation/src/ui/row.tsx +0 -11
  305. package/documentation/vite.config.ts +0 -13
  306. package/src/components/alert/alertContainer/index.tsx +0 -87
  307. package/src/components/alert/alertContainer/styles.css +0 -33
  308. package/src/components/alert/alertContent/index.tsx +0 -53
  309. package/src/components/alert/alertContent/styles.css +0 -5
  310. package/src/components/alert/alertDescription/index.tsx +0 -57
  311. package/src/components/alert/alertDescription/styles.css +0 -7
  312. package/src/components/alert/alertIcon/index.tsx +0 -79
  313. package/src/components/alert/alertIcon/styles.css +0 -23
  314. package/src/components/alert/alertTitle/index.tsx +0 -54
  315. package/src/components/alert/alertTitle/styles.css +0 -7
  316. package/src/components/audioPlayer/index.tsx +0 -187
  317. package/src/components/audioPlayer/styles.css +0 -50
  318. package/src/components/badge/index.tsx +0 -80
  319. package/src/components/badge/styles.css +0 -145
  320. package/src/components/button/index.tsx +0 -104
  321. package/src/components/button/styles.css +0 -208
  322. package/src/components/cardTab/cardTabButton/index.tsx +0 -114
  323. package/src/components/cardTab/cardTabButton/styles.css +0 -30
  324. package/src/components/cardTab/cardTabContainer/index.tsx +0 -121
  325. package/src/components/cardTab/cardTabContainer/styles.css +0 -9
  326. package/src/components/cardTab/cardTabContext.tsx +0 -30
  327. package/src/components/checkbox/index.tsx +0 -158
  328. package/src/components/checkbox/styles.css +0 -78
  329. package/src/components/currencyInput/index.tsx +0 -312
  330. package/src/components/currencyInput/style.css +0 -226
  331. package/src/components/divider/index.tsx +0 -58
  332. package/src/components/divider/styles.css +0 -17
  333. package/src/components/drawer/drawerContainer/index.tsx +0 -123
  334. package/src/components/drawer/drawerContainer/styles.css +0 -46
  335. package/src/components/drawer/drawerContext.tsx +0 -26
  336. package/src/components/drawer/drawerHeader/index.tsx +0 -88
  337. package/src/components/drawer/drawerHeader/styles.css +0 -38
  338. package/src/components/fieldError/index.tsx +0 -43
  339. package/src/components/fieldError/styles.css +0 -6
  340. package/src/components/fieldLabel/index.tsx +0 -52
  341. package/src/components/fieldLabel/styles.css +0 -15
  342. package/src/components/fieldWrapper/index.tsx +0 -54
  343. package/src/components/fieldWrapper/styles.css +0 -7
  344. package/src/components/iconButton/index.tsx +0 -83
  345. package/src/components/iconButton/styles.css +0 -166
  346. package/src/components/input/index.tsx +0 -233
  347. package/src/components/input/style.css +0 -226
  348. package/src/components/maskedInput/index.tsx +0 -260
  349. package/src/components/maskedInput/style.css +0 -226
  350. package/src/components/modal/modalContainer/index.tsx +0 -127
  351. package/src/components/modal/modalContainer/styles.css +0 -37
  352. package/src/components/modal/modalContext.tsx +0 -26
  353. package/src/components/modal/modalFooter/index.tsx +0 -80
  354. package/src/components/modal/modalFooter/styles.css +0 -27
  355. package/src/components/modal/modalHeader/index.tsx +0 -99
  356. package/src/components/modal/modalHeader/styles.css +0 -38
  357. package/src/components/multiSelect/index.tsx +0 -319
  358. package/src/components/multiSelect/multiSelectChevron/index.tsx +0 -26
  359. package/src/components/multiSelect/multiSelectChevron/styles.css +0 -7
  360. package/src/components/multiSelect/multiSelectContainer/index.tsx +0 -51
  361. package/src/components/multiSelect/multiSelectContainer/styles.css +0 -134
  362. package/src/components/multiSelect/multiSelectContent/index.tsx +0 -15
  363. package/src/components/multiSelect/multiSelectContent/styles.css +0 -24
  364. package/src/components/multiSelect/multiSelectMark/index.tsx +0 -32
  365. package/src/components/multiSelect/multiSelectMark/styles.css +0 -44
  366. package/src/components/multiSelect/multiSelectOption/index.tsx +0 -25
  367. package/src/components/multiSelect/multiSelectOption/styles.css +0 -37
  368. package/src/components/multiSelect/multiSelectOptionsContainer/index.tsx +0 -81
  369. package/src/components/multiSelect/multiSelectOptionsContainer/styles.css +0 -45
  370. package/src/components/multiSelect/multiSelectOverlay/index.tsx +0 -14
  371. package/src/components/multiSelect/multiSelectOverlay/styles.css +0 -8
  372. package/src/components/multiSelect/multiSelectSpinner/index.tsx +0 -22
  373. package/src/components/multiSelect/multiSelectSpinner/styles.css +0 -12
  374. package/src/components/phoneInput/index.tsx +0 -332
  375. package/src/components/phoneInput/phoneInputContainer/index.tsx +0 -46
  376. package/src/components/phoneInput/phoneInputContainer/styles.css +0 -59
  377. package/src/components/phoneInput/phoneInputCountriesOverlay/index.tsx +0 -16
  378. package/src/components/phoneInput/phoneInputCountriesOverlay/styles.css +0 -8
  379. package/src/components/phoneInput/phoneInputCountryOption/index.tsx +0 -35
  380. package/src/components/phoneInput/phoneInputCountryOption/styles.css +0 -50
  381. package/src/components/phoneInput/phoneInputCountryOptionsContainer/index.tsx +0 -77
  382. package/src/components/phoneInput/phoneInputCountryOptionsContainer/styles.css +0 -59
  383. package/src/components/phoneInput/phoneInputCountrySelector/index.tsx +0 -37
  384. package/src/components/phoneInput/phoneInputCountrySelector/styles.css +0 -26
  385. package/src/components/phoneInput/phoneInputMask/index.tsx +0 -105
  386. package/src/components/phoneInput/phoneInputMask/style.css +0 -36
  387. package/src/components/radio/radioBox/index.tsx +0 -124
  388. package/src/components/radio/radioBox/styles.css +0 -95
  389. package/src/components/radio/radioContext.tsx +0 -34
  390. package/src/components/radio/radioGroup/index.tsx +0 -150
  391. package/src/components/radio/radioGroup/styles.css +0 -5
  392. package/src/components/slider/index.tsx +0 -132
  393. package/src/components/slider/styles.css +0 -45
  394. package/src/components/switch/index.tsx +0 -156
  395. package/src/components/switch/styles.css +0 -90
  396. package/src/components/tab/tabButton/index.tsx +0 -114
  397. package/src/components/tab/tabButton/styles.css +0 -41
  398. package/src/components/tab/tabContainer/index.tsx +0 -121
  399. package/src/components/tab/tabContainer/styles.css +0 -11
  400. package/src/components/tab/tabContext.tsx +0 -28
  401. package/src/components/textarea/index.tsx +0 -193
  402. package/src/components/textarea/styles.css +0 -93
  403. package/src/components/tooltip/index.tsx +0 -172
  404. package/src/components/tooltip/styles.css +0 -112
  405. package/src/hooks/useForm.ts +0 -55
  406. package/src/hooks/useScopedParams.ts +0 -111
  407. package/src/hooks/useScrollLock.ts +0 -52
  408. package/src/hooks/useSlider.ts +0 -52
  409. package/src/index.ts +0 -44
  410. package/src/providers/formProvider.tsx +0 -88
  411. package/src/services/iconRenderer.tsx +0 -23
  412. package/src/services/maskCurrencyValues.ts +0 -54
  413. package/src/utils/phoneInputUtilities.ts +0 -138
  414. package/tsconfig.json +0 -35
  415. package/variables.css +0 -41
  416. package/vite.config.ts +0 -24
  417. package/vitest.config.ts +0 -5
@@ -1,112 +0,0 @@
1
- .arkynTooltip {
2
- position: relative;
3
- display: block;
4
- }
5
-
6
- .arkynTooltipText {
7
- visibility: hidden;
8
-
9
- opacity: 0;
10
- position: absolute;
11
- transform: translate(-50%, -50%);
12
- white-space: nowrap;
13
- transition: 0.15s all ease-out;
14
-
15
- border-radius: 4px;
16
-
17
- display: flex;
18
- align-items: center;
19
- justify-content: center;
20
-
21
- font-weight: 400;
22
- color: var(--tooltip-text);
23
- background-color: var(--tooltip-background);
24
-
25
- z-index: 9999;
26
- }
27
-
28
- .arkynTooltip.lg .arkynTooltipText {
29
- font-size: 14px;
30
- line-height: 14px;
31
- padding: 8px 12px;
32
- }
33
-
34
- .arkynTooltip.md .arkynTooltipText {
35
- font-size: 12px;
36
- line-height: 12px;
37
- padding: 8px 12px;
38
- }
39
-
40
- .arkynTooltip:hover .arkynTooltipText {
41
- opacity: 1;
42
- visibility: visible;
43
- }
44
-
45
- .arkynTooltip.top .arkynTooltipText {
46
- bottom: calc(100% + 10px);
47
- left: 50%;
48
- transform: translateX(-50%);
49
- }
50
-
51
- .arkynTooltip.top .arkynTooltipText::before {
52
- content: "";
53
- top: 100%;
54
- border-style: solid;
55
- border-color: var(--tooltip-background) transparent;
56
- border-width: 6px 6px 0 6px;
57
- bottom: 20px;
58
- position: absolute;
59
- left: 50%;
60
- transform: translateX(-50%);
61
- }
62
-
63
- .arkynTooltip.left .arkynTooltipText {
64
- top: 50%;
65
- right: calc(100% + 10px);
66
- transform: translateY(-50%);
67
- }
68
-
69
- .arkynTooltip.left .arkynTooltipText::before {
70
- content: "";
71
- top: 50%;
72
- border-style: solid;
73
- border-color: transparent var(--tooltip-background);
74
- border-width: 6px 0 6px 6px;
75
- left: 100%;
76
- position: absolute;
77
- transform: translateY(-50%);
78
- }
79
-
80
- .arkynTooltip.right .arkynTooltipText {
81
- top: 50%;
82
- left: calc(100% + 10px);
83
- transform: translateY(-50%);
84
- }
85
-
86
- .arkynTooltip.right .arkynTooltipText::before {
87
- content: "";
88
- border-style: solid;
89
- border-color: transparent var(--tooltip-background);
90
- border-width: 6px 6px 6px 0;
91
- top: 50%;
92
- left: 0;
93
- transform: translate(-100%, -50%);
94
- position: absolute;
95
- }
96
-
97
- .arkynTooltip.bottom .arkynTooltipText {
98
- top: calc(100% + 10px);
99
- left: 50%;
100
- transform: translateX(-50%);
101
- }
102
-
103
- .arkynTooltip.bottom .arkynTooltipText::before {
104
- content: "";
105
- border-style: solid;
106
- border-color: var(--tooltip-background) transparent;
107
- border-width: 0 6px 6px 6px;
108
- top: 0;
109
- left: 50%;
110
- transform: translate(-50%, -100%);
111
- position: absolute;
112
- }
@@ -1,55 +0,0 @@
1
- import { useContext } from "react";
2
- import { formContext } from "../providers/formProvider";
3
-
4
- /**
5
- * useForm hook - provides access to form context data including field errors
6
- *
7
- * @returns Form context object containing:
8
- * - `fieldErrors`: Object with field validation errors indexed by field name
9
- *
10
- * @example
11
- * ```tsx
12
- * // Basic usage in a component
13
- * function MyComponent() {
14
- * const { fieldErrors } = useForm();
15
- *
16
- * return (
17
- * <Input
18
- * name="email"
19
- * errorMessage={fieldErrors?.email}
20
- * />
21
- * );
22
- * }
23
- *
24
- * // Usage with FormProvider
25
- * function App() {
26
- * const errors = { email: "Invalid email format" };
27
- *
28
- * return (
29
- * <FormProvider fieldErrors={errors}>
30
- * <MyForm />
31
- * </FormProvider>
32
- * );
33
- * }
34
- *
35
- * // Checking for specific field errors
36
- * function FormField() {
37
- * const { fieldErrors } = useForm();
38
- * const hasError = !!fieldErrors?.username;
39
- *
40
- * return (
41
- * <div>
42
- * <Input name="username" />
43
- * {hasError && <span>Error: {fieldErrors.username}</span>}
44
- * </div>
45
- * );
46
- * }
47
- * ```
48
- */
49
-
50
- function useForm() {
51
- const context = useContext(formContext);
52
- return context;
53
- }
54
-
55
- export { useForm };
@@ -1,111 +0,0 @@
1
- type ParamsType = Record<string, string | number | boolean | undefined>;
2
-
3
- /**
4
- * Utility function to manage URL search parameters with optional scoping.
5
- * Provides functionality to get parameters and generate updated search strings
6
- * while maintaining existing parameters.
7
- *
8
- * @param searchString - The current URL search parameters string (e.g., "page=1&filter=active")
9
- * @param scope - Optional scope prefix for parameters. When provided, parameters will be prefixed with "scope:". Default: ""
10
- *
11
- * @returns Object containing parameter management functions:
12
- * @returns getParam - Function to get a parameter value by key (considers scope if provided)
13
- * @returns getScopedSearch - Function to generate search string with updated parameters while preserving existing ones
14
- *
15
- * @example
16
- * ```tsx
17
- * // Basic usage without scope
18
- * const searchString = "page=1&filter=active";
19
- * const { getParam, getScopedSearch } = useScopedParams(searchString);
20
- *
21
- * // Get a parameter value
22
- * const page = getParam('page'); // Returns "1"
23
- * const filter = getParam('filter'); // Returns "active"
24
- *
25
- * // Generate search string with new/updated parameters
26
- * const newSearch = getScopedSearch({ page: 2, sort: 'name' });
27
- * // Result: "?page=2&filter=active&sort=name"
28
- * ```
29
- *
30
- * @example
31
- * ```tsx
32
- * // Usage with scope
33
- * const searchString = "filters:status=active&filters:category=tech&page=1";
34
- * const { getParam, getScopedSearch } = useScopedParams(searchString, 'filters');
35
- *
36
- * // Get a scoped parameter value
37
- * const status = getParam('status'); // Gets 'filters:status' from URL, returns "active"
38
- * const category = getParam('category'); // Gets 'filters:category' from URL, returns "tech"
39
- *
40
- * // Generate search string with scoped parameters
41
- * const newSearch = getScopedSearch({
42
- * status: 'inactive',
43
- * category: 'sports',
44
- * price: 100,
45
- * discount: undefined // This will remove 'filters:discount' from URL if it exists
46
- * });
47
- * // Result: "?filters:status=inactive&filters:category=sports&filters:price=100&page=1"
48
- * ```
49
- *
50
- * @example
51
- * ```tsx
52
- * // Real-world usage with React Router
53
- * import { useLocation, useNavigate } from 'react-router-dom';
54
- *
55
- * function ProductFilter() {
56
- * const location = useLocation();
57
- * const navigate = useNavigate();
58
- * const { getParam, getScopedSearch } = useScopedParams(location.search, 'product');
59
- *
60
- * const handleFilterChange = (newFilters: Record<string, any>) => {
61
- * const searchString = getScopedSearch(newFilters);
62
- * navigate({ search: searchString });
63
- * };
64
- *
65
- * const currentCategory = getParam('category');
66
- * const currentPrice = getParam('price');
67
- *
68
- * return (
69
- * <div>
70
- * <p>Current category: {currentCategory || 'All'}</p>
71
- * <p>Current price filter: {currentPrice || 'None'}</p>
72
- *
73
- * <button onClick={() => handleFilterChange({ category: 'electronics' })}>
74
- * Electronics
75
- * </button>
76
- *
77
- * <button onClick={() => handleFilterChange({ category: undefined, price: undefined })}>
78
- * Clear Filters
79
- * </button>
80
- * </div>
81
- * );
82
- * }
83
- * ```
84
- */
85
-
86
- function useScopedParams(searchString: string, scope: string = "") {
87
- const searchParams = new URLSearchParams(searchString);
88
- const prefix = scope ? `${scope}:` : "";
89
-
90
- const updateSearchParams = (params: ParamsType) => {
91
- Object.entries(params).forEach(([key, value]) => {
92
- if (value === undefined) {
93
- searchParams.delete(`${prefix}${key}`);
94
- } else {
95
- searchParams.set(`${prefix}${key}`, String(value));
96
- }
97
- });
98
- };
99
-
100
- return {
101
- getParam: (key: string) => searchParams.get(`${prefix}${key}`),
102
- getScopedSearch: (params: ParamsType) => {
103
- updateSearchParams(params);
104
- let search = searchParams.toString();
105
- if (search) search = "?" + search;
106
- return search;
107
- },
108
- };
109
- }
110
-
111
- export { useScopedParams };
@@ -1,52 +0,0 @@
1
- import { useEffect } from "react";
2
-
3
- /**
4
- * useScrollLock hook - manages body scroll blocking for overlays
5
- *
6
- * @param isLocked - Whether the body scroll should be locked
7
- *
8
- * @example
9
- * ```tsx
10
- * // Basic usage
11
- * const [isModalOpen, setIsModalOpen] = useState(false);
12
- * useScrollLock(isModalOpen);
13
- *
14
- * // In a modal component
15
- * function Modal({ isVisible }) {
16
- * useScrollLock(isVisible);
17
- *
18
- * return isVisible ? (
19
- * <div className="modal">
20
- * <div className="modal-content">
21
- * Modal content
22
- * </div>
23
- * </div>
24
- * ) : null;
25
- * }
26
- *
27
- * // In a drawer component
28
- * function Drawer({ isOpen }) {
29
- * useScrollLock(isOpen);
30
- *
31
- * return (
32
- * <aside className={`drawer ${isOpen ? 'open' : 'closed'}`}>
33
- * Drawer content
34
- * </aside>
35
- * );
36
- * }
37
- * ```
38
- */
39
-
40
- function useScrollLock(isLocked: boolean): void {
41
- useEffect(() => {
42
- if (isLocked) {
43
- const originalOverflow = document.body.style.overflow;
44
- document.body.style.overflow = "hidden";
45
- return () => {
46
- document.body.style.overflow = originalOverflow;
47
- };
48
- }
49
- }, [isLocked]);
50
- }
51
-
52
- export { useScrollLock };
@@ -1,52 +0,0 @@
1
- import { useState } from "react";
2
-
3
- type UseSliderReturnProps = [number, (number: number) => void];
4
-
5
- /**
6
- * useSlider hook - manages slider value state with boundary validation
7
- *
8
- * @param defaultValue - Initial value for the slider (0-100). Default: 0
9
- *
10
- * @returns Array containing current slider value and setter function
11
- * - [0]: Current slider value (number between 0-100)
12
- * - [1]: Function to update slider value with boundary validation
13
- *
14
- * @example
15
- * ```tsx
16
- * // Basic usage
17
- * const [value, setValue] = useSlider();
18
- *
19
- * // With default value
20
- * const [value, setValue] = useSlider(50);
21
- *
22
- * // Usage in component
23
- * function SliderComponent() {
24
- * const [sliderValue, changeSliderValue] = useSlider(25);
25
- *
26
- * return (
27
- * <Slider value={sliderValue} onChange={changeSliderValue} />
28
- * );
29
- * }
30
- * ```
31
- */
32
-
33
- function useSlider(defaultValue?: number): UseSliderReturnProps {
34
- function getDefaultValue() {
35
- if (!defaultValue) return 0;
36
- if (defaultValue <= 0) return 0;
37
- if (defaultValue >= 100) return 100;
38
- return defaultValue;
39
- }
40
-
41
- const [sliderValue, setSliderValue] = useState(getDefaultValue());
42
-
43
- function changeSliderValue(value: number) {
44
- if (value <= 0) return setSliderValue(0);
45
- if (value >= 100) return setSliderValue(100);
46
- return setSliderValue(value);
47
- }
48
-
49
- return [sliderValue, changeSliderValue];
50
- }
51
-
52
- export { useSlider };
package/src/index.ts DELETED
@@ -1,44 +0,0 @@
1
- // components
2
- export { AlertContainer } from "./components/alert/alertContainer";
3
- export { AlertContent } from "./components/alert/alertContent";
4
- export { AlertDescription } from "./components/alert/alertDescription";
5
- export { AlertIcon } from "./components/alert/alertIcon";
6
- export { AlertTitle } from "./components/alert/alertTitle";
7
- export { AudioPlayer } from "./components/audioPlayer";
8
- export { Badge } from "./components/badge";
9
- export { Button } from "./components/button";
10
- export { CardTabButton } from "./components/cardTab/cardTabButton";
11
- export { CardTabContainer } from "./components/cardTab/cardTabContainer";
12
- export { Checkbox } from "./components/checkbox";
13
- export { CurrencyInput } from "./components/currencyInput";
14
- export { Divider } from "./components/divider";
15
- export { DrawerContainer } from "./components/drawer/drawerContainer";
16
- export { DrawerHeader } from "./components/drawer/drawerHeader";
17
- export { FieldError } from "./components/fieldError";
18
- export { FieldLabel } from "./components/fieldLabel";
19
- export { FieldWrapper } from "./components/fieldWrapper";
20
- export { IconButton } from "./components/iconButton";
21
- export { Input } from "./components/input";
22
- export { MaskedInput } from "./components/maskedInput";
23
- export { ModalContainer } from "./components/modal/modalContainer";
24
- export { ModalFooter } from "./components/modal/modalFooter";
25
- export { ModalHeader } from "./components/modal/modalHeader";
26
- export { MultiSelect } from "./components/multiSelect";
27
- export { PhoneInput } from "./components/phoneInput";
28
- export { RadioBox } from "./components/radio/radioBox";
29
- export { RadioGroup } from "./components/radio/radioGroup";
30
- export { Slider } from "./components/slider";
31
- export { Switch } from "./components/switch";
32
- export { TabButton } from "./components/tab/tabButton";
33
- export { TabContainer } from "./components/tab/tabContainer";
34
- export { Textarea } from "./components/textarea";
35
- export { Tooltip } from "./components/tooltip";
36
-
37
- // hooks
38
- export { useForm } from "./hooks/useForm";
39
- export { useScopedParams } from "./hooks/useScopedParams";
40
- export { useScrollLock } from "./hooks/useScrollLock";
41
- export { useSlider } from "./hooks/useSlider";
42
-
43
- // providers
44
- export { FormProvider } from "./providers/formProvider";
@@ -1,88 +0,0 @@
1
- import { ReactNode, createContext, cloneElement, isValidElement } from "react";
2
-
3
- type FormContextProps = {
4
- fieldErrors: { [x: string]: any };
5
- };
6
-
7
- type FormProviderProps = {
8
- children: ReactNode;
9
- fieldErrors?: any;
10
- form?: React.ReactElement;
11
- };
12
-
13
- const formContext = createContext({} as FormContextProps);
14
-
15
- /**
16
- * FormProvider component - provides form context including field errors to child components
17
- *
18
- * @param props - FormProvider component properties
19
- * @param props.children - React elements that will have access to the form context
20
- * @param props.fieldErrors - Object containing validation errors indexed by field name
21
- * @param props.form - Optional form element to wrap the children with
22
- *
23
- * @returns FormProvider JSX element that wraps children with form context
24
- *
25
- * @example
26
- * ```tsx
27
- * // Basic form provider with field errors
28
- * function App() {
29
- * const errors = {
30
- * email: "Invalid email format",
31
- * password: "Password is required"
32
- * };
33
- *
34
- * return (
35
- * <FormProvider fieldErrors={errors}>
36
- * <Input name="email" label="Email" />
37
- * <Input name="password" label="Password" type="password" />
38
- * </FormProvider>
39
- * );
40
- * }
41
- *
42
- * // Form provider with custom form element
43
- * function FormWithValidation() {
44
- * const [errors, setErrors] = useState({});
45
- *
46
- * const handleSubmit = (e) => {
47
- * e.preventDefault();
48
- * // validation logic
49
- * };
50
- *
51
- * return (
52
- * <FormProvider
53
- * fieldErrors={errors}
54
- * form={<form onSubmit={handleSubmit} />}
55
- * >
56
- * <Input name="username" label="Username" />
57
- * <Button type="submit">Submit</Button>
58
- * </FormProvider>
59
- * );
60
- * }
61
- *
62
- * // Using with useForm hook
63
- * function FormField() {
64
- * const { fieldErrors } = useForm();
65
- *
66
- * return (
67
- * <Input
68
- * name="email"
69
- * label="Email"
70
- * errorMessage={fieldErrors?.email}
71
- * />
72
- * );
73
- * }
74
- * ```
75
- */
76
-
77
- function FormProvider(props: FormProviderProps) {
78
- const { children, fieldErrors, form } = props;
79
-
80
- return (
81
- <formContext.Provider value={{ fieldErrors }}>
82
- {!form && children}
83
- {form && cloneElement(form, form.props, children)}
84
- </formContext.Provider>
85
- );
86
- }
87
-
88
- export { formContext, FormProvider };
@@ -1,23 +0,0 @@
1
- import { LucideIcon } from "lucide-react";
2
-
3
- type IconRendererProps = {
4
- iconSize: number;
5
- className?: string;
6
- icon?: LucideIcon | string;
7
- show?: boolean;
8
- };
9
-
10
- function IconRenderer(props: IconRendererProps) {
11
- const { iconSize, icon: Icon, className, show = true } = props;
12
-
13
- if (!show) return <></>;
14
- if (!Icon) return <></>;
15
-
16
- if (typeof Icon === "string") {
17
- return <p className={className}>{Icon}</p>;
18
- }
19
-
20
- return <Icon size={iconSize} className={className} strokeWidth={2.5} />;
21
- }
22
-
23
- export { IconRenderer };
@@ -1,54 +0,0 @@
1
- import { formatToCurrency, removeNonNumeric } from "@arkyn/shared";
2
-
3
- type Locale =
4
- | "USD"
5
- | "EUR"
6
- | "JPY"
7
- | "GBP"
8
- | "AUD"
9
- | "CAD"
10
- | "CHF"
11
- | "CNY"
12
- | "SEK"
13
- | "NZD"
14
- | "BRL"
15
- | "INR"
16
- | "RUB"
17
- | "ZAR"
18
- | "MXN"
19
- | "SGD"
20
- | "HKD"
21
- | "NOK"
22
- | "KRW"
23
- | "TRY"
24
- | "IDR"
25
- | "THB";
26
-
27
- function normalizeValue(number: string | number) {
28
- let safeNumber = number;
29
-
30
- if (typeof number === "string") {
31
- safeNumber = +removeNonNumeric(number);
32
- if (safeNumber % 1 !== 0) safeNumber = safeNumber.toFixed(2);
33
- } else {
34
- safeNumber = Number.isInteger(number)
35
- ? Number(number) * 10 ** 2
36
- : number.toFixed(2);
37
- }
38
-
39
- return +removeNonNumeric(String(safeNumber)) / 10 ** 2;
40
- }
41
-
42
- function maskCurrencyValues(
43
- inputFieldValue: string | number | undefined,
44
- locale: Locale
45
- ): [number, string] {
46
- if (!inputFieldValue) return [0, formatToCurrency(0, locale)];
47
-
48
- const value = normalizeValue(inputFieldValue);
49
- const maskedValue = formatToCurrency(value, locale);
50
-
51
- return [value, maskedValue];
52
- }
53
-
54
- export { maskCurrencyValues };