convex-cms 0.0.7-alpha.0 → 0.0.8
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.
- package/README.md +22 -17
- package/admin/src/components/BreakingChangesWarningDialog.tsx +5 -5
- package/admin/src/components/BulkOperationModal.tsx +14 -14
- package/admin/src/components/ContentEntryEditor.tsx +6 -6
- package/admin/src/components/ContentTypeFormModal.tsx +1 -1
- package/admin/src/components/Header.tsx +5 -2
- package/admin/src/components/SchemaDriftWarning.tsx +126 -0
- package/admin/src/components/TaxonomyEditor.tsx +2 -2
- package/admin/src/components/TermTree.tsx +3 -3
- package/admin/src/components/UploadDropzone.tsx +7 -7
- package/admin/src/components/VersionCompare.tsx +13 -13
- package/admin/src/components/VersionHistory.tsx +2 -2
- package/admin/src/components/VersionRollbackModal.tsx +5 -5
- package/admin/src/components/cmsds/CmsButton.tsx +2 -2
- package/admin/src/components/cmsds/CmsDialog.tsx +4 -1
- package/admin/src/components/cmsds/CmsStatusBadge.tsx +5 -5
- package/admin/src/components/fields/JsonField.tsx +1 -1
- package/admin/src/components/fields/TagField.tsx +1 -1
- package/admin/src/contexts/SettingsConfigContext.tsx +10 -3
- package/admin/src/embed/index.tsx +29 -9
- package/admin/src/embed/pages/ContentTypeEntries.tsx +25 -0
- package/admin/src/embed/pages/Entry.tsx +114 -0
- package/admin/src/embed/pages/Media.tsx +3 -1
- package/admin/src/embed/pages/NewEntry.tsx +83 -0
- package/admin/src/embed/pages/index.ts +3 -0
- package/admin/src/pages/ContentPage.tsx +16 -1
- package/admin/src/pages/ContentTypeEntriesPage.tsx +466 -0
- package/admin/src/pages/ContentTypesPage.tsx +3 -3
- package/admin/src/pages/DashboardPage.tsx +3 -0
- package/admin/src/pages/SettingsPage.tsx +4 -4
- package/admin/src/pages/index.ts +1 -0
- package/admin/src/routes/__root.tsx +10 -10
- package/admin/src/styles/globals.css +31 -5
- package/admin/src/styles/tailwind-config.css +25 -0
- package/admin/src/styles/theme.css +50 -0
- package/admin-dist/nitro.json +1 -1
- package/admin-dist/public/assets/{CmsEmptyState-CXVkI3FZ.js → CmsEmptyState-6-PLaXtD.js} +1 -1
- package/admin-dist/public/assets/{CmsPageHeader-DU9fD34s.js → CmsPageHeader-SoF4Epu9.js} +1 -1
- package/admin-dist/public/assets/CmsStatusBadge-D7kYaohx.js +1 -0
- package/admin-dist/public/assets/{CmsSurface-DF7OcKg_.js → CmsSurface-BvksBm6W.js} +1 -1
- package/admin-dist/public/assets/{CmsToolbar-5S8FQrSx.js → CmsToolbar-DlZPMe2B.js} +1 -1
- package/admin-dist/public/assets/ContentEntryEditor-C6n9xLS9.js +4 -0
- package/admin-dist/public/assets/{TaxonomyFilter-DEN2Q9Lo.js → TaxonomyFilter-CFX1_g8s.js} +1 -1
- package/admin-dist/public/assets/{_contentTypeId-Ba5iowxH.js → _contentTypeId-DTv8UoTp.js} +1 -1
- package/admin-dist/public/assets/_entryId-D3lr5Dvy.js +1 -0
- package/admin-dist/public/assets/alert-BAHTL6ao.js +1 -0
- package/admin-dist/public/assets/badge-oJv4Eai8.js +1 -0
- package/admin-dist/public/assets/{circle-check-big-B7eCOM8r.js → circle-check-big-3OHxNDhO.js} +1 -1
- package/admin-dist/public/assets/{command-BIjzeKOv.js → command-DwgQs69u.js} +1 -1
- package/admin-dist/public/assets/content-CKQ4QwW2.js +1 -0
- package/admin-dist/public/assets/content-types-BrttaLpc.js +1 -0
- package/admin-dist/public/assets/globals-CoCRjt0K.css +1 -0
- package/admin-dist/public/assets/index-DOkgTSx0.js +1 -0
- package/admin-dist/public/assets/{main-BZB1uYTH.js → main-DV6oxWnU.js} +5 -5
- package/admin-dist/public/assets/media-B2i-mCbx.js +1 -0
- package/admin-dist/public/assets/new._contentTypeId-VF63rpic.js +1 -0
- package/admin-dist/public/assets/{pencil-BDQ1ZWRw.js → pencil-CX1CiTDD.js} +1 -1
- package/admin-dist/public/assets/refresh-cw-Cm-YOeFI.js +1 -0
- package/admin-dist/public/assets/{rotate-ccw-BWblSIsl.js → rotate-ccw-B45JsL5f.js} +1 -1
- package/admin-dist/public/assets/{scroll-area-BoaB6x8v.js → scroll-area-b3A1HHR7.js} +1 -1
- package/admin-dist/public/assets/{search-CYMIpd39.js → search-DKKh_DdH.js} +1 -1
- package/admin-dist/public/assets/settings-CGVDEV1r.js +1 -0
- package/admin-dist/public/assets/{switch-DN7TOCa5.js → switch-BTMY8Qnk.js} +1 -1
- package/admin-dist/public/assets/tabs-DUQwUoIb.js +1 -0
- package/admin-dist/public/assets/{tanstack-adapter-DQcKErwf.js → tanstack-adapter-f7AHmQ5L.js} +1 -1
- package/admin-dist/public/assets/taxonomies-DvMppdiD.js +1 -0
- package/admin-dist/public/assets/{trash-Dp_a2mpb.js → trash-D7e0uKd9.js} +1 -1
- package/admin-dist/public/assets/{useBreadcrumbLabel-BQ9dJI6T.js → useBreadcrumbLabel-CF2KYwsw.js} +1 -1
- package/admin-dist/public/assets/{usePermissions-WUBNg_Id.js → usePermissions-DWBImEOW.js} +1 -1
- package/admin-dist/server/_libs/lucide-react.mjs +50 -43
- package/admin-dist/server/_ssr/{CmsEmptyState-DYh_PPQE.mjs → CmsEmptyState-BM8DghTl.mjs} +1 -1
- package/admin-dist/server/_ssr/{CmsPageHeader-BcniLh49.mjs → CmsPageHeader-BHUmrIWD.mjs} +1 -1
- package/admin-dist/server/_ssr/{CmsStatusBadge-BShWDxwE.mjs → CmsStatusBadge-D0Zb0oRl.mjs} +7 -7
- package/admin-dist/server/_ssr/{CmsSurface-CHEv-Kba.mjs → CmsSurface-B2eBr-47.mjs} +1 -1
- package/admin-dist/server/_ssr/{CmsToolbar-Dqqb216_.mjs → CmsToolbar-BCrwg7OL.mjs} +1 -1
- package/admin-dist/server/_ssr/{ContentEntryEditor-DOIAyWME.mjs → ContentEntryEditor-Cjfm0uhr.mjs} +37 -37
- package/admin-dist/server/_ssr/{TaxonomyFilter-BfsPAZ-Y.mjs → TaxonomyFilter-C4pD0kfM.mjs} +3 -3
- package/admin-dist/server/_ssr/{_contentTypeId-CPjmri90.mjs → _contentTypeId-CiDiX-p7.mjs} +11 -11
- package/admin-dist/server/_ssr/{_entryId-D0yu8HuP.mjs → _entryId-9GxatOkL.mjs} +11 -11
- package/admin-dist/server/_ssr/_tanstack-start-manifest_v-CC7UrHKE.mjs +4 -0
- package/admin-dist/server/_ssr/{badge-Cp61aQNc.mjs → badge-EI998zba.mjs} +1 -1
- package/admin-dist/server/_ssr/{command-BfjE1WJf.mjs → command-BLAWQhUw.mjs} +1 -1
- package/admin-dist/server/_ssr/{content-DrODe6sA.mjs → content-BHX39L4D.mjs} +31 -22
- package/admin-dist/server/_ssr/{content-types-BPgMwxiT.mjs → content-types-DCzrBhTH.mjs} +9 -9
- package/admin-dist/server/_ssr/{index-BTHmIC9W.mjs → index-DwM_5VNP.mjs} +92 -6
- package/admin-dist/server/_ssr/index.mjs +2 -2
- package/admin-dist/server/_ssr/{media-DkvBfmD9.mjs → media-CbzgTRRQ.mjs} +9 -9
- package/admin-dist/server/_ssr/{new._contentTypeId-Co_73sDJ.mjs → new._contentTypeId-6Ph-Gtlw.mjs} +10 -10
- package/admin-dist/server/_ssr/{router-CaDgRHfQ.mjs → router-vd1nySeP.mjs} +45 -35
- package/admin-dist/server/_ssr/{scroll-area-D3v-O_jk.mjs → scroll-area--B9snFTJ.mjs} +1 -1
- package/admin-dist/server/_ssr/{settings-MaEXh2Hz.mjs → settings-DlTO2JSj.mjs} +11 -11
- package/admin-dist/server/_ssr/{switch-DmbR03dm.mjs → switch-C05NgNW0.mjs} +1 -1
- package/admin-dist/server/_ssr/{tabs-5oFlAGLz.mjs → tabs-DAk2J5xy.mjs} +8 -8
- package/admin-dist/server/_ssr/{tanstack-adapter-DNaUioIZ.mjs → tanstack-adapter-DWbaPByn.mjs} +15 -1
- package/admin-dist/server/_ssr/{taxonomies-D3xMK23a.mjs → taxonomies-B8nqce6u.mjs} +12 -12
- package/admin-dist/server/_ssr/{trash-CNw1mtF1.mjs → trash-zdlZgpTo.mjs} +7 -7
- package/admin-dist/server/_ssr/{useBreadcrumbLabel-BQGjOTcy.mjs → useBreadcrumbLabel-DpEKyG1h.mjs} +1 -1
- package/admin-dist/server/_ssr/{usePermissions-D0qtvmNi.mjs → usePermissions-olYRd9S9.mjs} +1 -1
- package/admin-dist/server/index.mjs +164 -157
- package/dist/client/admin/contentTypes.d.ts +25 -0
- package/dist/client/admin/contentTypes.d.ts.map +1 -1
- package/dist/client/admin/contentTypes.js +212 -6
- package/dist/client/admin/contentTypes.js.map +1 -1
- package/dist/client/admin/entries.d.ts.map +1 -1
- package/dist/client/admin/entries.js +27 -0
- package/dist/client/admin/entries.js.map +1 -1
- package/dist/client/admin/index.d.ts +4 -0
- package/dist/client/admin/index.d.ts.map +1 -1
- package/dist/client/admin/index.js +16 -0
- package/dist/client/admin/index.js.map +1 -1
- package/dist/client/admin/types.d.ts +4 -0
- package/dist/client/admin/types.d.ts.map +1 -1
- package/dist/client/schema/defineContentType.d.ts.map +1 -1
- package/dist/client/schema/defineContentType.js +99 -80
- package/dist/client/schema/defineContentType.js.map +1 -1
- package/dist/component/contentTypeMutations.d.ts.map +1 -1
- package/dist/component/contentTypeMutations.js +5 -4
- package/dist/component/contentTypeMutations.js.map +1 -1
- package/package.json +2 -2
- package/admin-dist/public/assets/CmsStatusBadge-nZ9TeLBL.js +0 -1
- package/admin-dist/public/assets/ContentEntryEditor-BDb44eTo.js +0 -4
- package/admin-dist/public/assets/_entryId-OY3sLz6O.js +0 -1
- package/admin-dist/public/assets/alert-BbW1Q9CR.js +0 -1
- package/admin-dist/public/assets/badge-DdM8Eua8.js +0 -1
- package/admin-dist/public/assets/content-BV3YeSSW.js +0 -1
- package/admin-dist/public/assets/content-types-Bm4b2tf8.js +0 -1
- package/admin-dist/public/assets/globals-D41WzvyZ.css +0 -1
- package/admin-dist/public/assets/index-DnJ5Twlv.js +0 -1
- package/admin-dist/public/assets/media-BIMN5jXt.js +0 -1
- package/admin-dist/public/assets/new._contentTypeId-DTWb8ZDl.js +0 -1
- package/admin-dist/public/assets/settings-DaNDUtr5.js +0 -1
- package/admin-dist/public/assets/tabs-RN__emeJ.js +0 -1
- package/admin-dist/public/assets/taxonomies-DylY9HE1.js +0 -1
- package/admin-dist/server/_ssr/_tanstack-start-manifest_v-DgCpSt_y.mjs +0 -4
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { j as jsxRuntimeExports } from "../_chunks/_libs/react.mjs";
|
|
2
|
-
import { B as Badge } from "./badge-
|
|
3
|
-
import { f as cn } from "./router-
|
|
2
|
+
import { B as Badge } from "./badge-EI998zba.mjs";
|
|
3
|
+
import { f as cn } from "./router-vd1nySeP.mjs";
|
|
4
4
|
const statusConfig = {
|
|
5
5
|
draft: {
|
|
6
6
|
label: "Draft",
|
|
@@ -65,12 +65,12 @@ const statusConfig = {
|
|
|
65
65
|
};
|
|
66
66
|
const colorToClassName = {
|
|
67
67
|
gray: "bg-muted text-muted-foreground",
|
|
68
|
-
yellow: "bg-
|
|
69
|
-
blue: "bg-
|
|
70
|
-
green: "bg-
|
|
71
|
-
red: "bg-
|
|
68
|
+
yellow: "bg-diff-modified-bg text-diff-modified-foreground",
|
|
69
|
+
blue: "bg-info-bg text-info-foreground",
|
|
70
|
+
green: "bg-diff-added-bg text-diff-added-foreground",
|
|
71
|
+
red: "bg-diff-removed-bg text-diff-removed-foreground",
|
|
72
72
|
purple: "bg-purple-100 text-purple-800 dark:bg-purple-900/30 dark:text-purple-400",
|
|
73
|
-
orange: "bg-
|
|
73
|
+
orange: "bg-diff-modified-bg text-diff-modified-foreground"
|
|
74
74
|
};
|
|
75
75
|
function getDefaultIcon() {
|
|
76
76
|
return /* @__PURE__ */ jsxRuntimeExports.jsx("svg", { className: "size-3", fill: "currentColor", viewBox: "0 0 8 8", children: /* @__PURE__ */ jsxRuntimeExports.jsx("circle", { cx: "4", cy: "4", r: "3" }) });
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { j as jsxRuntimeExports } from "../_chunks/_libs/react.mjs";
|
|
2
|
-
import { I as Input, f as cn } from "./router-
|
|
2
|
+
import { I as Input, f as cn } from "./router-vd1nySeP.mjs";
|
|
3
3
|
import { a1 as Search } from "../_libs/lucide-react.mjs";
|
|
4
4
|
function CmsToolbar({
|
|
5
5
|
left,
|
package/admin-dist/server/_ssr/{ContentEntryEditor-DOIAyWME.mjs → ContentEntryEditor-Cjfm0uhr.mjs}
RENAMED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { r as reactExports, j as jsxRuntimeExports } from "../_chunks/_libs/react.mjs";
|
|
2
|
-
import { t as useSettingsConfig, h as api, f as cn, C as CmsButton, i as CmsDialog, I as Input, g as CmsConfirmDialog, T as Textarea, P as Popover, y as PopoverTrigger, z as PopoverContent, B as Button, D as Dialog, k as DialogContent, r as DialogHeader, l as DialogTitle, S as Select, a as SelectTrigger, b as SelectValue, c as SelectContent, d as SelectItem, s as DialogFooter, e as Checkbox, L as Label, J as buttonVariants } from "./router-
|
|
3
|
-
import { S as Switch } from "./switch-
|
|
2
|
+
import { t as useSettingsConfig, h as api, f as cn, C as CmsButton, i as CmsDialog, I as Input, g as CmsConfirmDialog, T as Textarea, P as Popover, y as PopoverTrigger, z as PopoverContent, B as Button, D as Dialog, k as DialogContent, r as DialogHeader, l as DialogTitle, S as Select, a as SelectTrigger, b as SelectValue, c as SelectContent, d as SelectItem, s as DialogFooter, e as Checkbox, L as Label, J as buttonVariants } from "./router-vd1nySeP.mjs";
|
|
3
|
+
import { S as Switch } from "./switch-C05NgNW0.mjs";
|
|
4
4
|
import { R as Root } from "../_chunks/_libs/@radix-ui/react-separator.mjs";
|
|
5
|
-
import { T as Tabs, a as TabsList, b as TabsTrigger, c as TabsContent, U as UploadDropzone } from "./tabs-
|
|
6
|
-
import { C as CmsEmptyState } from "./CmsEmptyState-
|
|
7
|
-
import { C as Command, a as CommandInput, b as CommandList, d as CommandGroup, f as CommandItem, c as CommandEmpty } from "./command-
|
|
8
|
-
import { B as Badge } from "./badge-
|
|
9
|
-
import { C as CmsStatusBadge } from "./CmsStatusBadge-
|
|
10
|
-
import { S as ScrollArea } from "./scroll-area
|
|
5
|
+
import { T as Tabs, a as TabsList, b as TabsTrigger, c as TabsContent, U as UploadDropzone } from "./tabs-DAk2J5xy.mjs";
|
|
6
|
+
import { C as CmsEmptyState } from "./CmsEmptyState-BM8DghTl.mjs";
|
|
7
|
+
import { C as Command, a as CommandInput, b as CommandList, d as CommandGroup, f as CommandItem, c as CommandEmpty } from "./command-BLAWQhUw.mjs";
|
|
8
|
+
import { B as Badge } from "./badge-EI998zba.mjs";
|
|
9
|
+
import { C as CmsStatusBadge } from "./CmsStatusBadge-D0Zb0oRl.mjs";
|
|
10
|
+
import { S as ScrollArea } from "./scroll-area--B9snFTJ.mjs";
|
|
11
11
|
import { d as useMutation, u as useQuery } from "../_libs/convex.mjs";
|
|
12
|
-
import { L as LoaderCircle, al as CircleCheckBig, j as CircleAlert, ao as RefreshCw,
|
|
12
|
+
import { L as LoaderCircle, al as CircleCheckBig, j as CircleAlert, ao as RefreshCw, aq as History, x as Clock, X, d as ChevronDown, W as Tag, P as Plus, Z as Link2, Q as FileText, i as Check, a3 as Pencil, O as Image, V as FolderOpen, ab as Upload, a1 as Search, y as Calendar$1, ar as GitCompare, as as ArrowRight, a0 as TriangleAlert, h as ChevronRight, ag as File, ah as Music, ai as Video, a9 as ChevronLeft, at as Bold, au as Italic, av as Heading2, w as Link, Y as List, aw as Quote, c as Code, ax as Minus } from "../_libs/lucide-react.mjs";
|
|
13
13
|
import { g as getDefaultClassNames, D as DayPicker } from "../_libs/react-day-picker.mjs";
|
|
14
14
|
function FieldWrapper({
|
|
15
15
|
field,
|
|
@@ -946,7 +946,7 @@ function JsonField({
|
|
|
946
946
|
/* @__PURE__ */ jsxRuntimeExports.jsx(CircleAlert, { className: "size-3" }),
|
|
947
947
|
"Invalid"
|
|
948
948
|
] }),
|
|
949
|
-
!syntaxError && textValue.trim() !== "" && /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: "flex items-center gap-1 text-
|
|
949
|
+
!syntaxError && textValue.trim() !== "" && /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: "flex items-center gap-1 text-success", children: [
|
|
950
950
|
/* @__PURE__ */ jsxRuntimeExports.jsx(Check, { className: "size-3" }),
|
|
951
951
|
"Valid JSON"
|
|
952
952
|
] })
|
|
@@ -1773,7 +1773,7 @@ function TagField({
|
|
|
1773
1773
|
value?.length ?? 0,
|
|
1774
1774
|
" tag",
|
|
1775
1775
|
(value?.length ?? 0) !== 1 ? "s" : "",
|
|
1776
|
-
minTags && (value?.length ?? 0) < minTags && /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: "text-
|
|
1776
|
+
minTags && (value?.length ?? 0) < minTags && /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: "text-warning", children: [
|
|
1777
1777
|
" (minimum ",
|
|
1778
1778
|
minTags,
|
|
1779
1779
|
")"
|
|
@@ -2339,11 +2339,11 @@ function VersionCompare({
|
|
|
2339
2339
|
const getChangeStyles = (changeType) => {
|
|
2340
2340
|
switch (changeType) {
|
|
2341
2341
|
case "added":
|
|
2342
|
-
return "
|
|
2342
|
+
return "diff-added border";
|
|
2343
2343
|
case "removed":
|
|
2344
|
-
return "
|
|
2344
|
+
return "diff-removed border";
|
|
2345
2345
|
case "modified":
|
|
2346
|
-
return "
|
|
2346
|
+
return "diff-modified border";
|
|
2347
2347
|
default:
|
|
2348
2348
|
return "border-border bg-card";
|
|
2349
2349
|
}
|
|
@@ -2351,11 +2351,11 @@ function VersionCompare({
|
|
|
2351
2351
|
const getChangeIconStyles = (changeType) => {
|
|
2352
2352
|
switch (changeType) {
|
|
2353
2353
|
case "added":
|
|
2354
|
-
return "
|
|
2354
|
+
return "diff-icon-added";
|
|
2355
2355
|
case "removed":
|
|
2356
|
-
return "
|
|
2356
|
+
return "diff-icon-removed";
|
|
2357
2357
|
case "modified":
|
|
2358
|
-
return "
|
|
2358
|
+
return "diff-icon-modified";
|
|
2359
2359
|
default:
|
|
2360
2360
|
return "bg-muted text-muted-foreground";
|
|
2361
2361
|
}
|
|
@@ -2394,7 +2394,7 @@ function VersionCompare({
|
|
|
2394
2394
|
/* @__PURE__ */ jsxRuntimeExports.jsx(ScrollArea, { className: "min-h-0 flex-1", children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "p-4", children: isLoading ? /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-col items-center justify-center py-8", children: [
|
|
2395
2395
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "size-6 animate-spin rounded-full border-2 border-muted border-t-primary" }),
|
|
2396
2396
|
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "mt-2 text-sm text-muted-foreground", children: "Loading comparison..." })
|
|
2397
|
-
] }) : !comparison ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "rounded-lg border
|
|
2397
|
+
] }) : !comparison ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "diff-removed rounded-lg border px-4 py-3 text-sm", children: "Could not load version comparison" }) : !comparison.hasChanges ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "py-8 text-center", children: /* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-sm text-muted-foreground", children: "No differences found between these versions" }) }) : /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
|
|
2398
2398
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "mb-4 flex items-center justify-center gap-3 rounded-lg border bg-muted/30 p-3", children: [
|
|
2399
2399
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "text-center", children: [
|
|
2400
2400
|
/* @__PURE__ */ jsxRuntimeExports.jsxs(Badge, { variant: "secondary", className: "font-mono", children: [
|
|
@@ -2436,13 +2436,13 @@ function VersionCompare({
|
|
|
2436
2436
|
/* @__PURE__ */ jsxRuntimeExports.jsx(Badge, { variant: "outline", className: "text-xs capitalize", children: change.changeType })
|
|
2437
2437
|
] }),
|
|
2438
2438
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "mt-2 space-y-2", children: [
|
|
2439
|
-
change.changeType !== "added" && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "rounded border border-
|
|
2440
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "mb-1 text-xs font-medium text-
|
|
2441
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("pre", { className: "overflow-x-auto whitespace-pre-wrap break-words font-mono text-xs text-
|
|
2439
|
+
change.changeType !== "added" && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "rounded border border-diff-removed-border bg-card p-2", children: [
|
|
2440
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "mb-1 text-xs font-medium text-diff-removed", children: "Before:" }),
|
|
2441
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("pre", { className: "overflow-x-auto whitespace-pre-wrap break-words font-mono text-xs text-diff-removed-foreground", children: formatValue(change.fromValue) })
|
|
2442
2442
|
] }),
|
|
2443
|
-
change.changeType !== "removed" && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "rounded border border-
|
|
2444
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "mb-1 text-xs font-medium text-
|
|
2445
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("pre", { className: "overflow-x-auto whitespace-pre-wrap break-words font-mono text-xs text-
|
|
2443
|
+
change.changeType !== "removed" && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "rounded border border-diff-added-border bg-card p-2", children: [
|
|
2444
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "mb-1 text-xs font-medium text-diff-added", children: "After:" }),
|
|
2445
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("pre", { className: "overflow-x-auto whitespace-pre-wrap break-words font-mono text-xs text-diff-added-foreground", children: formatValue(change.toValue) })
|
|
2446
2446
|
] })
|
|
2447
2447
|
] })
|
|
2448
2448
|
]
|
|
@@ -2498,11 +2498,11 @@ function VersionRollbackModal({
|
|
|
2498
2498
|
] }),
|
|
2499
2499
|
"."
|
|
2500
2500
|
] }),
|
|
2501
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "rounded-lg border
|
|
2502
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(TriangleAlert, { className: "mt-0.5 size-4 shrink-0 text-
|
|
2501
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "diff-modified rounded-lg border p-3", children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex gap-2", children: [
|
|
2502
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(TriangleAlert, { className: "mt-0.5 size-4 shrink-0 text-diff-modified" }),
|
|
2503
2503
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "space-y-2", children: [
|
|
2504
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-sm font-medium text-
|
|
2505
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs("ul", { className: "space-y-1 text-sm text-
|
|
2504
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-sm font-medium text-diff-modified", children: "This action will:" }),
|
|
2505
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("ul", { className: "space-y-1 text-sm text-diff-modified-foreground", children: [
|
|
2506
2506
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("li", { children: [
|
|
2507
2507
|
"• Create a new version with the content from version",
|
|
2508
2508
|
" ",
|
|
@@ -2513,7 +2513,7 @@ function VersionRollbackModal({
|
|
|
2513
2513
|
] })
|
|
2514
2514
|
] })
|
|
2515
2515
|
] }) }),
|
|
2516
|
-
error && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "rounded-lg border
|
|
2516
|
+
error && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "diff-removed rounded-lg border px-3 py-2 text-sm", children: [
|
|
2517
2517
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "font-medium", children: "Error:" }),
|
|
2518
2518
|
" ",
|
|
2519
2519
|
error
|
|
@@ -2629,7 +2629,7 @@ function VersionHistory({
|
|
|
2629
2629
|
}
|
|
2630
2630
|
)
|
|
2631
2631
|
] }),
|
|
2632
|
-
rollbackSuccess && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center gap-2 border-b bg-
|
|
2632
|
+
rollbackSuccess && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center gap-2 border-b bg-diff-added-bg px-4 py-2 text-sm text-diff-added-foreground", children: [
|
|
2633
2633
|
/* @__PURE__ */ jsxRuntimeExports.jsx(CircleCheckBig, { className: "size-4" }),
|
|
2634
2634
|
"Successfully rolled back to previous version"
|
|
2635
2635
|
] }),
|
|
@@ -2665,7 +2665,7 @@ function VersionHistory({
|
|
|
2665
2665
|
Badge,
|
|
2666
2666
|
{
|
|
2667
2667
|
variant: "outline",
|
|
2668
|
-
className: "border-
|
|
2668
|
+
className: "border-success/50 text-success",
|
|
2669
2669
|
children: "Published"
|
|
2670
2670
|
}
|
|
2671
2671
|
)
|
|
@@ -3379,8 +3379,8 @@ function ContentEntryEditor({
|
|
|
3379
3379
|
className: cn(
|
|
3380
3380
|
"flex items-center gap-1.5 text-sm",
|
|
3381
3381
|
autosaveStatus === "saving" && "text-muted-foreground",
|
|
3382
|
-
autosaveStatus === "saved" && "text-
|
|
3383
|
-
autosaveStatus === "error" && "text-
|
|
3382
|
+
autosaveStatus === "saved" && "text-success",
|
|
3383
|
+
autosaveStatus === "error" && "text-destructive"
|
|
3384
3384
|
),
|
|
3385
3385
|
"data-testid": "autosave-status",
|
|
3386
3386
|
children: [
|
|
@@ -3402,13 +3402,13 @@ function ContentEntryEditor({
|
|
|
3402
3402
|
}
|
|
3403
3403
|
)
|
|
3404
3404
|
] }),
|
|
3405
|
-
isDirty && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-sm text-
|
|
3405
|
+
isDirty && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-sm text-warning", children: "Unsaved changes" })
|
|
3406
3406
|
] })
|
|
3407
3407
|
] }),
|
|
3408
3408
|
saveSuccess && /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
3409
3409
|
"div",
|
|
3410
3410
|
{
|
|
3411
|
-
className: "flex items-center gap-2 rounded-lg border
|
|
3411
|
+
className: "diff-added flex items-center gap-2 rounded-lg border px-4 py-3 text-sm",
|
|
3412
3412
|
role: "status",
|
|
3413
3413
|
children: [
|
|
3414
3414
|
/* @__PURE__ */ jsxRuntimeExports.jsx(CircleCheckBig, { className: "size-4" }),
|
|
@@ -3419,7 +3419,7 @@ function ContentEntryEditor({
|
|
|
3419
3419
|
(submitError || publishError) && /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
3420
3420
|
"div",
|
|
3421
3421
|
{
|
|
3422
|
-
className: "rounded-lg border
|
|
3422
|
+
className: "diff-removed rounded-lg border px-4 py-3 text-sm",
|
|
3423
3423
|
role: "alert",
|
|
3424
3424
|
children: [
|
|
3425
3425
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "font-medium", children: "Error:" }),
|
|
@@ -3509,7 +3509,7 @@ function ContentEntryEditor({
|
|
|
3509
3509
|
settings?.features.scheduling && entry.status === "scheduled" && entry.scheduledPublishAt && /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
3510
3510
|
"span",
|
|
3511
3511
|
{
|
|
3512
|
-
className: "flex items-center gap-1 text-xs text-
|
|
3512
|
+
className: "flex items-center gap-1 text-xs text-info",
|
|
3513
3513
|
"data-testid": "scheduled-time",
|
|
3514
3514
|
children: [
|
|
3515
3515
|
/* @__PURE__ */ jsxRuntimeExports.jsx(Clock, { className: "size-3" }),
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { r as reactExports, j as jsxRuntimeExports } from "../_chunks/_libs/react.mjs";
|
|
2
|
-
import { h as api, P as Popover, y as PopoverTrigger, C as CmsButton, f as cn, z as PopoverContent, e as Checkbox } from "./router-
|
|
3
|
-
import { C as Command, a as CommandInput, b as CommandList, c as CommandEmpty, d as CommandGroup, e as CommandSeparator, f as CommandItem } from "./command-
|
|
4
|
-
import { B as Badge } from "./badge-
|
|
2
|
+
import { h as api, P as Popover, y as PopoverTrigger, C as CmsButton, f as cn, z as PopoverContent, e as Checkbox } from "./router-vd1nySeP.mjs";
|
|
3
|
+
import { C as Command, a as CommandInput, b as CommandList, c as CommandEmpty, d as CommandGroup, e as CommandSeparator, f as CommandItem } from "./command-BLAWQhUw.mjs";
|
|
4
|
+
import { B as Badge } from "./badge-EI998zba.mjs";
|
|
5
5
|
import { u as useQuery } from "../_libs/convex.mjs";
|
|
6
6
|
import { N as Tags, d as ChevronDown, X, i as Check } from "../_libs/lucide-react.mjs";
|
|
7
7
|
function TaxonomyFilter({
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { r as reactExports, j as jsxRuntimeExports } from "../_chunks/_libs/react.mjs";
|
|
2
2
|
import { d as useNavigate, L as Link } from "../_chunks/_libs/@tanstack/react-router.mjs";
|
|
3
|
-
import { x as Route$1, h as api, C as CmsButton, I as Input, S as Select, a as SelectTrigger, b as SelectValue, c as SelectContent, d as SelectItem, g as CmsConfirmDialog } from "./router-
|
|
4
|
-
import { u as usePermissions } from "./usePermissions-
|
|
5
|
-
import { u as useBreadcrumbLabel } from "./useBreadcrumbLabel-
|
|
6
|
-
import { C as CmsPageHeader } from "./CmsPageHeader-
|
|
7
|
-
import { C as CmsToolbar } from "./CmsToolbar-
|
|
8
|
-
import { C as CmsStatusBadge } from "./CmsStatusBadge-
|
|
9
|
-
import { C as CmsEmptyState } from "./CmsEmptyState-
|
|
10
|
-
import { T as TaxonomyFilter } from "./TaxonomyFilter-
|
|
3
|
+
import { x as Route$1, h as api, C as CmsButton, I as Input, S as Select, a as SelectTrigger, b as SelectValue, c as SelectContent, d as SelectItem, g as CmsConfirmDialog } from "./router-vd1nySeP.mjs";
|
|
4
|
+
import { u as usePermissions } from "./usePermissions-olYRd9S9.mjs";
|
|
5
|
+
import { u as useBreadcrumbLabel } from "./useBreadcrumbLabel-DpEKyG1h.mjs";
|
|
6
|
+
import { C as CmsPageHeader } from "./CmsPageHeader-BHUmrIWD.mjs";
|
|
7
|
+
import { C as CmsToolbar } from "./CmsToolbar-BCrwg7OL.mjs";
|
|
8
|
+
import { C as CmsStatusBadge } from "./CmsStatusBadge-D0Zb0oRl.mjs";
|
|
9
|
+
import { C as CmsEmptyState } from "./CmsEmptyState-BM8DghTl.mjs";
|
|
10
|
+
import { T as TaxonomyFilter } from "./TaxonomyFilter-C4pD0kfM.mjs";
|
|
11
11
|
import { d as useMutation, u as useQuery } from "../_libs/convex.mjs";
|
|
12
|
-
import { Q as FileText, P as Plus, a1 as Search,
|
|
12
|
+
import { Q as FileText, P as Plus, a1 as Search, ap as ArrowUpDown, g as ChevronUp, d as ChevronDown } from "../_libs/lucide-react.mjs";
|
|
13
13
|
import "../_libs/tiny-warning.mjs";
|
|
14
14
|
import "../_chunks/_libs/@tanstack/router-core.mjs";
|
|
15
15
|
import "../_chunks/_libs/@tanstack/store.mjs";
|
|
@@ -77,8 +77,8 @@ import "../_chunks/_libs/@radix-ui/react-popover.mjs";
|
|
|
77
77
|
import "./index.mjs";
|
|
78
78
|
import "node:async_hooks";
|
|
79
79
|
import "../_libs/zod.mjs";
|
|
80
|
-
import "./badge-
|
|
81
|
-
import "./command-
|
|
80
|
+
import "./badge-EI998zba.mjs";
|
|
81
|
+
import "./command-BLAWQhUw.mjs";
|
|
82
82
|
import "../_libs/cmdk.mjs";
|
|
83
83
|
function ContentTypeEntriesPage() {
|
|
84
84
|
const {
|
|
@@ -1,10 +1,10 @@
|
|
|
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 { w as Route$2, h as api } from "./router-
|
|
4
|
-
import { C as ContentEntryEditor } from "./ContentEntryEditor-
|
|
5
|
-
import { u as usePermissions } from "./usePermissions-
|
|
6
|
-
import { u as useBreadcrumbLabel } from "./useBreadcrumbLabel-
|
|
7
|
-
import { C as CmsEmptyState } from "./CmsEmptyState-
|
|
3
|
+
import { w as Route$2, h as api } from "./router-vd1nySeP.mjs";
|
|
4
|
+
import { C as ContentEntryEditor } from "./ContentEntryEditor-Cjfm0uhr.mjs";
|
|
5
|
+
import { u as usePermissions } from "./usePermissions-olYRd9S9.mjs";
|
|
6
|
+
import { u as useBreadcrumbLabel } from "./useBreadcrumbLabel-DpEKyG1h.mjs";
|
|
7
|
+
import { C as CmsEmptyState } from "./CmsEmptyState-BM8DghTl.mjs";
|
|
8
8
|
import { u as useQuery } from "../_libs/convex.mjs";
|
|
9
9
|
import { Q as FileText } from "../_libs/lucide-react.mjs";
|
|
10
10
|
import "../_libs/tiny-warning.mjs";
|
|
@@ -74,16 +74,16 @@ import "../_chunks/_libs/@radix-ui/react-popover.mjs";
|
|
|
74
74
|
import "./index.mjs";
|
|
75
75
|
import "node:async_hooks";
|
|
76
76
|
import "../_libs/zod.mjs";
|
|
77
|
-
import "./switch-
|
|
77
|
+
import "./switch-C05NgNW0.mjs";
|
|
78
78
|
import "../_chunks/_libs/@radix-ui/react-switch.mjs";
|
|
79
79
|
import "../_chunks/_libs/@radix-ui/react-separator.mjs";
|
|
80
|
-
import "./tabs-
|
|
80
|
+
import "./tabs-DAk2J5xy.mjs";
|
|
81
81
|
import "../_chunks/_libs/@radix-ui/react-tabs.mjs";
|
|
82
|
-
import "./command-
|
|
82
|
+
import "./command-BLAWQhUw.mjs";
|
|
83
83
|
import "../_libs/cmdk.mjs";
|
|
84
|
-
import "./badge-
|
|
85
|
-
import "./CmsStatusBadge-
|
|
86
|
-
import "./scroll-area
|
|
84
|
+
import "./badge-EI998zba.mjs";
|
|
85
|
+
import "./CmsStatusBadge-D0Zb0oRl.mjs";
|
|
86
|
+
import "./scroll-area--B9snFTJ.mjs";
|
|
87
87
|
import "../_chunks/_libs/@radix-ui/react-scroll-area.mjs";
|
|
88
88
|
import "../_libs/react-day-picker.mjs";
|
|
89
89
|
import "../_libs/date-fns.mjs";
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
const tsrStartManifest = () => ({ "routes": { "__root__": { "filePath": "/Users/home/Developer/projects/convex-cms/admin/src/routes/__root.tsx", "children": ["/", "/content", "/content-types", "/media", "/settings", "/taxonomies", "/trash", "/entries/$entryId", "/entries/new/$contentTypeId", "/entries/type/$contentTypeId"], "preloads": ["/assets/main-DV6oxWnU.js"], "assets": [] }, "/": { "filePath": "/Users/home/Developer/projects/convex-cms/admin/src/routes/index.tsx", "assets": [], "preloads": ["/assets/index-DOkgTSx0.js", "/assets/CmsPageHeader-SoF4Epu9.js", "/assets/alert-BAHTL6ao.js", "/assets/refresh-cw-Cm-YOeFI.js", "/assets/tanstack-adapter-f7AHmQ5L.js"] }, "/content": { "filePath": "/Users/home/Developer/projects/convex-cms/admin/src/routes/content.tsx", "assets": [], "preloads": ["/assets/content-CKQ4QwW2.js", "/assets/usePermissions-DWBImEOW.js", "/assets/circle-check-big-3OHxNDhO.js", "/assets/badge-oJv4Eai8.js", "/assets/CmsPageHeader-SoF4Epu9.js", "/assets/CmsToolbar-DlZPMe2B.js", "/assets/CmsEmptyState-6-PLaXtD.js", "/assets/CmsStatusBadge-D7kYaohx.js", "/assets/search-DKKh_DdH.js", "/assets/tanstack-adapter-f7AHmQ5L.js"] }, "/content-types": { "filePath": "/Users/home/Developer/projects/convex-cms/admin/src/routes/content-types.tsx", "assets": [], "preloads": ["/assets/content-types-BrttaLpc.js", "/assets/CmsPageHeader-SoF4Epu9.js", "/assets/CmsToolbar-DlZPMe2B.js", "/assets/CmsEmptyState-6-PLaXtD.js", "/assets/badge-oJv4Eai8.js", "/assets/search-DKKh_DdH.js", "/assets/pencil-CX1CiTDD.js", "/assets/tanstack-adapter-f7AHmQ5L.js"] }, "/media": { "filePath": "/Users/home/Developer/projects/convex-cms/admin/src/routes/media.tsx", "assets": [], "preloads": ["/assets/media-B2i-mCbx.js", "/assets/tabs-DUQwUoIb.js", "/assets/CmsPageHeader-SoF4Epu9.js", "/assets/CmsToolbar-DlZPMe2B.js", "/assets/CmsEmptyState-6-PLaXtD.js", "/assets/TaxonomyFilter-CFX1_g8s.js", "/assets/pencil-CX1CiTDD.js", "/assets/badge-oJv4Eai8.js", "/assets/rotate-ccw-B45JsL5f.js", "/assets/search-DKKh_DdH.js", "/assets/tanstack-adapter-f7AHmQ5L.js", "/assets/refresh-cw-Cm-YOeFI.js", "/assets/command-DwgQs69u.js"] }, "/settings": { "filePath": "/Users/home/Developer/projects/convex-cms/admin/src/routes/settings.tsx", "assets": [], "preloads": ["/assets/settings-CGVDEV1r.js", "/assets/usePermissions-DWBImEOW.js", "/assets/CmsPageHeader-SoF4Epu9.js", "/assets/CmsSurface-BvksBm6W.js", "/assets/switch-BTMY8Qnk.js", "/assets/badge-oJv4Eai8.js", "/assets/alert-BAHTL6ao.js", "/assets/tanstack-adapter-f7AHmQ5L.js"] }, "/taxonomies": { "filePath": "/Users/home/Developer/projects/convex-cms/admin/src/routes/taxonomies.tsx", "assets": [], "preloads": ["/assets/taxonomies-DvMppdiD.js", "/assets/CmsEmptyState-6-PLaXtD.js", "/assets/pencil-CX1CiTDD.js", "/assets/CmsPageHeader-SoF4Epu9.js", "/assets/CmsSurface-BvksBm6W.js", "/assets/badge-oJv4Eai8.js", "/assets/scroll-area-b3A1HHR7.js", "/assets/tanstack-adapter-f7AHmQ5L.js"] }, "/trash": { "filePath": "/Users/home/Developer/projects/convex-cms/admin/src/routes/trash.tsx", "assets": [], "preloads": ["/assets/trash-D7e0uKd9.js", "/assets/CmsPageHeader-SoF4Epu9.js", "/assets/CmsToolbar-DlZPMe2B.js", "/assets/CmsEmptyState-6-PLaXtD.js", "/assets/CmsSurface-BvksBm6W.js", "/assets/badge-oJv4Eai8.js", "/assets/alert-BAHTL6ao.js", "/assets/search-DKKh_DdH.js", "/assets/rotate-ccw-B45JsL5f.js", "/assets/tanstack-adapter-f7AHmQ5L.js"] }, "/entries/$entryId": { "filePath": "/Users/home/Developer/projects/convex-cms/admin/src/routes/entries/$entryId.tsx", "assets": [], "preloads": ["/assets/_entryId-D3lr5Dvy.js", "/assets/ContentEntryEditor-C6n9xLS9.js", "/assets/usePermissions-DWBImEOW.js", "/assets/useBreadcrumbLabel-CF2KYwsw.js", "/assets/CmsEmptyState-6-PLaXtD.js", "/assets/switch-BTMY8Qnk.js", "/assets/tabs-DUQwUoIb.js", "/assets/refresh-cw-Cm-YOeFI.js", "/assets/pencil-CX1CiTDD.js", "/assets/search-DKKh_DdH.js", "/assets/command-DwgQs69u.js", "/assets/badge-oJv4Eai8.js", "/assets/CmsStatusBadge-D7kYaohx.js", "/assets/scroll-area-b3A1HHR7.js", "/assets/circle-check-big-3OHxNDhO.js"] }, "/entries/new/$contentTypeId": { "filePath": "/Users/home/Developer/projects/convex-cms/admin/src/routes/entries/new.$contentTypeId.tsx", "assets": [], "preloads": ["/assets/new._contentTypeId-VF63rpic.js", "/assets/ContentEntryEditor-C6n9xLS9.js", "/assets/useBreadcrumbLabel-CF2KYwsw.js", "/assets/CmsEmptyState-6-PLaXtD.js", "/assets/switch-BTMY8Qnk.js", "/assets/tabs-DUQwUoIb.js", "/assets/refresh-cw-Cm-YOeFI.js", "/assets/pencil-CX1CiTDD.js", "/assets/search-DKKh_DdH.js", "/assets/command-DwgQs69u.js", "/assets/badge-oJv4Eai8.js", "/assets/CmsStatusBadge-D7kYaohx.js", "/assets/scroll-area-b3A1HHR7.js", "/assets/circle-check-big-3OHxNDhO.js"] }, "/entries/type/$contentTypeId": { "filePath": "/Users/home/Developer/projects/convex-cms/admin/src/routes/entries/type/$contentTypeId.tsx", "assets": [], "preloads": ["/assets/_contentTypeId-DTv8UoTp.js", "/assets/usePermissions-DWBImEOW.js", "/assets/useBreadcrumbLabel-CF2KYwsw.js", "/assets/CmsPageHeader-SoF4Epu9.js", "/assets/CmsToolbar-DlZPMe2B.js", "/assets/CmsStatusBadge-D7kYaohx.js", "/assets/CmsEmptyState-6-PLaXtD.js", "/assets/TaxonomyFilter-CFX1_g8s.js", "/assets/search-DKKh_DdH.js", "/assets/badge-oJv4Eai8.js", "/assets/command-DwgQs69u.js"] } }, "clientEntry": "/assets/main-DV6oxWnU.js" });
|
|
2
|
+
export {
|
|
3
|
+
tsrStartManifest
|
|
4
|
+
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { j as jsxRuntimeExports } from "../_chunks/_libs/react.mjs";
|
|
2
2
|
import { S as Slot } from "../_chunks/_libs/@radix-ui/react-slot.mjs";
|
|
3
3
|
import { c as cva } from "../_libs/class-variance-authority.mjs";
|
|
4
|
-
import { f as cn } from "./router-
|
|
4
|
+
import { f as cn } from "./router-vd1nySeP.mjs";
|
|
5
5
|
const badgeVariants = cva(
|
|
6
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
7
|
{
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { j as jsxRuntimeExports } from "../_chunks/_libs/react.mjs";
|
|
2
2
|
import { _ as _e } from "../_libs/cmdk.mjs";
|
|
3
|
-
import { f as cn } from "./router-
|
|
3
|
+
import { f as cn } from "./router-vd1nySeP.mjs";
|
|
4
4
|
import { a1 as Search } from "../_libs/lucide-react.mjs";
|
|
5
5
|
function Command({
|
|
6
6
|
className,
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { j as jsxRuntimeExports, r as reactExports } from "../_chunks/_libs/react.mjs";
|
|
2
|
-
import { h as api, m as DropdownMenu, n as DropdownMenuTrigger, C as CmsButton, o as DropdownMenuContent, p as DropdownMenuItem, I as Input, S as Select, a as SelectTrigger, b as SelectValue, c as SelectContent, d as SelectItem, e as Checkbox, f as cn, i as CmsDialog } from "./router-
|
|
3
|
-
import { u as usePermissions } from "./usePermissions-
|
|
4
|
-
import { B as Badge } from "./badge-
|
|
5
|
-
import { C as CmsPageHeader } from "./CmsPageHeader-
|
|
6
|
-
import { C as CmsToolbar } from "./CmsToolbar-
|
|
7
|
-
import { C as CmsEmptyState } from "./CmsEmptyState-
|
|
8
|
-
import { C as CmsStatusBadge } from "./CmsStatusBadge-
|
|
9
|
-
import { u as useTanStackNavigation } from "./tanstack-adapter-
|
|
2
|
+
import { h as api, m as DropdownMenu, n as DropdownMenuTrigger, C as CmsButton, o as DropdownMenuContent, p as DropdownMenuItem, I as Input, S as Select, a as SelectTrigger, b as SelectValue, c as SelectContent, d as SelectItem, e as Checkbox, f as cn, i as CmsDialog } from "./router-vd1nySeP.mjs";
|
|
3
|
+
import { u as usePermissions } from "./usePermissions-olYRd9S9.mjs";
|
|
4
|
+
import { B as Badge } from "./badge-EI998zba.mjs";
|
|
5
|
+
import { C as CmsPageHeader } from "./CmsPageHeader-BHUmrIWD.mjs";
|
|
6
|
+
import { C as CmsToolbar } from "./CmsToolbar-BCrwg7OL.mjs";
|
|
7
|
+
import { C as CmsEmptyState } from "./CmsEmptyState-BM8DghTl.mjs";
|
|
8
|
+
import { C as CmsStatusBadge } from "./CmsStatusBadge-D0Zb0oRl.mjs";
|
|
9
|
+
import { u as useTanStackNavigation } from "./tanstack-adapter-DWbaPByn.mjs";
|
|
10
10
|
import { u as useQuery, d as useMutation } from "../_libs/convex.mjs";
|
|
11
11
|
import { P as Plus, d as ChevronDown, a1 as Search, Q as FileText, X, al as CircleCheckBig, a0 as TriangleAlert } from "../_libs/lucide-react.mjs";
|
|
12
12
|
import "../_chunks/_libs/@tanstack/react-router.mjs";
|
|
@@ -141,7 +141,7 @@ function BulkOperationModal({
|
|
|
141
141
|
)
|
|
142
142
|
] }),
|
|
143
143
|
children: result ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "space-y-4", children: result.failed === 0 ? /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-col items-center gap-3 py-4 text-center", children: [
|
|
144
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex size-12 items-center justify-center rounded-full bg-
|
|
144
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex size-12 items-center justify-center rounded-full bg-diff-added-bg text-diff-added", children: /* @__PURE__ */ jsxRuntimeExports.jsx(CircleCheckBig, { className: "size-6" }) }),
|
|
145
145
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("p", { className: "text-sm text-muted-foreground", children: [
|
|
146
146
|
"Successfully processed",
|
|
147
147
|
" ",
|
|
@@ -151,23 +151,23 @@ function BulkOperationModal({
|
|
|
151
151
|
] })
|
|
152
152
|
] }) : /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "space-y-4", children: [
|
|
153
153
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "grid grid-cols-2 gap-4", children: [
|
|
154
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "rounded-lg border
|
|
155
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-2xl font-semibold text-
|
|
156
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-xs text-
|
|
154
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "diff-added rounded-lg border p-3 text-center", children: [
|
|
155
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-2xl font-semibold text-diff-added", children: result.succeeded }),
|
|
156
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-xs text-diff-added-foreground", children: "Succeeded" })
|
|
157
157
|
] }),
|
|
158
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "rounded-lg border
|
|
159
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-2xl font-semibold text-
|
|
160
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-xs text-
|
|
158
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "diff-removed rounded-lg border p-3 text-center", children: [
|
|
159
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-2xl font-semibold text-diff-removed", children: result.failed }),
|
|
160
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-xs text-diff-removed-foreground", children: "Failed" })
|
|
161
161
|
] })
|
|
162
162
|
] }),
|
|
163
|
-
result.errors && result.errors.length > 0 && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "rounded-lg border
|
|
164
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "mb-2 text-sm font-medium text-
|
|
165
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs("ul", { className: "space-y-1 text-xs text-
|
|
163
|
+
result.errors && result.errors.length > 0 && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "diff-modified rounded-lg border p-3", children: [
|
|
164
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "mb-2 text-sm font-medium text-diff-modified", children: "Errors:" }),
|
|
165
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("ul", { className: "space-y-1 text-xs text-diff-modified-foreground", children: [
|
|
166
166
|
result.errors.slice(0, 5).map((error, index) => /* @__PURE__ */ jsxRuntimeExports.jsxs("li", { className: "truncate", children: [
|
|
167
167
|
"• ",
|
|
168
168
|
error
|
|
169
169
|
] }, index)),
|
|
170
|
-
result.errors.length > 5 && /* @__PURE__ */ jsxRuntimeExports.jsxs("li", { className: "text-
|
|
170
|
+
result.errors.length > 5 && /* @__PURE__ */ jsxRuntimeExports.jsxs("li", { className: "text-diff-modified-foreground/80", children: [
|
|
171
171
|
"...and ",
|
|
172
172
|
result.errors.length - 5,
|
|
173
173
|
" more errors"
|
|
@@ -187,9 +187,9 @@ function BulkOperationModal({
|
|
|
187
187
|
"."
|
|
188
188
|
] }),
|
|
189
189
|
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-sm text-muted-foreground", children: config.description }),
|
|
190
|
-
config.warning && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-start gap-2 rounded-lg border
|
|
191
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(TriangleAlert, { className: "mt-0.5 size-4 shrink-0 text-
|
|
192
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs("p", { className: "text-sm
|
|
190
|
+
config.warning && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "diff-modified flex items-start gap-2 rounded-lg border p-3", children: [
|
|
191
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(TriangleAlert, { className: "mt-0.5 size-4 shrink-0 text-diff-modified" }),
|
|
192
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("p", { className: "text-sm", children: [
|
|
193
193
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "font-medium", children: "Note:" }),
|
|
194
194
|
" ",
|
|
195
195
|
config.warning
|
|
@@ -366,6 +366,15 @@ function ContentPage({ api: api2, navigation }) {
|
|
|
366
366
|
const [searchQuery, setSearchQuery] = reactExports.useState("");
|
|
367
367
|
const [selectedIds, setSelectedIds] = reactExports.useState(/* @__PURE__ */ new Set());
|
|
368
368
|
const { canCreate, canUpdate } = usePermissions();
|
|
369
|
+
reactExports.useEffect(() => {
|
|
370
|
+
const contentTypeId = navigation.params?.contentTypeId;
|
|
371
|
+
if (contentTypeId) {
|
|
372
|
+
const slug = contentTypeId.startsWith("code:") ? contentTypeId.slice(5) : contentTypeId;
|
|
373
|
+
setSelectedTypeId(slug);
|
|
374
|
+
} else {
|
|
375
|
+
setSelectedTypeId("");
|
|
376
|
+
}
|
|
377
|
+
}, [navigation.params?.contentTypeId]);
|
|
369
378
|
const contentTypesResult = useQuery(api2.listContentTypes, { isActive: true });
|
|
370
379
|
const contentTypes = contentTypesResult?.page ?? [];
|
|
371
380
|
const isLoadingContentTypes = contentTypesResult === void 0;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { j as jsxRuntimeExports, r as reactExports } from "../_chunks/_libs/react.mjs";
|
|
2
|
-
import { h as api, f as cn, C as CmsButton, I as Input, e as Checkbox, v as ContentTypeFormModal } from "./router-
|
|
3
|
-
import { B as Badge } from "./badge-
|
|
4
|
-
import { C as CmsPageHeader } from "./CmsPageHeader-
|
|
5
|
-
import { C as CmsToolbar } from "./CmsToolbar-
|
|
6
|
-
import { C as CmsEmptyState } from "./CmsEmptyState-
|
|
7
|
-
import { u as useTanStackNavigation } from "./tanstack-adapter-
|
|
2
|
+
import { h as api, f as cn, C as CmsButton, I as Input, e as Checkbox, v as ContentTypeFormModal } from "./router-vd1nySeP.mjs";
|
|
3
|
+
import { B as Badge } from "./badge-EI998zba.mjs";
|
|
4
|
+
import { C as CmsPageHeader } from "./CmsPageHeader-BHUmrIWD.mjs";
|
|
5
|
+
import { C as CmsToolbar } from "./CmsToolbar-BCrwg7OL.mjs";
|
|
6
|
+
import { C as CmsEmptyState } from "./CmsEmptyState-BM8DghTl.mjs";
|
|
7
|
+
import { u as useTanStackNavigation } from "./tanstack-adapter-DWbaPByn.mjs";
|
|
8
8
|
import { u as useQuery } from "../_libs/convex.mjs";
|
|
9
9
|
import { ak as Grid3x3, Y as List, P as Plus, a1 as Search, _ as FileType, f as CodeXml, k as Eye, a3 as Pencil, $ as TextAlignStart, V as FolderOpen, W as Tag, d as ChevronDown, t as Braces, O as Image, Z as Link2, y as Calendar, T as ToggleLeft, v as Hash } from "../_libs/lucide-react.mjs";
|
|
10
10
|
import "../_chunks/_libs/@tanstack/react-router.mjs";
|
|
@@ -260,7 +260,7 @@ function ContentTypesPage({ api: api2, navigation }) {
|
|
|
260
260
|
Badge,
|
|
261
261
|
{
|
|
262
262
|
variant: "secondary",
|
|
263
|
-
className: "border-
|
|
263
|
+
className: "border-diff-modified-border bg-diff-modified-bg text-xs font-normal text-diff-modified-foreground",
|
|
264
264
|
children: "Singleton"
|
|
265
265
|
}
|
|
266
266
|
),
|
|
@@ -372,7 +372,7 @@ function ContentTypesPage({ api: api2, navigation }) {
|
|
|
372
372
|
variant: contentType.isActive ? "default" : "secondary",
|
|
373
373
|
className: cn(
|
|
374
374
|
"text-xs font-normal",
|
|
375
|
-
contentType.isActive && "border-
|
|
375
|
+
contentType.isActive && "border-diff-added-border bg-diff-added-bg text-diff-added-foreground"
|
|
376
376
|
),
|
|
377
377
|
children: contentType.isActive ? "Active" : "Inactive"
|
|
378
378
|
}
|
|
@@ -381,7 +381,7 @@ function ContentTypesPage({ api: api2, navigation }) {
|
|
|
381
381
|
Badge,
|
|
382
382
|
{
|
|
383
383
|
variant: "secondary",
|
|
384
|
-
className: "border-
|
|
384
|
+
className: "border-diff-modified-border bg-diff-modified-bg text-xs font-normal text-diff-modified-foreground",
|
|
385
385
|
children: "Singleton"
|
|
386
386
|
}
|
|
387
387
|
)
|