@cerberus-design/react 0.8.0-next-4b2aad4 → 0.8.1-next-956775c

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 (335) hide show
  1. package/build/legacy/aria-helpers/nav-menu.aria.cjs +36 -0
  2. package/build/legacy/aria-helpers/nav-menu.aria.cjs.map +1 -0
  3. package/build/legacy/aria-helpers/tabs.aria.cjs +100 -0
  4. package/build/legacy/aria-helpers/tabs.aria.cjs.map +1 -0
  5. package/build/legacy/aria-helpers/trap-focus.aria.cjs +54 -0
  6. package/build/legacy/aria-helpers/trap-focus.aria.cjs.map +1 -0
  7. package/build/legacy/components/Button.cjs +50 -0
  8. package/build/legacy/components/Button.cjs.map +1 -0
  9. package/build/legacy/components/Checkbox.cjs +157 -0
  10. package/build/legacy/components/Checkbox.cjs.map +1 -0
  11. package/build/legacy/components/Droppable.cjs +54 -0
  12. package/build/legacy/components/Droppable.cjs.map +1 -0
  13. package/build/legacy/components/FeatureFlag.cjs +63 -0
  14. package/build/legacy/components/FeatureFlag.cjs.map +1 -0
  15. package/build/legacy/components/FieldMessage.cjs +59 -0
  16. package/build/legacy/components/FieldMessage.cjs.map +1 -0
  17. package/build/legacy/components/FileStatus.cjs +390 -0
  18. package/build/legacy/components/FileStatus.cjs.map +1 -0
  19. package/build/legacy/components/FileUploader.cjs +159 -0
  20. package/build/legacy/components/FileUploader.cjs.map +1 -0
  21. package/build/legacy/components/IconButton.cjs +53 -0
  22. package/build/legacy/components/IconButton.cjs.map +1 -0
  23. package/build/legacy/components/Input.cjs +145 -0
  24. package/build/legacy/components/Input.cjs.map +1 -0
  25. package/build/legacy/components/Label.cjs +93 -0
  26. package/build/legacy/components/Label.cjs.map +1 -0
  27. package/build/legacy/components/Modal.cjs +45 -0
  28. package/build/legacy/components/Modal.cjs.map +1 -0
  29. package/build/legacy/components/ModalDescription.cjs +36 -0
  30. package/build/legacy/components/ModalDescription.cjs.map +1 -0
  31. package/build/legacy/components/ModalHeader.cjs +49 -0
  32. package/build/legacy/components/ModalHeader.cjs.map +1 -0
  33. package/build/legacy/components/ModalHeading.cjs +36 -0
  34. package/build/legacy/components/ModalHeading.cjs.map +1 -0
  35. package/build/legacy/components/ModalIcon.cjs +51 -0
  36. package/build/legacy/components/ModalIcon.cjs.map +1 -0
  37. package/build/legacy/components/NavMenuLink.cjs +81 -0
  38. package/build/legacy/components/NavMenuLink.cjs.map +1 -0
  39. package/build/legacy/components/NavMenuList.cjs +131 -0
  40. package/build/legacy/components/NavMenuList.cjs.map +1 -0
  41. package/build/legacy/components/NavMenuTrigger.cjs +128 -0
  42. package/build/legacy/components/NavMenuTrigger.cjs.map +1 -0
  43. package/build/legacy/components/Notification.cjs +181 -0
  44. package/build/legacy/components/Notification.cjs.map +1 -0
  45. package/build/legacy/components/NotificationDescription.cjs +44 -0
  46. package/build/legacy/components/NotificationDescription.cjs.map +1 -0
  47. package/build/legacy/components/NotificationHeading.cjs +38 -0
  48. package/build/legacy/components/NotificationHeading.cjs.map +1 -0
  49. package/build/legacy/components/Portal.cjs +35 -0
  50. package/build/legacy/components/Portal.cjs.map +1 -0
  51. package/build/legacy/components/ProgressBar.cjs +61 -0
  52. package/build/legacy/components/ProgressBar.cjs.map +1 -0
  53. package/build/legacy/components/Radio.cjs +68 -0
  54. package/build/legacy/components/Radio.cjs.map +1 -0
  55. package/build/legacy/components/Select.cjs +170 -0
  56. package/build/legacy/components/Select.cjs.map +1 -0
  57. package/build/legacy/components/Show.cjs +40 -0
  58. package/build/legacy/components/Show.cjs.map +1 -0
  59. package/build/legacy/components/Tab.cjs +135 -0
  60. package/build/legacy/components/Tab.cjs.map +1 -0
  61. package/build/legacy/components/TabList.cjs +68 -0
  62. package/build/legacy/components/TabList.cjs.map +1 -0
  63. package/build/legacy/components/TabPanel.cjs +76 -0
  64. package/build/legacy/components/TabPanel.cjs.map +1 -0
  65. package/build/legacy/components/Table.cjs +53 -0
  66. package/build/legacy/components/Table.cjs.map +1 -0
  67. package/build/legacy/components/Tag.cjs +91 -0
  68. package/build/legacy/components/Tag.cjs.map +1 -0
  69. package/build/legacy/components/Tbody.cjs +48 -0
  70. package/build/legacy/components/Tbody.cjs.map +1 -0
  71. package/build/legacy/components/Td.cjs +48 -0
  72. package/build/legacy/components/Td.cjs.map +1 -0
  73. package/build/legacy/components/Textarea.cjs +71 -0
  74. package/build/legacy/components/Textarea.cjs.map +1 -0
  75. package/build/legacy/components/Th.cjs +80 -0
  76. package/build/legacy/components/Th.cjs.map +1 -0
  77. package/build/legacy/components/Thead.cjs +36 -0
  78. package/build/legacy/components/Thead.cjs.map +1 -0
  79. package/build/legacy/components/Toggle.cjs +151 -0
  80. package/build/legacy/components/Toggle.cjs.map +1 -0
  81. package/build/legacy/config/cerbIcons.cjs +88 -0
  82. package/build/legacy/config/cerbIcons.cjs.map +1 -0
  83. package/build/legacy/config/defineIcons.cjs +110 -0
  84. package/build/legacy/config/defineIcons.cjs.map +1 -0
  85. package/build/legacy/config/icons/checkbox.icons.cjs +67 -0
  86. package/build/legacy/config/icons/checkbox.icons.cjs.map +1 -0
  87. package/build/legacy/context/confirm-modal.cjs +371 -0
  88. package/build/legacy/context/confirm-modal.cjs.map +1 -0
  89. package/build/legacy/context/feature-flags.cjs +48 -0
  90. package/build/legacy/context/feature-flags.cjs.map +1 -0
  91. package/build/legacy/context/field.cjs +55 -0
  92. package/build/legacy/context/field.cjs.map +1 -0
  93. package/build/legacy/context/navMenu.cjs +70 -0
  94. package/build/legacy/context/navMenu.cjs.map +1 -0
  95. package/build/legacy/context/notification-center.cjs +347 -0
  96. package/build/legacy/context/notification-center.cjs.map +1 -0
  97. package/build/legacy/context/prompt-modal.cjs +508 -0
  98. package/build/legacy/context/prompt-modal.cjs.map +1 -0
  99. package/build/legacy/context/tabs.cjs +78 -0
  100. package/build/legacy/context/tabs.cjs.map +1 -0
  101. package/build/legacy/context/theme.cjs +104 -0
  102. package/build/legacy/context/theme.cjs.map +1 -0
  103. package/build/legacy/hooks/useModal.cjs +50 -0
  104. package/build/legacy/hooks/useModal.cjs.map +1 -0
  105. package/build/legacy/hooks/useTheme.cjs +87 -0
  106. package/build/legacy/hooks/useTheme.cjs.map +1 -0
  107. package/build/legacy/hooks/useToggle.cjs +47 -0
  108. package/build/legacy/hooks/useToggle.cjs.map +1 -0
  109. package/build/legacy/index.cjs +2165 -0
  110. package/build/legacy/index.cjs.map +1 -0
  111. package/build/legacy/types.cjs +19 -0
  112. package/build/legacy/types.cjs.map +1 -0
  113. package/package.json +7 -7
  114. package/build/legacy/aria-helpers/nav-menu.aria.js +0 -7
  115. package/build/legacy/aria-helpers/nav-menu.aria.js.map +0 -1
  116. package/build/legacy/aria-helpers/tabs.aria.js +0 -9
  117. package/build/legacy/aria-helpers/tabs.aria.js.map +0 -1
  118. package/build/legacy/aria-helpers/trap-focus.aria.js +0 -7
  119. package/build/legacy/aria-helpers/trap-focus.aria.js.map +0 -1
  120. package/build/legacy/chunk-23UPROCG.js +0 -63
  121. package/build/legacy/chunk-23UPROCG.js.map +0 -1
  122. package/build/legacy/chunk-2FK7NR7Y.js +0 -50
  123. package/build/legacy/chunk-2FK7NR7Y.js.map +0 -1
  124. package/build/legacy/chunk-2UFNQM55.js +0 -21
  125. package/build/legacy/chunk-2UFNQM55.js.map +0 -1
  126. package/build/legacy/chunk-3C2DJSEE.js +0 -16
  127. package/build/legacy/chunk-3C2DJSEE.js.map +0 -1
  128. package/build/legacy/chunk-3GXISGPS.js +0 -47
  129. package/build/legacy/chunk-3GXISGPS.js.map +0 -1
  130. package/build/legacy/chunk-3RRNMPFC.js +0 -122
  131. package/build/legacy/chunk-3RRNMPFC.js.map +0 -1
  132. package/build/legacy/chunk-4CAT3FHV.js +0 -11
  133. package/build/legacy/chunk-4CAT3FHV.js.map +0 -1
  134. package/build/legacy/chunk-4FD33RTW.js +0 -56
  135. package/build/legacy/chunk-4FD33RTW.js.map +0 -1
  136. package/build/legacy/chunk-4M3EUP57.js +0 -22
  137. package/build/legacy/chunk-4M3EUP57.js.map +0 -1
  138. package/build/legacy/chunk-4M4LCQ43.js +0 -12
  139. package/build/legacy/chunk-4M4LCQ43.js.map +0 -1
  140. package/build/legacy/chunk-4O4QFF4S.js +0 -15
  141. package/build/legacy/chunk-4O4QFF4S.js.map +0 -1
  142. package/build/legacy/chunk-53QBTZZF.js +0 -42
  143. package/build/legacy/chunk-53QBTZZF.js.map +0 -1
  144. package/build/legacy/chunk-55J6XMHW.js +0 -1
  145. package/build/legacy/chunk-55J6XMHW.js.map +0 -1
  146. package/build/legacy/chunk-5WVXIAG2.js +0 -27
  147. package/build/legacy/chunk-5WVXIAG2.js.map +0 -1
  148. package/build/legacy/chunk-6DIGPXAD.js +0 -48
  149. package/build/legacy/chunk-6DIGPXAD.js.map +0 -1
  150. package/build/legacy/chunk-6F34A7NZ.js +0 -28
  151. package/build/legacy/chunk-6F34A7NZ.js.map +0 -1
  152. package/build/legacy/chunk-7NX4RGDB.js +0 -218
  153. package/build/legacy/chunk-7NX4RGDB.js.map +0 -1
  154. package/build/legacy/chunk-7VJOPJVX.js +0 -29
  155. package/build/legacy/chunk-7VJOPJVX.js.map +0 -1
  156. package/build/legacy/chunk-A5WYZVUR.js +0 -28
  157. package/build/legacy/chunk-A5WYZVUR.js.map +0 -1
  158. package/build/legacy/chunk-CP7OUC2Q.js +0 -42
  159. package/build/legacy/chunk-CP7OUC2Q.js.map +0 -1
  160. package/build/legacy/chunk-EVEEQRH6.js +0 -58
  161. package/build/legacy/chunk-EVEEQRH6.js.map +0 -1
  162. package/build/legacy/chunk-GKUDLVOV.js +0 -64
  163. package/build/legacy/chunk-GKUDLVOV.js.map +0 -1
  164. package/build/legacy/chunk-GUECLKHY.js +0 -43
  165. package/build/legacy/chunk-GUECLKHY.js.map +0 -1
  166. package/build/legacy/chunk-HW76XVA3.js +0 -22
  167. package/build/legacy/chunk-HW76XVA3.js.map +0 -1
  168. package/build/legacy/chunk-ID3XWGLY.js +0 -58
  169. package/build/legacy/chunk-ID3XWGLY.js.map +0 -1
  170. package/build/legacy/chunk-ISPTI4GC.js +0 -32
  171. package/build/legacy/chunk-ISPTI4GC.js.map +0 -1
  172. package/build/legacy/chunk-JB7IQ2BM.js +0 -12
  173. package/build/legacy/chunk-JB7IQ2BM.js.map +0 -1
  174. package/build/legacy/chunk-JF76VIL3.js +0 -12
  175. package/build/legacy/chunk-JF76VIL3.js.map +0 -1
  176. package/build/legacy/chunk-JHAI4ZHG.js +0 -76
  177. package/build/legacy/chunk-JHAI4ZHG.js.map +0 -1
  178. package/build/legacy/chunk-KESKDLX6.js +0 -30
  179. package/build/legacy/chunk-KESKDLX6.js.map +0 -1
  180. package/build/legacy/chunk-KF24CS4S.js +0 -58
  181. package/build/legacy/chunk-KF24CS4S.js.map +0 -1
  182. package/build/legacy/chunk-KJUCHZHV.js +0 -51
  183. package/build/legacy/chunk-KJUCHZHV.js.map +0 -1
  184. package/build/legacy/chunk-KUQZECNS.js +0 -155
  185. package/build/legacy/chunk-KUQZECNS.js.map +0 -1
  186. package/build/legacy/chunk-N3FUF4TB.js +0 -12
  187. package/build/legacy/chunk-N3FUF4TB.js.map +0 -1
  188. package/build/legacy/chunk-NE5NHILF.js +0 -47
  189. package/build/legacy/chunk-NE5NHILF.js.map +0 -1
  190. package/build/legacy/chunk-PH64POOB.js +0 -33
  191. package/build/legacy/chunk-PH64POOB.js.map +0 -1
  192. package/build/legacy/chunk-PJ3744I6.js +0 -24
  193. package/build/legacy/chunk-PJ3744I6.js.map +0 -1
  194. package/build/legacy/chunk-PMCYXRAH.js +0 -86
  195. package/build/legacy/chunk-PMCYXRAH.js.map +0 -1
  196. package/build/legacy/chunk-QU7UV5DB.js +0 -25
  197. package/build/legacy/chunk-QU7UV5DB.js.map +0 -1
  198. package/build/legacy/chunk-RHG26FYL.js +0 -68
  199. package/build/legacy/chunk-RHG26FYL.js.map +0 -1
  200. package/build/legacy/chunk-RPZAPUCF.js +0 -81
  201. package/build/legacy/chunk-RPZAPUCF.js.map +0 -1
  202. package/build/legacy/chunk-SCQVXJBT.js +0 -22
  203. package/build/legacy/chunk-SCQVXJBT.js.map +0 -1
  204. package/build/legacy/chunk-SLHX5K6I.js +0 -29
  205. package/build/legacy/chunk-SLHX5K6I.js.map +0 -1
  206. package/build/legacy/chunk-SXXWC6UD.js +0 -83
  207. package/build/legacy/chunk-SXXWC6UD.js.map +0 -1
  208. package/build/legacy/chunk-TCO46FK7.js +0 -36
  209. package/build/legacy/chunk-TCO46FK7.js.map +0 -1
  210. package/build/legacy/chunk-TJI2SJCZ.js +0 -208
  211. package/build/legacy/chunk-TJI2SJCZ.js.map +0 -1
  212. package/build/legacy/chunk-TYTEREKZ.js +0 -39
  213. package/build/legacy/chunk-TYTEREKZ.js.map +0 -1
  214. package/build/legacy/chunk-TZNYJ3G7.js +0 -25
  215. package/build/legacy/chunk-TZNYJ3G7.js.map +0 -1
  216. package/build/legacy/chunk-U72VPIZA.js +0 -32
  217. package/build/legacy/chunk-U72VPIZA.js.map +0 -1
  218. package/build/legacy/chunk-VCR5C6Q3.js +0 -29
  219. package/build/legacy/chunk-VCR5C6Q3.js.map +0 -1
  220. package/build/legacy/chunk-VGHVH2T3.js +0 -24
  221. package/build/legacy/chunk-VGHVH2T3.js.map +0 -1
  222. package/build/legacy/chunk-VULPMZUW.js +0 -18
  223. package/build/legacy/chunk-VULPMZUW.js.map +0 -1
  224. package/build/legacy/chunk-XREC5IJE.js +0 -24
  225. package/build/legacy/chunk-XREC5IJE.js.map +0 -1
  226. package/build/legacy/chunk-ZAU4JVLL.js +0 -33
  227. package/build/legacy/chunk-ZAU4JVLL.js.map +0 -1
  228. package/build/legacy/components/Button.js +0 -7
  229. package/build/legacy/components/Button.js.map +0 -1
  230. package/build/legacy/components/Checkbox.js +0 -13
  231. package/build/legacy/components/Checkbox.js.map +0 -1
  232. package/build/legacy/components/Droppable.js +0 -8
  233. package/build/legacy/components/Droppable.js.map +0 -1
  234. package/build/legacy/components/FeatureFlag.js +0 -10
  235. package/build/legacy/components/FeatureFlag.js.map +0 -1
  236. package/build/legacy/components/FieldMessage.js +0 -9
  237. package/build/legacy/components/FieldMessage.js.map +0 -1
  238. package/build/legacy/components/FileStatus.js +0 -17
  239. package/build/legacy/components/FileStatus.js.map +0 -1
  240. package/build/legacy/components/FileUploader.js +0 -12
  241. package/build/legacy/components/FileUploader.js.map +0 -1
  242. package/build/legacy/components/IconButton.js +0 -7
  243. package/build/legacy/components/IconButton.js.map +0 -1
  244. package/build/legacy/components/Input.js +0 -13
  245. package/build/legacy/components/Input.js.map +0 -1
  246. package/build/legacy/components/Label.js +0 -10
  247. package/build/legacy/components/Label.js.map +0 -1
  248. package/build/legacy/components/Modal.js +0 -7
  249. package/build/legacy/components/Modal.js.map +0 -1
  250. package/build/legacy/components/ModalDescription.js +0 -7
  251. package/build/legacy/components/ModalDescription.js.map +0 -1
  252. package/build/legacy/components/ModalHeader.js +0 -7
  253. package/build/legacy/components/ModalHeader.js.map +0 -1
  254. package/build/legacy/components/ModalHeading.js +0 -7
  255. package/build/legacy/components/ModalHeading.js.map +0 -1
  256. package/build/legacy/components/ModalIcon.js +0 -7
  257. package/build/legacy/components/ModalIcon.js.map +0 -1
  258. package/build/legacy/components/NavMenuLink.js +0 -8
  259. package/build/legacy/components/NavMenuLink.js.map +0 -1
  260. package/build/legacy/components/NavMenuList.js +0 -12
  261. package/build/legacy/components/NavMenuList.js.map +0 -1
  262. package/build/legacy/components/NavMenuTrigger.js +0 -11
  263. package/build/legacy/components/NavMenuTrigger.js.map +0 -1
  264. package/build/legacy/components/Notification.js +0 -12
  265. package/build/legacy/components/Notification.js.map +0 -1
  266. package/build/legacy/components/NotificationDescription.js +0 -7
  267. package/build/legacy/components/NotificationDescription.js.map +0 -1
  268. package/build/legacy/components/NotificationHeading.js +0 -7
  269. package/build/legacy/components/NotificationHeading.js.map +0 -1
  270. package/build/legacy/components/Portal.js +0 -7
  271. package/build/legacy/components/Portal.js.map +0 -1
  272. package/build/legacy/components/ProgressBar.js +0 -7
  273. package/build/legacy/components/ProgressBar.js.map +0 -1
  274. package/build/legacy/components/Radio.js +0 -9
  275. package/build/legacy/components/Radio.js.map +0 -1
  276. package/build/legacy/components/Select.js +0 -15
  277. package/build/legacy/components/Select.js.map +0 -1
  278. package/build/legacy/components/Show.js +0 -8
  279. package/build/legacy/components/Show.js.map +0 -1
  280. package/build/legacy/components/Tab.js +0 -10
  281. package/build/legacy/components/Tab.js.map +0 -1
  282. package/build/legacy/components/TabList.js +0 -9
  283. package/build/legacy/components/TabList.js.map +0 -1
  284. package/build/legacy/components/TabPanel.js +0 -10
  285. package/build/legacy/components/TabPanel.js.map +0 -1
  286. package/build/legacy/components/Table.js +0 -9
  287. package/build/legacy/components/Table.js.map +0 -1
  288. package/build/legacy/components/Tag.js +0 -8
  289. package/build/legacy/components/Tag.js.map +0 -1
  290. package/build/legacy/components/Tbody.js +0 -7
  291. package/build/legacy/components/Tbody.js.map +0 -1
  292. package/build/legacy/components/Td.js +0 -7
  293. package/build/legacy/components/Td.js.map +0 -1
  294. package/build/legacy/components/Textarea.js +0 -9
  295. package/build/legacy/components/Textarea.js.map +0 -1
  296. package/build/legacy/components/Th.js +0 -8
  297. package/build/legacy/components/Th.js.map +0 -1
  298. package/build/legacy/components/Thead.js +0 -7
  299. package/build/legacy/components/Thead.js.map +0 -1
  300. package/build/legacy/components/Toggle.js +0 -12
  301. package/build/legacy/components/Toggle.js.map +0 -1
  302. package/build/legacy/config/cerbIcons.js +0 -8
  303. package/build/legacy/config/cerbIcons.js.map +0 -1
  304. package/build/legacy/config/defineIcons.js +0 -11
  305. package/build/legacy/config/defineIcons.js.map +0 -1
  306. package/build/legacy/config/icons/checkbox.icons.js +0 -9
  307. package/build/legacy/config/icons/checkbox.icons.js.map +0 -1
  308. package/build/legacy/context/confirm-modal.js +0 -23
  309. package/build/legacy/context/confirm-modal.js.map +0 -1
  310. package/build/legacy/context/feature-flags.js +0 -10
  311. package/build/legacy/context/feature-flags.js.map +0 -1
  312. package/build/legacy/context/field.js +0 -10
  313. package/build/legacy/context/field.js.map +0 -1
  314. package/build/legacy/context/navMenu.js +0 -10
  315. package/build/legacy/context/navMenu.js.map +0 -1
  316. package/build/legacy/context/notification-center.js +0 -20
  317. package/build/legacy/context/notification-center.js.map +0 -1
  318. package/build/legacy/context/prompt-modal.js +0 -26
  319. package/build/legacy/context/prompt-modal.js.map +0 -1
  320. package/build/legacy/context/tabs.js +0 -12
  321. package/build/legacy/context/tabs.js.map +0 -1
  322. package/build/legacy/context/theme.js +0 -14
  323. package/build/legacy/context/theme.js.map +0 -1
  324. package/build/legacy/hooks/useModal.js +0 -8
  325. package/build/legacy/hooks/useModal.js.map +0 -1
  326. package/build/legacy/hooks/useTheme.js +0 -8
  327. package/build/legacy/hooks/useTheme.js.map +0 -1
  328. package/build/legacy/hooks/useToggle.js +0 -8
  329. package/build/legacy/hooks/useToggle.js.map +0 -1
  330. package/build/legacy/index.js +0 -247
  331. package/build/legacy/index.js.map +0 -1
  332. package/build/legacy/types.js +0 -2
  333. package/build/legacy/types.js.map +0 -1
  334. /package/build/legacy/{_tsup-dts-rollup.d.ts → _tsup-dts-rollup.d.cts} +0 -0
  335. /package/build/legacy/{noExternals.d.ts → noExternals.d.cts} +0 -0
@@ -1,86 +0,0 @@
1
- import {
2
- useNavMenuContext
3
- } from "./chunk-KJUCHZHV.js";
4
- import {
5
- Show
6
- } from "./chunk-4O4QFF4S.js";
7
-
8
- // src/components/NavMenuList.tsx
9
- import { useMemo } from "react";
10
- import { cx } from "@cerberus/styled-system/css";
11
- import { vstack } from "@cerberus/styled-system/patterns";
12
- import { jsx } from "react/jsx-runtime";
13
- function getPosition(position) {
14
- const defaultPositions = {
15
- left: "auto",
16
- right: "auto",
17
- top: "auto",
18
- bottom: "auto"
19
- };
20
- switch (position) {
21
- case "right":
22
- return { ...defaultPositions, top: "0%", left: "105%" };
23
- case "left":
24
- return { ...defaultPositions, top: "0%", right: "105%" };
25
- case "bottom":
26
- return { ...defaultPositions, top: "110%" };
27
- case "top":
28
- return { ...defaultPositions, bottom: "110%" };
29
- default:
30
- return defaultPositions;
31
- }
32
- }
33
- var navListStyles = vstack({
34
- alignItems: "flex-start",
35
- bgColor: "page.surface.100",
36
- boxShadow: "lg",
37
- gap: "2",
38
- opacity: "0",
39
- p: "4",
40
- position: "absolute",
41
- rounded: "md",
42
- zIndex: "dropdown",
43
- _motionSafe: {
44
- animationName: "zoomIn",
45
- animationDelay: "100ms",
46
- animationDuration: "150ms",
47
- animationFillMode: "both",
48
- animationTimingFunction: "ease-in-out"
49
- },
50
- _positionBottom: {
51
- transformOrigin: "top left"
52
- },
53
- _positionTop: {
54
- transformOrigin: "bottom left"
55
- },
56
- _positionLeft: {
57
- transformOrigin: "top right"
58
- },
59
- _positionRight: {
60
- transformOrigin: "top left"
61
- }
62
- });
63
- function NavMenuList(props) {
64
- const { position, ...nativeProps } = props;
65
- const { menuRef, expanded } = useNavMenuContext();
66
- const locationStyles = useMemo(
67
- () => getPosition(position ?? "bottom"),
68
- [position]
69
- );
70
- return /* @__PURE__ */ jsx(Show, { when: expanded, children: /* @__PURE__ */ jsx(
71
- "ul",
72
- {
73
- ...nativeProps,
74
- "data-position": position ?? "bottom",
75
- className: cx(nativeProps.className, navListStyles),
76
- ref: menuRef,
77
- style: locationStyles
78
- }
79
- ) });
80
- }
81
-
82
- export {
83
- getPosition,
84
- NavMenuList
85
- };
86
- //# sourceMappingURL=chunk-PMCYXRAH.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/NavMenuList.tsx"],"sourcesContent":["'use client'\n\nimport { useMemo, type HTMLAttributes } from 'react'\nimport { cx } from '@cerberus/styled-system/css'\nimport { vstack } from '@cerberus/styled-system/patterns'\nimport { useNavMenuContext } from '../context/navMenu'\nimport type { Positions } from '../types'\nimport { Show } from './Show'\n\ninterface GetPositionResult {\n left: string\n right: string\n top: string\n bottom: string\n}\n\nexport function getPosition(position: Positions): GetPositionResult {\n const defaultPositions = {\n left: 'auto',\n right: 'auto',\n top: 'auto',\n bottom: 'auto',\n }\n switch (position) {\n case 'right':\n return { ...defaultPositions, top: '0%', left: '105%' }\n case 'left':\n return { ...defaultPositions, top: '0%', right: '105%' }\n case 'bottom':\n return { ...defaultPositions, top: '110%' }\n case 'top':\n return { ...defaultPositions, bottom: '110%' }\n default:\n return defaultPositions\n }\n}\n\nconst navListStyles = vstack({\n alignItems: 'flex-start',\n bgColor: 'page.surface.100',\n boxShadow: 'lg',\n gap: '2',\n opacity: '0',\n p: '4',\n position: 'absolute',\n rounded: 'md',\n zIndex: 'dropdown',\n _motionSafe: {\n animationName: 'zoomIn',\n animationDelay: '100ms',\n animationDuration: '150ms',\n animationFillMode: 'both',\n animationTimingFunction: 'ease-in-out',\n },\n _positionBottom: {\n transformOrigin: 'top left',\n },\n _positionTop: {\n transformOrigin: 'bottom left',\n },\n _positionLeft: {\n transformOrigin: 'top right',\n },\n _positionRight: {\n transformOrigin: 'top left',\n },\n})\n\nexport interface NavMenuListProps extends HTMLAttributes<HTMLUListElement> {\n id: string\n position?: Positions\n}\n\n/**\n * A component that allows the user to display a menu of navigation links.\n * @definition [Disclosure Nav](https://www.w3.org/WAI/ARIA/apg/patterns/disclosure/examples/disclosure-navigation/)\n * @definition [NavMenu Docs](https://cerberus.digitalu.design/react/nav-menu)\n *\n * @example\n * ```tsx\n * <NavMenuList id=\"nav-menu-list\" position=\"bottom\">\n * <NavMenuLink href=\"/home\">Home</NavMenuLink>\n * <NavMenuLink href=\"/about\">About</NavMenuLink>\n * </NavMenuList>\n * ```\n **/\nexport function NavMenuList(props: NavMenuListProps): JSX.Element {\n const { position, ...nativeProps } = props\n const { menuRef, expanded } = useNavMenuContext()\n const locationStyles = useMemo(\n () => getPosition(position ?? 'bottom'),\n [position],\n )\n\n return (\n <Show when={expanded}>\n <ul\n {...nativeProps}\n data-position={position ?? 'bottom'}\n className={cx(nativeProps.className, navListStyles)}\n ref={menuRef}\n style={locationStyles}\n />\n </Show>\n )\n}\n"],"mappings":";;;;;;;;AAEA,SAAS,eAAoC;AAC7C,SAAS,UAAU;AACnB,SAAS,cAAc;AA4FjB;AAhFC,SAAS,YAAY,UAAwC;AAClE,QAAM,mBAAmB;AAAA,IACvB,MAAM;AAAA,IACN,OAAO;AAAA,IACP,KAAK;AAAA,IACL,QAAQ;AAAA,EACV;AACA,UAAQ,UAAU;AAAA,IAChB,KAAK;AACH,aAAO,EAAE,GAAG,kBAAkB,KAAK,MAAM,MAAM,OAAO;AAAA,IACxD,KAAK;AACH,aAAO,EAAE,GAAG,kBAAkB,KAAK,MAAM,OAAO,OAAO;AAAA,IACzD,KAAK;AACH,aAAO,EAAE,GAAG,kBAAkB,KAAK,OAAO;AAAA,IAC5C,KAAK;AACH,aAAO,EAAE,GAAG,kBAAkB,QAAQ,OAAO;AAAA,IAC/C;AACE,aAAO;AAAA,EACX;AACF;AAEA,IAAM,gBAAgB,OAAO;AAAA,EAC3B,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,WAAW;AAAA,EACX,KAAK;AAAA,EACL,SAAS;AAAA,EACT,GAAG;AAAA,EACH,UAAU;AAAA,EACV,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,aAAa;AAAA,IACX,eAAe;AAAA,IACf,gBAAgB;AAAA,IAChB,mBAAmB;AAAA,IACnB,mBAAmB;AAAA,IACnB,yBAAyB;AAAA,EAC3B;AAAA,EACA,iBAAiB;AAAA,IACf,iBAAiB;AAAA,EACnB;AAAA,EACA,cAAc;AAAA,IACZ,iBAAiB;AAAA,EACnB;AAAA,EACA,eAAe;AAAA,IACb,iBAAiB;AAAA,EACnB;AAAA,EACA,gBAAgB;AAAA,IACd,iBAAiB;AAAA,EACnB;AACF,CAAC;AAoBM,SAAS,YAAY,OAAsC;AAChE,QAAM,EAAE,UAAU,GAAG,YAAY,IAAI;AACrC,QAAM,EAAE,SAAS,SAAS,IAAI,kBAAkB;AAChD,QAAM,iBAAiB;AAAA,IACrB,MAAM,YAAY,YAAY,QAAQ;AAAA,IACtC,CAAC,QAAQ;AAAA,EACX;AAEA,SACE,oBAAC,QAAK,MAAM,UACV;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ,iBAAe,YAAY;AAAA,MAC3B,WAAW,GAAG,YAAY,WAAW,aAAa;AAAA,MAClD,KAAK;AAAA,MACL,OAAO;AAAA;AAAA,EACT,GACF;AAEJ;","names":[]}
@@ -1,25 +0,0 @@
1
- // src/components/ModalHeader.tsx
2
- import { cx } from "@cerberus/styled-system/css";
3
- import { vstack } from "@cerberus/styled-system/patterns";
4
- import { jsx } from "react/jsx-runtime";
5
- function ModalHeader(props) {
6
- return /* @__PURE__ */ jsx(
7
- "div",
8
- {
9
- ...props,
10
- className: cx(
11
- props.className,
12
- vstack({
13
- alignItems: "flex-start",
14
- gap: "4",
15
- mb: "8"
16
- })
17
- )
18
- }
19
- );
20
- }
21
-
22
- export {
23
- ModalHeader
24
- };
25
- //# sourceMappingURL=chunk-QU7UV5DB.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/ModalHeader.tsx"],"sourcesContent":["import { cx } from '@cerberus/styled-system/css'\nimport { vstack } from '@cerberus/styled-system/patterns'\nimport type { HTMLAttributes } from 'react'\n\n/**\n * This module contains the ModalHeader component for a customizable modal.\n * @module\n */\n\nexport type ModalHeaderProps = HTMLAttributes<HTMLDivElement>\n\n/**\n * The ModalHeader component is a header element for a customizable modal.\n * @example\n * ```tsx\n * <Modal>\n * <ModalHeader>\n * <h2>Modal Heading</h2>\n * </ModalHeader>\n * </Modal>\n * ```\n */\nexport function ModalHeader(props: ModalHeaderProps) {\n return (\n <div\n {...props}\n className={cx(\n props.className,\n vstack({\n alignItems: 'flex-start',\n gap: '4',\n mb: '8',\n }),\n )}\n />\n )\n}\n"],"mappings":";AAAA,SAAS,UAAU;AACnB,SAAS,cAAc;AAuBnB;AAFG,SAAS,YAAY,OAAyB;AACnD,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ,WAAW;AAAA,QACT,MAAM;AAAA,QACN,OAAO;AAAA,UACL,YAAY;AAAA,UACZ,KAAK;AAAA,UACL,IAAI;AAAA,QACN,CAAC;AAAA,MACH;AAAA;AAAA,EACF;AAEJ;","names":[]}
@@ -1,68 +0,0 @@
1
- import {
2
- Show
3
- } from "./chunk-4O4QFF4S.js";
4
- import {
5
- useFieldContext
6
- } from "./chunk-ZAU4JVLL.js";
7
- import {
8
- $cerberusIcons
9
- } from "./chunk-5WVXIAG2.js";
10
-
11
- // src/components/Select.tsx
12
- import { cx } from "@cerberus/styled-system/css";
13
- import { hstack } from "@cerberus/styled-system/patterns";
14
- import {
15
- select
16
- } from "@cerberus/styled-system/recipes";
17
- import { jsx, jsxs } from "react/jsx-runtime";
18
- function Select(props) {
19
- const { describedBy, size, ...nativeProps } = props;
20
- const { invalid, ...fieldStates } = useFieldContext();
21
- const { invalid: InvalidIcon, selectArrow: SelectArrow } = $cerberusIcons;
22
- const styles = select({
23
- size
24
- });
25
- return /* @__PURE__ */ jsxs("div", { className: styles.root, children: [
26
- /* @__PURE__ */ jsx(
27
- "select",
28
- {
29
- ...nativeProps,
30
- ...fieldStates,
31
- ...describedBy && { "aria-describedby": describedBy },
32
- ...invalid && { "aria-invalid": true },
33
- className: styles.input
34
- }
35
- ),
36
- /* @__PURE__ */ jsxs(
37
- "span",
38
- {
39
- className: cx(
40
- styles.iconStack,
41
- hstack({
42
- gap: "2"
43
- })
44
- ),
45
- children: [
46
- /* @__PURE__ */ jsx(Show, { when: invalid, children: /* @__PURE__ */ jsx(
47
- "span",
48
- {
49
- ...invalid && { "data-invalid": true },
50
- className: styles.stateIcon,
51
- children: /* @__PURE__ */ jsx(InvalidIcon, {})
52
- }
53
- ) }),
54
- /* @__PURE__ */ jsx("span", { className: styles.arrowIcon, children: /* @__PURE__ */ jsx(SelectArrow, {}) })
55
- ]
56
- }
57
- )
58
- ] });
59
- }
60
- function Option(props) {
61
- return /* @__PURE__ */ jsx("option", { ...props });
62
- }
63
-
64
- export {
65
- Select,
66
- Option
67
- };
68
- //# sourceMappingURL=chunk-RHG26FYL.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/Select.tsx"],"sourcesContent":["'use client'\n\nimport { cx } from '@cerberus/styled-system/css'\nimport { hstack } from '@cerberus/styled-system/patterns'\nimport {\n select,\n type SelectVariantProps,\n} from '@cerberus/styled-system/recipes'\nimport type { OptionHTMLAttributes, SelectHTMLAttributes } from 'react'\nimport { $cerberusIcons } from '../config/defineIcons'\nimport { useFieldContext } from '../context/field'\nimport { Show } from './Show'\n\n/**\n * This module contains the select components.\n * @module\n */\n\nexport type SelectProps = Omit<\n SelectHTMLAttributes<HTMLSelectElement>,\n 'size'\n> &\n SelectVariantProps & {\n id: string\n describedBy?: string\n }\n\n/**\n * Select component\n * props: SelectHTMLAttributes<HTMLSelectElement> & SelectVariantProps & { describedBy?: string }\n * @example\n * ```tsx\n * <Select describedby=\"help:fruit\" id=\"fruit\">\n * <Option value=\"\">Choose option</Option>\n * <Option value=\"one\">Option 1</Option>\n * <Option value=\"two\">Option 2</Option>\n * <Option value=\"three\">Option 3</Option>\n * </Select>\n * ```\n */\nexport function Select(props: SelectProps) {\n const { describedBy, size, ...nativeProps } = props\n const { invalid, ...fieldStates } = useFieldContext()\n const { invalid: InvalidIcon, selectArrow: SelectArrow } = $cerberusIcons\n const styles = select({\n size,\n })\n\n return (\n <div className={styles.root}>\n <select\n {...nativeProps}\n {...fieldStates}\n {...(describedBy && { 'aria-describedby': describedBy })}\n {...(invalid && { 'aria-invalid': true })}\n className={styles.input}\n />\n <span\n className={cx(\n styles.iconStack,\n hstack({\n gap: '2',\n }),\n )}\n >\n <Show when={invalid}>\n <span\n {...(invalid && { 'data-invalid': true })}\n className={styles.stateIcon}\n >\n <InvalidIcon />\n </span>\n </Show>\n <span className={styles.arrowIcon}>\n <SelectArrow />\n </span>\n </span>\n </div>\n )\n}\n\n// We only export this component for consistency with the other components\n\nexport type OptionProps = OptionHTMLAttributes<HTMLOptionElement>\n\n/**\n * Option component\n * props: OptionHTMLAttributes<HTMLOptionElement>\n * @example\n * ```tsx\n * <Option value=\"one\">Option 1</Option>\n * ```\n */\nexport function Option(props: OptionProps) {\n return <option {...props} />\n}\n"],"mappings":";;;;;;;;;;;AAEA,SAAS,UAAU;AACnB,SAAS,cAAc;AACvB;AAAA,EACE;AAAA,OAEK;AA2CD,cAOA,YAPA;AAVC,SAAS,OAAO,OAAoB;AACzC,QAAM,EAAE,aAAa,MAAM,GAAG,YAAY,IAAI;AAC9C,QAAM,EAAE,SAAS,GAAG,YAAY,IAAI,gBAAgB;AACpD,QAAM,EAAE,SAAS,aAAa,aAAa,YAAY,IAAI;AAC3D,QAAM,SAAS,OAAO;AAAA,IACpB;AAAA,EACF,CAAC;AAED,SACE,qBAAC,SAAI,WAAW,OAAO,MACrB;AAAA;AAAA,MAAC;AAAA;AAAA,QACE,GAAG;AAAA,QACH,GAAG;AAAA,QACH,GAAI,eAAe,EAAE,oBAAoB,YAAY;AAAA,QACrD,GAAI,WAAW,EAAE,gBAAgB,KAAK;AAAA,QACvC,WAAW,OAAO;AAAA;AAAA,IACpB;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,WAAW;AAAA,UACT,OAAO;AAAA,UACP,OAAO;AAAA,YACL,KAAK;AAAA,UACP,CAAC;AAAA,QACH;AAAA,QAEA;AAAA,8BAAC,QAAK,MAAM,SACV;AAAA,YAAC;AAAA;AAAA,cACE,GAAI,WAAW,EAAE,gBAAgB,KAAK;AAAA,cACvC,WAAW,OAAO;AAAA,cAElB,8BAAC,eAAY;AAAA;AAAA,UACf,GACF;AAAA,UACA,oBAAC,UAAK,WAAW,OAAO,WACtB,8BAAC,eAAY,GACf;AAAA;AAAA;AAAA,IACF;AAAA,KACF;AAEJ;AAcO,SAAS,OAAO,OAAoB;AACzC,SAAO,oBAAC,YAAQ,GAAG,OAAO;AAC5B;","names":[]}
@@ -1,81 +0,0 @@
1
- import {
2
- useNavMenuContext
3
- } from "./chunk-KJUCHZHV.js";
4
- import {
5
- Show
6
- } from "./chunk-4O4QFF4S.js";
7
- import {
8
- createNavTriggerProps
9
- } from "./chunk-JF76VIL3.js";
10
-
11
- // src/components/NavMenuTrigger.tsx
12
- import {
13
- useCallback
14
- } from "react";
15
- import { cx } from "@cerberus/styled-system/css";
16
- import { button } from "@cerberus/styled-system/recipes";
17
- import { jsx } from "react/jsx-runtime";
18
- function NavMenuTrigger(props) {
19
- const {
20
- as,
21
- palette,
22
- usage,
23
- shape,
24
- controls,
25
- expanded: propsExpanded,
26
- onClick,
27
- ...nativeProps
28
- } = props;
29
- const { triggerRef, onToggle, expanded } = useNavMenuContext();
30
- const ariaProps = createNavTriggerProps({
31
- controls,
32
- expanded: propsExpanded ?? expanded
33
- });
34
- const hasAs = Boolean(as);
35
- const AsSub = as;
36
- const handleClick = useCallback(
37
- (e) => {
38
- if (onClick) return onClick(e);
39
- onToggle();
40
- },
41
- [onClick, onToggle]
42
- );
43
- return /* @__PURE__ */ jsx(
44
- Show,
45
- {
46
- when: hasAs,
47
- fallback: /* @__PURE__ */ jsx(
48
- "button",
49
- {
50
- ...nativeProps,
51
- ...ariaProps,
52
- className: cx(
53
- nativeProps.className,
54
- button({
55
- palette,
56
- usage,
57
- shape
58
- })
59
- ),
60
- onClick: handleClick,
61
- ref: triggerRef,
62
- children: props.children
63
- }
64
- ),
65
- children: hasAs && /* @__PURE__ */ jsx(
66
- AsSub,
67
- {
68
- ...nativeProps,
69
- ...ariaProps,
70
- onClick: handleClick,
71
- ref: triggerRef
72
- }
73
- )
74
- }
75
- );
76
- }
77
-
78
- export {
79
- NavMenuTrigger
80
- };
81
- //# sourceMappingURL=chunk-RPZAPUCF.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/NavMenuTrigger.tsx"],"sourcesContent":["'use client'\n\nimport {\n useCallback,\n type ButtonHTMLAttributes,\n type ElementType,\n type MouseEvent,\n} from 'react'\nimport { cx } from '@cerberus/styled-system/css'\nimport { button } from '@cerberus/styled-system/recipes'\nimport {\n createNavTriggerProps,\n type NavTriggerAriaValues,\n} from '../aria-helpers/nav-menu.aria'\nimport { useNavMenuContext } from '../context/navMenu'\nimport type { ButtonProps } from './Button'\nimport { Show } from './Show'\n\nexport interface NavMenuTriggerProps\n extends ButtonHTMLAttributes<HTMLButtonElement>,\n ButtonProps,\n NavTriggerAriaValues {\n as?: ElementType\n}\n\n/**\n * A component that allows the user to trigger a navigation menu.\n * @definition [NavMenu Docs](https://cerberus.digitalu.design/react/nav-menu)\n * @example\n * ```tsx\n * <NavMenu>\n * <NavMenuTrigger controls=\"nav-menu-list\">\n * Menu\n * </NavMenuTrigger>\n * </NavMenu>\n * ```\n */\nexport function NavMenuTrigger(props: NavMenuTriggerProps): JSX.Element {\n const {\n as,\n palette,\n usage,\n shape,\n controls,\n expanded: propsExpanded,\n onClick,\n ...nativeProps\n } = props\n const { triggerRef, onToggle, expanded } = useNavMenuContext()\n const ariaProps = createNavTriggerProps({\n controls,\n expanded: propsExpanded ?? expanded,\n })\n const hasAs = Boolean(as)\n const AsSub: ElementType = as!\n\n const handleClick = useCallback(\n (e: MouseEvent<HTMLButtonElement>) => {\n if (onClick) return onClick(e)\n onToggle()\n },\n [onClick, onToggle],\n )\n\n return (\n <Show\n when={hasAs}\n fallback={\n <button\n {...nativeProps}\n {...ariaProps}\n className={cx(\n nativeProps.className,\n button({\n palette,\n usage,\n shape,\n }),\n )}\n onClick={handleClick}\n ref={triggerRef}\n >\n {props.children}\n </button>\n }\n >\n {hasAs && (\n <AsSub\n {...nativeProps}\n {...ariaProps}\n onClick={handleClick}\n ref={triggerRef}\n />\n )}\n </Show>\n )\n}\n"],"mappings":";;;;;;;;;;;AAEA;AAAA,EACE;AAAA,OAIK;AACP,SAAS,UAAU;AACnB,SAAS,cAAc;AA2Df;AA/BD,SAAS,eAAe,OAAyC;AACtE,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,UAAU;AAAA,IACV;AAAA,IACA,GAAG;AAAA,EACL,IAAI;AACJ,QAAM,EAAE,YAAY,UAAU,SAAS,IAAI,kBAAkB;AAC7D,QAAM,YAAY,sBAAsB;AAAA,IACtC;AAAA,IACA,UAAU,iBAAiB;AAAA,EAC7B,CAAC;AACD,QAAM,QAAQ,QAAQ,EAAE;AACxB,QAAM,QAAqB;AAE3B,QAAM,cAAc;AAAA,IAClB,CAAC,MAAqC;AACpC,UAAI,QAAS,QAAO,QAAQ,CAAC;AAC7B,eAAS;AAAA,IACX;AAAA,IACA,CAAC,SAAS,QAAQ;AAAA,EACpB;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAM;AAAA,MACN,UACE;AAAA,QAAC;AAAA;AAAA,UACE,GAAG;AAAA,UACH,GAAG;AAAA,UACJ,WAAW;AAAA,YACT,YAAY;AAAA,YACZ,OAAO;AAAA,cACL;AAAA,cACA;AAAA,cACA;AAAA,YACF,CAAC;AAAA,UACH;AAAA,UACA,SAAS;AAAA,UACT,KAAK;AAAA,UAEJ,gBAAM;AAAA;AAAA,MACT;AAAA,MAGD,mBACC;AAAA,QAAC;AAAA;AAAA,UACE,GAAG;AAAA,UACH,GAAG;AAAA,UACJ,SAAS;AAAA,UACT,KAAK;AAAA;AAAA,MACP;AAAA;AAAA,EAEJ;AAEJ;","names":[]}
@@ -1,22 +0,0 @@
1
- // src/hooks/useToggle.ts
2
- import { useCallback, useMemo, useState } from "react";
3
- function useToggle(options) {
4
- const [checked, setChecked] = useState((options == null ? void 0 : options.checked) ?? "");
5
- const onChange = options == null ? void 0 : options.onChange;
6
- const handleChange = useCallback(
7
- (e) => {
8
- const target = e.currentTarget;
9
- setChecked((prev) => {
10
- return prev === target.value ? "" : target.value;
11
- });
12
- onChange == null ? void 0 : onChange(e);
13
- },
14
- [onChange]
15
- );
16
- return useMemo(() => ({ checked, handleChange }), [checked, handleChange]);
17
- }
18
-
19
- export {
20
- useToggle
21
- };
22
- //# sourceMappingURL=chunk-SCQVXJBT.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/hooks/useToggle.ts"],"sourcesContent":["'use client'\n\nimport { useCallback, useMemo, useState, type ChangeEvent } from 'react'\n\nexport interface UseToggleOptions {\n checked?: string\n onChange?: (e: ChangeEvent<HTMLInputElement>) => void\n}\nexport interface ToggleHookReturn {\n checked: string\n handleChange: (e: ChangeEvent<HTMLInputElement>) => void\n}\n\nexport function useToggle(options?: UseToggleOptions): ToggleHookReturn {\n const [checked, setChecked] = useState<string>(options?.checked ?? '')\n const onChange = options?.onChange\n\n const handleChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n const target = e.currentTarget as HTMLInputElement\n setChecked((prev) => {\n return prev === target.value ? '' : target.value\n })\n onChange?.(e)\n },\n [onChange],\n )\n\n return useMemo(() => ({ checked, handleChange }), [checked, handleChange])\n}\n"],"mappings":";AAEA,SAAS,aAAa,SAAS,gBAAkC;AAW1D,SAAS,UAAU,SAA8C;AACtE,QAAM,CAAC,SAAS,UAAU,IAAI,UAAiB,mCAAS,YAAW,EAAE;AACrE,QAAM,WAAW,mCAAS;AAE1B,QAAM,eAAe;AAAA,IACnB,CAAC,MAAqC;AACpC,YAAM,SAAS,EAAE;AACjB,iBAAW,CAAC,SAAS;AACnB,eAAO,SAAS,OAAO,QAAQ,KAAK,OAAO;AAAA,MAC7C,CAAC;AACD,2CAAW;AAAA,IACb;AAAA,IACA,CAAC,QAAQ;AAAA,EACX;AAEA,SAAO,QAAQ,OAAO,EAAE,SAAS,aAAa,IAAI,CAAC,SAAS,YAAY,CAAC;AAC3E;","names":[]}
@@ -1,29 +0,0 @@
1
- // src/components/IconButton.tsx
2
- import { cx } from "@cerberus/styled-system/css";
3
- import { iconButton } from "@cerberus/styled-system/recipes";
4
- import { jsx } from "react/jsx-runtime";
5
- function IconButton(props) {
6
- const { ariaLabel, palette, usage, size, ...nativeProps } = props;
7
- return /* @__PURE__ */ jsx(
8
- "button",
9
- {
10
- ...nativeProps,
11
- "data-tooltip": true,
12
- "data-position": props.tooltipPosition ?? "top",
13
- "aria-label": ariaLabel ?? "Icon Button",
14
- className: cx(
15
- nativeProps.className,
16
- iconButton({
17
- palette,
18
- usage,
19
- size
20
- })
21
- )
22
- }
23
- );
24
- }
25
-
26
- export {
27
- IconButton
28
- };
29
- //# sourceMappingURL=chunk-SLHX5K6I.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/IconButton.tsx"],"sourcesContent":["import type { ButtonHTMLAttributes } from 'react'\nimport { cx, type RecipeVariantProps } from '@cerberus/styled-system/css'\nimport { iconButton } from '@cerberus/styled-system/recipes'\nimport type { Positions } from '../types'\n\n/**\n * This module contains the Icon Button component.\n * @module\n */\n\nexport interface IconButtonRawProps\n extends ButtonHTMLAttributes<HTMLButtonElement> {\n ariaLabel: string\n tooltipPosition?: Positions\n}\nexport type IconButtonRecipeProps = RecipeVariantProps<typeof iconButton>\nexport type IconButtonProps = IconButtonRawProps & IconButtonRecipeProps\n\n/**\n * A component that allows the user to perform actions using an icon\n * @description https://github.com/omnifed/cerberus/blob/main/packages/react/src/components/IconButton.tsx\n */\nexport function IconButton(props: IconButtonProps): JSX.Element {\n const { ariaLabel, palette, usage, size, ...nativeProps } = props\n return (\n <button\n {...nativeProps}\n data-tooltip\n data-position={props.tooltipPosition ?? 'top'}\n aria-label={ariaLabel ?? 'Icon Button'}\n className={cx(\n nativeProps.className,\n iconButton({\n palette,\n usage,\n size,\n }),\n )}\n />\n )\n}\n"],"mappings":";AACA,SAAS,UAAmC;AAC5C,SAAS,kBAAkB;AAuBvB;AAHG,SAAS,WAAW,OAAqC;AAC9D,QAAM,EAAE,WAAW,SAAS,OAAO,MAAM,GAAG,YAAY,IAAI;AAC5D,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ,gBAAY;AAAA,MACZ,iBAAe,MAAM,mBAAmB;AAAA,MACxC,cAAY,aAAa;AAAA,MACzB,WAAW;AAAA,QACT,YAAY;AAAA,QACZ,WAAW;AAAA,UACT;AAAA,UACA;AAAA,UACA;AAAA,QACF,CAAC;AAAA,MACH;AAAA;AAAA,EACF;AAEJ;","names":[]}
@@ -1,83 +0,0 @@
1
- // src/hooks/useTheme.ts
2
- import {
3
- useCallback,
4
- useEffect,
5
- useLayoutEffect,
6
- useMemo,
7
- useState
8
- } from "react";
9
-
10
- // src/context/theme.tsx
11
- import { createContext, useContext } from "react";
12
- import { jsx } from "react/jsx-runtime";
13
- var THEME_KEY = "cerberus-theme";
14
- var MODE_KEY = "cerberus-mode";
15
- var ThemeContext = createContext(
16
- null
17
- );
18
- function ThemeProvider(props) {
19
- const state = useTheme();
20
- return /* @__PURE__ */ jsx(ThemeContext.Provider, { value: state, children: props.children });
21
- }
22
- function useThemeContext() {
23
- const context = useContext(ThemeContext);
24
- if (!context) {
25
- throw new Error("useThemeContext must be used within a ThemeProvider");
26
- }
27
- return context;
28
- }
29
-
30
- // src/hooks/useTheme.ts
31
- function useTheme(defaultTheme = "cerberus", defaultColorMode = "light") {
32
- const [theme, setTheme] = useState(defaultTheme);
33
- const [colorMode, setColorMode] = useState(defaultColorMode);
34
- const handleThemeChange = useCallback((newTheme) => {
35
- setTheme(newTheme);
36
- localStorage.setItem(THEME_KEY, newTheme);
37
- }, []);
38
- const handleColorModeChange = useCallback(() => {
39
- setColorMode((prev) => {
40
- const newMode = prev === "light" ? "dark" : "light";
41
- localStorage.setItem(MODE_KEY, newMode);
42
- return newMode;
43
- });
44
- }, []);
45
- useLayoutEffect(() => {
46
- const theme2 = localStorage.getItem(THEME_KEY);
47
- if (theme2) {
48
- setTheme(theme2);
49
- }
50
- }, []);
51
- useLayoutEffect(() => {
52
- const mode = localStorage.getItem(MODE_KEY);
53
- if (mode) {
54
- setColorMode(mode);
55
- }
56
- }, []);
57
- useEffect(() => {
58
- const root = document.documentElement;
59
- root.dataset.theme = theme;
60
- }, [theme]);
61
- useEffect(() => {
62
- const root = document.documentElement;
63
- root.dataset.colorMode = colorMode;
64
- }, [colorMode]);
65
- return useMemo(
66
- () => ({
67
- theme,
68
- mode: colorMode,
69
- updateTheme: handleThemeChange,
70
- updateMode: handleColorModeChange
71
- }),
72
- [theme, colorMode, handleThemeChange, handleColorModeChange]
73
- );
74
- }
75
-
76
- export {
77
- useTheme,
78
- THEME_KEY,
79
- MODE_KEY,
80
- ThemeProvider,
81
- useThemeContext
82
- };
83
- //# sourceMappingURL=chunk-SXXWC6UD.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/hooks/useTheme.ts","../../src/context/theme.tsx"],"sourcesContent":["'use client'\n\nimport {\n useCallback,\n useEffect,\n useLayoutEffect,\n useMemo,\n useState,\n} from 'react'\nimport {\n MODE_KEY,\n THEME_KEY,\n type ColorModes,\n type CustomThemes,\n type DefaultThemes,\n type ThemeContextValue,\n} from '../context/theme'\n\nexport function useTheme<C extends string = DefaultThemes>(\n defaultTheme: CustomThemes<C> = 'cerberus',\n defaultColorMode: ColorModes = 'light',\n): ThemeContextValue<C> {\n const [theme, setTheme] = useState<CustomThemes<C>>(defaultTheme)\n const [colorMode, setColorMode] = useState<ColorModes>(defaultColorMode)\n\n const handleThemeChange = useCallback((newTheme: CustomThemes<C>) => {\n setTheme(newTheme)\n localStorage.setItem(THEME_KEY, newTheme)\n }, [])\n\n const handleColorModeChange = useCallback(() => {\n setColorMode((prev) => {\n const newMode = prev === 'light' ? 'dark' : 'light'\n localStorage.setItem(MODE_KEY, newMode)\n return newMode\n })\n }, [])\n\n useLayoutEffect(() => {\n const theme = localStorage.getItem(THEME_KEY)\n if (theme) {\n setTheme(theme as CustomThemes<C>)\n }\n }, [])\n\n useLayoutEffect(() => {\n const mode = localStorage.getItem(MODE_KEY)\n if (mode) {\n setColorMode(mode as ColorModes)\n }\n }, [])\n\n useEffect(() => {\n const root = document.documentElement\n root.dataset.theme = theme\n }, [theme])\n\n useEffect(() => {\n const root = document.documentElement\n root.dataset.colorMode = colorMode\n }, [colorMode])\n\n return useMemo(\n () => ({\n theme,\n mode: colorMode,\n updateTheme: handleThemeChange,\n updateMode: handleColorModeChange,\n }),\n [theme, colorMode, handleThemeChange, handleColorModeChange],\n )\n}\n","'use client'\n\nimport { createContext, useContext, type PropsWithChildren } from 'react'\nimport { useTheme } from '../hooks/useTheme'\n\nexport type DefaultThemes = 'cerberus'\nexport type CustomThemes<K extends string = DefaultThemes> = 'cerberus' | K\nexport type ColorModes = 'light' | 'dark'\n\nexport interface ThemeContextValue<T extends string = DefaultThemes> {\n theme: CustomThemes<T>\n mode: ColorModes\n updateTheme: (theme: T) => void\n updateMode: () => void\n}\n\nexport const THEME_KEY = 'cerberus-theme'\nexport const MODE_KEY = 'cerberus-mode'\n\nconst ThemeContext = createContext<ThemeContextValue<DefaultThemes> | null>(\n null,\n)\n\n/**\n * A context provider that allows the user to set the theme and mode of the application.\n * @example\n * ```tsx\n * <ThemeProvider>\n * <App />\n * </ThemeProvider>\n * ```\n */\nexport function ThemeProvider(props: PropsWithChildren<unknown>): JSX.Element {\n const state = useTheme()\n return (\n <ThemeContext.Provider value={state}>\n {props.children}\n </ThemeContext.Provider>\n )\n}\n\nexport function useThemeContext(): ThemeContextValue<DefaultThemes> {\n const context = useContext(ThemeContext)\n if (!context) {\n throw new Error('useThemeContext must be used within a ThemeProvider')\n }\n return context\n}\n"],"mappings":";AAEA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;;;ACNP,SAAS,eAAe,kBAA0C;AAiC9D;AAnBG,IAAM,YAAY;AAClB,IAAM,WAAW;AAExB,IAAM,eAAe;AAAA,EACnB;AACF;AAWO,SAAS,cAAc,OAAgD;AAC5E,QAAM,QAAQ,SAAS;AACvB,SACE,oBAAC,aAAa,UAAb,EAAsB,OAAO,OAC3B,gBAAM,UACT;AAEJ;AAEO,SAAS,kBAAoD;AAClE,QAAM,UAAU,WAAW,YAAY;AACvC,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM,qDAAqD;AAAA,EACvE;AACA,SAAO;AACT;;;AD7BO,SAAS,SACd,eAAgC,YAChC,mBAA+B,SACT;AACtB,QAAM,CAAC,OAAO,QAAQ,IAAI,SAA0B,YAAY;AAChE,QAAM,CAAC,WAAW,YAAY,IAAI,SAAqB,gBAAgB;AAEvE,QAAM,oBAAoB,YAAY,CAAC,aAA8B;AACnE,aAAS,QAAQ;AACjB,iBAAa,QAAQ,WAAW,QAAQ;AAAA,EAC1C,GAAG,CAAC,CAAC;AAEL,QAAM,wBAAwB,YAAY,MAAM;AAC9C,iBAAa,CAAC,SAAS;AACrB,YAAM,UAAU,SAAS,UAAU,SAAS;AAC5C,mBAAa,QAAQ,UAAU,OAAO;AACtC,aAAO;AAAA,IACT,CAAC;AAAA,EACH,GAAG,CAAC,CAAC;AAEL,kBAAgB,MAAM;AACpB,UAAMA,SAAQ,aAAa,QAAQ,SAAS;AAC5C,QAAIA,QAAO;AACT,eAASA,MAAwB;AAAA,IACnC;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,kBAAgB,MAAM;AACpB,UAAM,OAAO,aAAa,QAAQ,QAAQ;AAC1C,QAAI,MAAM;AACR,mBAAa,IAAkB;AAAA,IACjC;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,YAAU,MAAM;AACd,UAAM,OAAO,SAAS;AACtB,SAAK,QAAQ,QAAQ;AAAA,EACvB,GAAG,CAAC,KAAK,CAAC;AAEV,YAAU,MAAM;AACd,UAAM,OAAO,SAAS;AACtB,SAAK,QAAQ,YAAY;AAAA,EAC3B,GAAG,CAAC,SAAS,CAAC;AAEd,SAAO;AAAA,IACL,OAAO;AAAA,MACL;AAAA,MACA,MAAM;AAAA,MACN,aAAa;AAAA,MACb,YAAY;AAAA,IACd;AAAA,IACA,CAAC,OAAO,WAAW,mBAAmB,qBAAqB;AAAA,EAC7D;AACF;","names":["theme"]}
@@ -1,36 +0,0 @@
1
- import {
2
- useFieldContext
3
- } from "./chunk-ZAU4JVLL.js";
4
-
5
- // src/components/Textarea.tsx
6
- import { css, cx } from "@cerberus/styled-system/css";
7
- import { input } from "@cerberus/styled-system/recipes";
8
- import { jsx } from "react/jsx-runtime";
9
- function Textarea(props) {
10
- const { describedBy, ...nativeProps } = props;
11
- const { invalid, ...fieldState } = useFieldContext();
12
- return /* @__PURE__ */ jsx(
13
- "textarea",
14
- {
15
- ...nativeProps,
16
- ...fieldState,
17
- ...describedBy && { "aria-describedby": describedBy },
18
- ...invalid && { "aria-invalid": true },
19
- className: cx(
20
- props.className,
21
- input().input,
22
- css({
23
- pxi: "2",
24
- py: "2",
25
- resize: "vertical"
26
- })
27
- ),
28
- rows: 4
29
- }
30
- );
31
- }
32
-
33
- export {
34
- Textarea
35
- };
36
- //# sourceMappingURL=chunk-TCO46FK7.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/Textarea.tsx"],"sourcesContent":["'use client'\n\nimport type { TextareaHTMLAttributes } from 'react'\nimport { css, cx } from '@cerberus/styled-system/css'\nimport { input } from '@cerberus/styled-system/recipes'\nimport { useFieldContext } from '../context/field'\nimport type { InputRecipeProps } from './Input'\n\n/**\n * This module contains the Textarea component.\n * @module\n */\n\nexport interface TextareaBaseProps\n extends Omit<TextareaHTMLAttributes<HTMLTextAreaElement>, 'id'> {\n describedBy?: string\n id: string\n}\nexport type TextareaProps = InputRecipeProps & TextareaBaseProps\n\n/**\n * A component that allows the user to input large blocks of text.\n * @description https://github.com/omnifed/cerberus/blob/main/packages/react/src/components/Textarea.tsx\n */\nexport function Textarea(props: TextareaProps): JSX.Element {\n const { describedBy, ...nativeProps } = props\n const { invalid, ...fieldState } = useFieldContext()\n\n return (\n <textarea\n {...nativeProps}\n {...fieldState}\n {...(describedBy && { 'aria-describedby': describedBy })}\n {...(invalid && { 'aria-invalid': true })}\n className={cx(\n props.className,\n input().input,\n css({\n pxi: '2',\n py: '2',\n resize: 'vertical',\n }),\n )}\n rows={4}\n />\n )\n}\n"],"mappings":";;;;;AAGA,SAAS,KAAK,UAAU;AACxB,SAAS,aAAa;AAyBlB;AALG,SAAS,SAAS,OAAmC;AAC1D,QAAM,EAAE,aAAa,GAAG,YAAY,IAAI;AACxC,QAAM,EAAE,SAAS,GAAG,WAAW,IAAI,gBAAgB;AAEnD,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAI,eAAe,EAAE,oBAAoB,YAAY;AAAA,MACrD,GAAI,WAAW,EAAE,gBAAgB,KAAK;AAAA,MACvC,WAAW;AAAA,QACT,MAAM;AAAA,QACN,MAAM,EAAE;AAAA,QACR,IAAI;AAAA,UACF,KAAK;AAAA,UACL,IAAI;AAAA,UACJ,QAAQ;AAAA,QACV,CAAC;AAAA,MACH;AAAA,MACA,MAAM;AAAA;AAAA,EACR;AAEJ;","names":[]}