convex-cms 0.0.7 → 0.0.9-alpha.1

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 (154) hide show
  1. package/README.md +16 -6
  2. package/admin/src/components/BulkActionBar.tsx +6 -5
  3. package/admin/src/components/ContentEntryEditor.tsx +10 -9
  4. package/admin/src/components/ContentTypeFormModal.tsx +4 -3
  5. package/admin/src/components/Sidebar.tsx +3 -2
  6. package/admin/src/components/TaxonomyEditor.tsx +4 -3
  7. package/admin/src/components/TermTree.tsx +8 -6
  8. package/admin/src/components/VersionCompare.tsx +3 -2
  9. package/admin/src/components/VersionHistory.tsx +4 -3
  10. package/admin/src/components/fields/CategoryField.tsx +3 -2
  11. package/admin/src/components/fields/MediaField.tsx +6 -5
  12. package/admin/src/components/fields/ReferenceField.tsx +6 -5
  13. package/admin/src/components/fields/TagField.tsx +5 -4
  14. package/admin/src/components/filters/TaxonomyFilter.tsx +4 -3
  15. package/admin/src/components/media/MediaAssetEditDialog.tsx +4 -3
  16. package/admin/src/components/media/MediaFolderEditDialog.tsx +3 -2
  17. package/admin/src/components/media/MediaMoveModal.tsx +4 -3
  18. package/admin/src/components/media/MediaTaxonomyPicker.tsx +6 -5
  19. package/admin/src/contexts/SettingsConfigContext.tsx +19 -5
  20. package/admin/src/embed/contexts/ApiContext.tsx +6 -2
  21. package/admin/src/routes/__root.tsx +7 -3
  22. package/admin-dist/nitro.json +1 -1
  23. package/admin-dist/public/assets/{CmsEmptyState-6-PLaXtD.js → CmsEmptyState-BM4e6N83.js} +1 -1
  24. package/admin-dist/public/assets/{CmsPageHeader-SoF4Epu9.js → CmsPageHeader-uor3DPIk.js} +1 -1
  25. package/admin-dist/public/assets/{CmsStatusBadge-D7kYaohx.js → CmsStatusBadge-D8N18LJx.js} +1 -1
  26. package/admin-dist/public/assets/{CmsSurface-BvksBm6W.js → CmsSurface-BEcY-WpI.js} +1 -1
  27. package/admin-dist/public/assets/{CmsToolbar-DlZPMe2B.js → CmsToolbar-DE-bu3W8.js} +1 -1
  28. package/admin-dist/public/assets/ContentEntryEditor-BdkIMCUk.js +4 -0
  29. package/admin-dist/public/assets/TaxonomyFilter-a1-O9DPs.js +1 -0
  30. package/admin-dist/public/assets/{_contentTypeId-DTv8UoTp.js → _contentTypeId-XIkYOLyY.js} +1 -1
  31. package/admin-dist/public/assets/{_entryId-D3lr5Dvy.js → _entryId-DyP15QpI.js} +1 -1
  32. package/admin-dist/public/assets/{alert-BAHTL6ao.js → alert-DHBQuuib.js} +1 -1
  33. package/admin-dist/public/assets/{badge-oJv4Eai8.js → badge-BOhWFWzb.js} +1 -1
  34. package/admin-dist/public/assets/{circle-check-big-3OHxNDhO.js → circle-check-big-DjTNapen.js} +1 -1
  35. package/admin-dist/public/assets/{command-DwgQs69u.js → command-BIc5_8gL.js} +1 -1
  36. package/admin-dist/public/assets/content-C3N8Ugra.js +1 -0
  37. package/admin-dist/public/assets/content-types-D0wh1eUF.js +1 -0
  38. package/admin-dist/public/assets/{index-DOkgTSx0.js → index-B-g3F_ri.js} +1 -1
  39. package/admin-dist/public/assets/main-BapBJgQD.js +102 -0
  40. package/admin-dist/public/assets/media-8uh1MwDi.js +1 -0
  41. package/admin-dist/public/assets/{new._contentTypeId-VF63rpic.js → new._contentTypeId-S96rFbgY.js} +1 -1
  42. package/admin-dist/public/assets/{pencil-CX1CiTDD.js → pencil-DgaZav4e.js} +1 -1
  43. package/admin-dist/public/assets/{refresh-cw-Cm-YOeFI.js → refresh-cw-BBut4hAU.js} +1 -1
  44. package/admin-dist/public/assets/{rotate-ccw-B45JsL5f.js → rotate-ccw-DVCkojZZ.js} +1 -1
  45. package/admin-dist/public/assets/{scroll-area-b3A1HHR7.js → scroll-area-DPC4uXzf.js} +1 -1
  46. package/admin-dist/public/assets/{search-DKKh_DdH.js → search-CSyHHglh.js} +1 -1
  47. package/admin-dist/public/assets/{settings-CGVDEV1r.js → settings-cEqPsoJ0.js} +1 -1
  48. package/admin-dist/public/assets/{switch-BTMY8Qnk.js → switch-O2BviO8Q.js} +1 -1
  49. package/admin-dist/public/assets/{tabs-DUQwUoIb.js → tabs-p1MWhOqY.js} +1 -1
  50. package/admin-dist/public/assets/{tanstack-adapter-f7AHmQ5L.js → tanstack-adapter-CDrxoPZD.js} +1 -1
  51. package/admin-dist/public/assets/taxonomies-DJ9UbjXW.js +1 -0
  52. package/admin-dist/public/assets/{trash-D7e0uKd9.js → trash-RnpP6lXF.js} +1 -1
  53. package/admin-dist/public/assets/{useBreadcrumbLabel-CF2KYwsw.js → useBreadcrumbLabel-zbIWXlkc.js} +1 -1
  54. package/admin-dist/public/assets/{usePermissions-DWBImEOW.js → usePermissions-4CTlK-vU.js} +1 -1
  55. package/admin-dist/server/_chunks/_libs/@floating-ui/core.mjs +71 -65
  56. package/admin-dist/server/_chunks/_libs/@floating-ui/dom.mjs +1 -1
  57. package/admin-dist/server/_chunks/_libs/@floating-ui/utils.mjs +8 -8
  58. package/admin-dist/server/_chunks/_libs/@tanstack/react-router.mjs +12 -30
  59. package/admin-dist/server/_chunks/_libs/@tanstack/react-store.mjs +1 -56
  60. package/admin-dist/server/_chunks/_libs/@tanstack/router-core.mjs +130 -114
  61. package/admin-dist/server/_chunks/_libs/@tanstack/store.mjs +1 -134
  62. package/admin-dist/server/_chunks/_libs/react-dom.mjs +5 -5
  63. package/admin-dist/server/_chunks/_libs/react.mjs +1 -1
  64. package/admin-dist/server/_libs/isbot.mjs +1 -1
  65. package/admin-dist/server/_libs/use-sync-external-store.mjs +1 -76
  66. package/admin-dist/server/_ssr/{CmsEmptyState-BM8DghTl.mjs → CmsEmptyState-BA0Lc5xs.mjs} +1 -1
  67. package/admin-dist/server/_ssr/{CmsPageHeader-BHUmrIWD.mjs → CmsPageHeader-PMyecILZ.mjs} +1 -1
  68. package/admin-dist/server/_ssr/{CmsStatusBadge-D0Zb0oRl.mjs → CmsStatusBadge-CInuN2bZ.mjs} +2 -2
  69. package/admin-dist/server/_ssr/{CmsSurface-B2eBr-47.mjs → CmsSurface-CH1PIfcS.mjs} +1 -1
  70. package/admin-dist/server/_ssr/{CmsToolbar-BCrwg7OL.mjs → CmsToolbar-IuhSA7gR.mjs} +1 -1
  71. package/admin-dist/server/_ssr/{ContentEntryEditor-Cjfm0uhr.mjs → ContentEntryEditor-Bzhir4fQ.mjs} +38 -31
  72. package/admin-dist/server/_ssr/{TaxonomyFilter-C4pD0kfM.mjs → TaxonomyFilter-r4izSMBh.mjs} +6 -5
  73. package/admin-dist/server/_ssr/{_contentTypeId-CiDiX-p7.mjs → _contentTypeId-BWEbjqxY.mjs} +11 -13
  74. package/admin-dist/server/_ssr/{_entryId-9GxatOkL.mjs → _entryId-B5xoXoJf.mjs} +12 -14
  75. package/admin-dist/server/_ssr/_tanstack-start-manifest_v-CBTan6ii.mjs +4 -0
  76. package/admin-dist/server/_ssr/{badge-EI998zba.mjs → badge-DXrjBRqZ.mjs} +1 -1
  77. package/admin-dist/server/_ssr/{command-BLAWQhUw.mjs → command-Cj90OdCX.mjs} +1 -1
  78. package/admin-dist/server/_ssr/config.server-BOr7Jxr4.mjs +0 -3
  79. package/admin-dist/server/_ssr/{content-BHX39L4D.mjs → content-DKRI-YqL.mjs} +14 -15
  80. package/admin-dist/server/_ssr/{content-types-DCzrBhTH.mjs → content-types-BzgRcS8K.mjs} +7 -9
  81. package/admin-dist/server/_ssr/{index-DwM_5VNP.mjs → index-BPf6_agY.mjs} +4 -6
  82. package/admin-dist/server/_ssr/index.mjs +11 -10
  83. package/admin-dist/server/_ssr/{media-CbzgTRRQ.mjs → media-MpjxOZL8.mjs} +23 -21
  84. package/admin-dist/server/_ssr/{new._contentTypeId-6Ph-Gtlw.mjs → new._contentTypeId-DSb4qR9j.mjs} +11 -13
  85. package/admin-dist/server/_ssr/{router-vd1nySeP.mjs → router-Dk9ikPNc.mjs} +61 -47
  86. package/admin-dist/server/_ssr/{scroll-area--B9snFTJ.mjs → scroll-area-JwVD_6MZ.mjs} +1 -1
  87. package/admin-dist/server/_ssr/{settings-DlTO2JSj.mjs → settings-KVJNe0GM.mjs} +8 -10
  88. package/admin-dist/server/_ssr/{switch-C05NgNW0.mjs → switch-DvREvRv4.mjs} +1 -1
  89. package/admin-dist/server/_ssr/{tabs-DAk2J5xy.mjs → tabs-B0h57pFf.mjs} +1 -1
  90. package/admin-dist/server/_ssr/{tanstack-adapter-DWbaPByn.mjs → tanstack-adapter-gmM64LnW.mjs} +1 -1
  91. package/admin-dist/server/_ssr/{taxonomies-B8nqce6u.mjs → taxonomies-BbBNx260.mjs} +17 -16
  92. package/admin-dist/server/_ssr/{trash-zdlZgpTo.mjs → trash-JAzYGh7A.mjs} +8 -10
  93. package/admin-dist/server/_ssr/{useBreadcrumbLabel-DpEKyG1h.mjs → useBreadcrumbLabel-BWIujj97.mjs} +1 -1
  94. package/admin-dist/server/_ssr/{usePermissions-olYRd9S9.mjs → usePermissions-CcLDCSwa.mjs} +1 -1
  95. package/admin-dist/server/index.mjs +162 -162
  96. package/dist/cli/commands/init.d.ts.map +1 -1
  97. package/dist/cli/commands/init.js +18 -29
  98. package/dist/cli/commands/init.js.map +1 -1
  99. package/dist/cli/templates/admin.d.ts +4 -3
  100. package/dist/cli/templates/admin.d.ts.map +1 -1
  101. package/dist/cli/templates/admin.js +152 -195
  102. package/dist/cli/templates/admin.js.map +1 -1
  103. package/dist/cli/templates/cmsClient.d.ts +2 -2
  104. package/dist/cli/templates/cmsClient.d.ts.map +1 -1
  105. package/dist/cli/templates/cmsClient.js +58 -27
  106. package/dist/cli/templates/cmsClient.js.map +1 -1
  107. package/dist/cli/templates/content.d.ts +10 -0
  108. package/dist/cli/templates/content.d.ts.map +1 -0
  109. package/dist/cli/templates/content.js +257 -0
  110. package/dist/cli/templates/content.js.map +1 -0
  111. package/dist/cli/templates/index.d.ts +3 -2
  112. package/dist/cli/templates/index.d.ts.map +1 -1
  113. package/dist/cli/templates/index.js +3 -2
  114. package/dist/cli/templates/index.js.map +1 -1
  115. package/dist/cli/templates/schemas/blog.d.ts +4 -3
  116. package/dist/cli/templates/schemas/blog.d.ts.map +1 -1
  117. package/dist/cli/templates/schemas/blog.js +44 -13
  118. package/dist/cli/templates/schemas/blog.js.map +1 -1
  119. package/dist/cli/templates/schemas/docs.d.ts +4 -3
  120. package/dist/cli/templates/schemas/docs.d.ts.map +1 -1
  121. package/dist/cli/templates/schemas/docs.js +43 -12
  122. package/dist/cli/templates/schemas/docs.js.map +1 -1
  123. package/dist/cli/templates/schemas/index.d.ts +6 -4
  124. package/dist/cli/templates/schemas/index.d.ts.map +1 -1
  125. package/dist/cli/templates/schemas/index.js +6 -4
  126. package/dist/cli/templates/schemas/index.js.map +1 -1
  127. package/dist/cli/templates/schemas/landing.d.ts +4 -3
  128. package/dist/cli/templates/schemas/landing.d.ts.map +1 -1
  129. package/dist/cli/templates/schemas/landing.js +62 -15
  130. package/dist/cli/templates/schemas/landing.js.map +1 -1
  131. package/dist/cli/utils/fileUtils.d.ts.map +1 -1
  132. package/dist/cli/utils/fileUtils.js +6 -5
  133. package/dist/cli/utils/fileUtils.js.map +1 -1
  134. package/dist/client/admin/index.d.ts +2 -1
  135. package/dist/client/admin/index.d.ts.map +1 -1
  136. package/dist/client/admin/index.js.map +1 -1
  137. package/dist/client/admin/types.d.ts +14 -1
  138. package/dist/client/admin/types.d.ts.map +1 -1
  139. package/dist/client/index.d.ts +1 -1
  140. package/dist/client/index.d.ts.map +1 -1
  141. package/dist/client/index.js.map +1 -1
  142. package/dist/react/index.d.ts +176 -0
  143. package/dist/react/index.d.ts.map +1 -1
  144. package/dist/react/index.js +162 -0
  145. package/dist/react/index.js.map +1 -1
  146. package/package.json +2 -2
  147. package/admin-dist/public/assets/ContentEntryEditor-C6n9xLS9.js +0 -4
  148. package/admin-dist/public/assets/TaxonomyFilter-CFX1_g8s.js +0 -1
  149. package/admin-dist/public/assets/content-CKQ4QwW2.js +0 -1
  150. package/admin-dist/public/assets/content-types-BrttaLpc.js +0 -1
  151. package/admin-dist/public/assets/main-DV6oxWnU.js +0 -102
  152. package/admin-dist/public/assets/media-B2i-mCbx.js +0 -1
  153. package/admin-dist/public/assets/taxonomies-DvMppdiD.js +0 -1
  154. package/admin-dist/server/_ssr/_tanstack-start-manifest_v-CC7UrHKE.mjs +0 -4
@@ -1,13 +1,12 @@
1
1
  import { j as jsxRuntimeExports, r as reactExports } from "../_chunks/_libs/react.mjs";
2
- import { h as api, B as Button, f as cn } from "./router-vd1nySeP.mjs";
3
- import { C as CmsPageHeader } from "./CmsPageHeader-BHUmrIWD.mjs";
4
- import { u as useTanStackNavigation, A as Alert, b as AlertTitle, a as AlertDescription } from "./tanstack-adapter-DWbaPByn.mjs";
2
+ import { h as api, B as Button, f as cn } from "./router-Dk9ikPNc.mjs";
3
+ import { C as CmsPageHeader } from "./CmsPageHeader-PMyecILZ.mjs";
4
+ import { u as useTanStackNavigation, A as Alert, b as AlertTitle, a as AlertDescription } from "./tanstack-adapter-gmM64LnW.mjs";
5
5
  import { u as useQuery, d as useMutation } from "../_libs/convex.mjs";
6
6
  import { Q as FileText, O as Image, a as Layers, J as Settings, am as TrendingUp, j as CircleAlert, an as CircleX, a0 as TriangleAlert, ao as RefreshCw } from "../_libs/lucide-react.mjs";
7
7
  import "../_chunks/_libs/@tanstack/react-router.mjs";
8
8
  import "../_libs/tiny-warning.mjs";
9
9
  import "../_chunks/_libs/@tanstack/router-core.mjs";
10
- import "../_chunks/_libs/@tanstack/store.mjs";
11
10
  import "../_chunks/_libs/@tanstack/history.mjs";
12
11
  import "../_libs/tiny-invariant.mjs";
13
12
  import "node:stream/web";
@@ -18,8 +17,6 @@ import "crypto";
18
17
  import "async_hooks";
19
18
  import "stream";
20
19
  import "../_libs/isbot.mjs";
21
- import "../_chunks/_libs/@tanstack/react-store.mjs";
22
- import "../_libs/use-sync-external-store.mjs";
23
20
  import "../_libs/clsx.mjs";
24
21
  import "../_libs/tailwind-merge.mjs";
25
22
  import "../_chunks/_libs/@radix-ui/react-collapsible.mjs";
@@ -68,6 +65,7 @@ import "../_chunks/_libs/@radix-ui/react-menu.mjs";
68
65
  import "../_chunks/_libs/@radix-ui/react-roving-focus.mjs";
69
66
  import "../_chunks/_libs/@radix-ui/react-avatar.mjs";
70
67
  import "../_chunks/_libs/@radix-ui/react-use-is-hydrated.mjs";
68
+ import "../_libs/use-sync-external-store.mjs";
71
69
  import "../_chunks/_libs/@radix-ui/react-popover.mjs";
72
70
  import "./index.mjs";
73
71
  import "node:async_hooks";
@@ -1,7 +1,7 @@
1
1
  import { AsyncLocalStorage } from "node:async_hooks";
2
2
  import { j as jsxRuntimeExports } from "../_chunks/_libs/react.mjs";
3
3
  import { r as renderRouterToStream, R as RouterProvider } from "../_chunks/_libs/@tanstack/react-router.mjs";
4
- import { p as defineHandlerCallback } from "../_chunks/_libs/@tanstack/router-core.mjs";
4
+ import { o as defineHandlerCallback } from "../_chunks/_libs/@tanstack/router-core.mjs";
5
5
  import "../_libs/tiny-warning.mjs";
6
6
  import "../_libs/tiny-invariant.mjs";
7
7
  import "node:stream";
@@ -11,9 +11,6 @@ import "crypto";
11
11
  import "async_hooks";
12
12
  import "stream";
13
13
  import "../_libs/isbot.mjs";
14
- import "../_chunks/_libs/@tanstack/react-store.mjs";
15
- import "../_libs/use-sync-external-store.mjs";
16
- import "../_chunks/_libs/@tanstack/store.mjs";
17
14
  import "../_chunks/_libs/@tanstack/history.mjs";
18
15
  import "node:stream/web";
19
16
  function StartServer(props) {
@@ -297,18 +294,19 @@ function splitSetCookieString(cookiesString) {
297
294
  }
298
295
  function toHeadersInstance(init) {
299
296
  if (init instanceof Headers) {
300
- return new Headers(init);
297
+ return init;
301
298
  } else if (Array.isArray(init)) {
302
299
  return new Headers(init);
303
300
  } else if (typeof init === "object") {
304
301
  return new Headers(init);
305
302
  } else {
306
- return new Headers();
303
+ return null;
307
304
  }
308
305
  }
309
306
  function mergeHeaders(...headers) {
310
307
  return headers.reduce((acc, header) => {
311
308
  const headersInstance = toHeadersInstance(header);
309
+ if (!headersInstance) return acc;
312
310
  for (const [key, value] of headersInstance.entries()) {
313
311
  if (key === "set-cookie") {
314
312
  const splitCookies = splitSetCookieString(value);
@@ -362,6 +360,9 @@ function isDangerousProtocol(url) {
362
360
  }
363
361
  function decodePath(path, decodeIgnore) {
364
362
  if (!path) return path;
363
+ if (!/[%\\\x00-\x1f\x7f]/.test(path) && !path.startsWith("//")) {
364
+ return path;
365
+ }
365
366
  const re2 = /%25|%5C/gi;
366
367
  let cursor = 0;
367
368
  let result = "";
@@ -442,12 +443,12 @@ function createLRUCache(max) {
442
443
  const rootRouteId = "__root__";
443
444
  function redirect(opts) {
444
445
  opts.statusCode = opts.statusCode || opts.code || 307;
445
- if (typeof opts.href === "string" && isDangerousProtocol(opts.href)) {
446
+ if (!opts._builtLocation && typeof opts.href === "string" && isDangerousProtocol(opts.href)) {
446
447
  throw new Error(
447
448
  `Redirect blocked: unsafe protocol in href "${opts.href}". Only ${SAFE_URL_PROTOCOLS.join(", ")} protocols are allowed.`
448
449
  );
449
450
  }
450
- if (!opts.reloadDocument && typeof opts.href === "string") {
451
+ if (!opts._builtLocation && !opts.reloadDocument && typeof opts.href === "string") {
451
452
  try {
452
453
  new URL(opts.href);
453
454
  opts.reloadDocument = true;
@@ -3837,7 +3838,7 @@ function getResponse() {
3837
3838
  return event.res;
3838
3839
  }
3839
3840
  async function getStartManifest(matchedRoutes) {
3840
- const { tsrStartManifest } = await import("./_tanstack-start-manifest_v-CC7UrHKE.mjs");
3841
+ const { tsrStartManifest } = await import("./_tanstack-start-manifest_v-CBTan6ii.mjs");
3841
3842
  const startManifest = tsrStartManifest();
3842
3843
  const rootRoute = startManifest.routes[rootRouteId] = startManifest.routes[rootRouteId] || {};
3843
3844
  rootRoute.assets = rootRoute.assets || [];
@@ -4312,7 +4313,7 @@ function getStartResponseHeaders(opts) {
4312
4313
  let entriesPromise;
4313
4314
  let manifestPromise;
4314
4315
  async function loadEntries() {
4315
- const routerEntry = await import("./router-vd1nySeP.mjs").then((n2) => n2.M);
4316
+ const routerEntry = await import("./router-Dk9ikPNc.mjs").then((n2) => n2.N);
4316
4317
  const startEntry = await import("./start-HYkvq4Ni.mjs");
4317
4318
  return { startEntry, routerEntry };
4318
4319
  }
@@ -1,19 +1,18 @@
1
1
  import { j as jsxRuntimeExports, r as reactExports } from "../_chunks/_libs/react.mjs";
2
- import { t as useSettingsConfig, h as api, f as cn, C as CmsButton, I as Input, S as Select, a as SelectTrigger, b as SelectValue, c as SelectContent, d as SelectItem, e as Checkbox, D as Dialog, k as DialogContent, r as DialogHeader, l as DialogTitle, L as Label, s as DialogFooter, g as CmsConfirmDialog, m as DropdownMenu, n as DropdownMenuTrigger, o as DropdownMenuContent, p as DropdownMenuItem, q as DropdownMenuSeparator, i as CmsDialog, T as Textarea, B as Button } from "./router-vd1nySeP.mjs";
3
- import { B as Badge } from "./badge-EI998zba.mjs";
4
- import { u as useTanStackNavigation } from "./tanstack-adapter-DWbaPByn.mjs";
5
- import { T as Tabs, a as TabsList, b as TabsTrigger, U as UploadDropzone } from "./tabs-DAk2J5xy.mjs";
6
- import { C as CmsPageHeader } from "./CmsPageHeader-BHUmrIWD.mjs";
7
- import { C as CmsToolbar } from "./CmsToolbar-BCrwg7OL.mjs";
8
- import { C as CmsEmptyState } from "./CmsEmptyState-BM8DghTl.mjs";
9
- import { T as TaxonomyFilter } from "./TaxonomyFilter-C4pD0kfM.mjs";
2
+ import { v as useSettingsConfig, h as api, f as cn, C as CmsButton, I as Input, S as Select, a as SelectTrigger, b as SelectValue, c as SelectContent, d as SelectItem, e as Checkbox, D as Dialog, l as DialogContent, s as DialogHeader, m as DialogTitle, L as Label, t as DialogFooter, g as CmsConfirmDialog, n as DropdownMenu, o as DropdownMenuTrigger, p as DropdownMenuContent, q as DropdownMenuItem, r as DropdownMenuSeparator, u as useApi, i as CmsDialog, T as Textarea, B as Button } from "./router-Dk9ikPNc.mjs";
3
+ import { B as Badge } from "./badge-DXrjBRqZ.mjs";
4
+ import { u as useTanStackNavigation } from "./tanstack-adapter-gmM64LnW.mjs";
5
+ import { T as Tabs, a as TabsList, b as TabsTrigger, U as UploadDropzone } from "./tabs-B0h57pFf.mjs";
6
+ import { C as CmsPageHeader } from "./CmsPageHeader-PMyecILZ.mjs";
7
+ import { C as CmsToolbar } from "./CmsToolbar-IuhSA7gR.mjs";
8
+ import { C as CmsEmptyState } from "./CmsEmptyState-BA0Lc5xs.mjs";
9
+ import { T as TaxonomyFilter } from "./TaxonomyFilter-r4izSMBh.mjs";
10
10
  import { a as VisuallyHidden } from "../_chunks/_libs/@radix-ui/react-visually-hidden.mjs";
11
11
  import { u as useQuery, d as useMutation } from "../_libs/convex.mjs";
12
12
  import { O as Image, I as Trash2, H as House, a9 as ChevronLeft, aa as FolderPlus, ab as Upload, a1 as Search, X, s as Folder, a2 as RotateCcw, ac as Ellipsis, a3 as Pencil, ad as FolderInput, ae as EllipsisVertical, k as Eye, af as Download, Z as Link2, ag as File, Q as FileText, ah as Music, ai as Video, aj as Copy, h as ChevronRight, W as Tag, L as LoaderCircle, P as Plus } from "../_libs/lucide-react.mjs";
13
13
  import "../_chunks/_libs/@tanstack/react-router.mjs";
14
14
  import "../_libs/tiny-warning.mjs";
15
15
  import "../_chunks/_libs/@tanstack/router-core.mjs";
16
- import "../_chunks/_libs/@tanstack/store.mjs";
17
16
  import "../_chunks/_libs/@tanstack/history.mjs";
18
17
  import "../_libs/tiny-invariant.mjs";
19
18
  import "node:stream/web";
@@ -24,8 +23,6 @@ import "crypto";
24
23
  import "async_hooks";
25
24
  import "stream";
26
25
  import "../_libs/isbot.mjs";
27
- import "../_chunks/_libs/@tanstack/react-store.mjs";
28
- import "../_libs/use-sync-external-store.mjs";
29
26
  import "../_libs/clsx.mjs";
30
27
  import "../_libs/tailwind-merge.mjs";
31
28
  import "../_chunks/_libs/@radix-ui/react-collapsible.mjs";
@@ -73,12 +70,13 @@ import "../_chunks/_libs/@radix-ui/react-menu.mjs";
73
70
  import "../_chunks/_libs/@radix-ui/react-roving-focus.mjs";
74
71
  import "../_chunks/_libs/@radix-ui/react-avatar.mjs";
75
72
  import "../_chunks/_libs/@radix-ui/react-use-is-hydrated.mjs";
73
+ import "../_libs/use-sync-external-store.mjs";
76
74
  import "../_chunks/_libs/@radix-ui/react-popover.mjs";
77
75
  import "./index.mjs";
78
76
  import "node:async_hooks";
79
77
  import "../_libs/zod.mjs";
80
78
  import "../_chunks/_libs/@radix-ui/react-tabs.mjs";
81
- import "./command-BLAWQhUw.mjs";
79
+ import "./command-Cj90OdCX.mjs";
82
80
  import "../_libs/cmdk.mjs";
83
81
  function CmsField({
84
82
  label,
@@ -379,6 +377,7 @@ function MediaTaxonomyPicker({
379
377
  disabled = false,
380
378
  className = ""
381
379
  }) {
380
+ const api2 = useApi();
382
381
  const [inputValue, setInputValue] = reactExports.useState("");
383
382
  const [showSuggestions, setShowSuggestions] = reactExports.useState(false);
384
383
  const [activeSuggestionIndex, setActiveSuggestionIndex] = reactExports.useState(0);
@@ -387,20 +386,20 @@ function MediaTaxonomyPicker({
387
386
  const inputRef = reactExports.useRef(null);
388
387
  const suggestionsRef = reactExports.useRef(null);
389
388
  const containerRef = reactExports.useRef(null);
390
- const currentTerms = useQuery(api.admin.getTermsByMedia, {
389
+ const currentTerms = useQuery(api2.getTermsByMedia, {
391
390
  mediaId,
392
391
  taxonomyId
393
392
  });
394
393
  const selectedTermIds = currentTerms?.map((t) => t._id) ?? [];
395
- const suggestionsResult = useQuery(api.admin.suggestTerms, {
394
+ const suggestionsResult = useQuery(api2.suggestTerms, {
396
395
  taxonomyId,
397
396
  query: inputValue,
398
397
  limit: 10,
399
398
  excludeIds: selectedTermIds
400
399
  });
401
400
  const suggestions = suggestionsResult ?? [];
402
- const setMediaTermsMutation = useMutation(api.admin.setMediaTerms);
403
- const createTermMutation = useMutation(api.admin.createTermAndAddToMedia);
401
+ const setMediaTermsMutation = useMutation(api2.setMediaTerms);
402
+ const createTermMutation = useMutation(api2.createTermAndAddToMedia);
404
403
  reactExports.useEffect(() => {
405
404
  function handleClickOutside(event) {
406
405
  if (containerRef.current && !containerRef.current.contains(event.target)) {
@@ -644,6 +643,7 @@ function MediaAssetEditDialog({
644
643
  onOpenChange,
645
644
  onSaved
646
645
  }) {
646
+ const api2 = useApi();
647
647
  const [name, setName] = reactExports.useState("");
648
648
  const [title, setTitle] = reactExports.useState("");
649
649
  const [description, setDescription] = reactExports.useState("");
@@ -651,8 +651,8 @@ function MediaAssetEditDialog({
651
651
  const [tagsInput, setTagsInput] = reactExports.useState("");
652
652
  const [isSaving, setIsSaving] = reactExports.useState(false);
653
653
  const [error, setError] = reactExports.useState("");
654
- const updateAsset = useMutation(api.admin.updateMediaAsset);
655
- const taxonomiesResult = useQuery(api.admin.listTaxonomies, {
654
+ const updateAsset = useMutation(api2.updateMediaAsset);
655
+ const taxonomiesResult = useQuery(api2.listTaxonomies, {
656
656
  isActive: true,
657
657
  paginationOpts: { numItems: 50, cursor: null }
658
658
  });
@@ -827,11 +827,12 @@ function MediaFolderEditDialog({
827
827
  onOpenChange,
828
828
  onSaved
829
829
  }) {
830
+ const api2 = useApi();
830
831
  const [name, setName] = reactExports.useState("");
831
832
  const [description, setDescription] = reactExports.useState("");
832
833
  const [isSaving, setIsSaving] = reactExports.useState(false);
833
834
  const [error, setError] = reactExports.useState("");
834
- const updateFolder = useMutation(api.admin.updateMediaFolder);
835
+ const updateFolder = useMutation(api2.updateMediaFolder);
835
836
  reactExports.useEffect(() => {
836
837
  if (folder) {
837
838
  setName(folder.name);
@@ -1135,13 +1136,14 @@ function MediaMoveModal({
1135
1136
  currentFolderId,
1136
1137
  onMoved
1137
1138
  }) {
1139
+ const api2 = useApi();
1138
1140
  const [selectedFolderId, setSelectedFolderId] = reactExports.useState(
1139
1141
  void 0
1140
1142
  );
1141
1143
  const [isMoving, setIsMoving] = reactExports.useState(false);
1142
1144
  const [error, setError] = reactExports.useState("");
1143
- const folderTree = useQuery(api.admin.getMediaFolderTree, {});
1144
- const moveAssets = useMutation(api.admin.moveMediaAssets);
1145
+ const folderTree = useQuery(api2.getMediaFolderTree, {});
1146
+ const moveAssets = useMutation(api2.moveMediaAssets);
1145
1147
  const sortedFolders = reactExports.useMemo(() => {
1146
1148
  if (!folderTree) return [];
1147
1149
  const buildTree = (parentId, depth) => {
@@ -1,14 +1,13 @@
1
1
  import { j as jsxRuntimeExports } from "../_chunks/_libs/react.mjs";
2
2
  import { d as useNavigate } from "../_chunks/_libs/@tanstack/react-router.mjs";
3
- import { H as Route, h as api } from "./router-vd1nySeP.mjs";
4
- import { C as ContentEntryEditor } from "./ContentEntryEditor-Cjfm0uhr.mjs";
5
- import { u as useBreadcrumbLabel } from "./useBreadcrumbLabel-DpEKyG1h.mjs";
6
- import { C as CmsEmptyState } from "./CmsEmptyState-BM8DghTl.mjs";
3
+ import { J as Route, h as api } from "./router-Dk9ikPNc.mjs";
4
+ import { C as ContentEntryEditor } from "./ContentEntryEditor-Bzhir4fQ.mjs";
5
+ import { u as useBreadcrumbLabel } from "./useBreadcrumbLabel-BWIujj97.mjs";
6
+ import { C as CmsEmptyState } from "./CmsEmptyState-BA0Lc5xs.mjs";
7
7
  import { u as useQuery } from "../_libs/convex.mjs";
8
8
  import { Q as FileText } from "../_libs/lucide-react.mjs";
9
9
  import "../_libs/tiny-warning.mjs";
10
10
  import "../_chunks/_libs/@tanstack/router-core.mjs";
11
- import "../_chunks/_libs/@tanstack/store.mjs";
12
11
  import "../_chunks/_libs/@tanstack/history.mjs";
13
12
  import "../_libs/tiny-invariant.mjs";
14
13
  import "node:stream/web";
@@ -19,8 +18,6 @@ import "crypto";
19
18
  import "async_hooks";
20
19
  import "stream";
21
20
  import "../_libs/isbot.mjs";
22
- import "../_chunks/_libs/@tanstack/react-store.mjs";
23
- import "../_libs/use-sync-external-store.mjs";
24
21
  import "../_libs/clsx.mjs";
25
22
  import "../_libs/tailwind-merge.mjs";
26
23
  import "../_chunks/_libs/@radix-ui/react-collapsible.mjs";
@@ -69,20 +66,21 @@ import "../_chunks/_libs/@radix-ui/react-menu.mjs";
69
66
  import "../_chunks/_libs/@radix-ui/react-roving-focus.mjs";
70
67
  import "../_chunks/_libs/@radix-ui/react-avatar.mjs";
71
68
  import "../_chunks/_libs/@radix-ui/react-use-is-hydrated.mjs";
69
+ import "../_libs/use-sync-external-store.mjs";
72
70
  import "../_chunks/_libs/@radix-ui/react-popover.mjs";
73
71
  import "./index.mjs";
74
72
  import "node:async_hooks";
75
73
  import "../_libs/zod.mjs";
76
- import "./switch-C05NgNW0.mjs";
74
+ import "./switch-DvREvRv4.mjs";
77
75
  import "../_chunks/_libs/@radix-ui/react-switch.mjs";
78
76
  import "../_chunks/_libs/@radix-ui/react-separator.mjs";
79
- import "./tabs-DAk2J5xy.mjs";
77
+ import "./tabs-B0h57pFf.mjs";
80
78
  import "../_chunks/_libs/@radix-ui/react-tabs.mjs";
81
- import "./command-BLAWQhUw.mjs";
79
+ import "./command-Cj90OdCX.mjs";
82
80
  import "../_libs/cmdk.mjs";
83
- import "./badge-EI998zba.mjs";
84
- import "./CmsStatusBadge-D0Zb0oRl.mjs";
85
- import "./scroll-area--B9snFTJ.mjs";
81
+ import "./badge-DXrjBRqZ.mjs";
82
+ import "./CmsStatusBadge-CInuN2bZ.mjs";
83
+ import "./scroll-area-JwVD_6MZ.mjs";
86
84
  import "../_chunks/_libs/@radix-ui/react-scroll-area.mjs";
87
85
  import "../_libs/react-day-picker.mjs";
88
86
  import "../_libs/date-fns.mjs";
@@ -18,7 +18,6 @@ import { L as LoaderCircle, a as Layers, H as House, B as Bell, C as CircleQuest
18
18
  import { o as object, b as boolean, s as string, _ as _enum, n as number, a as array, r as record } from "../_libs/zod.mjs";
19
19
  import "../_libs/tiny-warning.mjs";
20
20
  import "../_chunks/_libs/@tanstack/router-core.mjs";
21
- import "../_chunks/_libs/@tanstack/store.mjs";
22
21
  import "../_chunks/_libs/@tanstack/history.mjs";
23
22
  import "../_libs/tiny-invariant.mjs";
24
23
  import "node:stream/web";
@@ -29,8 +28,6 @@ import "crypto";
29
28
  import "async_hooks";
30
29
  import "stream";
31
30
  import "../_libs/isbot.mjs";
32
- import "../_chunks/_libs/@tanstack/react-store.mjs";
33
- import "../_libs/use-sync-external-store.mjs";
34
31
  import "../_chunks/_libs/@radix-ui/primitive.mjs";
35
32
  import "../_chunks/_libs/@radix-ui/react-context.mjs";
36
33
  import "../_chunks/_libs/@radix-ui/react-use-controllable-state.mjs";
@@ -68,6 +65,7 @@ import "../_chunks/_libs/@radix-ui/react-visually-hidden.mjs";
68
65
  import "../_chunks/_libs/@radix-ui/react-menu.mjs";
69
66
  import "../_chunks/_libs/@radix-ui/react-roving-focus.mjs";
70
67
  import "../_chunks/_libs/@radix-ui/react-use-is-hydrated.mjs";
68
+ import "../_libs/use-sync-external-store.mjs";
71
69
  import "node:async_hooks";
72
70
  const globalsCss = "/assets/globals-CoCRjt0K.css";
73
71
  function cn(...inputs) {
@@ -475,16 +473,13 @@ function useAdminConfig() {
475
473
  }
476
474
  return config;
477
475
  }
478
- const api = anyApi;
479
- componentsGeneric();
480
476
  const SettingsConfigContext = reactExports.createContext(null);
481
477
  function SettingsConfigProvider({
482
478
  baseConfig,
483
479
  children,
484
- api: api$1
480
+ api: api2
485
481
  }) {
486
- const resolvedApi = api$1 ?? api.admin;
487
- const settings = useQuery(resolvedApi.getSettings);
482
+ const settings = useQuery(api2?.getSettings ?? "skip");
488
483
  const mergedConfig = reactExports.useMemo(() => {
489
484
  if (!settings) return baseConfig;
490
485
  return {
@@ -586,6 +581,20 @@ function Icon({
586
581
  }
587
582
  return /* @__PURE__ */ jsxRuntimeExports.jsx(IconComponent, { className });
588
583
  }
584
+ const ApiContext = reactExports.createContext(null);
585
+ function ApiProvider({
586
+ api: api2,
587
+ children
588
+ }) {
589
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(ApiContext.Provider, { value: api2, children });
590
+ }
591
+ function useApi() {
592
+ const api2 = reactExports.useContext(ApiContext);
593
+ if (!api2) {
594
+ throw new Error("useApi must be used within ApiProvider");
595
+ }
596
+ return api2;
597
+ }
589
598
  const Collapsible = Root$1;
590
599
  const CollapsibleTrigger = CollapsibleTrigger$1;
591
600
  const CollapsibleContent = CollapsibleContent$1;
@@ -1283,8 +1292,9 @@ function ContentTypeFormModal({
1283
1292
  const [breakingChanges, setBreakingChanges] = reactExports.useState([]);
1284
1293
  const [showBreakingWarning, setShowBreakingWarning] = reactExports.useState(false);
1285
1294
  const [isForceUpdating, setIsForceUpdating] = reactExports.useState(false);
1286
- const createContentType = useMutation(api.admin.createContentType);
1287
- const updateContentType = useMutation(api.admin.updateContentType);
1295
+ const api2 = useApi();
1296
+ const createContentType = useMutation(api2.createContentType);
1297
+ const updateContentType = useMutation(api2.updateContentType);
1288
1298
  reactExports.useEffect(() => {
1289
1299
  if (contentType && isOpen) {
1290
1300
  setDisplayName(contentType.displayName);
@@ -2029,8 +2039,9 @@ function Sidebar() {
2029
2039
  const currentPath = routerState.location.pathname;
2030
2040
  const config = useAdminConfig();
2031
2041
  const { navItems, branding, layout } = config;
2042
+ const api2 = useApi();
2032
2043
  const [isCreateModalOpen, setIsCreateModalOpen] = reactExports.useState(false);
2033
- const contentTypesResult = useQuery(api.admin.listContentTypes, {
2044
+ const contentTypesResult = useQuery(api2.listContentTypes, {
2034
2045
  isActive: true
2035
2046
  });
2036
2047
  const contentTypes = contentTypesResult?.page ?? [];
@@ -2736,6 +2747,8 @@ const createSsrRpc = (functionId, importer) => {
2736
2747
  const getServerConfig = createServerFn({
2737
2748
  method: "GET"
2738
2749
  }).handler(createSsrRpc("dff4e5b7f7b29b6a323200a2df0a5335d739cf583e83c9e514598af6b5ade819"));
2750
+ const api = anyApi;
2751
+ componentsGeneric();
2739
2752
  const mockGetUser = () => {
2740
2753
  return {
2741
2754
  id: "mock_user_123",
@@ -2868,7 +2881,7 @@ function ConvexProviderWrapper({
2868
2881
  ] })
2869
2882
  ] }) });
2870
2883
  }
2871
- return /* @__PURE__ */ jsxRuntimeExports.jsx(ConvexProvider, { client: convex, children: /* @__PURE__ */ jsxRuntimeExports.jsx(SettingsConfigProvider, { baseConfig: adminConfig, children }) });
2884
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(ConvexProvider, { client: convex, children: /* @__PURE__ */ jsxRuntimeExports.jsx(ApiProvider, { api: api.admin, children: /* @__PURE__ */ jsxRuntimeExports.jsx(SettingsConfigProvider, { baseConfig: adminConfig, children }) }) });
2872
2885
  }
2873
2886
  function RootDocument({ children }) {
2874
2887
  return /* @__PURE__ */ jsxRuntimeExports.jsxs("html", { lang: "en", children: [
@@ -2879,43 +2892,43 @@ function RootDocument({ children }) {
2879
2892
  ] })
2880
2893
  ] });
2881
2894
  }
2882
- const $$splitComponentImporter$9 = () => import("./trash-zdlZgpTo.mjs");
2895
+ const $$splitComponentImporter$9 = () => import("./trash-JAzYGh7A.mjs");
2883
2896
  const Route$9 = createFileRoute("/trash")({
2884
2897
  component: lazyRouteComponent($$splitComponentImporter$9, "component")
2885
2898
  });
2886
- const $$splitComponentImporter$8 = () => import("./taxonomies-B8nqce6u.mjs");
2899
+ const $$splitComponentImporter$8 = () => import("./taxonomies-BbBNx260.mjs");
2887
2900
  const Route$8 = createFileRoute("/taxonomies")({
2888
2901
  component: lazyRouteComponent($$splitComponentImporter$8, "component")
2889
2902
  });
2890
- const $$splitComponentImporter$7 = () => import("./settings-DlTO2JSj.mjs");
2903
+ const $$splitComponentImporter$7 = () => import("./settings-KVJNe0GM.mjs");
2891
2904
  const Route$7 = createFileRoute("/settings")({
2892
2905
  component: lazyRouteComponent($$splitComponentImporter$7, "component")
2893
2906
  });
2894
- const $$splitComponentImporter$6 = () => import("./media-CbzgTRRQ.mjs");
2907
+ const $$splitComponentImporter$6 = () => import("./media-MpjxOZL8.mjs");
2895
2908
  const Route$6 = createFileRoute("/media")({
2896
2909
  component: lazyRouteComponent($$splitComponentImporter$6, "component")
2897
2910
  });
2898
- const $$splitComponentImporter$5 = () => import("./content-types-DCzrBhTH.mjs");
2911
+ const $$splitComponentImporter$5 = () => import("./content-types-BzgRcS8K.mjs");
2899
2912
  const Route$5 = createFileRoute("/content-types")({
2900
2913
  component: lazyRouteComponent($$splitComponentImporter$5, "component")
2901
2914
  });
2902
- const $$splitComponentImporter$4 = () => import("./content-BHX39L4D.mjs");
2915
+ const $$splitComponentImporter$4 = () => import("./content-DKRI-YqL.mjs");
2903
2916
  const Route$4 = createFileRoute("/content")({
2904
2917
  component: lazyRouteComponent($$splitComponentImporter$4, "component")
2905
2918
  });
2906
- const $$splitComponentImporter$3 = () => import("./index-DwM_5VNP.mjs");
2919
+ const $$splitComponentImporter$3 = () => import("./index-BPf6_agY.mjs");
2907
2920
  const Route$3 = createFileRoute("/")({
2908
2921
  component: lazyRouteComponent($$splitComponentImporter$3, "component")
2909
2922
  });
2910
- const $$splitComponentImporter$2 = () => import("./_entryId-9GxatOkL.mjs");
2923
+ const $$splitComponentImporter$2 = () => import("./_entryId-B5xoXoJf.mjs");
2911
2924
  const Route$2 = createFileRoute("/entries/$entryId")({
2912
2925
  component: lazyRouteComponent($$splitComponentImporter$2, "component")
2913
2926
  });
2914
- const $$splitComponentImporter$1 = () => import("./_contentTypeId-CiDiX-p7.mjs");
2927
+ const $$splitComponentImporter$1 = () => import("./_contentTypeId-BWEbjqxY.mjs");
2915
2928
  const Route$1 = createFileRoute("/entries/type/$contentTypeId")({
2916
2929
  component: lazyRouteComponent($$splitComponentImporter$1, "component")
2917
2930
  });
2918
- const $$splitComponentImporter = () => import("./new._contentTypeId-6Ph-Gtlw.mjs");
2931
+ const $$splitComponentImporter = () => import("./new._contentTypeId-DSb4qR9j.mjs");
2919
2932
  const Route = createFileRoute("/entries/new/$contentTypeId")({
2920
2933
  component: lazyRouteComponent($$splitComponentImporter, "component")
2921
2934
  });
@@ -2995,19 +3008,20 @@ const router = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProper
2995
3008
  getRouter
2996
3009
  }, Symbol.toStringTag, { value: "Module" }));
2997
3010
  export {
2998
- useAuth as A,
3011
+ PopoverContent as A,
2999
3012
  Button as B,
3000
3013
  CmsButton as C,
3001
3014
  Dialog as D,
3002
- getResourcePermissions as E,
3003
- canAccessResource as F,
3004
- hasPermission as G,
3005
- Route as H,
3015
+ useAuth as E,
3016
+ getResourcePermissions as F,
3017
+ canAccessResource as G,
3018
+ hasPermission as H,
3006
3019
  Input as I,
3007
- buttonVariants as J,
3008
- useBreadcrumbContext as K,
3020
+ Route as J,
3021
+ buttonVariants as K,
3009
3022
  Label as L,
3010
- router as M,
3023
+ useBreadcrumbContext as M,
3024
+ router as N,
3011
3025
  Popover as P,
3012
3026
  RouteGuard as R,
3013
3027
  Select as S,
@@ -3021,21 +3035,21 @@ export {
3021
3035
  CmsConfirmDialog as g,
3022
3036
  api as h,
3023
3037
  CmsDialog as i,
3024
- useTheme as j,
3025
- DialogContent as k,
3026
- DialogTitle as l,
3027
- DropdownMenu as m,
3028
- DropdownMenuTrigger as n,
3029
- DropdownMenuContent as o,
3030
- DropdownMenuItem as p,
3031
- DropdownMenuSeparator as q,
3032
- DialogHeader as r,
3033
- DialogFooter as s,
3034
- useSettingsConfig as t,
3035
- useAdminConfig as u,
3036
- ContentTypeFormModal as v,
3037
- Route$2 as w,
3038
- Route$1 as x,
3039
- PopoverTrigger as y,
3040
- PopoverContent as z
3038
+ useAdminConfig as j,
3039
+ useTheme as k,
3040
+ DialogContent as l,
3041
+ DialogTitle as m,
3042
+ DropdownMenu as n,
3043
+ DropdownMenuTrigger as o,
3044
+ DropdownMenuContent as p,
3045
+ DropdownMenuItem as q,
3046
+ DropdownMenuSeparator as r,
3047
+ DialogHeader as s,
3048
+ DialogFooter as t,
3049
+ useApi as u,
3050
+ useSettingsConfig as v,
3051
+ ContentTypeFormModal as w,
3052
+ Route$2 as x,
3053
+ Route$1 as y,
3054
+ PopoverTrigger as z
3041
3055
  };
@@ -1,6 +1,6 @@
1
1
  import { j as jsxRuntimeExports } from "../_chunks/_libs/react.mjs";
2
2
  import { R as Root, V as Viewport, C as Corner, S as ScrollAreaScrollbar, a as ScrollAreaThumb } from "../_chunks/_libs/@radix-ui/react-scroll-area.mjs";
3
- import { f as cn } from "./router-vd1nySeP.mjs";
3
+ import { f as cn } from "./router-Dk9ikPNc.mjs";
4
4
  function ScrollArea({
5
5
  className,
6
6
  children,
@@ -1,17 +1,16 @@
1
1
  import { j as jsxRuntimeExports, r as reactExports } from "../_chunks/_libs/react.mjs";
2
- import { h as api, u as useAdminConfig, R as RouteGuard, L as Label, C as CmsButton, S as Select, a as SelectTrigger, b as SelectValue, c as SelectContent, d as SelectItem, j as useTheme, f as cn } from "./router-vd1nySeP.mjs";
3
- import { B as Badge } from "./badge-EI998zba.mjs";
4
- import { u as useTanStackNavigation, A as Alert, a as AlertDescription } from "./tanstack-adapter-DWbaPByn.mjs";
5
- import { u as usePermissions } from "./usePermissions-olYRd9S9.mjs";
6
- import { C as CmsPageHeader } from "./CmsPageHeader-BHUmrIWD.mjs";
7
- import { C as CmsSurface } from "./CmsSurface-B2eBr-47.mjs";
8
- import { S as Switch } from "./switch-C05NgNW0.mjs";
2
+ import { h as api, j as useAdminConfig, R as RouteGuard, L as Label, C as CmsButton, S as Select, a as SelectTrigger, b as SelectValue, c as SelectContent, d as SelectItem, k as useTheme, f as cn } from "./router-Dk9ikPNc.mjs";
3
+ import { B as Badge } from "./badge-DXrjBRqZ.mjs";
4
+ import { u as useTanStackNavigation, A as Alert, a as AlertDescription } from "./tanstack-adapter-gmM64LnW.mjs";
5
+ import { u as usePermissions } from "./usePermissions-CcLDCSwa.mjs";
6
+ import { C as CmsPageHeader } from "./CmsPageHeader-PMyecILZ.mjs";
7
+ import { C as CmsSurface } from "./CmsSurface-CH1PIfcS.mjs";
8
+ import { S as Switch } from "./switch-DvREvRv4.mjs";
9
9
  import { u as useQuery, d as useMutation } from "../_libs/convex.mjs";
10
10
  import { a5 as Info, z as Lock, i as Check, X, a6 as Sun, a7 as Moon, a8 as Monitor } from "../_libs/lucide-react.mjs";
11
11
  import "../_chunks/_libs/@tanstack/react-router.mjs";
12
12
  import "../_libs/tiny-warning.mjs";
13
13
  import "../_chunks/_libs/@tanstack/router-core.mjs";
14
- import "../_chunks/_libs/@tanstack/store.mjs";
15
14
  import "../_chunks/_libs/@tanstack/history.mjs";
16
15
  import "../_libs/tiny-invariant.mjs";
17
16
  import "node:stream/web";
@@ -22,8 +21,6 @@ import "crypto";
22
21
  import "async_hooks";
23
22
  import "stream";
24
23
  import "../_libs/isbot.mjs";
25
- import "../_chunks/_libs/@tanstack/react-store.mjs";
26
- import "../_libs/use-sync-external-store.mjs";
27
24
  import "../_libs/clsx.mjs";
28
25
  import "../_libs/tailwind-merge.mjs";
29
26
  import "../_chunks/_libs/@radix-ui/react-collapsible.mjs";
@@ -72,6 +69,7 @@ import "../_chunks/_libs/@radix-ui/react-menu.mjs";
72
69
  import "../_chunks/_libs/@radix-ui/react-roving-focus.mjs";
73
70
  import "../_chunks/_libs/@radix-ui/react-avatar.mjs";
74
71
  import "../_chunks/_libs/@radix-ui/react-use-is-hydrated.mjs";
72
+ import "../_libs/use-sync-external-store.mjs";
75
73
  import "../_chunks/_libs/@radix-ui/react-popover.mjs";
76
74
  import "./index.mjs";
77
75
  import "node:async_hooks";
@@ -1,6 +1,6 @@
1
1
  import { j as jsxRuntimeExports } from "../_chunks/_libs/react.mjs";
2
2
  import { R as Root, T as Thumb } from "../_chunks/_libs/@radix-ui/react-switch.mjs";
3
- import { f as cn } from "./router-vd1nySeP.mjs";
3
+ import { f as cn } from "./router-Dk9ikPNc.mjs";
4
4
  function Switch({
5
5
  className,
6
6
  ...props
@@ -1,5 +1,5 @@
1
1
  import { j as jsxRuntimeExports, r as reactExports } from "../_chunks/_libs/react.mjs";
2
- import { f as cn, C as CmsButton } from "./router-vd1nySeP.mjs";
2
+ import { f as cn, C as CmsButton } from "./router-Dk9ikPNc.mjs";
3
3
  import { R as Root2, L as List, T as Trigger, C as Content } from "../_chunks/_libs/@radix-ui/react-tabs.mjs";
4
4
  import { j as CircleAlert, ab as Upload, X, ao as RefreshCw, i as Check } from "../_libs/lucide-react.mjs";
5
5
  import { d as useMutation } from "../_libs/convex.mjs";
@@ -1,6 +1,6 @@
1
1
  import { r as reactExports, j as jsxRuntimeExports } from "../_chunks/_libs/react.mjs";
2
2
  import { c as cva } from "../_libs/class-variance-authority.mjs";
3
- import { f as cn } from "./router-vd1nySeP.mjs";
3
+ import { f as cn } from "./router-Dk9ikPNc.mjs";
4
4
  import { d as useNavigate, e as useLocation, f as useParams } from "../_chunks/_libs/@tanstack/react-router.mjs";
5
5
  const alertVariants = cva(
6
6
  "relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current",