@dyrected/admin 2.5.62 → 2.5.64

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/dist/admin.css CHANGED
@@ -221,8 +221,8 @@
221
221
  --destructive: 0 72% 58%;
222
222
  --destructive-foreground: 0 0% 100%;
223
223
 
224
- --border: 256 20% 21%;
225
- --input: 256 20% 21%;
224
+ --border: 256 18% 28%;
225
+ --input: 256 18% 28%;
226
226
  --ring: 259 100% 70% / 0.34;
227
227
 
228
228
  --sidebar-background: 240 10% 4%;
@@ -2771,6 +2771,11 @@
2771
2771
  border-color: rgb(16 185 129 / 0.2);
2772
2772
  }
2773
2773
 
2774
+ .dy-border-green-200{
2775
+ --tw-border-opacity: 1;
2776
+ border-color: rgb(187 247 208 / var(--tw-border-opacity, 1));
2777
+ }
2778
+
2774
2779
  .dy-border-input{
2775
2780
  border-color: hsl(var(--input));
2776
2781
  }
@@ -3024,11 +3029,6 @@
3024
3029
  background-color: hsl(var(--destructive) / 0.9);
3025
3030
  }
3026
3031
 
3027
- .dy-bg-emerald-100{
3028
- --tw-bg-opacity: 1;
3029
- background-color: rgb(209 250 229 / var(--tw-bg-opacity, 1));
3030
- }
3031
-
3032
3032
  .dy-bg-emerald-50{
3033
3033
  --tw-bg-opacity: 1;
3034
3034
  background-color: rgb(236 253 245 / var(--tw-bg-opacity, 1));
@@ -3043,6 +3043,11 @@
3043
3043
  background-color: rgb(16 185 129 / 0.1);
3044
3044
  }
3045
3045
 
3046
+ .dy-bg-green-100{
3047
+ --tw-bg-opacity: 1;
3048
+ background-color: rgb(220 252 231 / var(--tw-bg-opacity, 1));
3049
+ }
3050
+
3046
3051
  .dy-bg-green-500\/10{
3047
3052
  background-color: rgb(34 197 94 / 0.1);
3048
3053
  }
@@ -3770,6 +3775,11 @@
3770
3775
  color: rgb(22 163 74 / var(--tw-text-opacity, 1));
3771
3776
  }
3772
3777
 
3778
+ .dy-text-green-700{
3779
+ --tw-text-opacity: 1;
3780
+ color: rgb(21 128 61 / var(--tw-text-opacity, 1));
3781
+ }
3782
+
3773
3783
  .dy-text-muted-foreground{
3774
3784
  color: hsl(var(--muted-foreground));
3775
3785
  }
@@ -5566,25 +5576,121 @@
5566
5576
  padding: 0px !important;
5567
5577
  }
5568
5578
 
5579
+ .dark\:dy-border-amber-500\/30:is(.dy-dark *){
5580
+ border-color: rgb(245 158 11 / 0.3);
5581
+ }
5582
+
5583
+ .dark\:dy-border-blue-500\/30:is(.dy-dark *){
5584
+ border-color: rgb(59 130 246 / 0.3);
5585
+ }
5586
+
5587
+ .dark\:dy-border-border\/80:is(.dy-dark *){
5588
+ border-color: hsl(var(--border) / 0.8);
5589
+ }
5590
+
5591
+ .dark\:dy-border-emerald-500\/30:is(.dy-dark *){
5592
+ border-color: rgb(16 185 129 / 0.3);
5593
+ }
5594
+
5595
+ .dark\:dy-border-green-500\/30:is(.dy-dark *){
5596
+ border-color: rgb(34 197 94 / 0.3);
5597
+ }
5598
+
5599
+ .dark\:dy-border-red-500\/30:is(.dy-dark *){
5600
+ border-color: rgb(239 68 68 / 0.3);
5601
+ }
5602
+
5603
+ .dark\:dy-bg-amber-400:is(.dy-dark *){
5604
+ --tw-bg-opacity: 1;
5605
+ background-color: rgb(251 191 36 / var(--tw-bg-opacity, 1));
5606
+ }
5607
+
5608
+ .dark\:dy-bg-amber-600:is(.dy-dark *){
5609
+ --tw-bg-opacity: 1;
5610
+ background-color: rgb(217 119 6 / var(--tw-bg-opacity, 1));
5611
+ }
5612
+
5613
+ .dark\:dy-bg-blue-400:is(.dy-dark *){
5614
+ --tw-bg-opacity: 1;
5615
+ background-color: rgb(96 165 250 / var(--tw-bg-opacity, 1));
5616
+ }
5617
+
5618
+ .dark\:dy-bg-blue-600:is(.dy-dark *){
5619
+ --tw-bg-opacity: 1;
5620
+ background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1));
5621
+ }
5622
+
5623
+ .dark\:dy-bg-emerald-400:is(.dy-dark *){
5624
+ --tw-bg-opacity: 1;
5625
+ background-color: rgb(52 211 153 / var(--tw-bg-opacity, 1));
5626
+ }
5627
+
5628
+ .dark\:dy-bg-foreground\/60:is(.dy-dark *){
5629
+ background-color: hsl(var(--foreground) / 0.6);
5630
+ }
5631
+
5632
+ .dark\:dy-bg-green-600:is(.dy-dark *){
5633
+ --tw-bg-opacity: 1;
5634
+ background-color: rgb(22 163 74 / var(--tw-bg-opacity, 1));
5635
+ }
5636
+
5637
+ .dark\:dy-bg-muted\/60:is(.dy-dark *){
5638
+ background-color: hsl(var(--muted) / 0.6);
5639
+ }
5640
+
5641
+ .dark\:dy-bg-red-400:is(.dy-dark *){
5642
+ --tw-bg-opacity: 1;
5643
+ background-color: rgb(248 113 113 / var(--tw-bg-opacity, 1));
5644
+ }
5645
+
5646
+ .dark\:dy-bg-red-600:is(.dy-dark *){
5647
+ --tw-bg-opacity: 1;
5648
+ background-color: rgb(220 38 38 / var(--tw-bg-opacity, 1));
5649
+ }
5650
+
5569
5651
  .dark\:dy-bg-white\/5:is(.dy-dark *){
5570
5652
  background-color: rgb(255 255 255 / 0.05);
5571
5653
  }
5572
5654
 
5655
+ .dark\:dy-text-amber-300:is(.dy-dark *){
5656
+ --tw-text-opacity: 1;
5657
+ color: rgb(252 211 77 / var(--tw-text-opacity, 1));
5658
+ }
5659
+
5573
5660
  .dark\:dy-text-amber-400:is(.dy-dark *){
5574
5661
  --tw-text-opacity: 1;
5575
5662
  color: rgb(251 191 36 / var(--tw-text-opacity, 1));
5576
5663
  }
5577
5664
 
5665
+ .dark\:dy-text-blue-300:is(.dy-dark *){
5666
+ --tw-text-opacity: 1;
5667
+ color: rgb(147 197 253 / var(--tw-text-opacity, 1));
5668
+ }
5669
+
5578
5670
  .dark\:dy-text-blue-400:is(.dy-dark *){
5579
5671
  --tw-text-opacity: 1;
5580
5672
  color: rgb(96 165 250 / var(--tw-text-opacity, 1));
5581
5673
  }
5582
5674
 
5675
+ .dark\:dy-text-emerald-300:is(.dy-dark *){
5676
+ --tw-text-opacity: 1;
5677
+ color: rgb(110 231 183 / var(--tw-text-opacity, 1));
5678
+ }
5679
+
5583
5680
  .dark\:dy-text-emerald-400:is(.dy-dark *){
5584
5681
  --tw-text-opacity: 1;
5585
5682
  color: rgb(52 211 153 / var(--tw-text-opacity, 1));
5586
5683
  }
5587
5684
 
5685
+ .dark\:dy-text-foreground\/80:is(.dy-dark *){
5686
+ color: hsl(var(--foreground) / 0.8);
5687
+ }
5688
+
5689
+ .dark\:dy-text-green-300:is(.dy-dark *){
5690
+ --tw-text-opacity: 1;
5691
+ color: rgb(134 239 172 / var(--tw-text-opacity, 1));
5692
+ }
5693
+
5588
5694
  .dark\:dy-text-green-400:is(.dy-dark *){
5589
5695
  --tw-text-opacity: 1;
5590
5696
  color: rgb(74 222 128 / var(--tw-text-opacity, 1));
@@ -5595,6 +5701,15 @@
5595
5701
  color: rgb(192 132 252 / var(--tw-text-opacity, 1));
5596
5702
  }
5597
5703
 
5704
+ .dark\:dy-text-red-300:is(.dy-dark *){
5705
+ --tw-text-opacity: 1;
5706
+ color: rgb(252 165 165 / var(--tw-text-opacity, 1));
5707
+ }
5708
+
5709
+ .dark\:focus-visible\:dy-border-primary\/45:focus-visible:is(.dy-dark *){
5710
+ border-color: hsl(var(--primary) / 0.45);
5711
+ }
5712
+
5598
5713
  @media (min-width: 640px){
5599
5714
 
5600
5715
  .sm\:dy-order-1{
package/dist/index.mjs CHANGED
@@ -1038,7 +1038,7 @@ function isNewerVersion(latest, current) {
1038
1038
  return false;
1039
1039
  }
1040
1040
  function useUpdateCheck() {
1041
- const currentVersion = "2.5.62";
1041
+ const currentVersion = "2.5.63";
1042
1042
  const [updateInfo, setUpdateInfo] = useState(() => {
1043
1043
  if (typeof window === "undefined") return null;
1044
1044
  const cacheKey = "dyrected_latest_release";
@@ -1264,7 +1264,7 @@ function getStatusLabel(doc) {
1264
1264
  }
1265
1265
  function Dashboard() {
1266
1266
  const { client, components, user } = useDyrected();
1267
- const currentVersion = "2.5.62";
1267
+ const currentVersion = "2.5.63";
1268
1268
  const [latestVersion, setLatestVersion] = useState(() => {
1269
1269
  if (typeof window === "undefined") return null;
1270
1270
  return localStorage.getItem("dyrected_latest_release");
@@ -1599,7 +1599,7 @@ function Dashboard() {
1599
1599
  var Input = React$1.forwardRef(({ className, type, ...props }, ref) => {
1600
1600
  return /* @__PURE__ */ jsx("input", {
1601
1601
  type,
1602
- className: cn("dy-flex dy-h-12 dy-w-full dy-rounded-xl dy-border dy-border-border/40 dy-bg-background dy-px-4 dy-py-2 dy-text-base dy-transition-all", "placeholder:dy-text-muted-foreground/60 focus-visible:dy-outline-none focus-visible:dy-border-primary/30 focus-visible:dy-bg-background focus-visible:dy-shadow-md", "disabled:dy-cursor-not-allowed disabled:dy-opacity-50 md:dy-text-sm dy-shadow-sm", className),
1602
+ className: cn("dy-flex dy-h-12 dy-w-full dy-rounded-xl dy-border dy-border-border/50 dark:dy-border-border/80 dy-bg-background dy-px-4 dy-py-2 dy-text-base dy-transition-all", "placeholder:dy-text-muted-foreground/60 focus-visible:dy-outline-none focus-visible:dy-border-primary/30 dark:focus-visible:dy-border-primary/45 focus-visible:dy-bg-background focus-visible:dy-shadow-md", "disabled:dy-cursor-not-allowed disabled:dy-opacity-50 md:dy-text-sm dy-shadow-sm", className),
1603
1603
  ref,
1604
1604
  ...props
1605
1605
  });
@@ -2344,6 +2344,34 @@ var Checkbox = React$1.forwardRef(({ className, ...props }, ref) => /* @__PURE__
2344
2344
  }));
2345
2345
  Checkbox.displayName = CheckboxPrimitive.Root.displayName;
2346
2346
  //#endregion
2347
+ //#region src/lib/workflow-badge.ts
2348
+ var WORKFLOW_BADGE_COLORS = {
2349
+ success: "dy-bg-green-100 dy-text-green-700 dy-border-green-200 dark:dy-bg-green-600 dark:dy-text-green-300 dark:dy-border-green-500/30",
2350
+ warning: "dy-bg-amber-100 dy-text-amber-700 dy-border-amber-200 dark:dy-bg-amber-600 dark:dy-text-amber-300 dark:dy-border-amber-500/30",
2351
+ danger: "dy-bg-red-100 dy-text-red-700 dy-border-red-200 dark:dy-bg-red-600 dark:dy-text-red-300 dark:dy-border-red-500/30",
2352
+ info: "dy-bg-blue-100 dy-text-blue-700 dy-border-blue-200 dark:dy-bg-blue-600 dark:dy-text-blue-300 dark:dy-border-blue-500/30",
2353
+ neutral: "dy-bg-muted dy-text-muted-foreground dy-border-border dark:dy-bg-muted/60 dark:dy-text-foreground/80 dark:dy-border-border/80"
2354
+ };
2355
+ function getWorkflowBadgePresentation(color) {
2356
+ if (!color) return {
2357
+ className: WORKFLOW_BADGE_COLORS.neutral,
2358
+ style: void 0
2359
+ };
2360
+ const preset = WORKFLOW_BADGE_COLORS[color];
2361
+ if (preset) return {
2362
+ className: preset,
2363
+ style: void 0
2364
+ };
2365
+ return {
2366
+ className: "",
2367
+ style: {
2368
+ color,
2369
+ borderColor: `color-mix(in srgb, ${color} 32%, white)`,
2370
+ backgroundColor: `color-mix(in srgb, ${color} 14%, white)`
2371
+ }
2372
+ };
2373
+ }
2374
+ //#endregion
2347
2375
  //#region src/components/ui/progress.tsx
2348
2376
  var Progress = React$1.forwardRef(({ className, value, ...props }, ref) => /* @__PURE__ */ jsx(ProgressPrimitive.Root, {
2349
2377
  ref,
@@ -3985,7 +4013,7 @@ function MediaLibraryDialog({ collection, isOpen, onOpenChange, selectedValues,
3985
4013
  })]
3986
4014
  })]
3987
4015
  }), /* @__PURE__ */ jsxs(TabsList, {
3988
- className: "dy-grid dy-h-auto dy-grid-cols-3 dy-bg-muted/50 dy-p-1 dy-rounded-xl sm:dy-flex",
4016
+ className: "dy-grid dy-h-auto dy-grid-cols-3 dy-bg-muted/50 dy-p-1 dy-rounded-lg sm:dy-flex",
3989
4017
  children: [
3990
4018
  /* @__PURE__ */ jsxs(TabsTrigger, {
3991
4019
  value: "library",
@@ -4020,7 +4048,7 @@ function MediaLibraryDialog({ collection, isOpen, onOpenChange, selectedValues,
4020
4048
  className: "dy-relative dy-flex-1 dy-group",
4021
4049
  children: [/* @__PURE__ */ jsx(Search, { className: "dy-absolute dy-left-3.5 dy-top-1/2 dy--translate-y-1/2 dy-h-4 dy-w-4 dy-text-muted-foreground dy-group-focus-within:dy-text-primary dy-transition-colors" }), /* @__PURE__ */ jsx(Input, {
4022
4050
  placeholder: "Search your media library...",
4023
- className: "dy-pl-11 dy-h-11 dy-rounded-xl dy-border-muted dy-bg-muted/10 focus:dy-bg-background dy-transition-all",
4051
+ className: "dy-pl-11 dy-h-11 dy-rounded-lg dy-border-muted dy-bg-muted/10 focus:dy-bg-background dy-transition-all",
4024
4052
  value: searchQuery,
4025
4053
  onChange: (e) => setSearchQuery(e.target.value)
4026
4054
  })]
@@ -4141,12 +4169,12 @@ function MediaLibraryDialog({ collection, isOpen, onOpenChange, selectedValues,
4141
4169
  }), /* @__PURE__ */ jsx("div", {
4142
4170
  className: "dy-space-y-3 dy-border-t dy-border-muted/20 dy-pt-4 md:dy-pt-6",
4143
4171
  children: multiple ? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(Button, {
4144
- className: "dy-w-full dy-h-11 dy-rounded-xl dy-shadow-sm dy-font-bold dy-tracking-tight dy-transition-all",
4172
+ className: "dy-w-full dy-h-11 dy-rounded-lg dy-shadow-sm dy-font-bold dy-tracking-tight dy-transition-all",
4145
4173
  variant: sVals.some((v) => v === selectedItem.id || v === selectedItem.filename || v === selectedItem.url) ? "outline" : "default",
4146
4174
  onClick: () => onSelect(selectedItem.id, selectedItem),
4147
4175
  children: sVals.some((v) => v === selectedItem.id || v === selectedItem.filename || v === selectedItem.url) ? "Deselect Item" : "Add to Selection"
4148
4176
  }), sVals.length > 0 && /* @__PURE__ */ jsxs(Button, {
4149
- className: "dy-w-full dy-h-11 dy-rounded-xl dy-shadow-xl dy-bg-primary hover:dy-bg-primary/90 dy-font-bold dy-tracking-tight dy-transition-all dy-group",
4177
+ className: "dy-w-full dy-h-11 dy-rounded-lg dy-shadow-xl dy-bg-primary hover:dy-bg-primary/90 dy-font-bold dy-tracking-tight dy-transition-all dy-group",
4150
4178
  onClick: handleConfirm,
4151
4179
  children: [/* @__PURE__ */ jsxs("span", { children: [
4152
4180
  "Confirm ",
@@ -4155,7 +4183,7 @@ function MediaLibraryDialog({ collection, isOpen, onOpenChange, selectedValues,
4155
4183
  sVals.length === 1 ? "Asset" : "Assets"
4156
4184
  ] }), /* @__PURE__ */ jsx(Sparkles, { className: "dy-ml-2 dy-h-4 dy-w-4 dy-opacity-50 dy-group-hover:dy-opacity-100 dy-group-hover:dy-scale-110 dy-transition-all" })]
4157
4185
  })] }) : /* @__PURE__ */ jsx(Button, {
4158
- className: "dy-w-full dy-h-11 dy-rounded-xl dy-shadow-lg dy-font-bold dy-tracking-tight dy-bg-primary hover:dy-bg-primary/90 dy-transition-all",
4186
+ className: "dy-w-full dy-h-11 dy-rounded-lg dy-shadow-lg dy-font-bold dy-tracking-tight dy-bg-primary hover:dy-bg-primary/90 dy-transition-all",
4159
4187
  onClick: () => {
4160
4188
  onSelect(selectedItem.id, selectedItem);
4161
4189
  onOpenChange(false);
@@ -4295,7 +4323,7 @@ function MediaLibraryDialog({ collection, isOpen, onOpenChange, selectedValues,
4295
4323
  /* @__PURE__ */ jsxs("div", {
4296
4324
  className: "dy-flex dy-items-center dy-gap-3 dy-p-4 dy-rounded-2xl dy-bg-muted/20 dy-border dy-border-muted/30",
4297
4325
  children: [/* @__PURE__ */ jsx("div", {
4298
- className: "dy-p-2 dy-bg-background dy-rounded-xl dy-shadow-sm dy-text-muted-foreground",
4326
+ className: "dy-p-2 dy-bg-background dy-rounded-lg dy-shadow-sm dy-text-muted-foreground",
4299
4327
  children: /* @__PURE__ */ jsx(Info, { className: "dy-h-4 dy-w-4" })
4300
4328
  }), /* @__PURE__ */ jsxs("p", {
4301
4329
  className: "dy-text-[11px] dy-text-muted-foreground/80 dy-font-medium dy-leading-relaxed",
@@ -4828,7 +4856,7 @@ function MediaPicker({ collection, value, onChange, label, variant = "default",
4828
4856
  isDragActive && /* @__PURE__ */ jsx("div", {
4829
4857
  className: "dy-absolute dy-inset-0 dy-z-50 dy-bg-primary/10 dy-backdrop-blur-[2px] dy-border-2 dy-border-dashed dy-border-primary dy-rounded-2xl dy-flex dy-items-center dy-justify-center dy-pointer-events-none",
4830
4858
  children: /* @__PURE__ */ jsxs("div", {
4831
- className: "dy-bg-card dy-p-4 dy-rounded-xl dy-shadow-xl dy-flex dy-items-center dy-gap-2",
4859
+ className: "dy-bg-card dy-p-4 dy-rounded-lg dy-shadow-xl dy-flex dy-items-center dy-gap-2",
4832
4860
  children: [/* @__PURE__ */ jsx(UploadCloud, { className: "dy-h-5 dy-w-5 dy-text-primary dy-animate-bounce" }), /* @__PURE__ */ jsx("p", {
4833
4861
  className: "dy-text-xs dy-font-bold",
4834
4862
  children: "Drop to upload & select"
@@ -4838,7 +4866,7 @@ function MediaPicker({ collection, value, onChange, label, variant = "default",
4838
4866
  uploading && /* @__PURE__ */ jsx("div", {
4839
4867
  className: "dy-absolute dy-inset-0 dy-z-50 dy-bg-background/60 dy-backdrop-blur-[1px] dy-rounded-2xl dy-flex dy-items-center dy-justify-center dy-pointer-events-none",
4840
4868
  children: /* @__PURE__ */ jsxs("div", {
4841
- className: "dy-bg-card dy-p-4 dy-rounded-xl dy-shadow-xl dy-w-56 dy-max-w-[80%] dy-space-y-2",
4869
+ className: "dy-bg-card dy-p-4 dy-rounded-lg dy-shadow-xl dy-w-56 dy-max-w-[80%] dy-space-y-2",
4842
4870
  children: [/* @__PURE__ */ jsxs("div", {
4843
4871
  className: "dy-flex dy-items-center dy-justify-between dy-gap-2",
4844
4872
  children: [/* @__PURE__ */ jsxs("div", {
@@ -4866,7 +4894,7 @@ function MediaPicker({ collection, value, onChange, label, variant = "default",
4866
4894
  children: [/* @__PURE__ */ jsxs("button", {
4867
4895
  type: "button",
4868
4896
  onClick: () => setIsOpen(true),
4869
- className: "dy-group dy-relative dy-aspect-square dy-rounded-xl dy-border-2 dy-border-dashed dy-border-muted hover:dy-border-primary/40 hover:dy-bg-primary/5 dy-transition-all dy-flex dy-flex-col dy-items-center dy-justify-center dy-gap-3 dy-overflow-hidden",
4897
+ className: "dy-group dy-relative dy-aspect-square dy-rounded-lg dy-border-2 dy-border-dashed dy-border-muted hover:dy-border-primary/40 hover:dy-bg-primary/5 dy-transition-all dy-flex dy-flex-col dy-items-center dy-justify-center dy-gap-3 dy-overflow-hidden",
4870
4898
  children: [
4871
4899
  /* @__PURE__ */ jsx("div", { className: "dy-absolute dy-inset-0 dy-bg-primary/5 dy-opacity-0 dy-group-hover:dy-opacity-100 dy-transition-opacity" }),
4872
4900
  /* @__PURE__ */ jsx("div", {
@@ -4890,7 +4918,7 @@ function MediaPicker({ collection, value, onChange, label, variant = "default",
4890
4918
  return /* @__PURE__ */ jsx("div", {
4891
4919
  className: "dy-relative dy-group dy-animate-in dy-zoom-in dy-duration-300",
4892
4920
  children: /* @__PURE__ */ jsxs("div", {
4893
- className: cn("dy-relative dy-aspect-square dy-rounded-xl dy-overflow-hidden dy-border-2 dy-bg-muted/20 dy-transition-all dy-shadow-sm", index === 0 ? "dy-border-primary dy-ring-4 dy-ring-primary/10" : "dy-border-border/40 hover:dy-border-border/80"),
4921
+ className: cn("dy-relative dy-aspect-square dy-rounded-lg dy-overflow-hidden dy-border-2 dy-bg-muted/20 dy-transition-all dy-shadow-sm", index === 0 ? "dy-border-primary dy-ring-4 dy-ring-primary/10" : "dy-border-border/40 hover:dy-border-border/80"),
4894
4922
  children: [
4895
4923
  item ? /* @__PURE__ */ jsx("img", {
4896
4924
  src: getPreviewUrl(item),
@@ -4968,7 +4996,7 @@ function MediaPicker({ collection, value, onChange, label, variant = "default",
4968
4996
  isDragActive && /* @__PURE__ */ jsx("div", {
4969
4997
  className: "dy-absolute dy-inset-0 dy-z-50 dy-bg-primary/10 dy-backdrop-blur-[2px] dy-border-2 dy-border-dashed dy-border-primary dy-rounded-2xl dy-flex dy-items-center dy-justify-center dy-pointer-events-none",
4970
4998
  children: /* @__PURE__ */ jsxs("div", {
4971
- className: "dy-bg-card dy-p-3 dy-rounded-xl dy-shadow-xl dy-flex dy-items-center dy-gap-2",
4999
+ className: "dy-bg-card dy-p-3 dy-rounded-lg dy-shadow-xl dy-flex dy-items-center dy-gap-2",
4972
5000
  children: [/* @__PURE__ */ jsx(UploadCloud, { className: "dy-h-4 dy-w-4 dy-text-primary dy-animate-bounce" }), /* @__PURE__ */ jsx("p", {
4973
5001
  className: "dy-text-[11px] dy-font-bold",
4974
5002
  children: "Drop file here"
@@ -4978,7 +5006,7 @@ function MediaPicker({ collection, value, onChange, label, variant = "default",
4978
5006
  uploading && /* @__PURE__ */ jsx("div", {
4979
5007
  className: "dy-absolute dy-inset-0 dy-z-50 dy-bg-background/60 dy-backdrop-blur-[1px] dy-rounded-2xl dy-flex dy-items-center dy-justify-center dy-pointer-events-none",
4980
5008
  children: /* @__PURE__ */ jsxs("div", {
4981
- className: "dy-bg-card dy-p-3 dy-rounded-xl dy-shadow-xl dy-w-48 dy-max-w-[85%] dy-space-y-2",
5009
+ className: "dy-bg-card dy-p-3 dy-rounded-lg dy-shadow-xl dy-w-48 dy-max-w-[85%] dy-space-y-2",
4982
5010
  children: [/* @__PURE__ */ jsxs("div", {
4983
5011
  className: "dy-flex dy-items-center dy-justify-between dy-gap-2",
4984
5012
  children: [/* @__PURE__ */ jsxs("div", {
@@ -5010,7 +5038,7 @@ function MediaPicker({ collection, value, onChange, label, variant = "default",
5010
5038
  type: "button",
5011
5039
  onClick: () => setIsOpen(true),
5012
5040
  disabled,
5013
- className: "dy-group dy-relative dy-aspect-square dy-rounded-xl dy-border-2 dy-border-dashed dy-border-muted hover:dy-border-primary/40 hover:dy-bg-primary/5 disabled:dy-cursor-not-allowed disabled:dy-opacity-60 dy-transition-all dy-flex dy-flex-col dy-items-center dy-justify-center dy-gap-3 dy-overflow-hidden",
5041
+ className: "dy-group dy-relative dy-aspect-square dy-rounded-lg dy-border-2 dy-border-dashed dy-border-muted hover:dy-border-primary/40 hover:dy-bg-primary/5 disabled:dy-cursor-not-allowed disabled:dy-opacity-60 dy-transition-all dy-flex dy-flex-col dy-items-center dy-justify-center dy-gap-3 dy-overflow-hidden",
5014
5042
  children: [
5015
5043
  /* @__PURE__ */ jsx("div", { className: "dy-absolute dy-inset-0 dy-bg-primary/5 dy-opacity-0 dy-group-hover:dy-opacity-100 dy-transition-opacity" }),
5016
5044
  /* @__PURE__ */ jsx("div", {
@@ -5033,7 +5061,7 @@ function MediaPicker({ collection, value, onChange, label, variant = "default",
5033
5061
  const item = localMediaCache.find((m) => m.id === valId || m.filename === valId || m.url === valId);
5034
5062
  const previewUrl = item ? getPreviewUrl(item) : val ? getMediaUrl(val, client?.getBaseUrl() || "") : "";
5035
5063
  return /* @__PURE__ */ jsxs("div", {
5036
- className: "dy-relative dy-aspect-square dy-group dy-rounded-xl dy-overflow-hidden dy-border-2 dy-border-primary dy-ring-4 dy-ring-primary/10 dy-transition-all dy-bg-muted/20 dy-shadow-sm",
5064
+ className: "dy-relative dy-aspect-square dy-group dy-rounded-lg dy-overflow-hidden dy-border-2 dy-border-primary dy-ring-4 dy-ring-primary/10 dy-transition-all dy-bg-muted/20 dy-shadow-sm",
5037
5065
  children: [
5038
5066
  /* @__PURE__ */ jsx("button", {
5039
5067
  type: "button",
@@ -5849,10 +5877,10 @@ function JsonEditor({ value, onChange, label, disabled }) {
5849
5877
  value: internalValue,
5850
5878
  onChange: handleChange,
5851
5879
  disabled,
5852
- className: cn("dy-font-mono dy-text-xs dy-min-h-[180px] dy-bg-muted/15 dy-border-dashed focus-visible:dy-ring-1 dy-rounded-xl", error && "dy-border-destructive/60 focus-visible:dy-ring-destructive/30"),
5880
+ className: cn("dy-font-mono dy-text-xs dy-min-h-[180px] dy-bg-muted/15 dy-border-dashed focus-visible:dy-ring-1 dy-rounded-lg", error && "dy-border-destructive/60 focus-visible:dy-ring-destructive/30"),
5853
5881
  placeholder: "{ \"key\": \"value\" }"
5854
5882
  }) : /* @__PURE__ */ jsx(ScrollArea, {
5855
- className: "dy-h-[180px] dy-w-full dy-rounded-xl dy-border dy-border-dashed dy-border-border/60 dy-bg-muted/15 dy-p-4",
5883
+ className: "dy-h-[180px] dy-w-full dy-rounded-lg dy-border dy-border-dashed dy-border-border/60 dy-bg-muted/15 dy-p-4",
5856
5884
  children: value ? /* @__PURE__ */ jsx("div", {
5857
5885
  className: "dy-flex dy-flex-col",
5858
5886
  children: /* @__PURE__ */ jsx(JsonTreeNode, {
@@ -6372,7 +6400,7 @@ function JoinField({ schema, control }) {
6372
6400
  return /* @__PURE__ */ jsxs("div", {
6373
6401
  className: "dy-space-y-3",
6374
6402
  children: [data && data.length > 0 ? /* @__PURE__ */ jsx("div", {
6375
- className: "dy-divide-y dy-divide-border/30 dy-rounded-xl dy-border dy-border-border/40 dy-overflow-hidden",
6403
+ className: "dy-divide-y dy-divide-border/30 dy-rounded-lg dy-border dy-border-border/40 dy-overflow-hidden",
6376
6404
  children: data.map((item) => /* @__PURE__ */ jsxs("button", {
6377
6405
  type: "button",
6378
6406
  onClick: () => navigate(`/collections/${targetCollection}/edit/${item.id}`),
@@ -6386,7 +6414,7 @@ function JoinField({ schema, control }) {
6386
6414
  }), /* @__PURE__ */ jsx(ExternalLink, { className: "dy-h-3 dy-w-3 dy-text-muted-foreground/30 dy-opacity-0 dy-group-hover:dy-opacity-100 dy-transition-opacity dy-shrink-0 dy-ml-2" })]
6387
6415
  }, item.id))
6388
6416
  }) : /* @__PURE__ */ jsx("div", {
6389
- className: "dy-rounded-xl dy-border dy-border-dashed dy-border-border/40 dy-bg-muted/5 dy-px-4 dy-py-6 dy-text-center",
6417
+ className: "dy-rounded-lg dy-border dy-border-dashed dy-border-border/40 dy-bg-muted/5 dy-px-4 dy-py-6 dy-text-center",
6390
6418
  children: /* @__PURE__ */ jsxs("p", {
6391
6419
  className: "dy-text-xs dy-text-muted-foreground/60 dy-italic",
6392
6420
  children: [
@@ -6399,7 +6427,7 @@ function JoinField({ schema, control }) {
6399
6427
  type: "button",
6400
6428
  variant: "outline",
6401
6429
  size: "sm",
6402
- className: "dy-h-8 dy-text-[11px] dy-font-bold dy-rounded-xl dy-border-primary/20 hover:dy-bg-primary/5 hover:dy-text-primary dy-transition-all dy-shadow-sm",
6430
+ className: "dy-h-8 dy-text-[11px] dy-font-bold dy-rounded-lg dy-border-primary/20 hover:dy-bg-primary/5 hover:dy-text-primary dy-transition-all dy-shadow-sm",
6403
6431
  onClick: () => navigate(`/collections/${targetCollection}/new?${onField}=${docId}`),
6404
6432
  children: [
6405
6433
  /* @__PURE__ */ jsx(Plus, { className: "dy-w-3 dy-h-3 dy-mr-1.5" }),
@@ -6675,7 +6703,7 @@ function SelectField({ schema, field, disabled, collection, siblingValues }) {
6675
6703
  role: "combobox",
6676
6704
  "aria-expanded": open,
6677
6705
  disabled: disabled || isDynamic && isLoading,
6678
- className: cn("dy-h-12 dy-w-full dy-justify-between dy-rounded-xl dy-border-border/40 dy-bg-background/50 dy-px-4 dy-font-normal dy-shadow-sm dy-transition-all hover:dy-shadow-md", !selectedOption && "dy-text-muted-foreground"),
6706
+ className: cn("dy-h-12 dy-w-full dy-justify-between dy-rounded-lg dy-border-border/40 dy-bg-background/50 dy-px-4 dy-font-normal dy-shadow-sm dy-transition-all hover:dy-shadow-md", !selectedOption && "dy-text-muted-foreground"),
6679
6707
  children: [/* @__PURE__ */ jsx("span", {
6680
6708
  className: "dy-truncate",
6681
6709
  children: selectedOption?.label || (currentValue && !selectedOption ? currentValue : placeholder)
@@ -6699,7 +6727,7 @@ function SelectField({ schema, field, disabled, collection, siblingValues }) {
6699
6727
  })]
6700
6728
  })
6701
6729
  }), /* @__PURE__ */ jsx(PopoverContent, {
6702
- className: "dy-w-[var(--radix-popover-trigger-width)] dy-p-0 dy-rounded-xl dy-border-border/40 dy-shadow-xl",
6730
+ className: "dy-w-[var(--radix-popover-trigger-width)] dy-p-0 dy-rounded-lg dy-border-border/40 dy-shadow-xl",
6703
6731
  align: "start",
6704
6732
  children: /* @__PURE__ */ jsxs(Command$1, {
6705
6733
  shouldFilter: !isDynamic,
@@ -6806,7 +6834,7 @@ function RadioField({ schema, field, disabled, collection, siblingValues }) {
6806
6834
  1,
6807
6835
  2,
6808
6836
  3
6809
- ].map((i) => /* @__PURE__ */ jsx("div", { className: "dy-h-12 dy-w-32 dy-rounded-xl dy-bg-muted dy-animate-pulse" }, i))
6837
+ ].map((i) => /* @__PURE__ */ jsx("div", { className: "dy-h-12 dy-w-32 dy-rounded-lg dy-bg-muted dy-animate-pulse" }, i))
6810
6838
  });
6811
6839
  return /* @__PURE__ */ jsx(RadioGroup, {
6812
6840
  onValueChange: field.onChange,
@@ -6821,7 +6849,7 @@ function RadioField({ schema, field, disabled, collection, siblingValues }) {
6821
6849
  className: "dy-peer dy-absolute dy-left-4 dy-z-10"
6822
6850
  }), /* @__PURE__ */ jsx(Label, {
6823
6851
  htmlFor: `${field.name}-${opt.value}`,
6824
- className: cn("dy-flex dy-flex-1 dy-items-center dy-pl-12 dy-pr-4 dy-py-3 dy-rounded-xl dy-border dy-border-border/40 dy-bg-background/50 dy-cursor-pointer dy-transition-all hover:dy-bg-background/80 hover:dy-shadow-sm", "dy-peer-data-[state=checked]:dy-border-primary dy-peer-data-[state=checked]:dy-bg-primary/5 dy-peer-data-[state=checked]:dy-shadow-md dy-peer-data-[state=checked]:dy-ring-1 dy-peer-data-[state=checked]:dy-ring-primary/20", "dy-text-sm dy-font-medium dy-text-foreground/70 dy-peer-data-[state=checked]:dy-text-primary"),
6852
+ className: cn("dy-flex dy-flex-1 dy-items-center dy-pl-12 dy-pr-4 dy-py-3 dy-rounded-lg dy-border dy-border-border/40 dy-bg-background/50 dy-cursor-pointer dy-transition-all hover:dy-bg-background/80 hover:dy-shadow-sm", "dy-peer-data-[state=checked]:dy-border-primary dy-peer-data-[state=checked]:dy-bg-primary/5 dy-peer-data-[state=checked]:dy-shadow-md dy-peer-data-[state=checked]:dy-ring-1 dy-peer-data-[state=checked]:dy-ring-primary/20", "dy-text-sm dy-font-medium dy-text-foreground/70 dy-peer-data-[state=checked]:dy-text-primary"),
6825
6853
  children: opt.label
6826
6854
  })]
6827
6855
  }, opt.value))
@@ -6905,7 +6933,7 @@ function MultiSelect({ options, value = [], onChange, label, placeholder = "Sele
6905
6933
  role: "combobox",
6906
6934
  "aria-expanded": open,
6907
6935
  disabled: disabled || isDynamic && isLoading,
6908
- className: "dy-min-h-12 dy-w-full dy-justify-between dy-rounded-xl dy-border-border/40 dy-bg-background/50 dy-px-4 dy-font-normal dy-shadow-sm dy-transition-all hover:dy-shadow-md",
6936
+ className: "dy-min-h-12 dy-w-full dy-justify-between dy-rounded-lg dy-border-border/40 dy-bg-background/50 dy-px-4 dy-font-normal dy-shadow-sm dy-transition-all hover:dy-shadow-md",
6909
6937
  children: [/* @__PURE__ */ jsxs("div", {
6910
6938
  className: "dy-flex dy-min-w-0 dy-flex-1 dy-flex-wrap dy-items-center dy-gap-1",
6911
6939
  children: [value.length === 0 && /* @__PURE__ */ jsx("span", {
@@ -6951,7 +6979,7 @@ function MultiSelect({ options, value = [], onChange, label, placeholder = "Sele
6951
6979
  })]
6952
6980
  })
6953
6981
  }), /* @__PURE__ */ jsx(PopoverContent, {
6954
- className: "dy-w-[var(--radix-popover-trigger-width)] dy-p-0 dy-rounded-xl dy-border-border/40 dy-shadow-xl",
6982
+ className: "dy-w-[var(--radix-popover-trigger-width)] dy-p-0 dy-rounded-lg dy-border-border/40 dy-shadow-xl",
6955
6983
  align: "start",
6956
6984
  children: /* @__PURE__ */ jsxs(Command$1, {
6957
6985
  shouldFilter: !isDynamic,
@@ -7041,7 +7069,7 @@ function InlinePicker({ open, setOpen, triggerRef, children }) {
7041
7069
  triggerRef
7042
7070
  ]);
7043
7071
  return /* @__PURE__ */ jsx("div", {
7044
- className: cn("dy-absolute dy-left-0 dy-top-full dy-z-50 dy-mt-1 dy-rounded-xl dy-border dy-border-border/50 dy-bg-popover dy-shadow-2xl dy-transition-[opacity,transform] dy-duration-100 dy-origin-top-left", open ? "dy-opacity-100 dy-scale-100 dy-pointer-events-auto" : "dy-opacity-0 dy-scale-95 dy-pointer-events-none dy-invisible"),
7072
+ className: cn("dy-absolute dy-left-0 dy-top-full dy-z-50 dy-mt-1 dy-rounded-lg dy-border dy-border-border/50 dy-bg-popover dy-shadow-2xl dy-transition-[opacity,transform] dy-duration-100 dy-origin-top-left", open ? "dy-opacity-100 dy-scale-100 dy-pointer-events-auto" : "dy-opacity-0 dy-scale-95 dy-pointer-events-none dy-invisible"),
7045
7073
  inert: !open ? true : void 0,
7046
7074
  children
7047
7075
  });
@@ -7429,7 +7457,7 @@ function IconPicker({ schema, field, disabled }) {
7429
7457
  type: "button",
7430
7458
  variant: "outline",
7431
7459
  disabled,
7432
- className: "dy-flex-1 dy-justify-start dy-gap-3 dy-h-12 dy-rounded-xl dy-border-border/40 dy-bg-background/50 dy-font-normal hover:dy-shadow-md dy-transition-all",
7460
+ className: "dy-flex-1 dy-justify-start dy-gap-3 dy-h-12 dy-rounded-lg dy-border-border/40 dy-bg-background/50 dy-font-normal hover:dy-shadow-md dy-transition-all",
7433
7461
  children: SelectedIcon ? /* @__PURE__ */ jsxs(Fragment, { children: [React$1.createElement(SelectedIcon, { className: "dy-h-5 dy-w-5 dy-text-primary dy-shrink-0" }), /* @__PURE__ */ jsx("span", {
7434
7462
  className: "dy-text-sm dy-text-foreground/80",
7435
7463
  children: selectedIconName
@@ -7519,7 +7547,7 @@ function IconPicker({ schema, field, disabled }) {
7519
7547
  ]
7520
7548
  })]
7521
7549
  }), SelectedIcon && /* @__PURE__ */ jsx("div", {
7522
- className: "dy-flex dy-items-center dy-justify-center dy-h-12 dy-w-12 dy-rounded-xl dy-border dy-border-border/40 dy-bg-background/50 dy-shrink-0",
7550
+ className: "dy-flex dy-items-center dy-justify-center dy-h-12 dy-w-12 dy-rounded-lg dy-border dy-border-border/40 dy-bg-background/50 dy-shrink-0",
7523
7551
  children: React$1.createElement(SelectedIcon, { className: "dy-h-6 dy-w-6 dy-text-foreground/70" })
7524
7552
  })]
7525
7553
  });
@@ -8196,7 +8224,7 @@ function SortableBlockItem({ id, index, item, schema, basePath, control, remove,
8196
8224
  return /* @__PURE__ */ jsxs("div", {
8197
8225
  ref: setNodeRef,
8198
8226
  style,
8199
- className: cn("dy-group dy-bg-card dy-border dy-rounded-xl dy-overflow-hidden dy-transition-all", active ? "dy-border-primary dy-ring-1 dy-ring-primary/40 dy-shadow-sm" : "dy-border-border/50 hover:dy-border-border hover:dy-shadow-sm", isDragging && "dy-shadow-xl dy-ring-2 dy-ring-primary/40 dy-border-primary/50"),
8227
+ className: cn("dy-group dy-bg-card dy-border dy-rounded-lg dy-overflow-hidden dy-transition-all", active ? "dy-border-primary dy-ring-1 dy-ring-primary/40 dy-shadow-sm" : "dy-border-border/50 hover:dy-border-border hover:dy-shadow-sm", isDragging && "dy-shadow-xl dy-ring-2 dy-ring-primary/40 dy-border-primary/50"),
8200
8228
  children: [
8201
8229
  /* @__PURE__ */ jsxs("div", {
8202
8230
  className: "dy-flex dy-items-center dy-gap-3 dy-px-3 dy-py-3 dy-cursor-pointer dy-select-none",
@@ -8423,7 +8451,7 @@ function BlockBuilder({ schema, basePath, control, collection, documentId }) {
8423
8451
  children: ["Add Block", /* @__PURE__ */ jsx(Plus, { className: "dy-w-3 dy-h-3 dy-ml-1.5" })]
8424
8452
  })
8425
8453
  }), /* @__PURE__ */ jsxs(DialogContent, {
8426
- className: "dy-max-w-md md:dy-max-w-4xl dy-p-6 dy-rounded-xl dy-border-border/40 dy-shadow-2xl !dy-flex dy-flex-col dy-max-h-[85vh] dy-overflow-hidden",
8454
+ className: "dy-max-w-md md:dy-max-w-4xl dy-p-6 dy-rounded-lg dy-border-border/40 dy-shadow-2xl !dy-flex dy-flex-col dy-max-h-[85vh] dy-overflow-hidden",
8427
8455
  children: [
8428
8456
  /* @__PURE__ */ jsxs(DialogHeader, {
8429
8457
  className: "dy-pb-2 dy-flex-shrink-0",
@@ -8454,7 +8482,7 @@ function BlockBuilder({ schema, basePath, control, collection, documentId }) {
8454
8482
  }) : filteredBlocks.map((block) => {
8455
8483
  return /* @__PURE__ */ jsxs("div", {
8456
8484
  onClick: () => handleAddBlock(block),
8457
- className: "dy-group dy-border dy-border-muted/30 dy-rounded-xl dy-p-4 dy-flex dy-items-start dy-gap-3 hover:dy-border-primary/40 hover:dy-bg-primary/[0.02] dy-transition-all dy-cursor-pointer dy-select-none",
8485
+ className: "dy-group dy-border dy-border-muted/30 dy-rounded-lg dy-p-4 dy-flex dy-items-start dy-gap-3 hover:dy-border-primary/40 hover:dy-bg-primary/[0.02] dy-transition-all dy-cursor-pointer dy-select-none",
8458
8486
  children: [/* @__PURE__ */ jsx("div", {
8459
8487
  className: "dy-p-2.5 dy-bg-muted/50 dy-rounded-lg dy-text-muted-foreground/60 group-hover:dy-text-primary group-hover:dy-bg-primary/10 dy-transition-colors",
8460
8488
  children: /* @__PURE__ */ jsx(resolveAdminIcon(block.icon, Layers), { className: "dy-w-4 dy-h-4" })
@@ -8477,7 +8505,7 @@ function BlockBuilder({ schema, basePath, control, collection, documentId }) {
8477
8505
  })
8478
8506
  })]
8479
8507
  }), fields.length === 0 ? /* @__PURE__ */ jsxs("div", {
8480
- className: "dy-text-center dy-p-8 dy-border dy-border-dashed dy-border-border/40 dy-rounded-xl dy-bg-muted/10 dy-flex dy-flex-col dy-items-center dy-gap-3",
8508
+ className: "dy-text-center dy-p-8 dy-border dy-border-dashed dy-border-border/40 dy-rounded-lg dy-bg-muted/10 dy-flex dy-flex-col dy-items-center dy-gap-3",
8481
8509
  children: [/* @__PURE__ */ jsx("p", {
8482
8510
  className: "dy-text-[11px] dy-text-muted-foreground/50",
8483
8511
  children: "No blocks added yet."
@@ -8736,7 +8764,7 @@ function SortableArrayItem({ id, index, schema, basePath, control, remove, move,
8736
8764
  type: "button",
8737
8765
  variant: "ghost",
8738
8766
  size: "icon",
8739
- className: "dy-h-10 dy-w-10 dy-rounded-xl dy-text-muted-foreground/30 hover:dy-text-destructive hover:dy-bg-destructive/10 sm:dy-h-8 sm:dy-w-8",
8767
+ className: "dy-h-10 dy-w-10 dy-rounded-lg dy-text-muted-foreground/30 hover:dy-text-destructive hover:dy-bg-destructive/10 sm:dy-h-8 sm:dy-w-8",
8740
8768
  onClick: (event) => {
8741
8769
  event.stopPropagation();
8742
8770
  setShowDeleteConfirm(true);
@@ -8747,7 +8775,7 @@ function SortableArrayItem({ id, index, schema, basePath, control, remove, move,
8747
8775
  type: "button",
8748
8776
  variant: "ghost",
8749
8777
  size: "icon",
8750
- className: "dy-h-10 dy-w-10 dy-rounded-xl dy-text-muted-foreground hover:dy-bg-muted hover:dy-text-foreground sm:dy-h-8 sm:dy-w-8",
8778
+ className: "dy-h-10 dy-w-10 dy-rounded-lg dy-text-muted-foreground hover:dy-bg-muted hover:dy-text-foreground sm:dy-h-8 sm:dy-w-8",
8751
8779
  onClick: (event) => {
8752
8780
  event.stopPropagation();
8753
8781
  onToggleExpand();
@@ -8760,7 +8788,7 @@ function SortableArrayItem({ id, index, schema, basePath, control, remove, move,
8760
8788
  type: "button",
8761
8789
  variant: "ghost",
8762
8790
  size: "icon",
8763
- className: "dy-h-10 dy-w-10 dy-rounded-xl dy-text-muted-foreground hover:dy-bg-muted hover:dy-text-foreground sm:dy-h-8 sm:dy-w-8",
8791
+ className: "dy-h-10 dy-w-10 dy-rounded-lg dy-text-muted-foreground hover:dy-bg-muted hover:dy-text-foreground sm:dy-h-8 sm:dy-w-8",
8764
8792
  onClick: (event) => event.stopPropagation(),
8765
8793
  title: "Item actions",
8766
8794
  children: /* @__PURE__ */ jsx(MoreHorizontal, { className: "dy-w-4 dy-h-4" })
@@ -8855,7 +8883,7 @@ function SimpleArrayItem({ id, index, field, basePath, remove, move, onDuplicate
8855
8883
  zIndex: isDragging ? 50 : 1,
8856
8884
  opacity: isDragging ? .9 : 1
8857
8885
  },
8858
- className: cn("dy-group dy-flex dy-items-center dy-gap-1.5 dy-rounded-xl dy-px-1 dy-py-1 dy-transition-colors", isDragging ? "dy-bg-muted/40 dy-shadow-lg dy-ring-1 dy-ring-primary/30" : "hover:dy-bg-muted/30"),
8886
+ className: cn("dy-group dy-flex dy-items-center dy-gap-1.5 dy-rounded-lg dy-px-1 dy-py-1 dy-transition-colors", isDragging ? "dy-bg-muted/40 dy-shadow-lg dy-ring-1 dy-ring-primary/30" : "hover:dy-bg-muted/30"),
8859
8887
  children: [
8860
8888
  /* @__PURE__ */ jsx("div", {
8861
8889
  ...attributes,
@@ -8874,7 +8902,7 @@ function SimpleArrayItem({ id, index, field, basePath, remove, move, onDuplicate
8874
8902
  type: "button",
8875
8903
  variant: "ghost",
8876
8904
  size: "icon",
8877
- className: "dy-h-9 dy-w-9 dy-flex-shrink-0 dy-rounded-xl dy-text-muted-foreground/50 dy-opacity-0 dy-transition-opacity group-hover:dy-opacity-100 focus:dy-opacity-100 data-[state=open]:dy-opacity-100 hover:dy-bg-muted hover:dy-text-foreground sm:dy-h-8 sm:dy-w-8",
8905
+ className: "dy-h-9 dy-w-9 dy-flex-shrink-0 dy-rounded-lg dy-text-muted-foreground/50 dy-opacity-0 dy-transition-opacity group-hover:dy-opacity-100 focus:dy-opacity-100 data-[state=open]:dy-opacity-100 hover:dy-bg-muted hover:dy-text-foreground sm:dy-h-8 sm:dy-w-8",
8878
8906
  title: "Item actions",
8879
8907
  children: /* @__PURE__ */ jsx(MoreHorizontal, { className: "dy-w-4 dy-h-4" })
8880
8908
  })
@@ -9086,14 +9114,14 @@ function ArrayFieldRenderer({ schema, basePath, control, renderField }) {
9086
9114
  type: "button",
9087
9115
  variant: "outline",
9088
9116
  size: "sm",
9089
- className: "dy-h-9 dy-text-[11px] dy-font-bold dy-rounded-xl dy-border-primary/20 hover:dy-bg-primary/5 hover:dy-text-primary dy-transition-all dy-shadow-sm",
9117
+ className: "dy-h-9 dy-text-[11px] dy-font-bold dy-rounded-lg dy-border-primary/20 hover:dy-bg-primary/5 hover:dy-text-primary dy-transition-all dy-shadow-sm",
9090
9118
  onClick: () => setIsBulkOpen(true),
9091
9119
  children: "Bulk Add Images"
9092
9120
  }), /* @__PURE__ */ jsxs(Button, {
9093
9121
  type: "button",
9094
9122
  variant: "outline",
9095
9123
  size: "sm",
9096
- className: "dy-h-9 dy-text-[11px] dy-font-bold dy-rounded-xl dy-border-primary/20 hover:dy-bg-primary/5 hover:dy-text-primary dy-transition-all dy-shadow-sm",
9124
+ className: "dy-h-9 dy-text-[11px] dy-font-bold dy-rounded-lg dy-border-primary/20 hover:dy-bg-primary/5 hover:dy-text-primary dy-transition-all dy-shadow-sm",
9097
9125
  onClick: addItem,
9098
9126
  children: [
9099
9127
  /* @__PURE__ */ jsx(Plus, { className: "dy-w-3.5 dy-h-3.5 dy-mr-1.5" }),
@@ -9303,7 +9331,7 @@ function FormFieldRenderer({ schema, basePath, control, collection, documentId }
9303
9331
  documentId
9304
9332
  });
9305
9333
  if (jexlError) return /* @__PURE__ */ jsxs("div", {
9306
- className: "dy-space-y-2 dy-border dy-border-destructive/30 dy-bg-destructive/5 dy-p-3 dy-rounded-xl dy-my-2",
9334
+ className: "dy-space-y-2 dy-border dy-border-destructive/30 dy-bg-destructive/5 dy-p-3 dy-rounded-lg dy-my-2",
9307
9335
  children: [/* @__PURE__ */ jsxs("div", {
9308
9336
  className: "dy-text-xs dy-font-semibold dy-text-destructive dy-flex dy-items-center dy-gap-2",
9309
9337
  children: [/* @__PURE__ */ jsxs("span", { children: [
@@ -9482,7 +9510,7 @@ function FormFieldRendererInner({ schema, basePath, control, collection, canUpda
9482
9510
  name: fullPath,
9483
9511
  render: ({ field: formField }) => /* @__PURE__ */ jsxs(FormItem, {
9484
9512
  "data-dy-field": schema.name,
9485
- className: cn(isSwitchBoolean ? "dy-flex dy-flex-row dy-items-center dy-justify-between dy-rounded-xl dy-border dy-border-border/40 dy-p-4 dy-bg-background/50 dy-shadow-sm dy-space-y-0" : isBoolean ? "dy-flex dy-flex-row-reverse dy-items-start dy-justify-end dy-gap-3 dy-space-y-0" : hideLabel ? "dy-space-y-0" : "dy-space-y-3"),
9513
+ className: cn(isSwitchBoolean ? "dy-flex dy-flex-row dy-items-center dy-justify-between dy-rounded-lg dy-border dy-border-border/40 dy-p-4 dy-bg-background/50 dy-shadow-sm dy-space-y-0" : isBoolean ? "dy-flex dy-flex-row-reverse dy-items-start dy-justify-end dy-gap-3 dy-space-y-0" : hideLabel ? "dy-space-y-0" : "dy-space-y-3"),
9486
9514
  children: [
9487
9515
  !hideLabel && /* @__PURE__ */ jsxs("div", {
9488
9516
  className: cn(isBoolean ? "dy-space-y-1" : "dy-flex dy-items-center dy-flex-wrap dy-gap-2 dy-mb-1"),
@@ -9894,7 +9922,7 @@ function FormEngineInner({ collection, fields, defaultValues = {}, onSubmit, onC
9894
9922
  ...form.register(field.name)
9895
9923
  }, field.name)),
9896
9924
  flatErrors.length > 0 && /* @__PURE__ */ jsxs("div", {
9897
- className: "dy-p-4 dy-rounded-xl dy-bg-destructive/10 dy-border dy-border-destructive/20 dy-text-destructive dy-space-y-2",
9925
+ className: "dy-p-4 dy-rounded-lg dy-bg-destructive/10 dy-border dy-border-destructive/20 dy-text-destructive dy-space-y-2",
9898
9926
  children: [/* @__PURE__ */ jsxs("div", {
9899
9927
  className: "dy-flex dy-items-center dy-gap-2 dy-font-semibold",
9900
9928
  children: [/* @__PURE__ */ jsx(AlertCircle, { className: "dy-h-4 dy-w-4 dy-shrink-0" }), /* @__PURE__ */ jsx("span", { children: "Please resolve the following validation errors:" })]
@@ -9929,7 +9957,7 @@ function FormEngineInner({ collection, fields, defaultValues = {}, onSubmit, onC
9929
9957
  }),
9930
9958
  fieldsContent,
9931
9959
  hasPassword && passwordChangeMode !== null && /* @__PURE__ */ jsxs("div", {
9932
- className: "dy-rounded-xl dy-border dy-border-border dy-p-5 dy-space-y-4",
9960
+ className: "dy-rounded-lg dy-border dy-border-border dy-p-5 dy-space-y-4",
9933
9961
  children: [
9934
9962
  /* @__PURE__ */ jsxs("div", {
9935
9963
  className: "dy-flex dy-items-center dy-gap-2 dy-text-sm dy-font-semibold dy-text-muted-foreground dy-uppercase dy-tracking-wide",
@@ -10909,6 +10937,23 @@ function SortableColumnItem({ id, label, visible, onToggleVisible }) {
10909
10937
  ]
10910
10938
  });
10911
10939
  }
10940
+ function resolvePublishedStateName(schema, item) {
10941
+ const hasPublishingState = !!(schema?.workflow || schema?.drafts);
10942
+ const workflowConfig = schema?.workflow;
10943
+ const workflowMeta = item?._workflow;
10944
+ const workflowState = workflowConfig && workflowMeta ? workflowConfig.states?.find((state) => state.name === workflowMeta.state) : null;
10945
+ if (workflowState) return workflowState.published ? "Published" : "Draft";
10946
+ if (!hasPublishingState) return null;
10947
+ const plainStatus = item.status;
10948
+ if (plainStatus === "published") return "Published";
10949
+ if (plainStatus === "draft") return "Draft";
10950
+ return null;
10951
+ }
10952
+ function resolveWorkflowState(schema, item) {
10953
+ const workflowConfig = schema?.workflow;
10954
+ const workflowMeta = item?._workflow;
10955
+ return workflowConfig && workflowMeta ? workflowConfig.states?.find((state) => state.name === workflowMeta.state) ?? null : null;
10956
+ }
10912
10957
  function CollectionListPage({ slug }) {
10913
10958
  const { client, components, user } = useDyrected();
10914
10959
  const queryClient = useQueryClient();
@@ -11253,6 +11298,7 @@ function CollectionListPage({ slug }) {
11253
11298
  const allColumnNames = visibleColumnNames;
11254
11299
  const firstVisibleFieldName = visibleColumnNames.find((name) => fieldByName.has(name));
11255
11300
  const titleFieldName = visibleColumnNames.includes(schema.admin?.useAsTitle || "") ? schema.admin?.useAsTitle : firstVisibleFieldName;
11301
+ const showPublishingStatus = !!(schema.workflow || schema.drafts);
11256
11302
  const deleteAccess = schema.access?.delete;
11257
11303
  const canDeleteRow = (item) => {
11258
11304
  if (deleteAccess === false) return false;
@@ -11395,6 +11441,29 @@ function CollectionListPage({ slug }) {
11395
11441
  const systemColumn = makeSystemColumn(name);
11396
11442
  if (systemColumn) cols.push(systemColumn);
11397
11443
  });
11444
+ if (showPublishingStatus) cols.push({
11445
+ id: "publishingStatus",
11446
+ header: "Status",
11447
+ enableHiding: false,
11448
+ cell: ({ row }) => {
11449
+ const status = resolvePublishedStateName(schema, row.original);
11450
+ if (!status) return /* @__PURE__ */ jsx("span", {
11451
+ className: "dy-text-xs dy-text-muted-foreground",
11452
+ children: "-"
11453
+ });
11454
+ const workflowState = resolveWorkflowState(schema, row.original);
11455
+ const badgePresentation = workflowState ? getWorkflowBadgePresentation(workflowState.color) : {
11456
+ className: status === "Published" ? WORKFLOW_BADGE_COLORS.success : WORKFLOW_BADGE_COLORS.warning,
11457
+ style: void 0
11458
+ };
11459
+ return /* @__PURE__ */ jsx(Badge, {
11460
+ variant: "outline",
11461
+ className: cn("dy-px-2 dy-py-0 dy-rounded-full dy-text-[10px] dy-font-bold dy-uppercase dy-tracking-wider dy-shrink-0", badgePresentation.className),
11462
+ style: badgePresentation.style,
11463
+ children: status
11464
+ });
11465
+ }
11466
+ });
11398
11467
  return cols;
11399
11468
  }, [
11400
11469
  schema,
@@ -12059,29 +12128,29 @@ function LivePreviewPane({ previewUrl, data, mode = "postMessage", collectionSlu
12059
12128
  //#region src/components/workflow/WorkflowPanel.tsx
12060
12129
  var STATE_COLORS = {
12061
12130
  success: {
12062
- bg: "dy-bg-emerald-50 dy-border-emerald-200",
12063
- text: "dy-text-emerald-700",
12064
- dot: "dy-bg-emerald-500"
12131
+ bg: "dy-bg-emerald-50 dy-border-emerald-200 dark:dy-bg-emerald-500/12 dark:dy-border-emerald-500/30",
12132
+ text: "dy-text-emerald-700 dark:dy-text-emerald-300",
12133
+ dot: "dy-bg-emerald-500 dark:dy-bg-emerald-400"
12065
12134
  },
12066
12135
  warning: {
12067
- bg: "dy-bg-amber-50 dy-border-amber-200",
12068
- text: "dy-text-amber-700",
12069
- dot: "dy-bg-amber-500"
12136
+ bg: "dy-bg-amber-50 dy-border-amber-200 dark:dy-bg-amber-500/12 dark:dy-border-amber-500/30",
12137
+ text: "dy-text-amber-700 dark:dy-text-amber-300",
12138
+ dot: "dy-bg-amber-500 dark:dy-bg-amber-400"
12070
12139
  },
12071
12140
  danger: {
12072
- bg: "dy-bg-red-50 dy-border-red-200",
12073
- text: "dy-text-red-700",
12074
- dot: "dy-bg-red-500"
12141
+ bg: "dy-bg-red-50 dy-border-red-200 dark:dy-bg-red-500/12 dark:dy-border-red-500/30",
12142
+ text: "dy-text-red-700 dark:dy-text-red-300",
12143
+ dot: "dy-bg-red-500 dark:dy-bg-red-400"
12075
12144
  },
12076
12145
  info: {
12077
- bg: "dy-bg-blue-50 dy-border-blue-200",
12078
- text: "dy-text-blue-700",
12079
- dot: "dy-bg-blue-500"
12146
+ bg: "dy-bg-blue-50 dy-border-blue-200 dark:dy-bg-blue-500/12 dark:dy-border-blue-500/30",
12147
+ text: "dy-text-blue-700 dark:dy-text-blue-300",
12148
+ dot: "dy-bg-blue-500 dark:dy-bg-blue-400"
12080
12149
  },
12081
12150
  neutral: {
12082
- bg: "dy-bg-muted/40 dy-border-border/60",
12083
- text: "dy-text-muted-foreground",
12084
- dot: "dy-bg-muted-foreground/60"
12151
+ bg: "dy-bg-muted/40 dy-border-border/60 dark:dy-bg-muted/60 dark:dy-border-border/80",
12152
+ text: "dy-text-muted-foreground dark:dy-text-foreground/80",
12153
+ dot: "dy-bg-muted-foreground/60 dark:dy-bg-foreground/60"
12085
12154
  }
12086
12155
  };
12087
12156
  function stateColors(color) {
@@ -12207,7 +12276,7 @@ function WorkflowPanel({ collection, documentId, workflowMeta, workflowConfig })
12207
12276
  return /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsxs(Button, {
12208
12277
  size: "sm",
12209
12278
  variant: t.unpublish || t.name === "reject" ? "outline" : "default",
12210
- className: cn("dy-w-full dy-h-9 dy-rounded-xl dy-text-xs dy-font-semibold dy-justify-start dy-gap-2", isWaiting && "dy-ring-2 dy-ring-primary/30"),
12279
+ className: cn("dy-w-full dy-h-9 dy-rounded-lg dy-text-xs dy-font-semibold dy-justify-start dy-gap-2", isWaiting && "dy-ring-2 dy-ring-primary/30"),
12211
12280
  disabled: transitionMutation.isPending,
12212
12281
  onClick: () => handleTransitionClick(t),
12213
12282
  children: [isLoading ? /* @__PURE__ */ jsx(Loader2, { className: "dy-h-3.5 dy-w-3.5 dy-animate-spin" }) : /* @__PURE__ */ jsx(StateIcon, { color: workflowConfig.states.find((s) => s.name === t.to)?.color }), t.label]
@@ -12653,7 +12722,7 @@ function EditEntryPage() {
12653
12722
  ]);
12654
12723
  const hasWorkflow = !!schema?.workflow;
12655
12724
  const syncShowWorkflow = useState(() => (next) => {
12656
- setActiveTab((prev) => next ? "versions" : prev === "versions" ? "edit" : prev);
12725
+ setActiveTab((prev) => next ? "workflow" : prev === "workflow" ? "edit" : prev);
12657
12726
  })[0];
12658
12727
  useEffect(() => {
12659
12728
  if (!hasWorkflow || schemaPreviewUrl) return;
@@ -12760,6 +12829,11 @@ function EditEntryPage() {
12760
12829
  const currentStatus = entry?.status || "draft";
12761
12830
  const workflowState = workflowConfig && workflowMeta ? workflowConfig.states?.find((s) => s.name === workflowMeta.state) : null;
12762
12831
  const isPublished = workflowState ? !!workflowState.published : currentStatus === "published";
12832
+ const statusBadgeLabel = workflowState ? workflowState.label || workflowState.name : currentStatus === "published" ? "Published" : currentStatus === "draft" ? "Draft" : String(currentStatus);
12833
+ const workflowBadgePresentation = workflowState ? getWorkflowBadgePresentation(workflowState.color) : {
12834
+ className: isPublished ? WORKFLOW_BADGE_COLORS.success : WORKFLOW_BADGE_COLORS.warning,
12835
+ style: void 0
12836
+ };
12763
12837
  const showStatusBadge = workflowConfig ? !!workflowMeta : hasStatus;
12764
12838
  const siteUrl = getSiteUrl(schemas?.admin?.siteUrl);
12765
12839
  const previewUrl = resolvePreviewUrl(schema.admin?.previewUrl, previewData || entry, siteUrl);
@@ -12887,9 +12961,10 @@ function EditEntryPage() {
12887
12961
  className: "dy-text-base dy-font-serif dy-font-bold dy-tracking-tight dy-text-foreground dy-truncate",
12888
12962
  children: ["New ", schema?.labels?.singular || schema?.slug]
12889
12963
  }), showStatusBadge && /* @__PURE__ */ jsx(Badge, {
12890
- className: cn("dy-px-2 dy-py-0 dy-rounded-full dy-text-[10px] dy-font-bold dy-uppercase dy-tracking-wider dy-shrink-0", isPublished ? "dy-bg-emerald-100 dy-text-emerald-700 dy-border-emerald-200" : "dy-bg-amber-100 dy-text-amber-700 dy-border-amber-200"),
12964
+ className: cn("dy-px-2 dy-py-0 dy-rounded-full dy-text-[10px] dy-font-bold dy-uppercase dy-tracking-wider dy-shrink-0", workflowBadgePresentation.className),
12965
+ style: workflowBadgePresentation.style,
12891
12966
  variant: "outline",
12892
- children: isPublished ? "Live" : "Draft"
12967
+ children: statusBadgeLabel
12893
12968
  })]
12894
12969
  }),
12895
12970
  /* @__PURE__ */ jsxs("div", {
@@ -12918,10 +12993,10 @@ function EditEntryPage() {
12918
12993
  }),
12919
12994
  workflowAvailable && /* @__PURE__ */ jsx(HeaderAction, {
12920
12995
  icon: Workflow,
12921
- label: "Versions",
12922
- active: activeTab === "versions",
12923
- title: activeTab === "versions" ? "Hide Version History" : "Show Version History",
12924
- onClick: () => setActiveTab((tab) => tab === "versions" ? "edit" : "versions")
12996
+ label: "Workflow",
12997
+ active: activeTab === "workflow",
12998
+ title: activeTab === "workflow" ? "Hide workflow transitions" : "Show workflow transitions",
12999
+ onClick: () => setActiveTab((tab) => tab === "workflow" ? "edit" : "workflow")
12925
13000
  }),
12926
13001
  schema?.audit && isEdit && canReadAudit && /* @__PURE__ */ jsx(HeaderAction, {
12927
13002
  icon: History,
@@ -13030,7 +13105,7 @@ function EditEntryPage() {
13030
13105
  children: /* @__PURE__ */ jsxs("div", {
13031
13106
  className: "dy-space-y-4",
13032
13107
  children: [
13033
- activeTab === "versions" && workflowAvailable && /* @__PURE__ */ jsx("div", {
13108
+ activeTab === "workflow" && workflowAvailable && /* @__PURE__ */ jsx("div", {
13034
13109
  className: "dy-animate-in dy-fade-in dy-duration-200 dy-max-w-3xl dy-mx-auto dy-py-6",
13035
13110
  children: /* @__PURE__ */ jsx(WorkflowPanel, {
13036
13111
  collection: slug,
@@ -13723,7 +13798,7 @@ function MediaPage({ collectionSlug, schema }) {
13723
13798
  className: "dy-relative dy-w-full sm:dy-max-w-sm",
13724
13799
  children: [/* @__PURE__ */ jsx(Search, { className: "dy-absolute dy-left-3 dy-top-1/2 dy--translate-y-1/2 dy-h-4 dy-w-4 dy-text-muted-foreground/60" }), /* @__PURE__ */ jsx(Input, {
13725
13800
  placeholder: "Search assets by filename...",
13726
- className: "dy-pl-10 dy-h-11 dy-bg-card dy-border-border/60 dy-rounded-xl dy-shadow-sm focus-visible:dy-ring-primary/20",
13801
+ className: "dy-pl-10 dy-h-11 dy-bg-card dy-border-border/60 dy-rounded-lg dy-shadow-sm focus-visible:dy-ring-primary/20",
13727
13802
  value: search,
13728
13803
  onChange: (e) => setSearch(e.target.value)
13729
13804
  })]
@@ -13733,14 +13808,14 @@ function MediaPage({ collectionSlug, schema }) {
13733
13808
  value: sortValue,
13734
13809
  onValueChange: (v) => setSortValue(v),
13735
13810
  children: [/* @__PURE__ */ jsxs(SelectTrigger, {
13736
- className: "dy-h-11 dy-w-full dy-rounded-xl dy-bg-card dy-border-border/60 dy-shadow-sm sm:dy-w-44",
13811
+ className: "dy-h-11 dy-w-full dy-rounded-lg dy-bg-card dy-border-border/60 dy-shadow-sm sm:dy-w-44",
13737
13812
  children: [/* @__PURE__ */ jsx(ArrowUpDown, { className: "dy-h-4 dy-w-4 dy-text-muted-foreground/70" }), /* @__PURE__ */ jsx(SelectValue, { placeholder: "Sort by" })]
13738
13813
  }), /* @__PURE__ */ jsx(SelectContent, { children: SORT_OPTIONS.map((opt) => /* @__PURE__ */ jsx(SelectItem, {
13739
13814
  value: opt.value,
13740
13815
  children: opt.label
13741
13816
  }, opt.value)) })]
13742
13817
  }), /* @__PURE__ */ jsxs("div", {
13743
- className: "dy-flex dy-h-11 dy-items-center dy-rounded-xl dy-border dy-border-border/60 dy-bg-card dy-p-1 dy-shadow-sm",
13818
+ className: "dy-flex dy-h-11 dy-items-center dy-rounded-lg dy-border dy-border-border/60 dy-bg-card dy-p-1 dy-shadow-sm",
13744
13819
  children: [/* @__PURE__ */ jsx(Button, {
13745
13820
  type: "button",
13746
13821
  variant: "ghost",
@@ -13998,7 +14073,7 @@ function MediaCard({ item, baseUrl, onDelete, onClick, isSelected }) {
13998
14073
  const previewUrl = getMediaPreviewUrl(item, baseUrl);
13999
14074
  const hasPreview = (isImage || isExternalVideo) && !!previewUrl;
14000
14075
  return /* @__PURE__ */ jsxs(Card, {
14001
- className: cn("dy-overflow-hidden dy-group dy-relative dy-border-border/40 dy-bg-card dy-shadow-sm hover:dy-shadow-xl dy-transition-all dy-duration-300 dy-rounded-xl dy-cursor-pointer", isSelected && "dy-ring-2 dy-ring-primary dy-ring-offset-2 dy-shadow-lg dy-scale-[0.98]"),
14076
+ className: cn("dy-overflow-hidden dy-group dy-relative dy-border-border/40 dy-bg-card dy-shadow-sm hover:dy-shadow-xl dy-transition-all dy-duration-300 dy-rounded-lg dy-cursor-pointer", isSelected && "dy-ring-2 dy-ring-primary dy-ring-offset-2 dy-shadow-lg dy-scale-[0.98]"),
14002
14077
  onClick,
14003
14078
  children: [
14004
14079
  /* @__PURE__ */ jsx(CardHeader, {
@@ -14133,7 +14208,7 @@ function MediaDetailsDialog({ item, collectionSlug, onClose, baseUrl, onUpdate,
14133
14208
  children: [/* @__PURE__ */ jsx("div", {
14134
14209
  className: "dy-relative dy-flex dy-w-full dy-flex-none dy-items-center dy-justify-center dy-border-b dy-border-border/40 dy-bg-muted/15 dy-p-3 sm:dy-p-5 md:dy-h-full md:dy-min-h-0 md:dy-w-3/5 md:dy-flex-shrink md:dy-border-b-0 md:dy-border-r lg:dy-w-2/3",
14135
14210
  children: /* @__PURE__ */ jsx("div", {
14136
- className: "dy-relative dy-flex dy-h-[40dvh] dy-min-h-[220px] dy-max-h-80 dy-w-full dy-max-w-full dy-items-center dy-justify-center dy-overflow-hidden dy-rounded-xl dy-border dy-border-border/40 dy-bg-checkered dy-shadow-inner md:dy-h-full md:dy-max-h-full",
14211
+ className: "dy-relative dy-flex dy-h-[40dvh] dy-min-h-[220px] dy-max-h-80 dy-w-full dy-max-w-full dy-items-center dy-justify-center dy-overflow-hidden dy-rounded-lg dy-border dy-border-border/40 dy-bg-checkered dy-shadow-inner md:dy-h-full md:dy-max-h-full",
14137
14212
  children: embedUrl ? /* @__PURE__ */ jsx("iframe", {
14138
14213
  src: embedUrl,
14139
14214
  title: item.filename,
@@ -14181,7 +14256,7 @@ function MediaDetailsDialog({ item, collectionSlug, onClose, baseUrl, onUpdate,
14181
14256
  className: "dy-text-xs dy-text-muted-foreground",
14182
14257
  children: ["Uploaded on ", item.createdAt ? new Date(item.createdAt).toLocaleDateString() : "N/A"]
14183
14258
  })] }), /* @__PURE__ */ jsxs("div", {
14184
- className: "dy-grid dy-grid-cols-2 dy-gap-x-4 dy-gap-y-3 dy-bg-muted/30 dy-p-3.5 dy-rounded-xl dy-border dy-border-border/40",
14259
+ className: "dy-grid dy-grid-cols-2 dy-gap-x-4 dy-gap-y-3 dy-bg-muted/30 dy-p-3.5 dy-rounded-lg dy-border dy-border-border/40",
14185
14260
  children: [
14186
14261
  /* @__PURE__ */ jsxs("div", {
14187
14262
  className: "dy-space-y-0.5",
@@ -14289,7 +14364,7 @@ function MediaDetailsDialog({ item, collectionSlug, onClose, baseUrl, onUpdate,
14289
14364
  }), /* @__PURE__ */ jsxs("div", {
14290
14365
  className: "dy-flex dy-flex-shrink-0 dy-flex-col dy-gap-3 dy-border-t dy-border-border/40 dy-bg-muted/5 dy-p-4 sm:dy-p-6",
14291
14366
  children: [hasChanges && /* @__PURE__ */ jsx(Button, {
14292
- className: "dy-w-full dy-h-11 dy-rounded-xl dy-font-bold dy-bg-primary dy-text-card dy-shadow-lg dy-shadow-primary/20 dy-animate-in dy-fade-in dy-slide-in-from-bottom-2",
14367
+ className: "dy-w-full dy-h-11 dy-rounded-lg dy-font-bold dy-bg-primary dy-text-card dy-shadow-lg dy-shadow-primary/20 dy-animate-in dy-fade-in dy-slide-in-from-bottom-2",
14293
14368
  onClick: handleSave,
14294
14369
  disabled: isSaving,
14295
14370
  children: isSaving ? "Saving..." : "Save Changes"
@@ -14297,7 +14372,7 @@ function MediaDetailsDialog({ item, collectionSlug, onClose, baseUrl, onUpdate,
14297
14372
  className: "dy-grid dy-grid-cols-2 dy-gap-2 sm:dy-flex",
14298
14373
  children: [
14299
14374
  collectionSlug && /* @__PURE__ */ jsx(Button, {
14300
- className: "dy-col-span-2 dy-h-11 dy-rounded-xl dy-font-bold dy-gap-2 dy-bg-card sm:dy-flex-1",
14375
+ className: "dy-col-span-2 dy-h-11 dy-rounded-lg dy-font-bold dy-gap-2 dy-bg-card sm:dy-flex-1",
14301
14376
  variant: "outline",
14302
14377
  asChild: true,
14303
14378
  children: /* @__PURE__ */ jsxs(Link, {
@@ -14306,7 +14381,7 @@ function MediaDetailsDialog({ item, collectionSlug, onClose, baseUrl, onUpdate,
14306
14381
  })
14307
14382
  }),
14308
14383
  /* @__PURE__ */ jsx(Button, {
14309
- className: cn("dy-h-11 dy-rounded-xl dy-font-bold dy-gap-2 dy-bg-card", collectionSlug ? "dy-px-3" : "dy-flex-1"),
14384
+ className: cn("dy-h-11 dy-rounded-lg dy-font-bold dy-gap-2 dy-bg-card", collectionSlug ? "dy-px-3" : "dy-flex-1"),
14310
14385
  variant: "outline",
14311
14386
  asChild: true,
14312
14387
  title: "Open Original File",
@@ -14319,14 +14394,14 @@ function MediaDetailsDialog({ item, collectionSlug, onClose, baseUrl, onUpdate,
14319
14394
  }),
14320
14395
  isImage && item.mimeType !== "image/svg+xml" && /* @__PURE__ */ jsxs(Button, {
14321
14396
  onClick: () => setIsCropOpen(true),
14322
- className: cn("dy-h-11 dy-rounded-xl dy-font-bold dy-gap-2 dy-bg-card", collectionSlug ? "dy-px-3" : "dy-flex-1"),
14397
+ className: cn("dy-h-11 dy-rounded-lg dy-font-bold dy-gap-2 dy-bg-card", collectionSlug ? "dy-px-3" : "dy-flex-1"),
14323
14398
  variant: "outline",
14324
14399
  title: "Crop Image",
14325
14400
  children: [/* @__PURE__ */ jsx(Scissors, { className: "dy-h-4 dy-w-4" }), !collectionSlug && "Crop"]
14326
14401
  }),
14327
14402
  onDelete && /* @__PURE__ */ jsx(Button, {
14328
14403
  onClick: onDelete,
14329
- className: "dy-h-11 dy-px-4 dy-rounded-xl dy-text-destructive hover:dy-bg-destructive/10 hover:dy-text-destructive dy-transition-colors",
14404
+ className: "dy-h-11 dy-px-4 dy-rounded-lg dy-text-destructive hover:dy-bg-destructive/10 hover:dy-text-destructive dy-transition-colors",
14330
14405
  variant: "ghost",
14331
14406
  title: "Delete Permanently",
14332
14407
  children: /* @__PURE__ */ jsx(Trash2, { className: "dy-h-4 dy-w-4" })
@@ -14457,7 +14532,7 @@ function FileUploader({ collectionSlug, files, setFiles, onComplete }) {
14457
14532
  /* @__PURE__ */ jsx("div", {
14458
14533
  className: "dy-max-h-[240px] dy-overflow-auto dy-space-y-2 dy-pr-2 dy-custom-scrollbar",
14459
14534
  children: files.map((file, idx) => /* @__PURE__ */ jsxs("div", {
14460
- className: "dy-flex dy-items-center dy-justify-between dy-p-3 dy-bg-muted/30 dy-border dy-border-border/40 dy-rounded-xl dy-text-sm dy-group dy-transition-colors hover:dy-bg-muted/50",
14535
+ className: "dy-flex dy-items-center dy-justify-between dy-p-3 dy-bg-muted/30 dy-border dy-border-border/40 dy-rounded-lg dy-text-sm dy-group dy-transition-colors hover:dy-bg-muted/50",
14461
14536
  children: [/* @__PURE__ */ jsxs("div", {
14462
14537
  className: "dy-flex dy-items-center dy-gap-3 dy-truncate",
14463
14538
  children: [/* @__PURE__ */ jsx("div", {
@@ -14488,7 +14563,7 @@ function FileUploader({ collectionSlug, files, setFiles, onComplete }) {
14488
14563
  children: /* @__PURE__ */ jsx(Button, {
14489
14564
  onClick: handleUpload,
14490
14565
  disabled: uploading || files.length === 0,
14491
- className: "dy-w-full dy-h-12 dy-rounded-xl dy-bg-primary hover:dy-bg-primary/90 dy-text-card dy-font-bold dy-shadow-lg dy-shadow-primary/20 dy-transition-all active:dy-scale-[0.98]",
14566
+ className: "dy-w-full dy-h-12 dy-rounded-lg dy-bg-primary hover:dy-bg-primary/90 dy-text-card dy-font-bold dy-shadow-lg dy-shadow-primary/20 dy-transition-all active:dy-scale-[0.98]",
14492
14567
  children: uploading ? /* @__PURE__ */ jsxs("span", {
14493
14568
  className: "dy-flex dy-items-center dy-gap-2",
14494
14569
  children: [/* @__PURE__ */ jsx("div", { className: "dy-h-4 dy-w-4 dy-border-2 dy-border-card/30 dy-border-t-card dy-rounded-full dy-animate-spin" }), "Uploading Assets..."]
@@ -14533,7 +14608,7 @@ function FileUploader({ collectionSlug, files, setFiles, onComplete }) {
14533
14608
  }), /* @__PURE__ */ jsx(Button, {
14534
14609
  onClick: handleAddUrl,
14535
14610
  disabled: addingUrl || !externalUrl.trim(),
14536
- className: "dy-h-12 dy-rounded-xl dy-bg-primary hover:dy-bg-primary/90 dy-text-card dy-font-bold dy-shadow-lg dy-shadow-primary/20 dy-transition-all active:dy-scale-[0.98] sm:dy-w-auto",
14611
+ className: "dy-h-12 dy-rounded-lg dy-bg-primary hover:dy-bg-primary/90 dy-text-card dy-font-bold dy-shadow-lg dy-shadow-primary/20 dy-transition-all active:dy-scale-[0.98] sm:dy-w-auto",
14537
14612
  children: addingUrl ? /* @__PURE__ */ jsxs("span", {
14538
14613
  className: "dy-flex dy-items-center dy-gap-2",
14539
14614
  children: [/* @__PURE__ */ jsx("div", { className: "dy-h-4 dy-w-4 dy-border-2 dy-border-card/30 dy-border-t-card dy-rounded-full dy-animate-spin" }), "Adding…"]
@@ -14734,7 +14809,7 @@ function SetupPromptUI({ config }) {
14734
14809
  setCopied(true);
14735
14810
  window.setTimeout(() => setCopied(false), 1800);
14736
14811
  }
14737
- const currentVersion = "2.5.62";
14812
+ const currentVersion = "2.5.63";
14738
14813
  const [latestVersion, setLatestVersion] = useState(() => {
14739
14814
  if (typeof window === "undefined") return null;
14740
14815
  return localStorage.getItem("dyrected_latest_release");
@@ -15812,7 +15887,7 @@ function AdminUI({ apiKey, baseUrl = "/dyrected", siteId, onNavigate, isEmbedded
15812
15887
  onNavigate,
15813
15888
  isEmbedded
15814
15889
  }) }) }), /* @__PURE__ */ jsx(Toaster$1, {
15815
- position: "top-right",
15890
+ position: "top-center",
15816
15891
  expand: true,
15817
15892
  richColors: true
15818
15893
  })] }) })
@@ -15858,7 +15933,7 @@ function AdminStandalone({ apiKey, baseUrl, siteId }) {
15858
15933
  baseUrl,
15859
15934
  siteId,
15860
15935
  children: /* @__PURE__ */ jsx(AdminThemeProvider, { children: /* @__PURE__ */ jsxs(AdminThemedRoot, { children: [/* @__PURE__ */ jsx(QueryProvider, { children: /* @__PURE__ */ jsx(MemoryRouter, { children: /* @__PURE__ */ jsx(AdminRoutes, {}) }) }), /* @__PURE__ */ jsx(Toaster$1, {
15861
- position: "top-right",
15936
+ position: "top-center",
15862
15937
  expand: true,
15863
15938
  richColors: true
15864
15939
  })] }) })
@@ -0,0 +1,6 @@
1
+ import { CSSProperties } from 'react';
2
+ export declare const WORKFLOW_BADGE_COLORS: Record<string, string>;
3
+ export declare function getWorkflowBadgePresentation(color?: string): {
4
+ className: string;
5
+ style?: CSSProperties;
6
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dyrected/admin",
3
- "version": "2.5.62",
3
+ "version": "2.5.64",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist"
@@ -64,9 +64,9 @@
64
64
  "tailwind-merge": "^3.5.0",
65
65
  "tailwindcss-animate": "^1.0.7",
66
66
  "zod": "^3.25.76",
67
- "@dyrected/core": "^2.5.62",
67
+ "@dyrected/core": "^2.5.64",
68
68
  "@dyrected/knowledge": "^0.2.15",
69
- "@dyrected/sdk": "^2.5.62"
69
+ "@dyrected/sdk": "^2.5.64"
70
70
  },
71
71
  "peerDependencies": {
72
72
  "@tanstack/react-query": "^5.0.0",