@cerberus-design/react 0.18.3 → 0.19.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 (1302) hide show
  1. package/build/legacy/_tsup-dts-rollup.d.cts +2509 -808
  2. package/build/legacy/components/accordion/index.cjs +146 -57
  3. package/build/legacy/components/accordion/index.cjs.map +1 -1
  4. package/build/legacy/components/accordion/index.d.cts +5 -0
  5. package/build/legacy/components/accordion/item-group.cjs +143 -54
  6. package/build/legacy/components/accordion/item-group.cjs.map +1 -1
  7. package/build/legacy/components/accordion/item-indicator.cjs +134 -45
  8. package/build/legacy/components/accordion/item-indicator.cjs.map +1 -1
  9. package/build/legacy/components/accordion/parts.cjs +132 -43
  10. package/build/legacy/components/accordion/parts.cjs.map +1 -1
  11. package/build/legacy/components/accordion/primitives.cjs +132 -43
  12. package/build/legacy/components/accordion/primitives.cjs.map +1 -1
  13. package/build/legacy/components/accordion/primitives.d.cts +5 -0
  14. package/build/legacy/components/admonition/admonition.cjs +194 -96
  15. package/build/legacy/components/admonition/admonition.cjs.map +1 -1
  16. package/build/legacy/components/admonition/index.cjs +181 -83
  17. package/build/legacy/components/admonition/index.cjs.map +1 -1
  18. package/build/legacy/components/admonition/index.d.cts +5 -0
  19. package/build/legacy/components/admonition/match-avatar.cjs +120 -23
  20. package/build/legacy/components/admonition/match-avatar.cjs.map +1 -1
  21. package/build/legacy/components/admonition/parts.cjs +150 -35
  22. package/build/legacy/components/admonition/parts.cjs.map +1 -1
  23. package/build/legacy/components/admonition/primitives.cjs +150 -35
  24. package/build/legacy/components/admonition/primitives.cjs.map +1 -1
  25. package/build/legacy/components/admonition/primitives.d.cts +5 -0
  26. package/build/legacy/components/avatar/avatar.cjs +120 -23
  27. package/build/legacy/components/avatar/avatar.cjs.map +1 -1
  28. package/build/legacy/components/avatar/index.cjs +120 -23
  29. package/build/legacy/components/avatar/index.cjs.map +1 -1
  30. package/build/legacy/components/avatar/index.d.cts +3 -0
  31. package/build/legacy/components/avatar/parts.cjs +119 -22
  32. package/build/legacy/components/avatar/parts.cjs.map +1 -1
  33. package/build/legacy/components/avatar/primitives.cjs +119 -22
  34. package/build/legacy/components/avatar/primitives.cjs.map +1 -1
  35. package/build/legacy/components/avatar/primitives.d.cts +3 -0
  36. package/build/legacy/components/button/button.cjs +126 -24
  37. package/build/legacy/components/button/button.cjs.map +1 -1
  38. package/build/legacy/components/button/index.cjs +126 -24
  39. package/build/legacy/components/button/index.cjs.map +1 -1
  40. package/build/legacy/components/button/parts.cjs +126 -24
  41. package/build/legacy/components/button/parts.cjs.map +1 -1
  42. package/build/legacy/components/button/primitives.cjs +148 -0
  43. package/build/legacy/components/button/primitives.cjs.map +1 -0
  44. package/build/legacy/components/button/primitives.d.cts +1 -0
  45. package/build/legacy/components/checkbox/checkbox-icon.cjs +148 -55
  46. package/build/legacy/components/checkbox/checkbox-icon.cjs.map +1 -1
  47. package/build/legacy/components/checkbox/checkbox.cjs +153 -66
  48. package/build/legacy/components/checkbox/checkbox.cjs.map +1 -1
  49. package/build/legacy/components/checkbox/index.cjs +153 -66
  50. package/build/legacy/components/checkbox/index.cjs.map +1 -1
  51. package/build/legacy/components/checkbox/index.d.cts +6 -0
  52. package/build/legacy/components/checkbox/parts.cjs +134 -41
  53. package/build/legacy/components/checkbox/parts.cjs.map +1 -1
  54. package/build/legacy/components/checkbox/primitives.cjs +134 -41
  55. package/build/legacy/components/checkbox/primitives.cjs.map +1 -1
  56. package/build/legacy/components/checkbox/primitives.d.cts +6 -0
  57. package/build/legacy/components/circular-progress/circular-progress.cjs +188 -0
  58. package/build/legacy/components/circular-progress/circular-progress.cjs.map +1 -0
  59. package/build/legacy/components/circular-progress/circular-progress.d.cts +2 -0
  60. package/build/legacy/components/circular-progress/index.cjs +202 -0
  61. package/build/legacy/components/circular-progress/index.cjs.map +1 -0
  62. package/build/legacy/components/circular-progress/index.d.cts +16 -0
  63. package/build/legacy/components/circular-progress/primitives.cjs +182 -0
  64. package/build/legacy/components/circular-progress/primitives.cjs.map +1 -0
  65. package/build/legacy/components/circular-progress/primitives.d.cts +14 -0
  66. package/build/legacy/components/combobox/combobox.cjs +208 -135
  67. package/build/legacy/components/combobox/combobox.cjs.map +1 -1
  68. package/build/legacy/components/combobox/index.cjs +258 -142
  69. package/build/legacy/components/combobox/index.cjs.map +1 -1
  70. package/build/legacy/components/combobox/index.d.cts +14 -0
  71. package/build/legacy/components/combobox/item-group.cjs +166 -111
  72. package/build/legacy/components/combobox/item-group.cjs.map +1 -1
  73. package/build/legacy/components/combobox/item.cjs +166 -111
  74. package/build/legacy/components/combobox/item.cjs.map +1 -1
  75. package/build/legacy/components/combobox/parts.cjs +166 -111
  76. package/build/legacy/components/combobox/parts.cjs.map +1 -1
  77. package/build/legacy/components/combobox/primitives.cjs +166 -115
  78. package/build/legacy/components/combobox/primitives.cjs.map +1 -1
  79. package/build/legacy/components/combobox/primitives.d.cts +14 -0
  80. package/build/legacy/components/combobox/use-stateful-collection.cjs +157 -0
  81. package/build/legacy/components/combobox/use-stateful-collection.cjs.map +1 -1
  82. package/build/legacy/components/cta-dialog/index.cjs +215 -174
  83. package/build/legacy/components/cta-dialog/index.cjs.map +1 -1
  84. package/build/legacy/components/cta-dialog/provider.cjs +215 -174
  85. package/build/legacy/components/cta-dialog/provider.cjs.map +1 -1
  86. package/build/legacy/components/cta-dialog/trigger-item.cjs +127 -23
  87. package/build/legacy/components/cta-dialog/trigger-item.cjs.map +1 -1
  88. package/build/legacy/components/date-picker/calendar.cjs +209 -228
  89. package/build/legacy/components/date-picker/calendar.cjs.map +1 -1
  90. package/build/legacy/components/date-picker/calendar.d.cts +1 -0
  91. package/build/legacy/components/date-picker/content.cjs +156 -156
  92. package/build/legacy/components/date-picker/content.cjs.map +1 -1
  93. package/build/legacy/components/date-picker/date-picker.cjs +150 -147
  94. package/build/legacy/components/date-picker/date-picker.cjs.map +1 -1
  95. package/build/legacy/components/date-picker/day-view.cjs +177 -193
  96. package/build/legacy/components/date-picker/day-view.cjs.map +1 -1
  97. package/build/legacy/components/date-picker/day-view.d.cts +1 -1
  98. package/build/legacy/components/date-picker/index.cjs +229 -240
  99. package/build/legacy/components/date-picker/index.cjs.map +1 -1
  100. package/build/legacy/components/date-picker/index.d.cts +31 -0
  101. package/build/legacy/components/date-picker/input.cjs +163 -171
  102. package/build/legacy/components/date-picker/input.cjs.map +1 -1
  103. package/build/legacy/components/date-picker/month-view.cjs +177 -193
  104. package/build/legacy/components/date-picker/month-view.cjs.map +1 -1
  105. package/build/legacy/components/date-picker/parts.cjs +150 -147
  106. package/build/legacy/components/date-picker/parts.cjs.map +1 -1
  107. package/build/legacy/components/date-picker/primitives.cjs +150 -147
  108. package/build/legacy/components/date-picker/primitives.cjs.map +1 -1
  109. package/build/legacy/components/date-picker/primitives.d.cts +24 -0
  110. package/build/legacy/components/date-picker/range-input.cjs +159 -174
  111. package/build/legacy/components/date-picker/range-input.cjs.map +1 -1
  112. package/build/legacy/components/date-picker/trigger.cjs +161 -169
  113. package/build/legacy/components/date-picker/trigger.cjs.map +1 -1
  114. package/build/legacy/components/date-picker/view-control-group.cjs +184 -202
  115. package/build/legacy/components/date-picker/view-control-group.cjs.map +1 -1
  116. package/build/legacy/components/date-picker/year-view.cjs +177 -193
  117. package/build/legacy/components/date-picker/year-view.cjs.map +1 -1
  118. package/build/legacy/components/deprecated/Label.cjs +155 -8
  119. package/build/legacy/components/deprecated/Label.cjs.map +1 -1
  120. package/build/legacy/components/deprecated/Legend.cjs +1 -1
  121. package/build/legacy/components/deprecated/Legend.cjs.map +1 -1
  122. package/build/legacy/components/deprecated/NavMenuLink.cjs +1 -1
  123. package/build/legacy/components/deprecated/NavMenuLink.cjs.map +1 -1
  124. package/build/legacy/components/deprecated/NavMenuList.cjs +1 -1
  125. package/build/legacy/components/deprecated/NavMenuList.cjs.map +1 -1
  126. package/build/legacy/components/deprecated/NavMenuTrigger.cjs +9 -9
  127. package/build/legacy/components/deprecated/NavMenuTrigger.cjs.map +1 -1
  128. package/build/legacy/components/deprecated/Notification.cjs +13 -13
  129. package/build/legacy/components/deprecated/Notification.cjs.map +1 -1
  130. package/build/legacy/components/deprecated/NotificationDescription.d.cts +1 -1
  131. package/build/legacy/components/deprecated/NotificationHeading.d.cts +1 -1
  132. package/build/legacy/components/deprecated/aria-helpers/nav-menu.aria.cjs +36 -0
  133. package/build/legacy/components/deprecated/aria-helpers/nav-menu.aria.cjs.map +1 -0
  134. package/build/legacy/components/deprecated/aria-helpers/nav-menu.aria.d.cts +2 -0
  135. package/build/legacy/components/deprecated/aria-helpers/trap-focus.aria.cjs +54 -0
  136. package/build/legacy/components/deprecated/aria-helpers/trap-focus.aria.cjs.map +1 -0
  137. package/build/legacy/components/deprecated/aria-helpers/trap-focus.aria.d.cts +1 -0
  138. package/build/legacy/components/dialog/close-icon-trigger.cjs +135 -25
  139. package/build/legacy/components/dialog/close-icon-trigger.cjs.map +1 -1
  140. package/build/legacy/components/dialog/dialog.cjs +129 -39
  141. package/build/legacy/components/dialog/dialog.cjs.map +1 -1
  142. package/build/legacy/components/dialog/index.cjs +137 -88
  143. package/build/legacy/components/dialog/index.cjs.map +1 -1
  144. package/build/legacy/components/dialog/index.d.cts +10 -1
  145. package/build/legacy/components/dialog/parts.cjs +122 -59
  146. package/build/legacy/components/dialog/parts.cjs.map +1 -1
  147. package/build/legacy/components/dialog/primitives.cjs +122 -59
  148. package/build/legacy/components/dialog/primitives.cjs.map +1 -1
  149. package/build/legacy/components/dialog/primitives.d.cts +9 -1
  150. package/build/legacy/components/feature-flag/feature-flag.cjs +65 -0
  151. package/build/legacy/components/feature-flag/feature-flag.cjs.map +1 -0
  152. package/build/legacy/components/feature-flag/feature-flag.d.cts +2 -0
  153. package/build/legacy/components/feature-flag/index.cjs +64 -0
  154. package/build/legacy/components/feature-flag/index.cjs.map +1 -0
  155. package/build/legacy/components/feature-flag/index.d.cts +2 -0
  156. package/build/legacy/components/field/error-text.cjs +36 -0
  157. package/build/legacy/components/field/error-text.cjs.map +1 -0
  158. package/build/legacy/components/field/error-text.d.cts +1 -0
  159. package/build/legacy/components/field/field.cjs +180 -61
  160. package/build/legacy/components/field/field.cjs.map +1 -1
  161. package/build/legacy/components/field/helper-text.cjs +198 -0
  162. package/build/legacy/components/field/helper-text.cjs.map +1 -0
  163. package/build/legacy/components/field/helper-text.d.cts +1 -0
  164. package/build/legacy/components/field/index.cjs +228 -116
  165. package/build/legacy/components/field/index.cjs.map +1 -1
  166. package/build/legacy/components/field/index.d.cts +11 -3
  167. package/build/legacy/components/field/input.cjs +298 -0
  168. package/build/legacy/components/field/input.cjs.map +1 -0
  169. package/build/legacy/components/field/input.d.cts +2 -0
  170. package/build/legacy/components/field/parts.cjs +175 -93
  171. package/build/legacy/components/field/parts.cjs.map +1 -1
  172. package/build/legacy/components/field/primitives.cjs +214 -89
  173. package/build/legacy/components/field/primitives.cjs.map +1 -1
  174. package/build/legacy/components/field/primitives.d.cts +9 -2
  175. package/build/legacy/components/fieldset/fieldset.cjs +127 -34
  176. package/build/legacy/components/fieldset/fieldset.cjs.map +1 -1
  177. package/build/legacy/components/fieldset/index.cjs +127 -34
  178. package/build/legacy/components/fieldset/index.cjs.map +1 -1
  179. package/build/legacy/components/fieldset/index.d.cts +4 -0
  180. package/build/legacy/components/fieldset/parts.cjs +127 -34
  181. package/build/legacy/components/fieldset/parts.cjs.map +1 -1
  182. package/build/legacy/components/fieldset/primitives.cjs +127 -34
  183. package/build/legacy/components/fieldset/primitives.cjs.map +1 -1
  184. package/build/legacy/components/fieldset/primitives.d.cts +4 -0
  185. package/build/legacy/components/file-upload/file-status.cjs +570 -0
  186. package/build/legacy/components/file-upload/file-status.cjs.map +1 -0
  187. package/build/legacy/components/file-upload/file-status.d.cts +6 -0
  188. package/build/legacy/components/file-upload/file-uploader.cjs +286 -0
  189. package/build/legacy/components/file-upload/file-uploader.cjs.map +1 -0
  190. package/build/legacy/components/file-upload/file-uploader.d.cts +2 -0
  191. package/build/legacy/components/file-upload/index.cjs +627 -0
  192. package/build/legacy/components/file-upload/index.cjs.map +1 -0
  193. package/build/legacy/components/file-upload/index.d.cts +8 -0
  194. package/build/legacy/components/for/for.cjs +38 -0
  195. package/build/legacy/components/for/for.cjs.map +1 -0
  196. package/build/legacy/components/for/for.d.cts +2 -0
  197. package/build/legacy/components/for/index.cjs +40 -0
  198. package/build/legacy/components/for/index.cjs.map +1 -0
  199. package/build/legacy/components/for/index.d.cts +2 -0
  200. package/build/legacy/components/icon-button/button.cjs +157 -0
  201. package/build/legacy/components/icon-button/button.cjs.map +1 -0
  202. package/build/legacy/components/icon-button/button.d.cts +2 -0
  203. package/build/legacy/components/icon-button/index.cjs +159 -0
  204. package/build/legacy/components/icon-button/index.cjs.map +1 -0
  205. package/build/legacy/components/icon-button/index.d.cts +4 -0
  206. package/build/legacy/components/icon-button/primitives.cjs +148 -0
  207. package/build/legacy/components/icon-button/primitives.cjs.map +1 -0
  208. package/build/legacy/components/icon-button/primitives.d.cts +2 -0
  209. package/build/legacy/components/menu/index.cjs +220 -0
  210. package/build/legacy/components/menu/index.cjs.map +1 -0
  211. package/build/legacy/components/menu/index.d.cts +27 -0
  212. package/build/legacy/components/menu/menu.cjs +200 -0
  213. package/build/legacy/components/menu/menu.cjs.map +1 -0
  214. package/build/legacy/components/menu/menu.d.cts +7 -0
  215. package/build/legacy/components/menu/primitives.cjs +190 -0
  216. package/build/legacy/components/menu/primitives.cjs.map +1 -0
  217. package/build/legacy/components/menu/primitives.d.cts +20 -0
  218. package/build/legacy/components/notifications/center.cjs +144 -64
  219. package/build/legacy/components/notifications/center.cjs.map +1 -1
  220. package/build/legacy/components/notifications/close-trigger.cjs +128 -36
  221. package/build/legacy/components/notifications/close-trigger.cjs.map +1 -1
  222. package/build/legacy/components/notifications/index.cjs +140 -62
  223. package/build/legacy/components/notifications/index.cjs.map +1 -1
  224. package/build/legacy/components/notifications/index.d.cts +6 -0
  225. package/build/legacy/components/notifications/match-icon.cjs +2 -2
  226. package/build/legacy/components/notifications/match-icon.cjs.map +1 -1
  227. package/build/legacy/components/notifications/parts.cjs +128 -36
  228. package/build/legacy/components/notifications/parts.cjs.map +1 -1
  229. package/build/legacy/components/notifications/primitives.cjs +129 -39
  230. package/build/legacy/components/notifications/primitives.cjs.map +1 -1
  231. package/build/legacy/components/notifications/primitives.d.cts +6 -0
  232. package/build/legacy/components/portal/index.cjs +34 -0
  233. package/build/legacy/components/portal/index.cjs.map +1 -0
  234. package/build/legacy/components/portal/index.d.cts +2 -0
  235. package/build/legacy/components/portal/portal.cjs +32 -0
  236. package/build/legacy/components/portal/portal.cjs.map +1 -0
  237. package/build/legacy/components/portal/portal.d.cts +2 -0
  238. package/build/legacy/components/progress/index.cjs +194 -0
  239. package/build/legacy/components/progress/index.cjs.map +1 -0
  240. package/build/legacy/components/progress/index.d.cts +8 -0
  241. package/build/legacy/components/progress/primitives.cjs +164 -0
  242. package/build/legacy/components/progress/primitives.cjs.map +1 -0
  243. package/build/legacy/components/progress/primitives.d.cts +4 -0
  244. package/build/legacy/components/progress/progress-bar.cjs +190 -0
  245. package/build/legacy/components/progress/progress-bar.cjs.map +1 -0
  246. package/build/legacy/components/progress/progress-bar.d.cts +4 -0
  247. package/build/legacy/components/radio/index.cjs +136 -64
  248. package/build/legacy/components/radio/index.cjs.map +1 -1
  249. package/build/legacy/components/radio/index.d.cts +7 -0
  250. package/build/legacy/components/radio/parts.cjs +136 -64
  251. package/build/legacy/components/radio/parts.cjs.map +1 -1
  252. package/build/legacy/components/radio/primitives.cjs +136 -64
  253. package/build/legacy/components/radio/primitives.cjs.map +1 -1
  254. package/build/legacy/components/radio/primitives.d.cts +7 -0
  255. package/build/legacy/components/radio/radio.cjs +136 -33
  256. package/build/legacy/components/radio/radio.cjs.map +1 -1
  257. package/build/legacy/components/rating/index.cjs +131 -50
  258. package/build/legacy/components/rating/index.cjs.map +1 -1
  259. package/build/legacy/components/rating/index.d.cts +7 -0
  260. package/build/legacy/components/rating/parts.cjs +130 -49
  261. package/build/legacy/components/rating/parts.cjs.map +1 -1
  262. package/build/legacy/components/rating/primitives.cjs +130 -49
  263. package/build/legacy/components/rating/primitives.cjs.map +1 -1
  264. package/build/legacy/components/rating/primitives.d.cts +7 -0
  265. package/build/legacy/components/rating/rating.cjs +131 -50
  266. package/build/legacy/components/rating/rating.cjs.map +1 -1
  267. package/build/legacy/components/select/index.cjs +175 -121
  268. package/build/legacy/components/select/index.cjs.map +1 -1
  269. package/build/legacy/components/select/index.d.cts +17 -3
  270. package/build/legacy/components/select/option-group.cjs +157 -18
  271. package/build/legacy/components/select/option-group.cjs.map +1 -1
  272. package/build/legacy/components/select/option.cjs +237 -0
  273. package/build/legacy/components/select/option.cjs.map +1 -0
  274. package/build/legacy/components/select/option.d.cts +2 -0
  275. package/build/legacy/components/select/parts.cjs +154 -95
  276. package/build/legacy/components/select/parts.cjs.map +1 -1
  277. package/build/legacy/components/select/primitives.cjs +154 -95
  278. package/build/legacy/components/select/primitives.cjs.map +1 -1
  279. package/build/legacy/components/select/primitives.d.cts +16 -1
  280. package/build/legacy/components/select/select.cjs +171 -126
  281. package/build/legacy/components/select/select.cjs.map +1 -1
  282. package/build/legacy/components/select/select.d.cts +0 -3
  283. package/build/legacy/components/show/index.cjs +43 -0
  284. package/build/legacy/components/show/index.cjs.map +1 -0
  285. package/build/legacy/components/show/index.d.cts +2 -0
  286. package/build/legacy/components/show/show.cjs +41 -0
  287. package/build/legacy/components/show/show.cjs.map +1 -0
  288. package/build/legacy/components/show/show.d.cts +2 -0
  289. package/build/legacy/components/spinner/index.cjs +107 -0
  290. package/build/legacy/components/spinner/index.cjs.map +1 -0
  291. package/build/legacy/components/spinner/index.d.cts +2 -0
  292. package/build/legacy/components/spinner/spinner.cjs +105 -0
  293. package/build/legacy/components/spinner/spinner.cjs.map +1 -0
  294. package/build/legacy/components/spinner/spinner.d.cts +2 -0
  295. package/build/legacy/components/switch/index.cjs +127 -30
  296. package/build/legacy/components/switch/index.cjs.map +1 -1
  297. package/build/legacy/components/switch/index.d.cts +5 -1
  298. package/build/legacy/components/switch/parts.cjs +127 -30
  299. package/build/legacy/components/switch/parts.cjs.map +1 -1
  300. package/build/legacy/components/switch/primitives.cjs +127 -30
  301. package/build/legacy/components/switch/primitives.cjs.map +1 -1
  302. package/build/legacy/components/switch/primitives.d.cts +5 -0
  303. package/build/legacy/components/switch/switch.cjs +127 -30
  304. package/build/legacy/components/switch/switch.cjs.map +1 -1
  305. package/build/legacy/components/switch/switch.d.cts +0 -1
  306. package/build/legacy/components/table/index.cjs +173 -120
  307. package/build/legacy/components/table/index.cjs.map +1 -1
  308. package/build/legacy/components/table/index.d.cts +11 -0
  309. package/build/legacy/components/table/parts.cjs +172 -119
  310. package/build/legacy/components/table/parts.cjs.map +1 -1
  311. package/build/legacy/components/table/primitives.cjs +172 -119
  312. package/build/legacy/components/table/primitives.cjs.map +1 -1
  313. package/build/legacy/components/table/primitives.d.cts +10 -0
  314. package/build/legacy/components/table/table.cjs +173 -120
  315. package/build/legacy/components/table/table.cjs.map +1 -1
  316. package/build/legacy/components/table/table.d.cts +1 -0
  317. package/build/legacy/components/tabs/index.cjs +125 -31
  318. package/build/legacy/components/tabs/index.cjs.map +1 -1
  319. package/build/legacy/components/tabs/index.d.cts +5 -0
  320. package/build/legacy/components/tabs/parts.cjs +125 -31
  321. package/build/legacy/components/tabs/parts.cjs.map +1 -1
  322. package/build/legacy/components/tabs/primitives.cjs +125 -31
  323. package/build/legacy/components/tabs/primitives.cjs.map +1 -1
  324. package/build/legacy/components/tabs/primitives.d.cts +5 -0
  325. package/build/legacy/components/tabs/tabs.cjs +125 -31
  326. package/build/legacy/components/tabs/tabs.cjs.map +1 -1
  327. package/build/legacy/components/tag/index.cjs +234 -0
  328. package/build/legacy/components/tag/index.cjs.map +1 -0
  329. package/build/legacy/components/tag/index.d.cts +4 -0
  330. package/build/legacy/components/tag/tag.cjs +233 -0
  331. package/build/legacy/components/tag/tag.cjs.map +1 -0
  332. package/build/legacy/components/tag/tag.d.cts +4 -0
  333. package/build/legacy/components/text/index.cjs +55 -0
  334. package/build/legacy/components/text/index.cjs.map +1 -0
  335. package/build/legacy/components/text/index.d.cts +4 -0
  336. package/build/legacy/components/text/text.cjs +53 -0
  337. package/build/legacy/components/text/text.cjs.map +1 -0
  338. package/build/legacy/components/text/text.d.cts +4 -0
  339. package/build/legacy/components/theme/index.cjs +185 -0
  340. package/build/legacy/components/theme/index.cjs.map +1 -0
  341. package/build/legacy/components/theme/index.d.cts +2 -0
  342. package/build/legacy/components/theme/theme.cjs +185 -0
  343. package/build/legacy/components/theme/theme.cjs.map +1 -0
  344. package/build/legacy/components/theme/theme.d.cts +2 -0
  345. package/build/legacy/components/toggle/index.cjs +117 -5
  346. package/build/legacy/components/toggle/index.cjs.map +1 -1
  347. package/build/legacy/components/toggle/index.d.cts +2 -0
  348. package/build/legacy/components/toggle/parts.cjs +117 -5
  349. package/build/legacy/components/toggle/parts.cjs.map +1 -1
  350. package/build/legacy/components/toggle/primitives.cjs +117 -5
  351. package/build/legacy/components/toggle/primitives.cjs.map +1 -1
  352. package/build/legacy/components/toggle/primitives.d.cts +2 -0
  353. package/build/legacy/components/tooltip/index.cjs +213 -0
  354. package/build/legacy/components/tooltip/index.cjs.map +1 -0
  355. package/build/legacy/components/tooltip/index.d.cts +15 -0
  356. package/build/legacy/components/tooltip/parts.cjs +183 -0
  357. package/build/legacy/components/tooltip/parts.cjs.map +1 -0
  358. package/build/legacy/components/tooltip/parts.d.cts +1 -0
  359. package/build/legacy/components/tooltip/primitives.cjs +181 -0
  360. package/build/legacy/components/tooltip/primitives.cjs.map +1 -0
  361. package/build/legacy/components/tooltip/primitives.d.cts +12 -0
  362. package/build/legacy/components/tooltip/tooltip.cjs +199 -0
  363. package/build/legacy/components/tooltip/tooltip.cjs.map +1 -0
  364. package/build/legacy/components/tooltip/tooltip.d.cts +2 -0
  365. package/build/legacy/context/confirm-modal.cjs +239 -171
  366. package/build/legacy/context/confirm-modal.cjs.map +1 -1
  367. package/build/legacy/context/field.cjs +161 -17
  368. package/build/legacy/context/field.cjs.map +1 -1
  369. package/build/legacy/context/prompt-modal.cjs +389 -320
  370. package/build/legacy/context/prompt-modal.cjs.map +1 -1
  371. package/build/legacy/hooks/useRootColors.cjs +2 -2
  372. package/build/legacy/hooks/useRootColors.cjs.map +1 -1
  373. package/build/legacy/index.cjs +1597 -2020
  374. package/build/legacy/index.cjs.map +1 -1
  375. package/build/legacy/index.d.cts +224 -17
  376. package/build/legacy/system/factory.cjs +167 -0
  377. package/build/legacy/system/factory.cjs.map +1 -0
  378. package/build/legacy/system/factory.d.cts +1 -0
  379. package/build/legacy/system/index.cjs +170 -0
  380. package/build/legacy/system/index.cjs.map +1 -0
  381. package/build/legacy/system/index.d.cts +12 -0
  382. package/build/legacy/system/primitive-factory.cjs +135 -0
  383. package/build/legacy/system/primitive-factory.cjs.map +1 -0
  384. package/build/legacy/system/primitive-factory.d.cts +1 -0
  385. package/build/legacy/system/types.cjs +19 -0
  386. package/build/legacy/system/types.cjs.map +1 -0
  387. package/build/legacy/system/types.d.cts +10 -0
  388. package/build/legacy/types.cjs.map +1 -1
  389. package/build/legacy/types.d.cts +1 -0
  390. package/build/modern/_tsup-dts-rollup.d.ts +2509 -808
  391. package/build/modern/chunk-24FZWSGV.js +18 -0
  392. package/build/modern/chunk-24FZWSGV.js.map +1 -0
  393. package/build/modern/chunk-26VVDQAY.js +34 -0
  394. package/build/modern/chunk-26VVDQAY.js.map +1 -0
  395. package/build/modern/chunk-34U4QQ3I.js +1 -0
  396. package/build/modern/chunk-3RPBRD5W.js +1 -0
  397. package/build/modern/chunk-3WTLKTIL.js +39 -0
  398. package/build/modern/chunk-3WTLKTIL.js.map +1 -0
  399. package/build/modern/chunk-3XA6Y4S4.js +49 -0
  400. package/build/modern/chunk-3XA6Y4S4.js.map +1 -0
  401. package/build/modern/chunk-4FRIJ5VV.js +14 -0
  402. package/build/modern/chunk-4FRIJ5VV.js.map +1 -0
  403. package/build/modern/chunk-4LBGIGNJ.js +15 -0
  404. package/build/modern/chunk-4NW7Q2VS.js +21 -0
  405. package/build/modern/chunk-4TQO7LCB.js +44 -0
  406. package/build/modern/chunk-4TQO7LCB.js.map +1 -0
  407. package/build/modern/chunk-4XTYDXVV.js +48 -0
  408. package/build/modern/chunk-4XTYDXVV.js.map +1 -0
  409. package/build/modern/chunk-56YCKMC2.js +21 -0
  410. package/build/modern/chunk-5CG7URT6.js +19 -0
  411. package/build/modern/chunk-5CG7URT6.js.map +1 -0
  412. package/build/modern/chunk-5IMS6G4G.js +1 -0
  413. package/build/modern/chunk-6LH6MOXD.js +25 -0
  414. package/build/modern/chunk-6QWS7HII.js +47 -0
  415. package/build/modern/chunk-6W6QY3XG.js +23 -0
  416. package/build/modern/chunk-6W6QY3XG.js.map +1 -0
  417. package/build/modern/chunk-75VWN4C7.js +81 -0
  418. package/build/modern/chunk-75VWN4C7.js.map +1 -0
  419. package/build/modern/chunk-7F4AOCTU.js +22 -0
  420. package/build/modern/chunk-7F4AOCTU.js.map +1 -0
  421. package/build/modern/chunk-7PTAPZOO.js +26 -0
  422. package/build/modern/chunk-7PTAPZOO.js.map +1 -0
  423. package/build/modern/chunk-AAWEAXIA.js +15 -0
  424. package/build/modern/chunk-ADI4DOEW.js +17 -0
  425. package/build/modern/chunk-ADI4DOEW.js.map +1 -0
  426. package/build/modern/chunk-APDQJ7MW.js +41 -0
  427. package/build/modern/chunk-APDQJ7MW.js.map +1 -0
  428. package/build/modern/chunk-B4GBNIU7.js +1 -0
  429. package/build/modern/chunk-B4X5H2QZ.js +46 -0
  430. package/build/modern/chunk-B4X5H2QZ.js.map +1 -0
  431. package/build/modern/chunk-BCN2E47W.js +41 -0
  432. package/build/modern/chunk-BCN2E47W.js.map +1 -0
  433. package/build/modern/chunk-BF2IDJMZ.js +37 -0
  434. package/build/modern/chunk-BF2IDJMZ.js.map +1 -0
  435. package/build/modern/chunk-BFV463NP.js +27 -0
  436. package/build/modern/chunk-C3FEINCR.js +12 -0
  437. package/build/modern/chunk-C3FEINCR.js.map +1 -0
  438. package/build/modern/chunk-CIKCQHPC.js +20 -0
  439. package/build/modern/chunk-CIKCQHPC.js.map +1 -0
  440. package/build/modern/chunk-CKLLERV7.js +21 -0
  441. package/build/modern/chunk-D2TQPEZQ.js +13 -0
  442. package/build/modern/chunk-D2TQPEZQ.js.map +1 -0
  443. package/build/modern/chunk-DJCPF4JA.js +77 -0
  444. package/build/modern/chunk-DJCPF4JA.js.map +1 -0
  445. package/build/modern/chunk-DUCW5X4Y.js +23 -0
  446. package/build/modern/chunk-DUFKXBQT.js +22 -0
  447. package/build/modern/chunk-DWKGFNTK.js +15 -0
  448. package/build/modern/chunk-DWKGFNTK.js.map +1 -0
  449. package/build/modern/chunk-E2AW2N7Q.js +33 -0
  450. package/build/modern/chunk-EALORWDQ.js +126 -0
  451. package/build/modern/chunk-EALORWDQ.js.map +1 -0
  452. package/build/modern/chunk-EPIO6H3A.js +18 -0
  453. package/build/modern/chunk-EZTDGHEX.js +1 -0
  454. package/build/modern/chunk-F45WBSRP.js +215 -0
  455. package/build/modern/chunk-F45WBSRP.js.map +1 -0
  456. package/build/modern/chunk-FRT3VY4M.js +22 -0
  457. package/build/modern/chunk-FRT3VY4M.js.map +1 -0
  458. package/build/modern/chunk-G4CDF7LY.js +15 -0
  459. package/build/modern/chunk-G4CDF7LY.js.map +1 -0
  460. package/build/modern/chunk-GPGFQNJ6.js +21 -0
  461. package/build/modern/chunk-GZ6T3352.js +109 -0
  462. package/build/modern/chunk-GZ6T3352.js.map +1 -0
  463. package/build/modern/chunk-GZXW3JIW.js +41 -0
  464. package/build/modern/chunk-HBS3B3SE.js +33 -0
  465. package/build/modern/chunk-HHY26N7O.js +20 -0
  466. package/build/modern/chunk-HHY26N7O.js.map +1 -0
  467. package/build/modern/chunk-IX7BYPTS.js +29 -0
  468. package/build/modern/chunk-IX7BYPTS.js.map +1 -0
  469. package/build/modern/chunk-JFWPJXFF.js +33 -0
  470. package/build/modern/chunk-JFWPJXFF.js.map +1 -0
  471. package/build/modern/chunk-JHCKXQEK.js +27 -0
  472. package/build/modern/chunk-JHCKXQEK.js.map +1 -0
  473. package/build/modern/chunk-JIXUOTH4.js +1 -0
  474. package/build/modern/chunk-JLMHKTPI.js +27 -0
  475. package/build/modern/chunk-JLMHKTPI.js.map +1 -0
  476. package/build/modern/chunk-JPWFSCTC.js +80 -0
  477. package/build/modern/chunk-JPWFSCTC.js.map +1 -0
  478. package/build/modern/chunk-JQNVN6R6.js +42 -0
  479. package/build/modern/chunk-JQNVN6R6.js.map +1 -0
  480. package/build/modern/chunk-JVWOAPWY.js +70 -0
  481. package/build/modern/chunk-JVWOAPWY.js.map +1 -0
  482. package/build/modern/chunk-JYWTA3OZ.js +18 -0
  483. package/build/modern/chunk-JYWTA3OZ.js.map +1 -0
  484. package/build/modern/chunk-KIKGNZ2H.js +86 -0
  485. package/build/modern/chunk-KIKGNZ2H.js.map +1 -0
  486. package/build/modern/chunk-KJYL3RJ2.js +42 -0
  487. package/build/modern/chunk-KJYL3RJ2.js.map +1 -0
  488. package/build/modern/chunk-KOVD3FG7.js +87 -0
  489. package/build/modern/chunk-KOVD3FG7.js.map +1 -0
  490. package/build/modern/chunk-KRTXDJ4S.js +43 -0
  491. package/build/modern/chunk-KRTXDJ4S.js.map +1 -0
  492. package/build/modern/chunk-KTTGGO72.js +35 -0
  493. package/build/modern/chunk-KTTGGO72.js.map +1 -0
  494. package/build/modern/chunk-KUR42DQQ.js +25 -0
  495. package/build/modern/chunk-KUTKPR3G.js +22 -0
  496. package/build/modern/chunk-KUTKPR3G.js.map +1 -0
  497. package/build/modern/chunk-L3V6I7YH.js +35 -0
  498. package/build/modern/chunk-L3V6I7YH.js.map +1 -0
  499. package/build/modern/chunk-L654KDXH.js +37 -0
  500. package/build/modern/chunk-L654KDXH.js.map +1 -0
  501. package/build/modern/chunk-LRHHDORZ.js +1 -0
  502. package/build/modern/chunk-LWOV3N62.js +31 -0
  503. package/build/modern/chunk-LWOV3N62.js.map +1 -0
  504. package/build/modern/chunk-MBZHMWPR.js +94 -0
  505. package/build/modern/chunk-MBZHMWPR.js.map +1 -0
  506. package/build/modern/chunk-MS7LB3BL.js +86 -0
  507. package/build/modern/chunk-MS7LB3BL.js.map +1 -0
  508. package/build/modern/chunk-MW2BVQ5A.js +64 -0
  509. package/build/modern/chunk-MW2BVQ5A.js.map +1 -0
  510. package/build/modern/chunk-NAPG6OWJ.js +41 -0
  511. package/build/modern/chunk-NAPG6OWJ.js.map +1 -0
  512. package/build/modern/chunk-NE6TEVH2.js +67 -0
  513. package/build/modern/chunk-NE6TEVH2.js.map +1 -0
  514. package/build/modern/chunk-NUXMADXV.js +17 -0
  515. package/build/modern/chunk-NUXMADXV.js.map +1 -0
  516. package/build/modern/chunk-NZBKI6AF.js +42 -0
  517. package/build/modern/chunk-NZBKI6AF.js.map +1 -0
  518. package/build/modern/chunk-NZP3XQNQ.js +1 -0
  519. package/build/modern/chunk-NZZS2A53.js +37 -0
  520. package/build/modern/chunk-OCK4XVNE.js +24 -0
  521. package/build/modern/chunk-OCK4XVNE.js.map +1 -0
  522. package/build/modern/chunk-OKU736EK.js +17 -0
  523. package/build/modern/chunk-OQN4HVLQ.js +38 -0
  524. package/build/modern/chunk-P3EIOH5D.js +30 -0
  525. package/build/modern/chunk-P3EIOH5D.js.map +1 -0
  526. package/build/modern/chunk-P4GJKPNL.js +21 -0
  527. package/build/modern/chunk-PAQ6YQ7Y.js +1 -0
  528. package/build/modern/chunk-PLPYBCZQ.js +8 -0
  529. package/build/modern/chunk-PLPYBCZQ.js.map +1 -0
  530. package/build/modern/chunk-Q2MJ7JRM.js +22 -0
  531. package/build/modern/chunk-Q4CS3AKY.js +1 -0
  532. package/build/modern/chunk-QHV4IK52.js +27 -0
  533. package/build/modern/chunk-QHV4IK52.js.map +1 -0
  534. package/build/modern/chunk-QTV75ATT.js +12 -0
  535. package/build/modern/chunk-QTV75ATT.js.map +1 -0
  536. package/build/modern/chunk-QULAH262.js +27 -0
  537. package/build/modern/chunk-QULAH262.js.map +1 -0
  538. package/build/modern/chunk-QUOJS5LL.js +81 -0
  539. package/build/modern/chunk-QUOJS5LL.js.map +1 -0
  540. package/build/modern/chunk-QZ5BIUMH.js +226 -0
  541. package/build/modern/chunk-QZ5BIUMH.js.map +1 -0
  542. package/build/modern/chunk-RIBBTTT4.js +36 -0
  543. package/build/modern/chunk-RIBBTTT4.js.map +1 -0
  544. package/build/modern/chunk-RJGEKVHZ.js +59 -0
  545. package/build/modern/chunk-RMEVOJ2E.js +1 -0
  546. package/build/modern/chunk-SFQIENJB.js +40 -0
  547. package/build/modern/chunk-SFQIENJB.js.map +1 -0
  548. package/build/modern/chunk-SQRFRBDB.js +48 -0
  549. package/build/modern/chunk-SQRFRBDB.js.map +1 -0
  550. package/build/modern/chunk-T5TX5YHC.js +25 -0
  551. package/build/modern/chunk-T5TX5YHC.js.map +1 -0
  552. package/build/modern/chunk-TCACYLCL.js +40 -0
  553. package/build/modern/chunk-TCACYLCL.js.map +1 -0
  554. package/build/modern/chunk-TGCKJHEE.js +52 -0
  555. package/build/modern/chunk-TGCKJHEE.js.map +1 -0
  556. package/build/modern/chunk-TLRRDNS3.js +1 -0
  557. package/build/modern/chunk-TOXQSWPN.js +49 -0
  558. package/build/modern/chunk-TOXQSWPN.js.map +1 -0
  559. package/build/modern/chunk-TQB6U3JH.js +24 -0
  560. package/build/modern/chunk-TQB6U3JH.js.map +1 -0
  561. package/build/modern/chunk-TTWDHJ3J.js +38 -0
  562. package/build/modern/chunk-TTWDHJ3J.js.map +1 -0
  563. package/build/modern/chunk-TVSVKDWV.js +14 -0
  564. package/build/modern/chunk-TVSVKDWV.js.map +1 -0
  565. package/build/modern/chunk-TXV55LWL.js +23 -0
  566. package/build/modern/chunk-TXV55LWL.js.map +1 -0
  567. package/build/modern/chunk-ULKVI2EH.js +40 -0
  568. package/build/modern/chunk-ULKVI2EH.js.map +1 -0
  569. package/build/modern/chunk-UWNLOY27.js +22 -0
  570. package/build/modern/chunk-UWNLOY27.js.map +1 -0
  571. package/build/modern/chunk-V3LIZS3V.js +62 -0
  572. package/build/modern/chunk-V3LIZS3V.js.map +1 -0
  573. package/build/modern/chunk-VB5XZZKE.js +23 -0
  574. package/build/modern/chunk-VKL3CMI3.js +19 -0
  575. package/build/modern/chunk-VKL3CMI3.js.map +1 -0
  576. package/build/modern/chunk-VOVGPV7G.js +31 -0
  577. package/build/modern/chunk-VOVGPV7G.js.map +1 -0
  578. package/build/modern/chunk-VPD3PPBW.js +41 -0
  579. package/build/modern/chunk-VPD3PPBW.js.map +1 -0
  580. package/build/modern/chunk-VQ3NO6IC.js +36 -0
  581. package/build/modern/chunk-VQ3NO6IC.js.map +1 -0
  582. package/build/modern/chunk-VT6DJ2VM.js +1 -0
  583. package/build/modern/chunk-WC5DERNW.js +43 -0
  584. package/build/modern/chunk-WC5DERNW.js.map +1 -0
  585. package/build/modern/chunk-WC75SKFH.js +21 -0
  586. package/build/modern/chunk-WJHG3ZFR.js +35 -0
  587. package/build/modern/chunk-WJHG3ZFR.js.map +1 -0
  588. package/build/modern/chunk-WJW4FF4J.js +1 -0
  589. package/build/modern/chunk-WN2WTSWG.js +31 -0
  590. package/build/modern/chunk-WRKDPEIM.js +182 -0
  591. package/build/modern/chunk-WRKDPEIM.js.map +1 -0
  592. package/build/modern/chunk-X5LBBTCV.js +1 -0
  593. package/build/modern/chunk-X627G6B3.js +22 -0
  594. package/build/modern/chunk-X627G6B3.js.map +1 -0
  595. package/build/modern/chunk-X7JS25IL.js +19 -0
  596. package/build/modern/chunk-XDMGFB6Q.js +1 -0
  597. package/build/modern/chunk-XNER5INS.js +35 -0
  598. package/build/modern/chunk-XNER5INS.js.map +1 -0
  599. package/build/modern/chunk-YJR4NLDB.js +14 -0
  600. package/build/modern/chunk-YJR4NLDB.js.map +1 -0
  601. package/build/modern/chunk-ZLHQYCL3.js +45 -0
  602. package/build/modern/chunk-ZLHQYCL3.js.map +1 -0
  603. package/build/modern/components/accordion/index.d.ts +5 -0
  604. package/build/modern/components/accordion/index.js +9 -5
  605. package/build/modern/components/accordion/item-group.js +9 -5
  606. package/build/modern/components/accordion/item-indicator.js +6 -3
  607. package/build/modern/components/accordion/parts.js +5 -2
  608. package/build/modern/components/accordion/primitives.d.ts +5 -0
  609. package/build/modern/components/accordion/primitives.js +4 -1
  610. package/build/modern/components/admonition/admonition.js +12 -8
  611. package/build/modern/components/admonition/index.d.ts +5 -0
  612. package/build/modern/components/admonition/index.js +12 -8
  613. package/build/modern/components/admonition/match-avatar.js +9 -5
  614. package/build/modern/components/admonition/parts.js +5 -2
  615. package/build/modern/components/admonition/primitives.d.ts +5 -0
  616. package/build/modern/components/admonition/primitives.js +4 -1
  617. package/build/modern/components/avatar/avatar.js +8 -4
  618. package/build/modern/components/avatar/index.d.ts +3 -0
  619. package/build/modern/components/avatar/index.js +8 -4
  620. package/build/modern/components/avatar/parts.js +5 -2
  621. package/build/modern/components/avatar/primitives.d.ts +3 -0
  622. package/build/modern/components/avatar/primitives.js +4 -1
  623. package/build/modern/components/button/button.js +9 -3
  624. package/build/modern/components/button/index.js +10 -4
  625. package/build/modern/components/button/parts.js +10 -4
  626. package/build/modern/components/button/primitives.d.ts +1 -0
  627. package/build/modern/components/button/primitives.js +10 -0
  628. package/build/modern/components/checkbox/checkbox-icon.js +8 -4
  629. package/build/modern/components/checkbox/checkbox.js +11 -6
  630. package/build/modern/components/checkbox/index.d.ts +6 -0
  631. package/build/modern/components/checkbox/index.js +11 -6
  632. package/build/modern/components/checkbox/parts.js +5 -2
  633. package/build/modern/components/checkbox/primitives.d.ts +6 -0
  634. package/build/modern/components/checkbox/primitives.js +4 -1
  635. package/build/modern/components/circular-progress/circular-progress.d.ts +2 -0
  636. package/build/modern/components/circular-progress/circular-progress.js +11 -0
  637. package/build/modern/components/circular-progress/index.d.ts +16 -0
  638. package/build/modern/components/circular-progress/index.js +27 -0
  639. package/build/modern/components/circular-progress/index.js.map +1 -0
  640. package/build/modern/components/circular-progress/primitives.d.ts +14 -0
  641. package/build/modern/components/circular-progress/primitives.js +22 -0
  642. package/build/modern/components/circular-progress/primitives.js.map +1 -0
  643. package/build/modern/components/combobox/combobox.js +12 -5
  644. package/build/modern/components/combobox/index.d.ts +14 -0
  645. package/build/modern/components/combobox/index.js +16 -9
  646. package/build/modern/components/combobox/item-group.js +6 -3
  647. package/build/modern/components/combobox/item.js +6 -3
  648. package/build/modern/components/combobox/parts.js +5 -2
  649. package/build/modern/components/combobox/primitives.d.ts +14 -0
  650. package/build/modern/components/combobox/primitives.js +4 -1
  651. package/build/modern/components/combobox/use-stateful-collection.js +5 -2
  652. package/build/modern/components/cta-dialog/index.js +25 -15
  653. package/build/modern/components/cta-dialog/provider.js +25 -15
  654. package/build/modern/components/cta-dialog/trigger-item.js +10 -4
  655. package/build/modern/components/date-picker/calendar.d.ts +1 -0
  656. package/build/modern/components/date-picker/calendar.js +22 -13
  657. package/build/modern/components/date-picker/content.js +8 -4
  658. package/build/modern/components/date-picker/date-picker.js +6 -3
  659. package/build/modern/components/date-picker/day-view.d.ts +1 -1
  660. package/build/modern/components/date-picker/day-view.js +16 -8
  661. package/build/modern/components/date-picker/index.d.ts +31 -0
  662. package/build/modern/components/date-picker/index.js +39 -19
  663. package/build/modern/components/date-picker/input.js +10 -5
  664. package/build/modern/components/date-picker/month-view.js +16 -8
  665. package/build/modern/components/date-picker/parts.js +5 -2
  666. package/build/modern/components/date-picker/primitives.d.ts +24 -0
  667. package/build/modern/components/date-picker/primitives.js +4 -1
  668. package/build/modern/components/date-picker/range-input.js +10 -6
  669. package/build/modern/components/date-picker/trigger.js +9 -4
  670. package/build/modern/components/date-picker/view-control-group.js +15 -7
  671. package/build/modern/components/date-picker/year-view.js +16 -8
  672. package/build/modern/components/deprecated/Label.js +11 -5
  673. package/build/modern/components/deprecated/Legend.js +3 -2
  674. package/build/modern/components/deprecated/NavMenuLink.js +3 -2
  675. package/build/modern/components/deprecated/NavMenuList.js +3 -2
  676. package/build/modern/components/deprecated/NavMenuTrigger.js +4 -3
  677. package/build/modern/components/deprecated/Notification.js +3 -3
  678. package/build/modern/components/deprecated/Notification.js.map +1 -1
  679. package/build/modern/components/deprecated/NotificationDescription.d.ts +1 -1
  680. package/build/modern/components/deprecated/NotificationHeading.d.ts +1 -1
  681. package/build/modern/components/deprecated/aria-helpers/nav-menu.aria.d.ts +2 -0
  682. package/build/modern/components/deprecated/aria-helpers/nav-menu.aria.js +7 -0
  683. package/build/modern/components/deprecated/aria-helpers/nav-menu.aria.js.map +1 -0
  684. package/build/modern/components/deprecated/aria-helpers/trap-focus.aria.d.ts +1 -0
  685. package/build/modern/components/deprecated/aria-helpers/trap-focus.aria.js +7 -0
  686. package/build/modern/components/deprecated/aria-helpers/trap-focus.aria.js.map +1 -0
  687. package/build/modern/components/dialog/close-icon-trigger.js +8 -3
  688. package/build/modern/components/dialog/dialog.js +7 -3
  689. package/build/modern/components/dialog/index.d.ts +10 -1
  690. package/build/modern/components/dialog/index.js +12 -6
  691. package/build/modern/components/dialog/parts.js +5 -2
  692. package/build/modern/components/dialog/primitives.d.ts +9 -1
  693. package/build/modern/components/dialog/primitives.js +4 -1
  694. package/build/modern/components/feature-flag/feature-flag.d.ts +2 -0
  695. package/build/modern/components/feature-flag/feature-flag.js +11 -0
  696. package/build/modern/components/feature-flag/feature-flag.js.map +1 -0
  697. package/build/modern/components/feature-flag/index.d.ts +2 -0
  698. package/build/modern/components/feature-flag/index.js +11 -0
  699. package/build/modern/components/feature-flag/index.js.map +1 -0
  700. package/build/modern/components/field/error-text.d.ts +1 -0
  701. package/build/modern/components/field/error-text.js +7 -0
  702. package/build/modern/components/field/error-text.js.map +1 -0
  703. package/build/modern/components/field/field.js +9 -3
  704. package/build/modern/components/field/helper-text.d.ts +1 -0
  705. package/build/modern/components/field/helper-text.js +17 -0
  706. package/build/modern/components/field/helper-text.js.map +1 -0
  707. package/build/modern/components/field/index.d.ts +11 -3
  708. package/build/modern/components/field/index.js +14 -6
  709. package/build/modern/components/field/input.d.ts +2 -0
  710. package/build/modern/components/field/input.js +16 -0
  711. package/build/modern/components/field/input.js.map +1 -0
  712. package/build/modern/components/field/parts.js +8 -2
  713. package/build/modern/components/field/primitives.d.ts +9 -2
  714. package/build/modern/components/field/primitives.js +9 -1
  715. package/build/modern/components/fieldset/fieldset.js +6 -3
  716. package/build/modern/components/fieldset/index.d.ts +4 -0
  717. package/build/modern/components/fieldset/index.js +6 -3
  718. package/build/modern/components/fieldset/parts.js +5 -2
  719. package/build/modern/components/fieldset/primitives.d.ts +4 -0
  720. package/build/modern/components/fieldset/primitives.js +4 -1
  721. package/build/modern/components/file-upload/file-status.d.ts +6 -0
  722. package/build/modern/components/file-upload/file-status.js +35 -0
  723. package/build/modern/components/file-upload/file-status.js.map +1 -0
  724. package/build/modern/components/file-upload/file-uploader.d.ts +2 -0
  725. package/build/modern/components/file-upload/file-uploader.js +19 -0
  726. package/build/modern/components/file-upload/file-uploader.js.map +1 -0
  727. package/build/modern/components/file-upload/index.d.ts +8 -0
  728. package/build/modern/components/file-upload/index.js +39 -0
  729. package/build/modern/components/file-upload/index.js.map +1 -0
  730. package/build/modern/components/for/for.d.ts +2 -0
  731. package/build/modern/components/for/for.js +7 -0
  732. package/build/modern/components/for/for.js.map +1 -0
  733. package/build/modern/components/for/index.d.ts +2 -0
  734. package/build/modern/components/for/index.js +8 -0
  735. package/build/modern/components/for/index.js.map +1 -0
  736. package/build/modern/components/icon-button/button.d.ts +2 -0
  737. package/build/modern/components/icon-button/button.js +11 -0
  738. package/build/modern/components/icon-button/button.js.map +1 -0
  739. package/build/modern/components/icon-button/index.d.ts +4 -0
  740. package/build/modern/components/icon-button/index.js +15 -0
  741. package/build/modern/components/icon-button/index.js.map +1 -0
  742. package/build/modern/components/icon-button/primitives.d.ts +2 -0
  743. package/build/modern/components/icon-button/primitives.js +10 -0
  744. package/build/modern/components/icon-button/primitives.js.map +1 -0
  745. package/build/modern/components/menu/index.d.ts +27 -0
  746. package/build/modern/components/menu/index.js +45 -0
  747. package/build/modern/components/menu/index.js.map +1 -0
  748. package/build/modern/components/menu/menu.d.ts +7 -0
  749. package/build/modern/components/menu/menu.js +23 -0
  750. package/build/modern/components/menu/menu.js.map +1 -0
  751. package/build/modern/components/menu/primitives.d.ts +20 -0
  752. package/build/modern/components/menu/primitives.js +28 -0
  753. package/build/modern/components/menu/primitives.js.map +1 -0
  754. package/build/modern/components/notifications/center.js +14 -8
  755. package/build/modern/components/notifications/close-trigger.js +6 -3
  756. package/build/modern/components/notifications/index.d.ts +6 -0
  757. package/build/modern/components/notifications/index.js +14 -8
  758. package/build/modern/components/notifications/match-icon.js +3 -2
  759. package/build/modern/components/notifications/parts.js +5 -2
  760. package/build/modern/components/notifications/primitives.d.ts +6 -0
  761. package/build/modern/components/notifications/primitives.js +4 -1
  762. package/build/modern/components/portal/index.d.ts +2 -0
  763. package/build/modern/components/portal/index.js +8 -0
  764. package/build/modern/components/portal/index.js.map +1 -0
  765. package/build/modern/components/portal/portal.d.ts +2 -0
  766. package/build/modern/components/portal/portal.js +7 -0
  767. package/build/modern/components/portal/portal.js.map +1 -0
  768. package/build/modern/components/progress/index.d.ts +8 -0
  769. package/build/modern/components/progress/index.js +17 -0
  770. package/build/modern/components/progress/index.js.map +1 -0
  771. package/build/modern/components/progress/primitives.d.ts +4 -0
  772. package/build/modern/components/progress/primitives.js +12 -0
  773. package/build/modern/components/progress/primitives.js.map +1 -0
  774. package/build/modern/components/progress/progress-bar.d.ts +4 -0
  775. package/build/modern/components/progress/progress-bar.js +11 -0
  776. package/build/modern/components/progress/progress-bar.js.map +1 -0
  777. package/build/modern/components/radio/index.d.ts +7 -0
  778. package/build/modern/components/radio/index.js +6 -3
  779. package/build/modern/components/radio/parts.js +5 -2
  780. package/build/modern/components/radio/primitives.d.ts +7 -0
  781. package/build/modern/components/radio/primitives.js +4 -1
  782. package/build/modern/components/radio/radio.js +5 -2
  783. package/build/modern/components/rating/index.d.ts +7 -0
  784. package/build/modern/components/rating/index.js +8 -4
  785. package/build/modern/components/rating/parts.js +5 -2
  786. package/build/modern/components/rating/primitives.d.ts +7 -0
  787. package/build/modern/components/rating/primitives.js +4 -1
  788. package/build/modern/components/rating/rating.js +8 -4
  789. package/build/modern/components/select/index.d.ts +17 -3
  790. package/build/modern/components/select/index.js +16 -9
  791. package/build/modern/components/select/option-group.js +5 -2
  792. package/build/modern/components/select/option.d.ts +2 -0
  793. package/build/modern/components/select/option.js +14 -0
  794. package/build/modern/components/select/option.js.map +1 -0
  795. package/build/modern/components/select/parts.js +5 -2
  796. package/build/modern/components/select/primitives.d.ts +16 -1
  797. package/build/modern/components/select/primitives.js +4 -1
  798. package/build/modern/components/select/select.d.ts +0 -3
  799. package/build/modern/components/select/select.js +10 -7
  800. package/build/modern/components/show/index.d.ts +2 -0
  801. package/build/modern/components/show/index.js +8 -0
  802. package/build/modern/components/show/index.js.map +1 -0
  803. package/build/modern/components/show/show.d.ts +2 -0
  804. package/build/modern/components/show/show.js +7 -0
  805. package/build/modern/components/show/show.js.map +1 -0
  806. package/build/modern/components/spinner/index.d.ts +2 -0
  807. package/build/modern/components/spinner/index.js +8 -0
  808. package/build/modern/components/spinner/index.js.map +1 -0
  809. package/build/modern/components/spinner/spinner.d.ts +2 -0
  810. package/build/modern/components/spinner/spinner.js +7 -0
  811. package/build/modern/components/spinner/spinner.js.map +1 -0
  812. package/build/modern/components/switch/index.d.ts +5 -1
  813. package/build/modern/components/switch/index.js +7 -4
  814. package/build/modern/components/switch/parts.js +5 -2
  815. package/build/modern/components/switch/primitives.d.ts +5 -0
  816. package/build/modern/components/switch/primitives.js +4 -1
  817. package/build/modern/components/switch/switch.d.ts +0 -1
  818. package/build/modern/components/switch/switch.js +6 -3
  819. package/build/modern/components/table/index.d.ts +11 -0
  820. package/build/modern/components/table/index.js +8 -4
  821. package/build/modern/components/table/parts.js +5 -2
  822. package/build/modern/components/table/primitives.d.ts +10 -0
  823. package/build/modern/components/table/primitives.js +4 -1
  824. package/build/modern/components/table/table.d.ts +1 -0
  825. package/build/modern/components/table/table.js +7 -3
  826. package/build/modern/components/tabs/index.d.ts +5 -0
  827. package/build/modern/components/tabs/index.js +6 -3
  828. package/build/modern/components/tabs/parts.js +5 -2
  829. package/build/modern/components/tabs/primitives.d.ts +5 -0
  830. package/build/modern/components/tabs/primitives.js +4 -1
  831. package/build/modern/components/tabs/tabs.js +6 -3
  832. package/build/modern/components/tag/index.d.ts +4 -0
  833. package/build/modern/components/tag/index.js +17 -0
  834. package/build/modern/components/tag/index.js.map +1 -0
  835. package/build/modern/components/tag/tag.d.ts +4 -0
  836. package/build/modern/components/tag/tag.js +17 -0
  837. package/build/modern/components/tag/tag.js.map +1 -0
  838. package/build/modern/components/text/index.d.ts +4 -0
  839. package/build/modern/components/text/index.js +8 -0
  840. package/build/modern/components/text/index.js.map +1 -0
  841. package/build/modern/components/text/text.d.ts +4 -0
  842. package/build/modern/components/text/text.js +7 -0
  843. package/build/modern/components/text/text.js.map +1 -0
  844. package/build/modern/components/theme/index.d.ts +2 -0
  845. package/build/modern/components/theme/index.js +11 -0
  846. package/build/modern/components/theme/index.js.map +1 -0
  847. package/build/modern/components/theme/theme.d.ts +2 -0
  848. package/build/modern/components/theme/theme.js +10 -0
  849. package/build/modern/components/theme/theme.js.map +1 -0
  850. package/build/modern/components/toggle/index.d.ts +2 -0
  851. package/build/modern/components/toggle/index.js +5 -2
  852. package/build/modern/components/toggle/parts.js +5 -2
  853. package/build/modern/components/toggle/primitives.d.ts +2 -0
  854. package/build/modern/components/toggle/primitives.js +4 -1
  855. package/build/modern/components/tooltip/index.d.ts +15 -0
  856. package/build/modern/components/tooltip/index.js +29 -0
  857. package/build/modern/components/tooltip/index.js.map +1 -0
  858. package/build/modern/components/tooltip/parts.d.ts +1 -0
  859. package/build/modern/components/tooltip/parts.js +11 -0
  860. package/build/modern/components/tooltip/parts.js.map +1 -0
  861. package/build/modern/components/tooltip/primitives.d.ts +12 -0
  862. package/build/modern/components/tooltip/primitives.js +20 -0
  863. package/build/modern/components/tooltip/primitives.js.map +1 -0
  864. package/build/modern/components/tooltip/tooltip.d.ts +2 -0
  865. package/build/modern/components/tooltip/tooltip.js +12 -0
  866. package/build/modern/components/tooltip/tooltip.js.map +1 -0
  867. package/build/modern/config/index.js +1 -1
  868. package/build/modern/context/confirm-modal.js +22 -13
  869. package/build/modern/context/field.js +7 -1
  870. package/build/modern/context/field.js.map +1 -1
  871. package/build/modern/context/prompt-modal.js +30 -18
  872. package/build/modern/hooks/useRootColors.js +1 -1
  873. package/build/modern/index.d.ts +224 -17
  874. package/build/modern/index.js +312 -209
  875. package/build/modern/index.js.map +1 -1
  876. package/build/modern/system/factory.d.ts +1 -0
  877. package/build/modern/system/factory.js +9 -0
  878. package/build/modern/system/factory.js.map +1 -0
  879. package/build/modern/system/index.d.ts +12 -0
  880. package/build/modern/system/index.js +11 -0
  881. package/build/modern/system/index.js.map +1 -0
  882. package/build/modern/system/primitive-factory.d.ts +1 -0
  883. package/build/modern/system/primitive-factory.js +7 -0
  884. package/build/modern/system/primitive-factory.js.map +1 -0
  885. package/build/modern/system/types.d.ts +10 -0
  886. package/build/modern/system/types.js +2 -0
  887. package/build/modern/system/types.js.map +1 -0
  888. package/build/modern/types.d.ts +1 -0
  889. package/package.json +23 -9
  890. package/src/components/accordion/item-group.tsx +1 -1
  891. package/src/components/accordion/primitives.tsx +45 -53
  892. package/src/components/admonition/admonition.tsx +3 -6
  893. package/src/components/admonition/primitives.tsx +64 -43
  894. package/src/components/avatar/avatar.tsx +3 -5
  895. package/src/components/avatar/primitives.tsx +23 -29
  896. package/src/components/button/button.tsx +14 -24
  897. package/src/components/button/primitives.tsx +15 -0
  898. package/src/components/checkbox/checkbox-icon.tsx +1 -1
  899. package/src/components/checkbox/checkbox.tsx +2 -2
  900. package/src/components/checkbox/primitives.tsx +59 -54
  901. package/src/components/circular-progress/circular-progress.tsx +39 -0
  902. package/src/components/circular-progress/index.ts +2 -0
  903. package/src/components/circular-progress/primitives.ts +88 -0
  904. package/src/components/combobox/combobox.tsx +20 -7
  905. package/src/components/combobox/primitives.tsx +106 -134
  906. package/src/components/cta-dialog/provider.tsx +8 -3
  907. package/src/components/date-picker/calendar.tsx +21 -4
  908. package/src/components/date-picker/content.tsx +6 -7
  909. package/src/components/date-picker/date-picker.tsx +9 -6
  910. package/src/components/date-picker/day-view.tsx +1 -1
  911. package/src/components/date-picker/index.ts +10 -0
  912. package/src/components/date-picker/input.tsx +3 -3
  913. package/src/components/date-picker/month-view.tsx +3 -5
  914. package/src/components/date-picker/primitives.tsx +117 -164
  915. package/src/components/date-picker/range-input.tsx +9 -24
  916. package/src/components/date-picker/trigger.tsx +2 -2
  917. package/src/components/date-picker/view-control-group.tsx +4 -4
  918. package/src/components/date-picker/year-view.tsx +3 -5
  919. package/src/components/deprecated/Legend.tsx +1 -1
  920. package/src/components/deprecated/NavMenuLink.tsx +1 -1
  921. package/src/components/deprecated/NavMenuList.tsx +1 -1
  922. package/src/components/deprecated/NavMenuTrigger.tsx +5 -6
  923. package/src/components/deprecated/Notification.tsx +1 -1
  924. package/src/components/dialog/close-icon-trigger.tsx +2 -3
  925. package/src/components/dialog/dialog.tsx +11 -5
  926. package/src/components/dialog/index.ts +4 -0
  927. package/src/components/dialog/primitives.tsx +42 -72
  928. package/src/components/feature-flag/feature-flag.tsx +21 -0
  929. package/src/components/feature-flag/index.ts +1 -0
  930. package/src/components/field/error-text.tsx +19 -0
  931. package/src/components/field/field.tsx +13 -11
  932. package/src/components/field/helper-text.tsx +20 -0
  933. package/src/components/field/index.ts +3 -1
  934. package/src/components/field/input.tsx +47 -0
  935. package/src/components/field/primitives.tsx +90 -157
  936. package/src/components/fieldset/fieldset.tsx +2 -3
  937. package/src/components/fieldset/primitives.tsx +44 -63
  938. package/src/components/file-upload/file-status.tsx +278 -0
  939. package/src/components/file-upload/file-uploader.tsx +72 -0
  940. package/src/components/file-upload/index.ts +2 -0
  941. package/src/components/for/index.ts +1 -0
  942. package/src/components/icon-button/button.tsx +24 -0
  943. package/src/components/icon-button/index.tsx +2 -0
  944. package/src/components/icon-button/primitives.ts +21 -0
  945. package/src/components/menu/index.ts +2 -0
  946. package/src/components/menu/menu.tsx +144 -0
  947. package/src/components/menu/primitives.ts +93 -0
  948. package/src/components/notifications/center.tsx +1 -1
  949. package/src/components/notifications/close-trigger.tsx +2 -2
  950. package/src/components/notifications/match-icon.tsx +2 -2
  951. package/src/components/notifications/primitives.tsx +47 -54
  952. package/src/components/portal/index.ts +1 -0
  953. package/src/components/portal/portal.tsx +28 -0
  954. package/src/components/progress/index.ts +2 -0
  955. package/src/components/progress/primitives.ts +43 -0
  956. package/src/components/progress/progress-bar.tsx +80 -0
  957. package/src/components/radio/primitives.tsx +83 -101
  958. package/src/components/rating/primitives.tsx +57 -80
  959. package/src/components/rating/rating.tsx +3 -6
  960. package/src/components/select/index.ts +1 -0
  961. package/src/components/select/option-group.tsx +8 -10
  962. package/src/components/select/option.tsx +42 -0
  963. package/src/components/select/primitives.tsx +125 -156
  964. package/src/components/select/select.tsx +13 -33
  965. package/src/components/show/index.ts +1 -0
  966. package/src/components/spinner/index.ts +1 -0
  967. package/src/components/switch/primitives.tsx +45 -55
  968. package/src/components/switch/switch.tsx +2 -5
  969. package/src/components/table/primitives.tsx +101 -146
  970. package/src/components/table/table.tsx +3 -5
  971. package/src/components/tabs/primitives.tsx +43 -56
  972. package/src/components/tabs/tabs.tsx +3 -3
  973. package/src/components/tag/index.ts +1 -0
  974. package/src/components/tag/tag.tsx +108 -0
  975. package/src/components/text/index.ts +1 -0
  976. package/src/components/text/text.tsx +68 -0
  977. package/src/components/theme/index.ts +1 -0
  978. package/src/components/theme/theme.tsx +34 -0
  979. package/src/components/toggle/primitives.tsx +19 -15
  980. package/src/components/tooltip/index.ts +3 -0
  981. package/src/components/tooltip/parts.ts +59 -0
  982. package/src/components/tooltip/primitives.ts +71 -0
  983. package/src/components/tooltip/tooltip.tsx +46 -0
  984. package/src/context/confirm-modal.tsx +53 -31
  985. package/src/context/prompt-modal.tsx +41 -39
  986. package/src/hooks/useRootColors.ts +2 -2
  987. package/src/index.ts +16 -20
  988. package/src/system/factory.ts +37 -0
  989. package/src/system/index.ts +47 -0
  990. package/src/system/primitive-factory.tsx +151 -0
  991. package/src/system/types.ts +58 -0
  992. package/src/types.ts +21 -0
  993. package/build/legacy/aria-helpers/nav-menu.aria.cjs +0 -36
  994. package/build/legacy/aria-helpers/nav-menu.aria.cjs.map +0 -1
  995. package/build/legacy/aria-helpers/nav-menu.aria.d.cts +0 -2
  996. package/build/legacy/aria-helpers/trap-focus.aria.cjs +0 -54
  997. package/build/legacy/aria-helpers/trap-focus.aria.cjs.map +0 -1
  998. package/build/legacy/aria-helpers/trap-focus.aria.d.cts +0 -1
  999. package/build/legacy/components/CircularProgress.cjs +0 -198
  1000. package/build/legacy/components/CircularProgress.cjs.map +0 -1
  1001. package/build/legacy/components/CircularProgress.d.cts +0 -2
  1002. package/build/legacy/components/FeatureFlag.cjs +0 -65
  1003. package/build/legacy/components/FeatureFlag.cjs.map +0 -1
  1004. package/build/legacy/components/FeatureFlag.d.cts +0 -2
  1005. package/build/legacy/components/FileStatus.cjs +0 -462
  1006. package/build/legacy/components/FileStatus.cjs.map +0 -1
  1007. package/build/legacy/components/FileStatus.d.cts +0 -6
  1008. package/build/legacy/components/FileUploader.cjs +0 -191
  1009. package/build/legacy/components/FileUploader.cjs.map +0 -1
  1010. package/build/legacy/components/FileUploader.d.cts +0 -2
  1011. package/build/legacy/components/IconButton.cjs +0 -52
  1012. package/build/legacy/components/IconButton.cjs.map +0 -1
  1013. package/build/legacy/components/IconButton.d.cts +0 -3
  1014. package/build/legacy/components/Menu.cjs +0 -86
  1015. package/build/legacy/components/Menu.cjs.map +0 -1
  1016. package/build/legacy/components/Menu.d.cts +0 -7
  1017. package/build/legacy/components/Portal.cjs +0 -35
  1018. package/build/legacy/components/Portal.cjs.map +0 -1
  1019. package/build/legacy/components/Portal.d.cts +0 -2
  1020. package/build/legacy/components/ProgressBar.cjs +0 -63
  1021. package/build/legacy/components/ProgressBar.cjs.map +0 -1
  1022. package/build/legacy/components/ProgressBar.d.cts +0 -5
  1023. package/build/legacy/components/Show.cjs +0 -41
  1024. package/build/legacy/components/Show.cjs.map +0 -1
  1025. package/build/legacy/components/Show.d.cts +0 -2
  1026. package/build/legacy/components/Spinner.cjs +0 -105
  1027. package/build/legacy/components/Spinner.cjs.map +0 -1
  1028. package/build/legacy/components/Spinner.d.cts +0 -2
  1029. package/build/legacy/components/Tag.cjs +0 -130
  1030. package/build/legacy/components/Tag.cjs.map +0 -1
  1031. package/build/legacy/components/Tag.d.cts +0 -4
  1032. package/build/legacy/components/Text.cjs +0 -59
  1033. package/build/legacy/components/Text.cjs.map +0 -1
  1034. package/build/legacy/components/Text.d.cts +0 -4
  1035. package/build/legacy/components/Tooltip.cjs +0 -55
  1036. package/build/legacy/components/Tooltip.cjs.map +0 -1
  1037. package/build/legacy/components/Tooltip.d.cts +0 -2
  1038. package/build/legacy/components/for.cjs +0 -38
  1039. package/build/legacy/components/for.cjs.map +0 -1
  1040. package/build/legacy/components/for.d.cts +0 -2
  1041. package/build/modern/aria-helpers/nav-menu.aria.d.ts +0 -2
  1042. package/build/modern/aria-helpers/nav-menu.aria.js +0 -7
  1043. package/build/modern/aria-helpers/trap-focus.aria.d.ts +0 -1
  1044. package/build/modern/aria-helpers/trap-focus.aria.js +0 -7
  1045. package/build/modern/chunk-25P3FUUT.js +0 -20
  1046. package/build/modern/chunk-25P3FUUT.js.map +0 -1
  1047. package/build/modern/chunk-25S67KZH.js +0 -44
  1048. package/build/modern/chunk-25S67KZH.js.map +0 -1
  1049. package/build/modern/chunk-2CZWHED6.js +0 -18
  1050. package/build/modern/chunk-2IYWFZTK.js +0 -15
  1051. package/build/modern/chunk-2LF3HPNA.js +0 -1
  1052. package/build/modern/chunk-3DZW23OX.js +0 -50
  1053. package/build/modern/chunk-3DZW23OX.js.map +0 -1
  1054. package/build/modern/chunk-3IT3V3YA.js +0 -41
  1055. package/build/modern/chunk-3IT3V3YA.js.map +0 -1
  1056. package/build/modern/chunk-52ZQ26IV.js +0 -23
  1057. package/build/modern/chunk-53YVHIGJ.js +0 -11
  1058. package/build/modern/chunk-53YVHIGJ.js.map +0 -1
  1059. package/build/modern/chunk-5FC7HIAR.js +0 -22
  1060. package/build/modern/chunk-5HEU3SYR.js +0 -19
  1061. package/build/modern/chunk-5HEU3SYR.js.map +0 -1
  1062. package/build/modern/chunk-5MUUKSLF.js +0 -131
  1063. package/build/modern/chunk-5MUUKSLF.js.map +0 -1
  1064. package/build/modern/chunk-6KX5P5OU.js +0 -86
  1065. package/build/modern/chunk-6KX5P5OU.js.map +0 -1
  1066. package/build/modern/chunk-6MMH3Y2U.js +0 -49
  1067. package/build/modern/chunk-6MMH3Y2U.js.map +0 -1
  1068. package/build/modern/chunk-6UVR3VGK.js +0 -31
  1069. package/build/modern/chunk-75DUDVPA.js +0 -22
  1070. package/build/modern/chunk-75DUDVPA.js.map +0 -1
  1071. package/build/modern/chunk-7I7LA2EE.js +0 -21
  1072. package/build/modern/chunk-A5UXCB4L.js +0 -117
  1073. package/build/modern/chunk-A5UXCB4L.js.map +0 -1
  1074. package/build/modern/chunk-ADZRQNW3.js +0 -46
  1075. package/build/modern/chunk-ADZRQNW3.js.map +0 -1
  1076. package/build/modern/chunk-AUI74W7J.js +0 -81
  1077. package/build/modern/chunk-AUI74W7J.js.map +0 -1
  1078. package/build/modern/chunk-BMPMMTX3.js +0 -62
  1079. package/build/modern/chunk-BMPMMTX3.js.map +0 -1
  1080. package/build/modern/chunk-CEJIKL6N.js +0 -22
  1081. package/build/modern/chunk-CEJIKL6N.js.map +0 -1
  1082. package/build/modern/chunk-CF4TCMJI.js +0 -35
  1083. package/build/modern/chunk-CF4TCMJI.js.map +0 -1
  1084. package/build/modern/chunk-CJVKAGCJ.js +0 -47
  1085. package/build/modern/chunk-CJVKAGCJ.js.map +0 -1
  1086. package/build/modern/chunk-D4BVNWAY.js +0 -146
  1087. package/build/modern/chunk-D4BVNWAY.js.map +0 -1
  1088. package/build/modern/chunk-D6PFYSIP.js +0 -20
  1089. package/build/modern/chunk-D6PFYSIP.js.map +0 -1
  1090. package/build/modern/chunk-D7QIPJQC.js +0 -67
  1091. package/build/modern/chunk-D7QIPJQC.js.map +0 -1
  1092. package/build/modern/chunk-DHKSNGQX.js +0 -156
  1093. package/build/modern/chunk-DHKSNGQX.js.map +0 -1
  1094. package/build/modern/chunk-ENJUQNVT.js +0 -60
  1095. package/build/modern/chunk-ENJUQNVT.js.map +0 -1
  1096. package/build/modern/chunk-F2MWSSK2.js +0 -48
  1097. package/build/modern/chunk-F2MWSSK2.js.map +0 -1
  1098. package/build/modern/chunk-F3XFJHGR.js +0 -42
  1099. package/build/modern/chunk-F3XFJHGR.js.map +0 -1
  1100. package/build/modern/chunk-FAQ3F72W.js +0 -24
  1101. package/build/modern/chunk-FAQ3F72W.js.map +0 -1
  1102. package/build/modern/chunk-FHNT274F.js +0 -29
  1103. package/build/modern/chunk-FHNT274F.js.map +0 -1
  1104. package/build/modern/chunk-FUTYPCHZ.js +0 -12
  1105. package/build/modern/chunk-FUTYPCHZ.js.map +0 -1
  1106. package/build/modern/chunk-GB7W3YNU.js +0 -51
  1107. package/build/modern/chunk-GB7W3YNU.js.map +0 -1
  1108. package/build/modern/chunk-GBCF6DOS.js +0 -23
  1109. package/build/modern/chunk-GC6JUHVS.js +0 -15
  1110. package/build/modern/chunk-GUAF4FXQ.js +0 -19
  1111. package/build/modern/chunk-GUAF4FXQ.js.map +0 -1
  1112. package/build/modern/chunk-GYUCW2QK.js +0 -25
  1113. package/build/modern/chunk-H2VYN32T.js +0 -22
  1114. package/build/modern/chunk-H4SH6ORP.js +0 -18
  1115. package/build/modern/chunk-H4SH6ORP.js.map +0 -1
  1116. package/build/modern/chunk-HJ7MAPDD.js +0 -86
  1117. package/build/modern/chunk-HJ7MAPDD.js.map +0 -1
  1118. package/build/modern/chunk-I4EGYD24.js +0 -21
  1119. package/build/modern/chunk-I5RGBB57.js +0 -13
  1120. package/build/modern/chunk-I5RGBB57.js.map +0 -1
  1121. package/build/modern/chunk-IL677ECW.js +0 -71
  1122. package/build/modern/chunk-IL677ECW.js.map +0 -1
  1123. package/build/modern/chunk-ILROS7ST.js +0 -33
  1124. package/build/modern/chunk-INVZVMY4.js +0 -42
  1125. package/build/modern/chunk-INVZVMY4.js.map +0 -1
  1126. package/build/modern/chunk-IUF74GEL.js +0 -17
  1127. package/build/modern/chunk-J76SGDYP.js +0 -59
  1128. package/build/modern/chunk-JQYW4IOC.js +0 -21
  1129. package/build/modern/chunk-KABRV6TB.js +0 -226
  1130. package/build/modern/chunk-KABRV6TB.js.map +0 -1
  1131. package/build/modern/chunk-KEGLWDD6.js +0 -45
  1132. package/build/modern/chunk-KEGLWDD6.js.map +0 -1
  1133. package/build/modern/chunk-KV4NRGKW.js +0 -51
  1134. package/build/modern/chunk-KV4NRGKW.js.map +0 -1
  1135. package/build/modern/chunk-L2EGF5AV.js +0 -33
  1136. package/build/modern/chunk-L2EGF5AV.js.map +0 -1
  1137. package/build/modern/chunk-L5FYGWAZ.js +0 -49
  1138. package/build/modern/chunk-L5FYGWAZ.js.map +0 -1
  1139. package/build/modern/chunk-L64HQGLQ.js +0 -47
  1140. package/build/modern/chunk-L64HQGLQ.js.map +0 -1
  1141. package/build/modern/chunk-LEBDLXJE.js +0 -37
  1142. package/build/modern/chunk-LEBDLXJE.js.map +0 -1
  1143. package/build/modern/chunk-MDXJ6MGF.js +0 -143
  1144. package/build/modern/chunk-MDXJ6MGF.js.map +0 -1
  1145. package/build/modern/chunk-MTD4JSHT.js +0 -21
  1146. package/build/modern/chunk-MZXSSTS7.js +0 -25
  1147. package/build/modern/chunk-N6XHXPBI.js +0 -27
  1148. package/build/modern/chunk-N6XHXPBI.js.map +0 -1
  1149. package/build/modern/chunk-NJ37QRAI.js +0 -33
  1150. package/build/modern/chunk-NP73HOHI.js +0 -27
  1151. package/build/modern/chunk-NP73HOHI.js.map +0 -1
  1152. package/build/modern/chunk-NQ22M7U7.js +0 -19
  1153. package/build/modern/chunk-NYEUNVKR.js +0 -22
  1154. package/build/modern/chunk-NYEUNVKR.js.map +0 -1
  1155. package/build/modern/chunk-NYVKL2IS.js +0 -38
  1156. package/build/modern/chunk-ONHP3RYL.js +0 -41
  1157. package/build/modern/chunk-ONHP3RYL.js.map +0 -1
  1158. package/build/modern/chunk-OY33UHBG.js +0 -57
  1159. package/build/modern/chunk-OY33UHBG.js.map +0 -1
  1160. package/build/modern/chunk-OY7BOKWW.js +0 -31
  1161. package/build/modern/chunk-OY7BOKWW.js.map +0 -1
  1162. package/build/modern/chunk-P7DWMM56.js +0 -210
  1163. package/build/modern/chunk-P7DWMM56.js.map +0 -1
  1164. package/build/modern/chunk-PHPXOX2Y.js +0 -40
  1165. package/build/modern/chunk-PHPXOX2Y.js.map +0 -1
  1166. package/build/modern/chunk-PRV3HAK3.js +0 -156
  1167. package/build/modern/chunk-PRV3HAK3.js.map +0 -1
  1168. package/build/modern/chunk-Q737W5KJ.js +0 -41
  1169. package/build/modern/chunk-Q737W5KJ.js.map +0 -1
  1170. package/build/modern/chunk-QCZ5VNGU.js +0 -36
  1171. package/build/modern/chunk-QCZ5VNGU.js.map +0 -1
  1172. package/build/modern/chunk-QD3WAARV.js +0 -47
  1173. package/build/modern/chunk-QNZIH2KG.js +0 -21
  1174. package/build/modern/chunk-RF4VKGOQ.js +0 -70
  1175. package/build/modern/chunk-RF4VKGOQ.js.map +0 -1
  1176. package/build/modern/chunk-RP6DNLP3.js +0 -17
  1177. package/build/modern/chunk-RP6DNLP3.js.map +0 -1
  1178. package/build/modern/chunk-RW3YEBDW.js +0 -184
  1179. package/build/modern/chunk-RW3YEBDW.js.map +0 -1
  1180. package/build/modern/chunk-RYRB5GPN.js +0 -18
  1181. package/build/modern/chunk-RYRB5GPN.js.map +0 -1
  1182. package/build/modern/chunk-SSR3CWJZ.js +0 -82
  1183. package/build/modern/chunk-SSR3CWJZ.js.map +0 -1
  1184. package/build/modern/chunk-SZOV7M64.js +0 -59
  1185. package/build/modern/chunk-SZOV7M64.js.map +0 -1
  1186. package/build/modern/chunk-TS7PAQPV.js +0 -27
  1187. package/build/modern/chunk-TS7PAQPV.js.map +0 -1
  1188. package/build/modern/chunk-TV346AYO.js +0 -64
  1189. package/build/modern/chunk-TV346AYO.js.map +0 -1
  1190. package/build/modern/chunk-U3ISYEUF.js +0 -1
  1191. package/build/modern/chunk-UCVB2VOI.js +0 -81
  1192. package/build/modern/chunk-UCVB2VOI.js.map +0 -1
  1193. package/build/modern/chunk-UGFSACHC.js +0 -39
  1194. package/build/modern/chunk-UGFSACHC.js.map +0 -1
  1195. package/build/modern/chunk-UH6XSYYD.js +0 -28
  1196. package/build/modern/chunk-UH6XSYYD.js.map +0 -1
  1197. package/build/modern/chunk-UJTE43LT.js +0 -27
  1198. package/build/modern/chunk-UJTE43LT.js.map +0 -1
  1199. package/build/modern/chunk-V6EAWUCQ.js +0 -27
  1200. package/build/modern/chunk-V6ZOASMM.js +0 -37
  1201. package/build/modern/chunk-VEAC4I3F.js +0 -17
  1202. package/build/modern/chunk-VEAC4I3F.js.map +0 -1
  1203. package/build/modern/chunk-W337WQTU.js +0 -21
  1204. package/build/modern/chunk-WEL43I6Y.js +0 -100
  1205. package/build/modern/chunk-WEL43I6Y.js.map +0 -1
  1206. package/build/modern/chunk-XJQXHSH7.js +0 -38
  1207. package/build/modern/chunk-XJQXHSH7.js.map +0 -1
  1208. package/build/modern/chunk-YOYCS3MD.js +0 -41
  1209. package/build/modern/chunk-YUVPXW6D.js +0 -58
  1210. package/build/modern/chunk-YUVPXW6D.js.map +0 -1
  1211. package/build/modern/chunk-Z2KBUTCO.js +0 -22
  1212. package/build/modern/chunk-Z2KBUTCO.js.map +0 -1
  1213. package/build/modern/chunk-ZL7AX5EM.js +0 -22
  1214. package/build/modern/chunk-ZL7AX5EM.js.map +0 -1
  1215. package/build/modern/components/CircularProgress.d.ts +0 -2
  1216. package/build/modern/components/CircularProgress.js +0 -9
  1217. package/build/modern/components/FeatureFlag.d.ts +0 -2
  1218. package/build/modern/components/FeatureFlag.js +0 -10
  1219. package/build/modern/components/FileStatus.d.ts +0 -6
  1220. package/build/modern/components/FileStatus.js +0 -25
  1221. package/build/modern/components/FileUploader.d.ts +0 -2
  1222. package/build/modern/components/FileUploader.js +0 -15
  1223. package/build/modern/components/IconButton.d.ts +0 -3
  1224. package/build/modern/components/IconButton.js +0 -7
  1225. package/build/modern/components/Menu.d.ts +0 -7
  1226. package/build/modern/components/Menu.js +0 -19
  1227. package/build/modern/components/Portal.d.ts +0 -2
  1228. package/build/modern/components/Portal.js +0 -7
  1229. package/build/modern/components/ProgressBar.d.ts +0 -5
  1230. package/build/modern/components/ProgressBar.js +0 -7
  1231. package/build/modern/components/Show.d.ts +0 -2
  1232. package/build/modern/components/Show.js +0 -7
  1233. package/build/modern/components/Spinner.d.ts +0 -2
  1234. package/build/modern/components/Spinner.js +0 -7
  1235. package/build/modern/components/Tag.d.ts +0 -4
  1236. package/build/modern/components/Tag.js +0 -11
  1237. package/build/modern/components/Text.d.ts +0 -4
  1238. package/build/modern/components/Text.js +0 -7
  1239. package/build/modern/components/Tooltip.d.ts +0 -2
  1240. package/build/modern/components/Tooltip.js +0 -7
  1241. package/build/modern/components/for.d.ts +0 -2
  1242. package/build/modern/components/for.js +0 -7
  1243. package/src/components/CircularProgress.tsx +0 -184
  1244. package/src/components/FeatureFlag.tsx +0 -21
  1245. package/src/components/FileStatus.tsx +0 -278
  1246. package/src/components/FileUploader.tsx +0 -72
  1247. package/src/components/IconButton.tsx +0 -38
  1248. package/src/components/Menu.tsx +0 -165
  1249. package/src/components/Portal.tsx +0 -31
  1250. package/src/components/ProgressBar.tsx +0 -88
  1251. package/src/components/Tag.tsx +0 -108
  1252. package/src/components/Text.tsx +0 -71
  1253. package/src/components/Tooltip.tsx +0 -61
  1254. /package/build/modern/{aria-helpers/nav-menu.aria.js.map → chunk-34U4QQ3I.js.map} +0 -0
  1255. /package/build/modern/{aria-helpers/trap-focus.aria.js.map → chunk-3RPBRD5W.js.map} +0 -0
  1256. /package/build/modern/{chunk-GC6JUHVS.js.map → chunk-4LBGIGNJ.js.map} +0 -0
  1257. /package/build/modern/{chunk-QNZIH2KG.js.map → chunk-4NW7Q2VS.js.map} +0 -0
  1258. /package/build/modern/{chunk-I4EGYD24.js.map → chunk-56YCKMC2.js.map} +0 -0
  1259. /package/build/modern/{chunk-2LF3HPNA.js.map → chunk-5IMS6G4G.js.map} +0 -0
  1260. /package/build/modern/{chunk-GYUCW2QK.js.map → chunk-6LH6MOXD.js.map} +0 -0
  1261. /package/build/modern/{chunk-QD3WAARV.js.map → chunk-6QWS7HII.js.map} +0 -0
  1262. /package/build/modern/{chunk-2IYWFZTK.js.map → chunk-AAWEAXIA.js.map} +0 -0
  1263. /package/build/modern/{chunk-U3ISYEUF.js.map → chunk-B4GBNIU7.js.map} +0 -0
  1264. /package/build/modern/{chunk-V6EAWUCQ.js.map → chunk-BFV463NP.js.map} +0 -0
  1265. /package/build/modern/{chunk-W337WQTU.js.map → chunk-CKLLERV7.js.map} +0 -0
  1266. /package/build/modern/{chunk-52ZQ26IV.js.map → chunk-DUCW5X4Y.js.map} +0 -0
  1267. /package/build/modern/{chunk-5FC7HIAR.js.map → chunk-DUFKXBQT.js.map} +0 -0
  1268. /package/build/modern/{chunk-ILROS7ST.js.map → chunk-E2AW2N7Q.js.map} +0 -0
  1269. /package/build/modern/{chunk-2CZWHED6.js.map → chunk-EPIO6H3A.js.map} +0 -0
  1270. /package/build/modern/{components/CircularProgress.js.map → chunk-EZTDGHEX.js.map} +0 -0
  1271. /package/build/modern/{chunk-7I7LA2EE.js.map → chunk-GPGFQNJ6.js.map} +0 -0
  1272. /package/build/modern/{chunk-YOYCS3MD.js.map → chunk-GZXW3JIW.js.map} +0 -0
  1273. /package/build/modern/{chunk-NJ37QRAI.js.map → chunk-HBS3B3SE.js.map} +0 -0
  1274. /package/build/modern/{components/FeatureFlag.js.map → chunk-JIXUOTH4.js.map} +0 -0
  1275. /package/build/modern/{chunk-MZXSSTS7.js.map → chunk-KUR42DQQ.js.map} +0 -0
  1276. /package/build/modern/{components/FileStatus.js.map → chunk-LRHHDORZ.js.map} +0 -0
  1277. /package/build/modern/{components/FileUploader.js.map → chunk-NZP3XQNQ.js.map} +0 -0
  1278. /package/build/modern/{chunk-V6ZOASMM.js.map → chunk-NZZS2A53.js.map} +0 -0
  1279. /package/build/modern/{chunk-IUF74GEL.js.map → chunk-OKU736EK.js.map} +0 -0
  1280. /package/build/modern/{chunk-NYVKL2IS.js.map → chunk-OQN4HVLQ.js.map} +0 -0
  1281. /package/build/modern/{chunk-MTD4JSHT.js.map → chunk-P4GJKPNL.js.map} +0 -0
  1282. /package/build/modern/{components/IconButton.js.map → chunk-PAQ6YQ7Y.js.map} +0 -0
  1283. /package/build/modern/{chunk-H2VYN32T.js.map → chunk-Q2MJ7JRM.js.map} +0 -0
  1284. /package/build/modern/{components/Menu.js.map → chunk-Q4CS3AKY.js.map} +0 -0
  1285. /package/build/modern/{chunk-J76SGDYP.js.map → chunk-RJGEKVHZ.js.map} +0 -0
  1286. /package/build/modern/{components/Portal.js.map → chunk-RMEVOJ2E.js.map} +0 -0
  1287. /package/build/modern/{components/ProgressBar.js.map → chunk-TLRRDNS3.js.map} +0 -0
  1288. /package/build/modern/{chunk-GBCF6DOS.js.map → chunk-VB5XZZKE.js.map} +0 -0
  1289. /package/build/modern/{components/Show.js.map → chunk-VT6DJ2VM.js.map} +0 -0
  1290. /package/build/modern/{chunk-JQYW4IOC.js.map → chunk-WC75SKFH.js.map} +0 -0
  1291. /package/build/modern/{components/Spinner.js.map → chunk-WJW4FF4J.js.map} +0 -0
  1292. /package/build/modern/{chunk-6UVR3VGK.js.map → chunk-WN2WTSWG.js.map} +0 -0
  1293. /package/build/modern/{components/Tag.js.map → chunk-X5LBBTCV.js.map} +0 -0
  1294. /package/build/modern/{chunk-NQ22M7U7.js.map → chunk-X7JS25IL.js.map} +0 -0
  1295. /package/build/modern/{components/Text.js.map → chunk-XDMGFB6Q.js.map} +0 -0
  1296. /package/build/modern/components/{Tooltip.js.map → button/primitives.js.map} +0 -0
  1297. /package/build/modern/components/{for.js.map → circular-progress/circular-progress.js.map} +0 -0
  1298. /package/src/{aria-helpers → components/deprecated/aria-helpers}/nav-menu.aria.ts +0 -0
  1299. /package/src/{aria-helpers → components/deprecated/aria-helpers}/trap-focus.aria.ts +0 -0
  1300. /package/src/components/{for.tsx → for/for.tsx} +0 -0
  1301. /package/src/components/{Show.tsx → show/show.tsx} +0 -0
  1302. /package/src/components/{Spinner.tsx → spinner/spinner.tsx} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/accordion/item-group.tsx","../../../../src/utils/index.ts","../../../../src/components/Show.tsx","../../../../src/components/accordion/primitives.tsx","../../../../src/components/accordion/parts.ts","../../../../src/context/cerberus.tsx","../../../../src/components/accordion/item-indicator.tsx"],"sourcesContent":["import type {\n AccordionItemProps,\n AccordionRootProps,\n} from '@ark-ui/react/accordion'\nimport { type AccordionVariantProps } from 'styled-system/recipes'\nimport { splitProps } from '../../utils/index'\nimport { Show } from '../Show'\nimport { AccordionParts } from './parts'\nimport { AccordionChevronItemIndicator } from './item-indicator'\n\n/**\n * This module contains an abstraction of the AccordionItem components.\n * @module\n */\n\nexport function Accordion(props: AccordionRootProps & AccordionVariantProps) {\n return <AccordionParts.Root {...props} />\n}\n\nexport interface AccordionItemGroupProps\n extends AccordionItemProps,\n AccordionVariantProps {\n /**\n * The heading of the accordion item to open and close the content.\n */\n heading: string\n /**\n * The position of the arrow indicator.\n */\n indicatorPosition?: 'start' | 'end'\n}\n\n/**\n * The AccordionItemGroup component is an abstraction of the Accordion primitive\n * components which renders an accordion item with a heading and an indicator.\n *\n * It is a wrapper around the `AccordionParts.Item`, `AccordionParts.\n * ItemTrigger`, `AccordionParts.ItemIndicator`, and `AccordionParts.ItemContent` components.\n *\n * @description [Cerberus docs](https://cerberus.digitalu.design/react/accordion)\n * @description [Ark docs](https://ark-ui.com/react/docs/components/accordion)\n */\nexport function AccordionItemGroup(props: AccordionItemGroupProps) {\n const [groupProps, itemProps] = splitProps(props, [\n 'heading',\n 'children',\n 'indicatorPosition',\n ])\n const indicatorPosition = groupProps.indicatorPosition ?? 'end'\n\n return (\n <AccordionParts.Item {...itemProps}>\n <AccordionParts.ItemTrigger data-indicator-position={indicatorPosition}>\n <Show when={indicatorPosition === 'start'}>\n <AccordionChevronItemIndicator />\n </Show>\n\n {groupProps.heading}\n\n <Show when={indicatorPosition === 'end'}>\n <AccordionChevronItemIndicator />\n </Show>\n </AccordionParts.ItemTrigger>\n\n <AccordionParts.ItemContent>\n {groupProps.children}\n </AccordionParts.ItemContent>\n </AccordionParts.Item>\n )\n}\n","/**\n * This module contains utility functions that are used across your app.\n * @module Utils\n */\n\n/**\n * Formats the count of notifications to be displayed in the notification badge.\n * @param count - The number of notifications.\n * @returns The formatted count of notifications.\n * @example\n * ```tsx\n * const count = formatNotifyCount(100)\n * console.log(count) // '99+'\n * ```\n */\nexport function formatNotifyCount(count: number): string {\n if (count > 99) return '99+'\n return count.toString()\n}\n\n/**\n * Splits the properties of an object into multiple groups based on lists of keys.\n * @param props - The object to split.\n * @param keyGroups - The lists of keys to include in each group.\n * @returns An array of objects: each containing the properties specified in the corresponding key group, and the last object containing the remaining keys.\n */\nexport function splitProps<T extends object>(\n props: T,\n ...keyGroups: (keyof T)[][]\n): { [K in keyof T]?: T[K] }[] {\n const result = keyGroups.map(() => ({}) as { [K in keyof T]?: T[K] })\n const rest = {} as { [K in keyof T]?: T[K] }\n\n for (const key in props) {\n let assigned = false\n for (let i = 0; i < keyGroups.length; i++) {\n if (keyGroups[i].includes(key as keyof T)) {\n result[i][key as keyof T] = props[key]\n assigned = true\n break\n }\n }\n if (!assigned) {\n rest[key as keyof T] = props[key]\n }\n }\n\n return [...result, rest]\n}\n\nexport * from './localStorage'\n","import { type PropsWithChildren, type ReactNode } from 'react'\n\n/**\n * This module contains the Show component.\n * @module\n */\n\nexport interface ShowProps<T> {\n /**\n * The condition to render memoized children or the fallback content.\n */\n when: T | boolean | null | undefined\n /**\n * The children to render when the condition is false.\n */\n fallback?: ReactNode\n}\n\n/**\n * Conditionally render a memoized version of the children or optional fallback\n * content.\n * @see https://cerberus.digitalu.design/react/show\n * @example\n * ```tsx\n * <Show when={isLoggedIn} fallback={<Navigate to=\"/login\" />}>\n * <Dashboard />\n * </Show>\n */\nexport function Show<T>(props: PropsWithChildren<ShowProps<T>>) {\n const { when, children, fallback } = props\n\n if (when) {\n return <>{children}</>\n }\n\n if (fallback) {\n return <>{fallback}</>\n }\n\n return null\n}\n","import {\n Accordion,\n type AccordionItemContentProps,\n type AccordionItemIndicatorProps,\n type AccordionItemProps,\n type AccordionItemTriggerProps,\n type AccordionRootProps,\n} from '@ark-ui/react/accordion'\nimport { cx } from 'styled-system/css'\nimport { accordion, type AccordionVariantProps } from 'styled-system/recipes'\n\n/**\n * This module contains the primitives of the Accordion component.\n * @module 'accordion/primitives'\n */\n\n/**\n * The primitive root component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Root` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionRoot(\n props: AccordionRootProps & AccordionVariantProps,\n) {\n const { size, ...rootProps } = props\n const styles = accordion({ size })\n return (\n <Accordion.Root\n {...props}\n className={cx(styles.root, rootProps.className)}\n data-size={size}\n />\n )\n}\n\n/**\n * The primitive item component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Item` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItem(\n props: AccordionItemProps & AccordionVariantProps,\n) {\n const styles = accordion()\n return (\n <Accordion.Item {...props} className={cx(styles.item, props.className)} />\n )\n}\n\n/**\n * The primitive trigger component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemTrigger` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemTrigger(props: AccordionItemTriggerProps) {\n const styles = accordion()\n return (\n <Accordion.ItemTrigger\n {...props}\n className={cx(styles.itemTrigger, props.className)}\n />\n )\n}\n\n/**\n * The primitive item indicator component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemIndicator` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemIndicator(props: AccordionItemIndicatorProps) {\n const styles = accordion()\n return (\n <Accordion.ItemIndicator\n {...props}\n className={cx(styles.itemIndicator, props.className)}\n />\n )\n}\n\n/**\n * The primitive content component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Content` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemContent(props: AccordionItemContentProps) {\n const styles = accordion()\n return (\n <Accordion.ItemContent\n {...props}\n className={cx(styles.itemContent, props.className)}\n />\n )\n}\n","import type { ElementType } from 'react'\nimport {\n AccordionItem,\n AccordionItemContent,\n AccordionItemIndicator,\n AccordionItemTrigger,\n AccordionRoot,\n} from './primitives'\n\n/**\n * This module contains the parts of the Accordion component.\n * @module 'accordion/parts'\n */\n\ninterface AccordionPartsValue {\n /**\n * The context provider of the accordion.\n */\n Root: ElementType\n /**\n * The item of the accordion.\n */\n Item: ElementType\n /**\n * The trigger of the accordion item.\n */\n ItemTrigger: ElementType\n /**\n * The content of the accordion item.\n */\n ItemContent: ElementType\n /**\n * The indicator of the accordion item.\n */\n ItemIndicator: ElementType\n}\n\n/**\n * An Object containing the parts of the Accordion component. For users that\n * prefer Object component syntax.\n *\n * @remarks\n *\n * When using object component syntax, you import the AccordionParts object and\n * the entire family of components vs. only what you use.\n */\nexport const AccordionParts: AccordionPartsValue = {\n Root: AccordionRoot,\n Item: AccordionItem,\n ItemTrigger: AccordionItemTrigger,\n ItemContent: AccordionItemContent,\n ItemIndicator: AccordionItemIndicator,\n}\n","'use client'\n\nimport { createContext, useContext, type PropsWithChildren } from 'react'\nimport type { SystemConfig } from '../config'\n\n/**\n * This module contains the Cerberus configuration context and helpers.\n * @module context/cerberus\n */\n\ntype CerberusContextValue = SystemConfig\n\nconst CerberusContext = createContext<CerberusContextValue | null>(null)\n\ninterface CerberusProviderProps {\n config: SystemConfig\n}\n\n/**\n * Cerberus configuration provider.\n * @param props.config The Cerberus configuration created with\n * `makeSystemConfig` helper.\n */\nexport function CerberusProvider(\n props: PropsWithChildren<CerberusProviderProps>,\n) {\n return (\n <CerberusContext.Provider value={props.config}>\n {props.children}\n </CerberusContext.Provider>\n )\n}\n\n/**\n * Returns the Cerberus configuration context.\n * @returns The Cerberus configuration context.\n */\nexport function useCerberusContext() {\n const context = useContext(CerberusContext)\n if (!context) {\n throw new Error('useCerberus must be used within a CerberusProvider')\n }\n return context\n}\n","'use client'\n\nimport { type AccordionItemIndicatorProps } from '@ark-ui/react/accordion'\nimport { type AccordionVariantProps } from 'styled-system/recipes'\nimport { useCerberusContext } from '../../context/cerberus'\nimport { AccordionParts } from './parts'\n\n/**\n * This module contains the internal AccordionItemIndicator component.\n * @module 'accordion/item-indicator'\n */\n\nexport function AccordionChevronItemIndicator(\n props: AccordionItemIndicatorProps & AccordionVariantProps,\n) {\n const { size, ...indicatorProps } = props\n const iconSize = size === 'sm' ? 16 : '24'\n\n const { icons } = useCerberusContext()\n const { accordionIndicator: ChevronDown } = icons\n\n return (\n <AccordionParts.ItemIndicator {...indicatorProps}>\n <ChevronDown size={iconSize} />\n </AccordionParts.ItemIndicator>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA,mBAAAA;AAAA,EAAA;AAAA;AAAA;;;AC0BO,SAAS,WACd,UACG,WAC0B;AAC7B,QAAM,SAAS,UAAU,IAAI,OAAO,CAAC,EAA+B;AACpE,QAAM,OAAO,CAAC;AAEd,aAAW,OAAO,OAAO;AACvB,QAAI,WAAW;AACf,aAAS,IAAI,GAAG,IAAI,UAAU,QAAQ,KAAK;AACzC,UAAI,UAAU,CAAC,EAAE,SAAS,GAAc,GAAG;AACzC,eAAO,CAAC,EAAE,GAAc,IAAI,MAAM,GAAG;AACrC,mBAAW;AACX;AAAA,MACF;AAAA,IACF;AACA,QAAI,CAAC,UAAU;AACb,WAAK,GAAc,IAAI,MAAM,GAAG;AAAA,IAClC;AAAA,EACF;AAEA,SAAO,CAAC,GAAG,QAAQ,IAAI;AACzB;;;AChBW;AAJJ,SAAS,KAAQ,OAAwC;AAC9D,QAAM,EAAE,MAAM,UAAU,SAAS,IAAI;AAErC,MAAI,MAAM;AACR,WAAO,2EAAG,UAAS;AAAA,EACrB;AAEA,MAAI,UAAU;AACZ,WAAO,2EAAG,oBAAS;AAAA,EACrB;AAEA,SAAO;AACT;;;ACxCA,uBAOO;AACP,iBAAmB;AACnB,qBAAsD;AAmBlD,IAAAC,sBAAA;AANG,SAAS,cACd,OACA;AACA,QAAM,EAAE,MAAM,GAAG,UAAU,IAAI;AAC/B,QAAM,aAAS,0BAAU,EAAE,KAAK,CAAC;AACjC,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,MAAM,UAAU,SAAS;AAAA,MAC9C,aAAW;AAAA;AAAA,EACb;AAEJ;AAQO,SAAS,cACd,OACA;AACA,QAAM,aAAS,0BAAU;AACzB,SACE,6CAAC,2BAAU,MAAV,EAAgB,GAAG,OAAO,eAAW,eAAG,OAAO,MAAM,MAAM,SAAS,GAAG;AAE5E;AAQO,SAAS,qBAAqB,OAAkC;AACrE,QAAM,aAAS,0BAAU;AACzB,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,aAAa,MAAM,SAAS;AAAA;AAAA,EACnD;AAEJ;AAQO,SAAS,uBAAuB,OAAoC;AACzE,QAAM,aAAS,0BAAU;AACzB,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,eAAe,MAAM,SAAS;AAAA;AAAA,EACrD;AAEJ;AAQO,SAAS,qBAAqB,OAAkC;AACrE,QAAM,aAAS,0BAAU;AACzB,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,aAAa,MAAM,SAAS;AAAA;AAAA,EACnD;AAEJ;;;ACnDO,IAAM,iBAAsC;AAAA,EACjD,MAAM;AAAA,EACN,MAAM;AAAA,EACN,aAAa;AAAA,EACb,aAAa;AAAA,EACb,eAAe;AACjB;;;AClDA,mBAAkE;AAyB9D,IAAAC,sBAAA;AAfJ,IAAM,sBAAkB,4BAA2C,IAAI;AAyBhE,SAAS,qBAAqB;AACnC,QAAM,cAAU,yBAAW,eAAe;AAC1C,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,oDAAoD;AAAA,EACtE;AACA,SAAO;AACT;;;ACpBM,IAAAC,sBAAA;AAXC,SAAS,8BACd,OACA;AACA,QAAM,EAAE,MAAM,GAAG,eAAe,IAAI;AACpC,QAAM,WAAW,SAAS,OAAO,KAAK;AAEtC,QAAM,EAAE,MAAM,IAAI,mBAAmB;AACrC,QAAM,EAAE,oBAAoB,YAAY,IAAI;AAE5C,SACE,6CAAC,eAAe,eAAf,EAA8B,GAAG,gBAChC,uDAAC,eAAY,MAAM,UAAU,GAC/B;AAEJ;;;ANVS,IAAAC,sBAAA;AADF,SAASC,WAAU,OAAmD;AAC3E,SAAO,6CAAC,eAAe,MAAf,EAAqB,GAAG,OAAO;AACzC;AAyBO,SAAS,mBAAmB,OAAgC;AACjE,QAAM,CAAC,YAAY,SAAS,IAAI,WAAW,OAAO;AAAA,IAChD;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AACD,QAAM,oBAAoB,WAAW,qBAAqB;AAE1D,SACE,8CAAC,eAAe,MAAf,EAAqB,GAAG,WACvB;AAAA,kDAAC,eAAe,aAAf,EAA2B,2BAAyB,mBACnD;AAAA,mDAAC,QAAK,MAAM,sBAAsB,SAChC,uDAAC,iCAA8B,GACjC;AAAA,MAEC,WAAW;AAAA,MAEZ,6CAAC,QAAK,MAAM,sBAAsB,OAChC,uDAAC,iCAA8B,GACjC;AAAA,OACF;AAAA,IAEA,6CAAC,eAAe,aAAf,EACE,qBAAW,UACd;AAAA,KACF;AAEJ;","names":["Accordion","import_jsx_runtime","import_jsx_runtime","import_jsx_runtime","import_jsx_runtime","Accordion"]}
1
+ {"version":3,"sources":["../../../../src/components/accordion/item-group.tsx","../../../../src/utils/index.ts","../../../../src/components/show/show.tsx","../../../../src/components/accordion/primitives.tsx","../../../../src/system/primitive-factory.tsx","../../../../src/system/index.ts","../../../../src/components/accordion/parts.ts","../../../../src/context/cerberus.tsx","../../../../src/components/accordion/item-indicator.tsx"],"sourcesContent":["import type {\n AccordionItemProps,\n AccordionRootProps,\n} from '@ark-ui/react/accordion'\nimport { type AccordionVariantProps } from 'styled-system/recipes'\nimport { splitProps } from '../../utils/index'\nimport { Show } from '../show/index'\nimport { AccordionParts } from './parts'\nimport { AccordionChevronItemIndicator } from './item-indicator'\n\n/**\n * This module contains an abstraction of the AccordionItem components.\n * @module\n */\n\nexport function Accordion(props: AccordionRootProps & AccordionVariantProps) {\n return <AccordionParts.Root {...props} />\n}\n\nexport interface AccordionItemGroupProps\n extends AccordionItemProps,\n AccordionVariantProps {\n /**\n * The heading of the accordion item to open and close the content.\n */\n heading: string\n /**\n * The position of the arrow indicator.\n */\n indicatorPosition?: 'start' | 'end'\n}\n\n/**\n * The AccordionItemGroup component is an abstraction of the Accordion primitive\n * components which renders an accordion item with a heading and an indicator.\n *\n * It is a wrapper around the `AccordionParts.Item`, `AccordionParts.\n * ItemTrigger`, `AccordionParts.ItemIndicator`, and `AccordionParts.ItemContent` components.\n *\n * @description [Cerberus docs](https://cerberus.digitalu.design/react/accordion)\n * @description [Ark docs](https://ark-ui.com/react/docs/components/accordion)\n */\nexport function AccordionItemGroup(props: AccordionItemGroupProps) {\n const [groupProps, itemProps] = splitProps(props, [\n 'heading',\n 'children',\n 'indicatorPosition',\n ])\n const indicatorPosition = groupProps.indicatorPosition ?? 'end'\n\n return (\n <AccordionParts.Item {...itemProps}>\n <AccordionParts.ItemTrigger data-indicator-position={indicatorPosition}>\n <Show when={indicatorPosition === 'start'}>\n <AccordionChevronItemIndicator />\n </Show>\n\n {groupProps.heading}\n\n <Show when={indicatorPosition === 'end'}>\n <AccordionChevronItemIndicator />\n </Show>\n </AccordionParts.ItemTrigger>\n\n <AccordionParts.ItemContent>\n {groupProps.children}\n </AccordionParts.ItemContent>\n </AccordionParts.Item>\n )\n}\n","/**\n * This module contains utility functions that are used across your app.\n * @module Utils\n */\n\n/**\n * Formats the count of notifications to be displayed in the notification badge.\n * @param count - The number of notifications.\n * @returns The formatted count of notifications.\n * @example\n * ```tsx\n * const count = formatNotifyCount(100)\n * console.log(count) // '99+'\n * ```\n */\nexport function formatNotifyCount(count: number): string {\n if (count > 99) return '99+'\n return count.toString()\n}\n\n/**\n * Splits the properties of an object into multiple groups based on lists of keys.\n * @param props - The object to split.\n * @param keyGroups - The lists of keys to include in each group.\n * @returns An array of objects: each containing the properties specified in the corresponding key group, and the last object containing the remaining keys.\n */\nexport function splitProps<T extends object>(\n props: T,\n ...keyGroups: (keyof T)[][]\n): { [K in keyof T]?: T[K] }[] {\n const result = keyGroups.map(() => ({}) as { [K in keyof T]?: T[K] })\n const rest = {} as { [K in keyof T]?: T[K] }\n\n for (const key in props) {\n let assigned = false\n for (let i = 0; i < keyGroups.length; i++) {\n if (keyGroups[i].includes(key as keyof T)) {\n result[i][key as keyof T] = props[key]\n assigned = true\n break\n }\n }\n if (!assigned) {\n rest[key as keyof T] = props[key]\n }\n }\n\n return [...result, rest]\n}\n\nexport * from './localStorage'\n","import { type PropsWithChildren, type ReactNode } from 'react'\n\n/**\n * This module contains the Show component.\n * @module\n */\n\nexport interface ShowProps<T> {\n /**\n * The condition to render memoized children or the fallback content.\n */\n when: T | boolean | null | undefined\n /**\n * The children to render when the condition is false.\n */\n fallback?: ReactNode\n}\n\n/**\n * Conditionally render a memoized version of the children or optional fallback\n * content.\n * @see https://cerberus.digitalu.design/react/show\n * @example\n * ```tsx\n * <Show when={isLoggedIn} fallback={<Navigate to=\"/login\" />}>\n * <Dashboard />\n * </Show>\n */\nexport function Show<T>(props: PropsWithChildren<ShowProps<T>>) {\n const { when, children, fallback } = props\n\n if (when) {\n return <>{children}</>\n }\n\n if (fallback) {\n return <>{fallback}</>\n }\n\n return null\n}\n","import {\n Accordion,\n type AccordionItemContentProps as ArkAccordionItemContentProps,\n type AccordionItemIndicatorProps as ArkAccordionItemIndicatorProps,\n type AccordionItemProps as ArkAccordionItemProps,\n type AccordionItemTriggerProps as ArkAccordionItemTriggerProps,\n type AccordionRootProps as ArkAccordionRootProps,\n} from '@ark-ui/react/accordion'\nimport { accordion, type AccordionVariantProps } from 'styled-system/recipes'\nimport {\n createCerberusPrimitive,\n type CerberusPrimitiveProps,\n} from '../../system/index'\n\n/**\n * This module contains the primitives of the Accordion component.\n * @module 'accordion/primitives'\n */\n\nconst { withSlotRecipe } = createCerberusPrimitive(accordion)\n\nfunction AccordionRootEl(props: AccordionRootProps) {\n const { size, ...rootProps } = props\n return <Accordion.Root {...rootProps} data-size={size} />\n}\n\n/**\n * The primitive root component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Root` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport const AccordionRoot = withSlotRecipe(AccordionRootEl, 'root')\nexport type AccordionRootProps = CerberusPrimitiveProps<\n ArkAccordionRootProps & AccordionVariantProps\n>\n\n/**\n * The primitive item component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Item` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport const AccordionItem = withSlotRecipe<AccordionItemProps>(\n Accordion.Item,\n 'item',\n)\nexport type AccordionItemProps = CerberusPrimitiveProps<\n ArkAccordionItemProps & AccordionVariantProps\n>\n\n/**\n * The primitive trigger component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemTrigger` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport const AccordionItemTrigger = withSlotRecipe<AccordionItemTriggerProps>(\n Accordion.ItemTrigger,\n 'itemTrigger',\n)\nexport type AccordionItemTriggerProps =\n CerberusPrimitiveProps<ArkAccordionItemTriggerProps>\n\n/**\n * The primitive item indicator component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemIndicator` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport const AccordionItemIndicator =\n withSlotRecipe<AccordionItemIndicatorProps>(\n Accordion.ItemIndicator,\n 'itemIndicator',\n )\nexport type AccordionItemIndicatorProps =\n CerberusPrimitiveProps<ArkAccordionItemIndicatorProps>\n\n/**\n * The primitive content component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Content` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport const AccordionItemContent = withSlotRecipe<AccordionItemContentProps>(\n Accordion.ItemContent,\n 'itemContent',\n)\nexport type AccordionItemContentProps =\n CerberusPrimitiveProps<ArkAccordionItemContentProps>\n","import { css, cx } from 'styled-system/css'\nimport type { RecipeVariantRecord } from 'styled-system/types'\nimport {\n type ComponentType,\n type HTMLAttributes,\n type PropsWithChildren,\n} from 'react'\nimport type { WithCss } from '../types'\nimport type {\n CerberusPrimitiveEl,\n CerberusPrimitiveRecipe,\n CerberusRecipe,\n CerberusSlotRecipe,\n WithRecipeOptions,\n} from './types'\n\n/**\n * This module contains a factory for creating Cerberus primitives.\n * @module @cerberus/core/system/factory\n */\n\nexport class CerberusPrimitive {\n recipe: CerberusPrimitiveRecipe | null\n\n constructor(recipe?: CerberusPrimitiveRecipe) {\n this.recipe = recipe ?? null\n }\n\n private hasStyles(styles: string | undefined): Record<string, unknown> {\n if (styles) {\n return {\n className: styles,\n }\n }\n return {}\n }\n\n private validateComponent<P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P>,\n ) {\n if (typeof Component !== 'function' && typeof Component !== 'object') {\n throw new Error('Expected a React component as the first argument.')\n }\n }\n\n /**\n * Creates a Cerberus component with bare features and no recipe.\n * @param Component - The React component to enhance with Cerberus features.\n * @returns A new React component that applies Cerberus features to the\n * original component.\n * @example\n * ```typescript\n * const { withNoRecipe } = createCerberusPrimitive(button)\n * const Button = withNoRecipe(RawButton)\n * ```\n */\n withNoRecipe = <P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P>,\n options?: WithRecipeOptions,\n ): CerberusPrimitiveEl<P> => {\n const { defaultProps } = options || {}\n\n this.validateComponent(Component)\n\n const CerbComponent = (props: PropsWithChildren<P> & WithCss) => {\n const { css: customCss, className, ...nativeProps } = props\n const styles = this.hasStyles(cx(className, css(customCss)))\n return <Component {...defaultProps} {...styles} {...(nativeProps as P)} />\n }\n\n CerbComponent.displayName = Component.displayName || Component.name\n return CerbComponent\n }\n\n /**\n * Creates a Cerberus component with the given recipe.\n * @param Component - The React component to enhance with the recipe.\n * @param options - Options for the recipe.\n * @returns A new React component that applies the recipe to the original\n * component.\n */\n withRecipe = <P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P>,\n options?: WithRecipeOptions,\n ): CerberusPrimitiveEl<P & WithRecipeOptions['defaultProps']> => {\n const { defaultProps } = options || {}\n const recipe = this.recipe as CerberusRecipe\n\n this.validateComponent(Component)\n\n const CerbComponent = (internalProps: PropsWithChildren<P> & WithCss) => {\n const { css: customCss, className, ...nativeProps } = internalProps\n\n const [variantOptions] = recipe.splitVariantProps(nativeProps)\n const recipeStyles = recipe(variantOptions)\n\n return (\n <Component\n {...defaultProps}\n {...(nativeProps as P)}\n className={cx(className, recipeStyles, css(customCss))}\n />\n )\n }\n\n CerbComponent.displayName = Component.displayName || Component.name\n return CerbComponent\n }\n\n /**\n * Creates a Cerberus component with a slot recipe applied.\n * @param Component - The React component to enhance with Cerberus features.\n * @param recipe - The slot recipe to apply to the component.\n * @returns A new React component that applies Cerberus features and the\n * specified slot recipe to the original component.\n * @example\n * ```typescript\n * const { withSlotRecipe } = createCerberusPrimitive(field)\n * const Field = withSlotRecipe(RawField, field)\n * ```\n */\n withSlotRecipe = <P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P>,\n slot: keyof RecipeVariantRecord,\n options?: WithRecipeOptions,\n ) => {\n const { defaultProps } = options || {}\n const recipe = this.recipe as CerberusSlotRecipe<typeof slot>\n\n this.validateComponent(Component)\n\n const CerbComponent = (internalProps: PropsWithChildren<P> & WithCss) => {\n const { css: customCss, className, ...nativeProps } = internalProps\n\n const [variantOptions] = recipe.splitVariantProps(nativeProps)\n const styles = recipe(variantOptions)\n const slotStyles = styles[slot as keyof typeof styles]\n\n return (\n <Component\n {...defaultProps}\n {...(nativeProps as P)}\n className={cx(className, slotStyles, css(customCss))}\n />\n )\n }\n\n CerbComponent.displayName = Component.displayName || Component.name\n return CerbComponent\n }\n}\n","import { CerberusPrimitive } from './primitive-factory'\nimport type { CerberusFactory, CerberusPrimitiveRecipe } from './types'\nimport { cerberusFactoryProxy } from './factory'\n\n/**\n * This module contains the user interface for creating Cerberus primitives.\n * @module @cerberus/core/system/create-cerb-primitive\n */\n\n/**\n * A factory function that creates a Cerberus primitive instance with the given\n * recipe.\n * @param recipe\n * @returns An object with three methods: `withNoRecipe`, `withRecipe`, and `withSlotRecipe` that\n * apply the recipes and special Cerberus helpers like `css`.\n *\n * @example\n * ```tsx\n * const { withRecipe } = createCerberusPrimitive(myCustomRecipe);\n * export const Button = withRecipe(MyCustomButton)\n * ```\n */\nexport function createCerberusPrimitive<T extends CerberusPrimitiveRecipe>(\n recipe?: T,\n) {\n return new CerberusPrimitive(recipe)\n}\n\n/**\n * A utility function to access Cerberus components by their name.\n * @param component - The name of the Cerberus component to access.\n * @returns The Cerberus component corresponding to the provided name.\n * @throws An error if the component name is not valid.\n *\n * @example\n * ```tsx\n * import { cerberus } from '@cerberus/react'\n * const Button = cerberus('button')\n *\n * <Button css={{ color: 'blue' }} asChild>\n * <Link href=\"/some-page\">Click me</Link>\n * </Button>\n * ```\n */\nexport const cerberus = cerberusFactoryProxy as CerberusFactory\n\nexport * from './types'\n","import type { ElementType } from 'react'\nimport {\n AccordionItem,\n AccordionItemContent,\n AccordionItemIndicator,\n AccordionItemTrigger,\n AccordionRoot,\n} from './primitives'\n\n/**\n * This module contains the parts of the Accordion component.\n * @module 'accordion/parts'\n */\n\ninterface AccordionPartsValue {\n /**\n * The context provider of the accordion.\n */\n Root: ElementType\n /**\n * The item of the accordion.\n */\n Item: ElementType\n /**\n * The trigger of the accordion item.\n */\n ItemTrigger: ElementType\n /**\n * The content of the accordion item.\n */\n ItemContent: ElementType\n /**\n * The indicator of the accordion item.\n */\n ItemIndicator: ElementType\n}\n\n/**\n * An Object containing the parts of the Accordion component. For users that\n * prefer Object component syntax.\n *\n * @remarks\n *\n * When using object component syntax, you import the AccordionParts object and\n * the entire family of components vs. only what you use.\n */\nexport const AccordionParts: AccordionPartsValue = {\n Root: AccordionRoot,\n Item: AccordionItem,\n ItemTrigger: AccordionItemTrigger,\n ItemContent: AccordionItemContent,\n ItemIndicator: AccordionItemIndicator,\n}\n","'use client'\n\nimport { createContext, useContext, type PropsWithChildren } from 'react'\nimport type { SystemConfig } from '../config'\n\n/**\n * This module contains the Cerberus configuration context and helpers.\n * @module context/cerberus\n */\n\ntype CerberusContextValue = SystemConfig\n\nconst CerberusContext = createContext<CerberusContextValue | null>(null)\n\ninterface CerberusProviderProps {\n config: SystemConfig\n}\n\n/**\n * Cerberus configuration provider.\n * @param props.config The Cerberus configuration created with\n * `makeSystemConfig` helper.\n */\nexport function CerberusProvider(\n props: PropsWithChildren<CerberusProviderProps>,\n) {\n return (\n <CerberusContext.Provider value={props.config}>\n {props.children}\n </CerberusContext.Provider>\n )\n}\n\n/**\n * Returns the Cerberus configuration context.\n * @returns The Cerberus configuration context.\n */\nexport function useCerberusContext() {\n const context = useContext(CerberusContext)\n if (!context) {\n throw new Error('useCerberus must be used within a CerberusProvider')\n }\n return context\n}\n","'use client'\n\nimport { type AccordionItemIndicatorProps } from '@ark-ui/react/accordion'\nimport { type AccordionVariantProps } from 'styled-system/recipes'\nimport { useCerberusContext } from '../../context/cerberus'\nimport { AccordionParts } from './parts'\n\n/**\n * This module contains the internal AccordionItemIndicator component.\n * @module 'accordion/item-indicator'\n */\n\nexport function AccordionChevronItemIndicator(\n props: AccordionItemIndicatorProps & AccordionVariantProps,\n) {\n const { size, ...indicatorProps } = props\n const iconSize = size === 'sm' ? 16 : '24'\n\n const { icons } = useCerberusContext()\n const { accordionIndicator: ChevronDown } = icons\n\n return (\n <AccordionParts.ItemIndicator {...indicatorProps}>\n <ChevronDown size={iconSize} />\n </AccordionParts.ItemIndicator>\n )\n}\n"],"mappings":"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","names":["Accordion","import_jsx_runtime","import_jsx_runtime","import_jsx_runtime","import_jsx_runtime","import_jsx_runtime","Accordion"]}
@@ -4,6 +4,7 @@ var __defProp = Object.defineProperty;
4
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
6
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
7
8
  var __export = (target, all) => {
8
9
  for (var name in all)
9
10
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -17,6 +18,7 @@ var __copyProps = (to, from, except, desc) => {
17
18
  return to;
18
19
  };
19
20
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
21
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
20
22
 
21
23
  // src/components/accordion/item-indicator.tsx
22
24
  var item_indicator_exports = {};
@@ -39,55 +41,142 @@ function useCerberusContext() {
39
41
 
40
42
  // src/components/accordion/primitives.tsx
41
43
  var import_accordion = require("@ark-ui/react/accordion");
42
- var import_css = require("styled-system/css");
43
44
  var import_recipes = require("styled-system/recipes");
45
+
46
+ // src/system/primitive-factory.tsx
47
+ var import_css = require("styled-system/css");
44
48
  var import_jsx_runtime2 = require("react/jsx-runtime");
45
- function AccordionRoot(props) {
46
- const { size, ...rootProps } = props;
47
- const styles = (0, import_recipes.accordion)({ size });
48
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
49
- import_accordion.Accordion.Root,
50
- {
51
- ...props,
52
- className: (0, import_css.cx)(styles.root, rootProps.className),
53
- "data-size": size
54
- }
55
- );
56
- }
57
- function AccordionItem(props) {
58
- const styles = (0, import_recipes.accordion)();
59
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_accordion.Accordion.Item, { ...props, className: (0, import_css.cx)(styles.item, props.className) });
60
- }
61
- function AccordionItemTrigger(props) {
62
- const styles = (0, import_recipes.accordion)();
63
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
64
- import_accordion.Accordion.ItemTrigger,
65
- {
66
- ...props,
67
- className: (0, import_css.cx)(styles.itemTrigger, props.className)
49
+ var CerberusPrimitive = class {
50
+ constructor(recipe) {
51
+ __publicField(this, "recipe");
52
+ /**
53
+ * Creates a Cerberus component with bare features and no recipe.
54
+ * @param Component - The React component to enhance with Cerberus features.
55
+ * @returns A new React component that applies Cerberus features to the
56
+ * original component.
57
+ * @example
58
+ * ```typescript
59
+ * const { withNoRecipe } = createCerberusPrimitive(button)
60
+ * const Button = withNoRecipe(RawButton)
61
+ * ```
62
+ */
63
+ __publicField(this, "withNoRecipe", (Component, options) => {
64
+ const { defaultProps } = options || {};
65
+ this.validateComponent(Component);
66
+ const CerbComponent = (props) => {
67
+ const { css: customCss, className, ...nativeProps } = props;
68
+ const styles = this.hasStyles((0, import_css.cx)(className, (0, import_css.css)(customCss)));
69
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Component, { ...defaultProps, ...styles, ...nativeProps });
70
+ };
71
+ CerbComponent.displayName = Component.displayName || Component.name;
72
+ return CerbComponent;
73
+ });
74
+ /**
75
+ * Creates a Cerberus component with the given recipe.
76
+ * @param Component - The React component to enhance with the recipe.
77
+ * @param options - Options for the recipe.
78
+ * @returns A new React component that applies the recipe to the original
79
+ * component.
80
+ */
81
+ __publicField(this, "withRecipe", (Component, options) => {
82
+ const { defaultProps } = options || {};
83
+ const recipe = this.recipe;
84
+ this.validateComponent(Component);
85
+ const CerbComponent = (internalProps) => {
86
+ const { css: customCss, className, ...nativeProps } = internalProps;
87
+ const [variantOptions] = recipe.splitVariantProps(nativeProps);
88
+ const recipeStyles = recipe(variantOptions);
89
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
90
+ Component,
91
+ {
92
+ ...defaultProps,
93
+ ...nativeProps,
94
+ className: (0, import_css.cx)(className, recipeStyles, (0, import_css.css)(customCss))
95
+ }
96
+ );
97
+ };
98
+ CerbComponent.displayName = Component.displayName || Component.name;
99
+ return CerbComponent;
100
+ });
101
+ /**
102
+ * Creates a Cerberus component with a slot recipe applied.
103
+ * @param Component - The React component to enhance with Cerberus features.
104
+ * @param recipe - The slot recipe to apply to the component.
105
+ * @returns A new React component that applies Cerberus features and the
106
+ * specified slot recipe to the original component.
107
+ * @example
108
+ * ```typescript
109
+ * const { withSlotRecipe } = createCerberusPrimitive(field)
110
+ * const Field = withSlotRecipe(RawField, field)
111
+ * ```
112
+ */
113
+ __publicField(this, "withSlotRecipe", (Component, slot, options) => {
114
+ const { defaultProps } = options || {};
115
+ const recipe = this.recipe;
116
+ this.validateComponent(Component);
117
+ const CerbComponent = (internalProps) => {
118
+ const { css: customCss, className, ...nativeProps } = internalProps;
119
+ const [variantOptions] = recipe.splitVariantProps(nativeProps);
120
+ const styles = recipe(variantOptions);
121
+ const slotStyles = styles[slot];
122
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
123
+ Component,
124
+ {
125
+ ...defaultProps,
126
+ ...nativeProps,
127
+ className: (0, import_css.cx)(className, slotStyles, (0, import_css.css)(customCss))
128
+ }
129
+ );
130
+ };
131
+ CerbComponent.displayName = Component.displayName || Component.name;
132
+ return CerbComponent;
133
+ });
134
+ this.recipe = recipe ?? null;
135
+ }
136
+ hasStyles(styles) {
137
+ if (styles) {
138
+ return {
139
+ className: styles
140
+ };
68
141
  }
69
- );
70
- }
71
- function AccordionItemIndicator(props) {
72
- const styles = (0, import_recipes.accordion)();
73
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
74
- import_accordion.Accordion.ItemIndicator,
75
- {
76
- ...props,
77
- className: (0, import_css.cx)(styles.itemIndicator, props.className)
142
+ return {};
143
+ }
144
+ validateComponent(Component) {
145
+ if (typeof Component !== "function" && typeof Component !== "object") {
146
+ throw new Error("Expected a React component as the first argument.");
78
147
  }
79
- );
148
+ }
149
+ };
150
+
151
+ // src/system/index.ts
152
+ function createCerberusPrimitive(recipe) {
153
+ return new CerberusPrimitive(recipe);
80
154
  }
81
- function AccordionItemContent(props) {
82
- const styles = (0, import_recipes.accordion)();
83
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
84
- import_accordion.Accordion.ItemContent,
85
- {
86
- ...props,
87
- className: (0, import_css.cx)(styles.itemContent, props.className)
88
- }
89
- );
155
+
156
+ // src/components/accordion/primitives.tsx
157
+ var import_jsx_runtime3 = require("react/jsx-runtime");
158
+ var { withSlotRecipe } = createCerberusPrimitive(import_recipes.accordion);
159
+ function AccordionRootEl(props) {
160
+ const { size, ...rootProps } = props;
161
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_accordion.Accordion.Root, { ...rootProps, "data-size": size });
90
162
  }
163
+ var AccordionRoot = withSlotRecipe(AccordionRootEl, "root");
164
+ var AccordionItem = withSlotRecipe(
165
+ import_accordion.Accordion.Item,
166
+ "item"
167
+ );
168
+ var AccordionItemTrigger = withSlotRecipe(
169
+ import_accordion.Accordion.ItemTrigger,
170
+ "itemTrigger"
171
+ );
172
+ var AccordionItemIndicator = withSlotRecipe(
173
+ import_accordion.Accordion.ItemIndicator,
174
+ "itemIndicator"
175
+ );
176
+ var AccordionItemContent = withSlotRecipe(
177
+ import_accordion.Accordion.ItemContent,
178
+ "itemContent"
179
+ );
91
180
 
92
181
  // src/components/accordion/parts.ts
93
182
  var AccordionParts = {
@@ -99,13 +188,13 @@ var AccordionParts = {
99
188
  };
100
189
 
101
190
  // src/components/accordion/item-indicator.tsx
102
- var import_jsx_runtime3 = require("react/jsx-runtime");
191
+ var import_jsx_runtime4 = require("react/jsx-runtime");
103
192
  function AccordionChevronItemIndicator(props) {
104
193
  const { size, ...indicatorProps } = props;
105
194
  const iconSize = size === "sm" ? 16 : "24";
106
195
  const { icons } = useCerberusContext();
107
196
  const { accordionIndicator: ChevronDown } = icons;
108
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(AccordionParts.ItemIndicator, { ...indicatorProps, children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(ChevronDown, { size: iconSize }) });
197
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(AccordionParts.ItemIndicator, { ...indicatorProps, children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(ChevronDown, { size: iconSize }) });
109
198
  }
110
199
  // Annotate the CommonJS export names for ESM import in node:
111
200
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/accordion/item-indicator.tsx","../../../../src/context/cerberus.tsx","../../../../src/components/accordion/primitives.tsx","../../../../src/components/accordion/parts.ts"],"sourcesContent":["'use client'\n\nimport { type AccordionItemIndicatorProps } from '@ark-ui/react/accordion'\nimport { type AccordionVariantProps } from 'styled-system/recipes'\nimport { useCerberusContext } from '../../context/cerberus'\nimport { AccordionParts } from './parts'\n\n/**\n * This module contains the internal AccordionItemIndicator component.\n * @module 'accordion/item-indicator'\n */\n\nexport function AccordionChevronItemIndicator(\n props: AccordionItemIndicatorProps & AccordionVariantProps,\n) {\n const { size, ...indicatorProps } = props\n const iconSize = size === 'sm' ? 16 : '24'\n\n const { icons } = useCerberusContext()\n const { accordionIndicator: ChevronDown } = icons\n\n return (\n <AccordionParts.ItemIndicator {...indicatorProps}>\n <ChevronDown size={iconSize} />\n </AccordionParts.ItemIndicator>\n )\n}\n","'use client'\n\nimport { createContext, useContext, type PropsWithChildren } from 'react'\nimport type { SystemConfig } from '../config'\n\n/**\n * This module contains the Cerberus configuration context and helpers.\n * @module context/cerberus\n */\n\ntype CerberusContextValue = SystemConfig\n\nconst CerberusContext = createContext<CerberusContextValue | null>(null)\n\ninterface CerberusProviderProps {\n config: SystemConfig\n}\n\n/**\n * Cerberus configuration provider.\n * @param props.config The Cerberus configuration created with\n * `makeSystemConfig` helper.\n */\nexport function CerberusProvider(\n props: PropsWithChildren<CerberusProviderProps>,\n) {\n return (\n <CerberusContext.Provider value={props.config}>\n {props.children}\n </CerberusContext.Provider>\n )\n}\n\n/**\n * Returns the Cerberus configuration context.\n * @returns The Cerberus configuration context.\n */\nexport function useCerberusContext() {\n const context = useContext(CerberusContext)\n if (!context) {\n throw new Error('useCerberus must be used within a CerberusProvider')\n }\n return context\n}\n","import {\n Accordion,\n type AccordionItemContentProps,\n type AccordionItemIndicatorProps,\n type AccordionItemProps,\n type AccordionItemTriggerProps,\n type AccordionRootProps,\n} from '@ark-ui/react/accordion'\nimport { cx } from 'styled-system/css'\nimport { accordion, type AccordionVariantProps } from 'styled-system/recipes'\n\n/**\n * This module contains the primitives of the Accordion component.\n * @module 'accordion/primitives'\n */\n\n/**\n * The primitive root component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Root` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionRoot(\n props: AccordionRootProps & AccordionVariantProps,\n) {\n const { size, ...rootProps } = props\n const styles = accordion({ size })\n return (\n <Accordion.Root\n {...props}\n className={cx(styles.root, rootProps.className)}\n data-size={size}\n />\n )\n}\n\n/**\n * The primitive item component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Item` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItem(\n props: AccordionItemProps & AccordionVariantProps,\n) {\n const styles = accordion()\n return (\n <Accordion.Item {...props} className={cx(styles.item, props.className)} />\n )\n}\n\n/**\n * The primitive trigger component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemTrigger` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemTrigger(props: AccordionItemTriggerProps) {\n const styles = accordion()\n return (\n <Accordion.ItemTrigger\n {...props}\n className={cx(styles.itemTrigger, props.className)}\n />\n )\n}\n\n/**\n * The primitive item indicator component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemIndicator` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemIndicator(props: AccordionItemIndicatorProps) {\n const styles = accordion()\n return (\n <Accordion.ItemIndicator\n {...props}\n className={cx(styles.itemIndicator, props.className)}\n />\n )\n}\n\n/**\n * The primitive content component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Content` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemContent(props: AccordionItemContentProps) {\n const styles = accordion()\n return (\n <Accordion.ItemContent\n {...props}\n className={cx(styles.itemContent, props.className)}\n />\n )\n}\n","import type { ElementType } from 'react'\nimport {\n AccordionItem,\n AccordionItemContent,\n AccordionItemIndicator,\n AccordionItemTrigger,\n AccordionRoot,\n} from './primitives'\n\n/**\n * This module contains the parts of the Accordion component.\n * @module 'accordion/parts'\n */\n\ninterface AccordionPartsValue {\n /**\n * The context provider of the accordion.\n */\n Root: ElementType\n /**\n * The item of the accordion.\n */\n Item: ElementType\n /**\n * The trigger of the accordion item.\n */\n ItemTrigger: ElementType\n /**\n * The content of the accordion item.\n */\n ItemContent: ElementType\n /**\n * The indicator of the accordion item.\n */\n ItemIndicator: ElementType\n}\n\n/**\n * An Object containing the parts of the Accordion component. For users that\n * prefer Object component syntax.\n *\n * @remarks\n *\n * When using object component syntax, you import the AccordionParts object and\n * the entire family of components vs. only what you use.\n */\nexport const AccordionParts: AccordionPartsValue = {\n Root: AccordionRoot,\n Item: AccordionItem,\n ItemTrigger: AccordionItemTrigger,\n ItemContent: AccordionItemContent,\n ItemIndicator: AccordionItemIndicator,\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACEA,mBAAkE;AAyB9D;AAfJ,IAAM,sBAAkB,4BAA2C,IAAI;AAyBhE,SAAS,qBAAqB;AACnC,QAAM,cAAU,yBAAW,eAAe;AAC1C,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,oDAAoD;AAAA,EACtE;AACA,SAAO;AACT;;;AC3CA,uBAOO;AACP,iBAAmB;AACnB,qBAAsD;AAmBlD,IAAAA,sBAAA;AANG,SAAS,cACd,OACA;AACA,QAAM,EAAE,MAAM,GAAG,UAAU,IAAI;AAC/B,QAAM,aAAS,0BAAU,EAAE,KAAK,CAAC;AACjC,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,MAAM,UAAU,SAAS;AAAA,MAC9C,aAAW;AAAA;AAAA,EACb;AAEJ;AAQO,SAAS,cACd,OACA;AACA,QAAM,aAAS,0BAAU;AACzB,SACE,6CAAC,2BAAU,MAAV,EAAgB,GAAG,OAAO,eAAW,eAAG,OAAO,MAAM,MAAM,SAAS,GAAG;AAE5E;AAQO,SAAS,qBAAqB,OAAkC;AACrE,QAAM,aAAS,0BAAU;AACzB,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,aAAa,MAAM,SAAS;AAAA;AAAA,EACnD;AAEJ;AAQO,SAAS,uBAAuB,OAAoC;AACzE,QAAM,aAAS,0BAAU;AACzB,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,eAAe,MAAM,SAAS;AAAA;AAAA,EACrD;AAEJ;AAQO,SAAS,qBAAqB,OAAkC;AACrE,QAAM,aAAS,0BAAU;AACzB,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,aAAa,MAAM,SAAS;AAAA;AAAA,EACnD;AAEJ;;;ACnDO,IAAM,iBAAsC;AAAA,EACjD,MAAM;AAAA,EACN,MAAM;AAAA,EACN,aAAa;AAAA,EACb,aAAa;AAAA,EACb,eAAe;AACjB;;;AH7BM,IAAAC,sBAAA;AAXC,SAAS,8BACd,OACA;AACA,QAAM,EAAE,MAAM,GAAG,eAAe,IAAI;AACpC,QAAM,WAAW,SAAS,OAAO,KAAK;AAEtC,QAAM,EAAE,MAAM,IAAI,mBAAmB;AACrC,QAAM,EAAE,oBAAoB,YAAY,IAAI;AAE5C,SACE,6CAAC,eAAe,eAAf,EAA8B,GAAG,gBAChC,uDAAC,eAAY,MAAM,UAAU,GAC/B;AAEJ;","names":["import_jsx_runtime","import_jsx_runtime"]}
1
+ {"version":3,"sources":["../../../../src/components/accordion/item-indicator.tsx","../../../../src/context/cerberus.tsx","../../../../src/components/accordion/primitives.tsx","../../../../src/system/primitive-factory.tsx","../../../../src/system/index.ts","../../../../src/components/accordion/parts.ts"],"sourcesContent":["'use client'\n\nimport { type AccordionItemIndicatorProps } from '@ark-ui/react/accordion'\nimport { type AccordionVariantProps } from 'styled-system/recipes'\nimport { useCerberusContext } from '../../context/cerberus'\nimport { AccordionParts } from './parts'\n\n/**\n * This module contains the internal AccordionItemIndicator component.\n * @module 'accordion/item-indicator'\n */\n\nexport function AccordionChevronItemIndicator(\n props: AccordionItemIndicatorProps & AccordionVariantProps,\n) {\n const { size, ...indicatorProps } = props\n const iconSize = size === 'sm' ? 16 : '24'\n\n const { icons } = useCerberusContext()\n const { accordionIndicator: ChevronDown } = icons\n\n return (\n <AccordionParts.ItemIndicator {...indicatorProps}>\n <ChevronDown size={iconSize} />\n </AccordionParts.ItemIndicator>\n )\n}\n","'use client'\n\nimport { createContext, useContext, type PropsWithChildren } from 'react'\nimport type { SystemConfig } from '../config'\n\n/**\n * This module contains the Cerberus configuration context and helpers.\n * @module context/cerberus\n */\n\ntype CerberusContextValue = SystemConfig\n\nconst CerberusContext = createContext<CerberusContextValue | null>(null)\n\ninterface CerberusProviderProps {\n config: SystemConfig\n}\n\n/**\n * Cerberus configuration provider.\n * @param props.config The Cerberus configuration created with\n * `makeSystemConfig` helper.\n */\nexport function CerberusProvider(\n props: PropsWithChildren<CerberusProviderProps>,\n) {\n return (\n <CerberusContext.Provider value={props.config}>\n {props.children}\n </CerberusContext.Provider>\n )\n}\n\n/**\n * Returns the Cerberus configuration context.\n * @returns The Cerberus configuration context.\n */\nexport function useCerberusContext() {\n const context = useContext(CerberusContext)\n if (!context) {\n throw new Error('useCerberus must be used within a CerberusProvider')\n }\n return context\n}\n","import {\n Accordion,\n type AccordionItemContentProps as ArkAccordionItemContentProps,\n type AccordionItemIndicatorProps as ArkAccordionItemIndicatorProps,\n type AccordionItemProps as ArkAccordionItemProps,\n type AccordionItemTriggerProps as ArkAccordionItemTriggerProps,\n type AccordionRootProps as ArkAccordionRootProps,\n} from '@ark-ui/react/accordion'\nimport { accordion, type AccordionVariantProps } from 'styled-system/recipes'\nimport {\n createCerberusPrimitive,\n type CerberusPrimitiveProps,\n} from '../../system/index'\n\n/**\n * This module contains the primitives of the Accordion component.\n * @module 'accordion/primitives'\n */\n\nconst { withSlotRecipe } = createCerberusPrimitive(accordion)\n\nfunction AccordionRootEl(props: AccordionRootProps) {\n const { size, ...rootProps } = props\n return <Accordion.Root {...rootProps} data-size={size} />\n}\n\n/**\n * The primitive root component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Root` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport const AccordionRoot = withSlotRecipe(AccordionRootEl, 'root')\nexport type AccordionRootProps = CerberusPrimitiveProps<\n ArkAccordionRootProps & AccordionVariantProps\n>\n\n/**\n * The primitive item component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Item` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport const AccordionItem = withSlotRecipe<AccordionItemProps>(\n Accordion.Item,\n 'item',\n)\nexport type AccordionItemProps = CerberusPrimitiveProps<\n ArkAccordionItemProps & AccordionVariantProps\n>\n\n/**\n * The primitive trigger component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemTrigger` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport const AccordionItemTrigger = withSlotRecipe<AccordionItemTriggerProps>(\n Accordion.ItemTrigger,\n 'itemTrigger',\n)\nexport type AccordionItemTriggerProps =\n CerberusPrimitiveProps<ArkAccordionItemTriggerProps>\n\n/**\n * The primitive item indicator component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemIndicator` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport const AccordionItemIndicator =\n withSlotRecipe<AccordionItemIndicatorProps>(\n Accordion.ItemIndicator,\n 'itemIndicator',\n )\nexport type AccordionItemIndicatorProps =\n CerberusPrimitiveProps<ArkAccordionItemIndicatorProps>\n\n/**\n * The primitive content component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Content` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport const AccordionItemContent = withSlotRecipe<AccordionItemContentProps>(\n Accordion.ItemContent,\n 'itemContent',\n)\nexport type AccordionItemContentProps =\n CerberusPrimitiveProps<ArkAccordionItemContentProps>\n","import { css, cx } from 'styled-system/css'\nimport type { RecipeVariantRecord } from 'styled-system/types'\nimport {\n type ComponentType,\n type HTMLAttributes,\n type PropsWithChildren,\n} from 'react'\nimport type { WithCss } from '../types'\nimport type {\n CerberusPrimitiveEl,\n CerberusPrimitiveRecipe,\n CerberusRecipe,\n CerberusSlotRecipe,\n WithRecipeOptions,\n} from './types'\n\n/**\n * This module contains a factory for creating Cerberus primitives.\n * @module @cerberus/core/system/factory\n */\n\nexport class CerberusPrimitive {\n recipe: CerberusPrimitiveRecipe | null\n\n constructor(recipe?: CerberusPrimitiveRecipe) {\n this.recipe = recipe ?? null\n }\n\n private hasStyles(styles: string | undefined): Record<string, unknown> {\n if (styles) {\n return {\n className: styles,\n }\n }\n return {}\n }\n\n private validateComponent<P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P>,\n ) {\n if (typeof Component !== 'function' && typeof Component !== 'object') {\n throw new Error('Expected a React component as the first argument.')\n }\n }\n\n /**\n * Creates a Cerberus component with bare features and no recipe.\n * @param Component - The React component to enhance with Cerberus features.\n * @returns A new React component that applies Cerberus features to the\n * original component.\n * @example\n * ```typescript\n * const { withNoRecipe } = createCerberusPrimitive(button)\n * const Button = withNoRecipe(RawButton)\n * ```\n */\n withNoRecipe = <P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P>,\n options?: WithRecipeOptions,\n ): CerberusPrimitiveEl<P> => {\n const { defaultProps } = options || {}\n\n this.validateComponent(Component)\n\n const CerbComponent = (props: PropsWithChildren<P> & WithCss) => {\n const { css: customCss, className, ...nativeProps } = props\n const styles = this.hasStyles(cx(className, css(customCss)))\n return <Component {...defaultProps} {...styles} {...(nativeProps as P)} />\n }\n\n CerbComponent.displayName = Component.displayName || Component.name\n return CerbComponent\n }\n\n /**\n * Creates a Cerberus component with the given recipe.\n * @param Component - The React component to enhance with the recipe.\n * @param options - Options for the recipe.\n * @returns A new React component that applies the recipe to the original\n * component.\n */\n withRecipe = <P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P>,\n options?: WithRecipeOptions,\n ): CerberusPrimitiveEl<P & WithRecipeOptions['defaultProps']> => {\n const { defaultProps } = options || {}\n const recipe = this.recipe as CerberusRecipe\n\n this.validateComponent(Component)\n\n const CerbComponent = (internalProps: PropsWithChildren<P> & WithCss) => {\n const { css: customCss, className, ...nativeProps } = internalProps\n\n const [variantOptions] = recipe.splitVariantProps(nativeProps)\n const recipeStyles = recipe(variantOptions)\n\n return (\n <Component\n {...defaultProps}\n {...(nativeProps as P)}\n className={cx(className, recipeStyles, css(customCss))}\n />\n )\n }\n\n CerbComponent.displayName = Component.displayName || Component.name\n return CerbComponent\n }\n\n /**\n * Creates a Cerberus component with a slot recipe applied.\n * @param Component - The React component to enhance with Cerberus features.\n * @param recipe - The slot recipe to apply to the component.\n * @returns A new React component that applies Cerberus features and the\n * specified slot recipe to the original component.\n * @example\n * ```typescript\n * const { withSlotRecipe } = createCerberusPrimitive(field)\n * const Field = withSlotRecipe(RawField, field)\n * ```\n */\n withSlotRecipe = <P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P>,\n slot: keyof RecipeVariantRecord,\n options?: WithRecipeOptions,\n ) => {\n const { defaultProps } = options || {}\n const recipe = this.recipe as CerberusSlotRecipe<typeof slot>\n\n this.validateComponent(Component)\n\n const CerbComponent = (internalProps: PropsWithChildren<P> & WithCss) => {\n const { css: customCss, className, ...nativeProps } = internalProps\n\n const [variantOptions] = recipe.splitVariantProps(nativeProps)\n const styles = recipe(variantOptions)\n const slotStyles = styles[slot as keyof typeof styles]\n\n return (\n <Component\n {...defaultProps}\n {...(nativeProps as P)}\n className={cx(className, slotStyles, css(customCss))}\n />\n )\n }\n\n CerbComponent.displayName = Component.displayName || Component.name\n return CerbComponent\n }\n}\n","import { CerberusPrimitive } from './primitive-factory'\nimport type { CerberusFactory, CerberusPrimitiveRecipe } from './types'\nimport { cerberusFactoryProxy } from './factory'\n\n/**\n * This module contains the user interface for creating Cerberus primitives.\n * @module @cerberus/core/system/create-cerb-primitive\n */\n\n/**\n * A factory function that creates a Cerberus primitive instance with the given\n * recipe.\n * @param recipe\n * @returns An object with three methods: `withNoRecipe`, `withRecipe`, and `withSlotRecipe` that\n * apply the recipes and special Cerberus helpers like `css`.\n *\n * @example\n * ```tsx\n * const { withRecipe } = createCerberusPrimitive(myCustomRecipe);\n * export const Button = withRecipe(MyCustomButton)\n * ```\n */\nexport function createCerberusPrimitive<T extends CerberusPrimitiveRecipe>(\n recipe?: T,\n) {\n return new CerberusPrimitive(recipe)\n}\n\n/**\n * A utility function to access Cerberus components by their name.\n * @param component - The name of the Cerberus component to access.\n * @returns The Cerberus component corresponding to the provided name.\n * @throws An error if the component name is not valid.\n *\n * @example\n * ```tsx\n * import { cerberus } from '@cerberus/react'\n * const Button = cerberus('button')\n *\n * <Button css={{ color: 'blue' }} asChild>\n * <Link href=\"/some-page\">Click me</Link>\n * </Button>\n * ```\n */\nexport const cerberus = cerberusFactoryProxy as CerberusFactory\n\nexport * from './types'\n","import type { ElementType } from 'react'\nimport {\n AccordionItem,\n AccordionItemContent,\n AccordionItemIndicator,\n AccordionItemTrigger,\n AccordionRoot,\n} from './primitives'\n\n/**\n * This module contains the parts of the Accordion component.\n * @module 'accordion/parts'\n */\n\ninterface AccordionPartsValue {\n /**\n * The context provider of the accordion.\n */\n Root: ElementType\n /**\n * The item of the accordion.\n */\n Item: ElementType\n /**\n * The trigger of the accordion item.\n */\n ItemTrigger: ElementType\n /**\n * The content of the accordion item.\n */\n ItemContent: ElementType\n /**\n * The indicator of the accordion item.\n */\n ItemIndicator: ElementType\n}\n\n/**\n * An Object containing the parts of the Accordion component. For users that\n * prefer Object component syntax.\n *\n * @remarks\n *\n * When using object component syntax, you import the AccordionParts object and\n * the entire family of components vs. only what you use.\n */\nexport const AccordionParts: AccordionPartsValue = {\n Root: AccordionRoot,\n Item: AccordionItem,\n ItemTrigger: AccordionItemTrigger,\n ItemContent: AccordionItemContent,\n ItemIndicator: AccordionItemIndicator,\n}\n"],"mappings":"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","names":["import_jsx_runtime","import_jsx_runtime","import_jsx_runtime"]}
@@ -3,6 +3,7 @@ var __defProp = Object.defineProperty;
3
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
7
  var __export = (target, all) => {
7
8
  for (var name in all)
8
9
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -16,6 +17,7 @@ var __copyProps = (to, from, except, desc) => {
16
17
  return to;
17
18
  };
18
19
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
19
21
 
20
22
  // src/components/accordion/parts.ts
21
23
  var parts_exports = {};
@@ -26,55 +28,142 @@ module.exports = __toCommonJS(parts_exports);
26
28
 
27
29
  // src/components/accordion/primitives.tsx
28
30
  var import_accordion = require("@ark-ui/react/accordion");
29
- var import_css = require("styled-system/css");
30
31
  var import_recipes = require("styled-system/recipes");
32
+
33
+ // src/system/primitive-factory.tsx
34
+ var import_css = require("styled-system/css");
31
35
  var import_jsx_runtime = require("react/jsx-runtime");
32
- function AccordionRoot(props) {
33
- const { size, ...rootProps } = props;
34
- const styles = (0, import_recipes.accordion)({ size });
35
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
36
- import_accordion.Accordion.Root,
37
- {
38
- ...props,
39
- className: (0, import_css.cx)(styles.root, rootProps.className),
40
- "data-size": size
41
- }
42
- );
43
- }
44
- function AccordionItem(props) {
45
- const styles = (0, import_recipes.accordion)();
46
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_accordion.Accordion.Item, { ...props, className: (0, import_css.cx)(styles.item, props.className) });
47
- }
48
- function AccordionItemTrigger(props) {
49
- const styles = (0, import_recipes.accordion)();
50
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
51
- import_accordion.Accordion.ItemTrigger,
52
- {
53
- ...props,
54
- className: (0, import_css.cx)(styles.itemTrigger, props.className)
36
+ var CerberusPrimitive = class {
37
+ constructor(recipe) {
38
+ __publicField(this, "recipe");
39
+ /**
40
+ * Creates a Cerberus component with bare features and no recipe.
41
+ * @param Component - The React component to enhance with Cerberus features.
42
+ * @returns A new React component that applies Cerberus features to the
43
+ * original component.
44
+ * @example
45
+ * ```typescript
46
+ * const { withNoRecipe } = createCerberusPrimitive(button)
47
+ * const Button = withNoRecipe(RawButton)
48
+ * ```
49
+ */
50
+ __publicField(this, "withNoRecipe", (Component, options) => {
51
+ const { defaultProps } = options || {};
52
+ this.validateComponent(Component);
53
+ const CerbComponent = (props) => {
54
+ const { css: customCss, className, ...nativeProps } = props;
55
+ const styles = this.hasStyles((0, import_css.cx)(className, (0, import_css.css)(customCss)));
56
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, { ...defaultProps, ...styles, ...nativeProps });
57
+ };
58
+ CerbComponent.displayName = Component.displayName || Component.name;
59
+ return CerbComponent;
60
+ });
61
+ /**
62
+ * Creates a Cerberus component with the given recipe.
63
+ * @param Component - The React component to enhance with the recipe.
64
+ * @param options - Options for the recipe.
65
+ * @returns A new React component that applies the recipe to the original
66
+ * component.
67
+ */
68
+ __publicField(this, "withRecipe", (Component, options) => {
69
+ const { defaultProps } = options || {};
70
+ const recipe = this.recipe;
71
+ this.validateComponent(Component);
72
+ const CerbComponent = (internalProps) => {
73
+ const { css: customCss, className, ...nativeProps } = internalProps;
74
+ const [variantOptions] = recipe.splitVariantProps(nativeProps);
75
+ const recipeStyles = recipe(variantOptions);
76
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
77
+ Component,
78
+ {
79
+ ...defaultProps,
80
+ ...nativeProps,
81
+ className: (0, import_css.cx)(className, recipeStyles, (0, import_css.css)(customCss))
82
+ }
83
+ );
84
+ };
85
+ CerbComponent.displayName = Component.displayName || Component.name;
86
+ return CerbComponent;
87
+ });
88
+ /**
89
+ * Creates a Cerberus component with a slot recipe applied.
90
+ * @param Component - The React component to enhance with Cerberus features.
91
+ * @param recipe - The slot recipe to apply to the component.
92
+ * @returns A new React component that applies Cerberus features and the
93
+ * specified slot recipe to the original component.
94
+ * @example
95
+ * ```typescript
96
+ * const { withSlotRecipe } = createCerberusPrimitive(field)
97
+ * const Field = withSlotRecipe(RawField, field)
98
+ * ```
99
+ */
100
+ __publicField(this, "withSlotRecipe", (Component, slot, options) => {
101
+ const { defaultProps } = options || {};
102
+ const recipe = this.recipe;
103
+ this.validateComponent(Component);
104
+ const CerbComponent = (internalProps) => {
105
+ const { css: customCss, className, ...nativeProps } = internalProps;
106
+ const [variantOptions] = recipe.splitVariantProps(nativeProps);
107
+ const styles = recipe(variantOptions);
108
+ const slotStyles = styles[slot];
109
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
110
+ Component,
111
+ {
112
+ ...defaultProps,
113
+ ...nativeProps,
114
+ className: (0, import_css.cx)(className, slotStyles, (0, import_css.css)(customCss))
115
+ }
116
+ );
117
+ };
118
+ CerbComponent.displayName = Component.displayName || Component.name;
119
+ return CerbComponent;
120
+ });
121
+ this.recipe = recipe ?? null;
122
+ }
123
+ hasStyles(styles) {
124
+ if (styles) {
125
+ return {
126
+ className: styles
127
+ };
55
128
  }
56
- );
57
- }
58
- function AccordionItemIndicator(props) {
59
- const styles = (0, import_recipes.accordion)();
60
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
61
- import_accordion.Accordion.ItemIndicator,
62
- {
63
- ...props,
64
- className: (0, import_css.cx)(styles.itemIndicator, props.className)
129
+ return {};
130
+ }
131
+ validateComponent(Component) {
132
+ if (typeof Component !== "function" && typeof Component !== "object") {
133
+ throw new Error("Expected a React component as the first argument.");
65
134
  }
66
- );
135
+ }
136
+ };
137
+
138
+ // src/system/index.ts
139
+ function createCerberusPrimitive(recipe) {
140
+ return new CerberusPrimitive(recipe);
67
141
  }
68
- function AccordionItemContent(props) {
69
- const styles = (0, import_recipes.accordion)();
70
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
71
- import_accordion.Accordion.ItemContent,
72
- {
73
- ...props,
74
- className: (0, import_css.cx)(styles.itemContent, props.className)
75
- }
76
- );
142
+
143
+ // src/components/accordion/primitives.tsx
144
+ var import_jsx_runtime2 = require("react/jsx-runtime");
145
+ var { withSlotRecipe } = createCerberusPrimitive(import_recipes.accordion);
146
+ function AccordionRootEl(props) {
147
+ const { size, ...rootProps } = props;
148
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_accordion.Accordion.Root, { ...rootProps, "data-size": size });
77
149
  }
150
+ var AccordionRoot = withSlotRecipe(AccordionRootEl, "root");
151
+ var AccordionItem = withSlotRecipe(
152
+ import_accordion.Accordion.Item,
153
+ "item"
154
+ );
155
+ var AccordionItemTrigger = withSlotRecipe(
156
+ import_accordion.Accordion.ItemTrigger,
157
+ "itemTrigger"
158
+ );
159
+ var AccordionItemIndicator = withSlotRecipe(
160
+ import_accordion.Accordion.ItemIndicator,
161
+ "itemIndicator"
162
+ );
163
+ var AccordionItemContent = withSlotRecipe(
164
+ import_accordion.Accordion.ItemContent,
165
+ "itemContent"
166
+ );
78
167
 
79
168
  // src/components/accordion/parts.ts
80
169
  var AccordionParts = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/accordion/parts.ts","../../../../src/components/accordion/primitives.tsx"],"sourcesContent":["import type { ElementType } from 'react'\nimport {\n AccordionItem,\n AccordionItemContent,\n AccordionItemIndicator,\n AccordionItemTrigger,\n AccordionRoot,\n} from './primitives'\n\n/**\n * This module contains the parts of the Accordion component.\n * @module 'accordion/parts'\n */\n\ninterface AccordionPartsValue {\n /**\n * The context provider of the accordion.\n */\n Root: ElementType\n /**\n * The item of the accordion.\n */\n Item: ElementType\n /**\n * The trigger of the accordion item.\n */\n ItemTrigger: ElementType\n /**\n * The content of the accordion item.\n */\n ItemContent: ElementType\n /**\n * The indicator of the accordion item.\n */\n ItemIndicator: ElementType\n}\n\n/**\n * An Object containing the parts of the Accordion component. For users that\n * prefer Object component syntax.\n *\n * @remarks\n *\n * When using object component syntax, you import the AccordionParts object and\n * the entire family of components vs. only what you use.\n */\nexport const AccordionParts: AccordionPartsValue = {\n Root: AccordionRoot,\n Item: AccordionItem,\n ItemTrigger: AccordionItemTrigger,\n ItemContent: AccordionItemContent,\n ItemIndicator: AccordionItemIndicator,\n}\n","import {\n Accordion,\n type AccordionItemContentProps,\n type AccordionItemIndicatorProps,\n type AccordionItemProps,\n type AccordionItemTriggerProps,\n type AccordionRootProps,\n} from '@ark-ui/react/accordion'\nimport { cx } from 'styled-system/css'\nimport { accordion, type AccordionVariantProps } from 'styled-system/recipes'\n\n/**\n * This module contains the primitives of the Accordion component.\n * @module 'accordion/primitives'\n */\n\n/**\n * The primitive root component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Root` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionRoot(\n props: AccordionRootProps & AccordionVariantProps,\n) {\n const { size, ...rootProps } = props\n const styles = accordion({ size })\n return (\n <Accordion.Root\n {...props}\n className={cx(styles.root, rootProps.className)}\n data-size={size}\n />\n )\n}\n\n/**\n * The primitive item component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Item` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItem(\n props: AccordionItemProps & AccordionVariantProps,\n) {\n const styles = accordion()\n return (\n <Accordion.Item {...props} className={cx(styles.item, props.className)} />\n )\n}\n\n/**\n * The primitive trigger component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemTrigger` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemTrigger(props: AccordionItemTriggerProps) {\n const styles = accordion()\n return (\n <Accordion.ItemTrigger\n {...props}\n className={cx(styles.itemTrigger, props.className)}\n />\n )\n}\n\n/**\n * The primitive item indicator component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemIndicator` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemIndicator(props: AccordionItemIndicatorProps) {\n const styles = accordion()\n return (\n <Accordion.ItemIndicator\n {...props}\n className={cx(styles.itemIndicator, props.className)}\n />\n )\n}\n\n/**\n * The primitive content component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Content` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport function AccordionItemContent(props: AccordionItemContentProps) {\n const styles = accordion()\n return (\n <Accordion.ItemContent\n {...props}\n className={cx(styles.itemContent, props.className)}\n />\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,uBAOO;AACP,iBAAmB;AACnB,qBAAsD;AAmBlD;AANG,SAAS,cACd,OACA;AACA,QAAM,EAAE,MAAM,GAAG,UAAU,IAAI;AAC/B,QAAM,aAAS,0BAAU,EAAE,KAAK,CAAC;AACjC,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,MAAM,UAAU,SAAS;AAAA,MAC9C,aAAW;AAAA;AAAA,EACb;AAEJ;AAQO,SAAS,cACd,OACA;AACA,QAAM,aAAS,0BAAU;AACzB,SACE,4CAAC,2BAAU,MAAV,EAAgB,GAAG,OAAO,eAAW,eAAG,OAAO,MAAM,MAAM,SAAS,GAAG;AAE5E;AAQO,SAAS,qBAAqB,OAAkC;AACrE,QAAM,aAAS,0BAAU;AACzB,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,aAAa,MAAM,SAAS;AAAA;AAAA,EACnD;AAEJ;AAQO,SAAS,uBAAuB,OAAoC;AACzE,QAAM,aAAS,0BAAU;AACzB,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,eAAe,MAAM,SAAS;AAAA;AAAA,EACrD;AAEJ;AAQO,SAAS,qBAAqB,OAAkC;AACrE,QAAM,aAAS,0BAAU;AACzB,SACE;AAAA,IAAC,2BAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,eAAW,eAAG,OAAO,aAAa,MAAM,SAAS;AAAA;AAAA,EACnD;AAEJ;;;ADnDO,IAAM,iBAAsC;AAAA,EACjD,MAAM;AAAA,EACN,MAAM;AAAA,EACN,aAAa;AAAA,EACb,aAAa;AAAA,EACb,eAAe;AACjB;","names":[]}
1
+ {"version":3,"sources":["../../../../src/components/accordion/parts.ts","../../../../src/components/accordion/primitives.tsx","../../../../src/system/primitive-factory.tsx","../../../../src/system/index.ts"],"sourcesContent":["import type { ElementType } from 'react'\nimport {\n AccordionItem,\n AccordionItemContent,\n AccordionItemIndicator,\n AccordionItemTrigger,\n AccordionRoot,\n} from './primitives'\n\n/**\n * This module contains the parts of the Accordion component.\n * @module 'accordion/parts'\n */\n\ninterface AccordionPartsValue {\n /**\n * The context provider of the accordion.\n */\n Root: ElementType\n /**\n * The item of the accordion.\n */\n Item: ElementType\n /**\n * The trigger of the accordion item.\n */\n ItemTrigger: ElementType\n /**\n * The content of the accordion item.\n */\n ItemContent: ElementType\n /**\n * The indicator of the accordion item.\n */\n ItemIndicator: ElementType\n}\n\n/**\n * An Object containing the parts of the Accordion component. For users that\n * prefer Object component syntax.\n *\n * @remarks\n *\n * When using object component syntax, you import the AccordionParts object and\n * the entire family of components vs. only what you use.\n */\nexport const AccordionParts: AccordionPartsValue = {\n Root: AccordionRoot,\n Item: AccordionItem,\n ItemTrigger: AccordionItemTrigger,\n ItemContent: AccordionItemContent,\n ItemIndicator: AccordionItemIndicator,\n}\n","import {\n Accordion,\n type AccordionItemContentProps as ArkAccordionItemContentProps,\n type AccordionItemIndicatorProps as ArkAccordionItemIndicatorProps,\n type AccordionItemProps as ArkAccordionItemProps,\n type AccordionItemTriggerProps as ArkAccordionItemTriggerProps,\n type AccordionRootProps as ArkAccordionRootProps,\n} from '@ark-ui/react/accordion'\nimport { accordion, type AccordionVariantProps } from 'styled-system/recipes'\nimport {\n createCerberusPrimitive,\n type CerberusPrimitiveProps,\n} from '../../system/index'\n\n/**\n * This module contains the primitives of the Accordion component.\n * @module 'accordion/primitives'\n */\n\nconst { withSlotRecipe } = createCerberusPrimitive(accordion)\n\nfunction AccordionRootEl(props: AccordionRootProps) {\n const { size, ...rootProps } = props\n return <Accordion.Root {...rootProps} data-size={size} />\n}\n\n/**\n * The primitive root component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Root` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport const AccordionRoot = withSlotRecipe(AccordionRootEl, 'root')\nexport type AccordionRootProps = CerberusPrimitiveProps<\n ArkAccordionRootProps & AccordionVariantProps\n>\n\n/**\n * The primitive item component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Item` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport const AccordionItem = withSlotRecipe<AccordionItemProps>(\n Accordion.Item,\n 'item',\n)\nexport type AccordionItemProps = CerberusPrimitiveProps<\n ArkAccordionItemProps & AccordionVariantProps\n>\n\n/**\n * The primitive trigger component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemTrigger` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport const AccordionItemTrigger = withSlotRecipe<AccordionItemTriggerProps>(\n Accordion.ItemTrigger,\n 'itemTrigger',\n)\nexport type AccordionItemTriggerProps =\n CerberusPrimitiveProps<ArkAccordionItemTriggerProps>\n\n/**\n * The primitive item indicator component of the Accordion component.\n *\n * This component returns the Ark `Accordion.ItemIndicator` component which has\n * a base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport const AccordionItemIndicator =\n withSlotRecipe<AccordionItemIndicatorProps>(\n Accordion.ItemIndicator,\n 'itemIndicator',\n )\nexport type AccordionItemIndicatorProps =\n CerberusPrimitiveProps<ArkAccordionItemIndicatorProps>\n\n/**\n * The primitive content component of the Accordion component.\n *\n * This component returns the Ark `Accordion.Content` component which has a\n * base style using the Cerberus `accordion` recipe that can be overridden.\n */\nexport const AccordionItemContent = withSlotRecipe<AccordionItemContentProps>(\n Accordion.ItemContent,\n 'itemContent',\n)\nexport type AccordionItemContentProps =\n CerberusPrimitiveProps<ArkAccordionItemContentProps>\n","import { css, cx } from 'styled-system/css'\nimport type { RecipeVariantRecord } from 'styled-system/types'\nimport {\n type ComponentType,\n type HTMLAttributes,\n type PropsWithChildren,\n} from 'react'\nimport type { WithCss } from '../types'\nimport type {\n CerberusPrimitiveEl,\n CerberusPrimitiveRecipe,\n CerberusRecipe,\n CerberusSlotRecipe,\n WithRecipeOptions,\n} from './types'\n\n/**\n * This module contains a factory for creating Cerberus primitives.\n * @module @cerberus/core/system/factory\n */\n\nexport class CerberusPrimitive {\n recipe: CerberusPrimitiveRecipe | null\n\n constructor(recipe?: CerberusPrimitiveRecipe) {\n this.recipe = recipe ?? null\n }\n\n private hasStyles(styles: string | undefined): Record<string, unknown> {\n if (styles) {\n return {\n className: styles,\n }\n }\n return {}\n }\n\n private validateComponent<P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P>,\n ) {\n if (typeof Component !== 'function' && typeof Component !== 'object') {\n throw new Error('Expected a React component as the first argument.')\n }\n }\n\n /**\n * Creates a Cerberus component with bare features and no recipe.\n * @param Component - The React component to enhance with Cerberus features.\n * @returns A new React component that applies Cerberus features to the\n * original component.\n * @example\n * ```typescript\n * const { withNoRecipe } = createCerberusPrimitive(button)\n * const Button = withNoRecipe(RawButton)\n * ```\n */\n withNoRecipe = <P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P>,\n options?: WithRecipeOptions,\n ): CerberusPrimitiveEl<P> => {\n const { defaultProps } = options || {}\n\n this.validateComponent(Component)\n\n const CerbComponent = (props: PropsWithChildren<P> & WithCss) => {\n const { css: customCss, className, ...nativeProps } = props\n const styles = this.hasStyles(cx(className, css(customCss)))\n return <Component {...defaultProps} {...styles} {...(nativeProps as P)} />\n }\n\n CerbComponent.displayName = Component.displayName || Component.name\n return CerbComponent\n }\n\n /**\n * Creates a Cerberus component with the given recipe.\n * @param Component - The React component to enhance with the recipe.\n * @param options - Options for the recipe.\n * @returns A new React component that applies the recipe to the original\n * component.\n */\n withRecipe = <P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P>,\n options?: WithRecipeOptions,\n ): CerberusPrimitiveEl<P & WithRecipeOptions['defaultProps']> => {\n const { defaultProps } = options || {}\n const recipe = this.recipe as CerberusRecipe\n\n this.validateComponent(Component)\n\n const CerbComponent = (internalProps: PropsWithChildren<P> & WithCss) => {\n const { css: customCss, className, ...nativeProps } = internalProps\n\n const [variantOptions] = recipe.splitVariantProps(nativeProps)\n const recipeStyles = recipe(variantOptions)\n\n return (\n <Component\n {...defaultProps}\n {...(nativeProps as P)}\n className={cx(className, recipeStyles, css(customCss))}\n />\n )\n }\n\n CerbComponent.displayName = Component.displayName || Component.name\n return CerbComponent\n }\n\n /**\n * Creates a Cerberus component with a slot recipe applied.\n * @param Component - The React component to enhance with Cerberus features.\n * @param recipe - The slot recipe to apply to the component.\n * @returns A new React component that applies Cerberus features and the\n * specified slot recipe to the original component.\n * @example\n * ```typescript\n * const { withSlotRecipe } = createCerberusPrimitive(field)\n * const Field = withSlotRecipe(RawField, field)\n * ```\n */\n withSlotRecipe = <P extends HTMLAttributes<unknown>>(\n Component: ComponentType<P>,\n slot: keyof RecipeVariantRecord,\n options?: WithRecipeOptions,\n ) => {\n const { defaultProps } = options || {}\n const recipe = this.recipe as CerberusSlotRecipe<typeof slot>\n\n this.validateComponent(Component)\n\n const CerbComponent = (internalProps: PropsWithChildren<P> & WithCss) => {\n const { css: customCss, className, ...nativeProps } = internalProps\n\n const [variantOptions] = recipe.splitVariantProps(nativeProps)\n const styles = recipe(variantOptions)\n const slotStyles = styles[slot as keyof typeof styles]\n\n return (\n <Component\n {...defaultProps}\n {...(nativeProps as P)}\n className={cx(className, slotStyles, css(customCss))}\n />\n )\n }\n\n CerbComponent.displayName = Component.displayName || Component.name\n return CerbComponent\n }\n}\n","import { CerberusPrimitive } from './primitive-factory'\nimport type { CerberusFactory, CerberusPrimitiveRecipe } from './types'\nimport { cerberusFactoryProxy } from './factory'\n\n/**\n * This module contains the user interface for creating Cerberus primitives.\n * @module @cerberus/core/system/create-cerb-primitive\n */\n\n/**\n * A factory function that creates a Cerberus primitive instance with the given\n * recipe.\n * @param recipe\n * @returns An object with three methods: `withNoRecipe`, `withRecipe`, and `withSlotRecipe` that\n * apply the recipes and special Cerberus helpers like `css`.\n *\n * @example\n * ```tsx\n * const { withRecipe } = createCerberusPrimitive(myCustomRecipe);\n * export const Button = withRecipe(MyCustomButton)\n * ```\n */\nexport function createCerberusPrimitive<T extends CerberusPrimitiveRecipe>(\n recipe?: T,\n) {\n return new CerberusPrimitive(recipe)\n}\n\n/**\n * A utility function to access Cerberus components by their name.\n * @param component - The name of the Cerberus component to access.\n * @returns The Cerberus component corresponding to the provided name.\n * @throws An error if the component name is not valid.\n *\n * @example\n * ```tsx\n * import { cerberus } from '@cerberus/react'\n * const Button = cerberus('button')\n *\n * <Button css={{ color: 'blue' }} asChild>\n * <Link href=\"/some-page\">Click me</Link>\n * </Button>\n * ```\n */\nexport const cerberus = cerberusFactoryProxy as CerberusFactory\n\nexport * from './types'\n"],"mappings":"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","names":["import_jsx_runtime"]}