@banzamel/mineralui 0.9.0 → 0.10.0

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 (783) hide show
  1. package/README.md +152 -151
  2. package/dist/AmericanExpressIcon-Bpk-Yz4y.js +1794 -0
  3. package/dist/AmericanExpressIcon-Bpk-Yz4y.js.map +1 -0
  4. package/dist/AmericanExpressIcon-Duhw7WXn.cjs +2 -0
  5. package/dist/AmericanExpressIcon-Duhw7WXn.cjs.map +1 -0
  6. package/dist/AppShell-BGFVRml6.js +659 -0
  7. package/dist/AppShell-BGFVRml6.js.map +1 -0
  8. package/dist/AppShell-ButYSI7U.cjs +2 -0
  9. package/dist/AppShell-ButYSI7U.cjs.map +1 -0
  10. package/dist/ArrowDownIcon-DzDirevG.js +21 -0
  11. package/dist/ArrowDownIcon-DzDirevG.js.map +1 -0
  12. package/dist/ArrowDownIcon-EfyFLBHR.cjs +2 -0
  13. package/dist/ArrowDownIcon-EfyFLBHR.cjs.map +1 -0
  14. package/dist/Avatar-Ba4TdSXp.cjs +2 -0
  15. package/dist/Avatar-Ba4TdSXp.cjs.map +1 -0
  16. package/dist/Avatar-BzokUdR4.js +50 -0
  17. package/dist/Avatar-BzokUdR4.js.map +1 -0
  18. package/dist/Badge-BF8-zXDl.js +15 -0
  19. package/dist/Badge-BF8-zXDl.js.map +1 -0
  20. package/dist/Badge-CivRCrzY.cjs +2 -0
  21. package/dist/Badge-CivRCrzY.cjs.map +1 -0
  22. package/dist/BrandMoreIcons-Cb4cXa_M.cjs +2 -0
  23. package/dist/BrandMoreIcons-Cb4cXa_M.cjs.map +1 -0
  24. package/dist/BrandMoreIcons-DnusZA-G.js +825 -0
  25. package/dist/BrandMoreIcons-DnusZA-G.js.map +1 -0
  26. package/dist/Button-BUd8Dkdx.cjs +2 -0
  27. package/dist/Button-BUd8Dkdx.cjs.map +1 -0
  28. package/dist/Button-BnxXh7zp.js +52 -0
  29. package/dist/Button-BnxXh7zp.js.map +1 -0
  30. package/dist/CalendarBoard-DidNBym4.js +998 -0
  31. package/dist/CalendarBoard-DidNBym4.js.map +1 -0
  32. package/dist/CalendarBoard-DvGimf8K.cjs +2 -0
  33. package/dist/CalendarBoard-DvGimf8K.cjs.map +1 -0
  34. package/dist/CalendarIcon-D74I9hJl.cjs +2 -0
  35. package/dist/CalendarIcon-D74I9hJl.cjs.map +1 -0
  36. package/dist/CalendarIcon-gvWV3ioD.js +29 -0
  37. package/dist/CalendarIcon-gvWV3ioD.js.map +1 -0
  38. package/dist/Card-AbIdSFmm.cjs +2 -0
  39. package/dist/Card-AbIdSFmm.cjs.map +1 -0
  40. package/dist/Card-B_4TR7gc.js +55 -0
  41. package/dist/Card-B_4TR7gc.js.map +1 -0
  42. package/dist/CardGrid-Cm0qx9ue.cjs +2 -0
  43. package/dist/CardGrid-Cm0qx9ue.cjs.map +1 -0
  44. package/dist/CardGrid-nqnCwmTD.js +581 -0
  45. package/dist/CardGrid-nqnCwmTD.js.map +1 -0
  46. package/dist/Checkbox-B4t7uzS2.js +60 -0
  47. package/dist/Checkbox-B4t7uzS2.js.map +1 -0
  48. package/dist/Checkbox-BXetIDRT.cjs +2 -0
  49. package/dist/Checkbox-BXetIDRT.cjs.map +1 -0
  50. package/dist/ChevronDownIcon-BDiyHPT4.js +15 -0
  51. package/dist/ChevronDownIcon-BDiyHPT4.js.map +1 -0
  52. package/dist/ChevronDownIcon-CkT_O5e5.cjs +2 -0
  53. package/dist/ChevronDownIcon-CkT_O5e5.cjs.map +1 -0
  54. package/dist/ChevronLeftIcon-DVwatRi0.cjs +2 -0
  55. package/dist/ChevronLeftIcon-DVwatRi0.cjs.map +1 -0
  56. package/dist/ChevronLeftIcon-lTktpFVi.js +15 -0
  57. package/dist/ChevronLeftIcon-lTktpFVi.js.map +1 -0
  58. package/dist/ChevronRightIcon-1oaUsxM2.js +15 -0
  59. package/dist/ChevronRightIcon-1oaUsxM2.js.map +1 -0
  60. package/dist/ChevronRightIcon-Bxqjb5s0.cjs +2 -0
  61. package/dist/ChevronRightIcon-Bxqjb5s0.cjs.map +1 -0
  62. package/dist/ClockIcon-CTHDAJUU.js +19 -0
  63. package/dist/ClockIcon-CTHDAJUU.js.map +1 -0
  64. package/dist/ClockIcon-DeDZlnTQ.cjs +2 -0
  65. package/dist/ClockIcon-DeDZlnTQ.cjs.map +1 -0
  66. package/dist/CloseIcon-5btDsUxB.cjs +2 -0
  67. package/dist/CloseIcon-5btDsUxB.cjs.map +1 -0
  68. package/dist/CloseIcon-DGl8CDLK.js +15 -0
  69. package/dist/CloseIcon-DGl8CDLK.js.map +1 -0
  70. package/dist/ColorPicker-BqE5PvW5.js +457 -0
  71. package/dist/ColorPicker-BqE5PvW5.js.map +1 -0
  72. package/dist/ColorPicker-DlrPaM8W.cjs +2 -0
  73. package/dist/ColorPicker-DlrPaM8W.cjs.map +1 -0
  74. package/dist/DropdownMenu-Bf1l4spO.js +139 -0
  75. package/dist/DropdownMenu-Bf1l4spO.js.map +1 -0
  76. package/dist/DropdownMenu-CvUG4QEC.cjs +2 -0
  77. package/dist/DropdownMenu-CvUG4QEC.cjs.map +1 -0
  78. package/dist/FileExtIcons-BecWBncW.js +145 -0
  79. package/dist/FileExtIcons-BecWBncW.js.map +1 -0
  80. package/dist/FileExtIcons-FTFddWmg.cjs +2 -0
  81. package/dist/FileExtIcons-FTFddWmg.cjs.map +1 -0
  82. package/dist/FolderOpenIcon-BAxBjkbK.js +31 -0
  83. package/dist/FolderOpenIcon-BAxBjkbK.js.map +1 -0
  84. package/dist/FolderOpenIcon-D2fsAXLM.cjs +2 -0
  85. package/dist/FolderOpenIcon-D2fsAXLM.cjs.map +1 -0
  86. package/dist/Heading-CALsycVL.cjs +2 -0
  87. package/dist/Heading-CALsycVL.cjs.map +1 -0
  88. package/dist/Heading-DtcgehrI.js +17 -0
  89. package/dist/Heading-DtcgehrI.js.map +1 -0
  90. package/dist/I18nProvider-CAnFu85r.js +69 -0
  91. package/dist/I18nProvider-CAnFu85r.js.map +1 -0
  92. package/dist/I18nProvider-CiYjTmgv.cjs +2 -0
  93. package/dist/I18nProvider-CiYjTmgv.cjs.map +1 -0
  94. package/dist/Icon-B-s6VJr5.cjs +2 -0
  95. package/dist/Icon-B-s6VJr5.cjs.map +1 -0
  96. package/dist/Icon-B848Vysm.js +45 -0
  97. package/dist/Icon-B848Vysm.js.map +1 -0
  98. package/dist/InputFile-C6Y-y8CQ.cjs +2 -0
  99. package/dist/InputFile-C6Y-y8CQ.cjs.map +1 -0
  100. package/dist/InputFile-DicC8Tbv.js +1356 -0
  101. package/dist/InputFile-DicC8Tbv.js.map +1 -0
  102. package/dist/InputSearch-BO_j0nAW.js +218 -0
  103. package/dist/InputSearch-BO_j0nAW.js.map +1 -0
  104. package/dist/InputSearch-Bk5YFz09.cjs +2 -0
  105. package/dist/InputSearch-Bk5YFz09.cjs.map +1 -0
  106. package/dist/Kbd-qcCkiDkW.js +55 -0
  107. package/dist/Kbd-qcCkiDkW.js.map +1 -0
  108. package/dist/Kbd-wmU-rhWO.cjs +2 -0
  109. package/dist/Kbd-wmU-rhWO.cjs.map +1 -0
  110. package/dist/Link-D3lmTu3R.js +30 -0
  111. package/dist/Link-D3lmTu3R.js.map +1 -0
  112. package/dist/Link-DSIStgFG.cjs +2 -0
  113. package/dist/Link-DSIStgFG.cjs.map +1 -0
  114. package/dist/MPagination-C-Ff4orL.js +103 -0
  115. package/dist/MPagination-C-Ff4orL.js.map +1 -0
  116. package/dist/MPagination-CVy14D9v.cjs +2 -0
  117. package/dist/MPagination-CVy14D9v.cjs.map +1 -0
  118. package/dist/MasonryItem-BsD5OuYt.js +368 -0
  119. package/dist/MasonryItem-BsD5OuYt.js.map +1 -0
  120. package/dist/MasonryItem-CBxzCuRr.cjs +2 -0
  121. package/dist/MasonryItem-CBxzCuRr.cjs.map +1 -0
  122. package/dist/MenuIcon-mX5bSTAp.js +20 -0
  123. package/dist/MenuIcon-mX5bSTAp.js.map +1 -0
  124. package/dist/MenuIcon-x1LjLPWp.cjs +2 -0
  125. package/dist/MenuIcon-x1LjLPWp.cjs.map +1 -0
  126. package/dist/Modal-BDDrW5HI.js +56 -0
  127. package/dist/Modal-BDDrW5HI.js.map +1 -0
  128. package/dist/Modal-DrtVZtb1.cjs +2 -0
  129. package/dist/Modal-DrtVZtb1.cjs.map +1 -0
  130. package/dist/NeutralIcon-BPZ3coWv.js +67 -0
  131. package/dist/NeutralIcon-BPZ3coWv.js.map +1 -0
  132. package/dist/NeutralIcon-CScIXs8_.cjs +2 -0
  133. package/dist/NeutralIcon-CScIXs8_.cjs.map +1 -0
  134. package/dist/PhoneIcon-CPGZ1D2-.cjs +2 -0
  135. package/dist/PhoneIcon-CPGZ1D2-.cjs.map +1 -0
  136. package/dist/PhoneIcon-DXlB7Uz0.js +38 -0
  137. package/dist/PhoneIcon-DXlB7Uz0.js.map +1 -0
  138. package/dist/Popconfirm-BJtyFjdY.js +200 -0
  139. package/dist/Popconfirm-BJtyFjdY.js.map +1 -0
  140. package/dist/Popconfirm-DQqBq_OP.cjs +2 -0
  141. package/dist/Popconfirm-DQqBq_OP.cjs.map +1 -0
  142. package/dist/Popover-BLYlu0jf.js +95 -0
  143. package/dist/Popover-BLYlu0jf.js.map +1 -0
  144. package/dist/Popover-BfCYHGUU.cjs +2 -0
  145. package/dist/Popover-BfCYHGUU.cjs.map +1 -0
  146. package/dist/Portal-CeUZ2xET.cjs +2 -0
  147. package/dist/Portal-CeUZ2xET.cjs.map +1 -0
  148. package/dist/Portal-s54PuE_l.js +10 -0
  149. package/dist/Portal-s54PuE_l.js.map +1 -0
  150. package/dist/QrCode-CP1sYiXF.js +371 -0
  151. package/dist/QrCode-CP1sYiXF.js.map +1 -0
  152. package/dist/QrCode-scUXUrNj.cjs +2 -0
  153. package/dist/QrCode-scUXUrNj.cjs.map +1 -0
  154. package/dist/SearchIcon-DDahNpBX.js +24 -0
  155. package/dist/SearchIcon-DDahNpBX.js.map +1 -0
  156. package/dist/SearchIcon-DeKs76RI.cjs +2 -0
  157. package/dist/SearchIcon-DeKs76RI.cjs.map +1 -0
  158. package/dist/Slider-BgHTWUXS.cjs +2 -0
  159. package/dist/Slider-BgHTWUXS.cjs.map +1 -0
  160. package/dist/Slider-BvnJPPAf.js +75 -0
  161. package/dist/Slider-BvnJPPAf.js.map +1 -0
  162. package/dist/Stack-DzFHpLMS.cjs +2 -0
  163. package/dist/Stack-DzFHpLMS.cjs.map +1 -0
  164. package/dist/Stack-xUXSOKqN.js +40 -0
  165. package/dist/Stack-xUXSOKqN.js.map +1 -0
  166. package/dist/StarFillIcon-D4HEOD6y.cjs +2 -0
  167. package/dist/StarFillIcon-D4HEOD6y.cjs.map +1 -0
  168. package/dist/StarFillIcon-tMWVk8tT.js +25 -0
  169. package/dist/StarFillIcon-tMWVk8tT.js.map +1 -0
  170. package/dist/Surface-BVk3r7ws.cjs +2 -0
  171. package/dist/Surface-BVk3r7ws.cjs.map +1 -0
  172. package/dist/Surface-E8hELelv.js +40 -0
  173. package/dist/Surface-E8hELelv.js.map +1 -0
  174. package/dist/Text-DOVuH0uw.js +39 -0
  175. package/dist/Text-DOVuH0uw.js.map +1 -0
  176. package/dist/Text-DUuY1RDL.cjs +2 -0
  177. package/dist/Text-DUuY1RDL.cjs.map +1 -0
  178. package/dist/ThemeProvider-CCWDIXiA.cjs +2 -0
  179. package/dist/ThemeProvider-CCWDIXiA.cjs.map +1 -0
  180. package/dist/ThemeProvider-COEImCNH.js +132 -0
  181. package/dist/ThemeProvider-COEImCNH.js.map +1 -0
  182. package/dist/TimePicker-BXbuLCDX.js +1204 -0
  183. package/dist/TimePicker-BXbuLCDX.js.map +1 -0
  184. package/dist/TimePicker-DDhkqier.cjs +2 -0
  185. package/dist/TimePicker-DDhkqier.cjs.map +1 -0
  186. package/dist/ToastProvider-DRz62qKU.cjs +2 -0
  187. package/dist/ToastProvider-DRz62qKU.cjs.map +1 -0
  188. package/dist/ToastProvider-Dlgk48v1.js +234 -0
  189. package/dist/ToastProvider-Dlgk48v1.js.map +1 -0
  190. package/dist/Toggle-BACN6Wrk.cjs +2 -0
  191. package/dist/Toggle-BACN6Wrk.cjs.map +1 -0
  192. package/dist/Toggle-D9M7aDWh.js +140 -0
  193. package/dist/Toggle-D9M7aDWh.js.map +1 -0
  194. package/dist/ZoomInIcon-CtoKX0Ri.cjs +2 -0
  195. package/dist/ZoomInIcon-CtoKX0Ri.cjs.map +1 -0
  196. package/dist/ZoomInIcon-UNvzc9zU.js +113 -0
  197. package/dist/ZoomInIcon-UNvzc9zU.js.map +1 -0
  198. package/dist/appearanceProps-65LbXIeI.cjs +2 -0
  199. package/dist/appearanceProps-65LbXIeI.cjs.map +1 -0
  200. package/dist/appearanceProps-8tN47e1u.js +8 -0
  201. package/dist/appearanceProps-8tN47e1u.js.map +1 -0
  202. package/dist/cards.cjs +2 -0
  203. package/dist/cards.d.ts +3 -0
  204. package/dist/cards.js +8 -0
  205. package/dist/cn-BIeeqGZv.js +8 -0
  206. package/dist/cn-BIeeqGZv.js.map +1 -0
  207. package/dist/cn-BOmEz3Rt.cjs +2 -0
  208. package/dist/cn-BOmEz3Rt.cjs.map +1 -0
  209. package/dist/components/cards/Card/Card.d.ts +5 -0
  210. package/dist/components/cards/Card/Card.types.d.ts +16 -0
  211. package/dist/components/cards/Card/index.d.ts +2 -0
  212. package/dist/components/cards/CardBusiness/CardBusiness.d.ts +2 -0
  213. package/dist/components/cards/CardBusiness/CardBusiness.types.d.ts +33 -0
  214. package/dist/components/cards/CardBusiness/index.d.ts +2 -0
  215. package/dist/components/cards/CardGrid/CardGrid.d.ts +2 -0
  216. package/dist/components/cards/CardGrid/CardGrid.types.d.ts +27 -0
  217. package/dist/components/cards/CardGrid/index.d.ts +2 -0
  218. package/dist/components/cards/CardPayment/CardPayment.d.ts +2 -0
  219. package/dist/components/cards/CardPayment/CardPayment.types.d.ts +13 -0
  220. package/dist/components/cards/CardPayment/index.d.ts +2 -0
  221. package/dist/components/cards/CardService/CardService.d.ts +2 -0
  222. package/dist/components/cards/CardService/CardService.types.d.ts +37 -0
  223. package/dist/components/cards/CardService/index.d.ts +2 -0
  224. package/dist/components/cards/index.d.ts +10 -0
  225. package/dist/components/controls/Button/Button.d.ts +2 -0
  226. package/dist/components/controls/Button/Button.types.d.ts +22 -0
  227. package/dist/components/controls/Button/index.d.ts +2 -0
  228. package/dist/components/controls/Checkbox/Checkbox.d.ts +3 -0
  229. package/dist/components/controls/Checkbox/Checkbox.types.d.ts +24 -0
  230. package/dist/components/controls/Checkbox/index.d.ts +2 -0
  231. package/dist/components/controls/Radio/Radio.d.ts +3 -0
  232. package/dist/components/controls/Radio/Radio.types.d.ts +47 -0
  233. package/dist/components/controls/Radio/RadioContext.d.ts +3 -0
  234. package/dist/components/controls/Radio/RadioGroup.d.ts +2 -0
  235. package/dist/components/controls/Radio/index.d.ts +3 -0
  236. package/dist/components/controls/Slider/Slider.d.ts +2 -0
  237. package/dist/components/controls/Slider/Slider.types.d.ts +17 -0
  238. package/dist/components/controls/Slider/index.d.ts +2 -0
  239. package/dist/components/controls/Toggle/Toggle.d.ts +2 -0
  240. package/dist/components/controls/Toggle/Toggle.types.d.ts +20 -0
  241. package/dist/components/controls/Toggle/index.d.ts +2 -0
  242. package/dist/components/controls/index.d.ts +10 -0
  243. package/dist/components/data/CalendarBoard/CalendarBoard.d.ts +7 -0
  244. package/dist/components/data/CalendarBoard/CalendarBoard.types.d.ts +117 -0
  245. package/dist/components/data/CalendarBoard/index.d.ts +2 -0
  246. package/dist/components/data/DataTable/DataTable.d.ts +2 -0
  247. package/dist/components/data/DataTable/DataTable.types.d.ts +34 -0
  248. package/dist/components/data/DataTable/index.d.ts +2 -0
  249. package/dist/components/data/TaskList/TaskList.d.ts +2 -0
  250. package/dist/components/data/TaskList/TaskList.types.d.ts +14 -0
  251. package/dist/components/data/TaskList/index.d.ts +2 -0
  252. package/dist/components/data/TreeView/TreeView.d.ts +2 -0
  253. package/dist/components/data/TreeView/TreeView.types.d.ts +63 -0
  254. package/dist/components/data/TreeView/index.d.ts +2 -0
  255. package/dist/components/data/index.d.ts +8 -0
  256. package/dist/components/display/Accordion/Accordion.d.ts +3 -0
  257. package/dist/components/display/Accordion/Accordion.types.d.ts +16 -0
  258. package/dist/components/display/Accordion/index.d.ts +2 -0
  259. package/dist/components/display/Collapsible/Collapsible.d.ts +2 -0
  260. package/dist/components/display/Collapsible/Collapsible.types.d.ts +10 -0
  261. package/dist/components/display/Collapsible/index.d.ts +2 -0
  262. package/dist/components/display/ColorPicker/ColorPicker.d.ts +2 -0
  263. package/dist/components/display/ColorPicker/ColorPicker.types.d.ts +11 -0
  264. package/dist/components/display/ColorPicker/index.d.ts +2 -0
  265. package/dist/components/display/CountUp/CountUp.d.ts +2 -0
  266. package/dist/components/display/CountUp/CountUp.types.d.ts +10 -0
  267. package/dist/components/display/CountUp/index.d.ts +2 -0
  268. package/dist/components/display/ProgressBar/ProgressBar.d.ts +2 -0
  269. package/dist/components/display/ProgressBar/ProgressBar.types.d.ts +12 -0
  270. package/dist/components/display/ProgressBar/index.d.ts +2 -0
  271. package/dist/components/display/QrCode/QrCode.d.ts +2 -0
  272. package/dist/components/display/QrCode/QrCode.types.d.ts +8 -0
  273. package/dist/components/display/QrCode/index.d.ts +2 -0
  274. package/dist/components/display/Rating/Rating.d.ts +2 -0
  275. package/dist/components/display/Rating/Rating.types.d.ts +10 -0
  276. package/dist/components/display/Rating/index.d.ts +2 -0
  277. package/dist/components/display/TimeAgo/TimeAgo.d.ts +2 -0
  278. package/dist/components/display/TimeAgo/TimeAgo.types.d.ts +11 -0
  279. package/dist/components/display/TimeAgo/index.d.ts +2 -0
  280. package/dist/components/display/index.d.ts +16 -0
  281. package/dist/components/dropdowns/Autocomplete/Autocomplete.d.ts +2 -0
  282. package/dist/components/dropdowns/Autocomplete/Autocomplete.types.d.ts +38 -0
  283. package/dist/components/dropdowns/Autocomplete/index.d.ts +2 -0
  284. package/dist/components/dropdowns/DatePicker/DatePicker.d.ts +2 -0
  285. package/dist/components/dropdowns/DatePicker/DatePicker.types.d.ts +33 -0
  286. package/dist/components/dropdowns/DatePicker/index.d.ts +2 -0
  287. package/dist/components/dropdowns/DateRangePicker/DateRangePicker.d.ts +2 -0
  288. package/dist/components/dropdowns/DateRangePicker/DateRangePicker.types.d.ts +50 -0
  289. package/dist/components/dropdowns/DateRangePicker/index.d.ts +2 -0
  290. package/dist/components/dropdowns/Select/Select.d.ts +2 -0
  291. package/dist/components/dropdowns/Select/Select.types.d.ts +39 -0
  292. package/dist/components/dropdowns/Select/index.d.ts +2 -0
  293. package/dist/components/dropdowns/TimePicker/TimePicker.d.ts +2 -0
  294. package/dist/components/dropdowns/TimePicker/TimePicker.types.d.ts +30 -0
  295. package/dist/components/dropdowns/TimePicker/index.d.ts +2 -0
  296. package/dist/components/dropdowns/index.d.ts +10 -0
  297. package/dist/components/feedback/Alert/Alert.d.ts +2 -0
  298. package/dist/components/feedback/Alert/Alert.types.d.ts +9 -0
  299. package/dist/components/feedback/Alert/index.d.ts +2 -0
  300. package/dist/components/feedback/Badge/Badge.d.ts +2 -0
  301. package/dist/components/feedback/Badge/Badge.types.d.ts +9 -0
  302. package/dist/components/feedback/Badge/index.d.ts +2 -0
  303. package/dist/components/feedback/Banner/Banner.d.ts +2 -0
  304. package/dist/components/feedback/Banner/Banner.types.d.ts +12 -0
  305. package/dist/components/feedback/Banner/index.d.ts +2 -0
  306. package/dist/components/feedback/Loader/Loader.d.ts +2 -0
  307. package/dist/components/feedback/Loader/Loader.types.d.ts +9 -0
  308. package/dist/components/feedback/Loader/index.d.ts +2 -0
  309. package/dist/components/feedback/Spinner/Spinner.d.ts +2 -0
  310. package/dist/components/feedback/Spinner/Spinner.types.d.ts +7 -0
  311. package/dist/components/feedback/Spinner/index.d.ts +2 -0
  312. package/dist/components/feedback/Tag/Tag.d.ts +2 -0
  313. package/dist/components/feedback/Tag/Tag.types.d.ts +12 -0
  314. package/dist/components/feedback/Tag/index.d.ts +2 -0
  315. package/dist/components/feedback/Toast/Toast.types.d.ts +27 -0
  316. package/dist/components/feedback/Toast/ToastContext.d.ts +3 -0
  317. package/dist/components/feedback/Toast/ToastItem.d.ts +5 -0
  318. package/dist/components/feedback/Toast/ToastProvider.d.ts +4 -0
  319. package/dist/components/feedback/Toast/index.d.ts +3 -0
  320. package/dist/components/feedback/index.d.ts +14 -0
  321. package/dist/components/form/Form/Form.d.ts +2 -0
  322. package/dist/components/form/Form/Form.types.d.ts +42 -0
  323. package/dist/components/form/Form/FormContext.d.ts +3 -0
  324. package/dist/components/form/Form/index.d.ts +5 -0
  325. package/dist/components/form/Form/useFormField.d.ts +13 -0
  326. package/dist/components/form/index.d.ts +2 -0
  327. package/dist/components/inputs/Input/Input.d.ts +3 -0
  328. package/dist/components/inputs/Input/Input.types.d.ts +49 -0
  329. package/dist/components/inputs/Input/index.d.ts +2 -0
  330. package/dist/components/inputs/InputCreditCard/InputCreditCard.d.ts +3 -0
  331. package/dist/components/inputs/InputCreditCard/InputCreditCard.types.d.ts +12 -0
  332. package/dist/components/inputs/InputCreditCard/index.d.ts +2 -0
  333. package/dist/components/inputs/InputCurrency/InputCurrency.d.ts +3 -0
  334. package/dist/components/inputs/InputCurrency/InputCurrency.types.d.ts +13 -0
  335. package/dist/components/inputs/InputCurrency/index.d.ts +2 -0
  336. package/dist/components/inputs/InputEmail/InputEmail.d.ts +3 -0
  337. package/dist/components/inputs/InputEmail/InputEmail.types.d.ts +8 -0
  338. package/dist/components/inputs/InputEmail/index.d.ts +2 -0
  339. package/dist/components/inputs/InputFile/CropEditor.d.ts +11 -0
  340. package/dist/components/inputs/InputFile/InputFile.d.ts +3 -0
  341. package/dist/components/inputs/InputFile/InputFile.types.d.ts +29 -0
  342. package/dist/components/inputs/InputFile/index.d.ts +2 -0
  343. package/dist/components/inputs/InputGroup/InputGroup.d.ts +3 -0
  344. package/dist/components/inputs/InputGroup/InputGroup.types.d.ts +14 -0
  345. package/dist/components/inputs/InputGroup/index.d.ts +2 -0
  346. package/dist/components/inputs/InputIBAN/InputIBAN.d.ts +3 -0
  347. package/dist/components/inputs/InputIBAN/InputIBAN.types.d.ts +10 -0
  348. package/dist/components/inputs/InputIBAN/index.d.ts +2 -0
  349. package/dist/components/inputs/InputName/InputName.d.ts +3 -0
  350. package/dist/components/inputs/InputName/InputName.types.d.ts +10 -0
  351. package/dist/components/inputs/InputName/index.d.ts +2 -0
  352. package/dist/components/inputs/InputNumber/InputNumber.d.ts +3 -0
  353. package/dist/components/inputs/InputNumber/InputNumber.types.d.ts +10 -0
  354. package/dist/components/inputs/InputNumber/index.d.ts +2 -0
  355. package/dist/components/inputs/InputOTP/InputOTP.d.ts +3 -0
  356. package/dist/components/inputs/InputOTP/InputOTP.types.d.ts +15 -0
  357. package/dist/components/inputs/InputOTP/index.d.ts +2 -0
  358. package/dist/components/inputs/InputPassword/InputPassword.d.ts +3 -0
  359. package/dist/components/inputs/InputPassword/InputPassword.types.d.ts +7 -0
  360. package/dist/components/inputs/InputPassword/index.d.ts +2 -0
  361. package/dist/components/inputs/InputPhone/InputPhone.d.ts +3 -0
  362. package/dist/components/inputs/InputPhone/InputPhone.types.d.ts +10 -0
  363. package/dist/components/inputs/InputPhone/index.d.ts +2 -0
  364. package/dist/components/inputs/InputPostCode/InputPostCode.d.ts +3 -0
  365. package/dist/components/inputs/InputPostCode/InputPostCode.types.d.ts +12 -0
  366. package/dist/components/inputs/InputPostCode/index.d.ts +2 -0
  367. package/dist/components/inputs/InputSearch/InputSearch.d.ts +3 -0
  368. package/dist/components/inputs/InputSearch/InputSearch.types.d.ts +5 -0
  369. package/dist/components/inputs/InputSearch/index.d.ts +2 -0
  370. package/dist/components/inputs/InputSlider/InputSlider.d.ts +3 -0
  371. package/dist/components/inputs/InputSlider/InputSlider.types.d.ts +12 -0
  372. package/dist/components/inputs/InputSlider/index.d.ts +2 -0
  373. package/dist/components/inputs/InputTaxId/InputTaxId.d.ts +3 -0
  374. package/dist/components/inputs/InputTaxId/InputTaxId.types.d.ts +11 -0
  375. package/dist/components/inputs/InputTaxId/index.d.ts +2 -0
  376. package/dist/components/inputs/Textarea/Textarea.d.ts +3 -0
  377. package/dist/components/inputs/Textarea/Textarea.types.d.ts +41 -0
  378. package/dist/components/inputs/Textarea/index.d.ts +2 -0
  379. package/dist/components/inputs/index.d.ts +34 -0
  380. package/dist/components/layout/AppShell/AppShell.d.ts +4 -0
  381. package/dist/components/layout/AppShell/AppShell.types.d.ts +7 -0
  382. package/dist/components/layout/AppShell/index.d.ts +2 -0
  383. package/dist/components/layout/Container/Container.d.ts +2 -0
  384. package/dist/components/layout/Container/Container.types.d.ts +10 -0
  385. package/dist/components/layout/Container/index.d.ts +2 -0
  386. package/dist/components/layout/Divider/Divider.d.ts +2 -0
  387. package/dist/components/layout/Divider/Divider.types.d.ts +9 -0
  388. package/dist/components/layout/Divider/index.d.ts +2 -0
  389. package/dist/components/layout/Grid/Grid.d.ts +2 -0
  390. package/dist/components/layout/Grid/Grid.types.d.ts +10 -0
  391. package/dist/components/layout/Grid/index.d.ts +2 -0
  392. package/dist/components/layout/Inline/Inline.d.ts +2 -0
  393. package/dist/components/layout/Inline/Inline.types.d.ts +15 -0
  394. package/dist/components/layout/Inline/index.d.ts +2 -0
  395. package/dist/components/layout/MBreadcrumb/MBreadcrumb.d.ts +2 -0
  396. package/dist/components/layout/MBreadcrumb/MBreadcrumb.types.d.ts +11 -0
  397. package/dist/components/layout/MBreadcrumb/index.d.ts +2 -0
  398. package/dist/components/layout/MFooter/MFooter.d.ts +2 -0
  399. package/dist/components/layout/MFooter/MFooter.types.d.ts +11 -0
  400. package/dist/components/layout/MFooter/index.d.ts +2 -0
  401. package/dist/components/layout/MGrid/MGrid.d.ts +3 -0
  402. package/dist/components/layout/MGrid/MGrid.types.d.ts +21 -0
  403. package/dist/components/layout/MGrid/index.d.ts +2 -0
  404. package/dist/components/layout/MHeader/MHeader.d.ts +2 -0
  405. package/dist/components/layout/MHeader/MHeader.types.d.ts +13 -0
  406. package/dist/components/layout/MHeader/index.d.ts +2 -0
  407. package/dist/components/layout/MNavbar/MNavbar.d.ts +2 -0
  408. package/dist/components/layout/MNavbar/MNavbar.types.d.ts +18 -0
  409. package/dist/components/layout/MNavbar/index.d.ts +2 -0
  410. package/dist/components/layout/MNavs/MNavs.d.ts +2 -0
  411. package/dist/components/layout/MNavs/MNavs.types.d.ts +19 -0
  412. package/dist/components/layout/MNavs/index.d.ts +2 -0
  413. package/dist/components/layout/MPagination/MPagination.d.ts +2 -0
  414. package/dist/components/layout/MPagination/MPagination.types.d.ts +10 -0
  415. package/dist/components/layout/MPagination/index.d.ts +2 -0
  416. package/dist/components/layout/MSidebar/MSidebar.d.ts +9 -0
  417. package/dist/components/layout/MSidebar/MSidebar.types.d.ts +60 -0
  418. package/dist/components/layout/MSidebar/index.d.ts +2 -0
  419. package/dist/components/layout/MSubNav/MSubNav.d.ts +2 -0
  420. package/dist/components/layout/MSubNav/MSubNav.types.d.ts +14 -0
  421. package/dist/components/layout/MSubNav/index.d.ts +2 -0
  422. package/dist/components/layout/MTabs/MTabs.d.ts +2 -0
  423. package/dist/components/layout/MTabs/MTabs.types.d.ts +28 -0
  424. package/dist/components/layout/MTabs/index.d.ts +2 -0
  425. package/dist/components/layout/Section/Section.d.ts +2 -0
  426. package/dist/components/layout/Section/Section.types.d.ts +13 -0
  427. package/dist/components/layout/Section/index.d.ts +2 -0
  428. package/dist/components/layout/Stack/Stack.d.ts +2 -0
  429. package/dist/components/layout/Stack/Stack.types.d.ts +11 -0
  430. package/dist/components/layout/Stack/index.d.ts +2 -0
  431. package/dist/components/layout/Surface/Surface.d.ts +2 -0
  432. package/dist/components/layout/Surface/Surface.types.d.ts +13 -0
  433. package/dist/components/layout/Surface/index.d.ts +2 -0
  434. package/dist/components/layout/index.d.ts +36 -0
  435. package/dist/components/media/Avatar/Avatar.d.ts +2 -0
  436. package/dist/components/media/Avatar/Avatar.types.d.ts +19 -0
  437. package/dist/components/media/Avatar/index.d.ts +2 -0
  438. package/dist/components/media/Carousel/Carousel.d.ts +2 -0
  439. package/dist/components/media/Carousel/Carousel.types.d.ts +12 -0
  440. package/dist/components/media/Carousel/index.d.ts +2 -0
  441. package/dist/components/media/Gallery/Gallery.d.ts +2 -0
  442. package/dist/components/media/Gallery/Gallery.types.d.ts +14 -0
  443. package/dist/components/media/Gallery/index.d.ts +2 -0
  444. package/dist/components/media/Image/Image.d.ts +2 -0
  445. package/dist/components/media/Image/Image.types.d.ts +13 -0
  446. package/dist/components/media/Image/index.d.ts +2 -0
  447. package/dist/components/media/Masonry/Masonry.d.ts +2 -0
  448. package/dist/components/media/Masonry/Masonry.types.d.ts +7 -0
  449. package/dist/components/media/Masonry/index.d.ts +2 -0
  450. package/dist/components/media/MasonryItem/MasonryItem.d.ts +3 -0
  451. package/dist/components/media/MasonryItem/MasonryItem.types.d.ts +14 -0
  452. package/dist/components/media/MasonryItem/index.d.ts +2 -0
  453. package/dist/components/media/ShowcaseCarousel/ShowcaseCarousel.d.ts +2 -0
  454. package/dist/components/media/ShowcaseCarousel/ShowcaseCarousel.types.d.ts +19 -0
  455. package/dist/components/media/ShowcaseCarousel/index.d.ts +2 -0
  456. package/dist/components/media/ShowcaseCarouselItem/ShowcaseCarouselItem.d.ts +3 -0
  457. package/dist/components/media/ShowcaseCarouselItem/ShowcaseCarouselItem.types.d.ts +16 -0
  458. package/dist/components/media/ShowcaseCarouselItem/index.d.ts +2 -0
  459. package/dist/components/media/index.d.ts +16 -0
  460. package/dist/components/overlays/Drawer/Drawer.d.ts +5 -0
  461. package/dist/components/overlays/Drawer/Drawer.types.d.ts +17 -0
  462. package/dist/components/overlays/Drawer/index.d.ts +2 -0
  463. package/dist/components/overlays/DropdownMenu/DropdownMenu.d.ts +9 -0
  464. package/dist/components/overlays/DropdownMenu/DropdownMenu.types.d.ts +32 -0
  465. package/dist/components/overlays/DropdownMenu/index.d.ts +2 -0
  466. package/dist/components/overlays/Modal/Modal.d.ts +2 -0
  467. package/dist/components/overlays/Modal/Modal.types.d.ts +12 -0
  468. package/dist/components/overlays/Modal/index.d.ts +2 -0
  469. package/dist/components/overlays/Popconfirm/Popconfirm.d.ts +2 -0
  470. package/dist/components/overlays/Popconfirm/Popconfirm.types.d.ts +18 -0
  471. package/dist/components/overlays/Popconfirm/index.d.ts +2 -0
  472. package/dist/components/overlays/Tooltip/Tooltip.d.ts +2 -0
  473. package/dist/components/overlays/Tooltip/Tooltip.types.d.ts +9 -0
  474. package/dist/components/overlays/Tooltip/index.d.ts +2 -0
  475. package/dist/components/overlays/index.d.ts +10 -0
  476. package/dist/components/primitives/Popover/Popover.d.ts +2 -0
  477. package/dist/components/primitives/Popover/Popover.types.d.ts +14 -0
  478. package/dist/components/primitives/Popover/index.d.ts +2 -0
  479. package/dist/components/primitives/Portal/Portal.d.ts +2 -0
  480. package/dist/components/primitives/Portal/Portal.types.d.ts +5 -0
  481. package/dist/components/primitives/Portal/index.d.ts +2 -0
  482. package/dist/components/primitives/index.d.ts +4 -0
  483. package/dist/components/typography/Code/Code.d.ts +2 -0
  484. package/dist/components/typography/Code/Code.types.d.ts +7 -0
  485. package/dist/components/typography/Code/index.d.ts +2 -0
  486. package/dist/components/typography/Heading/Heading.d.ts +281 -0
  487. package/dist/components/typography/Heading/Heading.types.d.ts +9 -0
  488. package/dist/components/typography/Heading/index.d.ts +2 -0
  489. package/dist/components/typography/Kbd/Kbd.d.ts +2 -0
  490. package/dist/components/typography/Kbd/Kbd.types.d.ts +6 -0
  491. package/dist/components/typography/Kbd/index.d.ts +2 -0
  492. package/dist/components/typography/Link/Link.d.ts +2 -0
  493. package/dist/components/typography/Link/Link.types.d.ts +15 -0
  494. package/dist/components/typography/Link/index.d.ts +2 -0
  495. package/dist/components/typography/List/List.d.ts +4 -0
  496. package/dist/components/typography/List/List.types.d.ts +8 -0
  497. package/dist/components/typography/List/index.d.ts +2 -0
  498. package/dist/components/typography/SubText/SubText.d.ts +2 -0
  499. package/dist/components/typography/SubText/SubText.types.d.ts +9 -0
  500. package/dist/components/typography/SubText/index.d.ts +2 -0
  501. package/dist/components/typography/Text/Text.d.ts +2 -0
  502. package/dist/components/typography/Text/Text.types.d.ts +16 -0
  503. package/dist/components/typography/Text/index.d.ts +2 -0
  504. package/dist/components/typography/index.d.ts +14 -0
  505. package/dist/controls.cjs +2 -0
  506. package/dist/controls.d.ts +3 -0
  507. package/dist/controls.js +6 -0
  508. package/dist/creditCards-CUM63Oia.cjs +2 -0
  509. package/dist/creditCards-CUM63Oia.cjs.map +1 -0
  510. package/dist/creditCards-pLOxJ6gs.js +129 -0
  511. package/dist/creditCards-pLOxJ6gs.js.map +1 -0
  512. package/dist/data.cjs +2 -0
  513. package/dist/data.d.ts +3 -0
  514. package/dist/data.js +16 -0
  515. package/dist/dateUtils-D3rghkxq.js +67 -0
  516. package/dist/dateUtils-D3rghkxq.js.map +1 -0
  517. package/dist/dateUtils-a8oMntCI.cjs +2 -0
  518. package/dist/dateUtils-a8oMntCI.cjs.map +1 -0
  519. package/dist/display.cjs +2 -0
  520. package/dist/display.d.ts +3 -0
  521. package/dist/display.js +6 -0
  522. package/dist/dropdowns.cjs +2 -0
  523. package/dist/dropdowns.d.ts +3 -0
  524. package/dist/dropdowns.js +4 -0
  525. package/dist/feedback.cjs +2 -0
  526. package/dist/feedback.d.ts +3 -0
  527. package/dist/feedback.js +6 -0
  528. package/dist/form.cjs +2 -0
  529. package/dist/form.d.ts +3 -0
  530. package/dist/form.js +3 -0
  531. package/dist/formatters-C3tjM3rj.cjs +2 -0
  532. package/dist/formatters-C3tjM3rj.cjs.map +1 -0
  533. package/dist/formatters-CtZdwLSU.js +89 -0
  534. package/dist/formatters-CtZdwLSU.js.map +1 -0
  535. package/dist/i18n/I18nProvider.d.ts +18 -0
  536. package/dist/i18n/index.d.ts +2 -0
  537. package/dist/i18n.cjs +2 -0
  538. package/dist/i18n.d.ts +2 -0
  539. package/dist/i18n.entry.d.ts +1 -0
  540. package/dist/i18n.js +3 -0
  541. package/dist/icons/Icon.d.ts +2 -0
  542. package/dist/icons/Icon.types.d.ts +8 -0
  543. package/dist/icons/glyphs/AmericanExpressIcon.d.ts +3 -0
  544. package/dist/icons/glyphs/ArrowDownIcon.d.ts +2 -0
  545. package/dist/icons/glyphs/ArrowLeftIcon.d.ts +2 -0
  546. package/dist/icons/glyphs/ArrowRightIcon.d.ts +2 -0
  547. package/dist/icons/glyphs/ArrowUpDownIcon.d.ts +2 -0
  548. package/dist/icons/glyphs/ArrowUpIcon.d.ts +2 -0
  549. package/dist/icons/glyphs/BankIcon.d.ts +2 -0
  550. package/dist/icons/glyphs/BellIcon.d.ts +2 -0
  551. package/dist/icons/glyphs/BoltIcon.d.ts +2 -0
  552. package/dist/icons/glyphs/BoxIcon.d.ts +2 -0
  553. package/dist/icons/glyphs/BrandIcons.d.ts +21 -0
  554. package/dist/icons/glyphs/BrandMoreIcons.d.ts +27 -0
  555. package/dist/icons/glyphs/BugIcon.d.ts +2 -0
  556. package/dist/icons/glyphs/BuildingIcon.d.ts +2 -0
  557. package/dist/icons/glyphs/CalendarIcon.d.ts +2 -0
  558. package/dist/icons/glyphs/CameraIcon.d.ts +2 -0
  559. package/dist/icons/glyphs/CartIcon.d.ts +2 -0
  560. package/dist/icons/glyphs/ChartIcon.d.ts +2 -0
  561. package/dist/icons/glyphs/ChatIcon.d.ts +2 -0
  562. package/dist/icons/glyphs/ChatsIcon.d.ts +2 -0
  563. package/dist/icons/glyphs/CheckCircleIcon.d.ts +2 -0
  564. package/dist/icons/glyphs/CheckIcon.d.ts +2 -0
  565. package/dist/icons/glyphs/ChevronDownIcon.d.ts +2 -0
  566. package/dist/icons/glyphs/ChevronLeftIcon.d.ts +2 -0
  567. package/dist/icons/glyphs/ChevronRightIcon.d.ts +2 -0
  568. package/dist/icons/glyphs/ChevronUpIcon.d.ts +2 -0
  569. package/dist/icons/glyphs/ClickIcon.d.ts +2 -0
  570. package/dist/icons/glyphs/ClipboardIcon.d.ts +2 -0
  571. package/dist/icons/glyphs/ClockIcon.d.ts +2 -0
  572. package/dist/icons/glyphs/CloseIcon.d.ts +2 -0
  573. package/dist/icons/glyphs/CommentIcon.d.ts +2 -0
  574. package/dist/icons/glyphs/CopyIcon.d.ts +2 -0
  575. package/dist/icons/glyphs/CopyrightIcon.d.ts +2 -0
  576. package/dist/icons/glyphs/CreditCardIcon.d.ts +2 -0
  577. package/dist/icons/glyphs/CubeIcon.d.ts +2 -0
  578. package/dist/icons/glyphs/DashboardIcon.d.ts +2 -0
  579. package/dist/icons/glyphs/DatabaseIcon.d.ts +2 -0
  580. package/dist/icons/glyphs/DeviceMonitorIcon.d.ts +2 -0
  581. package/dist/icons/glyphs/DevicePhoneIcon.d.ts +2 -0
  582. package/dist/icons/glyphs/DeviceTabletIcon.d.ts +2 -0
  583. package/dist/icons/glyphs/DocCopyIcon.d.ts +2 -0
  584. package/dist/icons/glyphs/DocIcon.d.ts +2 -0
  585. package/dist/icons/glyphs/DocPlusIcon.d.ts +2 -0
  586. package/dist/icons/glyphs/DollarIcon.d.ts +2 -0
  587. package/dist/icons/glyphs/DownloadIcon.d.ts +2 -0
  588. package/dist/icons/glyphs/EditIcon.d.ts +2 -0
  589. package/dist/icons/glyphs/EllipsisVerticalIcon.d.ts +2 -0
  590. package/dist/icons/glyphs/ErrorIcon.d.ts +2 -0
  591. package/dist/icons/glyphs/EuroIcon.d.ts +2 -0
  592. package/dist/icons/glyphs/ExternalLinkIcon.d.ts +2 -0
  593. package/dist/icons/glyphs/EyeIcon.d.ts +2 -0
  594. package/dist/icons/glyphs/EyeOffIcon.d.ts +2 -0
  595. package/dist/icons/glyphs/FileArchiveIcon.d.ts +2 -0
  596. package/dist/icons/glyphs/FileCodeIcon.d.ts +2 -0
  597. package/dist/icons/glyphs/FileExtIcons.d.ts +27 -0
  598. package/dist/icons/glyphs/FileIcon.d.ts +2 -0
  599. package/dist/icons/glyphs/FileImageIcon.d.ts +2 -0
  600. package/dist/icons/glyphs/FilePdfIcon.d.ts +2 -0
  601. package/dist/icons/glyphs/FileTextIcon.d.ts +2 -0
  602. package/dist/icons/glyphs/FileVideoIcon.d.ts +2 -0
  603. package/dist/icons/glyphs/FilterIcon.d.ts +2 -0
  604. package/dist/icons/glyphs/FlagArIcon.d.ts +2 -0
  605. package/dist/icons/glyphs/FlagBrIcon.d.ts +2 -0
  606. package/dist/icons/glyphs/FlagCaIcon.d.ts +2 -0
  607. package/dist/icons/glyphs/FlagCnIcon.d.ts +2 -0
  608. package/dist/icons/glyphs/FlagCzIcon.d.ts +2 -0
  609. package/dist/icons/glyphs/FlagDeIcon.d.ts +2 -0
  610. package/dist/icons/glyphs/FlagEsIcon.d.ts +2 -0
  611. package/dist/icons/glyphs/FlagFrIcon.d.ts +2 -0
  612. package/dist/icons/glyphs/FlagGbIcon.d.ts +2 -0
  613. package/dist/icons/glyphs/FlagInIcon.d.ts +2 -0
  614. package/dist/icons/glyphs/FlagItIcon.d.ts +2 -0
  615. package/dist/icons/glyphs/FlagJpIcon.d.ts +2 -0
  616. package/dist/icons/glyphs/FlagMxIcon.d.ts +2 -0
  617. package/dist/icons/glyphs/FlagPlIcon.d.ts +2 -0
  618. package/dist/icons/glyphs/FlagRuIcon.d.ts +2 -0
  619. package/dist/icons/glyphs/FlagSkIcon.d.ts +2 -0
  620. package/dist/icons/glyphs/FlagUaIcon.d.ts +2 -0
  621. package/dist/icons/glyphs/FlagUsIcon.d.ts +2 -0
  622. package/dist/icons/glyphs/FolderIcon.d.ts +2 -0
  623. package/dist/icons/glyphs/FolderOpenIcon.d.ts +2 -0
  624. package/dist/icons/glyphs/FolderPlusIcon.d.ts +2 -0
  625. package/dist/icons/glyphs/FormIcon.d.ts +2 -0
  626. package/dist/icons/glyphs/GalleryIcon.d.ts +2 -0
  627. package/dist/icons/glyphs/GlobeIcon.d.ts +2 -0
  628. package/dist/icons/glyphs/GroupIcon.d.ts +2 -0
  629. package/dist/icons/glyphs/HeartFillIcon.d.ts +2 -0
  630. package/dist/icons/glyphs/HeartIcon.d.ts +2 -0
  631. package/dist/icons/glyphs/HelpIcon.d.ts +2 -0
  632. package/dist/icons/glyphs/HomeIcon.d.ts +2 -0
  633. package/dist/icons/glyphs/IdCardIcon.d.ts +2 -0
  634. package/dist/icons/glyphs/ImageIcon.d.ts +2 -0
  635. package/dist/icons/glyphs/InfoIcon.d.ts +2 -0
  636. package/dist/icons/glyphs/KanbanIcon.d.ts +2 -0
  637. package/dist/icons/glyphs/LayoutIcon.d.ts +2 -0
  638. package/dist/icons/glyphs/LightbulbIcon.d.ts +2 -0
  639. package/dist/icons/glyphs/LinkIcon.d.ts +2 -0
  640. package/dist/icons/glyphs/LockIcon.d.ts +2 -0
  641. package/dist/icons/glyphs/LockOpenIcon.d.ts +2 -0
  642. package/dist/icons/glyphs/MagicIcon.d.ts +2 -0
  643. package/dist/icons/glyphs/MailIcon.d.ts +2 -0
  644. package/dist/icons/glyphs/MailOpenIcon.d.ts +2 -0
  645. package/dist/icons/glyphs/MenuIcon.d.ts +2 -0
  646. package/dist/icons/glyphs/MinusIcon.d.ts +2 -0
  647. package/dist/icons/glyphs/MoonIcon.d.ts +2 -0
  648. package/dist/icons/glyphs/MoreIcon.d.ts +3 -0
  649. package/dist/icons/glyphs/NeutralIcon.d.ts +2 -0
  650. package/dist/icons/glyphs/PaletteIcon.d.ts +2 -0
  651. package/dist/icons/glyphs/PhoneIcon.d.ts +2 -0
  652. package/dist/icons/glyphs/PinIcon.d.ts +2 -0
  653. package/dist/icons/glyphs/PlusIcon.d.ts +2 -0
  654. package/dist/icons/glyphs/ProtectIcon.d.ts +2 -0
  655. package/dist/icons/glyphs/PuzzleIcon.d.ts +2 -0
  656. package/dist/icons/glyphs/RefreshIcon.d.ts +2 -0
  657. package/dist/icons/glyphs/SearchIcon.d.ts +2 -0
  658. package/dist/icons/glyphs/SendIcon.d.ts +2 -0
  659. package/dist/icons/glyphs/SettingsIcon.d.ts +2 -0
  660. package/dist/icons/glyphs/SidebarIcon.d.ts +2 -0
  661. package/dist/icons/glyphs/Signal1Icon.d.ts +2 -0
  662. package/dist/icons/glyphs/Signal2Icon.d.ts +2 -0
  663. package/dist/icons/glyphs/Signal3Icon.d.ts +2 -0
  664. package/dist/icons/glyphs/Signal4Icon.d.ts +2 -0
  665. package/dist/icons/glyphs/SlidersIcon.d.ts +2 -0
  666. package/dist/icons/glyphs/SortIcon.d.ts +2 -0
  667. package/dist/icons/glyphs/StarFillIcon.d.ts +2 -0
  668. package/dist/icons/glyphs/StarIcon.d.ts +2 -0
  669. package/dist/icons/glyphs/SuccessIcon.d.ts +2 -0
  670. package/dist/icons/glyphs/SunIcon.d.ts +2 -0
  671. package/dist/icons/glyphs/TagIcon.d.ts +2 -0
  672. package/dist/icons/glyphs/TeamIcon.d.ts +2 -0
  673. package/dist/icons/glyphs/TerminalIcon.d.ts +2 -0
  674. package/dist/icons/glyphs/TranslateIcon.d.ts +2 -0
  675. package/dist/icons/glyphs/TrashIcon.d.ts +2 -0
  676. package/dist/icons/glyphs/UploadIcon.d.ts +2 -0
  677. package/dist/icons/glyphs/UserIcon.d.ts +2 -0
  678. package/dist/icons/glyphs/UsersIcon.d.ts +2 -0
  679. package/dist/icons/glyphs/WarningIcon.d.ts +2 -0
  680. package/dist/icons/glyphs/WindowIcon.d.ts +2 -0
  681. package/dist/icons/glyphs/ZoomInIcon.d.ts +2 -0
  682. package/dist/icons/glyphs/ZoomOutIcon.d.ts +2 -0
  683. package/dist/icons/glyphs/fileMark.d.ts +9 -0
  684. package/dist/icons/index.d.ts +142 -0
  685. package/dist/icons.cjs +2 -0
  686. package/dist/icons.d.ts +2 -0
  687. package/dist/icons.entry.d.ts +3 -0
  688. package/dist/icons.js +20 -0
  689. package/dist/index.cjs +2 -4
  690. package/dist/index.d.ts +183 -3062
  691. package/dist/index.js +63 -8896
  692. package/dist/inputs.cjs +2 -0
  693. package/dist/inputs.d.ts +3 -0
  694. package/dist/inputs.js +6 -0
  695. package/dist/layout.cjs +2 -0
  696. package/dist/layout.d.ts +3 -0
  697. package/dist/layout.js +9 -0
  698. package/dist/layoutProps-CY4cnDrW.js +29 -0
  699. package/dist/layoutProps-CY4cnDrW.js.map +1 -0
  700. package/dist/layoutProps-Dw_ZW6ot.cjs +2 -0
  701. package/dist/layoutProps-Dw_ZW6ot.cjs.map +1 -0
  702. package/dist/locale-C_PRdyIv.cjs +2 -0
  703. package/dist/locale-C_PRdyIv.cjs.map +1 -0
  704. package/dist/locale-DofwII5P.js +58 -0
  705. package/dist/locale-DofwII5P.js.map +1 -0
  706. package/dist/media.cjs +2 -0
  707. package/dist/media.d.ts +3 -0
  708. package/dist/media.js +7 -0
  709. package/dist/overlays.cjs +2 -0
  710. package/dist/overlays.d.ts +3 -0
  711. package/dist/overlays.js +8 -0
  712. package/dist/primitives.cjs +2 -0
  713. package/dist/primitives.d.ts +3 -0
  714. package/dist/primitives.js +4 -0
  715. package/dist/style-runtime.cjs +2 -0
  716. package/dist/style-runtime.js +2 -0
  717. package/dist/styles.css +1 -1
  718. package/dist/theme/ThemeProvider.d.ts +20 -0
  719. package/dist/theme/index.d.ts +3 -0
  720. package/dist/theme/types.d.ts +50 -0
  721. package/dist/theme.cjs +2 -0
  722. package/dist/theme.d.ts +2 -0
  723. package/dist/theme.entry.d.ts +1 -0
  724. package/dist/theme.js +3 -0
  725. package/dist/typography.cjs +2 -0
  726. package/dist/typography.d.ts +3 -0
  727. package/dist/typography.js +6 -0
  728. package/dist/useClickOutside-CS-Mc6ne.cjs +2 -0
  729. package/dist/useClickOutside-CS-Mc6ne.cjs.map +1 -0
  730. package/dist/useClickOutside-Dcye4Ut0.js +16 -0
  731. package/dist/useClickOutside-Dcye4Ut0.js.map +1 -0
  732. package/dist/useDebounce-C3jbJOKC.cjs +2 -0
  733. package/dist/useDebounce-C3jbJOKC.cjs.map +1 -0
  734. package/dist/useDebounce-D-v3IRXp.js +21 -0
  735. package/dist/useDebounce-D-v3IRXp.js.map +1 -0
  736. package/dist/useFormField-Bz4d7m8u.cjs +2 -0
  737. package/dist/useFormField-Bz4d7m8u.cjs.map +1 -0
  738. package/dist/useFormField-jOnRqGD2.js +166 -0
  739. package/dist/useFormField-jOnRqGD2.js.map +1 -0
  740. package/dist/useGhostText-BNcH5o9H.js +51 -0
  741. package/dist/useGhostText-BNcH5o9H.js.map +1 -0
  742. package/dist/useGhostText-CoYhBGCg.cjs +2 -0
  743. package/dist/useGhostText-CoYhBGCg.cjs.map +1 -0
  744. package/dist/useInteractionEffect-B5_UpgTt.js +40 -0
  745. package/dist/useInteractionEffect-B5_UpgTt.js.map +1 -0
  746. package/dist/useInteractionEffect-BaJeiUns.cjs +2 -0
  747. package/dist/useInteractionEffect-BaJeiUns.cjs.map +1 -0
  748. package/dist/useKeyboardNav-CmUKtJag.js +43 -0
  749. package/dist/useKeyboardNav-CmUKtJag.js.map +1 -0
  750. package/dist/useKeyboardNav-DJtFz7Fx.cjs +2 -0
  751. package/dist/useKeyboardNav-DJtFz7Fx.cjs.map +1 -0
  752. package/dist/useReveal-Fg-i8hhZ.js +23 -0
  753. package/dist/useReveal-Fg-i8hhZ.js.map +1 -0
  754. package/dist/useReveal-p1cSTlUT.cjs +2 -0
  755. package/dist/useReveal-p1cSTlUT.cjs.map +1 -0
  756. package/dist/utils/appearanceProps.d.ts +6 -0
  757. package/dist/utils/cn.d.ts +1 -0
  758. package/dist/utils/creditCards.d.ts +16 -0
  759. package/dist/utils/dateUtils.d.ts +17 -0
  760. package/dist/utils/formatters.d.ts +21 -0
  761. package/dist/utils/layoutProps.d.ts +25 -0
  762. package/dist/utils/locale.d.ts +13 -0
  763. package/dist/utils/postalCodes.d.ts +21 -0
  764. package/dist/utils/relativeTime.d.ts +16 -0
  765. package/dist/utils/useClickOutside.d.ts +2 -0
  766. package/dist/utils/useControllableString.d.ts +7 -0
  767. package/dist/utils/useDebounce.d.ts +2 -0
  768. package/dist/utils/useGhostText.d.ts +28 -0
  769. package/dist/utils/useInteractionEffect.d.ts +15 -0
  770. package/dist/utils/useKeyboardNav.d.ts +14 -0
  771. package/dist/utils/useReveal.d.ts +2 -0
  772. package/dist/utils/validators.d.ts +19 -0
  773. package/dist/utils.cjs +2 -0
  774. package/dist/utils.d.ts +2 -0
  775. package/dist/utils.entry.d.ts +20 -0
  776. package/dist/utils.js +13 -0
  777. package/dist/validators-B7cSTrU_.cjs +2 -0
  778. package/dist/validators-B7cSTrU_.cjs.map +1 -0
  779. package/dist/validators-Y1nYXhNR.js +378 -0
  780. package/dist/validators-Y1nYXhNR.js.map +1 -0
  781. package/package.json +226 -1
  782. package/dist/index.cjs.map +0 -1
  783. package/dist/index.js.map +0 -1
@@ -0,0 +1,457 @@
1
+ import { t as e } from "./ChevronDownIcon-BDiyHPT4.js";
2
+ import { t } from "./cn-BIeeqGZv.js";
3
+ import { t as n } from "./appearanceProps-8tN47e1u.js";
4
+ import { t as r } from "./Stack-xUXSOKqN.js";
5
+ import { t as i } from "./Button-BnxXh7zp.js";
6
+ import { r as a } from "./locale-DofwII5P.js";
7
+ import { Children as o, isValidElement as s, useCallback as c, useEffect as l, useMemo as u, useRef as d, useState as f } from "react";
8
+ import { jsx as p, jsxs as m } from "react/jsx-runtime";
9
+ //#region src/utils/relativeTime.ts
10
+ var h = 1e3, g = 60 * h, _ = 60 * g, v = 24 * _, y = 7 * v, b = Math.round(30.44 * v), x = Math.round(365.25 * v), S = {
11
+ s: h,
12
+ m: g,
13
+ h: _,
14
+ d: v,
15
+ w: y,
16
+ mo: b,
17
+ y: x
18
+ };
19
+ function C(e) {
20
+ let t = e instanceof Date ? e : new Date(e);
21
+ return Number.isNaN(t.getTime()) ? null : t;
22
+ }
23
+ function w(e) {
24
+ if (e == null) return null;
25
+ if (typeof e == "number") return e >= 0 ? e : null;
26
+ let t = e.trim().match(/^(\d+)\s*(mo|[smhdwy])$/i);
27
+ return t ? Number(t[1]) * S[t[2].toLowerCase()] : null;
28
+ }
29
+ function T(e, t = Date.now()) {
30
+ let n = C(e), r = C(t);
31
+ if (!n || !r) return null;
32
+ let i = n.getTime() - r.getTime(), a = Math.abs(i);
33
+ return a < g ? {
34
+ value: Math.round(i / h),
35
+ unit: "second"
36
+ } : a < _ ? {
37
+ value: Math.round(i / g),
38
+ unit: "minute"
39
+ } : a < v ? {
40
+ value: Math.round(i / _),
41
+ unit: "hour"
42
+ } : a < y ? {
43
+ value: Math.round(i / v),
44
+ unit: "day"
45
+ } : a < b ? {
46
+ value: Math.round(i / y),
47
+ unit: "week"
48
+ } : a < x ? {
49
+ value: Math.round(i / b),
50
+ unit: "month"
51
+ } : {
52
+ value: Math.round(i / x),
53
+ unit: "year"
54
+ };
55
+ }
56
+ function E(e, { locale: t = "en", now: n = Date.now() } = {}) {
57
+ let r = T(e, n);
58
+ if (!r) return null;
59
+ let i;
60
+ try {
61
+ i = new Intl.RelativeTimeFormat(t, {
62
+ numeric: "auto",
63
+ style: "long"
64
+ });
65
+ } catch {
66
+ i = new Intl.RelativeTimeFormat("en", {
67
+ numeric: "auto",
68
+ style: "long"
69
+ });
70
+ }
71
+ return i.format(r.value, r.unit);
72
+ }
73
+ function D(e, t = "en", n = "date") {
74
+ let r = C(e);
75
+ if (!r) return null;
76
+ let i;
77
+ try {
78
+ i = new Intl.DateTimeFormat(t, {
79
+ dateStyle: "medium",
80
+ ...n === "datetime" ? { timeStyle: "short" } : {}
81
+ });
82
+ } catch {
83
+ i = new Intl.DateTimeFormat("en", {
84
+ dateStyle: "medium",
85
+ ...n === "datetime" ? { timeStyle: "short" } : {}
86
+ });
87
+ }
88
+ return i.format(r);
89
+ }
90
+ function O(e, t = Date.now()) {
91
+ let n = C(e), r = C(t);
92
+ if (!n || !r) return _;
93
+ let i = Math.abs(n.getTime() - r.getTime());
94
+ return i < g ? h : i < _ ? g : i < v ? _ : v;
95
+ }
96
+ //#endregion
97
+ //#region src/components/display/Collapsible/Collapsible.tsx
98
+ function k({ title: a, defaultOpen: o = !1, open: s, onToggle: c, fcolor: l, className: u, children: d, ...h }) {
99
+ let [g, _] = f(o), v = s ?? g, y = () => {
100
+ let e = !v;
101
+ s === void 0 && _(e), c?.(e);
102
+ }, b = /* @__PURE__ */ p("span", {
103
+ className: t("chevron", v && "open"),
104
+ "aria-hidden": "true",
105
+ children: /* @__PURE__ */ p(e, {})
106
+ });
107
+ return /* @__PURE__ */ m("div", {
108
+ className: t("collapsible", ...n({ fcolor: l }), u),
109
+ ...h,
110
+ children: [/* @__PURE__ */ p(i, {
111
+ variant: "ghost",
112
+ className: "trigger",
113
+ "aria-expanded": v,
114
+ onClick: y,
115
+ endIcon: b,
116
+ children: a
117
+ }), /* @__PURE__ */ p("div", {
118
+ className: t("content-wrap", v && "open"),
119
+ "aria-hidden": !v,
120
+ children: /* @__PURE__ */ p(r, {
121
+ className: "content",
122
+ children: d
123
+ })
124
+ })]
125
+ });
126
+ }
127
+ //#endregion
128
+ //#region src/components/display/Accordion/Accordion.tsx
129
+ function A(e) {
130
+ return null;
131
+ }
132
+ function j({ multiple: e = !1, defaultOpen: n, onChange: r, bordered: i = !1, className: a, children: l, ...u }) {
133
+ let [d, m] = f(Array.isArray(n) ? n : n ? [n] : []), h = c((t, n) => {
134
+ m((i) => {
135
+ let a;
136
+ return a = n ? e ? [...i, t] : [t] : i.filter((e) => e !== t), r?.(a), a;
137
+ });
138
+ }, [e, r]), g = o.toArray(l).filter((e) => s(e) && e.type === A);
139
+ return /* @__PURE__ */ p("div", {
140
+ className: t("accordion", i && "bordered", a),
141
+ ...u,
142
+ children: g.map((e) => {
143
+ if (!s(e)) return null;
144
+ let { id: n, title: r, children: i, disabled: a, fcolor: o } = e.props, c = d.includes(n);
145
+ return /* @__PURE__ */ p("div", {
146
+ className: t("accordion-item", a && "disabled"),
147
+ children: /* @__PURE__ */ p(k, {
148
+ title: r,
149
+ open: c,
150
+ onToggle: a ? void 0 : (e) => h(n, e),
151
+ fcolor: o,
152
+ children: i
153
+ })
154
+ }, n);
155
+ })
156
+ });
157
+ }
158
+ //#endregion
159
+ //#region src/components/display/ProgressBar/ProgressBar.tsx
160
+ var M = 800;
161
+ function N(e) {
162
+ return 1 - (1 - e) ** 3;
163
+ }
164
+ function P({ value: e, max: n = 100, color: r = "primary", size: i = "md", label: a, showValue: o = !1, animated: s = !1, striped: u = !1, className: h, ...g }) {
165
+ let _ = Math.min(100, Math.max(0, e / n * 100)), [v, y] = f(0), [b, x] = f(0), S = d(0), C = d(0), w = c((e, t) => {
166
+ cancelAnimationFrame(C.current);
167
+ let n = performance.now(), r = (i) => {
168
+ let a = i - n, o = Math.min(a / M, 1), s = N(o);
169
+ y(e + (t - e) * s), o < 1 && (C.current = requestAnimationFrame(r));
170
+ };
171
+ x(t), C.current = requestAnimationFrame(r);
172
+ }, []);
173
+ return l(() => (w(S.current, _), S.current = _, () => cancelAnimationFrame(C.current)), [_, w]), /* @__PURE__ */ m("div", {
174
+ className: t("progress bar", r, i, h),
175
+ role: "progressbar",
176
+ "aria-valuenow": e,
177
+ "aria-valuemin": 0,
178
+ "aria-valuemax": n,
179
+ "aria-label": a,
180
+ ...g,
181
+ children: [(a || o) && /* @__PURE__ */ m("div", {
182
+ className: "progress bar header",
183
+ children: [a && /* @__PURE__ */ p("span", {
184
+ className: "progress bar label",
185
+ children: a
186
+ }), o && /* @__PURE__ */ m("span", {
187
+ className: "progress bar value",
188
+ children: [Math.round(v), "%"]
189
+ })]
190
+ }), /* @__PURE__ */ p("div", {
191
+ className: "progress bar track",
192
+ children: /* @__PURE__ */ p("div", {
193
+ className: t("progress bar fill", s && "animated", u && "striped"),
194
+ style: { width: `${b}%` }
195
+ })
196
+ })]
197
+ });
198
+ }
199
+ //#endregion
200
+ //#region src/components/display/CountUp/CountUp.tsx
201
+ function F({ value: e, from: n = 0, duration: r = 1e3, decimals: i = 0, prefix: a = "", suffix: o = "", separator: s = "", className: c, ...u }) {
202
+ let [p, h] = f(n), g = d(0), _ = d(null);
203
+ l(() => {
204
+ let t = p;
205
+ _.current = null;
206
+ let n = (i) => {
207
+ _.current === null && (_.current = i);
208
+ let a = i - _.current, o = Math.min(a / r, 1), s = 1 - (1 - o) ** 3;
209
+ h(t + (e - t) * s), o < 1 && (g.current = requestAnimationFrame(n));
210
+ };
211
+ return g.current = requestAnimationFrame(n), () => cancelAnimationFrame(g.current);
212
+ }, [e, r]);
213
+ let v = I(p, i, s);
214
+ return /* @__PURE__ */ m("span", {
215
+ className: t("count-up", c),
216
+ ...u,
217
+ children: [
218
+ a,
219
+ v,
220
+ o
221
+ ]
222
+ });
223
+ }
224
+ function I(e, t, n) {
225
+ let r = e.toFixed(t);
226
+ if (!n) return r;
227
+ let [i, a] = r.split("."), o = i.replace(/\B(?=(\d{3})+(?!\d))/g, n);
228
+ return a === void 0 ? o : `${o}.${a}`;
229
+ }
230
+ //#endregion
231
+ //#region src/components/display/TimeAgo/TimeAgo.tsx
232
+ function L(e, t, n) {
233
+ return e === "none" ? null : e === "minute" ? 60 * 1e3 : e === "hour" ? 3600 * 1e3 : e === "day" ? 1440 * 60 * 1e3 : O(t, n);
234
+ }
235
+ function R({ value: e, locale: n, maxRelative: r, fallbackFormat: i = "date", titleAbsolute: o = !0, update: s = "auto", className: c, ...d }) {
236
+ let m = a(n), [h, g] = f(() => Date.now()), _ = u(() => L(s, e, h), [
237
+ h,
238
+ s,
239
+ e
240
+ ]);
241
+ l(() => {
242
+ if (!_) return;
243
+ let e = window.setInterval(() => g(Date.now()), _);
244
+ return () => window.clearInterval(e);
245
+ }, [_]);
246
+ let v = u(() => C(e), [e]), y = u(() => w(r), [r]), b = u(() => D(e, m, i), [
247
+ e,
248
+ m,
249
+ i
250
+ ]), x = u(() => {
251
+ if (!v) return String(e);
252
+ let t = Math.abs(v.getTime() - h);
253
+ return y != null && t > y ? b ?? String(e) : E(v, {
254
+ locale: m,
255
+ now: h
256
+ }) ?? b ?? String(e);
257
+ }, [
258
+ b,
259
+ v,
260
+ m,
261
+ y,
262
+ h,
263
+ e
264
+ ]);
265
+ return /* @__PURE__ */ p("time", {
266
+ className: t("time ago", c),
267
+ dateTime: v?.toISOString(),
268
+ title: o ? b ?? void 0 : void 0,
269
+ ...d,
270
+ children: x
271
+ });
272
+ }
273
+ //#endregion
274
+ //#region src/components/display/ColorPicker/ColorPicker.tsx
275
+ function z(e, t, n) {
276
+ let r = (r) => {
277
+ let i = (r + e / 60) % 6;
278
+ return n - n * t * Math.max(0, Math.min(i, 4 - i, 1));
279
+ };
280
+ return `#${[
281
+ Math.round(r(5) * 255),
282
+ Math.round(r(3) * 255),
283
+ Math.round(r(1) * 255)
284
+ ].map((e) => e.toString(16).padStart(2, "0")).join("")}`;
285
+ }
286
+ function B(e) {
287
+ let t = e.replace("#", "").match(/.{2}/g);
288
+ if (!t) return [
289
+ 0,
290
+ 0,
291
+ 1
292
+ ];
293
+ let [n, r, i] = t.map((e) => parseInt(e, 16) / 255), a = Math.max(n, r, i), o = a - Math.min(n, r, i), s = 0;
294
+ o !== 0 && (s = a === n ? ((r - i) / o + 6) % 6 : a === r ? (i - n) / o + 2 : (n - r) / o + 4, s *= 60);
295
+ let c = a === 0 ? 0 : o / a;
296
+ return [
297
+ s,
298
+ c,
299
+ a
300
+ ];
301
+ }
302
+ function V(e) {
303
+ let t = e.replace("#", "").match(/.{2}/g);
304
+ if (!t) return "rgb(0, 0, 0)";
305
+ let [n, r, i] = t.map((e) => parseInt(e, 16));
306
+ return `rgb(${n}, ${r}, ${i})`;
307
+ }
308
+ function H(e) {
309
+ let t = e.replace("#", "").match(/.{2}/g);
310
+ if (!t) return "hsl(0, 0%, 0%)";
311
+ let [n, r, i] = t.map((e) => parseInt(e, 16) / 255), a = Math.max(n, r, i), o = Math.min(n, r, i), s = (a + o) / 2, c = 0, l = 0;
312
+ if (a !== o) {
313
+ let e = a - o;
314
+ l = s > .5 ? e / (2 - a - o) : e / (a + o), c = a === n ? ((r - i) / e + 6) % 6 : a === r ? (i - n) / e + 2 : (n - r) / e + 4, c *= 60;
315
+ }
316
+ return `hsl(${Math.round(c)}, ${Math.round(l * 100)}%, ${Math.round(s * 100)}%)`;
317
+ }
318
+ function U(e, t) {
319
+ return t === "rgb" ? V(e) : t === "hsl" ? H(e) : e;
320
+ }
321
+ function W(e) {
322
+ if (!e) return "#000000";
323
+ if (e.startsWith("#")) return e.length === 7 ? e : "#000000";
324
+ let t = e.match(/rgb\((\d+),\s*(\d+),\s*(\d+)\)/);
325
+ return t ? `#${[
326
+ t[1],
327
+ t[2],
328
+ t[3]
329
+ ].map((e) => parseInt(e).toString(16).padStart(2, "0")).join("")}` : "#000000";
330
+ }
331
+ var G = [
332
+ "#ef4444",
333
+ "#f97316",
334
+ "#eab308",
335
+ "#22c55e",
336
+ "#06b6d4",
337
+ "#3b82f6",
338
+ "#8b5cf6",
339
+ "#ec4899",
340
+ "#000000",
341
+ "#ffffff"
342
+ ];
343
+ function K({ value: e, onChange: n, swatches: r = G, format: i = "hex", size: a = "md", label: o, disabled: s = !1, className: u, ...h }) {
344
+ let g = W(e ?? "#3b82f6"), [_, v] = f(() => B(g)), [y, b] = f(U(g, i)), x = d(null), S = d(null), C = d(null);
345
+ l(() => {
346
+ let t = W(e ?? "#3b82f6");
347
+ v(B(t)), b(U(t, i));
348
+ }, [e, i]);
349
+ let w = c((e, t, r) => {
350
+ let a = z(e, t, r);
351
+ v([
352
+ e,
353
+ t,
354
+ r
355
+ ]), b(U(a, i)), n?.(U(a, i));
356
+ }, [n, i]);
357
+ function T(e) {
358
+ let t = x.current?.getBoundingClientRect();
359
+ if (!t) return;
360
+ let n = Math.max(0, Math.min(1, (e.clientX - t.left) / t.width)), r = Math.max(0, Math.min(1, 1 - (e.clientY - t.top) / t.height));
361
+ w(_[0], n, r);
362
+ }
363
+ function E(e) {
364
+ let t = S.current?.getBoundingClientRect();
365
+ t && w(Math.max(0, Math.min(360, (e.clientX - t.left) / t.width * 360)), _[1], _[2]);
366
+ }
367
+ l(() => {
368
+ function e(e) {
369
+ C.current === "area" ? T(e) : C.current === "hue" && E(e);
370
+ }
371
+ function t() {
372
+ C.current = null;
373
+ }
374
+ return window.addEventListener("pointermove", e), window.addEventListener("pointerup", t), () => {
375
+ window.removeEventListener("pointermove", e), window.removeEventListener("pointerup", t);
376
+ };
377
+ });
378
+ function D(e) {
379
+ b(e);
380
+ try {
381
+ let t = W(e);
382
+ (t !== "#000000" || e === "#000000" || e.toLowerCase() === "rgb(0, 0, 0)") && (v(B(t)), n?.(U(t, i)));
383
+ } catch {}
384
+ }
385
+ let O = z(_[0], _[1], _[2]);
386
+ return /* @__PURE__ */ m("div", {
387
+ className: t("color-picker", a, s && "disabled", u),
388
+ ...h,
389
+ children: [
390
+ o && /* @__PURE__ */ p("label", {
391
+ className: "label",
392
+ children: o
393
+ }),
394
+ /* @__PURE__ */ m("div", {
395
+ ref: x,
396
+ className: "area",
397
+ style: { background: `hsl(${_[0]}, 100%, 50%)` },
398
+ onPointerDown: (e) => {
399
+ s || (C.current = "area", T(e));
400
+ },
401
+ children: [
402
+ /* @__PURE__ */ p("div", { className: "white" }),
403
+ /* @__PURE__ */ p("div", { className: "black" }),
404
+ /* @__PURE__ */ p("div", {
405
+ className: "cursor",
406
+ style: {
407
+ left: `${_[1] * 100}%`,
408
+ top: `${(1 - _[2]) * 100}%`,
409
+ background: O
410
+ }
411
+ })
412
+ ]
413
+ }),
414
+ /* @__PURE__ */ p("div", {
415
+ ref: S,
416
+ className: "hue",
417
+ onPointerDown: (e) => {
418
+ s || (C.current = "hue", E(e));
419
+ },
420
+ children: /* @__PURE__ */ p("div", {
421
+ className: "hue-thumb",
422
+ style: { left: `${_[0] / 360 * 100}%` }
423
+ })
424
+ }),
425
+ /* @__PURE__ */ m("div", {
426
+ className: "controls",
427
+ children: [/* @__PURE__ */ p("div", {
428
+ className: "preview",
429
+ style: { background: O }
430
+ }), /* @__PURE__ */ p("input", {
431
+ type: "text",
432
+ className: "input",
433
+ value: y,
434
+ onChange: (e) => D(e.target.value),
435
+ disabled: s
436
+ })]
437
+ }),
438
+ r.length > 0 && /* @__PURE__ */ p("div", {
439
+ className: "swatches",
440
+ children: r.map((e) => /* @__PURE__ */ p("button", {
441
+ type: "button",
442
+ className: t("swatch", O.toLowerCase() === e.toLowerCase() && "active"),
443
+ style: { background: e },
444
+ onClick: () => {
445
+ if (s) return;
446
+ let [t, n, r] = B(e);
447
+ w(t, n, r);
448
+ }
449
+ }, e))
450
+ })
451
+ ]
452
+ });
453
+ }
454
+ //#endregion
455
+ export { j as a, D as c, T as d, w as f, P as i, E as l, R as n, A as o, C as p, F as r, k as s, K as t, O as u };
456
+
457
+ //# sourceMappingURL=ColorPicker-BqE5PvW5.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColorPicker-BqE5PvW5.js","names":[],"sources":["../src/utils/relativeTime.ts","../src/components/display/Collapsible/Collapsible.tsx","../src/components/display/Accordion/Accordion.tsx","../src/components/display/ProgressBar/ProgressBar.tsx","../src/components/display/CountUp/CountUp.tsx","../src/components/display/TimeAgo/TimeAgo.tsx","../src/components/display/ColorPicker/ColorPicker.tsx"],"sourcesContent":["export type RelativeTimeUnit = Intl.RelativeTimeFormatUnit\n\nexport type RelativeTimeFallbackFormat = 'date' | 'datetime'\n\nexport interface RelativeTimeValue {\n value: number\n unit: RelativeTimeUnit\n}\n\nexport interface FormatRelativeTimeOptions {\n locale?: string\n now?: Date | number\n}\n\nconst SECOND = 1000\nconst MINUTE = 60 * SECOND\nconst HOUR = 60 * MINUTE\nconst DAY = 24 * HOUR\nconst WEEK = 7 * DAY\nconst MONTH = Math.round(30.44 * DAY)\nconst YEAR = Math.round(365.25 * DAY)\n\nconst thresholdMap = {\n s: SECOND,\n m: MINUTE,\n h: HOUR,\n d: DAY,\n w: WEEK,\n mo: MONTH,\n y: YEAR,\n} as const\n\nexport function toDate(value: Date | string | number): Date | null {\n const date = value instanceof Date ? value : new Date(value)\n return Number.isNaN(date.getTime()) ? null : date\n}\n\nexport function parseRelativeThreshold(value?: string | number | null): number | null {\n if (value == null) return null\n if (typeof value === 'number') return value >= 0 ? value : null\n\n const match = value.trim().match(/^(\\d+)\\s*(mo|[smhdwy])$/i)\n if (!match) return null\n\n const amount = Number(match[1])\n const unit = match[2].toLowerCase() as keyof typeof thresholdMap\n\n return amount * thresholdMap[unit]\n}\n\nexport function getRelativeTimeValue(\n value: Date | string | number,\n now: Date | number = Date.now()\n): RelativeTimeValue | null {\n const date = toDate(value)\n const current = toDate(now)\n\n if (!date || !current) return null\n\n const diff = date.getTime() - current.getTime()\n const abs = Math.abs(diff)\n\n if (abs < MINUTE) {\n return {value: Math.round(diff / SECOND), unit: 'second'}\n }\n\n if (abs < HOUR) {\n return {value: Math.round(diff / MINUTE), unit: 'minute'}\n }\n\n if (abs < DAY) {\n return {value: Math.round(diff / HOUR), unit: 'hour'}\n }\n\n if (abs < WEEK) {\n return {value: Math.round(diff / DAY), unit: 'day'}\n }\n\n if (abs < MONTH) {\n return {value: Math.round(diff / WEEK), unit: 'week'}\n }\n\n if (abs < YEAR) {\n return {value: Math.round(diff / MONTH), unit: 'month'}\n }\n\n return {value: Math.round(diff / YEAR), unit: 'year'}\n}\n\nexport function formatRelativeTime(\n value: Date | string | number,\n {locale = 'en', now = Date.now()}: FormatRelativeTimeOptions = {}\n): string | null {\n const relative = getRelativeTimeValue(value, now)\n\n if (!relative) return null\n\n let formatter: Intl.RelativeTimeFormat\n\n try {\n formatter = new Intl.RelativeTimeFormat(locale, {\n numeric: 'auto',\n style: 'long',\n })\n } catch {\n formatter = new Intl.RelativeTimeFormat('en', {\n numeric: 'auto',\n style: 'long',\n })\n }\n\n return formatter.format(relative.value, relative.unit)\n}\n\nexport function formatAbsoluteTime(\n value: Date | string | number,\n locale: string = 'en',\n fallbackFormat: RelativeTimeFallbackFormat = 'date'\n): string | null {\n const date = toDate(value)\n\n if (!date) return null\n\n let formatter: Intl.DateTimeFormat\n\n try {\n formatter = new Intl.DateTimeFormat(locale, {\n dateStyle: 'medium',\n ...(fallbackFormat === 'datetime' ? {timeStyle: 'short'} : {}),\n })\n } catch {\n formatter = new Intl.DateTimeFormat('en', {\n dateStyle: 'medium',\n ...(fallbackFormat === 'datetime' ? {timeStyle: 'short'} : {}),\n })\n }\n\n return formatter.format(date)\n}\n\nexport function getAutoUpdateInterval(value: Date | string | number, now: Date | number = Date.now()): number {\n const date = toDate(value)\n const current = toDate(now)\n\n if (!date || !current) return HOUR\n\n const diff = Math.abs(date.getTime() - current.getTime())\n\n if (diff < MINUTE) return SECOND\n if (diff < HOUR) return MINUTE\n if (diff < DAY) return HOUR\n return DAY\n}\n","import {useState} from 'react'\nimport {Button} from '../../controls'\nimport {Stack} from '../../layout'\nimport {cn} from '../../../utils/cn'\nimport {getAppearanceClassNames} from '../../../utils/appearanceProps'\nimport type {CollapsibleProps} from './Collapsible.types'\nimport {ChevronDownIcon} from '../../../icons'\nimport './Collapsible.css'\n\n// Toggle a section of content with a built-in trigger and disclosure state.\nexport function Collapsible({\n title,\n defaultOpen = false,\n open: controlledOpen,\n onToggle,\n fcolor,\n className,\n children,\n ...rest\n}: CollapsibleProps) {\n const [internalOpen, setInternalOpen] = useState(defaultOpen)\n const open = controlledOpen ?? internalOpen\n\n const handleToggle = () => {\n const nextOpen = !open\n\n if (controlledOpen === undefined) {\n setInternalOpen(nextOpen)\n }\n\n onToggle?.(nextOpen)\n }\n\n const chevronIcon = (\n <span className={cn('chevron', open && 'open')} aria-hidden=\"true\">\n <ChevronDownIcon />\n </span>\n )\n\n return (\n <div className={cn('collapsible', ...getAppearanceClassNames({fcolor}), className)} {...rest}>\n <Button\n variant=\"ghost\"\n className=\"trigger\"\n aria-expanded={open}\n onClick={handleToggle}\n endIcon={chevronIcon}\n >\n {title}\n </Button>\n <div className={cn('content-wrap', open && 'open')} aria-hidden={!open}>\n <Stack className=\"content\">{children}</Stack>\n </div>\n </div>\n )\n}\n","import {useState, useCallback, Children, isValidElement} from 'react'\nimport {Collapsible} from '../Collapsible'\nimport {cn} from '../../../utils/cn'\nimport type {AccordionProps, AccordionItemProps} from './Accordion.types'\nimport './Accordion.css'\n\nexport function AccordionItem(_props: AccordionItemProps) {\n return null\n}\n\nexport function Accordion({\n multiple = false,\n defaultOpen,\n onChange,\n bordered = false,\n className,\n children,\n ...rest\n}: AccordionProps) {\n const initialOpen = Array.isArray(defaultOpen) ? defaultOpen : defaultOpen ? [defaultOpen] : []\n\n const [openIds, setOpenIds] = useState<string[]>(initialOpen)\n\n const handleToggle = useCallback(\n (id: string, isOpen: boolean) => {\n setOpenIds((prev) => {\n let next: string[]\n if (isOpen) {\n next = multiple ? [...prev, id] : [id]\n } else {\n next = prev.filter((v) => v !== id)\n }\n onChange?.(next)\n return next\n })\n },\n [multiple, onChange]\n )\n\n const items = Children.toArray(children).filter(\n (child) => isValidElement(child) && (child.type as any) === AccordionItem\n )\n\n return (\n <div className={cn('accordion', bordered && 'bordered', className)} {...rest}>\n {items.map((child) => {\n if (!isValidElement<AccordionItemProps>(child)) return null\n const {id, title, children: content, disabled, fcolor} = child.props\n const isOpen = openIds.includes(id)\n\n return (\n <div key={id} className={cn('accordion-item', disabled && 'disabled')}>\n <Collapsible\n title={title}\n open={isOpen}\n onToggle={disabled ? undefined : (open) => handleToggle(id, open)}\n fcolor={fcolor}\n >\n {content}\n </Collapsible>\n </div>\n )\n })}\n </div>\n )\n}\n","import {useState, useEffect, useRef, useCallback} from 'react'\nimport type {ProgressBarProps} from './ProgressBar.types'\nimport {cn} from '../../../utils/cn'\nimport './ProgressBar.css'\n\nconst DURATION = 800\n\nfunction easeOutCubic(t: number) {\n return 1 - Math.pow(1 - t, 3)\n}\n\n// Render a horizontal bar that fills to represent progress as a percentage.\nexport function ProgressBar({\n value,\n max = 100,\n color = 'primary',\n size = 'md',\n label,\n showValue = false,\n animated = false,\n striped = false,\n className,\n ...rest\n}: ProgressBarProps) {\n const percent = Math.min(100, Math.max(0, (value / max) * 100))\n const [displayPercent, setDisplayPercent] = useState(0)\n const [barPercent, setBarPercent] = useState(0)\n const prevPercent = useRef(0)\n const rafRef = useRef(0)\n\n const animate = useCallback((from: number, to: number) => {\n cancelAnimationFrame(rafRef.current)\n const start = performance.now()\n\n const step = (now: number) => {\n const elapsed = now - start\n const progress = Math.min(elapsed / DURATION, 1)\n const eased = easeOutCubic(progress)\n const current = from + (to - from) * eased\n\n setDisplayPercent(current)\n if (progress < 1) {\n rafRef.current = requestAnimationFrame(step)\n }\n }\n\n // Set bar width immediately for CSS transition\n setBarPercent(to)\n rafRef.current = requestAnimationFrame(step)\n }, [])\n\n useEffect(() => {\n animate(prevPercent.current, percent)\n prevPercent.current = percent\n return () => cancelAnimationFrame(rafRef.current)\n }, [percent, animate])\n\n return (\n <div\n className={cn('progress bar', color, size, className)}\n role=\"progressbar\"\n aria-valuenow={value}\n aria-valuemin={0}\n aria-valuemax={max}\n aria-label={label}\n {...rest}\n >\n {(label || showValue) && (\n <div className=\"progress bar header\">\n {label && <span className=\"progress bar label\">{label}</span>}\n {showValue && <span className=\"progress bar value\">{Math.round(displayPercent)}%</span>}\n </div>\n )}\n <div className=\"progress bar track\">\n <div\n className={cn('progress bar fill', animated && 'animated', striped && 'striped')}\n style={{width: `${barPercent}%`}}\n />\n </div>\n </div>\n )\n}\n","import {useState, useEffect, useRef} from 'react'\nimport type {CountUpProps} from './CountUp.types'\nimport {cn} from '../../../utils/cn'\n\n// Animate a number from a start value to a target, with an easing curve.\nexport function CountUp({\n value,\n from = 0,\n duration = 1000,\n decimals = 0,\n prefix = '',\n suffix = '',\n separator = '',\n className,\n ...rest\n}: CountUpProps) {\n const [display, setDisplay] = useState(from)\n const rafRef = useRef<number>(0)\n const startRef = useRef<number | null>(null)\n\n useEffect(() => {\n const startValue = display\n startRef.current = null\n\n const step = (timestamp: number) => {\n if (startRef.current === null) startRef.current = timestamp\n const elapsed = timestamp - startRef.current\n const progress = Math.min(elapsed / duration, 1)\n const eased = 1 - Math.pow(1 - progress, 3)\n const current = startValue + (value - startValue) * eased\n\n setDisplay(current)\n\n if (progress < 1) {\n rafRef.current = requestAnimationFrame(step)\n }\n }\n\n rafRef.current = requestAnimationFrame(step)\n return () => cancelAnimationFrame(rafRef.current)\n }, [value, duration])\n\n const formatted = formatNumber(display, decimals, separator)\n\n return (\n <span className={cn('count-up', className)} {...rest}>\n {prefix}\n {formatted}\n {suffix}\n </span>\n )\n}\n\nfunction formatNumber(num: number, decimals: number, separator: string): string {\n const fixed = num.toFixed(decimals)\n if (!separator) return fixed\n\n const [int, dec] = fixed.split('.')\n const withSep = int.replace(/\\B(?=(\\d{3})+(?!\\d))/g, separator)\n return dec !== undefined ? `${withSep}.${dec}` : withSep\n}\n","import {useEffect, useMemo, useState} from 'react'\nimport type {TimeAgoProps, TimeAgoUpdate} from './TimeAgo.types'\nimport {cn} from '../../../utils/cn'\nimport {useDocumentLocale} from '../../../utils/locale'\nimport {\n formatAbsoluteTime,\n formatRelativeTime,\n getAutoUpdateInterval,\n parseRelativeThreshold,\n toDate,\n} from '../../../utils/relativeTime'\nimport './TimeAgo.css'\n\nfunction getUpdateInterval(update: TimeAgoUpdate, value: Date | string | number, now: number): number | null {\n if (update === 'none') return null\n if (update === 'minute') return 60 * 1000\n if (update === 'hour') return 60 * 60 * 1000\n if (update === 'day') return 24 * 60 * 60 * 1000\n return getAutoUpdateInterval(value, now)\n}\n\nexport function TimeAgo({\n value,\n locale: localeOverride,\n maxRelative,\n fallbackFormat = 'date',\n titleAbsolute = true,\n update = 'auto',\n className,\n ...rest\n}: TimeAgoProps) {\n const locale = useDocumentLocale(localeOverride)\n const [now, setNow] = useState(() => Date.now())\n const interval = useMemo(() => getUpdateInterval(update, value, now), [now, update, value])\n\n useEffect(() => {\n if (!interval) return\n\n const id = window.setInterval(() => setNow(Date.now()), interval)\n return () => window.clearInterval(id)\n }, [interval])\n\n const date = useMemo(() => toDate(value), [value])\n const maxRelativeMs = useMemo(() => parseRelativeThreshold(maxRelative), [maxRelative])\n\n const absolute = useMemo(() => formatAbsoluteTime(value, locale, fallbackFormat), [value, locale, fallbackFormat])\n\n const content = useMemo(() => {\n if (!date) return String(value)\n\n const diff = Math.abs(date.getTime() - now)\n if (maxRelativeMs != null && diff > maxRelativeMs) {\n return absolute ?? String(value)\n }\n\n return formatRelativeTime(date, {locale, now}) ?? absolute ?? String(value)\n }, [absolute, date, locale, maxRelativeMs, now, value])\n\n return (\n <time\n className={cn('time ago', className)}\n dateTime={date?.toISOString()}\n title={titleAbsolute ? (absolute ?? undefined) : undefined}\n {...rest}\n >\n {content}\n </time>\n )\n}\n","import {useCallback, useEffect, useRef, useState} from 'react'\nimport type * as React from 'react'\nimport type {ColorPickerProps} from './ColorPicker.types'\nimport {cn} from '../../../utils/cn'\nimport './ColorPicker.css'\n\nfunction hsvToHex(h: number, s: number, v: number): string {\n const f = (n: number) => {\n const k = (n + h / 60) % 6\n return v - v * s * Math.max(0, Math.min(k, 4 - k, 1))\n }\n const r = Math.round(f(5) * 255)\n const g = Math.round(f(3) * 255)\n const b = Math.round(f(1) * 255)\n return `#${[r, g, b].map((c) => c.toString(16).padStart(2, '0')).join('')}`\n}\n\nfunction hexToHsv(hex: string): [number, number, number] {\n const m = hex.replace('#', '').match(/.{2}/g)\n if (!m) return [0, 0, 1]\n const [r, g, b] = m.map((c) => parseInt(c, 16) / 255)\n const max = Math.max(r, g, b)\n const min = Math.min(r, g, b)\n const d = max - min\n let h = 0\n if (d !== 0) {\n if (max === r) h = ((g - b) / d + 6) % 6\n else if (max === g) h = (b - r) / d + 2\n else h = (r - g) / d + 4\n h *= 60\n }\n const s = max === 0 ? 0 : d / max\n return [h, s, max]\n}\n\nfunction hexToRgb(hex: string): string {\n const m = hex.replace('#', '').match(/.{2}/g)\n if (!m) return 'rgb(0, 0, 0)'\n const [r, g, b] = m.map((c) => parseInt(c, 16))\n return `rgb(${r}, ${g}, ${b})`\n}\n\nfunction hexToHsl(hex: string): string {\n const m = hex.replace('#', '').match(/.{2}/g)\n if (!m) return 'hsl(0, 0%, 0%)'\n const [r, g, b] = m.map((c) => parseInt(c, 16) / 255)\n const max = Math.max(r, g, b)\n const min = Math.min(r, g, b)\n const l = (max + min) / 2\n let h = 0\n let s = 0\n if (max !== min) {\n const d = max - min\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min)\n if (max === r) h = ((g - b) / d + 6) % 6\n else if (max === g) h = (b - r) / d + 2\n else h = (r - g) / d + 4\n h *= 60\n }\n return `hsl(${Math.round(h)}, ${Math.round(s * 100)}%, ${Math.round(l * 100)}%)`\n}\n\nfunction formatOutput(hex: string, format: string): string {\n if (format === 'rgb') return hexToRgb(hex)\n if (format === 'hsl') return hexToHsl(hex)\n return hex\n}\n\nfunction normalizeToHex(value: string): string {\n if (!value) return '#000000'\n if (value.startsWith('#')) return value.length === 7 ? value : '#000000'\n const rgbMatch = value.match(/rgb\\((\\d+),\\s*(\\d+),\\s*(\\d+)\\)/)\n if (rgbMatch) {\n return `#${[rgbMatch[1], rgbMatch[2], rgbMatch[3]]\n .map((c) => parseInt(c).toString(16).padStart(2, '0'))\n .join('')}`\n }\n return '#000000'\n}\n\nconst DEFAULT_SWATCHES = [\n '#ef4444',\n '#f97316',\n '#eab308',\n '#22c55e',\n '#06b6d4',\n '#3b82f6',\n '#8b5cf6',\n '#ec4899',\n '#000000',\n '#ffffff',\n]\n\nexport function ColorPicker({\n value,\n onChange,\n swatches = DEFAULT_SWATCHES,\n format = 'hex',\n size = 'md',\n label,\n disabled = false,\n className,\n ...rest\n}: ColorPickerProps) {\n const hex = normalizeToHex(value ?? '#3b82f6')\n const [hsv, setHsv] = useState<[number, number, number]>(() => hexToHsv(hex))\n const [inputValue, setInputValue] = useState(formatOutput(hex, format))\n const areaRef = useRef<HTMLDivElement>(null)\n const hueRef = useRef<HTMLDivElement>(null)\n const dragging = useRef<'area' | 'hue' | null>(null)\n\n useEffect(() => {\n const newHex = normalizeToHex(value ?? '#3b82f6')\n setHsv(hexToHsv(newHex))\n setInputValue(formatOutput(newHex, format))\n }, [value, format])\n\n const emit = useCallback(\n (h: number, s: number, v: number) => {\n const newHex = hsvToHex(h, s, v)\n setHsv([h, s, v])\n setInputValue(formatOutput(newHex, format))\n onChange?.(formatOutput(newHex, format))\n },\n [onChange, format]\n )\n\n function handleAreaPointer(e: React.PointerEvent | PointerEvent) {\n const rect = areaRef.current?.getBoundingClientRect()\n if (!rect) return\n const s = Math.max(0, Math.min(1, (e.clientX - rect.left) / rect.width))\n const v = Math.max(0, Math.min(1, 1 - (e.clientY - rect.top) / rect.height))\n emit(hsv[0], s, v)\n }\n\n function handleHuePointer(e: React.PointerEvent | PointerEvent) {\n const rect = hueRef.current?.getBoundingClientRect()\n if (!rect) return\n const h = Math.max(0, Math.min(360, ((e.clientX - rect.left) / rect.width) * 360))\n emit(h, hsv[1], hsv[2])\n }\n\n useEffect(() => {\n function onMove(e: PointerEvent) {\n if (dragging.current === 'area') handleAreaPointer(e)\n else if (dragging.current === 'hue') handleHuePointer(e)\n }\n function onUp() {\n dragging.current = null\n }\n window.addEventListener('pointermove', onMove)\n window.addEventListener('pointerup', onUp)\n return () => {\n window.removeEventListener('pointermove', onMove)\n window.removeEventListener('pointerup', onUp)\n }\n })\n\n function handleInputChange(val: string) {\n setInputValue(val)\n try {\n const h = normalizeToHex(val)\n if (h !== '#000000' || val === '#000000' || val.toLowerCase() === 'rgb(0, 0, 0)') {\n setHsv(hexToHsv(h))\n onChange?.(formatOutput(h, format))\n }\n } catch {\n // ignore invalid input while typing\n }\n }\n\n const currentHex = hsvToHex(hsv[0], hsv[1], hsv[2])\n\n return (\n <div className={cn('color-picker', size, disabled && 'disabled', className)} {...rest}>\n {label && <label className=\"label\">{label}</label>}\n\n <div\n ref={areaRef}\n className=\"area\"\n style={{background: `hsl(${hsv[0]}, 100%, 50%)`}}\n onPointerDown={(e) => {\n if (disabled) return\n dragging.current = 'area'\n handleAreaPointer(e)\n }}\n >\n <div className=\"white\" />\n <div className=\"black\" />\n <div\n className=\"cursor\"\n style={{\n left: `${hsv[1] * 100}%`,\n top: `${(1 - hsv[2]) * 100}%`,\n background: currentHex,\n }}\n />\n </div>\n\n <div\n ref={hueRef}\n className=\"hue\"\n onPointerDown={(e) => {\n if (disabled) return\n dragging.current = 'hue'\n handleHuePointer(e)\n }}\n >\n <div className=\"hue-thumb\" style={{left: `${(hsv[0] / 360) * 100}%`}} />\n </div>\n\n <div className=\"controls\">\n <div className=\"preview\" style={{background: currentHex}} />\n <input\n type=\"text\"\n className=\"input\"\n value={inputValue}\n onChange={(e) => handleInputChange(e.target.value)}\n disabled={disabled}\n />\n </div>\n\n {swatches.length > 0 && (\n <div className=\"swatches\">\n {swatches.map((swatch) => (\n <button\n key={swatch}\n type=\"button\"\n className={cn('swatch', currentHex.toLowerCase() === swatch.toLowerCase() && 'active')}\n style={{background: swatch}}\n onClick={() => {\n if (disabled) return\n const [h, s, v] = hexToHsv(swatch)\n emit(h, s, v)\n }}\n />\n ))}\n </div>\n )}\n </div>\n )\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ const e=require(`./ChevronDownIcon-CkT_O5e5.cjs`),t=require(`./cn-BOmEz3Rt.cjs`),n=require(`./appearanceProps-65LbXIeI.cjs`),r=require(`./Stack-DzFHpLMS.cjs`),i=require(`./Button-BUd8Dkdx.cjs`),a=require(`./locale-C_PRdyIv.cjs`);let o=require(`react`),s=require(`react/jsx-runtime`);var c=1e3,l=60*c,u=60*l,d=24*u,f=7*d,p=Math.round(30.44*d),m=Math.round(365.25*d),h={s:c,m:l,h:u,d,w:f,mo:p,y:m};function g(e){let t=e instanceof Date?e:new Date(e);return Number.isNaN(t.getTime())?null:t}function _(e){if(e==null)return null;if(typeof e==`number`)return e>=0?e:null;let t=e.trim().match(/^(\d+)\s*(mo|[smhdwy])$/i);return t?Number(t[1])*h[t[2].toLowerCase()]:null}function v(e,t=Date.now()){let n=g(e),r=g(t);if(!n||!r)return null;let i=n.getTime()-r.getTime(),a=Math.abs(i);return a<l?{value:Math.round(i/c),unit:`second`}:a<u?{value:Math.round(i/l),unit:`minute`}:a<d?{value:Math.round(i/u),unit:`hour`}:a<f?{value:Math.round(i/d),unit:`day`}:a<p?{value:Math.round(i/f),unit:`week`}:a<m?{value:Math.round(i/p),unit:`month`}:{value:Math.round(i/m),unit:`year`}}function y(e,{locale:t=`en`,now:n=Date.now()}={}){let r=v(e,n);if(!r)return null;let i;try{i=new Intl.RelativeTimeFormat(t,{numeric:`auto`,style:`long`})}catch{i=new Intl.RelativeTimeFormat(`en`,{numeric:`auto`,style:`long`})}return i.format(r.value,r.unit)}function b(e,t=`en`,n=`date`){let r=g(e);if(!r)return null;let i;try{i=new Intl.DateTimeFormat(t,{dateStyle:`medium`,...n===`datetime`?{timeStyle:`short`}:{}})}catch{i=new Intl.DateTimeFormat(`en`,{dateStyle:`medium`,...n===`datetime`?{timeStyle:`short`}:{}})}return i.format(r)}function x(e,t=Date.now()){let n=g(e),r=g(t);if(!n||!r)return u;let i=Math.abs(n.getTime()-r.getTime());return i<l?c:i<u?l:i<d?u:d}function S({title:a,defaultOpen:c=!1,open:l,onToggle:u,fcolor:d,className:f,children:p,...m}){let[h,g]=(0,o.useState)(c),_=l??h,v=()=>{let e=!_;l===void 0&&g(e),u?.(e)},y=(0,s.jsx)(`span`,{className:t.t(`chevron`,_&&`open`),"aria-hidden":`true`,children:(0,s.jsx)(e.t,{})});return(0,s.jsxs)(`div`,{className:t.t(`collapsible`,...n.t({fcolor:d}),f),...m,children:[(0,s.jsx)(i.t,{variant:`ghost`,className:`trigger`,"aria-expanded":_,onClick:v,endIcon:y,children:a}),(0,s.jsx)(`div`,{className:t.t(`content-wrap`,_&&`open`),"aria-hidden":!_,children:(0,s.jsx)(r.t,{className:`content`,children:p})})]})}function C(e){return null}function w({multiple:e=!1,defaultOpen:n,onChange:r,bordered:i=!1,className:a,children:c,...l}){let[u,d]=(0,o.useState)(Array.isArray(n)?n:n?[n]:[]),f=(0,o.useCallback)((t,n)=>{d(i=>{let a;return a=n?e?[...i,t]:[t]:i.filter(e=>e!==t),r?.(a),a})},[e,r]),p=o.Children.toArray(c).filter(e=>(0,o.isValidElement)(e)&&e.type===C);return(0,s.jsx)(`div`,{className:t.t(`accordion`,i&&`bordered`,a),...l,children:p.map(e=>{if(!(0,o.isValidElement)(e))return null;let{id:n,title:r,children:i,disabled:a,fcolor:c}=e.props,l=u.includes(n);return(0,s.jsx)(`div`,{className:t.t(`accordion-item`,a&&`disabled`),children:(0,s.jsx)(S,{title:r,open:l,onToggle:a?void 0:e=>f(n,e),fcolor:c,children:i})},n)})})}var T=800;function E(e){return 1-(1-e)**3}function D({value:e,max:n=100,color:r=`primary`,size:i=`md`,label:a,showValue:c=!1,animated:l=!1,striped:u=!1,className:d,...f}){let p=Math.min(100,Math.max(0,e/n*100)),[m,h]=(0,o.useState)(0),[g,_]=(0,o.useState)(0),v=(0,o.useRef)(0),y=(0,o.useRef)(0),b=(0,o.useCallback)((e,t)=>{cancelAnimationFrame(y.current);let n=performance.now(),r=i=>{let a=i-n,o=Math.min(a/T,1),s=E(o);h(e+(t-e)*s),o<1&&(y.current=requestAnimationFrame(r))};_(t),y.current=requestAnimationFrame(r)},[]);return(0,o.useEffect)(()=>(b(v.current,p),v.current=p,()=>cancelAnimationFrame(y.current)),[p,b]),(0,s.jsxs)(`div`,{className:t.t(`progress bar`,r,i,d),role:`progressbar`,"aria-valuenow":e,"aria-valuemin":0,"aria-valuemax":n,"aria-label":a,...f,children:[(a||c)&&(0,s.jsxs)(`div`,{className:`progress bar header`,children:[a&&(0,s.jsx)(`span`,{className:`progress bar label`,children:a}),c&&(0,s.jsxs)(`span`,{className:`progress bar value`,children:[Math.round(m),`%`]})]}),(0,s.jsx)(`div`,{className:`progress bar track`,children:(0,s.jsx)(`div`,{className:t.t(`progress bar fill`,l&&`animated`,u&&`striped`),style:{width:`${g}%`}})})]})}function O({value:e,from:n=0,duration:r=1e3,decimals:i=0,prefix:a=``,suffix:c=``,separator:l=``,className:u,...d}){let[f,p]=(0,o.useState)(n),m=(0,o.useRef)(0),h=(0,o.useRef)(null);(0,o.useEffect)(()=>{let t=f;h.current=null;let n=i=>{h.current===null&&(h.current=i);let a=i-h.current,o=Math.min(a/r,1),s=1-(1-o)**3;p(t+(e-t)*s),o<1&&(m.current=requestAnimationFrame(n))};return m.current=requestAnimationFrame(n),()=>cancelAnimationFrame(m.current)},[e,r]);let g=k(f,i,l);return(0,s.jsxs)(`span`,{className:t.t(`count-up`,u),...d,children:[a,g,c]})}function k(e,t,n){let r=e.toFixed(t);if(!n)return r;let[i,a]=r.split(`.`),o=i.replace(/\B(?=(\d{3})+(?!\d))/g,n);return a===void 0?o:`${o}.${a}`}function A(e,t,n){return e===`none`?null:e===`minute`?60*1e3:e===`hour`?3600*1e3:e===`day`?1440*60*1e3:x(t,n)}function j({value:e,locale:n,maxRelative:r,fallbackFormat:i=`date`,titleAbsolute:c=!0,update:l=`auto`,className:u,...d}){let f=a.r(n),[p,m]=(0,o.useState)(()=>Date.now()),h=(0,o.useMemo)(()=>A(l,e,p),[p,l,e]);(0,o.useEffect)(()=>{if(!h)return;let e=window.setInterval(()=>m(Date.now()),h);return()=>window.clearInterval(e)},[h]);let v=(0,o.useMemo)(()=>g(e),[e]),x=(0,o.useMemo)(()=>_(r),[r]),S=(0,o.useMemo)(()=>b(e,f,i),[e,f,i]),C=(0,o.useMemo)(()=>{if(!v)return String(e);let t=Math.abs(v.getTime()-p);return x!=null&&t>x?S??String(e):y(v,{locale:f,now:p})??S??String(e)},[S,v,f,x,p,e]);return(0,s.jsx)(`time`,{className:t.t(`time ago`,u),dateTime:v?.toISOString(),title:c?S??void 0:void 0,...d,children:C})}function M(e,t,n){let r=r=>{let i=(r+e/60)%6;return n-n*t*Math.max(0,Math.min(i,4-i,1))};return`#${[Math.round(r(5)*255),Math.round(r(3)*255),Math.round(r(1)*255)].map(e=>e.toString(16).padStart(2,`0`)).join(``)}`}function N(e){let t=e.replace(`#`,``).match(/.{2}/g);if(!t)return[0,0,1];let[n,r,i]=t.map(e=>parseInt(e,16)/255),a=Math.max(n,r,i),o=a-Math.min(n,r,i),s=0;o!==0&&(s=a===n?((r-i)/o+6)%6:a===r?(i-n)/o+2:(n-r)/o+4,s*=60);let c=a===0?0:o/a;return[s,c,a]}function P(e){let t=e.replace(`#`,``).match(/.{2}/g);if(!t)return`rgb(0, 0, 0)`;let[n,r,i]=t.map(e=>parseInt(e,16));return`rgb(${n}, ${r}, ${i})`}function F(e){let t=e.replace(`#`,``).match(/.{2}/g);if(!t)return`hsl(0, 0%, 0%)`;let[n,r,i]=t.map(e=>parseInt(e,16)/255),a=Math.max(n,r,i),o=Math.min(n,r,i),s=(a+o)/2,c=0,l=0;if(a!==o){let e=a-o;l=s>.5?e/(2-a-o):e/(a+o),c=a===n?((r-i)/e+6)%6:a===r?(i-n)/e+2:(n-r)/e+4,c*=60}return`hsl(${Math.round(c)}, ${Math.round(l*100)}%, ${Math.round(s*100)}%)`}function I(e,t){return t===`rgb`?P(e):t===`hsl`?F(e):e}function L(e){if(!e)return`#000000`;if(e.startsWith(`#`))return e.length===7?e:`#000000`;let t=e.match(/rgb\((\d+),\s*(\d+),\s*(\d+)\)/);return t?`#${[t[1],t[2],t[3]].map(e=>parseInt(e).toString(16).padStart(2,`0`)).join(``)}`:`#000000`}var R=[`#ef4444`,`#f97316`,`#eab308`,`#22c55e`,`#06b6d4`,`#3b82f6`,`#8b5cf6`,`#ec4899`,`#000000`,`#ffffff`];function z({value:e,onChange:n,swatches:r=R,format:i=`hex`,size:a=`md`,label:c,disabled:l=!1,className:u,...d}){let f=L(e??`#3b82f6`),[p,m]=(0,o.useState)(()=>N(f)),[h,g]=(0,o.useState)(I(f,i)),_=(0,o.useRef)(null),v=(0,o.useRef)(null),y=(0,o.useRef)(null);(0,o.useEffect)(()=>{let t=L(e??`#3b82f6`);m(N(t)),g(I(t,i))},[e,i]);let b=(0,o.useCallback)((e,t,r)=>{let a=M(e,t,r);m([e,t,r]),g(I(a,i)),n?.(I(a,i))},[n,i]);function x(e){let t=_.current?.getBoundingClientRect();if(!t)return;let n=Math.max(0,Math.min(1,(e.clientX-t.left)/t.width)),r=Math.max(0,Math.min(1,1-(e.clientY-t.top)/t.height));b(p[0],n,r)}function S(e){let t=v.current?.getBoundingClientRect();t&&b(Math.max(0,Math.min(360,(e.clientX-t.left)/t.width*360)),p[1],p[2])}(0,o.useEffect)(()=>{function e(e){y.current===`area`?x(e):y.current===`hue`&&S(e)}function t(){y.current=null}return window.addEventListener(`pointermove`,e),window.addEventListener(`pointerup`,t),()=>{window.removeEventListener(`pointermove`,e),window.removeEventListener(`pointerup`,t)}});function C(e){g(e);try{let t=L(e);(t!==`#000000`||e===`#000000`||e.toLowerCase()===`rgb(0, 0, 0)`)&&(m(N(t)),n?.(I(t,i)))}catch{}}let w=M(p[0],p[1],p[2]);return(0,s.jsxs)(`div`,{className:t.t(`color-picker`,a,l&&`disabled`,u),...d,children:[c&&(0,s.jsx)(`label`,{className:`label`,children:c}),(0,s.jsxs)(`div`,{ref:_,className:`area`,style:{background:`hsl(${p[0]}, 100%, 50%)`},onPointerDown:e=>{l||(y.current=`area`,x(e))},children:[(0,s.jsx)(`div`,{className:`white`}),(0,s.jsx)(`div`,{className:`black`}),(0,s.jsx)(`div`,{className:`cursor`,style:{left:`${p[1]*100}%`,top:`${(1-p[2])*100}%`,background:w}})]}),(0,s.jsx)(`div`,{ref:v,className:`hue`,onPointerDown:e=>{l||(y.current=`hue`,S(e))},children:(0,s.jsx)(`div`,{className:`hue-thumb`,style:{left:`${p[0]/360*100}%`}})}),(0,s.jsxs)(`div`,{className:`controls`,children:[(0,s.jsx)(`div`,{className:`preview`,style:{background:w}}),(0,s.jsx)(`input`,{type:`text`,className:`input`,value:h,onChange:e=>C(e.target.value),disabled:l})]}),r.length>0&&(0,s.jsx)(`div`,{className:`swatches`,children:r.map(e=>(0,s.jsx)(`button`,{type:`button`,className:t.t(`swatch`,w.toLowerCase()===e.toLowerCase()&&`active`),style:{background:e},onClick:()=>{if(l)return;let[t,n,r]=N(e);b(t,n,r)}},e))})]})}Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return w}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,`d`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`f`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return C}}),Object.defineProperty(exports,`p`,{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return O}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return S}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return z}}),Object.defineProperty(exports,`u`,{enumerable:!0,get:function(){return x}});
2
+ //# sourceMappingURL=ColorPicker-DlrPaM8W.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColorPicker-DlrPaM8W.cjs","names":[],"sources":["../src/utils/relativeTime.ts","../src/components/display/Collapsible/Collapsible.tsx","../src/components/display/Accordion/Accordion.tsx","../src/components/display/ProgressBar/ProgressBar.tsx","../src/components/display/CountUp/CountUp.tsx","../src/components/display/TimeAgo/TimeAgo.tsx","../src/components/display/ColorPicker/ColorPicker.tsx"],"sourcesContent":["export type RelativeTimeUnit = Intl.RelativeTimeFormatUnit\n\nexport type RelativeTimeFallbackFormat = 'date' | 'datetime'\n\nexport interface RelativeTimeValue {\n value: number\n unit: RelativeTimeUnit\n}\n\nexport interface FormatRelativeTimeOptions {\n locale?: string\n now?: Date | number\n}\n\nconst SECOND = 1000\nconst MINUTE = 60 * SECOND\nconst HOUR = 60 * MINUTE\nconst DAY = 24 * HOUR\nconst WEEK = 7 * DAY\nconst MONTH = Math.round(30.44 * DAY)\nconst YEAR = Math.round(365.25 * DAY)\n\nconst thresholdMap = {\n s: SECOND,\n m: MINUTE,\n h: HOUR,\n d: DAY,\n w: WEEK,\n mo: MONTH,\n y: YEAR,\n} as const\n\nexport function toDate(value: Date | string | number): Date | null {\n const date = value instanceof Date ? value : new Date(value)\n return Number.isNaN(date.getTime()) ? null : date\n}\n\nexport function parseRelativeThreshold(value?: string | number | null): number | null {\n if (value == null) return null\n if (typeof value === 'number') return value >= 0 ? value : null\n\n const match = value.trim().match(/^(\\d+)\\s*(mo|[smhdwy])$/i)\n if (!match) return null\n\n const amount = Number(match[1])\n const unit = match[2].toLowerCase() as keyof typeof thresholdMap\n\n return amount * thresholdMap[unit]\n}\n\nexport function getRelativeTimeValue(\n value: Date | string | number,\n now: Date | number = Date.now()\n): RelativeTimeValue | null {\n const date = toDate(value)\n const current = toDate(now)\n\n if (!date || !current) return null\n\n const diff = date.getTime() - current.getTime()\n const abs = Math.abs(diff)\n\n if (abs < MINUTE) {\n return {value: Math.round(diff / SECOND), unit: 'second'}\n }\n\n if (abs < HOUR) {\n return {value: Math.round(diff / MINUTE), unit: 'minute'}\n }\n\n if (abs < DAY) {\n return {value: Math.round(diff / HOUR), unit: 'hour'}\n }\n\n if (abs < WEEK) {\n return {value: Math.round(diff / DAY), unit: 'day'}\n }\n\n if (abs < MONTH) {\n return {value: Math.round(diff / WEEK), unit: 'week'}\n }\n\n if (abs < YEAR) {\n return {value: Math.round(diff / MONTH), unit: 'month'}\n }\n\n return {value: Math.round(diff / YEAR), unit: 'year'}\n}\n\nexport function formatRelativeTime(\n value: Date | string | number,\n {locale = 'en', now = Date.now()}: FormatRelativeTimeOptions = {}\n): string | null {\n const relative = getRelativeTimeValue(value, now)\n\n if (!relative) return null\n\n let formatter: Intl.RelativeTimeFormat\n\n try {\n formatter = new Intl.RelativeTimeFormat(locale, {\n numeric: 'auto',\n style: 'long',\n })\n } catch {\n formatter = new Intl.RelativeTimeFormat('en', {\n numeric: 'auto',\n style: 'long',\n })\n }\n\n return formatter.format(relative.value, relative.unit)\n}\n\nexport function formatAbsoluteTime(\n value: Date | string | number,\n locale: string = 'en',\n fallbackFormat: RelativeTimeFallbackFormat = 'date'\n): string | null {\n const date = toDate(value)\n\n if (!date) return null\n\n let formatter: Intl.DateTimeFormat\n\n try {\n formatter = new Intl.DateTimeFormat(locale, {\n dateStyle: 'medium',\n ...(fallbackFormat === 'datetime' ? {timeStyle: 'short'} : {}),\n })\n } catch {\n formatter = new Intl.DateTimeFormat('en', {\n dateStyle: 'medium',\n ...(fallbackFormat === 'datetime' ? {timeStyle: 'short'} : {}),\n })\n }\n\n return formatter.format(date)\n}\n\nexport function getAutoUpdateInterval(value: Date | string | number, now: Date | number = Date.now()): number {\n const date = toDate(value)\n const current = toDate(now)\n\n if (!date || !current) return HOUR\n\n const diff = Math.abs(date.getTime() - current.getTime())\n\n if (diff < MINUTE) return SECOND\n if (diff < HOUR) return MINUTE\n if (diff < DAY) return HOUR\n return DAY\n}\n","import {useState} from 'react'\nimport {Button} from '../../controls'\nimport {Stack} from '../../layout'\nimport {cn} from '../../../utils/cn'\nimport {getAppearanceClassNames} from '../../../utils/appearanceProps'\nimport type {CollapsibleProps} from './Collapsible.types'\nimport {ChevronDownIcon} from '../../../icons'\nimport './Collapsible.css'\n\n// Toggle a section of content with a built-in trigger and disclosure state.\nexport function Collapsible({\n title,\n defaultOpen = false,\n open: controlledOpen,\n onToggle,\n fcolor,\n className,\n children,\n ...rest\n}: CollapsibleProps) {\n const [internalOpen, setInternalOpen] = useState(defaultOpen)\n const open = controlledOpen ?? internalOpen\n\n const handleToggle = () => {\n const nextOpen = !open\n\n if (controlledOpen === undefined) {\n setInternalOpen(nextOpen)\n }\n\n onToggle?.(nextOpen)\n }\n\n const chevronIcon = (\n <span className={cn('chevron', open && 'open')} aria-hidden=\"true\">\n <ChevronDownIcon />\n </span>\n )\n\n return (\n <div className={cn('collapsible', ...getAppearanceClassNames({fcolor}), className)} {...rest}>\n <Button\n variant=\"ghost\"\n className=\"trigger\"\n aria-expanded={open}\n onClick={handleToggle}\n endIcon={chevronIcon}\n >\n {title}\n </Button>\n <div className={cn('content-wrap', open && 'open')} aria-hidden={!open}>\n <Stack className=\"content\">{children}</Stack>\n </div>\n </div>\n )\n}\n","import {useState, useCallback, Children, isValidElement} from 'react'\nimport {Collapsible} from '../Collapsible'\nimport {cn} from '../../../utils/cn'\nimport type {AccordionProps, AccordionItemProps} from './Accordion.types'\nimport './Accordion.css'\n\nexport function AccordionItem(_props: AccordionItemProps) {\n return null\n}\n\nexport function Accordion({\n multiple = false,\n defaultOpen,\n onChange,\n bordered = false,\n className,\n children,\n ...rest\n}: AccordionProps) {\n const initialOpen = Array.isArray(defaultOpen) ? defaultOpen : defaultOpen ? [defaultOpen] : []\n\n const [openIds, setOpenIds] = useState<string[]>(initialOpen)\n\n const handleToggle = useCallback(\n (id: string, isOpen: boolean) => {\n setOpenIds((prev) => {\n let next: string[]\n if (isOpen) {\n next = multiple ? [...prev, id] : [id]\n } else {\n next = prev.filter((v) => v !== id)\n }\n onChange?.(next)\n return next\n })\n },\n [multiple, onChange]\n )\n\n const items = Children.toArray(children).filter(\n (child) => isValidElement(child) && (child.type as any) === AccordionItem\n )\n\n return (\n <div className={cn('accordion', bordered && 'bordered', className)} {...rest}>\n {items.map((child) => {\n if (!isValidElement<AccordionItemProps>(child)) return null\n const {id, title, children: content, disabled, fcolor} = child.props\n const isOpen = openIds.includes(id)\n\n return (\n <div key={id} className={cn('accordion-item', disabled && 'disabled')}>\n <Collapsible\n title={title}\n open={isOpen}\n onToggle={disabled ? undefined : (open) => handleToggle(id, open)}\n fcolor={fcolor}\n >\n {content}\n </Collapsible>\n </div>\n )\n })}\n </div>\n )\n}\n","import {useState, useEffect, useRef, useCallback} from 'react'\nimport type {ProgressBarProps} from './ProgressBar.types'\nimport {cn} from '../../../utils/cn'\nimport './ProgressBar.css'\n\nconst DURATION = 800\n\nfunction easeOutCubic(t: number) {\n return 1 - Math.pow(1 - t, 3)\n}\n\n// Render a horizontal bar that fills to represent progress as a percentage.\nexport function ProgressBar({\n value,\n max = 100,\n color = 'primary',\n size = 'md',\n label,\n showValue = false,\n animated = false,\n striped = false,\n className,\n ...rest\n}: ProgressBarProps) {\n const percent = Math.min(100, Math.max(0, (value / max) * 100))\n const [displayPercent, setDisplayPercent] = useState(0)\n const [barPercent, setBarPercent] = useState(0)\n const prevPercent = useRef(0)\n const rafRef = useRef(0)\n\n const animate = useCallback((from: number, to: number) => {\n cancelAnimationFrame(rafRef.current)\n const start = performance.now()\n\n const step = (now: number) => {\n const elapsed = now - start\n const progress = Math.min(elapsed / DURATION, 1)\n const eased = easeOutCubic(progress)\n const current = from + (to - from) * eased\n\n setDisplayPercent(current)\n if (progress < 1) {\n rafRef.current = requestAnimationFrame(step)\n }\n }\n\n // Set bar width immediately for CSS transition\n setBarPercent(to)\n rafRef.current = requestAnimationFrame(step)\n }, [])\n\n useEffect(() => {\n animate(prevPercent.current, percent)\n prevPercent.current = percent\n return () => cancelAnimationFrame(rafRef.current)\n }, [percent, animate])\n\n return (\n <div\n className={cn('progress bar', color, size, className)}\n role=\"progressbar\"\n aria-valuenow={value}\n aria-valuemin={0}\n aria-valuemax={max}\n aria-label={label}\n {...rest}\n >\n {(label || showValue) && (\n <div className=\"progress bar header\">\n {label && <span className=\"progress bar label\">{label}</span>}\n {showValue && <span className=\"progress bar value\">{Math.round(displayPercent)}%</span>}\n </div>\n )}\n <div className=\"progress bar track\">\n <div\n className={cn('progress bar fill', animated && 'animated', striped && 'striped')}\n style={{width: `${barPercent}%`}}\n />\n </div>\n </div>\n )\n}\n","import {useState, useEffect, useRef} from 'react'\nimport type {CountUpProps} from './CountUp.types'\nimport {cn} from '../../../utils/cn'\n\n// Animate a number from a start value to a target, with an easing curve.\nexport function CountUp({\n value,\n from = 0,\n duration = 1000,\n decimals = 0,\n prefix = '',\n suffix = '',\n separator = '',\n className,\n ...rest\n}: CountUpProps) {\n const [display, setDisplay] = useState(from)\n const rafRef = useRef<number>(0)\n const startRef = useRef<number | null>(null)\n\n useEffect(() => {\n const startValue = display\n startRef.current = null\n\n const step = (timestamp: number) => {\n if (startRef.current === null) startRef.current = timestamp\n const elapsed = timestamp - startRef.current\n const progress = Math.min(elapsed / duration, 1)\n const eased = 1 - Math.pow(1 - progress, 3)\n const current = startValue + (value - startValue) * eased\n\n setDisplay(current)\n\n if (progress < 1) {\n rafRef.current = requestAnimationFrame(step)\n }\n }\n\n rafRef.current = requestAnimationFrame(step)\n return () => cancelAnimationFrame(rafRef.current)\n }, [value, duration])\n\n const formatted = formatNumber(display, decimals, separator)\n\n return (\n <span className={cn('count-up', className)} {...rest}>\n {prefix}\n {formatted}\n {suffix}\n </span>\n )\n}\n\nfunction formatNumber(num: number, decimals: number, separator: string): string {\n const fixed = num.toFixed(decimals)\n if (!separator) return fixed\n\n const [int, dec] = fixed.split('.')\n const withSep = int.replace(/\\B(?=(\\d{3})+(?!\\d))/g, separator)\n return dec !== undefined ? `${withSep}.${dec}` : withSep\n}\n","import {useEffect, useMemo, useState} from 'react'\nimport type {TimeAgoProps, TimeAgoUpdate} from './TimeAgo.types'\nimport {cn} from '../../../utils/cn'\nimport {useDocumentLocale} from '../../../utils/locale'\nimport {\n formatAbsoluteTime,\n formatRelativeTime,\n getAutoUpdateInterval,\n parseRelativeThreshold,\n toDate,\n} from '../../../utils/relativeTime'\nimport './TimeAgo.css'\n\nfunction getUpdateInterval(update: TimeAgoUpdate, value: Date | string | number, now: number): number | null {\n if (update === 'none') return null\n if (update === 'minute') return 60 * 1000\n if (update === 'hour') return 60 * 60 * 1000\n if (update === 'day') return 24 * 60 * 60 * 1000\n return getAutoUpdateInterval(value, now)\n}\n\nexport function TimeAgo({\n value,\n locale: localeOverride,\n maxRelative,\n fallbackFormat = 'date',\n titleAbsolute = true,\n update = 'auto',\n className,\n ...rest\n}: TimeAgoProps) {\n const locale = useDocumentLocale(localeOverride)\n const [now, setNow] = useState(() => Date.now())\n const interval = useMemo(() => getUpdateInterval(update, value, now), [now, update, value])\n\n useEffect(() => {\n if (!interval) return\n\n const id = window.setInterval(() => setNow(Date.now()), interval)\n return () => window.clearInterval(id)\n }, [interval])\n\n const date = useMemo(() => toDate(value), [value])\n const maxRelativeMs = useMemo(() => parseRelativeThreshold(maxRelative), [maxRelative])\n\n const absolute = useMemo(() => formatAbsoluteTime(value, locale, fallbackFormat), [value, locale, fallbackFormat])\n\n const content = useMemo(() => {\n if (!date) return String(value)\n\n const diff = Math.abs(date.getTime() - now)\n if (maxRelativeMs != null && diff > maxRelativeMs) {\n return absolute ?? String(value)\n }\n\n return formatRelativeTime(date, {locale, now}) ?? absolute ?? String(value)\n }, [absolute, date, locale, maxRelativeMs, now, value])\n\n return (\n <time\n className={cn('time ago', className)}\n dateTime={date?.toISOString()}\n title={titleAbsolute ? (absolute ?? undefined) : undefined}\n {...rest}\n >\n {content}\n </time>\n )\n}\n","import {useCallback, useEffect, useRef, useState} from 'react'\nimport type * as React from 'react'\nimport type {ColorPickerProps} from './ColorPicker.types'\nimport {cn} from '../../../utils/cn'\nimport './ColorPicker.css'\n\nfunction hsvToHex(h: number, s: number, v: number): string {\n const f = (n: number) => {\n const k = (n + h / 60) % 6\n return v - v * s * Math.max(0, Math.min(k, 4 - k, 1))\n }\n const r = Math.round(f(5) * 255)\n const g = Math.round(f(3) * 255)\n const b = Math.round(f(1) * 255)\n return `#${[r, g, b].map((c) => c.toString(16).padStart(2, '0')).join('')}`\n}\n\nfunction hexToHsv(hex: string): [number, number, number] {\n const m = hex.replace('#', '').match(/.{2}/g)\n if (!m) return [0, 0, 1]\n const [r, g, b] = m.map((c) => parseInt(c, 16) / 255)\n const max = Math.max(r, g, b)\n const min = Math.min(r, g, b)\n const d = max - min\n let h = 0\n if (d !== 0) {\n if (max === r) h = ((g - b) / d + 6) % 6\n else if (max === g) h = (b - r) / d + 2\n else h = (r - g) / d + 4\n h *= 60\n }\n const s = max === 0 ? 0 : d / max\n return [h, s, max]\n}\n\nfunction hexToRgb(hex: string): string {\n const m = hex.replace('#', '').match(/.{2}/g)\n if (!m) return 'rgb(0, 0, 0)'\n const [r, g, b] = m.map((c) => parseInt(c, 16))\n return `rgb(${r}, ${g}, ${b})`\n}\n\nfunction hexToHsl(hex: string): string {\n const m = hex.replace('#', '').match(/.{2}/g)\n if (!m) return 'hsl(0, 0%, 0%)'\n const [r, g, b] = m.map((c) => parseInt(c, 16) / 255)\n const max = Math.max(r, g, b)\n const min = Math.min(r, g, b)\n const l = (max + min) / 2\n let h = 0\n let s = 0\n if (max !== min) {\n const d = max - min\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min)\n if (max === r) h = ((g - b) / d + 6) % 6\n else if (max === g) h = (b - r) / d + 2\n else h = (r - g) / d + 4\n h *= 60\n }\n return `hsl(${Math.round(h)}, ${Math.round(s * 100)}%, ${Math.round(l * 100)}%)`\n}\n\nfunction formatOutput(hex: string, format: string): string {\n if (format === 'rgb') return hexToRgb(hex)\n if (format === 'hsl') return hexToHsl(hex)\n return hex\n}\n\nfunction normalizeToHex(value: string): string {\n if (!value) return '#000000'\n if (value.startsWith('#')) return value.length === 7 ? value : '#000000'\n const rgbMatch = value.match(/rgb\\((\\d+),\\s*(\\d+),\\s*(\\d+)\\)/)\n if (rgbMatch) {\n return `#${[rgbMatch[1], rgbMatch[2], rgbMatch[3]]\n .map((c) => parseInt(c).toString(16).padStart(2, '0'))\n .join('')}`\n }\n return '#000000'\n}\n\nconst DEFAULT_SWATCHES = [\n '#ef4444',\n '#f97316',\n '#eab308',\n '#22c55e',\n '#06b6d4',\n '#3b82f6',\n '#8b5cf6',\n '#ec4899',\n '#000000',\n '#ffffff',\n]\n\nexport function ColorPicker({\n value,\n onChange,\n swatches = DEFAULT_SWATCHES,\n format = 'hex',\n size = 'md',\n label,\n disabled = false,\n className,\n ...rest\n}: ColorPickerProps) {\n const hex = normalizeToHex(value ?? '#3b82f6')\n const [hsv, setHsv] = useState<[number, number, number]>(() => hexToHsv(hex))\n const [inputValue, setInputValue] = useState(formatOutput(hex, format))\n const areaRef = useRef<HTMLDivElement>(null)\n const hueRef = useRef<HTMLDivElement>(null)\n const dragging = useRef<'area' | 'hue' | null>(null)\n\n useEffect(() => {\n const newHex = normalizeToHex(value ?? '#3b82f6')\n setHsv(hexToHsv(newHex))\n setInputValue(formatOutput(newHex, format))\n }, [value, format])\n\n const emit = useCallback(\n (h: number, s: number, v: number) => {\n const newHex = hsvToHex(h, s, v)\n setHsv([h, s, v])\n setInputValue(formatOutput(newHex, format))\n onChange?.(formatOutput(newHex, format))\n },\n [onChange, format]\n )\n\n function handleAreaPointer(e: React.PointerEvent | PointerEvent) {\n const rect = areaRef.current?.getBoundingClientRect()\n if (!rect) return\n const s = Math.max(0, Math.min(1, (e.clientX - rect.left) / rect.width))\n const v = Math.max(0, Math.min(1, 1 - (e.clientY - rect.top) / rect.height))\n emit(hsv[0], s, v)\n }\n\n function handleHuePointer(e: React.PointerEvent | PointerEvent) {\n const rect = hueRef.current?.getBoundingClientRect()\n if (!rect) return\n const h = Math.max(0, Math.min(360, ((e.clientX - rect.left) / rect.width) * 360))\n emit(h, hsv[1], hsv[2])\n }\n\n useEffect(() => {\n function onMove(e: PointerEvent) {\n if (dragging.current === 'area') handleAreaPointer(e)\n else if (dragging.current === 'hue') handleHuePointer(e)\n }\n function onUp() {\n dragging.current = null\n }\n window.addEventListener('pointermove', onMove)\n window.addEventListener('pointerup', onUp)\n return () => {\n window.removeEventListener('pointermove', onMove)\n window.removeEventListener('pointerup', onUp)\n }\n })\n\n function handleInputChange(val: string) {\n setInputValue(val)\n try {\n const h = normalizeToHex(val)\n if (h !== '#000000' || val === '#000000' || val.toLowerCase() === 'rgb(0, 0, 0)') {\n setHsv(hexToHsv(h))\n onChange?.(formatOutput(h, format))\n }\n } catch {\n // ignore invalid input while typing\n }\n }\n\n const currentHex = hsvToHex(hsv[0], hsv[1], hsv[2])\n\n return (\n <div className={cn('color-picker', size, disabled && 'disabled', className)} {...rest}>\n {label && <label className=\"label\">{label}</label>}\n\n <div\n ref={areaRef}\n className=\"area\"\n style={{background: `hsl(${hsv[0]}, 100%, 50%)`}}\n onPointerDown={(e) => {\n if (disabled) return\n dragging.current = 'area'\n handleAreaPointer(e)\n }}\n >\n <div className=\"white\" />\n <div className=\"black\" />\n <div\n className=\"cursor\"\n style={{\n left: `${hsv[1] * 100}%`,\n top: `${(1 - hsv[2]) * 100}%`,\n background: currentHex,\n }}\n />\n </div>\n\n <div\n ref={hueRef}\n className=\"hue\"\n onPointerDown={(e) => {\n if (disabled) return\n dragging.current = 'hue'\n handleHuePointer(e)\n }}\n >\n <div className=\"hue-thumb\" style={{left: `${(hsv[0] / 360) * 100}%`}} />\n </div>\n\n <div className=\"controls\">\n <div className=\"preview\" style={{background: currentHex}} />\n <input\n type=\"text\"\n className=\"input\"\n value={inputValue}\n onChange={(e) => handleInputChange(e.target.value)}\n disabled={disabled}\n />\n </div>\n\n {swatches.length > 0 && (\n <div className=\"swatches\">\n {swatches.map((swatch) => (\n <button\n key={swatch}\n type=\"button\"\n className={cn('swatch', currentHex.toLowerCase() === swatch.toLowerCase() && 'active')}\n style={{background: swatch}}\n onClick={() => {\n if (disabled) return\n const [h, s, v] = hexToHsv(swatch)\n emit(h, s, v)\n }}\n />\n ))}\n </div>\n )}\n </div>\n )\n}\n"],"mappings":"2RAcA,IAAM,EAAS,IACT,EAAS,GAAK,EACd,EAAO,GAAK,EACZ,EAAM,GAAK,EACX,EAAO,EAAI,EACX,EAAQ,KAAK,MAAM,MAAQ,EAAI,CAC/B,EAAO,KAAK,MAAM,OAAS,EAAI,CAE/B,EAAe,CACjB,EAAG,EACH,EAAG,EACH,EAAG,EACA,EACH,EAAG,EACH,GAAI,EACJ,EAAG,EACN,CAED,SAAgB,EAAO,EAA4C,CAC/D,IAAM,EAAO,aAAiB,KAAO,EAAQ,IAAI,KAAK,EAAM,CAC5D,OAAO,OAAO,MAAM,EAAK,SAAS,CAAC,CAAG,KAAO,EAGjD,SAAgB,EAAuB,EAA+C,CAClF,GAAI,GAAS,KAAM,OAAO,KAC1B,GAAI,OAAO,GAAU,SAAU,OAAO,GAAS,EAAI,EAAQ,KAE3D,IAAM,EAAQ,EAAM,MAAM,CAAC,MAAM,2BAA2B,CAM5D,OALK,EAEU,OAAO,EAAM,GAAG,CAGf,EAFH,EAAM,GAAG,aAAa,EAHhB,KAQvB,SAAgB,EACZ,EACA,EAAqB,KAAK,KAAK,CACP,CACxB,IAAM,EAAO,EAAO,EAAM,CACpB,EAAU,EAAO,EAAI,CAE3B,GAAI,CAAC,GAAQ,CAAC,EAAS,OAAO,KAE9B,IAAM,EAAO,EAAK,SAAS,CAAG,EAAQ,SAAS,CACzC,EAAM,KAAK,IAAI,EAAK,CA0B1B,OAxBI,EAAM,EACC,CAAC,MAAO,KAAK,MAAM,EAAO,EAAO,CAAE,KAAM,SAAS,CAGzD,EAAM,EACC,CAAC,MAAO,KAAK,MAAM,EAAO,EAAO,CAAE,KAAM,SAAS,CAGzD,EAAM,EACC,CAAC,MAAO,KAAK,MAAM,EAAO,EAAK,CAAE,KAAM,OAAO,CAGrD,EAAM,EACC,CAAC,MAAO,KAAK,MAAM,EAAO,EAAI,CAAE,KAAM,MAAM,CAGnD,EAAM,EACC,CAAC,MAAO,KAAK,MAAM,EAAO,EAAK,CAAE,KAAM,OAAO,CAGrD,EAAM,EACC,CAAC,MAAO,KAAK,MAAM,EAAO,EAAM,CAAE,KAAM,QAAQ,CAGpD,CAAC,MAAO,KAAK,MAAM,EAAO,EAAK,CAAE,KAAM,OAAO,CAGzD,SAAgB,EACZ,EACA,CAAC,SAAS,KAAM,MAAM,KAAK,KAAK,EAA+B,EAAE,CACpD,CACb,IAAM,EAAW,EAAqB,EAAO,EAAI,CAEjD,GAAI,CAAC,EAAU,OAAO,KAEtB,IAAI,EAEJ,GAAI,CACA,EAAY,IAAI,KAAK,mBAAmB,EAAQ,CAC5C,QAAS,OACT,MAAO,OACV,CAAC,MACE,CACJ,EAAY,IAAI,KAAK,mBAAmB,KAAM,CAC1C,QAAS,OACT,MAAO,OACV,CAAC,CAGN,OAAO,EAAU,OAAO,EAAS,MAAO,EAAS,KAAK,CAG1D,SAAgB,EACZ,EACA,EAAiB,KACjB,EAA6C,OAChC,CACb,IAAM,EAAO,EAAO,EAAM,CAE1B,GAAI,CAAC,EAAM,OAAO,KAElB,IAAI,EAEJ,GAAI,CACA,EAAY,IAAI,KAAK,eAAe,EAAQ,CACxC,UAAW,SACX,GAAI,IAAmB,WAAa,CAAC,UAAW,QAAQ,CAAG,EAAE,CAChE,CAAC,MACE,CACJ,EAAY,IAAI,KAAK,eAAe,KAAM,CACtC,UAAW,SACX,GAAI,IAAmB,WAAa,CAAC,UAAW,QAAQ,CAAG,EAAE,CAChE,CAAC,CAGN,OAAO,EAAU,OAAO,EAAK,CAGjC,SAAgB,EAAsB,EAA+B,EAAqB,KAAK,KAAK,CAAU,CAC1G,IAAM,EAAO,EAAO,EAAM,CACpB,EAAU,EAAO,EAAI,CAE3B,GAAI,CAAC,GAAQ,CAAC,EAAS,OAAO,EAE9B,IAAM,EAAO,KAAK,IAAI,EAAK,SAAS,CAAG,EAAQ,SAAS,CAAC,CAKzD,OAHI,EAAO,EAAe,EACtB,EAAO,EAAa,EACpB,EAAO,EAAY,EAChB,EC7IX,SAAgB,EAAY,CACxB,QACA,cAAc,GACd,KAAM,EACN,WACA,SACA,YACA,WACA,GAAG,GACc,CACjB,GAAM,CAAC,EAAc,IAAA,EAAA,EAAA,UAA4B,EAAY,CACvD,EAAO,GAAkB,EAEzB,MAAqB,CACvB,IAAM,EAAW,CAAC,EAEd,IAAmB,IAAA,IACnB,EAAgB,EAAS,CAG7B,IAAW,EAAS,EAGlB,GACF,EAAA,EAAA,KAAC,OAAD,CAAM,UAAW,EAAA,EAAG,UAAW,GAAQ,OAAO,CAAE,cAAY,iBACxD,EAAA,EAAA,KAAC,EAAA,EAAD,EAAmB,CAAA,CAChB,CAAA,CAGX,OACI,EAAA,EAAA,MAAC,MAAD,CAAK,UAAW,EAAA,EAAG,cAAe,GAAG,EAAA,EAAwB,CAAC,SAAO,CAAC,CAAE,EAAU,CAAE,GAAI,WAAxF,EACI,EAAA,EAAA,KAAC,EAAA,EAAD,CACI,QAAQ,QACR,UAAU,UACV,gBAAe,EACf,QAAS,EACT,QAAS,WAER,EACI,CAAA,EACT,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,EAAA,EAAG,eAAgB,GAAQ,OAAO,CAAE,cAAa,CAAC,YAC9D,EAAA,EAAA,KAAC,EAAA,EAAD,CAAO,UAAU,UAAW,WAAiB,CAAA,CAC3C,CAAA,CACJ,GC/Cd,SAAgB,EAAc,EAA4B,CACtD,OAAO,KAGX,SAAgB,EAAU,CACtB,WAAW,GACX,cACA,WACA,WAAW,GACX,YACA,WACA,GAAG,GACY,CAGf,GAAM,CAAC,EAAS,IAAA,EAAA,EAAA,UAFI,MAAM,QAAQ,EAAY,CAAG,EAAc,EAAc,CAAC,EAAY,CAAG,EAAE,CAElC,CAEvD,GAAA,EAAA,EAAA,cACD,EAAY,IAAoB,CAC7B,EAAY,GAAS,CACjB,IAAI,EAOJ,MANA,CAGI,EAHA,EACO,EAAW,CAAC,GAAG,EAAM,EAAG,CAAG,CAAC,EAAG,CAE/B,EAAK,OAAQ,GAAM,IAAM,EAAG,CAEvC,IAAW,EAAK,CACT,GACT,EAEN,CAAC,EAAU,EAAS,CACvB,CAEK,EAAQ,EAAA,SAAS,QAAQ,EAAS,CAAC,OACpC,IAAA,EAAA,EAAA,gBAAyB,EAAM,EAAK,EAAM,OAAiB,EAC/D,CAED,OACI,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,EAAA,EAAG,YAAa,GAAY,WAAY,EAAU,CAAE,GAAI,WACnE,EAAM,IAAK,GAAU,CAClB,GAAI,EAAA,EAAA,EAAA,gBAAoC,EAAM,CAAE,OAAO,KACvD,GAAM,CAAC,KAAI,QAAO,SAAU,EAAS,WAAU,UAAU,EAAM,MACzD,EAAS,EAAQ,SAAS,EAAG,CAEnC,OACI,EAAA,EAAA,KAAC,MAAD,CAAc,UAAW,EAAA,EAAG,iBAAkB,GAAY,WAAW,WACjE,EAAA,EAAA,KAAC,EAAD,CACW,QACP,KAAM,EACN,SAAU,EAAW,IAAA,GAAa,GAAS,EAAa,EAAI,EAAK,CACzD,kBAEP,EACS,CAAA,CACZ,CATI,EASJ,EAEZ,CACA,CAAA,CC1Dd,IAAM,EAAW,IAEjB,SAAS,EAAa,EAAW,CAC7B,MAAO,IAAa,EAAI,IAAG,EAI/B,SAAgB,EAAY,CACxB,QACA,MAAM,IACN,QAAQ,UACR,OAAO,KACP,QACA,YAAY,GACZ,WAAW,GACX,UAAU,GACV,YACA,GAAG,GACc,CACjB,IAAM,EAAU,KAAK,IAAI,IAAK,KAAK,IAAI,EAAI,EAAQ,EAAO,IAAI,CAAC,CACzD,CAAC,EAAgB,IAAA,EAAA,EAAA,UAA8B,EAAE,CACjD,CAAC,EAAY,IAAA,EAAA,EAAA,UAA0B,EAAE,CACzC,GAAA,EAAA,EAAA,QAAqB,EAAE,CACvB,GAAA,EAAA,EAAA,QAAgB,EAAE,CAElB,GAAA,EAAA,EAAA,cAAuB,EAAc,IAAe,CACtD,qBAAqB,EAAO,QAAQ,CACpC,IAAM,EAAQ,YAAY,KAAK,CAEzB,EAAQ,GAAgB,CAC1B,IAAM,EAAU,EAAM,EAChB,EAAW,KAAK,IAAI,EAAU,EAAU,EAAE,CAC1C,EAAQ,EAAa,EAAS,CAGpC,EAFgB,GAAQ,EAAK,GAAQ,EAEX,CACtB,EAAW,IACX,EAAO,QAAU,sBAAsB,EAAK,GAKpD,EAAc,EAAG,CACjB,EAAO,QAAU,sBAAsB,EAAK,EAC7C,EAAE,CAAC,CAQN,OANA,EAAA,EAAA,gBACI,EAAQ,EAAY,QAAS,EAAQ,CACrC,EAAY,QAAU,MACT,qBAAqB,EAAO,QAAQ,EAClD,CAAC,EAAS,EAAQ,CAAC,EAGlB,EAAA,EAAA,MAAC,MAAD,CACI,UAAW,EAAA,EAAG,eAAgB,EAAO,EAAM,EAAU,CACrD,KAAK,cACL,gBAAe,EACf,gBAAe,EACf,gBAAe,EACf,aAAY,EACZ,GAAI,WAPR,EASM,GAAS,KACP,EAAA,EAAA,MAAC,MAAD,CAAK,UAAU,+BAAf,CACK,IAAS,EAAA,EAAA,KAAC,OAAD,CAAM,UAAU,8BAAsB,EAAa,CAAA,CAC5D,IAAa,EAAA,EAAA,MAAC,OAAD,CAAM,UAAU,8BAAhB,CAAsC,KAAK,MAAM,EAAe,CAAC,IAAQ,GACrF,IAEV,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,+BACX,EAAA,EAAA,KAAC,MAAD,CACI,UAAW,EAAA,EAAG,oBAAqB,GAAY,WAAY,GAAW,UAAU,CAChF,MAAO,CAAC,MAAO,GAAG,EAAW,GAAG,CAClC,CAAA,CACA,CAAA,CACJ,GC1Ed,SAAgB,EAAQ,CACpB,QACA,OAAO,EACP,WAAW,IACX,WAAW,EACX,SAAS,GACT,SAAS,GACT,YAAY,GACZ,YACA,GAAG,GACU,CACb,GAAM,CAAC,EAAS,IAAA,EAAA,EAAA,UAAuB,EAAK,CACtC,GAAA,EAAA,EAAA,QAAwB,EAAE,CAC1B,GAAA,EAAA,EAAA,QAAiC,KAAK,EAE5C,EAAA,EAAA,eAAgB,CACZ,IAAM,EAAa,EACnB,EAAS,QAAU,KAEnB,IAAM,EAAQ,GAAsB,CAC5B,EAAS,UAAY,OAAM,EAAS,QAAU,GAClD,IAAM,EAAU,EAAY,EAAS,QAC/B,EAAW,KAAK,IAAI,EAAU,EAAU,EAAE,CAC1C,EAAQ,GAAa,EAAI,IAAU,EAGzC,EAFgB,GAAc,EAAQ,GAAc,EAEjC,CAEf,EAAW,IACX,EAAO,QAAU,sBAAsB,EAAK,GAKpD,MADA,GAAO,QAAU,sBAAsB,EAAK,KAC/B,qBAAqB,EAAO,QAAQ,EAClD,CAAC,EAAO,EAAS,CAAC,CAErB,IAAM,EAAY,EAAa,EAAS,EAAU,EAAU,CAE5D,OACI,EAAA,EAAA,MAAC,OAAD,CAAM,UAAW,EAAA,EAAG,WAAY,EAAU,CAAE,GAAI,WAAhD,CACK,EACA,EACA,EACE,GAIf,SAAS,EAAa,EAAa,EAAkB,EAA2B,CAC5E,IAAM,EAAQ,EAAI,QAAQ,EAAS,CACnC,GAAI,CAAC,EAAW,OAAO,EAEvB,GAAM,CAAC,EAAK,GAAO,EAAM,MAAM,IAAI,CAC7B,EAAU,EAAI,QAAQ,wBAAyB,EAAU,CAC/D,OAAO,IAAQ,IAAA,GAAkC,EAAtB,GAAG,EAAQ,GAAG,IC9C7C,SAAS,EAAkB,EAAuB,EAA+B,EAA4B,CAKzG,OAJI,IAAW,OAAe,KAC1B,IAAW,SAAiB,GAAK,IACjC,IAAW,OAAe,KAAU,IACpC,IAAW,MAAc,KAAU,GAAK,IACrC,EAAsB,EAAO,EAAI,CAG5C,SAAgB,EAAQ,CACpB,QACA,OAAQ,EACR,cACA,iBAAiB,OACjB,gBAAgB,GAChB,SAAS,OACT,YACA,GAAG,GACU,CACb,IAAM,EAAS,EAAA,EAAkB,EAAe,CAC1C,CAAC,EAAK,IAAA,EAAA,EAAA,cAAyB,KAAK,KAAK,CAAC,CAC1C,GAAA,EAAA,EAAA,aAAyB,EAAkB,EAAQ,EAAO,EAAI,CAAE,CAAC,EAAK,EAAQ,EAAM,CAAC,EAE3F,EAAA,EAAA,eAAgB,CACZ,GAAI,CAAC,EAAU,OAEf,IAAM,EAAK,OAAO,gBAAkB,EAAO,KAAK,KAAK,CAAC,CAAE,EAAS,CACjE,UAAa,OAAO,cAAc,EAAG,EACtC,CAAC,EAAS,CAAC,CAEd,IAAM,GAAA,EAAA,EAAA,aAAqB,EAAO,EAAM,CAAE,CAAC,EAAM,CAAC,CAC5C,GAAA,EAAA,EAAA,aAA8B,EAAuB,EAAY,CAAE,CAAC,EAAY,CAAC,CAEjF,GAAA,EAAA,EAAA,aAAyB,EAAmB,EAAO,EAAQ,EAAe,CAAE,CAAC,EAAO,EAAQ,EAAe,CAAC,CAE5G,GAAA,EAAA,EAAA,aAAwB,CAC1B,GAAI,CAAC,EAAM,OAAO,OAAO,EAAM,CAE/B,IAAM,EAAO,KAAK,IAAI,EAAK,SAAS,CAAG,EAAI,CAK3C,OAJI,GAAiB,MAAQ,EAAO,EACzB,GAAY,OAAO,EAAM,CAG7B,EAAmB,EAAM,CAAC,SAAQ,MAAI,CAAC,EAAI,GAAY,OAAO,EAAM,EAC5E,CAAC,EAAU,EAAM,EAAQ,EAAe,EAAK,EAAM,CAAC,CAEvD,OACI,EAAA,EAAA,KAAC,OAAD,CACI,UAAW,EAAA,EAAG,WAAY,EAAU,CACpC,SAAU,GAAM,aAAa,CAC7B,MAAO,EAAiB,GAAY,IAAA,GAAa,IAAA,GACjD,GAAI,WAEH,EACE,CAAA,CC5Df,SAAS,EAAS,EAAW,EAAW,EAAmB,CACvD,IAAM,EAAK,GAAc,CACrB,IAAM,GAAK,EAAI,EAAI,IAAM,EACzB,OAAO,EAAI,EAAI,EAAI,KAAK,IAAI,EAAG,KAAK,IAAI,EAAG,EAAI,EAAG,EAAE,CAAC,EAKzD,MAAO,IAAI,CAHD,KAAK,MAAM,EAAE,EAAE,CAAG,IAAI,CACtB,KAAK,MAAM,EAAE,EAAE,CAAG,IAAI,CACtB,KAAK,MAAM,EAAE,EAAE,CAAG,IAAI,CACZ,CAAC,IAAK,GAAM,EAAE,SAAS,GAAG,CAAC,SAAS,EAAG,IAAI,CAAC,CAAC,KAAK,GAAG,GAG7E,SAAS,EAAS,EAAuC,CACrD,IAAM,EAAI,EAAI,QAAQ,IAAK,GAAG,CAAC,MAAM,QAAQ,CAC7C,GAAI,CAAC,EAAG,MAAO,CAAC,EAAG,EAAG,EAAE,CACxB,GAAM,CAAC,EAAG,EAAG,GAAK,EAAE,IAAK,GAAM,SAAS,EAAG,GAAG,CAAG,IAAI,CAC/C,EAAM,KAAK,IAAI,EAAG,EAAG,EAAE,CAEvB,EAAI,EADE,KAAK,IAAI,EAAG,EAAG,EAAE,CAEzB,EAAI,EACJ,IAAM,IACN,AAEK,EAFD,IAAQ,IAAS,EAAI,GAAK,EAAI,GAAK,EAC9B,IAAQ,GAAQ,EAAI,GAAK,EAAI,GAC5B,EAAI,GAAK,EAAI,EACvB,GAAK,IAET,IAAM,EAAI,IAAQ,EAAI,EAAI,EAAI,EAC9B,MAAO,CAAC,EAAG,EAAG,EAAI,CAGtB,SAAS,EAAS,EAAqB,CACnC,IAAM,EAAI,EAAI,QAAQ,IAAK,GAAG,CAAC,MAAM,QAAQ,CAC7C,GAAI,CAAC,EAAG,MAAO,eACf,GAAM,CAAC,EAAG,EAAG,GAAK,EAAE,IAAK,GAAM,SAAS,EAAG,GAAG,CAAC,CAC/C,MAAO,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,GAGhC,SAAS,EAAS,EAAqB,CACnC,IAAM,EAAI,EAAI,QAAQ,IAAK,GAAG,CAAC,MAAM,QAAQ,CAC7C,GAAI,CAAC,EAAG,MAAO,iBACf,GAAM,CAAC,EAAG,EAAG,GAAK,EAAE,IAAK,GAAM,SAAS,EAAG,GAAG,CAAG,IAAI,CAC/C,EAAM,KAAK,IAAI,EAAG,EAAG,EAAE,CACvB,EAAM,KAAK,IAAI,EAAG,EAAG,EAAE,CACvB,GAAK,EAAM,GAAO,EACpB,EAAI,EACJ,EAAI,EACR,GAAI,IAAQ,EAAK,CACb,IAAM,EAAI,EAAM,EAChB,EAAI,EAAI,GAAM,GAAK,EAAI,EAAM,GAAO,GAAK,EAAM,GAC/C,AAEK,EAFD,IAAQ,IAAS,EAAI,GAAK,EAAI,GAAK,EAC9B,IAAQ,GAAQ,EAAI,GAAK,EAAI,GAC5B,EAAI,GAAK,EAAI,EACvB,GAAK,GAET,MAAO,OAAO,KAAK,MAAM,EAAE,CAAC,IAAI,KAAK,MAAM,EAAI,IAAI,CAAC,KAAK,KAAK,MAAM,EAAI,IAAI,CAAC,IAGjF,SAAS,EAAa,EAAa,EAAwB,CAGvD,OAFI,IAAW,MAAc,EAAS,EAAI,CACtC,IAAW,MAAc,EAAS,EAAI,CACnC,EAGX,SAAS,EAAe,EAAuB,CAC3C,GAAI,CAAC,EAAO,MAAO,UACnB,GAAI,EAAM,WAAW,IAAI,CAAE,OAAO,EAAM,SAAW,EAAI,EAAQ,UAC/D,IAAM,EAAW,EAAM,MAAM,iCAAiC,CAM9D,OALI,EACO,IAAI,CAAC,EAAS,GAAI,EAAS,GAAI,EAAS,GAAG,CAC7C,IAAK,GAAM,SAAS,EAAE,CAAC,SAAS,GAAG,CAAC,SAAS,EAAG,IAAI,CAAC,CACrD,KAAK,GAAG,GAEV,UAGX,IAAM,EAAmB,CACrB,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACH,CAED,SAAgB,EAAY,CACxB,QACA,WACA,WAAW,EACX,SAAS,MACT,OAAO,KACP,QACA,WAAW,GACX,YACA,GAAG,GACc,CACjB,IAAM,EAAM,EAAe,GAAS,UAAU,CACxC,CAAC,EAAK,IAAA,EAAA,EAAA,cAAmD,EAAS,EAAI,CAAC,CACvE,CAAC,EAAY,IAAA,EAAA,EAAA,UAA0B,EAAa,EAAK,EAAO,CAAC,CACjE,GAAA,EAAA,EAAA,QAAiC,KAAK,CACtC,GAAA,EAAA,EAAA,QAAgC,KAAK,CACrC,GAAA,EAAA,EAAA,QAAyC,KAAK,EAEpD,EAAA,EAAA,eAAgB,CACZ,IAAM,EAAS,EAAe,GAAS,UAAU,CACjD,EAAO,EAAS,EAAO,CAAC,CACxB,EAAc,EAAa,EAAQ,EAAO,CAAC,EAC5C,CAAC,EAAO,EAAO,CAAC,CAEnB,IAAM,GAAA,EAAA,EAAA,cACD,EAAW,EAAW,IAAc,CACjC,IAAM,EAAS,EAAS,EAAG,EAAG,EAAE,CAChC,EAAO,CAAC,EAAG,EAAG,EAAE,CAAC,CACjB,EAAc,EAAa,EAAQ,EAAO,CAAC,CAC3C,IAAW,EAAa,EAAQ,EAAO,CAAC,EAE5C,CAAC,EAAU,EAAO,CACrB,CAED,SAAS,EAAkB,EAAsC,CAC7D,IAAM,EAAO,EAAQ,SAAS,uBAAuB,CACrD,GAAI,CAAC,EAAM,OACX,IAAM,EAAI,KAAK,IAAI,EAAG,KAAK,IAAI,GAAI,EAAE,QAAU,EAAK,MAAQ,EAAK,MAAM,CAAC,CAClE,EAAI,KAAK,IAAI,EAAG,KAAK,IAAI,EAAG,GAAK,EAAE,QAAU,EAAK,KAAO,EAAK,OAAO,CAAC,CAC5E,EAAK,EAAI,GAAI,EAAG,EAAE,CAGtB,SAAS,EAAiB,EAAsC,CAC5D,IAAM,EAAO,EAAO,SAAS,uBAAuB,CAC/C,GAEL,EADU,KAAK,IAAI,EAAG,KAAK,IAAI,KAAO,EAAE,QAAU,EAAK,MAAQ,EAAK,MAAS,IAAI,CAAC,CAC1E,EAAI,GAAI,EAAI,GAAG,EAG3B,EAAA,EAAA,eAAgB,CACZ,SAAS,EAAO,EAAiB,CACzB,EAAS,UAAY,OAAQ,EAAkB,EAAE,CAC5C,EAAS,UAAY,OAAO,EAAiB,EAAE,CAE5D,SAAS,GAAO,CACZ,EAAS,QAAU,KAIvB,OAFA,OAAO,iBAAiB,cAAe,EAAO,CAC9C,OAAO,iBAAiB,YAAa,EAAK,KAC7B,CACT,OAAO,oBAAoB,cAAe,EAAO,CACjD,OAAO,oBAAoB,YAAa,EAAK,GAEnD,CAEF,SAAS,EAAkB,EAAa,CACpC,EAAc,EAAI,CAClB,GAAI,CACA,IAAM,EAAI,EAAe,EAAI,EACzB,IAAM,WAAa,IAAQ,WAAa,EAAI,aAAa,GAAK,kBAC9D,EAAO,EAAS,EAAE,CAAC,CACnB,IAAW,EAAa,EAAG,EAAO,CAAC,OAEnC,GAKZ,IAAM,EAAa,EAAS,EAAI,GAAI,EAAI,GAAI,EAAI,GAAG,CAEnD,OACI,EAAA,EAAA,MAAC,MAAD,CAAK,UAAW,EAAA,EAAG,eAAgB,EAAM,GAAY,WAAY,EAAU,CAAE,GAAI,WAAjF,CACK,IAAS,EAAA,EAAA,KAAC,QAAD,CAAO,UAAU,iBAAS,EAAc,CAAA,EAElD,EAAA,EAAA,MAAC,MAAD,CACI,IAAK,EACL,UAAU,OACV,MAAO,CAAC,WAAY,OAAO,EAAI,GAAG,cAAc,CAChD,cAAgB,GAAM,CACd,IACJ,EAAS,QAAU,OACnB,EAAkB,EAAE,YAP5B,EAUI,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,QAAU,CAAA,EACzB,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,QAAU,CAAA,EACzB,EAAA,EAAA,KAAC,MAAD,CACI,UAAU,SACV,MAAO,CACH,KAAM,GAAG,EAAI,GAAK,IAAI,GACtB,IAAK,IAAI,EAAI,EAAI,IAAM,IAAI,GAC3B,WAAY,EACf,CACH,CAAA,CACA,IAEN,EAAA,EAAA,KAAC,MAAD,CACI,IAAK,EACL,UAAU,MACV,cAAgB,GAAM,CACd,IACJ,EAAS,QAAU,MACnB,EAAiB,EAAE,aAGvB,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,YAAY,MAAO,CAAC,KAAM,GAAI,EAAI,GAAK,IAAO,IAAI,GAAG,CAAI,CAAA,CACtE,CAAA,EAEN,EAAA,EAAA,MAAC,MAAD,CAAK,UAAU,oBAAf,EACI,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,UAAU,MAAO,CAAC,WAAY,EAAW,CAAI,CAAA,EAC5D,EAAA,EAAA,KAAC,QAAD,CACI,KAAK,OACL,UAAU,QACV,MAAO,EACP,SAAW,GAAM,EAAkB,EAAE,OAAO,MAAM,CACxC,WACZ,CAAA,CACA,GAEL,EAAS,OAAS,IACf,EAAA,EAAA,KAAC,MAAD,CAAK,UAAU,oBACV,EAAS,IAAK,IACX,EAAA,EAAA,KAAC,SAAD,CAEI,KAAK,SACL,UAAW,EAAA,EAAG,SAAU,EAAW,aAAa,GAAK,EAAO,aAAa,EAAI,SAAS,CACtF,MAAO,CAAC,WAAY,EAAO,CAC3B,YAAe,CACX,GAAI,EAAU,OACd,GAAM,CAAC,EAAG,EAAG,GAAK,EAAS,EAAO,CAClC,EAAK,EAAG,EAAG,EAAE,EAEnB,CATO,EASP,CACJ,CACA,CAAA,CAER"}