@arkyn/components 3.0.1-beta.20 → 3.0.1-beta.22

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 (475) hide show
  1. package/dist/bundle.js +1112 -1737
  2. package/dist/bundle.umd.cjs +1 -30
  3. package/dist/components/alert/alertContainer/index.d.ts.map +1 -0
  4. package/dist/{src/components → components}/alert/alertContainer/index.js +4 -1
  5. package/dist/components/alert/alertContent/index.d.ts.map +1 -0
  6. package/dist/components/alert/alertDescription/index.d.ts.map +1 -0
  7. package/dist/components/alert/alertIcon/index.d.ts.map +1 -0
  8. package/dist/components/alert/alertTitle/index.d.ts.map +1 -0
  9. package/dist/components/audioPlayer/index.d.ts.map +1 -0
  10. package/dist/components/badge/index.d.ts.map +1 -0
  11. package/dist/components/button/index.d.ts.map +1 -0
  12. package/dist/components/cardTab/cardTabButton/index.d.ts.map +1 -0
  13. package/dist/components/cardTab/cardTabContainer/index.d.ts.map +1 -0
  14. package/dist/components/cardTab/cardTabContext.d.ts.map +1 -0
  15. package/dist/components/checkbox/index.d.ts.map +1 -0
  16. package/dist/components/currencyInput/index.d.ts.map +1 -0
  17. package/dist/components/divider/index.d.ts.map +1 -0
  18. package/dist/components/drawer/drawerContainer/index.d.ts.map +1 -0
  19. package/dist/components/drawer/drawerContext.d.ts.map +1 -0
  20. package/dist/components/drawer/drawerHeader/index.d.ts.map +1 -0
  21. package/dist/components/fieldError/index.d.ts.map +1 -0
  22. package/dist/components/fieldLabel/index.d.ts.map +1 -0
  23. package/dist/components/fieldWrapper/index.d.ts.map +1 -0
  24. package/dist/components/iconButton/index.d.ts.map +1 -0
  25. package/dist/components/input/index.d.ts.map +1 -0
  26. package/dist/components/maskedInput/index.d.ts.map +1 -0
  27. package/dist/components/modal/modalContainer/index.d.ts.map +1 -0
  28. package/dist/components/modal/modalContext.d.ts.map +1 -0
  29. package/dist/components/modal/modalFooter/index.d.ts.map +1 -0
  30. package/dist/components/modal/modalHeader/index.d.ts.map +1 -0
  31. package/dist/components/multiSelect/index.d.ts.map +1 -0
  32. package/dist/components/multiSelect/multiSelectChevron/index.d.ts.map +1 -0
  33. package/dist/components/multiSelect/multiSelectContainer/index.d.ts.map +1 -0
  34. package/dist/components/multiSelect/multiSelectContent/index.d.ts.map +1 -0
  35. package/dist/components/multiSelect/multiSelectMark/index.d.ts.map +1 -0
  36. package/dist/components/multiSelect/multiSelectOption/index.d.ts.map +1 -0
  37. package/dist/components/multiSelect/multiSelectOptionsContainer/index.d.ts.map +1 -0
  38. package/dist/components/multiSelect/multiSelectOverlay/index.d.ts.map +1 -0
  39. package/dist/components/multiSelect/multiSelectSpinner/index.d.ts.map +1 -0
  40. package/dist/components/phoneInput/index.d.ts.map +1 -0
  41. package/dist/components/phoneInput/phoneInputContainer/index.d.ts.map +1 -0
  42. package/dist/components/phoneInput/phoneInputCountriesOverlay/index.d.ts.map +1 -0
  43. package/dist/components/phoneInput/phoneInputCountryOption/index.d.ts.map +1 -0
  44. package/dist/components/phoneInput/phoneInputCountryOptionsContainer/index.d.ts.map +1 -0
  45. package/dist/components/phoneInput/phoneInputCountrySelector/index.d.ts.map +1 -0
  46. package/dist/components/phoneInput/phoneInputMask/index.d.ts.map +1 -0
  47. package/dist/components/radio/radioBox/index.d.ts.map +1 -0
  48. package/dist/components/radio/radioContext.d.ts.map +1 -0
  49. package/dist/components/radio/radioGroup/index.d.ts.map +1 -0
  50. package/dist/components/slider/index.d.ts.map +1 -0
  51. package/dist/components/switch/index.d.ts.map +1 -0
  52. package/dist/components/tab/tabButton/index.d.ts.map +1 -0
  53. package/dist/components/tab/tabContainer/index.d.ts.map +1 -0
  54. package/dist/components/tab/tabContext.d.ts.map +1 -0
  55. package/dist/components/textarea/index.d.ts.map +1 -0
  56. package/dist/components/tooltip/index.d.ts.map +1 -0
  57. package/dist/hooks/useForm.d.ts.map +1 -0
  58. package/dist/hooks/useScopedParams.d.ts.map +1 -0
  59. package/dist/hooks/useScrollLock.d.ts.map +1 -0
  60. package/dist/hooks/useSlider.d.ts.map +1 -0
  61. package/dist/index.d.ts.map +1 -0
  62. package/dist/providers/formProvider.d.ts.map +1 -0
  63. package/dist/services/iconRenderer.d.ts.map +1 -0
  64. package/dist/services/maskCurrencyValues.d.ts.map +1 -0
  65. package/dist/{src/utils → utils}/phoneInputUtilities.d.ts.map +1 -1
  66. package/package.json +5 -5
  67. package/dist/documentation/src/app.d.ts +0 -3
  68. package/dist/documentation/src/app.d.ts.map +0 -1
  69. package/dist/documentation/src/app.js +0 -55
  70. package/dist/documentation/src/components/examples.alert.d.ts +0 -3
  71. package/dist/documentation/src/components/examples.alert.d.ts.map +0 -1
  72. package/dist/documentation/src/components/examples.alert.js +0 -7
  73. package/dist/documentation/src/components/examples.audioPlayer.d.ts +0 -3
  74. package/dist/documentation/src/components/examples.audioPlayer.d.ts.map +0 -1
  75. package/dist/documentation/src/components/examples.audioPlayer.js +0 -8
  76. package/dist/documentation/src/components/examples.badge.d.ts +0 -3
  77. package/dist/documentation/src/components/examples.badge.d.ts.map +0 -1
  78. package/dist/documentation/src/components/examples.badge.js +0 -9
  79. package/dist/documentation/src/components/examples.button.d.ts +0 -3
  80. package/dist/documentation/src/components/examples.button.d.ts.map +0 -1
  81. package/dist/documentation/src/components/examples.button.js +0 -9
  82. package/dist/documentation/src/components/examples.cardTab.d.ts +0 -3
  83. package/dist/documentation/src/components/examples.cardTab.d.ts.map +0 -1
  84. package/dist/documentation/src/components/examples.cardTab.js +0 -7
  85. package/dist/documentation/src/components/examples.checkbox.d.ts +0 -3
  86. package/dist/documentation/src/components/examples.checkbox.d.ts.map +0 -1
  87. package/dist/documentation/src/components/examples.checkbox.js +0 -13
  88. package/dist/documentation/src/components/examples.currencyInput.d.ts +0 -3
  89. package/dist/documentation/src/components/examples.currencyInput.d.ts.map +0 -1
  90. package/dist/documentation/src/components/examples.currencyInput.js +0 -9
  91. package/dist/documentation/src/components/examples.divider.d.ts +0 -3
  92. package/dist/documentation/src/components/examples.divider.d.ts.map +0 -1
  93. package/dist/documentation/src/components/examples.divider.js +0 -7
  94. package/dist/documentation/src/components/examples.drawer.d.ts +0 -3
  95. package/dist/documentation/src/components/examples.drawer.d.ts.map +0 -1
  96. package/dist/documentation/src/components/examples.drawer.js +0 -11
  97. package/dist/documentation/src/components/examples.iconButton.d.ts +0 -3
  98. package/dist/documentation/src/components/examples.iconButton.d.ts.map +0 -1
  99. package/dist/documentation/src/components/examples.iconButton.js +0 -9
  100. package/dist/documentation/src/components/examples.input.d.ts +0 -3
  101. package/dist/documentation/src/components/examples.input.d.ts.map +0 -1
  102. package/dist/documentation/src/components/examples.input.js +0 -9
  103. package/dist/documentation/src/components/examples.maskedInput.d.ts +0 -3
  104. package/dist/documentation/src/components/examples.maskedInput.d.ts.map +0 -1
  105. package/dist/documentation/src/components/examples.maskedInput.js +0 -9
  106. package/dist/documentation/src/components/examples.modal.d.ts +0 -3
  107. package/dist/documentation/src/components/examples.modal.d.ts.map +0 -1
  108. package/dist/documentation/src/components/examples.modal.js +0 -10
  109. package/dist/documentation/src/components/examples.multiSelect.d.ts +0 -3
  110. package/dist/documentation/src/components/examples.multiSelect.d.ts.map +0 -1
  111. package/dist/documentation/src/components/examples.multiSelect.js +0 -92
  112. package/dist/documentation/src/components/examples.phoneInput.d.ts +0 -3
  113. package/dist/documentation/src/components/examples.phoneInput.d.ts.map +0 -1
  114. package/dist/documentation/src/components/examples.phoneInput.js +0 -26
  115. package/dist/documentation/src/components/examples.radio.d.ts +0 -3
  116. package/dist/documentation/src/components/examples.radio.d.ts.map +0 -1
  117. package/dist/documentation/src/components/examples.radio.js +0 -11
  118. package/dist/documentation/src/components/examples.slider.d.ts +0 -3
  119. package/dist/documentation/src/components/examples.slider.d.ts.map +0 -1
  120. package/dist/documentation/src/components/examples.slider.js +0 -10
  121. package/dist/documentation/src/components/examples.switch.d.ts +0 -3
  122. package/dist/documentation/src/components/examples.switch.d.ts.map +0 -1
  123. package/dist/documentation/src/components/examples.switch.js +0 -20
  124. package/dist/documentation/src/components/examples.tab.d.ts +0 -3
  125. package/dist/documentation/src/components/examples.tab.d.ts.map +0 -1
  126. package/dist/documentation/src/components/examples.tab.js +0 -7
  127. package/dist/documentation/src/components/examples.texarea.d.ts +0 -3
  128. package/dist/documentation/src/components/examples.texarea.d.ts.map +0 -1
  129. package/dist/documentation/src/components/examples.texarea.js +0 -34
  130. package/dist/documentation/src/components/examples.tooltip.d.ts +0 -3
  131. package/dist/documentation/src/components/examples.tooltip.d.ts.map +0 -1
  132. package/dist/documentation/src/components/examples.tooltip.js +0 -8
  133. package/dist/documentation/src/main.d.ts +0 -3
  134. package/dist/documentation/src/main.d.ts.map +0 -1
  135. package/dist/documentation/src/main.js +0 -7
  136. package/dist/documentation/src/ui/box.d.ts +0 -8
  137. package/dist/documentation/src/ui/box.d.ts.map +0 -1
  138. package/dist/documentation/src/ui/box.js +0 -5
  139. package/dist/documentation/src/ui/row.d.ts +0 -7
  140. package/dist/documentation/src/ui/row.d.ts.map +0 -1
  141. package/dist/documentation/src/ui/row.js +0 -5
  142. package/dist/documentation/vite.config.d.ts +0 -3
  143. package/dist/documentation/vite.config.d.ts.map +0 -1
  144. package/dist/documentation/vite.config.js +0 -12
  145. package/dist/src/components/alert/alertContainer/index.d.ts.map +0 -1
  146. package/dist/src/components/alert/alertContent/index.d.ts.map +0 -1
  147. package/dist/src/components/alert/alertDescription/index.d.ts.map +0 -1
  148. package/dist/src/components/alert/alertIcon/index.d.ts.map +0 -1
  149. package/dist/src/components/alert/alertTitle/index.d.ts.map +0 -1
  150. package/dist/src/components/audioPlayer/index.d.ts.map +0 -1
  151. package/dist/src/components/badge/index.d.ts.map +0 -1
  152. package/dist/src/components/button/index.d.ts.map +0 -1
  153. package/dist/src/components/cardTab/cardTabButton/index.d.ts.map +0 -1
  154. package/dist/src/components/cardTab/cardTabContainer/index.d.ts.map +0 -1
  155. package/dist/src/components/cardTab/cardTabContext.d.ts.map +0 -1
  156. package/dist/src/components/checkbox/index.d.ts.map +0 -1
  157. package/dist/src/components/currencyInput/index.d.ts.map +0 -1
  158. package/dist/src/components/divider/index.d.ts.map +0 -1
  159. package/dist/src/components/drawer/drawerContainer/index.d.ts.map +0 -1
  160. package/dist/src/components/drawer/drawerContext.d.ts.map +0 -1
  161. package/dist/src/components/drawer/drawerHeader/index.d.ts.map +0 -1
  162. package/dist/src/components/fieldError/index.d.ts.map +0 -1
  163. package/dist/src/components/fieldLabel/index.d.ts.map +0 -1
  164. package/dist/src/components/fieldWrapper/index.d.ts.map +0 -1
  165. package/dist/src/components/iconButton/index.d.ts.map +0 -1
  166. package/dist/src/components/input/index.d.ts.map +0 -1
  167. package/dist/src/components/maskedInput/index.d.ts.map +0 -1
  168. package/dist/src/components/modal/modalContainer/index.d.ts.map +0 -1
  169. package/dist/src/components/modal/modalContext.d.ts.map +0 -1
  170. package/dist/src/components/modal/modalFooter/index.d.ts.map +0 -1
  171. package/dist/src/components/modal/modalHeader/index.d.ts.map +0 -1
  172. package/dist/src/components/multiSelect/index.d.ts.map +0 -1
  173. package/dist/src/components/multiSelect/multiSelectChevron/index.d.ts.map +0 -1
  174. package/dist/src/components/multiSelect/multiSelectContainer/index.d.ts.map +0 -1
  175. package/dist/src/components/multiSelect/multiSelectContent/index.d.ts.map +0 -1
  176. package/dist/src/components/multiSelect/multiSelectMark/index.d.ts.map +0 -1
  177. package/dist/src/components/multiSelect/multiSelectOption/index.d.ts.map +0 -1
  178. package/dist/src/components/multiSelect/multiSelectOptionsContainer/index.d.ts.map +0 -1
  179. package/dist/src/components/multiSelect/multiSelectOverlay/index.d.ts.map +0 -1
  180. package/dist/src/components/multiSelect/multiSelectSpinner/index.d.ts.map +0 -1
  181. package/dist/src/components/phoneInput/index.d.ts.map +0 -1
  182. package/dist/src/components/phoneInput/phoneInputContainer/index.d.ts.map +0 -1
  183. package/dist/src/components/phoneInput/phoneInputCountriesOverlay/index.d.ts.map +0 -1
  184. package/dist/src/components/phoneInput/phoneInputCountryOption/index.d.ts.map +0 -1
  185. package/dist/src/components/phoneInput/phoneInputCountryOptionsContainer/index.d.ts.map +0 -1
  186. package/dist/src/components/phoneInput/phoneInputCountrySelector/index.d.ts.map +0 -1
  187. package/dist/src/components/phoneInput/phoneInputMask/index.d.ts.map +0 -1
  188. package/dist/src/components/radio/radioBox/index.d.ts.map +0 -1
  189. package/dist/src/components/radio/radioContext.d.ts.map +0 -1
  190. package/dist/src/components/radio/radioGroup/index.d.ts.map +0 -1
  191. package/dist/src/components/slider/index.d.ts.map +0 -1
  192. package/dist/src/components/switch/index.d.ts.map +0 -1
  193. package/dist/src/components/tab/tabButton/index.d.ts.map +0 -1
  194. package/dist/src/components/tab/tabContainer/index.d.ts.map +0 -1
  195. package/dist/src/components/tab/tabContext.d.ts.map +0 -1
  196. package/dist/src/components/textarea/index.d.ts.map +0 -1
  197. package/dist/src/components/tooltip/index.d.ts.map +0 -1
  198. package/dist/src/hooks/useForm.d.ts.map +0 -1
  199. package/dist/src/hooks/useScopedParams.d.ts.map +0 -1
  200. package/dist/src/hooks/useScrollLock.d.ts.map +0 -1
  201. package/dist/src/hooks/useSlider.d.ts.map +0 -1
  202. package/dist/src/index.d.ts.map +0 -1
  203. package/dist/src/providers/formProvider.d.ts.map +0 -1
  204. package/dist/src/services/iconRenderer.d.ts.map +0 -1
  205. package/dist/src/services/maskCurrencyValues.d.ts.map +0 -1
  206. package/dist/vite.config.d.ts +0 -3
  207. package/dist/vite.config.d.ts.map +0 -1
  208. package/dist/vite.config.js +0 -24
  209. package/dist/vitest.config.d.ts +0 -3
  210. package/dist/vitest.config.d.ts.map +0 -1
  211. package/dist/vitest.config.js +0 -4
  212. package/documentation/css/reset.css +0 -38
  213. package/documentation/css/variables.css +0 -41
  214. package/documentation/index.html +0 -13
  215. package/documentation/src/app.tsx +0 -93
  216. package/documentation/src/components/examples.alert.tsx +0 -49
  217. package/documentation/src/components/examples.audioPlayer.tsx +0 -16
  218. package/documentation/src/components/examples.badge.tsx +0 -38
  219. package/documentation/src/components/examples.button.tsx +0 -66
  220. package/documentation/src/components/examples.cardTab.tsx +0 -36
  221. package/documentation/src/components/examples.checkbox.tsx +0 -94
  222. package/documentation/src/components/examples.currencyInput.tsx +0 -263
  223. package/documentation/src/components/examples.divider.tsx +0 -12
  224. package/documentation/src/components/examples.drawer.tsx +0 -43
  225. package/documentation/src/components/examples.iconButton.tsx +0 -78
  226. package/documentation/src/components/examples.input.tsx +0 -256
  227. package/documentation/src/components/examples.maskedInput.tsx +0 -274
  228. package/documentation/src/components/examples.modal.tsx +0 -31
  229. package/documentation/src/components/examples.multiSelect.tsx +0 -320
  230. package/documentation/src/components/examples.phoneInput.tsx +0 -262
  231. package/documentation/src/components/examples.radio.tsx +0 -149
  232. package/documentation/src/components/examples.slider.tsx +0 -28
  233. package/documentation/src/components/examples.switch.tsx +0 -180
  234. package/documentation/src/components/examples.tab.tsx +0 -36
  235. package/documentation/src/components/examples.texarea.tsx +0 -188
  236. package/documentation/src/components/examples.tooltip.tsx +0 -45
  237. package/documentation/src/main.tsx +0 -12
  238. package/documentation/src/ui/box.tsx +0 -17
  239. package/documentation/src/ui/row.tsx +0 -11
  240. package/documentation/vite.config.ts +0 -13
  241. package/src/components/alert/alertContainer/index.tsx +0 -87
  242. package/src/components/alert/alertContainer/styles.css +0 -33
  243. package/src/components/alert/alertContent/index.tsx +0 -53
  244. package/src/components/alert/alertContent/styles.css +0 -5
  245. package/src/components/alert/alertDescription/index.tsx +0 -57
  246. package/src/components/alert/alertDescription/styles.css +0 -7
  247. package/src/components/alert/alertIcon/index.tsx +0 -79
  248. package/src/components/alert/alertIcon/styles.css +0 -23
  249. package/src/components/alert/alertTitle/index.tsx +0 -54
  250. package/src/components/alert/alertTitle/styles.css +0 -7
  251. package/src/components/audioPlayer/index.tsx +0 -187
  252. package/src/components/audioPlayer/styles.css +0 -50
  253. package/src/components/badge/index.tsx +0 -80
  254. package/src/components/badge/styles.css +0 -145
  255. package/src/components/button/index.tsx +0 -104
  256. package/src/components/button/styles.css +0 -208
  257. package/src/components/cardTab/cardTabButton/index.tsx +0 -114
  258. package/src/components/cardTab/cardTabButton/styles.css +0 -30
  259. package/src/components/cardTab/cardTabContainer/index.tsx +0 -121
  260. package/src/components/cardTab/cardTabContainer/styles.css +0 -9
  261. package/src/components/cardTab/cardTabContext.tsx +0 -30
  262. package/src/components/checkbox/index.tsx +0 -158
  263. package/src/components/checkbox/styles.css +0 -78
  264. package/src/components/currencyInput/index.tsx +0 -312
  265. package/src/components/currencyInput/style.css +0 -226
  266. package/src/components/divider/index.tsx +0 -58
  267. package/src/components/divider/styles.css +0 -17
  268. package/src/components/drawer/drawerContainer/index.tsx +0 -123
  269. package/src/components/drawer/drawerContainer/styles.css +0 -46
  270. package/src/components/drawer/drawerContext.tsx +0 -26
  271. package/src/components/drawer/drawerHeader/index.tsx +0 -88
  272. package/src/components/drawer/drawerHeader/styles.css +0 -38
  273. package/src/components/fieldError/index.tsx +0 -43
  274. package/src/components/fieldError/styles.css +0 -6
  275. package/src/components/fieldLabel/index.tsx +0 -52
  276. package/src/components/fieldLabel/styles.css +0 -15
  277. package/src/components/fieldWrapper/index.tsx +0 -54
  278. package/src/components/fieldWrapper/styles.css +0 -7
  279. package/src/components/iconButton/index.tsx +0 -83
  280. package/src/components/iconButton/styles.css +0 -166
  281. package/src/components/input/index.tsx +0 -233
  282. package/src/components/input/style.css +0 -226
  283. package/src/components/maskedInput/index.tsx +0 -260
  284. package/src/components/maskedInput/style.css +0 -226
  285. package/src/components/modal/modalContainer/index.tsx +0 -127
  286. package/src/components/modal/modalContainer/styles.css +0 -37
  287. package/src/components/modal/modalContext.tsx +0 -26
  288. package/src/components/modal/modalFooter/index.tsx +0 -80
  289. package/src/components/modal/modalFooter/styles.css +0 -27
  290. package/src/components/modal/modalHeader/index.tsx +0 -99
  291. package/src/components/modal/modalHeader/styles.css +0 -38
  292. package/src/components/multiSelect/index.tsx +0 -319
  293. package/src/components/multiSelect/multiSelectChevron/index.tsx +0 -26
  294. package/src/components/multiSelect/multiSelectChevron/styles.css +0 -7
  295. package/src/components/multiSelect/multiSelectContainer/index.tsx +0 -51
  296. package/src/components/multiSelect/multiSelectContainer/styles.css +0 -134
  297. package/src/components/multiSelect/multiSelectContent/index.tsx +0 -15
  298. package/src/components/multiSelect/multiSelectContent/styles.css +0 -24
  299. package/src/components/multiSelect/multiSelectMark/index.tsx +0 -32
  300. package/src/components/multiSelect/multiSelectMark/styles.css +0 -44
  301. package/src/components/multiSelect/multiSelectOption/index.tsx +0 -25
  302. package/src/components/multiSelect/multiSelectOption/styles.css +0 -37
  303. package/src/components/multiSelect/multiSelectOptionsContainer/index.tsx +0 -81
  304. package/src/components/multiSelect/multiSelectOptionsContainer/styles.css +0 -45
  305. package/src/components/multiSelect/multiSelectOverlay/index.tsx +0 -14
  306. package/src/components/multiSelect/multiSelectOverlay/styles.css +0 -8
  307. package/src/components/multiSelect/multiSelectSpinner/index.tsx +0 -22
  308. package/src/components/multiSelect/multiSelectSpinner/styles.css +0 -12
  309. package/src/components/phoneInput/index.tsx +0 -332
  310. package/src/components/phoneInput/phoneInputContainer/index.tsx +0 -46
  311. package/src/components/phoneInput/phoneInputContainer/styles.css +0 -59
  312. package/src/components/phoneInput/phoneInputCountriesOverlay/index.tsx +0 -16
  313. package/src/components/phoneInput/phoneInputCountriesOverlay/styles.css +0 -8
  314. package/src/components/phoneInput/phoneInputCountryOption/index.tsx +0 -35
  315. package/src/components/phoneInput/phoneInputCountryOption/styles.css +0 -50
  316. package/src/components/phoneInput/phoneInputCountryOptionsContainer/index.tsx +0 -77
  317. package/src/components/phoneInput/phoneInputCountryOptionsContainer/styles.css +0 -59
  318. package/src/components/phoneInput/phoneInputCountrySelector/index.tsx +0 -37
  319. package/src/components/phoneInput/phoneInputCountrySelector/styles.css +0 -26
  320. package/src/components/phoneInput/phoneInputMask/index.tsx +0 -105
  321. package/src/components/phoneInput/phoneInputMask/style.css +0 -36
  322. package/src/components/radio/radioBox/index.tsx +0 -124
  323. package/src/components/radio/radioBox/styles.css +0 -95
  324. package/src/components/radio/radioContext.tsx +0 -34
  325. package/src/components/radio/radioGroup/index.tsx +0 -150
  326. package/src/components/radio/radioGroup/styles.css +0 -5
  327. package/src/components/slider/index.tsx +0 -132
  328. package/src/components/slider/styles.css +0 -45
  329. package/src/components/switch/index.tsx +0 -156
  330. package/src/components/switch/styles.css +0 -90
  331. package/src/components/tab/tabButton/index.tsx +0 -114
  332. package/src/components/tab/tabButton/styles.css +0 -41
  333. package/src/components/tab/tabContainer/index.tsx +0 -121
  334. package/src/components/tab/tabContainer/styles.css +0 -11
  335. package/src/components/tab/tabContext.tsx +0 -28
  336. package/src/components/textarea/index.tsx +0 -193
  337. package/src/components/textarea/styles.css +0 -93
  338. package/src/components/tooltip/index.tsx +0 -172
  339. package/src/components/tooltip/styles.css +0 -112
  340. package/src/hooks/useForm.ts +0 -55
  341. package/src/hooks/useScopedParams.ts +0 -111
  342. package/src/hooks/useScrollLock.ts +0 -52
  343. package/src/hooks/useSlider.ts +0 -52
  344. package/src/index.ts +0 -44
  345. package/src/providers/formProvider.tsx +0 -88
  346. package/src/services/iconRenderer.tsx +0 -23
  347. package/src/services/maskCurrencyValues.ts +0 -54
  348. package/src/utils/phoneInputUtilities.ts +0 -138
  349. package/tsconfig.json +0 -35
  350. package/variables.css +0 -41
  351. package/vite.config.ts +0 -24
  352. package/vitest.config.ts +0 -5
  353. /package/dist/{src/components → components}/alert/alertContainer/index.d.ts +0 -0
  354. /package/dist/{src/components → components}/alert/alertContent/index.d.ts +0 -0
  355. /package/dist/{src/components → components}/alert/alertContent/index.js +0 -0
  356. /package/dist/{src/components → components}/alert/alertDescription/index.d.ts +0 -0
  357. /package/dist/{src/components → components}/alert/alertDescription/index.js +0 -0
  358. /package/dist/{src/components → components}/alert/alertIcon/index.d.ts +0 -0
  359. /package/dist/{src/components → components}/alert/alertIcon/index.js +0 -0
  360. /package/dist/{src/components → components}/alert/alertTitle/index.d.ts +0 -0
  361. /package/dist/{src/components → components}/alert/alertTitle/index.js +0 -0
  362. /package/dist/{src/components → components}/audioPlayer/index.d.ts +0 -0
  363. /package/dist/{src/components → components}/audioPlayer/index.js +0 -0
  364. /package/dist/{src/components → components}/badge/index.d.ts +0 -0
  365. /package/dist/{src/components → components}/badge/index.js +0 -0
  366. /package/dist/{src/components → components}/button/index.d.ts +0 -0
  367. /package/dist/{src/components → components}/button/index.js +0 -0
  368. /package/dist/{src/components → components}/cardTab/cardTabButton/index.d.ts +0 -0
  369. /package/dist/{src/components → components}/cardTab/cardTabButton/index.js +0 -0
  370. /package/dist/{src/components → components}/cardTab/cardTabContainer/index.d.ts +0 -0
  371. /package/dist/{src/components → components}/cardTab/cardTabContainer/index.js +0 -0
  372. /package/dist/{src/components → components}/cardTab/cardTabContext.d.ts +0 -0
  373. /package/dist/{src/components → components}/cardTab/cardTabContext.js +0 -0
  374. /package/dist/{src/components → components}/checkbox/index.d.ts +0 -0
  375. /package/dist/{src/components → components}/checkbox/index.js +0 -0
  376. /package/dist/{src/components → components}/currencyInput/index.d.ts +0 -0
  377. /package/dist/{src/components → components}/currencyInput/index.js +0 -0
  378. /package/dist/{src/components → components}/divider/index.d.ts +0 -0
  379. /package/dist/{src/components → components}/divider/index.js +0 -0
  380. /package/dist/{src/components → components}/drawer/drawerContainer/index.d.ts +0 -0
  381. /package/dist/{src/components → components}/drawer/drawerContainer/index.js +0 -0
  382. /package/dist/{src/components → components}/drawer/drawerContext.d.ts +0 -0
  383. /package/dist/{src/components → components}/drawer/drawerContext.js +0 -0
  384. /package/dist/{src/components → components}/drawer/drawerHeader/index.d.ts +0 -0
  385. /package/dist/{src/components → components}/drawer/drawerHeader/index.js +0 -0
  386. /package/dist/{src/components → components}/fieldError/index.d.ts +0 -0
  387. /package/dist/{src/components → components}/fieldError/index.js +0 -0
  388. /package/dist/{src/components → components}/fieldLabel/index.d.ts +0 -0
  389. /package/dist/{src/components → components}/fieldLabel/index.js +0 -0
  390. /package/dist/{src/components → components}/fieldWrapper/index.d.ts +0 -0
  391. /package/dist/{src/components → components}/fieldWrapper/index.js +0 -0
  392. /package/dist/{src/components → components}/iconButton/index.d.ts +0 -0
  393. /package/dist/{src/components → components}/iconButton/index.js +0 -0
  394. /package/dist/{src/components → components}/input/index.d.ts +0 -0
  395. /package/dist/{src/components → components}/input/index.js +0 -0
  396. /package/dist/{src/components → components}/maskedInput/index.d.ts +0 -0
  397. /package/dist/{src/components → components}/maskedInput/index.js +0 -0
  398. /package/dist/{src/components → components}/modal/modalContainer/index.d.ts +0 -0
  399. /package/dist/{src/components → components}/modal/modalContainer/index.js +0 -0
  400. /package/dist/{src/components → components}/modal/modalContext.d.ts +0 -0
  401. /package/dist/{src/components → components}/modal/modalContext.js +0 -0
  402. /package/dist/{src/components → components}/modal/modalFooter/index.d.ts +0 -0
  403. /package/dist/{src/components → components}/modal/modalFooter/index.js +0 -0
  404. /package/dist/{src/components → components}/modal/modalHeader/index.d.ts +0 -0
  405. /package/dist/{src/components → components}/modal/modalHeader/index.js +0 -0
  406. /package/dist/{src/components → components}/multiSelect/index.d.ts +0 -0
  407. /package/dist/{src/components → components}/multiSelect/index.js +0 -0
  408. /package/dist/{src/components → components}/multiSelect/multiSelectChevron/index.d.ts +0 -0
  409. /package/dist/{src/components → components}/multiSelect/multiSelectChevron/index.js +0 -0
  410. /package/dist/{src/components → components}/multiSelect/multiSelectContainer/index.d.ts +0 -0
  411. /package/dist/{src/components → components}/multiSelect/multiSelectContainer/index.js +0 -0
  412. /package/dist/{src/components → components}/multiSelect/multiSelectContent/index.d.ts +0 -0
  413. /package/dist/{src/components → components}/multiSelect/multiSelectContent/index.js +0 -0
  414. /package/dist/{src/components → components}/multiSelect/multiSelectMark/index.d.ts +0 -0
  415. /package/dist/{src/components → components}/multiSelect/multiSelectMark/index.js +0 -0
  416. /package/dist/{src/components → components}/multiSelect/multiSelectOption/index.d.ts +0 -0
  417. /package/dist/{src/components → components}/multiSelect/multiSelectOption/index.js +0 -0
  418. /package/dist/{src/components → components}/multiSelect/multiSelectOptionsContainer/index.d.ts +0 -0
  419. /package/dist/{src/components → components}/multiSelect/multiSelectOptionsContainer/index.js +0 -0
  420. /package/dist/{src/components → components}/multiSelect/multiSelectOverlay/index.d.ts +0 -0
  421. /package/dist/{src/components → components}/multiSelect/multiSelectOverlay/index.js +0 -0
  422. /package/dist/{src/components → components}/multiSelect/multiSelectSpinner/index.d.ts +0 -0
  423. /package/dist/{src/components → components}/multiSelect/multiSelectSpinner/index.js +0 -0
  424. /package/dist/{src/components → components}/phoneInput/index.d.ts +0 -0
  425. /package/dist/{src/components → components}/phoneInput/index.js +0 -0
  426. /package/dist/{src/components → components}/phoneInput/phoneInputContainer/index.d.ts +0 -0
  427. /package/dist/{src/components → components}/phoneInput/phoneInputContainer/index.js +0 -0
  428. /package/dist/{src/components → components}/phoneInput/phoneInputCountriesOverlay/index.d.ts +0 -0
  429. /package/dist/{src/components → components}/phoneInput/phoneInputCountriesOverlay/index.js +0 -0
  430. /package/dist/{src/components → components}/phoneInput/phoneInputCountryOption/index.d.ts +0 -0
  431. /package/dist/{src/components → components}/phoneInput/phoneInputCountryOption/index.js +0 -0
  432. /package/dist/{src/components → components}/phoneInput/phoneInputCountryOptionsContainer/index.d.ts +0 -0
  433. /package/dist/{src/components → components}/phoneInput/phoneInputCountryOptionsContainer/index.js +0 -0
  434. /package/dist/{src/components → components}/phoneInput/phoneInputCountrySelector/index.d.ts +0 -0
  435. /package/dist/{src/components → components}/phoneInput/phoneInputCountrySelector/index.js +0 -0
  436. /package/dist/{src/components → components}/phoneInput/phoneInputMask/index.d.ts +0 -0
  437. /package/dist/{src/components → components}/phoneInput/phoneInputMask/index.js +0 -0
  438. /package/dist/{src/components → components}/radio/radioBox/index.d.ts +0 -0
  439. /package/dist/{src/components → components}/radio/radioBox/index.js +0 -0
  440. /package/dist/{src/components → components}/radio/radioContext.d.ts +0 -0
  441. /package/dist/{src/components → components}/radio/radioContext.js +0 -0
  442. /package/dist/{src/components → components}/radio/radioGroup/index.d.ts +0 -0
  443. /package/dist/{src/components → components}/radio/radioGroup/index.js +0 -0
  444. /package/dist/{src/components → components}/slider/index.d.ts +0 -0
  445. /package/dist/{src/components → components}/slider/index.js +0 -0
  446. /package/dist/{src/components → components}/switch/index.d.ts +0 -0
  447. /package/dist/{src/components → components}/switch/index.js +0 -0
  448. /package/dist/{src/components → components}/tab/tabButton/index.d.ts +0 -0
  449. /package/dist/{src/components → components}/tab/tabButton/index.js +0 -0
  450. /package/dist/{src/components → components}/tab/tabContainer/index.d.ts +0 -0
  451. /package/dist/{src/components → components}/tab/tabContainer/index.js +0 -0
  452. /package/dist/{src/components → components}/tab/tabContext.d.ts +0 -0
  453. /package/dist/{src/components → components}/tab/tabContext.js +0 -0
  454. /package/dist/{src/components → components}/textarea/index.d.ts +0 -0
  455. /package/dist/{src/components → components}/textarea/index.js +0 -0
  456. /package/dist/{src/components → components}/tooltip/index.d.ts +0 -0
  457. /package/dist/{src/components → components}/tooltip/index.js +0 -0
  458. /package/dist/{src/hooks → hooks}/useForm.d.ts +0 -0
  459. /package/dist/{src/hooks → hooks}/useForm.js +0 -0
  460. /package/dist/{src/hooks → hooks}/useScopedParams.d.ts +0 -0
  461. /package/dist/{src/hooks → hooks}/useScopedParams.js +0 -0
  462. /package/dist/{src/hooks → hooks}/useScrollLock.d.ts +0 -0
  463. /package/dist/{src/hooks → hooks}/useScrollLock.js +0 -0
  464. /package/dist/{src/hooks → hooks}/useSlider.d.ts +0 -0
  465. /package/dist/{src/hooks → hooks}/useSlider.js +0 -0
  466. /package/dist/{src/index.d.ts → index.d.ts} +0 -0
  467. /package/dist/{src/index.js → index.js} +0 -0
  468. /package/dist/{src/providers → providers}/formProvider.d.ts +0 -0
  469. /package/dist/{src/providers → providers}/formProvider.js +0 -0
  470. /package/dist/{src/services → services}/iconRenderer.d.ts +0 -0
  471. /package/dist/{src/services → services}/iconRenderer.js +0 -0
  472. /package/dist/{src/services → services}/maskCurrencyValues.d.ts +0 -0
  473. /package/dist/{src/services → services}/maskCurrencyValues.js +0 -0
  474. /package/dist/{src/utils → utils}/phoneInputUtilities.d.ts +0 -0
  475. /package/dist/{src/utils → utils}/phoneInputUtilities.js +0 -0
@@ -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 };