@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,87 +0,0 @@
1
- import { createContext, HTMLAttributes, ReactNode, useContext } from "react";
2
- import { AlertTitle } from "../alertTitle";
3
- import "./styles.css";
4
-
5
- type AlertContainerProps = {
6
- schema: "success" | "danger" | "warning" | "info";
7
- } & HTMLAttributes<HTMLDivElement>;
8
-
9
- const AlertContainerContext = createContext({} as AlertContainerProps);
10
-
11
- function useAlertContainer() {
12
- return useContext(AlertContainerContext);
13
- }
14
-
15
- /**
16
- * AlertContainer component - used to display alert messages with different schemas
17
- *
18
- * @param props - AlertContainer component properties
19
- * @param props.schema - Alert color scheme and semantic meaning: "success" | "danger" | "warning" | "info"
20
- *
21
- * **...Other valid HTML properties for div**
22
- *
23
- * @returns AlertContainer JSX element with context provider
24
- *
25
- * @example
26
- * ```tsx
27
- * // Basic alert
28
- * <AlertContainer schema="info">
29
- * Alert message content
30
- * </AlertContainer>
31
- *
32
- * // Success alert
33
- * <AlertContainer schema="success">
34
- * Operation completed successfully!
35
- * </AlertContainer>
36
- *
37
- * // Alert with title
38
- * <AlertContainer schema="warning">
39
- * <AlertTitle>Warning</AlertTitle>
40
- * Please check your input data.
41
- * </AlertContainer>
42
- *
43
- * // Danger alert
44
- * <AlertContainer schema="danger">
45
- * <AlertTitle>Error</AlertTitle>
46
- * Something went wrong. Please try again.
47
- * </AlertContainer>
48
- * ```
49
- */
50
-
51
- function AlertContainer(props: AlertContainerProps) {
52
- const { schema, children, className: baseClassName, ...rest } = props;
53
-
54
- const hasAlertTitle = (children: ReactNode): boolean => {
55
- let found = false;
56
- const searchForAlertTitle = (nodes: ReactNode) => {
57
- if (Array.isArray(nodes)) {
58
- nodes.forEach(searchForAlertTitle);
59
- } else if (nodes && typeof nodes === "object" && "type" in nodes) {
60
- if (nodes.type === AlertTitle) {
61
- found = true;
62
- } else if (nodes.props && nodes.props.children) {
63
- searchForAlertTitle(nodes.props.children);
64
- }
65
- }
66
- };
67
- searchForAlertTitle(children);
68
- return found;
69
- };
70
-
71
- const shouldAlignCenter = !hasAlertTitle(children);
72
- const finalClassName = shouldAlignCenter
73
- ? "nonExistsAlertTitle"
74
- : "existsAlertTitle";
75
-
76
- const className = `arkynAlertContainer ${schema} ${finalClassName} ${baseClassName}`;
77
-
78
- return (
79
- <AlertContainerContext.Provider value={props}>
80
- <div className={className.trim()} {...rest}>
81
- {children}
82
- </div>
83
- </AlertContainerContext.Provider>
84
- );
85
- }
86
-
87
- export { AlertContainer, useAlertContainer };
@@ -1,33 +0,0 @@
1
- .arkynAlertContainer {
2
- display: flex;
3
- align-items: start;
4
- gap: 16px;
5
- padding: 16px;
6
-
7
- border: 1px solid transparent;
8
- border-radius: 6px;
9
- }
10
-
11
- .arkynAlertContainer.nonExistsAlertTitle {
12
- align-items: center;
13
- }
14
-
15
- .arkynAlertContainer.danger {
16
- background: rgba(var(--spotlight-danger), 0.1);
17
- border-color: rgba(var(--spotlight-danger), 0.4);
18
- }
19
-
20
- .arkynAlertContainer.success {
21
- background: rgba(var(--spotlight-success), 0.1);
22
- border-color: rgba(var(--spotlight-success), 0.4);
23
- }
24
-
25
- .arkynAlertContainer.info {
26
- background: rgba(var(--spotlight-info), 0.1);
27
- border-color: rgba(var(--spotlight-info), 0.4);
28
- }
29
-
30
- .arkynAlertContainer.warning {
31
- background: rgba(var(--spotlight-warning), 0.1);
32
- border-color: rgba(var(--spotlight-warning), 0.4);
33
- }
@@ -1,53 +0,0 @@
1
- import { HTMLAttributes } from "react";
2
- import "./styles.css";
3
-
4
- type AlertContentProps = HTMLAttributes<HTMLDivElement>;
5
-
6
- /**
7
- * AlertContent component - used to wrap and style the main content area of alerts
8
- *
9
- * @param props - AlertContent component properties
10
- *
11
- * **...Other valid HTML properties for div**
12
- *
13
- * @returns AlertContent JSX element
14
- *
15
- * @example
16
- * ```tsx
17
- * // Basic alert content
18
- * <AlertContainer schema="info">
19
- * <AlertContent>
20
- * This is the main alert message content.
21
- * </AlertContent>
22
- * </AlertContainer>
23
- *
24
- * // Alert with title and content
25
- * <AlertContainer schema="success">
26
- * <AlertContent>
27
- * <AlertTitle>Success</AlertTitle>
28
- * Your operation has been completed successfully.
29
- * </AlertContent>
30
- * </AlertContainer>
31
- *
32
- * // Multiple content sections
33
- * <AlertContainer schema="warning">
34
- * <AlertContent>
35
- * <AlertTitle>Warning</AlertTitle>
36
- * <p>Please review the following items:</p>
37
- * <ul>
38
- * <li>Check your input data</li>
39
- * <li>Verify permissions</li>
40
- * </ul>
41
- * </AlertContent>
42
- * </AlertContainer>
43
- * ```
44
- */
45
-
46
- function AlertContent(props: AlertContentProps) {
47
- const { className: baseClassName, ...rest } = props;
48
- const className = `arkynAlertContent ${baseClassName}`;
49
-
50
- return <div className={className.trim()} {...rest} />;
51
- }
52
-
53
- export { AlertContent };
@@ -1,5 +0,0 @@
1
- .arkynAlertContent {
2
- display: flex;
3
- flex-direction: column;
4
- gap: 8px;
5
- }
@@ -1,57 +0,0 @@
1
- import { HTMLAttributes } from "react";
2
- import "./styles.css";
3
-
4
- type AlertDescriptionProps = HTMLAttributes<HTMLDivElement>;
5
-
6
- /**
7
- * AlertDescription component - used to display additional descriptive text in alerts
8
- *
9
- * @param props - AlertDescription component properties
10
- *
11
- * **...Other valid HTML properties for div**
12
- *
13
- * @returns AlertDescription JSX element
14
- *
15
- * @example
16
- * ```tsx
17
- * // Basic alert with description
18
- * <AlertContainer schema="info">
19
- * <AlertContent>
20
- * <AlertTitle>Information</AlertTitle>
21
- * <AlertDescription>
22
- * This is additional information to help you understand the context.
23
- * </AlertDescription>
24
- * </AlertContent>
25
- * </AlertContainer>
26
- *
27
- * // Success alert with description
28
- * <AlertContainer schema="success">
29
- * <AlertContent>
30
- * <AlertTitle>Upload Complete</AlertTitle>
31
- * <AlertDescription>
32
- * Your file has been successfully uploaded and processed.
33
- * </AlertDescription>
34
- * </AlertContent>
35
- * </AlertContainer>
36
- *
37
- * // Warning with detailed description
38
- * <AlertContainer schema="warning">
39
- * <AlertContent>
40
- * <AlertTitle>Storage Limit</AlertTitle>
41
- * <AlertDescription>
42
- * You have used 90% of your storage quota. Consider upgrading your plan
43
- * or removing unused files.
44
- * </AlertDescription>
45
- * </AlertContent>
46
- * </AlertContainer>
47
- * ```
48
- */
49
-
50
- function AlertDescription(props: AlertDescriptionProps) {
51
- const { className: baseClassName, ...rest } = props;
52
- const className = `arkynAlertDescription ${baseClassName}`;
53
-
54
- return <div className={className.trim()} {...rest} />;
55
- }
56
-
57
- export { AlertDescription };
@@ -1,7 +0,0 @@
1
- .arkynAlertDescription {
2
- font-size: 14px;
3
- font-weight: 400;
4
- line-height: 19.07px;
5
- text-align: left;
6
- color: var(--text-body);
7
- }
@@ -1,79 +0,0 @@
1
- import {
2
- AlertTriangle,
3
- CheckCircle2,
4
- Info,
5
- LucideProps,
6
- XCircle,
7
- } from "lucide-react";
8
-
9
- import { useAlertContainer } from "../alertContainer";
10
- import "./styles.css";
11
-
12
- type AlertIconProps = LucideProps;
13
-
14
- /**
15
- * AlertIcon component - automatically displays the appropriate icon based on the alert schema
16
- *
17
- * @param props - AlertIcon component properties
18
- *
19
- * **...Other valid Lucide icon properties**
20
- *
21
- * @returns AlertIcon JSX element with schema-specific icon
22
- *
23
- * @description
24
- * This component automatically selects and renders the appropriate icon based on the
25
- * AlertContainer's schema context:
26
- * - success: CheckCircle2 icon
27
- * - danger: XCircle icon
28
- * - warning: AlertTriangle icon
29
- * - info: Info icon
30
- *
31
- * @example
32
- * ```tsx
33
- * // Basic usage - icon automatically matches container schema
34
- * <AlertContainer schema="success">
35
- * <AlertIcon />
36
- * <AlertContent>
37
- * <AlertTitle>Success</AlertTitle>
38
- * <AlertDescription>Operation completed successfully.</AlertDescription>
39
- * </AlertContent>
40
- * </AlertContainer>
41
- *
42
- * // Warning alert with icon
43
- * <AlertContainer schema="warning">
44
- * <AlertIcon />
45
- * <AlertContent>
46
- * Please review your input before proceeding.
47
- * </AlertContent>
48
- * </AlertContainer>
49
- *
50
- * // Custom icon size
51
- * <AlertContainer schema="danger">
52
- * <AlertIcon size={24} />
53
- * <AlertContent>
54
- * <AlertTitle>Error</AlertTitle>
55
- * <AlertDescription>Something went wrong.</AlertDescription>
56
- * </AlertContent>
57
- * </AlertContainer>
58
- * ```
59
- */
60
-
61
- function AlertIcon(props: AlertIconProps) {
62
- const { className: baseClassName, ...rest } = props;
63
- const { schema } = useAlertContainer();
64
-
65
- const className = `arkynAlertIcon ${schema} ${baseClassName}`;
66
-
67
- switch (schema) {
68
- case "success":
69
- return <CheckCircle2 className={className} {...rest} />;
70
- case "danger":
71
- return <XCircle className={className} {...rest} />;
72
- case "warning":
73
- return <AlertTriangle className={className} {...rest} />;
74
- case "info":
75
- return <Info className={className} {...rest} />;
76
- }
77
- }
78
-
79
- export { AlertIcon };
@@ -1,23 +0,0 @@
1
- .arkynAlertIcon {
2
- min-width: 28px;
3
- min-height: 28px;
4
-
5
- max-width: 28px;
6
- max-height: 28px;
7
- }
8
-
9
- .arkynAlertIcon.danger {
10
- color: rgba(var(--spotlight-danger), 1);
11
- }
12
-
13
- .arkynAlertIcon.success {
14
- color: rgba(var(--spotlight-success), 1);
15
- }
16
-
17
- .arkynAlertIcon.info {
18
- color: rgba(var(--spotlight-info), 1);
19
- }
20
-
21
- .arkynAlertIcon.warning {
22
- color: rgba(var(--spotlight-warning), 1);
23
- }
@@ -1,54 +0,0 @@
1
- import { HTMLAttributes } from "react";
2
- import "./styles.css";
3
-
4
- type AlertTitleProps = HTMLAttributes<HTMLDivElement>;
5
-
6
- /**
7
- * AlertTitle component - used to display the main title/heading of alerts
8
- *
9
- * @param props - AlertTitle component properties
10
- *
11
- * **...Other valid HTML properties for div**
12
- *
13
- * @returns AlertTitle JSX element
14
- *
15
- * @description
16
- * This component affects the layout of the AlertContainer. When present, the container
17
- * content will be aligned differently compared to alerts without a title.
18
- *
19
- * @example
20
- * ```tsx
21
- * // Basic alert with title
22
- * <AlertContainer schema="info">
23
- * <AlertTitle>Information</AlertTitle>
24
- * <AlertDescription>This is important information.</AlertDescription>
25
- * </AlertContainer>
26
- *
27
- * // Success alert with title and icon
28
- * <AlertContainer schema="success">
29
- * <AlertIcon />
30
- * <AlertTitle>Success!</AlertTitle>
31
- * <AlertDescription>Your operation was completed.</AlertDescription>
32
- * </AlertContainer>
33
- *
34
- * // Error alert with custom styling
35
- * <AlertContainer schema="danger">
36
- * <AlertIcon />
37
- * <AlertTitle className="custom-title">
38
- * Critical Error
39
- * </AlertTitle>
40
- * <AlertDescription>
41
- * Please contact support immediately.
42
- * </AlertDescription>
43
- * </AlertContainer>
44
- * ```
45
- */
46
-
47
- function AlertTitle(props: AlertTitleProps) {
48
- const { className: baseClassName, ...rest } = props;
49
- const className = `arkynAlertTitle ${baseClassName}`;
50
-
51
- return <div className={className.trim()} {...rest} />;
52
- }
53
-
54
- export { AlertTitle };
@@ -1,7 +0,0 @@
1
- .arkynAlertTitle {
2
- font-size: 16px;
3
- font-weight: 600;
4
- line-height: 17px;
5
- text-align: left;
6
- color: var(--text-heading);
7
- }
@@ -1,187 +0,0 @@
1
- import { Pause, Play } from "lucide-react";
2
- import { AudioHTMLAttributes, useEffect, useRef, useState } from "react";
3
-
4
- import { useSlider } from "../../hooks/useSlider";
5
- import { Slider } from "../slider";
6
- import "./styles.css";
7
-
8
- type AudioInformationProps = {
9
- currentTime: number;
10
- totalTime: number;
11
- formattedCurrentTime: string;
12
- formattedTotalTime: string;
13
- };
14
-
15
- type AudioPlayerProps = Omit<
16
- AudioHTMLAttributes<HTMLAudioElement>,
17
- "onEnded" | "src"
18
- > & {
19
- src: string;
20
- disabled?: boolean;
21
- onPlayAudio?: (props: AudioInformationProps) => void;
22
- onPauseAudio?: (props: AudioInformationProps) => void;
23
- };
24
-
25
- /**
26
- * AudioPlayer component - used to play audio files with playback controls
27
- *
28
- * @param props - AudioPlayer component properties
29
- * @param props.src - Audio source URL (required)
30
- * @param props.disabled - Whether the audio player is disabled. Default: false
31
- * @param props.onPlayAudio - Callback function called when audio starts playing
32
- * @param props.onPauseAudio - Callback function called when audio is paused
33
- *
34
- * **...Other valid HTML audio properties**
35
- *
36
- * @returns AudioPlayer JSX element
37
- *
38
- * @example
39
- * ```tsx
40
- * // Basic audio player
41
- * <AudioPlayer src="/audio/sample.mp3" />
42
- *
43
- * // Audio player with callbacks
44
- * <AudioPlayer
45
- * src="/audio/sample.mp3"
46
- * onPlayAudio={(info) => console.log('Playing:', info)}
47
- * onPauseAudio={(info) => console.log('Paused:', info)}
48
- * />
49
- *
50
- * // Disabled audio player
51
- * <AudioPlayer
52
- * src="/audio/sample.mp3"
53
- * disabled
54
- * />
55
- *
56
- * // Audio player with additional HTML audio attributes
57
- * <AudioPlayer
58
- * src="/audio/sample.mp3"
59
- * loop
60
- * preload="metadata"
61
- * onPlayAudio={(info) => {
62
- * console.log(`Current: ${info.formattedCurrentTime}`);
63
- * console.log(`Total: ${info.formattedTotalTime}`);
64
- * }}
65
- * />
66
- * ```
67
- */
68
-
69
- function AudioPlayer(props: AudioPlayerProps) {
70
- const { onPlayAudio, onPauseAudio, disabled, ...rest } = props;
71
-
72
- const [sliderValue, setSliderValue] = useSlider(0);
73
- const [isPlaying, setIsPlaying] = useState(false);
74
- const [isDragging, setIsDragging] = useState(false);
75
-
76
- const audioReference = useRef<HTMLAudioElement>(null);
77
-
78
- const currentTime = audioReference.current?.currentTime;
79
- const totalTime = audioReference.current?.duration;
80
-
81
- const formattedCurrentTime = formatTime(currentTime);
82
- const formattedTotalTime = formatTime(totalTime);
83
-
84
- const audioInformation: AudioInformationProps = {
85
- totalTime,
86
- currentTime,
87
- formattedCurrentTime,
88
- formattedTotalTime,
89
- };
90
-
91
- function formatTime(time?: number) {
92
- if (!time) return "00:00";
93
-
94
- const minutes = Math.floor(time / 60);
95
- const seconds = Math.floor(time % 60);
96
-
97
- const formattedMinutes = String(minutes).padStart(2, "0");
98
- const formattedSeconds = String(seconds).padStart(2, "0");
99
-
100
- return `${formattedMinutes}:${formattedSeconds}`;
101
- }
102
-
103
- function handlePlayAudio() {
104
- const audioElement = audioReference.current;
105
- if (!audioElement) return;
106
- if (props.onPlayAudio) props.onPlayAudio(audioInformation);
107
- audioElement.play();
108
- setIsPlaying(true);
109
- }
110
-
111
- function handlePauseAudio() {
112
- const audioElement = audioReference.current;
113
- if (!audioElement) return;
114
- if (props.onPauseAudio) props.onPauseAudio(audioInformation);
115
- audioElement.pause();
116
- setIsPlaying(false);
117
- }
118
-
119
- function handleToggleAudio() {
120
- if (isPlaying) handlePauseAudio();
121
- else handlePlayAudio();
122
- }
123
-
124
- function handleSliderChange(value: number) {
125
- const audioElement = audioReference.current;
126
- if (!audioElement) return;
127
-
128
- const totalTime = audioElement.duration;
129
- const currentTime = (value / 100) * totalTime;
130
-
131
- audioElement.currentTime = currentTime;
132
- }
133
-
134
- if (isDragging || !isPlaying) {
135
- audioReference.current?.pause();
136
- } else if (isPlaying) {
137
- audioReference.current?.play();
138
- }
139
-
140
- useEffect(() => {
141
- const audioElement = audioReference.current;
142
- if (!audioElement) return;
143
-
144
- const handleTimeUpdate = () => {
145
- const totalTime = audioElement.duration;
146
- const currentTime = audioElement.currentTime;
147
-
148
- const value = (currentTime / totalTime) * 100;
149
- setSliderValue(value);
150
- };
151
-
152
- audioElement.addEventListener("timeupdate", handleTimeUpdate);
153
-
154
- return () => {
155
- audioElement.removeEventListener("timeupdate", handleTimeUpdate);
156
- };
157
- }, []);
158
-
159
- return (
160
- <div className="arkynAudioPlayer">
161
- <audio
162
- {...rest}
163
- ref={audioReference}
164
- src={props.src}
165
- onEnded={handlePauseAudio}
166
- />
167
-
168
- <button type="button" disabled={disabled} onClick={handleToggleAudio}>
169
- {isPlaying && <Pause />}
170
- {!isPlaying && <Play />}
171
- </button>
172
-
173
- <p>{formattedCurrentTime}</p>
174
-
175
- <Slider
176
- value={sliderValue}
177
- onChange={handleSliderChange}
178
- onDragging={setIsDragging}
179
- disabled={disabled}
180
- />
181
-
182
- <p>{formattedTotalTime}</p>
183
- </div>
184
- );
185
- }
186
-
187
- export { AudioPlayer };
@@ -1,50 +0,0 @@
1
- .arkynAudioPlayer {
2
- display: flex;
3
- align-items: center;
4
- gap: 8px;
5
- }
6
-
7
- .arkynAudioPlayer button {
8
- display: flex;
9
- align-items: center;
10
- justify-content: center;
11
-
12
- border: none;
13
- border-radius: 50%;
14
-
15
- min-height: 40px;
16
- min-width: 40px;
17
- max-height: 40px;
18
- max-width: 40px;
19
-
20
- background-color: rgba(var(--spotlight-primary), 1);
21
- }
22
-
23
- .arkynAudioPlayer button:hover:not(:disabled) {
24
- cursor: pointer;
25
- background-color: rgba(var(--spotlight-primary), 0.8);
26
- }
27
-
28
- .arkynAudioPlayer button:disabled {
29
- cursor: not-allowed;
30
- opacity: 0.2;
31
- }
32
-
33
- .arkynAudioPlayer button svg {
34
- fill: #fff;
35
- stroke: #fff;
36
-
37
- min-height: 20px;
38
- min-width: 20px;
39
- max-height: 20px;
40
- max-width: 20px;
41
- }
42
-
43
- .arkynAudioPlayer p {
44
- font-size: 12px;
45
- font-weight: 400;
46
- line-height: 12px;
47
- text-align: left;
48
- color: var(--text-body);
49
- user-select: none;
50
- }