@cerberus-design/react 0.0.0-next-bd980a6d9bd07d60e8d7200bd4d56624754e936c

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 (861) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +68 -0
  3. package/dist/components/AnimatingUploadIcon.cjs +71 -0
  4. package/dist/components/AnimatingUploadIcon.d.cts +8 -0
  5. package/dist/components/AnimatingUploadIcon.d.ts +8 -0
  6. package/dist/components/AnimatingUploadIcon.js +71 -0
  7. package/dist/components/accordion/index.cjs +12 -0
  8. package/dist/components/accordion/index.d.cts +3 -0
  9. package/dist/components/accordion/index.d.ts +3 -0
  10. package/dist/components/accordion/index.js +4 -0
  11. package/dist/components/accordion/item-group.cjs +52 -0
  12. package/dist/components/accordion/item-group.d.cts +28 -0
  13. package/dist/components/accordion/item-group.d.ts +28 -0
  14. package/dist/components/accordion/item-group.js +51 -0
  15. package/dist/components/accordion/item-indicator.cjs +22 -0
  16. package/dist/components/accordion/item-indicator.d.cts +7 -0
  17. package/dist/components/accordion/item-indicator.d.ts +7 -0
  18. package/dist/components/accordion/item-indicator.js +22 -0
  19. package/dist/components/accordion/parts.cjs +20 -0
  20. package/dist/components/accordion/parts.d.cts +38 -0
  21. package/dist/components/accordion/parts.d.ts +38 -0
  22. package/dist/components/accordion/parts.js +20 -0
  23. package/dist/components/accordion/primitives.cjs +58 -0
  24. package/dist/components/accordion/primitives.d.cts +47 -0
  25. package/dist/components/accordion/primitives.d.ts +47 -0
  26. package/dist/components/accordion/primitives.js +54 -0
  27. package/dist/components/admonition/admonition.cjs +38 -0
  28. package/dist/components/admonition/admonition.d.cts +28 -0
  29. package/dist/components/admonition/admonition.d.ts +28 -0
  30. package/dist/components/admonition/admonition.js +38 -0
  31. package/dist/components/admonition/index.cjs +11 -0
  32. package/dist/components/admonition/index.d.cts +3 -0
  33. package/dist/components/admonition/index.d.ts +3 -0
  34. package/dist/components/admonition/index.js +4 -0
  35. package/dist/components/admonition/match-avatar.cjs +41 -0
  36. package/dist/components/admonition/match-avatar.d.cts +4 -0
  37. package/dist/components/admonition/match-avatar.d.ts +4 -0
  38. package/dist/components/admonition/match-avatar.js +41 -0
  39. package/dist/components/admonition/parts.cjs +20 -0
  40. package/dist/components/admonition/parts.d.cts +38 -0
  41. package/dist/components/admonition/parts.d.ts +38 -0
  42. package/dist/components/admonition/parts.js +20 -0
  43. package/dist/components/admonition/primitives.cjs +49 -0
  44. package/dist/components/admonition/primitives.d.cts +29 -0
  45. package/dist/components/admonition/primitives.d.ts +29 -0
  46. package/dist/components/admonition/primitives.js +45 -0
  47. package/dist/components/avatar/avatar.cjs +27 -0
  48. package/dist/components/avatar/avatar.d.cts +24 -0
  49. package/dist/components/avatar/avatar.d.ts +24 -0
  50. package/dist/components/avatar/avatar.js +27 -0
  51. package/dist/components/avatar/index.cjs +16 -0
  52. package/dist/components/avatar/index.d.cts +4 -0
  53. package/dist/components/avatar/index.d.ts +4 -0
  54. package/dist/components/avatar/index.js +5 -0
  55. package/dist/components/avatar/parts.cjs +18 -0
  56. package/dist/components/avatar/parts.d.cts +30 -0
  57. package/dist/components/avatar/parts.d.ts +30 -0
  58. package/dist/components/avatar/parts.js +18 -0
  59. package/dist/components/avatar/primitives.cjs +25 -0
  60. package/dist/components/avatar/primitives.d.cts +19 -0
  61. package/dist/components/avatar/primitives.d.ts +19 -0
  62. package/dist/components/avatar/primitives.js +23 -0
  63. package/dist/components/button/button.cjs +58 -0
  64. package/dist/components/button/button.d.cts +21 -0
  65. package/dist/components/button/button.d.ts +21 -0
  66. package/dist/components/button/button.js +57 -0
  67. package/dist/components/button/index.cjs +8 -0
  68. package/dist/components/button/index.d.cts +3 -0
  69. package/dist/components/button/index.d.ts +3 -0
  70. package/dist/components/button/index.js +4 -0
  71. package/dist/components/button/parts.cjs +17 -0
  72. package/dist/components/button/parts.d.cts +26 -0
  73. package/dist/components/button/parts.d.ts +26 -0
  74. package/dist/components/button/parts.js +17 -0
  75. package/dist/components/button/primitives.cjs +21 -0
  76. package/dist/components/button/primitives.d.cts +14 -0
  77. package/dist/components/button/primitives.d.ts +14 -0
  78. package/dist/components/button/primitives.js +21 -0
  79. package/dist/components/carousel/carousel.cjs +38 -0
  80. package/dist/components/carousel/carousel.d.cts +33 -0
  81. package/dist/components/carousel/carousel.d.ts +33 -0
  82. package/dist/components/carousel/carousel.js +38 -0
  83. package/dist/components/carousel/index.cjs +14 -0
  84. package/dist/components/carousel/index.d.cts +3 -0
  85. package/dist/components/carousel/index.d.ts +3 -0
  86. package/dist/components/carousel/index.js +4 -0
  87. package/dist/components/carousel/parts.cjs +23 -0
  88. package/dist/components/carousel/parts.d.cts +50 -0
  89. package/dist/components/carousel/parts.d.ts +50 -0
  90. package/dist/components/carousel/parts.js +23 -0
  91. package/dist/components/carousel/primitives.cjs +26 -0
  92. package/dist/components/carousel/primitives.d.cts +20 -0
  93. package/dist/components/carousel/primitives.d.ts +20 -0
  94. package/dist/components/carousel/primitives.js +19 -0
  95. package/dist/components/checkbox/checkbox-icon.cjs +33 -0
  96. package/dist/components/checkbox/checkbox-icon.d.cts +21 -0
  97. package/dist/components/checkbox/checkbox-icon.d.ts +21 -0
  98. package/dist/components/checkbox/checkbox-icon.js +33 -0
  99. package/dist/components/checkbox/checkbox.cjs +38 -0
  100. package/dist/components/checkbox/checkbox.d.cts +14 -0
  101. package/dist/components/checkbox/checkbox.d.ts +14 -0
  102. package/dist/components/checkbox/checkbox.js +38 -0
  103. package/dist/components/checkbox/index.cjs +12 -0
  104. package/dist/components/checkbox/index.d.cts +3 -0
  105. package/dist/components/checkbox/index.d.ts +3 -0
  106. package/dist/components/checkbox/index.js +4 -0
  107. package/dist/components/checkbox/parts.cjs +21 -0
  108. package/dist/components/checkbox/parts.d.cts +42 -0
  109. package/dist/components/checkbox/parts.d.ts +42 -0
  110. package/dist/components/checkbox/parts.js +21 -0
  111. package/dist/components/checkbox/primitives.cjs +54 -0
  112. package/dist/components/checkbox/primitives.d.cts +48 -0
  113. package/dist/components/checkbox/primitives.d.ts +48 -0
  114. package/dist/components/checkbox/primitives.js +49 -0
  115. package/dist/components/circular-progress/circular-progress.cjs +16 -0
  116. package/dist/components/circular-progress/circular-progress.d.cts +19 -0
  117. package/dist/components/circular-progress/circular-progress.d.ts +19 -0
  118. package/dist/components/circular-progress/circular-progress.js +16 -0
  119. package/dist/components/circular-progress/index.cjs +11 -0
  120. package/dist/components/circular-progress/index.d.cts +2 -0
  121. package/dist/components/circular-progress/index.d.ts +2 -0
  122. package/dist/components/circular-progress/index.js +3 -0
  123. package/dist/components/circular-progress/primitives.cjs +24 -0
  124. package/dist/components/circular-progress/primitives.d.cts +19 -0
  125. package/dist/components/circular-progress/primitives.d.ts +19 -0
  126. package/dist/components/circular-progress/primitives.js +18 -0
  127. package/dist/components/clipboard/copy-indicator.cjs +20 -0
  128. package/dist/components/clipboard/copy-indicator.d.cts +6 -0
  129. package/dist/components/clipboard/copy-indicator.d.ts +6 -0
  130. package/dist/components/clipboard/copy-indicator.js +20 -0
  131. package/dist/components/clipboard/copy-text.cjs +17 -0
  132. package/dist/components/clipboard/copy-text.d.cts +6 -0
  133. package/dist/components/clipboard/copy-text.d.ts +6 -0
  134. package/dist/components/clipboard/copy-text.js +17 -0
  135. package/dist/components/clipboard/index.cjs +11 -0
  136. package/dist/components/clipboard/index.d.cts +2 -0
  137. package/dist/components/clipboard/index.d.ts +2 -0
  138. package/dist/components/clipboard/index.js +3 -0
  139. package/dist/components/clipboard/parts.cjs +26 -0
  140. package/dist/components/clipboard/parts.d.cts +53 -0
  141. package/dist/components/clipboard/parts.d.ts +53 -0
  142. package/dist/components/clipboard/parts.js +26 -0
  143. package/dist/components/clipboard/primitives.cjs +23 -0
  144. package/dist/components/clipboard/primitives.d.cts +17 -0
  145. package/dist/components/clipboard/primitives.d.ts +17 -0
  146. package/dist/components/clipboard/primitives.js +17 -0
  147. package/dist/components/clipboard/trigger.cjs +19 -0
  148. package/dist/components/clipboard/trigger.d.cts +5 -0
  149. package/dist/components/clipboard/trigger.d.ts +5 -0
  150. package/dist/components/clipboard/trigger.js +19 -0
  151. package/dist/components/collapsible/index.cjs +9 -0
  152. package/dist/components/collapsible/index.d.cts +2 -0
  153. package/dist/components/collapsible/index.d.ts +2 -0
  154. package/dist/components/collapsible/index.js +3 -0
  155. package/dist/components/collapsible/parts.cjs +20 -0
  156. package/dist/components/collapsible/parts.d.cts +38 -0
  157. package/dist/components/collapsible/parts.d.ts +38 -0
  158. package/dist/components/collapsible/parts.js +20 -0
  159. package/dist/components/collapsible/primitives.cjs +20 -0
  160. package/dist/components/collapsible/primitives.d.cts +14 -0
  161. package/dist/components/collapsible/primitives.d.ts +14 -0
  162. package/dist/components/collapsible/primitives.js +16 -0
  163. package/dist/components/combobox/combobox.cjs +42 -0
  164. package/dist/components/combobox/combobox.d.cts +14 -0
  165. package/dist/components/combobox/combobox.d.ts +14 -0
  166. package/dist/components/combobox/combobox.js +42 -0
  167. package/dist/components/combobox/index.cjs +28 -0
  168. package/dist/components/combobox/index.d.cts +6 -0
  169. package/dist/components/combobox/index.d.ts +6 -0
  170. package/dist/components/combobox/index.js +7 -0
  171. package/dist/components/combobox/item-group.cjs +13 -0
  172. package/dist/components/combobox/item-group.d.cts +8 -0
  173. package/dist/components/combobox/item-group.d.ts +8 -0
  174. package/dist/components/combobox/item-group.js +13 -0
  175. package/dist/components/combobox/item.cjs +25 -0
  176. package/dist/components/combobox/item.d.cts +11 -0
  177. package/dist/components/combobox/item.d.ts +11 -0
  178. package/dist/components/combobox/item.js +25 -0
  179. package/dist/components/combobox/parts.cjs +29 -0
  180. package/dist/components/combobox/parts.d.cts +74 -0
  181. package/dist/components/combobox/parts.d.ts +74 -0
  182. package/dist/components/combobox/parts.js +29 -0
  183. package/dist/components/combobox/primitives.cjs +86 -0
  184. package/dist/components/combobox/primitives.d.cts +82 -0
  185. package/dist/components/combobox/primitives.d.ts +82 -0
  186. package/dist/components/combobox/primitives.js +71 -0
  187. package/dist/components/combobox/use-stateful-collection.cjs +32 -0
  188. package/dist/components/combobox/use-stateful-collection.d.cts +28 -0
  189. package/dist/components/combobox/use-stateful-collection.d.ts +28 -0
  190. package/dist/components/combobox/use-stateful-collection.js +32 -0
  191. package/dist/components/cta-dialog/context.cjs +6 -0
  192. package/dist/components/cta-dialog/context.d.cts +32 -0
  193. package/dist/components/cta-dialog/context.d.ts +32 -0
  194. package/dist/components/cta-dialog/context.js +7 -0
  195. package/dist/components/cta-dialog/index.cjs +6 -0
  196. package/dist/components/cta-dialog/index.d.cts +2 -0
  197. package/dist/components/cta-dialog/index.d.ts +2 -0
  198. package/dist/components/cta-dialog/index.js +3 -0
  199. package/dist/components/cta-dialog/provider.cjs +147 -0
  200. package/dist/components/cta-dialog/provider.d.cts +41 -0
  201. package/dist/components/cta-dialog/provider.d.ts +41 -0
  202. package/dist/components/cta-dialog/provider.js +146 -0
  203. package/dist/components/cta-dialog/trigger-item.cjs +31 -0
  204. package/dist/components/cta-dialog/trigger-item.d.cts +14 -0
  205. package/dist/components/cta-dialog/trigger-item.d.ts +14 -0
  206. package/dist/components/cta-dialog/trigger-item.js +31 -0
  207. package/dist/components/cta-dialog/utils.cjs +18 -0
  208. package/dist/components/cta-dialog/utils.d.cts +30 -0
  209. package/dist/components/cta-dialog/utils.d.ts +30 -0
  210. package/dist/components/cta-dialog/utils.js +18 -0
  211. package/dist/components/date-picker/calendar.cjs +36 -0
  212. package/dist/components/date-picker/calendar.d.cts +27 -0
  213. package/dist/components/date-picker/calendar.d.ts +27 -0
  214. package/dist/components/date-picker/calendar.js +36 -0
  215. package/dist/components/date-picker/content.cjs +19 -0
  216. package/dist/components/date-picker/content.d.cts +12 -0
  217. package/dist/components/date-picker/content.d.ts +12 -0
  218. package/dist/components/date-picker/content.js +19 -0
  219. package/dist/components/date-picker/date-picker.cjs +17 -0
  220. package/dist/components/date-picker/date-picker.d.cts +7 -0
  221. package/dist/components/date-picker/date-picker.d.ts +7 -0
  222. package/dist/components/date-picker/date-picker.js +17 -0
  223. package/dist/components/date-picker/day-view.cjs +39 -0
  224. package/dist/components/date-picker/day-view.d.cts +13 -0
  225. package/dist/components/date-picker/day-view.d.ts +13 -0
  226. package/dist/components/date-picker/day-view.js +39 -0
  227. package/dist/components/date-picker/index.cjs +68 -0
  228. package/dist/components/date-picker/index.d.cts +8 -0
  229. package/dist/components/date-picker/index.d.ts +8 -0
  230. package/dist/components/date-picker/index.js +9 -0
  231. package/dist/components/date-picker/input.cjs +23 -0
  232. package/dist/components/date-picker/input.d.cts +11 -0
  233. package/dist/components/date-picker/input.d.ts +11 -0
  234. package/dist/components/date-picker/input.js +23 -0
  235. package/dist/components/date-picker/month-view.cjs +31 -0
  236. package/dist/components/date-picker/month-view.d.cts +12 -0
  237. package/dist/components/date-picker/month-view.d.ts +12 -0
  238. package/dist/components/date-picker/month-view.js +31 -0
  239. package/dist/components/date-picker/parts.cjs +39 -0
  240. package/dist/components/date-picker/parts.d.cts +114 -0
  241. package/dist/components/date-picker/parts.d.ts +114 -0
  242. package/dist/components/date-picker/parts.js +39 -0
  243. package/dist/components/date-picker/primitives.cjs +58 -0
  244. package/dist/components/date-picker/primitives.d.cts +136 -0
  245. package/dist/components/date-picker/primitives.d.ts +136 -0
  246. package/dist/components/date-picker/primitives.js +35 -0
  247. package/dist/components/date-picker/range-input.cjs +35 -0
  248. package/dist/components/date-picker/range-input.d.cts +12 -0
  249. package/dist/components/date-picker/range-input.d.ts +12 -0
  250. package/dist/components/date-picker/range-input.js +35 -0
  251. package/dist/components/date-picker/trigger.cjs +31 -0
  252. package/dist/components/date-picker/trigger.d.cts +10 -0
  253. package/dist/components/date-picker/trigger.d.ts +10 -0
  254. package/dist/components/date-picker/trigger.js +31 -0
  255. package/dist/components/date-picker/view-control-group.cjs +59 -0
  256. package/dist/components/date-picker/view-control-group.d.cts +12 -0
  257. package/dist/components/date-picker/view-control-group.d.ts +12 -0
  258. package/dist/components/date-picker/view-control-group.js +59 -0
  259. package/dist/components/date-picker/year-view.cjs +28 -0
  260. package/dist/components/date-picker/year-view.d.cts +12 -0
  261. package/dist/components/date-picker/year-view.d.ts +12 -0
  262. package/dist/components/date-picker/year-view.js +28 -0
  263. package/dist/components/dialog/close-icon-trigger.cjs +32 -0
  264. package/dist/components/dialog/close-icon-trigger.d.cts +6 -0
  265. package/dist/components/dialog/close-icon-trigger.d.ts +6 -0
  266. package/dist/components/dialog/close-icon-trigger.js +32 -0
  267. package/dist/components/dialog/dialog.cjs +26 -0
  268. package/dist/components/dialog/dialog.d.cts +24 -0
  269. package/dist/components/dialog/dialog.d.ts +24 -0
  270. package/dist/components/dialog/dialog.js +26 -0
  271. package/dist/components/dialog/index.cjs +18 -0
  272. package/dist/components/dialog/index.d.cts +7 -0
  273. package/dist/components/dialog/index.d.ts +7 -0
  274. package/dist/components/dialog/index.js +5 -0
  275. package/dist/components/dialog/parts.cjs +23 -0
  276. package/dist/components/dialog/parts.d.cts +50 -0
  277. package/dist/components/dialog/parts.d.ts +50 -0
  278. package/dist/components/dialog/parts.js +23 -0
  279. package/dist/components/dialog/primitives.cjs +33 -0
  280. package/dist/components/dialog/primitives.d.cts +51 -0
  281. package/dist/components/dialog/primitives.d.ts +51 -0
  282. package/dist/components/dialog/primitives.js +24 -0
  283. package/dist/components/feature-flag/feature-flag.cjs +17 -0
  284. package/dist/components/feature-flag/feature-flag.d.cts +12 -0
  285. package/dist/components/feature-flag/feature-flag.d.ts +12 -0
  286. package/dist/components/feature-flag/feature-flag.js +17 -0
  287. package/dist/components/feature-flag/index.cjs +3 -0
  288. package/dist/components/feature-flag/index.d.cts +1 -0
  289. package/dist/components/feature-flag/index.d.ts +1 -0
  290. package/dist/components/feature-flag/index.js +2 -0
  291. package/dist/components/field/error-text.cjs +22 -0
  292. package/dist/components/field/error-text.d.cts +14 -0
  293. package/dist/components/field/error-text.d.ts +14 -0
  294. package/dist/components/field/error-text.js +22 -0
  295. package/dist/components/field/field.cjs +72 -0
  296. package/dist/components/field/field.d.cts +45 -0
  297. package/dist/components/field/field.d.ts +45 -0
  298. package/dist/components/field/field.js +72 -0
  299. package/dist/components/field/helper-text.cjs +18 -0
  300. package/dist/components/field/helper-text.d.cts +11 -0
  301. package/dist/components/field/helper-text.d.ts +11 -0
  302. package/dist/components/field/helper-text.js +18 -0
  303. package/dist/components/field/index.cjs +20 -0
  304. package/dist/components/field/index.d.cts +6 -0
  305. package/dist/components/field/index.d.ts +6 -0
  306. package/dist/components/field/index.js +6 -0
  307. package/dist/components/field/input.cjs +21 -0
  308. package/dist/components/field/input.d.cts +18 -0
  309. package/dist/components/field/input.d.ts +18 -0
  310. package/dist/components/field/input.js +21 -0
  311. package/dist/components/field/parts.cjs +26 -0
  312. package/dist/components/field/parts.d.cts +54 -0
  313. package/dist/components/field/parts.d.ts +54 -0
  314. package/dist/components/field/parts.js +26 -0
  315. package/dist/components/field/primitives.cjs +81 -0
  316. package/dist/components/field/primitives.d.cts +73 -0
  317. package/dist/components/field/primitives.d.ts +73 -0
  318. package/dist/components/field/primitives.js +72 -0
  319. package/dist/components/field/start-indicator.cjs +20 -0
  320. package/dist/components/field/start-indicator.d.cts +7 -0
  321. package/dist/components/field/start-indicator.d.ts +7 -0
  322. package/dist/components/field/start-indicator.js +20 -0
  323. package/dist/components/field/status-indicator.cjs +41 -0
  324. package/dist/components/field/status-indicator.d.cts +18 -0
  325. package/dist/components/field/status-indicator.d.ts +18 -0
  326. package/dist/components/field/status-indicator.js +41 -0
  327. package/dist/components/fieldset/fieldset.cjs +35 -0
  328. package/dist/components/fieldset/fieldset.d.cts +26 -0
  329. package/dist/components/fieldset/fieldset.d.ts +26 -0
  330. package/dist/components/fieldset/fieldset.js +35 -0
  331. package/dist/components/fieldset/index.cjs +10 -0
  332. package/dist/components/fieldset/index.d.cts +3 -0
  333. package/dist/components/fieldset/index.d.ts +3 -0
  334. package/dist/components/fieldset/index.js +4 -0
  335. package/dist/components/fieldset/parts.cjs +19 -0
  336. package/dist/components/fieldset/parts.d.cts +34 -0
  337. package/dist/components/fieldset/parts.d.ts +34 -0
  338. package/dist/components/fieldset/parts.js +19 -0
  339. package/dist/components/fieldset/primitives.cjs +18 -0
  340. package/dist/components/fieldset/primitives.d.cts +12 -0
  341. package/dist/components/fieldset/primitives.d.ts +12 -0
  342. package/dist/components/fieldset/primitives.js +15 -0
  343. package/dist/components/file-upload/file-status.cjs +169 -0
  344. package/dist/components/file-upload/file-status.d.cts +74 -0
  345. package/dist/components/file-upload/file-status.d.ts +74 -0
  346. package/dist/components/file-upload/file-status.js +168 -0
  347. package/dist/components/file-upload/file-uploader.cjs +47 -0
  348. package/dist/components/file-upload/file-uploader.d.cts +17 -0
  349. package/dist/components/file-upload/file-uploader.d.ts +17 -0
  350. package/dist/components/file-upload/file-uploader.js +47 -0
  351. package/dist/components/file-upload/helpers.cjs +19 -0
  352. package/dist/components/file-upload/helpers.d.cts +16 -0
  353. package/dist/components/file-upload/helpers.d.ts +16 -0
  354. package/dist/components/file-upload/helpers.js +19 -0
  355. package/dist/components/file-upload/img-preview.cjs +37 -0
  356. package/dist/components/file-upload/img-preview.d.cts +2 -0
  357. package/dist/components/file-upload/img-preview.d.ts +2 -0
  358. package/dist/components/file-upload/img-preview.js +37 -0
  359. package/dist/components/file-upload/index.cjs +31 -0
  360. package/dist/components/file-upload/index.d.cts +6 -0
  361. package/dist/components/file-upload/index.d.ts +6 -0
  362. package/dist/components/file-upload/index.js +7 -0
  363. package/dist/components/file-upload/parts.cjs +33 -0
  364. package/dist/components/file-upload/parts.d.cts +90 -0
  365. package/dist/components/file-upload/parts.d.ts +90 -0
  366. package/dist/components/file-upload/parts.js +33 -0
  367. package/dist/components/file-upload/primitives.cjs +42 -0
  368. package/dist/components/file-upload/primitives.d.cts +41 -0
  369. package/dist/components/file-upload/primitives.d.ts +41 -0
  370. package/dist/components/file-upload/primitives.js +25 -0
  371. package/dist/components/file-upload/utils.cjs +18 -0
  372. package/dist/components/file-upload/utils.d.cts +7 -0
  373. package/dist/components/file-upload/utils.d.ts +7 -0
  374. package/dist/components/file-upload/utils.js +18 -0
  375. package/dist/components/for/for.cjs +20 -0
  376. package/dist/components/for/for.d.cts +28 -0
  377. package/dist/components/for/for.d.ts +28 -0
  378. package/dist/components/for/for.js +20 -0
  379. package/dist/components/for/index.cjs +3 -0
  380. package/dist/components/for/index.d.cts +1 -0
  381. package/dist/components/for/index.d.ts +1 -0
  382. package/dist/components/for/index.js +2 -0
  383. package/dist/components/group/index.cjs +3 -0
  384. package/dist/components/group/index.d.cts +1 -0
  385. package/dist/components/group/index.d.ts +1 -0
  386. package/dist/components/group/index.js +2 -0
  387. package/dist/components/group/primitives.cjs +7 -0
  388. package/dist/components/group/primitives.d.cts +6 -0
  389. package/dist/components/group/primitives.d.ts +6 -0
  390. package/dist/components/group/primitives.js +7 -0
  391. package/dist/components/icon-button/button.cjs +16 -0
  392. package/dist/components/icon-button/button.d.cts +27 -0
  393. package/dist/components/icon-button/button.d.ts +27 -0
  394. package/dist/components/icon-button/button.js +16 -0
  395. package/dist/components/icon-button/index.d.cts +2 -0
  396. package/dist/components/icon-button/index.d.ts +2 -0
  397. package/dist/components/icon-button/primitives.cjs +14 -0
  398. package/dist/components/icon-button/primitives.d.cts +6 -0
  399. package/dist/components/icon-button/primitives.d.ts +6 -0
  400. package/dist/components/icon-button/primitives.js +14 -0
  401. package/dist/components/marquee/Marquee.1.d.cts +1 -0
  402. package/dist/components/marquee/Marquee.1.d.ts +1 -0
  403. package/dist/components/marquee/index.cjs +10 -0
  404. package/dist/components/marquee/index.d.cts +2 -0
  405. package/dist/components/marquee/index.d.ts +2 -0
  406. package/dist/components/marquee/index.js +3 -0
  407. package/dist/components/marquee/marquee.cjs +46 -0
  408. package/dist/components/marquee/marquee.d.cts +23 -0
  409. package/dist/components/marquee/marquee.d.ts +23 -0
  410. package/dist/components/marquee/marquee.js +46 -0
  411. package/dist/components/marquee/primitives.cjs +18 -0
  412. package/dist/components/marquee/primitives.d.cts +16 -0
  413. package/dist/components/marquee/primitives.d.ts +16 -0
  414. package/dist/components/marquee/primitives.js +13 -0
  415. package/dist/components/marquee/utils.cjs +33 -0
  416. package/dist/components/marquee/utils.d.cts +4 -0
  417. package/dist/components/marquee/utils.d.ts +4 -0
  418. package/dist/components/marquee/utils.js +31 -0
  419. package/dist/components/menu/index.cjs +20 -0
  420. package/dist/components/menu/index.d.cts +2 -0
  421. package/dist/components/menu/index.d.ts +2 -0
  422. package/dist/components/menu/index.js +3 -0
  423. package/dist/components/menu/menu.cjs +134 -0
  424. package/dist/components/menu/menu.d.cts +120 -0
  425. package/dist/components/menu/menu.d.ts +120 -0
  426. package/dist/components/menu/menu.js +128 -0
  427. package/dist/components/menu/primitives.cjs +30 -0
  428. package/dist/components/menu/primitives.d.cts +24 -0
  429. package/dist/components/menu/primitives.d.ts +24 -0
  430. package/dist/components/menu/primitives.js +21 -0
  431. package/dist/components/notifications/center.cjs +58 -0
  432. package/dist/components/notifications/center.d.cts +13 -0
  433. package/dist/components/notifications/center.d.ts +13 -0
  434. package/dist/components/notifications/center.js +58 -0
  435. package/dist/components/notifications/close-trigger.cjs +20 -0
  436. package/dist/components/notifications/close-trigger.d.cts +6 -0
  437. package/dist/components/notifications/close-trigger.d.ts +6 -0
  438. package/dist/components/notifications/close-trigger.js +20 -0
  439. package/dist/components/notifications/index.cjs +14 -0
  440. package/dist/components/notifications/index.d.cts +5 -0
  441. package/dist/components/notifications/index.d.ts +5 -0
  442. package/dist/components/notifications/index.js +5 -0
  443. package/dist/components/notifications/match-icon.cjs +30 -0
  444. package/dist/components/notifications/match-icon.d.cts +8 -0
  445. package/dist/components/notifications/match-icon.d.ts +8 -0
  446. package/dist/components/notifications/match-icon.js +30 -0
  447. package/dist/components/notifications/parts.cjs +20 -0
  448. package/dist/components/notifications/parts.d.cts +38 -0
  449. package/dist/components/notifications/parts.d.ts +38 -0
  450. package/dist/components/notifications/parts.js +20 -0
  451. package/dist/components/notifications/primitives.cjs +22 -0
  452. package/dist/components/notifications/primitives.d.cts +16 -0
  453. package/dist/components/notifications/primitives.d.ts +16 -0
  454. package/dist/components/notifications/primitives.js +17 -0
  455. package/dist/components/notifications/toaster.cjs +10 -0
  456. package/dist/components/notifications/toaster.d.cts +2 -0
  457. package/dist/components/notifications/toaster.d.ts +2 -0
  458. package/dist/components/notifications/toaster.js +11 -0
  459. package/dist/components/notifications/types.d.cts +5 -0
  460. package/dist/components/notifications/types.d.ts +5 -0
  461. package/dist/components/number-input/decrement-trigger.cjs +16 -0
  462. package/dist/components/number-input/decrement-trigger.d.cts +2 -0
  463. package/dist/components/number-input/decrement-trigger.d.ts +2 -0
  464. package/dist/components/number-input/decrement-trigger.js +16 -0
  465. package/dist/components/number-input/increment-trigger.cjs +16 -0
  466. package/dist/components/number-input/increment-trigger.d.cts +2 -0
  467. package/dist/components/number-input/increment-trigger.d.ts +2 -0
  468. package/dist/components/number-input/increment-trigger.js +16 -0
  469. package/dist/components/number-input/index.cjs +13 -0
  470. package/dist/components/number-input/index.d.cts +3 -0
  471. package/dist/components/number-input/index.d.ts +3 -0
  472. package/dist/components/number-input/index.js +4 -0
  473. package/dist/components/number-input/input.cjs +26 -0
  474. package/dist/components/number-input/input.d.cts +13 -0
  475. package/dist/components/number-input/input.d.ts +13 -0
  476. package/dist/components/number-input/input.js +26 -0
  477. package/dist/components/number-input/parts.cjs +22 -0
  478. package/dist/components/number-input/parts.d.cts +46 -0
  479. package/dist/components/number-input/parts.d.ts +46 -0
  480. package/dist/components/number-input/parts.js +22 -0
  481. package/dist/components/number-input/primitives.cjs +24 -0
  482. package/dist/components/number-input/primitives.d.cts +18 -0
  483. package/dist/components/number-input/primitives.d.ts +18 -0
  484. package/dist/components/number-input/primitives.js +18 -0
  485. package/dist/components/pagination/compact.cjs +28 -0
  486. package/dist/components/pagination/compact.d.cts +7 -0
  487. package/dist/components/pagination/compact.d.ts +7 -0
  488. package/dist/components/pagination/compact.js +28 -0
  489. package/dist/components/pagination/index.cjs +20 -0
  490. package/dist/components/pagination/index.d.cts +6 -0
  491. package/dist/components/pagination/index.d.ts +6 -0
  492. package/dist/components/pagination/index.js +7 -0
  493. package/dist/components/pagination/item-list.cjs +28 -0
  494. package/dist/components/pagination/item-list.d.cts +7 -0
  495. package/dist/components/pagination/item-list.d.ts +7 -0
  496. package/dist/components/pagination/item-list.js +28 -0
  497. package/dist/components/pagination/item.cjs +13 -0
  498. package/dist/components/pagination/item.d.cts +2 -0
  499. package/dist/components/pagination/item.d.ts +2 -0
  500. package/dist/components/pagination/item.js +13 -0
  501. package/dist/components/pagination/pagination.cjs +31 -0
  502. package/dist/components/pagination/pagination.d.cts +21 -0
  503. package/dist/components/pagination/pagination.d.ts +21 -0
  504. package/dist/components/pagination/pagination.js +31 -0
  505. package/dist/components/pagination/parts.cjs +22 -0
  506. package/dist/components/pagination/parts.d.cts +46 -0
  507. package/dist/components/pagination/parts.d.ts +46 -0
  508. package/dist/components/pagination/parts.js +22 -0
  509. package/dist/components/pagination/primitives.cjs +19 -0
  510. package/dist/components/pagination/primitives.d.cts +20 -0
  511. package/dist/components/pagination/primitives.d.ts +20 -0
  512. package/dist/components/pagination/primitives.js +13 -0
  513. package/dist/components/pagination/triggers.cjs +46 -0
  514. package/dist/components/pagination/triggers.d.cts +7 -0
  515. package/dist/components/pagination/triggers.d.ts +7 -0
  516. package/dist/components/pagination/triggers.js +45 -0
  517. package/dist/components/pin-input/index.cjs +11 -0
  518. package/dist/components/pin-input/index.d.cts +3 -0
  519. package/dist/components/pin-input/index.d.ts +3 -0
  520. package/dist/components/pin-input/index.js +4 -0
  521. package/dist/components/pin-input/input.cjs +22 -0
  522. package/dist/components/pin-input/input.d.cts +6 -0
  523. package/dist/components/pin-input/input.d.ts +6 -0
  524. package/dist/components/pin-input/input.js +22 -0
  525. package/dist/components/pin-input/parts.cjs +20 -0
  526. package/dist/components/pin-input/parts.d.cts +38 -0
  527. package/dist/components/pin-input/parts.d.ts +38 -0
  528. package/dist/components/pin-input/parts.js +20 -0
  529. package/dist/components/pin-input/primitives.cjs +20 -0
  530. package/dist/components/pin-input/primitives.d.cts +14 -0
  531. package/dist/components/pin-input/primitives.d.ts +14 -0
  532. package/dist/components/pin-input/primitives.js +16 -0
  533. package/dist/components/popover/index.cjs +19 -0
  534. package/dist/components/popover/index.d.cts +3 -0
  535. package/dist/components/popover/index.d.ts +3 -0
  536. package/dist/components/popover/index.js +4 -0
  537. package/dist/components/popover/parts.cjs +23 -0
  538. package/dist/components/popover/parts.d.cts +65 -0
  539. package/dist/components/popover/parts.d.ts +65 -0
  540. package/dist/components/popover/parts.js +23 -0
  541. package/dist/components/popover/placement-container.cjs +12 -0
  542. package/dist/components/popover/placement-container.d.cts +7 -0
  543. package/dist/components/popover/placement-container.d.ts +7 -0
  544. package/dist/components/popover/placement-container.js +12 -0
  545. package/dist/components/popover/popover.cjs +46 -0
  546. package/dist/components/popover/popover.d.cts +15 -0
  547. package/dist/components/popover/popover.d.ts +15 -0
  548. package/dist/components/popover/popover.js +46 -0
  549. package/dist/components/popover/primitives.cjs +38 -0
  550. package/dist/components/popover/primitives.d.cts +30 -0
  551. package/dist/components/popover/primitives.d.ts +30 -0
  552. package/dist/components/popover/primitives.js +26 -0
  553. package/dist/components/portal/index.cjs +3 -0
  554. package/dist/components/portal/index.d.cts +1 -0
  555. package/dist/components/portal/index.d.ts +1 -0
  556. package/dist/components/portal/index.js +2 -0
  557. package/dist/components/portal/portal.cjs +23 -0
  558. package/dist/components/portal/portal.d.cts +26 -0
  559. package/dist/components/portal/portal.d.ts +26 -0
  560. package/dist/components/portal/portal.js +24 -0
  561. package/dist/components/progress/index.cjs +6 -0
  562. package/dist/components/progress/index.d.cts +2 -0
  563. package/dist/components/progress/index.d.ts +2 -0
  564. package/dist/components/progress/index.js +3 -0
  565. package/dist/components/progress/primitives.cjs +17 -0
  566. package/dist/components/progress/primitives.d.cts +8 -0
  567. package/dist/components/progress/primitives.d.ts +8 -0
  568. package/dist/components/progress/primitives.js +16 -0
  569. package/dist/components/progress/progress-bar.cjs +29 -0
  570. package/dist/components/progress/progress-bar.d.cts +51 -0
  571. package/dist/components/progress/progress-bar.d.ts +51 -0
  572. package/dist/components/progress/progress-bar.js +29 -0
  573. package/dist/components/radio/index.cjs +14 -0
  574. package/dist/components/radio/index.d.cts +3 -0
  575. package/dist/components/radio/index.d.ts +3 -0
  576. package/dist/components/radio/index.js +4 -0
  577. package/dist/components/radio/parts.cjs +22 -0
  578. package/dist/components/radio/parts.d.cts +46 -0
  579. package/dist/components/radio/parts.d.ts +46 -0
  580. package/dist/components/radio/parts.js +22 -0
  581. package/dist/components/radio/primitives.cjs +42 -0
  582. package/dist/components/radio/primitives.d.cts +35 -0
  583. package/dist/components/radio/primitives.d.ts +35 -0
  584. package/dist/components/radio/primitives.js +35 -0
  585. package/dist/components/radio/radio.cjs +28 -0
  586. package/dist/components/radio/radio.d.cts +17 -0
  587. package/dist/components/radio/radio.d.ts +17 -0
  588. package/dist/components/radio/radio.js +28 -0
  589. package/dist/components/rating/index.cjs +13 -0
  590. package/dist/components/rating/index.d.cts +4 -0
  591. package/dist/components/rating/index.d.ts +4 -0
  592. package/dist/components/rating/index.js +4 -0
  593. package/dist/components/rating/parts.cjs +22 -0
  594. package/dist/components/rating/parts.d.cts +46 -0
  595. package/dist/components/rating/parts.d.ts +46 -0
  596. package/dist/components/rating/parts.js +22 -0
  597. package/dist/components/rating/primitives.cjs +24 -0
  598. package/dist/components/rating/primitives.d.cts +18 -0
  599. package/dist/components/rating/primitives.d.ts +18 -0
  600. package/dist/components/rating/primitives.js +18 -0
  601. package/dist/components/rating/rating.cjs +42 -0
  602. package/dist/components/rating/rating.d.cts +34 -0
  603. package/dist/components/rating/rating.d.ts +34 -0
  604. package/dist/components/rating/rating.js +42 -0
  605. package/dist/components/select/index.cjs +27 -0
  606. package/dist/components/select/index.d.cts +5 -0
  607. package/dist/components/select/index.d.ts +5 -0
  608. package/dist/components/select/index.js +6 -0
  609. package/dist/components/select/option-group.cjs +34 -0
  610. package/dist/components/select/option-group.d.cts +31 -0
  611. package/dist/components/select/option-group.d.ts +31 -0
  612. package/dist/components/select/option-group.js +33 -0
  613. package/dist/components/select/option.cjs +27 -0
  614. package/dist/components/select/option.d.cts +22 -0
  615. package/dist/components/select/option.d.ts +22 -0
  616. package/dist/components/select/option.js +27 -0
  617. package/dist/components/select/parts.cjs +30 -0
  618. package/dist/components/select/parts.d.cts +78 -0
  619. package/dist/components/select/parts.d.ts +78 -0
  620. package/dist/components/select/parts.js +30 -0
  621. package/dist/components/select/primitives.cjs +52 -0
  622. package/dist/components/select/primitives.d.cts +45 -0
  623. package/dist/components/select/primitives.d.ts +45 -0
  624. package/dist/components/select/primitives.js +37 -0
  625. package/dist/components/select/select.cjs +61 -0
  626. package/dist/components/select/select.d.cts +63 -0
  627. package/dist/components/select/select.d.ts +63 -0
  628. package/dist/components/select/select.js +61 -0
  629. package/dist/components/show/index.cjs +3 -0
  630. package/dist/components/show/index.d.cts +1 -0
  631. package/dist/components/show/index.d.ts +1 -0
  632. package/dist/components/show/index.js +2 -0
  633. package/dist/components/show/show.cjs +23 -0
  634. package/dist/components/show/show.d.cts +32 -0
  635. package/dist/components/show/show.d.ts +32 -0
  636. package/dist/components/show/show.js +23 -0
  637. package/dist/components/spinner/index.cjs +3 -0
  638. package/dist/components/spinner/index.d.cts +1 -0
  639. package/dist/components/spinner/index.d.ts +1 -0
  640. package/dist/components/spinner/index.js +2 -0
  641. package/dist/components/spinner/spinner.cjs +65 -0
  642. package/dist/components/spinner/spinner.d.cts +25 -0
  643. package/dist/components/spinner/spinner.d.ts +25 -0
  644. package/dist/components/spinner/spinner.js +65 -0
  645. package/dist/components/split-button/button.cjs +41 -0
  646. package/dist/components/split-button/button.d.cts +18 -0
  647. package/dist/components/split-button/button.d.ts +18 -0
  648. package/dist/components/split-button/button.js +41 -0
  649. package/dist/components/split-button/index.d.cts +1 -0
  650. package/dist/components/split-button/index.d.ts +1 -0
  651. package/dist/components/switch/index.cjs +11 -0
  652. package/dist/components/switch/index.d.cts +3 -0
  653. package/dist/components/switch/index.d.ts +3 -0
  654. package/dist/components/switch/index.js +4 -0
  655. package/dist/components/switch/parts.cjs +20 -0
  656. package/dist/components/switch/parts.d.cts +38 -0
  657. package/dist/components/switch/parts.d.ts +38 -0
  658. package/dist/components/switch/parts.js +20 -0
  659. package/dist/components/switch/primitives.cjs +20 -0
  660. package/dist/components/switch/primitives.d.cts +14 -0
  661. package/dist/components/switch/primitives.d.ts +14 -0
  662. package/dist/components/switch/primitives.js +16 -0
  663. package/dist/components/switch/switch-indicator.cjs +12 -0
  664. package/dist/components/switch/switch-indicator.d.cts +1 -0
  665. package/dist/components/switch/switch-indicator.d.ts +1 -0
  666. package/dist/components/switch/switch-indicator.js +12 -0
  667. package/dist/components/switch/switch.cjs +23 -0
  668. package/dist/components/switch/switch.d.cts +8 -0
  669. package/dist/components/switch/switch.d.ts +8 -0
  670. package/dist/components/switch/switch.js +23 -0
  671. package/dist/components/table/index.cjs +16 -0
  672. package/dist/components/table/index.d.cts +3 -0
  673. package/dist/components/table/index.d.ts +3 -0
  674. package/dist/components/table/index.js +4 -0
  675. package/dist/components/table/parts.cjs +25 -0
  676. package/dist/components/table/parts.d.cts +57 -0
  677. package/dist/components/table/parts.d.ts +57 -0
  678. package/dist/components/table/parts.js +25 -0
  679. package/dist/components/table/primitives.cjs +59 -0
  680. package/dist/components/table/primitives.d.cts +24 -0
  681. package/dist/components/table/primitives.d.ts +24 -0
  682. package/dist/components/table/primitives.js +50 -0
  683. package/dist/components/table/table.cjs +46 -0
  684. package/dist/components/table/table.d.cts +24 -0
  685. package/dist/components/table/table.d.ts +24 -0
  686. package/dist/components/table/table.js +46 -0
  687. package/dist/components/tabs/index.cjs +11 -0
  688. package/dist/components/tabs/index.d.cts +3 -0
  689. package/dist/components/tabs/index.d.ts +3 -0
  690. package/dist/components/tabs/index.js +4 -0
  691. package/dist/components/tabs/parts.cjs +20 -0
  692. package/dist/components/tabs/parts.d.cts +37 -0
  693. package/dist/components/tabs/parts.d.ts +37 -0
  694. package/dist/components/tabs/parts.js +20 -0
  695. package/dist/components/tabs/primitives.cjs +20 -0
  696. package/dist/components/tabs/primitives.d.cts +14 -0
  697. package/dist/components/tabs/primitives.d.ts +14 -0
  698. package/dist/components/tabs/primitives.js +16 -0
  699. package/dist/components/tabs/tabs.cjs +29 -0
  700. package/dist/components/tabs/tabs.d.cts +26 -0
  701. package/dist/components/tabs/tabs.d.ts +26 -0
  702. package/dist/components/tabs/tabs.js +29 -0
  703. package/dist/components/tag/closable.cjs +30 -0
  704. package/dist/components/tag/closable.d.cts +9 -0
  705. package/dist/components/tag/closable.d.ts +9 -0
  706. package/dist/components/tag/closable.js +30 -0
  707. package/dist/components/tag/index.cjs +5 -0
  708. package/dist/components/tag/index.d.cts +2 -0
  709. package/dist/components/tag/index.d.ts +2 -0
  710. package/dist/components/tag/index.js +3 -0
  711. package/dist/components/tag/primitives.cjs +10 -0
  712. package/dist/components/tag/primitives.d.cts +5 -0
  713. package/dist/components/tag/primitives.d.ts +5 -0
  714. package/dist/components/tag/primitives.js +10 -0
  715. package/dist/components/tag/tag.cjs +34 -0
  716. package/dist/components/tag/tag.d.cts +13 -0
  717. package/dist/components/tag/tag.d.ts +13 -0
  718. package/dist/components/tag/tag.js +34 -0
  719. package/dist/components/text/index.cjs +3 -0
  720. package/dist/components/text/index.d.cts +1 -0
  721. package/dist/components/text/index.d.ts +1 -0
  722. package/dist/components/text/index.js +2 -0
  723. package/dist/components/text/text.cjs +38 -0
  724. package/dist/components/text/text.d.cts +26 -0
  725. package/dist/components/text/text.d.ts +26 -0
  726. package/dist/components/text/text.js +38 -0
  727. package/dist/components/theme/index.cjs +3 -0
  728. package/dist/components/theme/index.d.cts +1 -0
  729. package/dist/components/theme/index.d.ts +1 -0
  730. package/dist/components/theme/index.js +2 -0
  731. package/dist/components/theme/theme.cjs +16 -0
  732. package/dist/components/theme/theme.d.cts +16 -0
  733. package/dist/components/theme/theme.d.ts +16 -0
  734. package/dist/components/theme/theme.js +16 -0
  735. package/dist/components/toggle/index.cjs +6 -0
  736. package/dist/components/toggle/index.d.cts +2 -0
  737. package/dist/components/toggle/index.d.ts +2 -0
  738. package/dist/components/toggle/index.js +3 -0
  739. package/dist/components/toggle/parts.cjs +17 -0
  740. package/dist/components/toggle/parts.d.cts +26 -0
  741. package/dist/components/toggle/parts.d.ts +26 -0
  742. package/dist/components/toggle/parts.js +17 -0
  743. package/dist/components/toggle/primitives.cjs +13 -0
  744. package/dist/components/toggle/primitives.d.cts +7 -0
  745. package/dist/components/toggle/primitives.d.ts +7 -0
  746. package/dist/components/toggle/primitives.js +12 -0
  747. package/dist/components/tooltip/index.cjs +12 -0
  748. package/dist/components/tooltip/index.d.cts +3 -0
  749. package/dist/components/tooltip/index.d.ts +3 -0
  750. package/dist/components/tooltip/index.js +4 -0
  751. package/dist/components/tooltip/parts.cjs +21 -0
  752. package/dist/components/tooltip/parts.d.cts +42 -0
  753. package/dist/components/tooltip/parts.d.ts +42 -0
  754. package/dist/components/tooltip/parts.js +21 -0
  755. package/dist/components/tooltip/primitives.cjs +22 -0
  756. package/dist/components/tooltip/primitives.d.cts +15 -0
  757. package/dist/components/tooltip/primitives.d.ts +15 -0
  758. package/dist/components/tooltip/primitives.js +17 -0
  759. package/dist/components/tooltip/renderer.cjs +11 -0
  760. package/dist/components/tooltip/renderer.d.cts +6 -0
  761. package/dist/components/tooltip/renderer.d.ts +6 -0
  762. package/dist/components/tooltip/renderer.js +11 -0
  763. package/dist/components/tooltip/tooltip.cjs +31 -0
  764. package/dist/components/tooltip/tooltip.d.cts +26 -0
  765. package/dist/components/tooltip/tooltip.d.ts +26 -0
  766. package/dist/components/tooltip/tooltip.js +31 -0
  767. package/dist/config/defineIcons.cjs +23 -0
  768. package/dist/config/defineIcons.d.cts +15 -0
  769. package/dist/config/defineIcons.d.ts +15 -0
  770. package/dist/config/defineIcons.js +23 -0
  771. package/dist/config/icons/checkbox.icons.cjs +97 -0
  772. package/dist/config/icons/checkbox.icons.d.cts +20 -0
  773. package/dist/config/icons/checkbox.icons.d.ts +20 -0
  774. package/dist/config/icons/checkbox.icons.js +94 -0
  775. package/dist/config/icons/default.cjs +56 -0
  776. package/dist/config/icons/default.d.cts +5 -0
  777. package/dist/config/icons/default.d.ts +5 -0
  778. package/dist/config/icons/default.js +56 -0
  779. package/dist/config/icons/pinned.icons.cjs +28 -0
  780. package/dist/config/icons/pinned.icons.d.cts +5 -0
  781. package/dist/config/icons/pinned.icons.d.ts +5 -0
  782. package/dist/config/icons/pinned.icons.js +25 -0
  783. package/dist/config/icons/sort.icons.cjs +20 -0
  784. package/dist/config/icons/sort.icons.d.cts +3 -0
  785. package/dist/config/icons/sort.icons.d.ts +3 -0
  786. package/dist/config/icons/sort.icons.js +19 -0
  787. package/dist/config/index.cjs +37 -0
  788. package/dist/config/index.d.cts +24 -0
  789. package/dist/config/index.d.ts +24 -0
  790. package/dist/config/index.js +35 -0
  791. package/dist/config/types.d.cts +56 -0
  792. package/dist/config/types.d.ts +56 -0
  793. package/dist/context/cerberus.cjs +33 -0
  794. package/dist/context/cerberus.d.cts +17 -0
  795. package/dist/context/cerberus.d.ts +17 -0
  796. package/dist/context/cerberus.js +32 -0
  797. package/dist/context/confirm-modal.cjs +149 -0
  798. package/dist/context/confirm-modal.d.cts +82 -0
  799. package/dist/context/confirm-modal.d.ts +82 -0
  800. package/dist/context/confirm-modal.js +148 -0
  801. package/dist/context/feature-flags.cjs +45 -0
  802. package/dist/context/feature-flags.d.cts +38 -0
  803. package/dist/context/feature-flags.d.ts +38 -0
  804. package/dist/context/feature-flags.js +44 -0
  805. package/dist/context/field.d.cts +34 -0
  806. package/dist/context/field.d.ts +34 -0
  807. package/dist/context/navMenu.cjs +43 -0
  808. package/dist/context/navMenu.d.cts +34 -0
  809. package/dist/context/navMenu.d.ts +34 -0
  810. package/dist/context/navMenu.js +42 -0
  811. package/dist/context/prompt-modal.cjs +206 -0
  812. package/dist/context/prompt-modal.d.cts +85 -0
  813. package/dist/context/prompt-modal.d.ts +85 -0
  814. package/dist/context/prompt-modal.js +205 -0
  815. package/dist/context/theme.cjs +40 -0
  816. package/dist/context/theme.d.cts +53 -0
  817. package/dist/context/theme.d.ts +53 -0
  818. package/dist/context/theme.js +39 -0
  819. package/dist/hooks/useModal.d.cts +36 -0
  820. package/dist/hooks/useModal.d.ts +36 -0
  821. package/dist/hooks/useRootColors.cjs +44 -0
  822. package/dist/hooks/useRootColors.d.cts +22 -0
  823. package/dist/hooks/useRootColors.d.ts +22 -0
  824. package/dist/hooks/useRootColors.js +44 -0
  825. package/dist/hooks/useTheme.cjs +64 -0
  826. package/dist/hooks/useTheme.d.cts +29 -0
  827. package/dist/hooks/useTheme.d.ts +29 -0
  828. package/dist/hooks/useTheme.js +62 -0
  829. package/dist/index.cjs +1220 -0
  830. package/dist/index.client.d.cts +2 -0
  831. package/dist/index.client.d.ts +2 -0
  832. package/dist/index.client.js +5 -0
  833. package/dist/index.d.cts +60 -0
  834. package/dist/index.d.ts +60 -0
  835. package/dist/index.js +136 -0
  836. package/dist/panda.buildinfo.json +376 -0
  837. package/dist/system/factory.cjs +20 -0
  838. package/dist/system/factory.d.cts +7 -0
  839. package/dist/system/factory.d.ts +7 -0
  840. package/dist/system/factory.js +20 -0
  841. package/dist/system/index.cjs +44 -0
  842. package/dist/system/index.d.cts +38 -0
  843. package/dist/system/index.d.ts +38 -0
  844. package/dist/system/index.js +42 -0
  845. package/dist/system/primitive-factory.cjs +107 -0
  846. package/dist/system/primitive-factory.d.cts +48 -0
  847. package/dist/system/primitive-factory.d.ts +48 -0
  848. package/dist/system/primitive-factory.js +107 -0
  849. package/dist/system/types.d.cts +38 -0
  850. package/dist/system/types.d.ts +38 -0
  851. package/dist/types.d.cts +12 -0
  852. package/dist/types.d.ts +12 -0
  853. package/dist/utils/index.cjs +46 -0
  854. package/dist/utils/index.d.cts +25 -0
  855. package/dist/utils/index.d.ts +25 -0
  856. package/dist/utils/index.js +42 -0
  857. package/dist/utils/localStorage.cjs +26 -0
  858. package/dist/utils/localStorage.d.cts +13 -0
  859. package/dist/utils/localStorage.d.ts +13 -0
  860. package/dist/utils/localStorage.js +25 -0
  861. package/package.json +97 -0
@@ -0,0 +1,53 @@
1
+ import { PropsWithChildren } from 'react';
2
+ import { UseThemeOptions } from '../hooks/useTheme';
3
+ /**
4
+ * This module provides a context and hook for the theme.
5
+ * @module Theme
6
+ */
7
+ export type DefaultThemes = 'cerberus' | 'acheron' | 'elysium';
8
+ export type CustomThemes<K extends string = DefaultThemes> = 'cerberus' | K;
9
+ export type ColorModes = 'light' | 'dark' | 'system';
10
+ export interface ThemeContextValue<T extends string = DefaultThemes> {
11
+ /**
12
+ * The current theme.
13
+ */
14
+ theme: CustomThemes<T>;
15
+ /**
16
+ * The current color mode.
17
+ */
18
+ mode: ColorModes;
19
+ /**
20
+ * Called when the theme is updated.
21
+ */
22
+ updateTheme: (theme: T) => void;
23
+ /**
24
+ * Called when the color mode is updated.
25
+ */
26
+ updateMode: (mode: ColorModes) => void;
27
+ }
28
+ export interface ThemeProviderProps extends UseThemeOptions {
29
+ /**
30
+ * The default theme.
31
+ */
32
+ defaultTheme?: DefaultThemes;
33
+ /**
34
+ * The default color mode.
35
+ */
36
+ defaultColorMode?: ColorModes;
37
+ }
38
+ /**
39
+ * A context provider that allows the user to set the theme and mode of the
40
+ * application.
41
+ * @see https://cerberus.digitalu.design/react/use-theme-context
42
+ * @example
43
+ * ```tsx
44
+ * <ThemeProvider>
45
+ * <App />
46
+ * </ThemeProvider>
47
+ * ```
48
+ */
49
+ export declare function ThemeProvider(props: PropsWithChildren<ThemeProviderProps>): import("react").JSX.Element;
50
+ /**
51
+ * Used to access the theme context.
52
+ */
53
+ export declare function useThemeContext(): ThemeContextValue<DefaultThemes>;
@@ -0,0 +1,53 @@
1
+ import { PropsWithChildren } from 'react';
2
+ import { UseThemeOptions } from '../hooks/useTheme';
3
+ /**
4
+ * This module provides a context and hook for the theme.
5
+ * @module Theme
6
+ */
7
+ export type DefaultThemes = 'cerberus' | 'acheron' | 'elysium';
8
+ export type CustomThemes<K extends string = DefaultThemes> = 'cerberus' | K;
9
+ export type ColorModes = 'light' | 'dark' | 'system';
10
+ export interface ThemeContextValue<T extends string = DefaultThemes> {
11
+ /**
12
+ * The current theme.
13
+ */
14
+ theme: CustomThemes<T>;
15
+ /**
16
+ * The current color mode.
17
+ */
18
+ mode: ColorModes;
19
+ /**
20
+ * Called when the theme is updated.
21
+ */
22
+ updateTheme: (theme: T) => void;
23
+ /**
24
+ * Called when the color mode is updated.
25
+ */
26
+ updateMode: (mode: ColorModes) => void;
27
+ }
28
+ export interface ThemeProviderProps extends UseThemeOptions {
29
+ /**
30
+ * The default theme.
31
+ */
32
+ defaultTheme?: DefaultThemes;
33
+ /**
34
+ * The default color mode.
35
+ */
36
+ defaultColorMode?: ColorModes;
37
+ }
38
+ /**
39
+ * A context provider that allows the user to set the theme and mode of the
40
+ * application.
41
+ * @see https://cerberus.digitalu.design/react/use-theme-context
42
+ * @example
43
+ * ```tsx
44
+ * <ThemeProvider>
45
+ * <App />
46
+ * </ThemeProvider>
47
+ * ```
48
+ */
49
+ export declare function ThemeProvider(props: PropsWithChildren<ThemeProviderProps>): import("react").JSX.Element;
50
+ /**
51
+ * Used to access the theme context.
52
+ */
53
+ export declare function useThemeContext(): ThemeContextValue<DefaultThemes>;
@@ -0,0 +1,39 @@
1
+ "use client";
2
+ "use client";
3
+ import { useTheme } from "../hooks/useTheme.js";
4
+ import { createContext, useContext } from "react";
5
+ import { jsx } from "react/jsx-runtime";
6
+ //#region src/context/theme.tsx
7
+ var ThemeContext = createContext(null);
8
+ /**
9
+ * A context provider that allows the user to set the theme and mode of the
10
+ * application.
11
+ * @see https://cerberus.digitalu.design/react/use-theme-context
12
+ * @example
13
+ * ```tsx
14
+ * <ThemeProvider>
15
+ * <App />
16
+ * </ThemeProvider>
17
+ * ```
18
+ */
19
+ function ThemeProvider(props) {
20
+ const state = useTheme(props.defaultTheme, props.defaultColorMode, {
21
+ cache: props.cache,
22
+ updateMode: props.updateMode,
23
+ updateTheme: props.updateTheme
24
+ });
25
+ return /* @__PURE__ */ jsx(ThemeContext.Provider, {
26
+ value: state,
27
+ children: props.children
28
+ });
29
+ }
30
+ /**
31
+ * Used to access the theme context.
32
+ */
33
+ function useThemeContext() {
34
+ const context = useContext(ThemeContext);
35
+ if (!context) throw new Error("useThemeContext must be used within a ThemeProvider");
36
+ return context;
37
+ }
38
+ //#endregion
39
+ export { ThemeProvider, useThemeContext };
@@ -0,0 +1,36 @@
1
+ import { RefObject } from 'react';
2
+ /**
3
+ * This module provides a hook for using a custom modal.
4
+ * @module
5
+ */
6
+ export interface UseModalReturnValue {
7
+ /**
8
+ * The ref for the modal.
9
+ */
10
+ modalRef: RefObject<HTMLDialogElement | null>;
11
+ /**
12
+ * Shows the modal.
13
+ */
14
+ show: () => void;
15
+ /**
16
+ * Closes the modal.
17
+ */
18
+ close: () => void;
19
+ /**
20
+ * Whether the modal is open based on the show and close methods.
21
+ */
22
+ isOpen: boolean;
23
+ }
24
+ /**
25
+ * Provides a hook for using a custom modal via the native dialog element
26
+ * methods.
27
+ *
28
+ * Cerberus modals use the native dialog element. This hook
29
+ * does not control the modal via React state but rather by calling the
30
+ * native dialog element's `showModal` and `close` methods.
31
+ *
32
+ * @memberof module:Modal
33
+ * @see https://cerberus.digitalu.design/react/modal
34
+ * @description [Moz Dev Dialog Docs](https://developer.mozilla.org/en-US/docs/Web/API/HTMLDialogElement/showModal)
35
+ */
36
+ export declare function useModal(): UseModalReturnValue;
@@ -0,0 +1,36 @@
1
+ import { RefObject } from 'react';
2
+ /**
3
+ * This module provides a hook for using a custom modal.
4
+ * @module
5
+ */
6
+ export interface UseModalReturnValue {
7
+ /**
8
+ * The ref for the modal.
9
+ */
10
+ modalRef: RefObject<HTMLDialogElement | null>;
11
+ /**
12
+ * Shows the modal.
13
+ */
14
+ show: () => void;
15
+ /**
16
+ * Closes the modal.
17
+ */
18
+ close: () => void;
19
+ /**
20
+ * Whether the modal is open based on the show and close methods.
21
+ */
22
+ isOpen: boolean;
23
+ }
24
+ /**
25
+ * Provides a hook for using a custom modal via the native dialog element
26
+ * methods.
27
+ *
28
+ * Cerberus modals use the native dialog element. This hook
29
+ * does not control the modal via React state but rather by calling the
30
+ * native dialog element's `showModal` and `close` methods.
31
+ *
32
+ * @memberof module:Modal
33
+ * @see https://cerberus.digitalu.design/react/modal
34
+ * @description [Moz Dev Dialog Docs](https://developer.mozilla.org/en-US/docs/Web/API/HTMLDialogElement/showModal)
35
+ */
36
+ export declare function useModal(): UseModalReturnValue;
@@ -0,0 +1,44 @@
1
+ "use client";
2
+ "use client";
3
+ let react = require("react");
4
+ //#region src/hooks/useRootColors.ts
5
+ /**
6
+ * This hook returns a record of Cerberus colors from the document root.
7
+ * This is useful when you are working with a component that uses the `<canvas>`
8
+ * element.
9
+ * @param colors - An array of Cerberus tokens to get from the document root (i.e. `['dataViz.diverging.50', 'dataViz.diverging.200']`).
10
+ * @returns A record of Cerberus colors where the key is the token name provided and the value is the color hex.
11
+ */
12
+ function useRootColors(colors = []) {
13
+ const [state, dispatch] = (0, react.useReducer)(rootColorsReducer, {});
14
+ const handleRefetch = (0, react.useCallback)(() => {
15
+ return new Promise((resolve) => {
16
+ dispatch(formatColors(colors));
17
+ resolve();
18
+ });
19
+ }, [colors]);
20
+ (0, react.useEffect)(() => {
21
+ if (Object.keys(state).length === colors.length) return;
22
+ dispatch(formatColors(colors));
23
+ }, [colors, state]);
24
+ return (0, react.useMemo)(() => ({
25
+ colors: state,
26
+ refetch: handleRefetch
27
+ }), [state, handleRefetch]);
28
+ }
29
+ function formatColors(colors) {
30
+ const rootStyles = getComputedStyle(document.body);
31
+ return colors.reduce((acc, color) => {
32
+ const formattedColor = color.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase().replaceAll(".", "-");
33
+ acc[color] = rootStyles.getPropertyValue(`--cerberus-colors-${formattedColor}`).trim();
34
+ return acc;
35
+ }, {});
36
+ }
37
+ function rootColorsReducer(state, action) {
38
+ return {
39
+ ...state,
40
+ ...action
41
+ };
42
+ }
43
+ //#endregion
44
+ exports.useRootColors = useRootColors;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * This module provides a hook to get Cerberus colors from the document root.
3
+ * @module useRootColors
4
+ */
5
+ export interface RootColorsResult {
6
+ /**
7
+ * A record of Cerberus colors where the key is the token name provided and the value is the color hex.
8
+ */
9
+ colors: Record<string, string>;
10
+ /**
11
+ * A function to refetch the Cerberus colors from the document root. Useful when you need the latest colors after a theme/mode change.
12
+ */
13
+ refetch: () => Promise<void>;
14
+ }
15
+ /**
16
+ * This hook returns a record of Cerberus colors from the document root.
17
+ * This is useful when you are working with a component that uses the `<canvas>`
18
+ * element.
19
+ * @param colors - An array of Cerberus tokens to get from the document root (i.e. `['dataViz.diverging.50', 'dataViz.diverging.200']`).
20
+ * @returns A record of Cerberus colors where the key is the token name provided and the value is the color hex.
21
+ */
22
+ export declare function useRootColors(colors?: string[]): RootColorsResult;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * This module provides a hook to get Cerberus colors from the document root.
3
+ * @module useRootColors
4
+ */
5
+ export interface RootColorsResult {
6
+ /**
7
+ * A record of Cerberus colors where the key is the token name provided and the value is the color hex.
8
+ */
9
+ colors: Record<string, string>;
10
+ /**
11
+ * A function to refetch the Cerberus colors from the document root. Useful when you need the latest colors after a theme/mode change.
12
+ */
13
+ refetch: () => Promise<void>;
14
+ }
15
+ /**
16
+ * This hook returns a record of Cerberus colors from the document root.
17
+ * This is useful when you are working with a component that uses the `<canvas>`
18
+ * element.
19
+ * @param colors - An array of Cerberus tokens to get from the document root (i.e. `['dataViz.diverging.50', 'dataViz.diverging.200']`).
20
+ * @returns A record of Cerberus colors where the key is the token name provided and the value is the color hex.
21
+ */
22
+ export declare function useRootColors(colors?: string[]): RootColorsResult;
@@ -0,0 +1,44 @@
1
+ "use client";
2
+ "use client";
3
+ import { useCallback, useEffect, useMemo, useReducer } from "react";
4
+ //#region src/hooks/useRootColors.ts
5
+ /**
6
+ * This hook returns a record of Cerberus colors from the document root.
7
+ * This is useful when you are working with a component that uses the `<canvas>`
8
+ * element.
9
+ * @param colors - An array of Cerberus tokens to get from the document root (i.e. `['dataViz.diverging.50', 'dataViz.diverging.200']`).
10
+ * @returns A record of Cerberus colors where the key is the token name provided and the value is the color hex.
11
+ */
12
+ function useRootColors(colors = []) {
13
+ const [state, dispatch] = useReducer(rootColorsReducer, {});
14
+ const handleRefetch = useCallback(() => {
15
+ return new Promise((resolve) => {
16
+ dispatch(formatColors(colors));
17
+ resolve();
18
+ });
19
+ }, [colors]);
20
+ useEffect(() => {
21
+ if (Object.keys(state).length === colors.length) return;
22
+ dispatch(formatColors(colors));
23
+ }, [colors, state]);
24
+ return useMemo(() => ({
25
+ colors: state,
26
+ refetch: handleRefetch
27
+ }), [state, handleRefetch]);
28
+ }
29
+ function formatColors(colors) {
30
+ const rootStyles = getComputedStyle(document.body);
31
+ return colors.reduce((acc, color) => {
32
+ const formattedColor = color.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase().replaceAll(".", "-");
33
+ acc[color] = rootStyles.getPropertyValue(`--cerberus-colors-${formattedColor}`).trim();
34
+ return acc;
35
+ }, {});
36
+ }
37
+ function rootColorsReducer(state, action) {
38
+ return {
39
+ ...state,
40
+ ...action
41
+ };
42
+ }
43
+ //#endregion
44
+ export { useRootColors };
@@ -0,0 +1,64 @@
1
+ "use client";
2
+ "use client";
3
+ let react = require("react");
4
+ //#region src/hooks/useTheme.ts
5
+ /**
6
+ * This module provides a hook for using the theme.
7
+ * @module
8
+ */
9
+ var THEME_KEY = "cerberus-theme";
10
+ var MODE_KEY = "cerberus-mode";
11
+ /**
12
+ * Provides a hook for using the theme for a single instance of the application.
13
+ * @see https://cerberus.digitalu.design/react/use-theme
14
+ * @param defaultTheme The default theme.
15
+ * @param defaultColorMode The default color mode.
16
+ * @param options Additional options.
17
+ */
18
+ function useTheme(defaultTheme = "cerberus", defaultColorMode = "light", options = {}) {
19
+ const { updateMode, updateTheme, cache } = options;
20
+ const [theme, setTheme] = (0, react.useState)(defaultTheme);
21
+ const [colorMode, setColorMode] = (0, react.useState)(defaultColorMode);
22
+ const handleThemeChange = (0, react.useCallback)((newTheme) => {
23
+ setTheme(newTheme);
24
+ updateTheme?.(newTheme);
25
+ }, [updateTheme]);
26
+ const handleColorModeChange = (0, react.useCallback)((newMode) => {
27
+ setColorMode(newMode);
28
+ updateMode?.(newMode);
29
+ }, [updateMode]);
30
+ (0, react.useLayoutEffect)(() => {
31
+ const theme = localStorage.getItem(THEME_KEY);
32
+ if (theme) setTheme(theme);
33
+ }, []);
34
+ (0, react.useLayoutEffect)(() => {
35
+ const mode = localStorage.getItem(MODE_KEY);
36
+ if (mode) setColorMode(mode);
37
+ }, []);
38
+ (0, react.useEffect)(() => {
39
+ const root = document.documentElement;
40
+ root.dataset.pandaTheme = theme;
41
+ if (cache) localStorage.setItem(THEME_KEY, theme);
42
+ }, [theme, cache]);
43
+ (0, react.useEffect)(() => {
44
+ const root = document.documentElement;
45
+ if (colorMode === "system") root.dataset.colorMode = window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
46
+ else root.dataset.colorMode = colorMode;
47
+ if (cache) localStorage.setItem(MODE_KEY, colorMode);
48
+ }, [colorMode, cache]);
49
+ return (0, react.useMemo)(() => ({
50
+ theme,
51
+ mode: colorMode,
52
+ updateTheme: handleThemeChange,
53
+ updateMode: handleColorModeChange
54
+ }), [
55
+ theme,
56
+ colorMode,
57
+ handleThemeChange,
58
+ handleColorModeChange
59
+ ]);
60
+ }
61
+ //#endregion
62
+ exports.MODE_KEY = MODE_KEY;
63
+ exports.THEME_KEY = THEME_KEY;
64
+ exports.useTheme = useTheme;
@@ -0,0 +1,29 @@
1
+ import { ColorModes, CustomThemes, DefaultThemes, ThemeContextValue } from '../context/theme';
2
+ /**
3
+ * This module provides a hook for using the theme.
4
+ * @module
5
+ */
6
+ export declare const THEME_KEY = "cerberus-theme";
7
+ export declare const MODE_KEY = "cerberus-mode";
8
+ export interface UseThemeOptions<T extends string = DefaultThemes> {
9
+ /**
10
+ * Whether to cache the theme in local storage.
11
+ */
12
+ cache?: boolean;
13
+ /**
14
+ * Called when the theme is updated.
15
+ */
16
+ updateTheme?: (theme: T) => void;
17
+ /**
18
+ * Called when the color mode is updated.
19
+ */
20
+ updateMode?: (mode: ColorModes) => void;
21
+ }
22
+ /**
23
+ * Provides a hook for using the theme for a single instance of the application.
24
+ * @see https://cerberus.digitalu.design/react/use-theme
25
+ * @param defaultTheme The default theme.
26
+ * @param defaultColorMode The default color mode.
27
+ * @param options Additional options.
28
+ */
29
+ export declare function useTheme<C extends string = DefaultThemes>(defaultTheme?: CustomThemes<C>, defaultColorMode?: ColorModes, options?: UseThemeOptions<C>): ThemeContextValue<C>;
@@ -0,0 +1,29 @@
1
+ import { ColorModes, CustomThemes, DefaultThemes, ThemeContextValue } from '../context/theme';
2
+ /**
3
+ * This module provides a hook for using the theme.
4
+ * @module
5
+ */
6
+ export declare const THEME_KEY = "cerberus-theme";
7
+ export declare const MODE_KEY = "cerberus-mode";
8
+ export interface UseThemeOptions<T extends string = DefaultThemes> {
9
+ /**
10
+ * Whether to cache the theme in local storage.
11
+ */
12
+ cache?: boolean;
13
+ /**
14
+ * Called when the theme is updated.
15
+ */
16
+ updateTheme?: (theme: T) => void;
17
+ /**
18
+ * Called when the color mode is updated.
19
+ */
20
+ updateMode?: (mode: ColorModes) => void;
21
+ }
22
+ /**
23
+ * Provides a hook for using the theme for a single instance of the application.
24
+ * @see https://cerberus.digitalu.design/react/use-theme
25
+ * @param defaultTheme The default theme.
26
+ * @param defaultColorMode The default color mode.
27
+ * @param options Additional options.
28
+ */
29
+ export declare function useTheme<C extends string = DefaultThemes>(defaultTheme?: CustomThemes<C>, defaultColorMode?: ColorModes, options?: UseThemeOptions<C>): ThemeContextValue<C>;
@@ -0,0 +1,62 @@
1
+ "use client";
2
+ "use client";
3
+ import { useCallback, useEffect, useLayoutEffect, useMemo, useState } from "react";
4
+ //#region src/hooks/useTheme.ts
5
+ /**
6
+ * This module provides a hook for using the theme.
7
+ * @module
8
+ */
9
+ var THEME_KEY = "cerberus-theme";
10
+ var MODE_KEY = "cerberus-mode";
11
+ /**
12
+ * Provides a hook for using the theme for a single instance of the application.
13
+ * @see https://cerberus.digitalu.design/react/use-theme
14
+ * @param defaultTheme The default theme.
15
+ * @param defaultColorMode The default color mode.
16
+ * @param options Additional options.
17
+ */
18
+ function useTheme(defaultTheme = "cerberus", defaultColorMode = "light", options = {}) {
19
+ const { updateMode, updateTheme, cache } = options;
20
+ const [theme, setTheme] = useState(defaultTheme);
21
+ const [colorMode, setColorMode] = useState(defaultColorMode);
22
+ const handleThemeChange = useCallback((newTheme) => {
23
+ setTheme(newTheme);
24
+ updateTheme?.(newTheme);
25
+ }, [updateTheme]);
26
+ const handleColorModeChange = useCallback((newMode) => {
27
+ setColorMode(newMode);
28
+ updateMode?.(newMode);
29
+ }, [updateMode]);
30
+ useLayoutEffect(() => {
31
+ const theme = localStorage.getItem(THEME_KEY);
32
+ if (theme) setTheme(theme);
33
+ }, []);
34
+ useLayoutEffect(() => {
35
+ const mode = localStorage.getItem(MODE_KEY);
36
+ if (mode) setColorMode(mode);
37
+ }, []);
38
+ useEffect(() => {
39
+ const root = document.documentElement;
40
+ root.dataset.pandaTheme = theme;
41
+ if (cache) localStorage.setItem(THEME_KEY, theme);
42
+ }, [theme, cache]);
43
+ useEffect(() => {
44
+ const root = document.documentElement;
45
+ if (colorMode === "system") root.dataset.colorMode = window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
46
+ else root.dataset.colorMode = colorMode;
47
+ if (cache) localStorage.setItem(MODE_KEY, colorMode);
48
+ }, [colorMode, cache]);
49
+ return useMemo(() => ({
50
+ theme,
51
+ mode: colorMode,
52
+ updateTheme: handleThemeChange,
53
+ updateMode: handleColorModeChange
54
+ }), [
55
+ theme,
56
+ colorMode,
57
+ handleThemeChange,
58
+ handleColorModeChange
59
+ ]);
60
+ }
61
+ //#endregion
62
+ export { MODE_KEY, THEME_KEY, useTheme };