@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,150 +0,0 @@
1
- import { HTMLAttributes, useState } from "react";
2
-
3
- import { FieldError } from "../../../components/fieldError";
4
- import { FieldLabel } from "../../../components/fieldLabel";
5
- import { FieldWrapper } from "../../../components/fieldWrapper";
6
- import { useForm } from "../../../hooks/useForm";
7
-
8
- import { RadioProvider } from "../radioContext";
9
- import "./styles.css";
10
-
11
- type RadioGroupProps = Omit<HTMLAttributes<HTMLDivElement>, "onChange"> & {
12
- name: string;
13
- label?: string;
14
- showAsterisk?: boolean;
15
- errorMessage?: string;
16
- value?: string;
17
- defaultValue?: string;
18
- onChange?: (value: string) => void;
19
- size?: "sm" | "md" | "lg";
20
- };
21
-
22
- /**
23
- * RadioGroup component - used for creating a group of radio button options with shared state management
24
- *
25
- * @param props - RadioGroup component properties
26
- * @param props.name - Required field name for form handling and radio button grouping
27
- * @param props.label - Optional label text to display above the radio group
28
- * @param props.showAsterisk - Whether to show asterisk on label for required fields
29
- * @param props.errorMessage - Error message to display below the radio group
30
- * @param props.value - Controlled value for the selected radio option
31
- * @param props.defaultValue - Default selected value for uncontrolled usage. Default: ""
32
- * @param props.onChange - Callback function called when radio selection changes, receives the selected value
33
- * @param props.size - Size variant for all radio buttons in the group. Default: "md"
34
- *
35
- * **...Other valid HTML properties for div element (except onChange)**
36
- *
37
- * @returns RadioGroup JSX element wrapped in FieldWrapper with RadioProvider context for child Radio components
38
- *
39
- * @example
40
- * ```tsx
41
- * // Basic radio group
42
- * <RadioGroup name="gender">
43
- * <Radio value="male" label="Male" />
44
- * <Radio value="female" label="Female" />
45
- * <Radio value="other" label="Other" />
46
- * </RadioGroup>
47
- *
48
- * // Radio group with label and validation
49
- * <RadioGroup
50
- * name="subscription"
51
- * label="Choose your plan"
52
- * showAsterisk
53
- * errorMessage="Please select a subscription plan"
54
- * >
55
- * <Radio value="basic" label="Basic Plan - $9.99/month" />
56
- * <Radio value="premium" label="Premium Plan - $19.99/month" />
57
- * <Radio value="enterprise" label="Enterprise Plan - $49.99/month" />
58
- * </RadioGroup>
59
- *
60
- * // Controlled radio group with callback
61
- * <RadioGroup
62
- * name="theme"
63
- * label="Select Theme"
64
- * value={selectedTheme}
65
- * onChange={(value) => setSelectedTheme(value)}
66
- * size="lg"
67
- * >
68
- * <Radio value="light" label="Light Theme" />
69
- * <Radio value="dark" label="Dark Theme" />
70
- * <Radio value="auto" label="Auto (System)" />
71
- * </RadioGroup>
72
- *
73
- * // Radio group with default selection
74
- * <RadioGroup
75
- * name="language"
76
- * label="Preferred Language"
77
- * defaultValue="en"
78
- * size="sm"
79
- * >
80
- * <Radio value="en" label="English" />
81
- * <Radio value="es" label="Spanish" />
82
- * <Radio value="fr" label="French" />
83
- * <Radio value="pt" label="Portuguese" />
84
- * </RadioGroup>
85
- *
86
- * // Radio group with custom styling and onChange handler
87
- * <RadioGroup
88
- * name="difficulty"
89
- * label="Select Difficulty Level"
90
- * className="custom-radio-group"
91
- * onChange={(value) => console.log('Selected difficulty:', value)}
92
- * >
93
- * <Radio value="easy" label="Easy" />
94
- * <Radio value="medium" label="Medium" />
95
- * <Radio value="hard" label="Hard" />
96
- * </RadioGroup>
97
- * ```
98
- */
99
-
100
- function RadioGroup(props: RadioGroupProps) {
101
- const {
102
- defaultValue = "",
103
- name,
104
- label,
105
- showAsterisk,
106
- errorMessage: baseErrorMessage,
107
- value: forceValue,
108
- onChange,
109
- size = "md",
110
- className: baseClassName = "",
111
- ...rest
112
- } = props;
113
-
114
- const [value, setValue] = useState(defaultValue);
115
- const { fieldErrors } = useForm();
116
-
117
- function handleChange(value: string) {
118
- setValue(value);
119
- if (onChange) onChange(value);
120
- }
121
-
122
- const errorMessage = baseErrorMessage || fieldErrors?.[name];
123
- const isError = !!errorMessage;
124
- const className = `arkynRadioGroup ${size} ${baseClassName}`;
125
-
126
- return (
127
- <FieldWrapper>
128
- {label && <FieldLabel showAsterisk={showAsterisk}>{label}</FieldLabel>}
129
- <RadioProvider
130
- isError={isError}
131
- size={size}
132
- value={forceValue || value}
133
- handleChange={handleChange}
134
- >
135
- <input
136
- style={{ display: "none" }}
137
- type="text"
138
- readOnly
139
- name={name}
140
- value={forceValue || value}
141
- />
142
-
143
- <div className={className.trim()} {...rest} />
144
- </RadioProvider>
145
- {errorMessage && <FieldError>{errorMessage}</FieldError>}
146
- </FieldWrapper>
147
- );
148
- }
149
-
150
- export { RadioGroup };
@@ -1,5 +0,0 @@
1
- .arkynRadioGroup {
2
- display: flex;
3
- align-items: center;
4
- gap: 32px;
5
- }
@@ -1,132 +0,0 @@
1
- import { HTMLAttributes, useEffect, useRef, useState } from "react";
2
-
3
- import "./styles.css";
4
-
5
- type SliderProps = Omit<HTMLAttributes<HTMLDivElement>, "onChange"> & {
6
- value: number;
7
- onChange: (value: number) => void;
8
- disabled?: boolean;
9
- onDragging?: (value: boolean) => void;
10
- };
11
-
12
- /**
13
- * Slider component - interactive range input for selecting numeric values
14
- *
15
- * @param props - Slider component properties
16
- * @param props.value - Current slider value (0-100)
17
- * @param props.onChange - Callback function called when value changes
18
- * @param props.disabled - Disables slider interaction. Default: false
19
- * @param props.onDragging - Callback function called when dragging state changes
20
- *
21
- * **...Other valid HTML properties for div element**
22
- *
23
- * @returns Slider JSX element
24
- *
25
- * @example
26
- * ```tsx
27
- * // Basic slider
28
- * const [value, setValue] = useState(50);
29
- * <Slider value={value} onChange={setValue} />
30
- *
31
- * // Disabled slider
32
- * <Slider value={75} onChange={() => {}} disabled />
33
- *
34
- * // Slider with dragging callback
35
- * const [isDragging, setIsDragging] = useState(false);
36
- * <Slider
37
- * value={value}
38
- * onChange={setValue}
39
- * onDragging={setIsDragging}
40
- * />
41
- *
42
- * // Complete example with useSlider hook
43
- * function SliderExample() {
44
- * const [sliderValue, setSliderValue] = useSlider(25);
45
- * const [isDragging, setIsDragging] = useState(false);
46
- *
47
- * return (
48
- * <Slider
49
- * value={sliderValue}
50
- * onChange={setSliderValue}
51
- * onDragging={setIsDragging}
52
- * className="custom-slider"
53
- * />
54
- * );
55
- * }
56
- * ```
57
- */
58
-
59
- function Slider(props: SliderProps) {
60
- const {
61
- onChange,
62
- value,
63
- disabled = false,
64
- onDragging,
65
- className = "",
66
- ...rest
67
- } = props;
68
-
69
- const [isDragging, setIsDragging] = useState(false);
70
- const sliderRef = useRef<HTMLDivElement>(null);
71
-
72
- const handleMouseDown = () => setIsDragging(true);
73
- const handleMouseUp = () => setIsDragging(false);
74
-
75
- const handleMouseMove = (event: MouseEvent) => {
76
- if (disabled) return;
77
- if (!isDragging || !sliderRef.current) return;
78
-
79
- const rect = sliderRef.current.getBoundingClientRect();
80
- const offsetX = event.clientX - rect.left;
81
- const newValue = Math.min(Math.max((offsetX / rect.width) * 100, 0), 100);
82
-
83
- onChange(newValue);
84
- };
85
-
86
- const handleSliderClick = (event: React.MouseEvent<HTMLDivElement>) => {
87
- if (disabled) return;
88
- if (!sliderRef.current) return;
89
-
90
- const rect = sliderRef.current.getBoundingClientRect();
91
- const offsetX = event.clientX - rect.left;
92
- const newValue = Math.min(Math.max((offsetX / rect.width) * 100, 0), 100);
93
-
94
- onChange(newValue);
95
- };
96
-
97
- useEffect(() => {
98
- if (isDragging) {
99
- onDragging && onDragging(true);
100
- document.addEventListener("mousemove", handleMouseMove);
101
- document.addEventListener("mouseup", handleMouseUp);
102
- } else {
103
- onDragging && onDragging(false);
104
- document.removeEventListener("mousemove", handleMouseMove);
105
- document.removeEventListener("mouseup", handleMouseUp);
106
- }
107
-
108
- return () => {
109
- document.removeEventListener("mousemove", handleMouseMove);
110
- document.removeEventListener("mouseup", handleMouseUp);
111
- };
112
- }, [isDragging]);
113
-
114
- const isDraggingClass = isDragging ? "isDragging" : "isNotDragging";
115
- const disabledClass = disabled ? "isDisabled" : "isEnabled";
116
- const sliderClassname = `arkynSliderTrack ${isDraggingClass} ${disabledClass} ${className}`;
117
-
118
- return (
119
- <div
120
- {...rest}
121
- className={sliderClassname}
122
- onMouseDown={handleMouseDown}
123
- onClick={handleSliderClick}
124
- ref={sliderRef}
125
- >
126
- <div className="arkynSliderFill" style={{ width: `${value}%` }} />
127
- <div className="arkynSliderThumb" style={{ left: `${value}%` }} />
128
- </div>
129
- );
130
- }
131
-
132
- export { Slider };
@@ -1,45 +0,0 @@
1
- .arkynSliderTrack {
2
- width: 100%;
3
- max-width: 400px;
4
-
5
- height: 6px;
6
- border: 1px solid var(--border);
7
- background: rgba(var(--input-background), 1);
8
- border-radius: 5px;
9
- position: relative;
10
- cursor: pointer;
11
- }
12
-
13
- .arkynSliderTrack.isDragging {
14
- cursor: grabbing;
15
- }
16
-
17
- .arkynSliderTrack.isDisabled {
18
- cursor: not-allowed;
19
- opacity: 0.5;
20
- }
21
-
22
- .arkynSliderFill {
23
- height: 100%;
24
- background: rgb(var(--spotlight-primary));
25
- border-radius: 5px;
26
- }
27
-
28
- .arkynSliderThumb {
29
- width: 12px;
30
- height: 12px;
31
- background: rgb(var(--spotlight-primary));
32
- border-radius: 50%;
33
- position: absolute;
34
- top: 50%;
35
- transform: translate(-50%, -50%);
36
- }
37
-
38
- .arkynSliderTrack.isEnabled .arkynSliderThumb {
39
- cursor: grab;
40
- }
41
-
42
- .arkynSliderValue {
43
- margin-top: 10px;
44
- font-size: 18px;
45
- }
@@ -1,156 +0,0 @@
1
- import type { ButtonHTMLAttributes } from "react";
2
- import { useId, useRef, useState } from "react";
3
-
4
- import "./styles.css";
5
- import { FieldWrapper } from "../fieldWrapper";
6
- import { FieldLabel } from "../fieldLabel";
7
-
8
- type SwitchProps = Omit<
9
- ButtonHTMLAttributes<HTMLButtonElement>,
10
- "children" | "onChange" | "defaultValue" | "onCheck" | "value"
11
- > & {
12
- label?: string;
13
- size?: "sm" | "md" | "lg";
14
- defaultChecked?: boolean;
15
- checked?: boolean;
16
- value?: string;
17
- unCheckedValue?: string;
18
- name: string;
19
- onCheck?: (value: string) => void;
20
- };
21
-
22
- /**
23
- * Switch component - used for creating toggle switches with on/off states
24
- *
25
- * @param props - Switch component properties
26
- * @param props.name - Required field name for form handling and input identification
27
- * @param props.label - Optional label text to display next to the switch
28
- * @param props.size - Size variant of the switch. Default: "lg"
29
- * @param props.defaultChecked - Default checked state for uncontrolled usage. Default: false
30
- * @param props.checked - Controlled checked state of the switch
31
- * @param props.value - Value to be used when switch is checked. Default: "checked"
32
- * @param props.unCheckedValue - Value to be used when switch is unchecked. Default: ""
33
- * @param props.onCheck - Callback function called when switch state changes, receives the current value
34
- *
35
- * **...Other valid HTML properties for button element (except children, onChange, defaultValue, onCheck, value)**
36
- *
37
- * @returns Switch JSX element wrapped in FieldWrapper with optional label
38
- *
39
- * @example
40
- * ```tsx
41
- * // Basic switch
42
- * <Switch name="notifications" label="Enable notifications" />
43
- *
44
- * // Switch with custom values
45
- * <Switch
46
- * name="theme"
47
- * label="Dark mode"
48
- * value="dark"
49
- * unCheckedValue="light"
50
- * onCheck={(value) => console.log('Theme:', value)}
51
- * />
52
- *
53
- * // Controlled switch with callback
54
- * <Switch
55
- * name="autoSave"
56
- * label="Auto-save documents"
57
- * checked={isAutoSaveEnabled}
58
- * onCheck={(value) => setIsAutoSaveEnabled(!!value)}
59
- * size="md"
60
- * />
61
- *
62
- * // Small switch with default checked state
63
- * <Switch
64
- * name="marketing"
65
- * label="Marketing emails"
66
- * size="sm"
67
- * defaultChecked={true}
68
- * value="subscribed"
69
- * unCheckedValue="unsubscribed"
70
- * />
71
- *
72
- * // Switch with custom styling and disabled state
73
- * <Switch
74
- * name="premium"
75
- * label="Premium features"
76
- * className="premium-switch"
77
- * disabled={!isPremiumUser}
78
- * onCheck={(value) => handlePremiumToggle(value)}
79
- * />
80
- *
81
- * // Large switch for accessibility
82
- * <Switch
83
- * name="accessibility"
84
- * label="High contrast mode"
85
- * size="lg"
86
- * checked={isHighContrast}
87
- * onCheck={(value) => setIsHighContrast(!!value)}
88
- * value="enabled"
89
- * unCheckedValue="disabled"
90
- * />
91
- *
92
- * // Switch without label for inline usage
93
- * <Switch
94
- * name="inline_toggle"
95
- * value="on"
96
- * unCheckedValue="off"
97
- * onCheck={(value) => console.log('Toggle state:', value)}
98
- * />
99
- * ```
100
- */
101
-
102
- function Switch(props: SwitchProps) {
103
- const {
104
- label,
105
- size = "lg",
106
- defaultChecked = false,
107
- checked: baseChecked = null,
108
- value,
109
- unCheckedValue = "",
110
- name,
111
- className: baseClassName = "",
112
- onCheck,
113
- id,
114
- ...rest
115
- } = props;
116
-
117
- const inputRef = useRef<HTMLInputElement>(null);
118
- const inputId = id || useId();
119
-
120
- const [isChecked, setIsChecked] = useState(defaultChecked);
121
-
122
- const currentChecked =
123
- typeof baseChecked === "boolean" ? baseChecked : isChecked;
124
-
125
- function handleCheck() {
126
- setIsChecked(!isChecked);
127
- onCheck && onCheck(!currentChecked ? value || "checked" : unCheckedValue);
128
- }
129
-
130
- const checkedClass = currentChecked ? "checkedTrue" : "checkedFalse";
131
- const className = `arkynSwitch ${checkedClass} ${size} ${baseClassName}`;
132
-
133
- return (
134
- <FieldWrapper>
135
- {label && <FieldLabel>{label}</FieldLabel>}
136
-
137
- <button
138
- type="button"
139
- onClick={handleCheck}
140
- className={className}
141
- {...rest}
142
- >
143
- <input
144
- id={inputId}
145
- type="hidden"
146
- name={name}
147
- ref={inputRef}
148
- onClick={handleCheck}
149
- value={currentChecked ? value || "checked" : unCheckedValue}
150
- />
151
- </button>
152
- </FieldWrapper>
153
- );
154
- }
155
-
156
- export { Switch };
@@ -1,90 +0,0 @@
1
- .arkynSwitch {
2
- position: relative;
3
-
4
- border: 1px solid transparent;
5
- border-radius: 999999px;
6
-
7
- transition: all 0.3s ease-in-out;
8
- }
9
-
10
- .arkynSwitch:disabled {
11
- cursor: not-allowed;
12
- opacity: 0.5;
13
- }
14
-
15
- .arkynSwitch::before {
16
- content: "";
17
- position: absolute;
18
- top: 2px;
19
- bottom: 2px;
20
- border-radius: 50%;
21
- background-color: white;
22
- transition: all 0.2s;
23
- transform: translateX(-2px);
24
- }
25
-
26
- .arkynSwitch.checkedTrue {
27
- background-color: rgba(var(--spotlight-primary), 1);
28
- }
29
-
30
- .arkynSwitch.checkedFalse {
31
- background-color: var(--border);
32
- }
33
-
34
- .arkynSwitch.checkedTrue::before {
35
- transform: translateX(3px);
36
- }
37
-
38
- .arkynSwitch.sm {
39
- min-width: 32px;
40
- max-width: 32px;
41
- min-height: 16px;
42
- max-height: 16px;
43
- }
44
-
45
- .arkynSwitch.sm::before {
46
- min-height: 10px;
47
- max-height: 10px;
48
- min-width: 10px;
49
- max-width: 10px;
50
- }
51
-
52
- .arkynSwitch.sm.checkedFalse::before {
53
- transform: translateX(-13px);
54
- }
55
-
56
- .arkynSwitch.md {
57
- min-width: 40px;
58
- max-width: 40px;
59
- min-height: 20px;
60
- max-height: 20px;
61
- }
62
-
63
- .arkynSwitch.md::before {
64
- min-height: 14px;
65
- max-height: 14px;
66
- min-width: 14px;
67
- max-width: 14px;
68
- }
69
-
70
- .arkynSwitch.md.checkedFalse::before {
71
- transform: translateX(-17px);
72
- }
73
-
74
- .arkynSwitch.lg {
75
- min-width: 48px;
76
- max-width: 48px;
77
- min-height: 24px;
78
- max-height: 24px;
79
- }
80
-
81
- .arkynSwitch.lg::before {
82
- min-height: 18px;
83
- max-height: 18px;
84
- min-width: 18px;
85
- max-width: 18px;
86
- }
87
-
88
- .arkynSwitch.lg.checkedFalse::before {
89
- transform: translateX(-21px);
90
- }
@@ -1,114 +0,0 @@
1
- import { ButtonHTMLAttributes, MouseEvent, ReactNode } from "react";
2
-
3
- import { useTab } from "../tabContext";
4
- import "./styles.css";
5
-
6
- type TabButtonProps = Omit<
7
- ButtonHTMLAttributes<HTMLButtonElement>,
8
- "children" | "value" | "type"
9
- > & {
10
- children: ReactNode;
11
- value: string;
12
- };
13
-
14
- /**
15
- * TabButton component - used as interactive buttons within a TabContainer for tab navigation
16
- *
17
- * @param props - TabButton component properties
18
- * @param props.children - Content to display inside the tab button (required)
19
- * @param props.value - Unique identifier for the tab button (required)
20
- * @param props.disabled - Whether the button is disabled. Can be overridden by TabContainer's disabled state
21
- *
22
- * **...Other valid HTML button properties except children, value, and type**
23
- *
24
- * @returns TabButton JSX element
25
- *
26
- * @example
27
- * ```tsx
28
- * // Basic tab buttons within TabContainer
29
- * <TabContainer>
30
- * <TabButton value="home">Home</TabButton>
31
- * <TabButton value="about">About</TabButton>
32
- * <TabButton value="contact">Contact</TabButton>
33
- * </TabContainer>
34
- * ```
35
- *
36
- * @example
37
- * ```tsx
38
- * // Tab button with click handler
39
- * <TabContainer onChange={(value) => console.log('Tab changed:', value)}>
40
- * <TabButton
41
- * value="profile"
42
- * onClick={() => console.log('Profile tab clicked')}
43
- * >
44
- * Profile
45
- * </TabButton>
46
- * <TabButton value="settings">Settings</TabButton>
47
- * </TabContainer>
48
- * ```
49
- *
50
- * @example
51
- * ```tsx
52
- * // Disabled tab button
53
- * <TabContainer>
54
- * <TabButton value="available">Available</TabButton>
55
- * <TabButton value="coming-soon" disabled>
56
- * Coming Soon
57
- * </TabButton>
58
- * </TabContainer>
59
- * ```
60
- *
61
- * @example
62
- * ```tsx
63
- * // Tab buttons with custom styling and default value
64
- * <TabContainer defaultValue="dashboard">
65
- * <TabButton
66
- * value="dashboard"
67
- * className="custom-tab"
68
- * aria-label="Dashboard tab"
69
- * >
70
- * Dashboard
71
- * </TabButton>
72
- * <TabButton value="analytics">Analytics</TabButton>
73
- * <TabButton value="reports">Reports</TabButton>
74
- * </TabContainer>
75
- * ```
76
- */
77
-
78
- function TabButton(props: TabButtonProps) {
79
- const {
80
- children,
81
- disabled: rawDisabled = false,
82
- className: baseClassName = "",
83
- onClick,
84
- value,
85
- ...rest
86
- } = props;
87
-
88
- const { disabled, currentTab, changeCurrentTab } = useTab();
89
-
90
- const isDisabled = disabled || rawDisabled;
91
-
92
- const disabledClass = isDisabled ? "isDisabled" : "";
93
- const activeClass = currentTab === value && value ? "isActive" : "";
94
- const className = `arkynTabButton ${disabledClass} ${activeClass} ${baseClassName}`;
95
-
96
- function handleClick(event: MouseEvent<HTMLButtonElement>) {
97
- changeCurrentTab(value);
98
- onClick && onClick(event);
99
- }
100
-
101
- return (
102
- <button
103
- onClick={handleClick}
104
- className={className.trim()}
105
- {...rest}
106
- disabled={isDisabled}
107
- type="button"
108
- >
109
- {children}
110
- </button>
111
- );
112
- }
113
-
114
- export { TabButton };