convex-cms 0.0.6 → 0.0.7-alpha.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 (296) hide show
  1. package/README.md +59 -97
  2. package/admin/src/components/ContentEntryEditor.tsx +2 -2
  3. package/admin/src/components/ContentTypeFormModal.tsx +121 -81
  4. package/admin/src/components/fields/ReferenceField.tsx +9 -9
  5. package/admin/src/pages/ContentPage.tsx +11 -19
  6. package/admin/src/pages/ContentTypesPage.tsx +62 -16
  7. package/admin/src/routes/entries/$entryId.tsx +1 -1
  8. package/admin/src/routes/entries/type/$contentTypeId.tsx +1 -1
  9. package/admin-dist/nitro.json +1 -1
  10. package/admin-dist/public/assets/CmsEmptyState-CXVkI3FZ.js +1 -0
  11. package/admin-dist/public/assets/CmsPageHeader-DU9fD34s.js +1 -0
  12. package/admin-dist/public/assets/{CmsStatusBadge-Dd9uToHE.js → CmsStatusBadge-nZ9TeLBL.js} +1 -1
  13. package/admin-dist/public/assets/{CmsSurface-DBy5Lumx.js → CmsSurface-DF7OcKg_.js} +1 -1
  14. package/admin-dist/public/assets/CmsToolbar-5S8FQrSx.js +1 -0
  15. package/admin-dist/public/assets/ContentEntryEditor-BDb44eTo.js +4 -0
  16. package/admin-dist/public/assets/TaxonomyFilter-DEN2Q9Lo.js +1 -0
  17. package/admin-dist/public/assets/_contentTypeId-Ba5iowxH.js +1 -0
  18. package/admin-dist/public/assets/_entryId-OY3sLz6O.js +1 -0
  19. package/admin-dist/public/assets/alert-BbW1Q9CR.js +1 -0
  20. package/admin-dist/public/assets/badge-DdM8Eua8.js +1 -0
  21. package/admin-dist/public/assets/{circle-check-big-CpLxAvEj.js → circle-check-big-B7eCOM8r.js} +1 -1
  22. package/admin-dist/public/assets/command-BIjzeKOv.js +1 -0
  23. package/admin-dist/public/assets/content-BV3YeSSW.js +1 -0
  24. package/admin-dist/public/assets/content-types-Bm4b2tf8.js +1 -0
  25. package/admin-dist/public/assets/globals-D41WzvyZ.css +1 -0
  26. package/admin-dist/public/assets/index-DnJ5Twlv.js +1 -0
  27. package/admin-dist/public/assets/main-BZB1uYTH.js +102 -0
  28. package/admin-dist/public/assets/media-BIMN5jXt.js +1 -0
  29. package/admin-dist/public/assets/new._contentTypeId-DTWb8ZDl.js +1 -0
  30. package/admin-dist/public/assets/pencil-BDQ1ZWRw.js +1 -0
  31. package/admin-dist/public/assets/{rotate-ccw-BZpZtw0N.js → rotate-ccw-BWblSIsl.js} +1 -1
  32. package/admin-dist/public/assets/scroll-area-BoaB6x8v.js +1 -0
  33. package/admin-dist/public/assets/{search-BvgYr-c9.js → search-CYMIpd39.js} +1 -1
  34. package/admin-dist/public/assets/settings-DaNDUtr5.js +1 -0
  35. package/admin-dist/public/assets/switch-DN7TOCa5.js +1 -0
  36. package/admin-dist/public/assets/tabs-RN__emeJ.js +1 -0
  37. package/admin-dist/public/assets/tanstack-adapter-DQcKErwf.js +1 -0
  38. package/admin-dist/public/assets/taxonomies-DylY9HE1.js +1 -0
  39. package/admin-dist/public/assets/trash-Dp_a2mpb.js +1 -0
  40. package/admin-dist/public/assets/{useBreadcrumbLabel-D00rvqjw.js → useBreadcrumbLabel-BQ9dJI6T.js} +1 -1
  41. package/admin-dist/public/assets/usePermissions-WUBNg_Id.js +1 -0
  42. package/admin-dist/server/_chunks/_libs/@date-fns/tz.mjs +2 -2
  43. package/admin-dist/server/_chunks/_libs/@radix-ui/react-avatar.mjs +1 -1
  44. package/admin-dist/server/_chunks/_libs/@radix-ui/react-collection.mjs +1 -1
  45. package/admin-dist/server/_chunks/_libs/@radix-ui/react-context.mjs +2 -2
  46. package/admin-dist/server/_chunks/_libs/@radix-ui/react-dialog.mjs +2 -2
  47. package/admin-dist/server/_chunks/_libs/@radix-ui/react-label.mjs +1 -1
  48. package/admin-dist/server/_chunks/_libs/@radix-ui/react-menu.mjs +1 -1
  49. package/admin-dist/server/_chunks/_libs/@radix-ui/react-popover.mjs +1 -1
  50. package/admin-dist/server/_chunks/_libs/@radix-ui/react-primitive.mjs +6 -72
  51. package/admin-dist/server/_chunks/_libs/@radix-ui/react-select.mjs +1 -1
  52. package/admin-dist/server/_chunks/_libs/@radix-ui/react-separator.mjs +1 -1
  53. package/admin-dist/server/_chunks/_libs/@radix-ui/react-slot.mjs +20 -435
  54. package/admin-dist/server/_chunks/_libs/@radix-ui/react-visually-hidden.mjs +30 -3
  55. package/admin-dist/server/_chunks/_libs/@tanstack/history.mjs +0 -376
  56. package/admin-dist/server/_chunks/_libs/@tanstack/react-router.mjs +168 -383
  57. package/admin-dist/server/_chunks/_libs/@tanstack/router-core.mjs +451 -1195
  58. package/admin-dist/server/_chunks/_libs/react-dom.mjs +5 -5
  59. package/admin-dist/server/_chunks/_libs/react.mjs +2 -2
  60. package/admin-dist/server/_libs/cmdk.mjs +1 -1
  61. package/admin-dist/server/_libs/convex.mjs +3 -3
  62. package/admin-dist/server/_libs/cookie-es.mjs +1 -58
  63. package/admin-dist/server/_libs/date-fns.mjs +1 -1
  64. package/admin-dist/server/_libs/lucide-react.mjs +110 -103
  65. package/admin-dist/server/_libs/seroval-plugins.mjs +1 -58
  66. package/admin-dist/server/_libs/seroval.mjs +1 -1765
  67. package/admin-dist/server/_libs/zod.mjs +1 -1
  68. package/admin-dist/server/_ssr/CmsEmptyState-DYh_PPQE.mjs +38 -0
  69. package/admin-dist/server/_ssr/{CmsPageHeader-ClNPU7Up.mjs → CmsPageHeader-BcniLh49.mjs} +1 -1
  70. package/admin-dist/server/_ssr/{CmsStatusBadge-CojMbrY7.mjs → CmsStatusBadge-BShWDxwE.mjs} +2 -2
  71. package/admin-dist/server/_ssr/{CmsSurface-Dcv440rp.mjs → CmsSurface-CHEv-Kba.mjs} +1 -1
  72. package/admin-dist/server/_ssr/{CmsToolbar-BKv1nL6u.mjs → CmsToolbar-Dqqb216_.mjs} +2 -3
  73. package/admin-dist/server/_ssr/{ContentEntryEditor-weiXSBdZ.mjs → ContentEntryEditor-DOIAyWME.mjs} +18 -21
  74. package/admin-dist/server/_ssr/{TaxonomyFilter-BPQ57Mwk.mjs → TaxonomyFilter-BfsPAZ-Y.mjs} +4 -5
  75. package/admin-dist/server/_ssr/{_contentTypeId-DyyauLOs.mjs → _contentTypeId-CPjmri90.mjs} +34 -43
  76. package/admin-dist/server/_ssr/{_entryId-9Cafwxmw.mjs → _entryId-D0yu8HuP.mjs} +35 -47
  77. package/admin-dist/server/_ssr/_tanstack-start-manifest_v-DgCpSt_y.mjs +4 -0
  78. package/admin-dist/server/_ssr/badge-Cp61aQNc.mjs +39 -0
  79. package/admin-dist/server/_ssr/{command-CEf8YBxY.mjs → command-BfjE1WJf.mjs} +2 -2
  80. package/admin-dist/server/_ssr/{config.server-D7JHDcDv.mjs → config.server-BOr7Jxr4.mjs} +5 -14
  81. package/admin-dist/server/_ssr/{content-ZFWVzO25.mjs → content-DrODe6sA.mjs} +40 -49
  82. package/admin-dist/server/_ssr/content-types-BPgMwxiT.mjs +459 -0
  83. package/admin-dist/server/_ssr/{index-BlSIlH4Z.mjs → index-BTHmIC9W.mjs} +26 -28
  84. package/admin-dist/server/_ssr/index.mjs +3459 -62
  85. package/admin-dist/server/_ssr/{media-CD2_NUMw.mjs → media-DkvBfmD9.mjs} +31 -43
  86. package/admin-dist/server/_ssr/{new._contentTypeId-dmZy6PBX.mjs → new._contentTypeId-Co_73sDJ.mjs} +33 -45
  87. package/admin-dist/server/_ssr/router-CaDgRHfQ.mjs +3031 -0
  88. package/admin-dist/server/_ssr/{scroll-area-BH_1K-WT.mjs → scroll-area-D3v-O_jk.mjs} +1 -1
  89. package/admin-dist/server/_ssr/{settings-DVdsoWoh.mjs → settings-MaEXh2Hz.mjs} +30 -39
  90. package/admin-dist/server/_ssr/{switch-DX_X8vZl.mjs → switch-DmbR03dm.mjs} +1 -1
  91. package/admin-dist/server/_ssr/{tabs-4FWM0sn8.mjs → tabs-5oFlAGLz.mjs} +2 -3
  92. package/admin-dist/server/_ssr/{tanstack-adapter-D3ZcKtbY.mjs → tanstack-adapter-DNaUioIZ.mjs} +1 -1
  93. package/admin-dist/server/_ssr/{taxonomies-BHFfO9Yr.mjs → taxonomies-D3xMK23a.mjs} +30 -39
  94. package/admin-dist/server/_ssr/{trash-9tUB2KwI.mjs → trash-CNw1mtF1.mjs} +30 -39
  95. package/admin-dist/server/_ssr/{useBreadcrumbLabel-DVme3DSb.mjs → useBreadcrumbLabel-BQGjOTcy.mjs} +1 -1
  96. package/admin-dist/server/_ssr/{usePermissions-zAQj-ruE.mjs → usePermissions-D0qtvmNi.mjs} +1 -1
  97. package/admin-dist/server/index.mjs +162 -204
  98. package/dist/cli/templates/cmsClient.d.ts +1 -1
  99. package/dist/cli/templates/cmsClient.d.ts.map +1 -1
  100. package/dist/cli/templates/cmsClient.js +30 -11
  101. package/dist/cli/templates/cmsClient.js.map +1 -1
  102. package/dist/cli/templates/cmsConfig.d.ts +1 -1
  103. package/dist/cli/templates/cmsConfig.d.ts.map +1 -1
  104. package/dist/cli/templates/cmsConfig.js +3 -3
  105. package/dist/client/admin/contentLock.d.ts +4 -4
  106. package/dist/client/admin/contentLock.d.ts.map +1 -1
  107. package/dist/client/admin/contentLock.js +1 -1
  108. package/dist/client/admin/contentLock.js.map +1 -1
  109. package/dist/client/admin/contentTypes.d.ts +303 -290
  110. package/dist/client/admin/contentTypes.d.ts.map +1 -1
  111. package/dist/client/admin/contentTypes.js +101 -9
  112. package/dist/client/admin/contentTypes.js.map +1 -1
  113. package/dist/client/admin/entries.d.ts +18 -19
  114. package/dist/client/admin/entries.d.ts.map +1 -1
  115. package/dist/client/admin/entries.js +6 -8
  116. package/dist/client/admin/entries.js.map +1 -1
  117. package/dist/client/admin/index.d.ts +690 -642
  118. package/dist/client/admin/index.d.ts.map +1 -1
  119. package/dist/client/admin/index.js +29 -5
  120. package/dist/client/admin/index.js.map +1 -1
  121. package/dist/client/admin/media.d.ts.map +1 -1
  122. package/dist/client/admin/taxonomies.d.ts.map +1 -1
  123. package/dist/client/admin/trash.d.ts +3 -4
  124. package/dist/client/admin/trash.d.ts.map +1 -1
  125. package/dist/client/admin/types.d.ts +181 -4
  126. package/dist/client/admin/types.d.ts.map +1 -1
  127. package/dist/client/admin/validators.d.ts +2009 -25
  128. package/dist/client/admin/validators.d.ts.map +1 -1
  129. package/dist/client/admin/validators.js +15 -4
  130. package/dist/client/admin/validators.js.map +1 -1
  131. package/dist/client/admin/versions.d.ts +1 -1
  132. package/dist/client/admin/versions.d.ts.map +1 -1
  133. package/dist/client/agentTools.d.ts +1 -4
  134. package/dist/client/agentTools.d.ts.map +1 -1
  135. package/dist/client/agentTools.js +9 -21
  136. package/dist/client/agentTools.js.map +1 -1
  137. package/dist/client/config.d.ts +10 -0
  138. package/dist/client/config.d.ts.map +1 -1
  139. package/dist/client/config.js +1 -0
  140. package/dist/client/config.js.map +1 -1
  141. package/dist/client/defineContent.d.ts +338 -0
  142. package/dist/client/defineContent.d.ts.map +1 -0
  143. package/dist/client/defineContent.js +368 -0
  144. package/dist/client/defineContent.js.map +1 -0
  145. package/dist/client/index.d.ts +2 -0
  146. package/dist/client/index.d.ts.map +1 -1
  147. package/dist/client/index.js +2 -0
  148. package/dist/client/index.js.map +1 -1
  149. package/dist/client/queryBuilder.d.ts +0 -15
  150. package/dist/client/queryBuilder.d.ts.map +1 -1
  151. package/dist/client/queryBuilder.js +0 -23
  152. package/dist/client/queryBuilder.js.map +1 -1
  153. package/dist/client/registry.d.ts +77 -0
  154. package/dist/client/registry.d.ts.map +1 -0
  155. package/dist/client/registry.js +95 -0
  156. package/dist/client/registry.js.map +1 -0
  157. package/dist/client/schema/defineContentType.d.ts +36 -24
  158. package/dist/client/schema/defineContentType.d.ts.map +1 -1
  159. package/dist/client/schema/defineContentType.js +77 -48
  160. package/dist/client/schema/defineContentType.js.map +1 -1
  161. package/dist/client/schema/typedClient.d.ts.map +1 -1
  162. package/dist/client/schema/typedClient.js +2 -10
  163. package/dist/client/schema/typedClient.js.map +1 -1
  164. package/dist/client/schema/types.d.ts +16 -9
  165. package/dist/client/schema/types.d.ts.map +1 -1
  166. package/dist/client/schema/types.js.map +1 -1
  167. package/dist/client/utils/toSlug.d.ts +60 -0
  168. package/dist/client/utils/toSlug.d.ts.map +1 -0
  169. package/dist/client/utils/toSlug.js +31 -0
  170. package/dist/client/utils/toSlug.js.map +1 -0
  171. package/dist/client/wrapper.d.ts +2 -2
  172. package/dist/client/wrapper.d.ts.map +1 -1
  173. package/dist/client/wrapper.js +22 -30
  174. package/dist/client/wrapper.js.map +1 -1
  175. package/dist/component/_generated/component.d.ts +24 -28
  176. package/dist/component/_generated/component.d.ts.map +1 -1
  177. package/dist/component/authorizationHooks.d.ts +1 -1
  178. package/dist/component/authorizationHooks.d.ts.map +1 -1
  179. package/dist/component/authorizationHooks.js +2 -2
  180. package/dist/component/authorizationHooks.js.map +1 -1
  181. package/dist/component/bulkOperations.d.ts.map +1 -1
  182. package/dist/component/bulkOperations.js +7 -4
  183. package/dist/component/bulkOperations.js.map +1 -1
  184. package/dist/component/contentEntries.d.ts +18 -56
  185. package/dist/component/contentEntries.d.ts.map +1 -1
  186. package/dist/component/contentEntries.js +45 -137
  187. package/dist/component/contentEntries.js.map +1 -1
  188. package/dist/component/contentEntryMutations.d.ts +14 -14
  189. package/dist/component/contentEntryMutations.d.ts.map +1 -1
  190. package/dist/component/contentEntryMutations.js +40 -43
  191. package/dist/component/contentEntryMutations.js.map +1 -1
  192. package/dist/component/contentEntryValidation.d.ts +3 -3
  193. package/dist/component/contentEntryValidation.js +6 -9
  194. package/dist/component/contentEntryValidation.js.map +1 -1
  195. package/dist/component/contentLock.d.ts +7 -7
  196. package/dist/component/contentLock.js +3 -3
  197. package/dist/component/contentLock.js.map +1 -1
  198. package/dist/component/contentTypeMigration.d.ts +1 -1
  199. package/dist/component/contentTypeMigration.js +2 -2
  200. package/dist/component/contentTypeMigration.js.map +1 -1
  201. package/dist/component/contentTypeMutations.js +2 -2
  202. package/dist/component/contentTypeMutations.js.map +1 -1
  203. package/dist/component/convex.config.d.ts.map +1 -1
  204. package/dist/component/convex.config.js +1 -1
  205. package/dist/component/convex.config.js.map +1 -1
  206. package/dist/component/eventEmitter.d.ts +0 -1
  207. package/dist/component/eventEmitter.d.ts.map +1 -1
  208. package/dist/component/eventEmitter.js.map +1 -1
  209. package/dist/component/exportImport.d.ts +37 -37
  210. package/dist/component/exportImport.d.ts.map +1 -1
  211. package/dist/component/exportImport.js +34 -34
  212. package/dist/component/exportImport.js.map +1 -1
  213. package/dist/component/lib/deepReferenceResolver.d.ts +2 -2
  214. package/dist/component/lib/deepReferenceResolver.d.ts.map +1 -1
  215. package/dist/component/lib/deepReferenceResolver.js +13 -8
  216. package/dist/component/lib/deepReferenceResolver.js.map +1 -1
  217. package/dist/component/lib/ragContentChunker.d.ts +3 -3
  218. package/dist/component/lib/ragContentChunker.d.ts.map +1 -1
  219. package/dist/component/lib/ragContentChunker.js +4 -4
  220. package/dist/component/lib/ragContentChunker.js.map +1 -1
  221. package/dist/component/lib/referenceResolver.d.ts.map +1 -1
  222. package/dist/component/lib/referenceResolver.js +10 -17
  223. package/dist/component/lib/referenceResolver.js.map +1 -1
  224. package/dist/component/mediaAssetMutations.js +4 -4
  225. package/dist/component/mediaAssetMutations.js.map +1 -1
  226. package/dist/component/ragContentIndexer.d.ts +2 -2
  227. package/dist/component/ragContentIndexer.d.ts.map +1 -1
  228. package/dist/component/ragContentIndexer.js +44 -48
  229. package/dist/component/ragContentIndexer.js.map +1 -1
  230. package/dist/component/roles.d.ts +3 -3
  231. package/dist/component/scheduledPublish.d.ts +4 -4
  232. package/dist/component/scheduledPublish.js +3 -3
  233. package/dist/component/scheduledPublish.js.map +1 -1
  234. package/dist/component/schema.d.ts +18 -18
  235. package/dist/component/schema.js +5 -5
  236. package/dist/component/schema.js.map +1 -1
  237. package/dist/component/trash.d.ts +6 -9
  238. package/dist/component/trash.d.ts.map +1 -1
  239. package/dist/component/trash.js +12 -36
  240. package/dist/component/trash.js.map +1 -1
  241. package/dist/component/userContext.d.ts +1 -2
  242. package/dist/component/userContext.d.ts.map +1 -1
  243. package/dist/component/userContext.js +1 -2
  244. package/dist/component/userContext.js.map +1 -1
  245. package/dist/component/validators.d.ts +27 -33
  246. package/dist/component/validators.d.ts.map +1 -1
  247. package/dist/component/validators.js +3 -5
  248. package/dist/component/validators.js.map +1 -1
  249. package/dist/component/versionMutations.d.ts +1 -1
  250. package/dist/component/webhookTrigger.d.ts +14 -14
  251. package/dist/test.d.ts +30 -30
  252. package/dist/test.d.ts.map +1 -1
  253. package/dist/test.js +24 -24
  254. package/dist/test.js.map +1 -1
  255. package/package.json +1 -1
  256. package/admin-dist/public/assets/CmsEmptyState-Do_erIgn.js +0 -5
  257. package/admin-dist/public/assets/CmsPageHeader-qDwPGi48.js +0 -1
  258. package/admin-dist/public/assets/CmsToolbar-D1-Y-7SK.js +0 -1
  259. package/admin-dist/public/assets/ContentEntryEditor-CWBiIx52.js +0 -4
  260. package/admin-dist/public/assets/TaxonomyFilter-CdYQawxb.js +0 -1
  261. package/admin-dist/public/assets/_contentTypeId-D9VMP6Gs.js +0 -1
  262. package/admin-dist/public/assets/_entryId-2FlCfqE7.js +0 -1
  263. package/admin-dist/public/assets/alert-GxZx0y5c.js +0 -1
  264. package/admin-dist/public/assets/badge-BAlGIjop.js +0 -1
  265. package/admin-dist/public/assets/command-di7XCqcv.js +0 -1
  266. package/admin-dist/public/assets/content-D8zELsDG.js +0 -1
  267. package/admin-dist/public/assets/content-types-BmzD0krT.js +0 -2
  268. package/admin-dist/public/assets/globals-BvFfH-v9.css +0 -1
  269. package/admin-dist/public/assets/index-zqfj4T_v.js +0 -1
  270. package/admin-dist/public/assets/label-B6PPtKR5.js +0 -1
  271. package/admin-dist/public/assets/link-2-W2fVnVOf.js +0 -1
  272. package/admin-dist/public/assets/list-F8O0lZXC.js +0 -1
  273. package/admin-dist/public/assets/main-dZT72bAG.js +0 -97
  274. package/admin-dist/public/assets/media-CETueFbV.js +0 -1
  275. package/admin-dist/public/assets/new._contentTypeId-BV2-TyyR.js +0 -1
  276. package/admin-dist/public/assets/plus-AABQIF0N.js +0 -1
  277. package/admin-dist/public/assets/scroll-area-CDfk-zrz.js +0 -1
  278. package/admin-dist/public/assets/select-BuiHcMzS.js +0 -1
  279. package/admin-dist/public/assets/settings-DBxbYDvn.js +0 -1
  280. package/admin-dist/public/assets/switch-DiJvolcs.js +0 -1
  281. package/admin-dist/public/assets/tabs-Cgz6G_Xy.js +0 -1
  282. package/admin-dist/public/assets/tanstack-adapter-BknsSgra.js +0 -1
  283. package/admin-dist/public/assets/taxonomies-DOErsLl5.js +0 -1
  284. package/admin-dist/public/assets/textarea-CgggMxUX.js +0 -1
  285. package/admin-dist/public/assets/trash-BU4ANuaW.js +0 -1
  286. package/admin-dist/public/assets/triangle-alert-lvCbwp0s.js +0 -1
  287. package/admin-dist/public/assets/usePermissions-D7tQowaF.js +0 -1
  288. package/admin-dist/server/_libs/h3-v2.mjs +0 -277
  289. package/admin-dist/server/_ssr/CmsButton-DbzfJru_.mjs +0 -125
  290. package/admin-dist/server/_ssr/CmsEmptyState-CuvcXr3Z.mjs +0 -290
  291. package/admin-dist/server/_ssr/_tanstack-start-manifest_v-Dk-FIYPN.mjs +0 -4
  292. package/admin-dist/server/_ssr/content-types-D25lUE-j.mjs +0 -1312
  293. package/admin-dist/server/_ssr/label-PblVvdRv.mjs +0 -22
  294. package/admin-dist/server/_ssr/router-x6Ab8T4s.mjs +0 -1622
  295. package/admin-dist/server/_ssr/select-CrfEkFJw.mjs +0 -142
  296. package/admin-dist/server/_ssr/textarea-CZVaroMc.mjs +0 -18
@@ -1,277 +0,0 @@
1
- import { N as NullProtoObj } from "./rou3.mjs";
2
- import { F as FastURL, N as NodeResponse } from "./srvx.mjs";
3
- const kEventNS = "h3.internal.event.";
4
- const kEventRes = /* @__PURE__ */ Symbol.for(`${kEventNS}res`);
5
- const kEventResHeaders = /* @__PURE__ */ Symbol.for(`${kEventNS}res.headers`);
6
- var H3Event = class {
7
- app;
8
- req;
9
- url;
10
- context;
11
- static __is_event__ = true;
12
- constructor(req, context, app) {
13
- this.context = context || req.context || new NullProtoObj();
14
- this.req = req;
15
- this.app = app;
16
- const _url = req._url;
17
- this.url = _url && _url instanceof URL ? _url : new FastURL(req.url);
18
- }
19
- get res() {
20
- return this[kEventRes] ||= new H3EventResponse();
21
- }
22
- get runtime() {
23
- return this.req.runtime;
24
- }
25
- waitUntil(promise) {
26
- this.req.waitUntil?.(promise);
27
- }
28
- toString() {
29
- return `[${this.req.method}] ${this.req.url}`;
30
- }
31
- toJSON() {
32
- return this.toString();
33
- }
34
- get node() {
35
- return this.req.runtime?.node;
36
- }
37
- get headers() {
38
- return this.req.headers;
39
- }
40
- get path() {
41
- return this.url.pathname + this.url.search;
42
- }
43
- get method() {
44
- return this.req.method;
45
- }
46
- };
47
- var H3EventResponse = class {
48
- status;
49
- statusText;
50
- get headers() {
51
- return this[kEventResHeaders] ||= new Headers();
52
- }
53
- };
54
- const DISALLOWED_STATUS_CHARS = /[^\u0009\u0020-\u007E]/g;
55
- function sanitizeStatusMessage(statusMessage = "") {
56
- return statusMessage.replace(DISALLOWED_STATUS_CHARS, "");
57
- }
58
- function sanitizeStatusCode(statusCode, defaultStatusCode = 200) {
59
- if (!statusCode) return defaultStatusCode;
60
- if (typeof statusCode === "string") statusCode = +statusCode;
61
- if (statusCode < 100 || statusCode > 599) return defaultStatusCode;
62
- return statusCode;
63
- }
64
- var HTTPError = class HTTPError2 extends Error {
65
- get name() {
66
- return "HTTPError";
67
- }
68
- status;
69
- statusText;
70
- headers;
71
- cause;
72
- data;
73
- body;
74
- unhandled;
75
- static isError(input) {
76
- return input instanceof Error && input?.name === "HTTPError";
77
- }
78
- static status(status, statusText, details) {
79
- return new HTTPError2({
80
- ...details,
81
- statusText,
82
- status
83
- });
84
- }
85
- constructor(arg1, arg2) {
86
- let messageInput;
87
- let details;
88
- if (typeof arg1 === "string") {
89
- messageInput = arg1;
90
- details = arg2;
91
- } else details = arg1;
92
- const status = sanitizeStatusCode(details?.status || details?.cause?.status || details?.status || details?.statusCode, 500);
93
- const statusText = sanitizeStatusMessage(details?.statusText || details?.cause?.statusText || details?.statusText || details?.statusMessage);
94
- const message = messageInput || details?.message || details?.cause?.message || details?.statusText || details?.statusMessage || [
95
- "HTTPError",
96
- status,
97
- statusText
98
- ].filter(Boolean).join(" ");
99
- super(message, { cause: details });
100
- this.cause = details;
101
- this.status = status;
102
- this.statusText = statusText || void 0;
103
- const rawHeaders = details?.headers || details?.cause?.headers;
104
- this.headers = rawHeaders ? new Headers(rawHeaders) : void 0;
105
- this.unhandled = details?.unhandled ?? details?.cause?.unhandled ?? void 0;
106
- this.data = details?.data;
107
- this.body = details?.body;
108
- }
109
- get statusCode() {
110
- return this.status;
111
- }
112
- get statusMessage() {
113
- return this.statusText;
114
- }
115
- toJSON() {
116
- const unhandled = this.unhandled;
117
- return {
118
- status: this.status,
119
- statusText: this.statusText,
120
- unhandled,
121
- message: unhandled ? "HTTPError" : this.message,
122
- data: unhandled ? void 0 : this.data,
123
- ...unhandled ? void 0 : this.body
124
- };
125
- }
126
- };
127
- function isJSONSerializable(value, _type) {
128
- if (value === null || value === void 0) return true;
129
- if (_type !== "object") return _type === "boolean" || _type === "number" || _type === "string";
130
- if (typeof value.toJSON === "function") return true;
131
- if (Array.isArray(value)) return true;
132
- if (typeof value.pipe === "function" || typeof value.pipeTo === "function") return false;
133
- if (value instanceof NullProtoObj) return true;
134
- const proto = Object.getPrototypeOf(value);
135
- return proto === Object.prototype || proto === null;
136
- }
137
- const kNotFound = /* @__PURE__ */ Symbol.for("h3.notFound");
138
- const kHandled = /* @__PURE__ */ Symbol.for("h3.handled");
139
- function toResponse(val, event, config = {}) {
140
- if (typeof val?.then === "function") return (val.catch?.((error) => error) || Promise.resolve(val)).then((resolvedVal) => toResponse(resolvedVal, event, config));
141
- const response = prepareResponse(val, event, config);
142
- if (typeof response?.then === "function") return toResponse(response, event, config);
143
- const { onResponse: onResponse$1 } = config;
144
- return onResponse$1 ? Promise.resolve(onResponse$1(response, event)).then(() => response) : response;
145
- }
146
- var HTTPResponse = class {
147
- #headers;
148
- #init;
149
- body;
150
- constructor(body, init) {
151
- this.body = body;
152
- this.#init = init;
153
- }
154
- get status() {
155
- return this.#init?.status || 200;
156
- }
157
- get statusText() {
158
- return this.#init?.statusText || "OK";
159
- }
160
- get headers() {
161
- return this.#headers ||= new Headers(this.#init?.headers);
162
- }
163
- };
164
- function prepareResponse(val, event, config, nested) {
165
- if (val === kHandled) return new NodeResponse(null);
166
- if (val === kNotFound) val = new HTTPError({
167
- status: 404,
168
- message: `Cannot find any route matching [${event.req.method}] ${event.url}`
169
- });
170
- if (val && val instanceof Error) {
171
- const isHTTPError = HTTPError.isError(val);
172
- const error = isHTTPError ? val : new HTTPError(val);
173
- if (!isHTTPError) {
174
- error.unhandled = true;
175
- if (val?.stack) error.stack = val.stack;
176
- }
177
- if (error.unhandled && !config.silent) console.error(error);
178
- const { onError: onError$1 } = config;
179
- return onError$1 && !nested ? Promise.resolve(onError$1(error, event)).catch((error$1) => error$1).then((newVal) => prepareResponse(newVal ?? val, event, config, true)) : errorResponse(error, config.debug);
180
- }
181
- const preparedRes = event[kEventRes];
182
- const preparedHeaders = preparedRes?.[kEventResHeaders];
183
- event[kEventRes] = void 0;
184
- if (!(val instanceof Response)) {
185
- const res = prepareResponseBody(val, event, config);
186
- const status = res.status || preparedRes?.status;
187
- return new NodeResponse(nullBody(event.req.method, status) ? null : res.body, {
188
- status,
189
- statusText: res.statusText || preparedRes?.statusText,
190
- headers: res.headers && preparedHeaders ? mergeHeaders$1(res.headers, preparedHeaders) : res.headers || preparedHeaders
191
- });
192
- }
193
- if (!preparedHeaders || nested || !val.ok) return val;
194
- try {
195
- mergeHeaders$1(val.headers, preparedHeaders, val.headers);
196
- return val;
197
- } catch {
198
- return new NodeResponse(nullBody(event.req.method, val.status) ? null : val.body, {
199
- status: val.status,
200
- statusText: val.statusText,
201
- headers: mergeHeaders$1(val.headers, preparedHeaders)
202
- });
203
- }
204
- }
205
- function mergeHeaders$1(base, overrides, target = new Headers(base)) {
206
- for (const [name, value] of overrides) if (name === "set-cookie") target.append(name, value);
207
- else target.set(name, value);
208
- return target;
209
- }
210
- const frozenHeaders = () => {
211
- throw new Error("Headers are frozen");
212
- };
213
- var FrozenHeaders = class extends Headers {
214
- constructor(init) {
215
- super(init);
216
- this.set = this.append = this.delete = frozenHeaders;
217
- }
218
- };
219
- const emptyHeaders = /* @__PURE__ */ new FrozenHeaders({ "content-length": "0" });
220
- const jsonHeaders = /* @__PURE__ */ new FrozenHeaders({ "content-type": "application/json;charset=UTF-8" });
221
- function prepareResponseBody(val, event, config) {
222
- if (val === null || val === void 0) return {
223
- body: "",
224
- headers: emptyHeaders
225
- };
226
- const valType = typeof val;
227
- if (valType === "string") return { body: val };
228
- if (val instanceof Uint8Array) {
229
- event.res.headers.set("content-length", val.byteLength.toString());
230
- return { body: val };
231
- }
232
- if (val instanceof HTTPResponse || val?.constructor?.name === "HTTPResponse") return val;
233
- if (isJSONSerializable(val, valType)) return {
234
- body: JSON.stringify(val, void 0, config.debug ? 2 : void 0),
235
- headers: jsonHeaders
236
- };
237
- if (valType === "bigint") return {
238
- body: val.toString(),
239
- headers: jsonHeaders
240
- };
241
- if (val instanceof Blob) {
242
- const headers = new Headers({
243
- "content-type": val.type,
244
- "content-length": val.size.toString()
245
- });
246
- let filename = val.name;
247
- if (filename) {
248
- filename = encodeURIComponent(filename);
249
- headers.set("content-disposition", `filename="${filename}"; filename*=UTF-8''${filename}`);
250
- }
251
- return {
252
- body: val.stream(),
253
- headers
254
- };
255
- }
256
- if (valType === "symbol") return { body: val.toString() };
257
- if (valType === "function") return { body: `${val.name}()` };
258
- return { body: val };
259
- }
260
- function nullBody(method, status) {
261
- return method === "HEAD" || status === 100 || status === 101 || status === 102 || status === 204 || status === 205 || status === 304;
262
- }
263
- function errorResponse(error, debug) {
264
- return new NodeResponse(JSON.stringify({
265
- ...error.toJSON(),
266
- stack: debug && error.stack ? error.stack.split("\n").map((l) => l.trim()) : void 0
267
- }, void 0, debug ? 2 : void 0), {
268
- status: error.status,
269
- statusText: error.statusText,
270
- headers: error.headers ? mergeHeaders$1(jsonHeaders, error.headers) : new Headers(jsonHeaders)
271
- });
272
- }
273
- new TextEncoder();
274
- export {
275
- H3Event as H,
276
- toResponse as t
277
- };
@@ -1,125 +0,0 @@
1
- import { j as jsxRuntimeExports } from "../_chunks/_libs/react.mjs";
2
- import { S as Slot } from "../_chunks/_libs/@radix-ui/react-slot.mjs";
3
- import { c as cva } from "../_libs/class-variance-authority.mjs";
4
- import { c as cn, B as Button } from "./router-x6Ab8T4s.mjs";
5
- const badgeVariants = cva(
6
- "inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",
7
- {
8
- variants: {
9
- variant: {
10
- default: "border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",
11
- secondary: "border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",
12
- destructive: "border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
13
- outline: "text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"
14
- }
15
- },
16
- defaultVariants: {
17
- variant: "default"
18
- }
19
- }
20
- );
21
- function Badge({
22
- className,
23
- variant,
24
- asChild = false,
25
- ...props
26
- }) {
27
- const Comp = asChild ? Slot : "span";
28
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
29
- Comp,
30
- {
31
- "data-slot": "badge",
32
- className: cn(badgeVariants({ variant }), className),
33
- ...props
34
- }
35
- );
36
- }
37
- const motion = {
38
- fast: "duration-100 ease-out"
39
- };
40
- const variantMap = {
41
- primary: "default",
42
- secondary: "secondary",
43
- danger: "destructive",
44
- ghost: "ghost",
45
- outline: "outline",
46
- link: "link",
47
- success: "default",
48
- warning: "default"
49
- };
50
- const customVariantClasses = {
51
- success: "bg-emerald-600 text-white hover:bg-emerald-700 focus-visible:ring-emerald-500",
52
- warning: "bg-amber-500 text-white hover:bg-amber-600 focus-visible:ring-amber-500"
53
- };
54
- const LoadingSpinner = () => /* @__PURE__ */ jsxRuntimeExports.jsxs(
55
- "svg",
56
- {
57
- className: "size-4 animate-spin",
58
- xmlns: "http://www.w3.org/2000/svg",
59
- fill: "none",
60
- viewBox: "0 0 24 24",
61
- children: [
62
- /* @__PURE__ */ jsxRuntimeExports.jsx(
63
- "circle",
64
- {
65
- className: "opacity-25",
66
- cx: "12",
67
- cy: "12",
68
- r: "10",
69
- stroke: "currentColor",
70
- strokeWidth: "4"
71
- }
72
- ),
73
- /* @__PURE__ */ jsxRuntimeExports.jsx(
74
- "path",
75
- {
76
- className: "opacity-75",
77
- fill: "currentColor",
78
- d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"
79
- }
80
- )
81
- ]
82
- }
83
- );
84
- function CmsButton({
85
- variant = "primary",
86
- loading,
87
- disabled,
88
- children,
89
- className,
90
- asChild,
91
- ...props
92
- }) {
93
- const mappedVariant = variantMap[variant];
94
- const customClass = customVariantClasses[variant];
95
- if (asChild) {
96
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
97
- Button,
98
- {
99
- variant: mappedVariant,
100
- disabled: disabled || loading,
101
- className: cn(motion.fast, customClass, className),
102
- asChild: true,
103
- ...props,
104
- children
105
- }
106
- );
107
- }
108
- return /* @__PURE__ */ jsxRuntimeExports.jsxs(
109
- Button,
110
- {
111
- variant: mappedVariant,
112
- disabled: disabled || loading,
113
- className: cn(motion.fast, customClass, className),
114
- ...props,
115
- children: [
116
- loading && /* @__PURE__ */ jsxRuntimeExports.jsx(LoadingSpinner, {}),
117
- children
118
- ]
119
- }
120
- );
121
- }
122
- export {
123
- Badge as B,
124
- CmsButton as C
125
- };
@@ -1,290 +0,0 @@
1
- import { j as jsxRuntimeExports } from "../_chunks/_libs/react.mjs";
2
- import { R as Root, C as Content, a as Close, T as Title, P as Portal, O as Overlay, D as Description } from "../_chunks/_libs/@radix-ui/react-dialog.mjs";
3
- import { c as cn } from "./router-x6Ab8T4s.mjs";
4
- import { C as CmsButton } from "./CmsButton-DbzfJru_.mjs";
5
- import { C as Checkbox$1, a as CheckboxIndicator } from "../_chunks/_libs/@radix-ui/react-checkbox.mjs";
6
- import { _ as Check, X } from "../_libs/lucide-react.mjs";
7
- function Dialog({
8
- ...props
9
- }) {
10
- return /* @__PURE__ */ jsxRuntimeExports.jsx(Root, { "data-slot": "dialog", ...props });
11
- }
12
- function DialogPortal({
13
- ...props
14
- }) {
15
- return /* @__PURE__ */ jsxRuntimeExports.jsx(Portal, { "data-slot": "dialog-portal", ...props });
16
- }
17
- function DialogOverlay({
18
- className,
19
- ...props
20
- }) {
21
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
22
- Overlay,
23
- {
24
- "data-slot": "dialog-overlay",
25
- className: cn(
26
- "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",
27
- className
28
- ),
29
- ...props
30
- }
31
- );
32
- }
33
- function DialogContent({
34
- className,
35
- children,
36
- showCloseButton = true,
37
- ...props
38
- }) {
39
- return /* @__PURE__ */ jsxRuntimeExports.jsxs(DialogPortal, { "data-slot": "dialog-portal", children: [
40
- /* @__PURE__ */ jsxRuntimeExports.jsx(DialogOverlay, {}),
41
- /* @__PURE__ */ jsxRuntimeExports.jsxs(
42
- Content,
43
- {
44
- "data-slot": "dialog-content",
45
- className: cn(
46
- "bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 outline-none sm:max-w-lg",
47
- className
48
- ),
49
- ...props,
50
- children: [
51
- children,
52
- showCloseButton && /* @__PURE__ */ jsxRuntimeExports.jsxs(
53
- Close,
54
- {
55
- "data-slot": "dialog-close",
56
- className: "ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
57
- children: [
58
- /* @__PURE__ */ jsxRuntimeExports.jsx(X, {}),
59
- /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "sr-only", children: "Close" })
60
- ]
61
- }
62
- )
63
- ]
64
- }
65
- )
66
- ] });
67
- }
68
- function DialogHeader({ className, ...props }) {
69
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
70
- "div",
71
- {
72
- "data-slot": "dialog-header",
73
- className: cn("flex flex-col gap-2 text-center sm:text-left", className),
74
- ...props
75
- }
76
- );
77
- }
78
- function DialogFooter({ className, ...props }) {
79
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
80
- "div",
81
- {
82
- "data-slot": "dialog-footer",
83
- className: cn(
84
- "flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",
85
- className
86
- ),
87
- ...props
88
- }
89
- );
90
- }
91
- function DialogTitle({
92
- className,
93
- ...props
94
- }) {
95
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
96
- Title,
97
- {
98
- "data-slot": "dialog-title",
99
- className: cn("text-lg leading-none font-semibold", className),
100
- ...props
101
- }
102
- );
103
- }
104
- function DialogDescription({
105
- className,
106
- ...props
107
- }) {
108
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
109
- Description,
110
- {
111
- "data-slot": "dialog-description",
112
- className: cn("text-muted-foreground text-sm", className),
113
- ...props
114
- }
115
- );
116
- }
117
- const sizeClasses = {
118
- sm: "max-w-sm",
119
- md: "max-w-md",
120
- lg: "max-w-lg",
121
- xl: "max-w-xl",
122
- "2xl": "max-w-2xl"
123
- };
124
- function CmsDialog({
125
- open,
126
- onOpenChange,
127
- title,
128
- description,
129
- children,
130
- footer,
131
- size = "md",
132
- className
133
- }) {
134
- return /* @__PURE__ */ jsxRuntimeExports.jsx(Dialog, { open, onOpenChange, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
135
- DialogContent,
136
- {
137
- className: cn(
138
- "flex max-h-[85vh] flex-col overflow-hidden",
139
- sizeClasses[size],
140
- className
141
- ),
142
- children: [
143
- /* @__PURE__ */ jsxRuntimeExports.jsxs(DialogHeader, { className: "shrink-0", children: [
144
- /* @__PURE__ */ jsxRuntimeExports.jsx(DialogTitle, { children: title }),
145
- description && /* @__PURE__ */ jsxRuntimeExports.jsx(DialogDescription, { children: description })
146
- ] }),
147
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "min-h-0 flex-1 py-4 scrollbar-none", children }),
148
- footer && /* @__PURE__ */ jsxRuntimeExports.jsx(DialogFooter, { className: "shrink-0 border-t pt-4", children: footer })
149
- ]
150
- }
151
- ) });
152
- }
153
- function CmsConfirmDialog({
154
- open,
155
- onOpenChange,
156
- title,
157
- description,
158
- confirmLabel = "Confirm",
159
- cancelLabel = "Cancel",
160
- onConfirm,
161
- onCancel,
162
- variant = "default",
163
- loading,
164
- isLoading,
165
- error
166
- }) {
167
- const isLoadingState = loading ?? isLoading ?? false;
168
- const handleCancel = () => {
169
- onCancel?.();
170
- onOpenChange(false);
171
- };
172
- const handleConfirm = () => {
173
- onConfirm();
174
- };
175
- const getButtonVariant = () => {
176
- if (variant === "danger") return "danger";
177
- if (variant === "warning") return "warning";
178
- return "primary";
179
- };
180
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
181
- CmsDialog,
182
- {
183
- open,
184
- onOpenChange,
185
- title,
186
- size: "sm",
187
- footer: /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
188
- /* @__PURE__ */ jsxRuntimeExports.jsx(CmsButton, { variant: "outline", onClick: handleCancel, disabled: isLoadingState, children: cancelLabel }),
189
- /* @__PURE__ */ jsxRuntimeExports.jsx(
190
- CmsButton,
191
- {
192
- variant: getButtonVariant(),
193
- onClick: handleConfirm,
194
- loading: isLoadingState,
195
- children: confirmLabel
196
- }
197
- )
198
- ] }),
199
- children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "space-y-3", children: [
200
- /* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-sm text-muted-foreground", children: description }),
201
- error && /* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-sm text-destructive", children: error })
202
- ] })
203
- }
204
- );
205
- }
206
- function Input({ className, type, ...props }) {
207
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
208
- "input",
209
- {
210
- type,
211
- "data-slot": "input",
212
- className: cn(
213
- "file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
214
- "focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]",
215
- "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
216
- className
217
- ),
218
- ...props
219
- }
220
- );
221
- }
222
- function Checkbox({
223
- className,
224
- ...props
225
- }) {
226
- return /* @__PURE__ */ jsxRuntimeExports.jsx(
227
- Checkbox$1,
228
- {
229
- "data-slot": "checkbox",
230
- className: cn(
231
- "peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",
232
- className
233
- ),
234
- ...props,
235
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(
236
- CheckboxIndicator,
237
- {
238
- "data-slot": "checkbox-indicator",
239
- className: "grid place-content-center text-current transition-none",
240
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(Check, { className: "size-3.5" })
241
- }
242
- )
243
- }
244
- );
245
- }
246
- function CmsEmptyState({
247
- icon,
248
- title,
249
- description,
250
- action,
251
- className,
252
- ...props
253
- }) {
254
- return /* @__PURE__ */ jsxRuntimeExports.jsxs(
255
- "div",
256
- {
257
- className: cn(
258
- "flex flex-col items-center justify-center py-12 text-center",
259
- className
260
- ),
261
- ...props,
262
- children: [
263
- icon && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "mb-4 flex size-12 items-center justify-center rounded-full bg-muted text-muted-foreground", children: icon }),
264
- /* @__PURE__ */ jsxRuntimeExports.jsx("h3", { className: "text-base font-semibold text-foreground", children: title }),
265
- description && /* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "mt-1 max-w-sm text-sm text-muted-foreground", children: description }),
266
- action && /* @__PURE__ */ jsxRuntimeExports.jsx(
267
- CmsButton,
268
- {
269
- variant: action.variant ?? "primary",
270
- onClick: action.onClick,
271
- className: "mt-4",
272
- children: action.label
273
- }
274
- )
275
- ]
276
- }
277
- );
278
- }
279
- export {
280
- CmsEmptyState as C,
281
- Dialog as D,
282
- Input as I,
283
- Checkbox as a,
284
- CmsConfirmDialog as b,
285
- CmsDialog as c,
286
- DialogContent as d,
287
- DialogHeader as e,
288
- DialogTitle as f,
289
- DialogFooter as g
290
- };