@krak-stack/registry 0.1.3 → 0.1.5

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.
@@ -18,7 +18,7 @@ function cn(...inputs) {
18
18
  // ../../src/components/ui/button.tsx
19
19
  import { Button as ButtonPrimitive } from "@base-ui/react/button";
20
20
  import { cva } from "class-variance-authority";
21
- import { jsxDEV } from "react/jsx-dev-runtime";
21
+ import { jsx } from "react/jsx-runtime";
22
22
  var buttonVariants = cva("group/button inline-flex shrink-0 items-center justify-center rounded-md border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", {
23
23
  variants: {
24
24
  variant: {
@@ -51,104 +51,104 @@ function Button({
51
51
  size = "default",
52
52
  ...props
53
53
  }) {
54
- return /* @__PURE__ */ jsxDEV(ButtonPrimitive, {
54
+ return /* @__PURE__ */ jsx(ButtonPrimitive, {
55
55
  "data-slot": "button",
56
56
  className: cn(buttonVariants({ variant, size, className })),
57
57
  ...props
58
- }, undefined, false, undefined, this);
58
+ });
59
59
  }
60
60
 
61
61
  // ../../src/components/ui/alert-dialog.tsx
62
- import { jsxDEV as jsxDEV2 } from "react/jsx-dev-runtime";
62
+ import { jsx as jsx2, jsxs } from "react/jsx-runtime";
63
63
  "use client";
64
64
  function AlertDialog({ ...props }) {
65
- return /* @__PURE__ */ jsxDEV2(AlertDialogPrimitive.Root, {
65
+ return /* @__PURE__ */ jsx2(AlertDialogPrimitive.Root, {
66
66
  "data-slot": "alert-dialog",
67
67
  ...props
68
- }, undefined, false, undefined, this);
68
+ });
69
69
  }
70
70
  function AlertDialogPortal({ ...props }) {
71
- return /* @__PURE__ */ jsxDEV2(AlertDialogPrimitive.Portal, {
71
+ return /* @__PURE__ */ jsx2(AlertDialogPrimitive.Portal, {
72
72
  "data-slot": "alert-dialog-portal",
73
73
  ...props
74
- }, undefined, false, undefined, this);
74
+ });
75
75
  }
76
76
  function AlertDialogOverlay({
77
77
  className,
78
78
  ...props
79
79
  }) {
80
- return /* @__PURE__ */ jsxDEV2(AlertDialogPrimitive.Backdrop, {
80
+ return /* @__PURE__ */ jsx2(AlertDialogPrimitive.Backdrop, {
81
81
  "data-slot": "alert-dialog-overlay",
82
82
  className: cn("fixed inset-0 isolate z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0", className),
83
83
  ...props
84
- }, undefined, false, undefined, this);
84
+ });
85
85
  }
86
86
  function AlertDialogContent({
87
87
  className,
88
88
  size = "default",
89
89
  ...props
90
90
  }) {
91
- return /* @__PURE__ */ jsxDEV2(AlertDialogPortal, {
91
+ return /* @__PURE__ */ jsxs(AlertDialogPortal, {
92
92
  children: [
93
- /* @__PURE__ */ jsxDEV2(AlertDialogOverlay, {}, undefined, false, undefined, this),
94
- /* @__PURE__ */ jsxDEV2(AlertDialogPrimitive.Popup, {
93
+ /* @__PURE__ */ jsx2(AlertDialogOverlay, {}),
94
+ /* @__PURE__ */ jsx2(AlertDialogPrimitive.Popup, {
95
95
  "data-slot": "alert-dialog-content",
96
96
  "data-size": size,
97
97
  className: cn("group/alert-dialog-content fixed top-1/2 left-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 gap-6 rounded-xl bg-popover p-6 text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none data-[size=default]:max-w-xs data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-lg data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", className),
98
98
  ...props
99
- }, undefined, false, undefined, this)
99
+ })
100
100
  ]
101
- }, undefined, true, undefined, this);
101
+ });
102
102
  }
103
103
  function AlertDialogHeader({
104
104
  className,
105
105
  ...props
106
106
  }) {
107
- return /* @__PURE__ */ jsxDEV2("div", {
107
+ return /* @__PURE__ */ jsx2("div", {
108
108
  "data-slot": "alert-dialog-header",
109
109
  className: cn("grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-6 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]", className),
110
110
  ...props
111
- }, undefined, false, undefined, this);
111
+ });
112
112
  }
113
113
  function AlertDialogFooter({
114
114
  className,
115
115
  ...props
116
116
  }) {
117
- return /* @__PURE__ */ jsxDEV2("div", {
117
+ return /* @__PURE__ */ jsx2("div", {
118
118
  "data-slot": "alert-dialog-footer",
119
119
  className: cn("flex flex-col-reverse gap-2 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end", className),
120
120
  ...props
121
- }, undefined, false, undefined, this);
121
+ });
122
122
  }
123
123
  function AlertDialogTitle({
124
124
  className,
125
125
  ...props
126
126
  }) {
127
- return /* @__PURE__ */ jsxDEV2(AlertDialogPrimitive.Title, {
127
+ return /* @__PURE__ */ jsx2(AlertDialogPrimitive.Title, {
128
128
  "data-slot": "alert-dialog-title",
129
129
  className: cn("text-lg font-medium sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2", className),
130
130
  ...props
131
- }, undefined, false, undefined, this);
131
+ });
132
132
  }
133
133
  function AlertDialogDescription({
134
134
  className,
135
135
  ...props
136
136
  }) {
137
- return /* @__PURE__ */ jsxDEV2(AlertDialogPrimitive.Description, {
137
+ return /* @__PURE__ */ jsx2(AlertDialogPrimitive.Description, {
138
138
  "data-slot": "alert-dialog-description",
139
139
  className: cn("text-sm text-balance text-muted-foreground md:text-pretty *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground", className),
140
140
  ...props
141
- }, undefined, false, undefined, this);
141
+ });
142
142
  }
143
143
  function AlertDialogAction({
144
144
  className,
145
145
  ...props
146
146
  }) {
147
- return /* @__PURE__ */ jsxDEV2(Button, {
147
+ return /* @__PURE__ */ jsx2(Button, {
148
148
  "data-slot": "alert-dialog-action",
149
149
  className: cn(className),
150
150
  ...props
151
- }, undefined, false, undefined, this);
151
+ });
152
152
  }
153
153
  function AlertDialogCancel({
154
154
  className,
@@ -156,15 +156,15 @@ function AlertDialogCancel({
156
156
  size = "default",
157
157
  ...props
158
158
  }) {
159
- return /* @__PURE__ */ jsxDEV2(AlertDialogPrimitive.Close, {
159
+ return /* @__PURE__ */ jsx2(AlertDialogPrimitive.Close, {
160
160
  "data-slot": "alert-dialog-cancel",
161
161
  className: cn(className),
162
- render: /* @__PURE__ */ jsxDEV2(Button, {
162
+ render: /* @__PURE__ */ jsx2(Button, {
163
163
  variant,
164
164
  size
165
- }, undefined, false, undefined, this),
165
+ }),
166
166
  ...props
167
- }, undefined, false, undefined, this);
167
+ });
168
168
  }
169
169
 
170
170
  // ../../src/components/ui/file-picker.tsx
@@ -180,7 +180,7 @@ import { CloudUpload, FileIcon, FileUp, RefreshCw, Trash2 } from "lucide-react";
180
180
  import { mergeProps } from "@base-ui/react/merge-props";
181
181
  import { useRender } from "@base-ui/react/use-render";
182
182
  import { cva as cva2 } from "class-variance-authority";
183
- import { jsxDEV as jsxDEV3 } from "react/jsx-dev-runtime";
183
+ import { jsx as jsx3 } from "react/jsx-runtime";
184
184
  var attachmentVariants = cva2("group/attachment relative flex w-fit max-w-full min-w-0 shrink-0 flex-wrap rounded-xl border bg-card text-card-foreground transition-colors focus-within:ring-1 focus-within:ring-ring/50 has-[>a,>button]:hover:bg-muted/50 data-[state=error]:border-destructive/30 data-[state=idle]:border-dashed", {
185
185
  variants: {
186
186
  size: {
@@ -201,14 +201,14 @@ function Attachment({
201
201
  orientation = "horizontal",
202
202
  ...props
203
203
  }) {
204
- return /* @__PURE__ */ jsxDEV3("div", {
204
+ return /* @__PURE__ */ jsx3("div", {
205
205
  "data-slot": "attachment",
206
206
  "data-state": state,
207
207
  "data-size": size,
208
208
  "data-orientation": orientation,
209
209
  className: cn(attachmentVariants({ size, orientation }), className),
210
210
  ...props
211
- }, undefined, false, undefined, this);
211
+ });
212
212
  }
213
213
  var attachmentMediaVariants = cva2("relative flex aspect-square w-10 shrink-0 items-center justify-center overflow-hidden rounded-lg bg-muted text-foreground group-data-[orientation=vertical]/attachment:w-full group-data-[size=sm]/attachment:w-8 group-data-[size=xs]/attachment:w-7 group-data-[size=xs]/attachment:rounded-md group-data-[state=error]/attachment:bg-destructive/10 group-data-[state=error]/attachment:text-destructive group-data-[orientation=vertical]/attachment:*:data-[slot=spinner]:size-6! [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 group-data-[orientation=vertical]/attachment:[&_svg:not([class*='size-'])]:size-6 group-data-[size=xs]/attachment:[&_svg:not([class*='size-'])]:size-3.5", {
214
214
  variants: {
@@ -226,52 +226,52 @@ function AttachmentMedia({
226
226
  variant = "icon",
227
227
  ...props
228
228
  }) {
229
- return /* @__PURE__ */ jsxDEV3("div", {
229
+ return /* @__PURE__ */ jsx3("div", {
230
230
  "data-slot": "attachment-media",
231
231
  "data-variant": variant,
232
232
  className: cn(attachmentMediaVariants({ variant }), className),
233
233
  ...props
234
- }, undefined, false, undefined, this);
234
+ });
235
235
  }
236
236
  function AttachmentContent({
237
237
  className,
238
238
  ...props
239
239
  }) {
240
- return /* @__PURE__ */ jsxDEV3("div", {
240
+ return /* @__PURE__ */ jsx3("div", {
241
241
  "data-slot": "attachment-content",
242
242
  className: cn("max-w-full min-w-0 flex-1 leading-tight group-data-[orientation=vertical]/attachment:px-1", className),
243
243
  ...props
244
- }, undefined, false, undefined, this);
244
+ });
245
245
  }
246
246
  function AttachmentTitle({
247
247
  className,
248
248
  ...props
249
249
  }) {
250
- return /* @__PURE__ */ jsxDEV3("span", {
250
+ return /* @__PURE__ */ jsx3("span", {
251
251
  "data-slot": "attachment-title",
252
252
  className: cn("block max-w-full min-w-0 truncate font-medium group-data-[state=processing]/attachment:shimmer group-data-[state=uploading]/attachment:shimmer", className),
253
253
  ...props
254
- }, undefined, false, undefined, this);
254
+ });
255
255
  }
256
256
  function AttachmentDescription({
257
257
  className,
258
258
  ...props
259
259
  }) {
260
- return /* @__PURE__ */ jsxDEV3("span", {
260
+ return /* @__PURE__ */ jsx3("span", {
261
261
  "data-slot": "attachment-description",
262
262
  className: cn("mt-0.5 block min-w-0 truncate text-xs text-muted-foreground group-data-[state=error]/attachment:text-destructive/80", "max-w-full", className),
263
263
  ...props
264
- }, undefined, false, undefined, this);
264
+ });
265
265
  }
266
266
  function AttachmentActions({
267
267
  className,
268
268
  ...props
269
269
  }) {
270
- return /* @__PURE__ */ jsxDEV3("div", {
270
+ return /* @__PURE__ */ jsx3("div", {
271
271
  "data-slot": "attachment-actions",
272
272
  className: cn("relative z-20 flex shrink-0 items-center group-data-[orientation=vertical]/attachment:absolute group-data-[orientation=vertical]/attachment:top-3 group-data-[orientation=vertical]/attachment:right-3 group-data-[orientation=vertical]/attachment:gap-1", className),
273
273
  ...props
274
- }, undefined, false, undefined, this);
274
+ });
275
275
  }
276
276
  function AttachmentAction({
277
277
  className,
@@ -279,32 +279,32 @@ function AttachmentAction({
279
279
  size = "icon-xs",
280
280
  ...props
281
281
  }) {
282
- return /* @__PURE__ */ jsxDEV3(Button, {
282
+ return /* @__PURE__ */ jsx3(Button, {
283
283
  "data-slot": "attachment-action",
284
284
  variant: variant ?? "ghost",
285
285
  size,
286
286
  className: cn(className),
287
287
  ...props
288
- }, undefined, false, undefined, this);
288
+ });
289
289
  }
290
290
  function AttachmentGroup({ className, ...props }) {
291
- return /* @__PURE__ */ jsxDEV3("div", {
291
+ return /* @__PURE__ */ jsx3("div", {
292
292
  "data-slot": "attachment-group",
293
293
  className: cn("flex min-w-0 scroll-fade-x snap-x snap-mandatory scroll-px-1 scrollbar-none gap-3 overflow-x-auto overscroll-x-contain py-1 *:data-[slot=attachment]:flex-none *:data-[slot=attachment]:snap-start", className),
294
294
  ...props
295
- }, undefined, false, undefined, this);
295
+ });
296
296
  }
297
297
 
298
298
  // ../../src/components/ui/input.tsx
299
299
  import { Input as InputPrimitive } from "@base-ui/react/input";
300
- import { jsxDEV as jsxDEV4 } from "react/jsx-dev-runtime";
300
+ import { jsx as jsx4 } from "react/jsx-runtime";
301
301
  function Input({ className, type, ...props }) {
302
- return /* @__PURE__ */ jsxDEV4(InputPrimitive, {
302
+ return /* @__PURE__ */ jsx4(InputPrimitive, {
303
303
  type,
304
304
  "data-slot": "input",
305
305
  className: cn("h-9 w-full min-w-0 rounded-md border border-input bg-transparent px-2.5 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40", className),
306
306
  ...props
307
- }, undefined, false, undefined, this);
307
+ });
308
308
  }
309
309
 
310
310
  // ../../src/paraglide/runtime.js
@@ -736,7 +736,7 @@ function isCustomStrategy(strategy2) {
736
736
  }
737
737
 
738
738
  // ../../src/components/ui/file-picker.tsx
739
- import { jsxDEV as jsxDEV5, Fragment } from "react/jsx-dev-runtime";
739
+ import { jsx as jsx5, jsxs as jsxs2, Fragment } from "react/jsx-runtime";
740
740
  "use client";
741
741
  var messages = {
742
742
  en: {
@@ -829,7 +829,7 @@ var FilePicker = ({
829
829
  if (inputRef.current)
830
830
  inputRef.current.value = "";
831
831
  };
832
- const input = /* @__PURE__ */ jsxDEV5(Input, {
832
+ const input = /* @__PURE__ */ jsx5(Input, {
833
833
  ref: inputRef,
834
834
  className: "sr-only",
835
835
  id,
@@ -846,12 +846,12 @@ var FilePicker = ({
846
846
  event.target.value = "";
847
847
  },
848
848
  "aria-invalid": invalid
849
- }, undefined, false, undefined, this);
849
+ });
850
850
  if (multiple) {
851
- return /* @__PURE__ */ jsxDEV5("div", {
851
+ return /* @__PURE__ */ jsxs2("div", {
852
852
  className: "grid min-w-0 gap-3",
853
853
  children: [
854
- /* @__PURE__ */ jsxDEV5("div", {
854
+ /* @__PURE__ */ jsxs2("div", {
855
855
  className: "bg-muted/30 data-[dragging=true]:bg-muted flex min-h-32 min-w-0 flex-col items-center justify-center gap-3 rounded-xl border border-dashed p-6 text-center transition-colors",
856
856
  "data-dragging": dragging,
857
857
  onDragEnter: (event) => {
@@ -870,69 +870,69 @@ var FilePicker = ({
870
870
  onDragOver: (event) => event.preventDefault(),
871
871
  onDrop: handleDrop,
872
872
  children: [
873
- /* @__PURE__ */ jsxDEV5(CloudUpload, {
873
+ /* @__PURE__ */ jsx5(CloudUpload, {
874
874
  className: "text-muted-foreground size-6"
875
- }, undefined, false, undefined, this),
876
- /* @__PURE__ */ jsxDEV5("div", {
875
+ }),
876
+ /* @__PURE__ */ jsxs2("div", {
877
877
  className: "max-w-full min-w-0",
878
878
  children: [
879
- /* @__PURE__ */ jsxDEV5("p", {
879
+ /* @__PURE__ */ jsx5("p", {
880
880
  className: "text-sm font-medium",
881
881
  children: labels.dropFiles
882
- }, undefined, false, undefined, this),
883
- /* @__PURE__ */ jsxDEV5("p", {
882
+ }),
883
+ /* @__PURE__ */ jsx5("p", {
884
884
  className: "text-muted-foreground max-w-full text-xs [overflow-wrap:anywhere]",
885
885
  children: labels.accepts(accept)
886
- }, undefined, false, undefined, this)
886
+ })
887
887
  ]
888
- }, undefined, true, undefined, this),
889
- /* @__PURE__ */ jsxDEV5(Button, {
888
+ }),
889
+ /* @__PURE__ */ jsxs2(Button, {
890
890
  type: "button",
891
891
  variant: "outline",
892
892
  onClick: () => inputRef.current?.click(),
893
893
  children: [
894
- /* @__PURE__ */ jsxDEV5(FileUp, {
894
+ /* @__PURE__ */ jsx5(FileUp, {
895
895
  "data-icon": "inline-start"
896
- }, undefined, false, undefined, this),
896
+ }),
897
897
  labels.chooseFiles
898
898
  ]
899
- }, undefined, true, undefined, this),
899
+ }),
900
900
  input
901
901
  ]
902
- }, undefined, true, undefined, this),
903
- files.length > 0 ? /* @__PURE__ */ jsxDEV5(AttachmentGroup, {
904
- children: files.map((selectedFile) => /* @__PURE__ */ jsxDEV5(Attachment, {
902
+ }),
903
+ files.length > 0 ? /* @__PURE__ */ jsx5(AttachmentGroup, {
904
+ children: files.map((selectedFile) => /* @__PURE__ */ jsxs2(Attachment, {
905
905
  state: invalid ? "error" : "idle",
906
906
  children: [
907
- /* @__PURE__ */ jsxDEV5(AttachmentMedia, {
908
- children: /* @__PURE__ */ jsxDEV5(FileIcon, {}, undefined, false, undefined, this)
909
- }, undefined, false, undefined, this),
910
- /* @__PURE__ */ jsxDEV5(AttachmentContent, {
907
+ /* @__PURE__ */ jsx5(AttachmentMedia, {
908
+ children: /* @__PURE__ */ jsx5(FileIcon, {})
909
+ }),
910
+ /* @__PURE__ */ jsxs2(AttachmentContent, {
911
911
  children: [
912
- /* @__PURE__ */ jsxDEV5(AttachmentTitle, {
912
+ /* @__PURE__ */ jsx5(AttachmentTitle, {
913
913
  children: selectedFile.name
914
- }, undefined, false, undefined, this),
915
- /* @__PURE__ */ jsxDEV5(AttachmentDescription, {
914
+ }),
915
+ /* @__PURE__ */ jsx5(AttachmentDescription, {
916
916
  children: fileDescription(selectedFile)
917
- }, undefined, false, undefined, this)
917
+ })
918
918
  ]
919
- }, undefined, true, undefined, this),
920
- /* @__PURE__ */ jsxDEV5(AttachmentActions, {
921
- children: /* @__PURE__ */ jsxDEV5(AttachmentAction, {
919
+ }),
920
+ /* @__PURE__ */ jsx5(AttachmentActions, {
921
+ children: /* @__PURE__ */ jsx5(AttachmentAction, {
922
922
  type: "button",
923
923
  "aria-label": `${labels.deleteFile} ${selectedFile.name}`,
924
924
  onClick: () => onFilesChange?.(files.filter((candidate) => candidate !== selectedFile)),
925
- children: /* @__PURE__ */ jsxDEV5(Trash2, {}, undefined, false, undefined, this)
926
- }, undefined, false, undefined, this)
927
- }, undefined, false, undefined, this)
925
+ children: /* @__PURE__ */ jsx5(Trash2, {})
926
+ })
927
+ })
928
928
  ]
929
- }, `${selectedFile.name}:${selectedFile.size}:${selectedFile.lastModified}`, true, undefined, this))
930
- }, undefined, false, undefined, this) : null
929
+ }, `${selectedFile.name}:${selectedFile.size}:${selectedFile.lastModified}`))
930
+ }) : null
931
931
  ]
932
- }, undefined, true, undefined, this);
932
+ });
933
933
  }
934
934
  if (!selected) {
935
- return /* @__PURE__ */ jsxDEV5("div", {
935
+ return /* @__PURE__ */ jsxs2("div", {
936
936
  className: "bg-muted/30 data-[dragging=true]:bg-muted flex min-h-32 flex-col items-center justify-center gap-3 rounded-xl border border-dashed p-6 text-center transition-colors",
937
937
  "data-dragging": dragging,
938
938
  onDragEnter: (event) => {
@@ -951,87 +951,87 @@ var FilePicker = ({
951
951
  onDragOver: (event) => event.preventDefault(),
952
952
  onDrop: handleDrop,
953
953
  children: [
954
- /* @__PURE__ */ jsxDEV5(CloudUpload, {
954
+ /* @__PURE__ */ jsx5(CloudUpload, {
955
955
  className: "text-muted-foreground size-6"
956
- }, undefined, false, undefined, this),
957
- /* @__PURE__ */ jsxDEV5("div", {
956
+ }),
957
+ /* @__PURE__ */ jsxs2("div", {
958
958
  children: [
959
- /* @__PURE__ */ jsxDEV5("p", {
959
+ /* @__PURE__ */ jsx5("p", {
960
960
  className: "text-sm font-medium",
961
961
  children: labels.dropFile
962
- }, undefined, false, undefined, this),
963
- /* @__PURE__ */ jsxDEV5("p", {
962
+ }),
963
+ /* @__PURE__ */ jsx5("p", {
964
964
  className: "text-muted-foreground text-xs",
965
965
  children: labels.accepts(accept)
966
- }, undefined, false, undefined, this)
966
+ })
967
967
  ]
968
- }, undefined, true, undefined, this),
969
- /* @__PURE__ */ jsxDEV5(Button, {
968
+ }),
969
+ /* @__PURE__ */ jsxs2(Button, {
970
970
  type: "button",
971
971
  variant: "outline",
972
972
  onClick: () => inputRef.current?.click(),
973
973
  children: [
974
- /* @__PURE__ */ jsxDEV5(FileUp, {
974
+ /* @__PURE__ */ jsx5(FileUp, {
975
975
  "data-icon": "inline-start"
976
- }, undefined, false, undefined, this),
976
+ }),
977
977
  labels.chooseFile
978
978
  ]
979
- }, undefined, true, undefined, this),
979
+ }),
980
980
  input
981
981
  ]
982
- }, undefined, true, undefined, this);
982
+ });
983
983
  }
984
- return /* @__PURE__ */ jsxDEV5(Fragment, {
984
+ return /* @__PURE__ */ jsxs2(Fragment, {
985
985
  children: [
986
- /* @__PURE__ */ jsxDEV5(Attachment, {
986
+ /* @__PURE__ */ jsxs2(Attachment, {
987
987
  className: image ? "w-fit max-w-full" : "w-full",
988
988
  orientation: image ? "vertical" : "horizontal",
989
989
  state: invalid ? "error" : "done",
990
990
  children: [
991
- /* @__PURE__ */ jsxDEV5(AttachmentMedia, {
991
+ /* @__PURE__ */ jsx5(AttachmentMedia, {
992
992
  variant: image ? "image" : "icon",
993
993
  className: image ? "aspect-auto w-full max-w-full [&_img]:aspect-auto! [&_img]:object-contain!" : undefined,
994
- children: image && imageUrl ? /* @__PURE__ */ jsxDEV5("img", {
994
+ children: image && imageUrl ? /* @__PURE__ */ jsx5("img", {
995
995
  src: imageUrl,
996
996
  alt: image.alt,
997
997
  width: image.width,
998
998
  height: image.height,
999
999
  className: "h-auto max-w-full object-contain",
1000
1000
  style: { maxHeight: image.height }
1001
- }, undefined, false, undefined, this) : /* @__PURE__ */ jsxDEV5(FileIcon, {}, undefined, false, undefined, this)
1002
- }, undefined, false, undefined, this),
1003
- /* @__PURE__ */ jsxDEV5(AttachmentContent, {
1001
+ }) : /* @__PURE__ */ jsx5(FileIcon, {})
1002
+ }),
1003
+ /* @__PURE__ */ jsxs2(AttachmentContent, {
1004
1004
  className: image ? "w-full" : undefined,
1005
1005
  children: [
1006
- /* @__PURE__ */ jsxDEV5(AttachmentTitle, {
1006
+ /* @__PURE__ */ jsx5(AttachmentTitle, {
1007
1007
  children: title
1008
- }, undefined, false, undefined, this),
1009
- file ? /* @__PURE__ */ jsxDEV5(AttachmentDescription, {
1008
+ }),
1009
+ file ? /* @__PURE__ */ jsx5(AttachmentDescription, {
1010
1010
  children: fileDescription(file)
1011
- }, undefined, false, undefined, this) : null
1011
+ }) : null
1012
1012
  ]
1013
- }, undefined, true, undefined, this),
1014
- /* @__PURE__ */ jsxDEV5(AttachmentActions, {
1013
+ }),
1014
+ /* @__PURE__ */ jsxs2(AttachmentActions, {
1015
1015
  children: [
1016
- /* @__PURE__ */ jsxDEV5(AttachmentAction, {
1016
+ /* @__PURE__ */ jsx5(AttachmentAction, {
1017
1017
  type: "button",
1018
1018
  "aria-label": labels.replaceFile,
1019
1019
  onClick: () => inputRef.current?.click(),
1020
- children: /* @__PURE__ */ jsxDEV5(RefreshCw, {}, undefined, false, undefined, this)
1021
- }, undefined, false, undefined, this),
1022
- canClear ? /* @__PURE__ */ jsxDEV5(AttachmentAction, {
1020
+ children: /* @__PURE__ */ jsx5(RefreshCw, {})
1021
+ }),
1022
+ canClear ? /* @__PURE__ */ jsx5(AttachmentAction, {
1023
1023
  type: "button",
1024
1024
  "aria-label": `${labels.deleteFile} ${typeof title === "string" ? title : ""}`,
1025
1025
  onClick: clear,
1026
- children: /* @__PURE__ */ jsxDEV5(Trash2, {}, undefined, false, undefined, this)
1027
- }, undefined, false, undefined, this) : null
1026
+ children: /* @__PURE__ */ jsx5(Trash2, {})
1027
+ }) : null
1028
1028
  ]
1029
- }, undefined, true, undefined, this)
1029
+ })
1030
1030
  ]
1031
- }, undefined, true, undefined, this),
1031
+ }),
1032
1032
  input
1033
1033
  ]
1034
- }, undefined, true, undefined, this);
1034
+ });
1035
1035
  };
1036
1036
 
1037
1037
  // ../../src/components/ui/badge.tsx
@@ -1075,19 +1075,19 @@ function Badge({
1075
1075
  // ../../src/components/ui/checkbox.tsx
1076
1076
  import { Checkbox as CheckboxPrimitive } from "@base-ui/react/checkbox";
1077
1077
  import { CheckIcon } from "lucide-react";
1078
- import { jsxDEV as jsxDEV6 } from "react/jsx-dev-runtime";
1078
+ import { jsx as jsx6 } from "react/jsx-runtime";
1079
1079
  "use client";
1080
1080
  function Checkbox({ className, ...props }) {
1081
- return /* @__PURE__ */ jsxDEV6(CheckboxPrimitive.Root, {
1081
+ return /* @__PURE__ */ jsx6(CheckboxPrimitive.Root, {
1082
1082
  "data-slot": "checkbox",
1083
1083
  className: cn("peer relative flex size-4 shrink-0 items-center justify-center rounded-[4px] border border-input shadow-xs transition-shadow outline-none group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground dark:data-checked:bg-primary", className),
1084
1084
  ...props,
1085
- children: /* @__PURE__ */ jsxDEV6(CheckboxPrimitive.Indicator, {
1085
+ children: /* @__PURE__ */ jsx6(CheckboxPrimitive.Indicator, {
1086
1086
  "data-slot": "checkbox-indicator",
1087
1087
  className: "grid place-content-center text-current transition-none [&>svg]:size-3.5",
1088
- children: /* @__PURE__ */ jsxDEV6(CheckIcon, {}, undefined, false, undefined, this)
1089
- }, undefined, false, undefined, this)
1090
- }, undefined, false, undefined, this);
1088
+ children: /* @__PURE__ */ jsx6(CheckIcon, {})
1089
+ })
1090
+ });
1091
1091
  }
1092
1092
 
1093
1093
  // ../../src/components/ui/field.tsx
@@ -1095,47 +1095,47 @@ import { useMemo as useMemo2 } from "react";
1095
1095
  import { cva as cva4 } from "class-variance-authority";
1096
1096
 
1097
1097
  // ../../src/components/ui/label.tsx
1098
- import { jsxDEV as jsxDEV7 } from "react/jsx-dev-runtime";
1098
+ import { jsx as jsx7 } from "react/jsx-runtime";
1099
1099
  "use client";
1100
1100
  function Label({ className, ...props }) {
1101
- return /* @__PURE__ */ jsxDEV7("label", {
1101
+ return /* @__PURE__ */ jsx7("label", {
1102
1102
  "data-slot": "label",
1103
1103
  className: cn("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50", className),
1104
1104
  ...props
1105
- }, undefined, false, undefined, this);
1105
+ });
1106
1106
  }
1107
1107
 
1108
1108
  // ../../src/components/ui/separator.tsx
1109
1109
  import { Separator as SeparatorPrimitive } from "@base-ui/react/separator";
1110
- import { jsxDEV as jsxDEV8 } from "react/jsx-dev-runtime";
1110
+ import { jsx as jsx8 } from "react/jsx-runtime";
1111
1111
 
1112
1112
  // ../../src/components/ui/field.tsx
1113
- import { jsxDEV as jsxDEV9 } from "react/jsx-dev-runtime";
1113
+ import { jsx as jsx9, jsxs as jsxs3 } from "react/jsx-runtime";
1114
1114
  function FieldSet({ className, ...props }) {
1115
- return /* @__PURE__ */ jsxDEV9("fieldset", {
1115
+ return /* @__PURE__ */ jsx9("fieldset", {
1116
1116
  "data-slot": "field-set",
1117
1117
  className: cn("flex flex-col gap-6 has-[>[data-slot=checkbox-group]]:gap-3 has-[>[data-slot=radio-group]]:gap-3", className),
1118
1118
  ...props
1119
- }, undefined, false, undefined, this);
1119
+ });
1120
1120
  }
1121
1121
  function FieldLegend({
1122
1122
  className,
1123
1123
  variant = "legend",
1124
1124
  ...props
1125
1125
  }) {
1126
- return /* @__PURE__ */ jsxDEV9("legend", {
1126
+ return /* @__PURE__ */ jsx9("legend", {
1127
1127
  "data-slot": "field-legend",
1128
1128
  "data-variant": variant,
1129
1129
  className: cn("mb-3 font-medium data-[variant=label]:text-sm data-[variant=legend]:text-base", className),
1130
1130
  ...props
1131
- }, undefined, false, undefined, this);
1131
+ });
1132
1132
  }
1133
1133
  function FieldGroup({ className, ...props }) {
1134
- return /* @__PURE__ */ jsxDEV9("div", {
1134
+ return /* @__PURE__ */ jsx9("div", {
1135
1135
  "data-slot": "field-group",
1136
1136
  className: cn("group/field-group @container/field-group flex w-full flex-col gap-7 data-[slot=checkbox-group]:gap-3 *:data-[slot=field-group]:gap-4", className),
1137
1137
  ...props
1138
- }, undefined, false, undefined, this);
1138
+ });
1139
1139
  }
1140
1140
  var fieldVariants = cva4("group/field flex w-full gap-3 data-[invalid=true]:text-destructive", {
1141
1141
  variants: {
@@ -1154,51 +1154,51 @@ function Field({
1154
1154
  orientation = "vertical",
1155
1155
  ...props
1156
1156
  }) {
1157
- return /* @__PURE__ */ jsxDEV9("div", {
1157
+ return /* @__PURE__ */ jsx9("div", {
1158
1158
  role: "group",
1159
1159
  "data-slot": "field",
1160
1160
  "data-orientation": orientation,
1161
1161
  className: cn(fieldVariants({ orientation }), className),
1162
1162
  ...props
1163
- }, undefined, false, undefined, this);
1163
+ });
1164
1164
  }
1165
1165
  function FieldLabel({
1166
1166
  className,
1167
1167
  ...props
1168
1168
  }) {
1169
- return /* @__PURE__ */ jsxDEV9(Label, {
1169
+ return /* @__PURE__ */ jsx9(Label, {
1170
1170
  "data-slot": "field-label",
1171
1171
  className: cn("group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50 has-data-checked:border-primary/30 has-data-checked:bg-primary/5 has-[>[data-slot=field]]:rounded-md has-[>[data-slot=field]]:border *:data-[slot=field]:p-3 dark:has-data-checked:border-primary/20 dark:has-data-checked:bg-primary/10", "has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col", className),
1172
1172
  ...props
1173
- }, undefined, false, undefined, this);
1173
+ });
1174
1174
  }
1175
1175
  function FieldDescription({ className, ...props }) {
1176
- return /* @__PURE__ */ jsxDEV9("p", {
1176
+ return /* @__PURE__ */ jsx9("p", {
1177
1177
  "data-slot": "field-description",
1178
1178
  className: cn("text-left text-sm leading-normal font-normal text-muted-foreground group-has-data-horizontal/field:text-balance [[data-variant=legend]+&]:-mt-1.5", "last:mt-0 nth-last-2:-mt-1", "[&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary", className),
1179
1179
  ...props
1180
- }, undefined, false, undefined, this);
1180
+ });
1181
1181
  }
1182
1182
 
1183
1183
  // ../../src/components/ui/select.tsx
1184
1184
  import { Select as SelectPrimitive } from "@base-ui/react/select";
1185
1185
  import { ChevronDownIcon, CheckIcon as CheckIcon2, ChevronUpIcon } from "lucide-react";
1186
- import { jsxDEV as jsxDEV10 } from "react/jsx-dev-runtime";
1186
+ import { jsx as jsx10, jsxs as jsxs4 } from "react/jsx-runtime";
1187
1187
  "use client";
1188
1188
  var Select = SelectPrimitive.Root;
1189
1189
  function SelectGroup({ className, ...props }) {
1190
- return /* @__PURE__ */ jsxDEV10(SelectPrimitive.Group, {
1190
+ return /* @__PURE__ */ jsx10(SelectPrimitive.Group, {
1191
1191
  "data-slot": "select-group",
1192
1192
  className: cn("scroll-my-1 p-1", className),
1193
1193
  ...props
1194
- }, undefined, false, undefined, this);
1194
+ });
1195
1195
  }
1196
1196
  function SelectValue({ className, ...props }) {
1197
- return /* @__PURE__ */ jsxDEV10(SelectPrimitive.Value, {
1197
+ return /* @__PURE__ */ jsx10(SelectPrimitive.Value, {
1198
1198
  "data-slot": "select-value",
1199
1199
  className: cn("flex flex-1 text-left", className),
1200
1200
  ...props
1201
- }, undefined, false, undefined, this);
1201
+ });
1202
1202
  }
1203
1203
  function SelectTrigger({
1204
1204
  className,
@@ -1206,20 +1206,20 @@ function SelectTrigger({
1206
1206
  children,
1207
1207
  ...props
1208
1208
  }) {
1209
- return /* @__PURE__ */ jsxDEV10(SelectPrimitive.Trigger, {
1209
+ return /* @__PURE__ */ jsxs4(SelectPrimitive.Trigger, {
1210
1210
  "data-slot": "select-trigger",
1211
1211
  "data-size": size,
1212
1212
  className: cn("flex w-fit items-center justify-between gap-1.5 rounded-md border border-input bg-transparent py-2 pr-2 pl-2.5 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 data-placeholder:text-muted-foreground data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-1.5 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
1213
1213
  ...props,
1214
1214
  children: [
1215
1215
  children,
1216
- /* @__PURE__ */ jsxDEV10(SelectPrimitive.Icon, {
1217
- render: /* @__PURE__ */ jsxDEV10(ChevronDownIcon, {
1216
+ /* @__PURE__ */ jsx10(SelectPrimitive.Icon, {
1217
+ render: /* @__PURE__ */ jsx10(ChevronDownIcon, {
1218
1218
  className: "text-muted-foreground pointer-events-none size-4"
1219
- }, undefined, false, undefined, this)
1220
- }, undefined, false, undefined, this)
1219
+ })
1220
+ })
1221
1221
  ]
1222
- }, undefined, true, undefined, this);
1222
+ });
1223
1223
  }
1224
1224
  function SelectContent({
1225
1225
  className,
@@ -1231,86 +1231,86 @@ function SelectContent({
1231
1231
  alignItemWithTrigger = true,
1232
1232
  ...props
1233
1233
  }) {
1234
- return /* @__PURE__ */ jsxDEV10(SelectPrimitive.Portal, {
1235
- children: /* @__PURE__ */ jsxDEV10(SelectPrimitive.Positioner, {
1234
+ return /* @__PURE__ */ jsx10(SelectPrimitive.Portal, {
1235
+ children: /* @__PURE__ */ jsx10(SelectPrimitive.Positioner, {
1236
1236
  side,
1237
1237
  sideOffset,
1238
1238
  align,
1239
1239
  alignOffset,
1240
1240
  alignItemWithTrigger,
1241
1241
  className: "isolate z-50",
1242
- children: /* @__PURE__ */ jsxDEV10(SelectPrimitive.Popup, {
1242
+ children: /* @__PURE__ */ jsxs4(SelectPrimitive.Popup, {
1243
1243
  "data-slot": "select-content",
1244
1244
  "data-align-trigger": alignItemWithTrigger,
1245
1245
  className: cn("relative isolate z-50 max-h-(--available-height) w-(--anchor-width) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[align-trigger=true]:animate-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", className),
1246
1246
  ...props,
1247
1247
  children: [
1248
- /* @__PURE__ */ jsxDEV10(SelectScrollUpButton, {}, undefined, false, undefined, this),
1249
- /* @__PURE__ */ jsxDEV10(SelectPrimitive.List, {
1248
+ /* @__PURE__ */ jsx10(SelectScrollUpButton, {}),
1249
+ /* @__PURE__ */ jsx10(SelectPrimitive.List, {
1250
1250
  children
1251
- }, undefined, false, undefined, this),
1252
- /* @__PURE__ */ jsxDEV10(SelectScrollDownButton, {}, undefined, false, undefined, this)
1251
+ }),
1252
+ /* @__PURE__ */ jsx10(SelectScrollDownButton, {})
1253
1253
  ]
1254
- }, undefined, true, undefined, this)
1255
- }, undefined, false, undefined, this)
1256
- }, undefined, false, undefined, this);
1254
+ })
1255
+ })
1256
+ });
1257
1257
  }
1258
1258
  function SelectItem({
1259
1259
  className,
1260
1260
  children,
1261
1261
  ...props
1262
1262
  }) {
1263
- return /* @__PURE__ */ jsxDEV10(SelectPrimitive.Item, {
1263
+ return /* @__PURE__ */ jsxs4(SelectPrimitive.Item, {
1264
1264
  "data-slot": "select-item",
1265
1265
  className: cn("relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2", className),
1266
1266
  ...props,
1267
1267
  children: [
1268
- /* @__PURE__ */ jsxDEV10(SelectPrimitive.ItemText, {
1268
+ /* @__PURE__ */ jsx10(SelectPrimitive.ItemText, {
1269
1269
  className: "flex flex-1 shrink-0 gap-2 whitespace-nowrap",
1270
1270
  children
1271
- }, undefined, false, undefined, this),
1272
- /* @__PURE__ */ jsxDEV10(SelectPrimitive.ItemIndicator, {
1273
- render: /* @__PURE__ */ jsxDEV10("span", {
1271
+ }),
1272
+ /* @__PURE__ */ jsx10(SelectPrimitive.ItemIndicator, {
1273
+ render: /* @__PURE__ */ jsx10("span", {
1274
1274
  className: "pointer-events-none absolute right-2 flex size-4 items-center justify-center"
1275
- }, undefined, false, undefined, this),
1276
- children: /* @__PURE__ */ jsxDEV10(CheckIcon2, {
1275
+ }),
1276
+ children: /* @__PURE__ */ jsx10(CheckIcon2, {
1277
1277
  className: "pointer-events-none"
1278
- }, undefined, false, undefined, this)
1279
- }, undefined, false, undefined, this)
1278
+ })
1279
+ })
1280
1280
  ]
1281
- }, undefined, true, undefined, this);
1281
+ });
1282
1282
  }
1283
1283
  function SelectScrollUpButton({
1284
1284
  className,
1285
1285
  ...props
1286
1286
  }) {
1287
- return /* @__PURE__ */ jsxDEV10(SelectPrimitive.ScrollUpArrow, {
1287
+ return /* @__PURE__ */ jsx10(SelectPrimitive.ScrollUpArrow, {
1288
1288
  "data-slot": "select-scroll-up-button",
1289
1289
  className: cn("top-0 z-10 flex w-full cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4", className),
1290
1290
  ...props,
1291
- children: /* @__PURE__ */ jsxDEV10(ChevronUpIcon, {}, undefined, false, undefined, this)
1292
- }, undefined, false, undefined, this);
1291
+ children: /* @__PURE__ */ jsx10(ChevronUpIcon, {})
1292
+ });
1293
1293
  }
1294
1294
  function SelectScrollDownButton({
1295
1295
  className,
1296
1296
  ...props
1297
1297
  }) {
1298
- return /* @__PURE__ */ jsxDEV10(SelectPrimitive.ScrollDownArrow, {
1298
+ return /* @__PURE__ */ jsx10(SelectPrimitive.ScrollDownArrow, {
1299
1299
  "data-slot": "select-scroll-down-button",
1300
1300
  className: cn("bottom-0 z-10 flex w-full cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4", className),
1301
1301
  ...props,
1302
- children: /* @__PURE__ */ jsxDEV10(ChevronDownIcon, {}, undefined, false, undefined, this)
1303
- }, undefined, false, undefined, this);
1302
+ children: /* @__PURE__ */ jsx10(ChevronDownIcon, {})
1303
+ });
1304
1304
  }
1305
1305
 
1306
1306
  // ../../src/components/ui/textarea.tsx
1307
- import { jsxDEV as jsxDEV11 } from "react/jsx-dev-runtime";
1307
+ import { jsx as jsx11 } from "react/jsx-runtime";
1308
1308
  function Textarea({ className, ...props }) {
1309
- return /* @__PURE__ */ jsxDEV11("textarea", {
1309
+ return /* @__PURE__ */ jsx11("textarea", {
1310
1310
  "data-slot": "textarea",
1311
1311
  className: cn("flex field-sizing-content min-h-16 w-full rounded-md border border-input bg-transparent px-2.5 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40", className),
1312
1312
  ...props
1313
- }, undefined, false, undefined, this);
1313
+ });
1314
1314
  }
1315
1315
 
1316
1316
  // ../../src/components/ui/virtualized-combobox.tsx
@@ -1325,14 +1325,14 @@ import {
1325
1325
 
1326
1326
  // ../../src/components/ui/input-group.tsx
1327
1327
  import { cva as cva5 } from "class-variance-authority";
1328
- import { jsxDEV as jsxDEV12 } from "react/jsx-dev-runtime";
1328
+ import { jsx as jsx12 } from "react/jsx-runtime";
1329
1329
  function InputGroup({ className, ...props }) {
1330
- return /* @__PURE__ */ jsxDEV12("div", {
1330
+ return /* @__PURE__ */ jsx12("div", {
1331
1331
  "data-slot": "input-group",
1332
1332
  role: "group",
1333
1333
  className: cn("group/input-group relative flex h-9 w-full min-w-0 items-center rounded-md border border-input shadow-xs transition-[color,box-shadow] outline-none in-data-[slot=combobox-content]:focus-within:border-inherit in-data-[slot=combobox-content]:focus-within:ring-0 has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-3 has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-3 has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>textarea]:h-auto dark:bg-input/30 dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=inline-start]]:[&>input]:pl-1.5", className),
1334
1334
  ...props
1335
- }, undefined, false, undefined, this);
1335
+ });
1336
1336
  }
1337
1337
  var inputGroupAddonVariants = cva5("flex h-auto cursor-text items-center justify-center gap-2 py-1.5 text-sm font-medium text-muted-foreground select-none group-data-[disabled=true]/input-group:opacity-50 [&>kbd]:rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-4", {
1338
1338
  variants: {
@@ -1360,15 +1360,15 @@ function InputGroupInput({
1360
1360
  className,
1361
1361
  ...props
1362
1362
  }) {
1363
- return /* @__PURE__ */ jsxDEV12(Input, {
1363
+ return /* @__PURE__ */ jsx12(Input, {
1364
1364
  "data-slot": "input-group-control",
1365
1365
  className: cn("flex-1 rounded-none border-0 bg-transparent shadow-none ring-0 focus-visible:ring-0 aria-invalid:ring-0 dark:bg-transparent", className),
1366
1366
  ...props
1367
- }, undefined, false, undefined, this);
1367
+ });
1368
1368
  }
1369
1369
 
1370
1370
  // ../../src/components/ui/virtualized-combobox.tsx
1371
- import { jsxDEV as jsxDEV13 } from "react/jsx-dev-runtime";
1371
+ import { jsx as jsx13, jsxs as jsxs5 } from "react/jsx-runtime";
1372
1372
  "use client";
1373
1373
  var messages2 = {
1374
1374
  en: {
@@ -1431,19 +1431,19 @@ var VirtualizedComboboxList = ({
1431
1431
  virtualizer.measure();
1432
1432
  }, [virtualizer]);
1433
1433
  if (filteredItems.length === 0) {
1434
- return /* @__PURE__ */ jsxDEV13("div", {
1434
+ return /* @__PURE__ */ jsx13("div", {
1435
1435
  className: "text-muted-foreground py-6 text-center text-sm",
1436
1436
  children: emptyLabel
1437
- }, undefined, false, undefined, this);
1437
+ });
1438
1438
  }
1439
- return /* @__PURE__ */ jsxDEV13(ComboboxPrimitive.List, {
1439
+ return /* @__PURE__ */ jsx13(ComboboxPrimitive.List, {
1440
1440
  className: "scroll-py-1 overflow-auto overscroll-contain p-1",
1441
1441
  ref: handleScrollElementRef,
1442
1442
  style: {
1443
1443
  height: Math.min(virtualizer.getTotalSize() + 8, 288),
1444
1444
  maxHeight: "var(--available-height)"
1445
1445
  },
1446
- children: /* @__PURE__ */ jsxDEV13("div", {
1446
+ children: /* @__PURE__ */ jsx13("div", {
1447
1447
  className: "relative w-full",
1448
1448
  role: "presentation",
1449
1449
  style: { height: virtualizer.getTotalSize() },
@@ -1456,18 +1456,18 @@ var VirtualizedComboboxList = ({
1456
1456
  transform: `translateY(${virtualItem.start}px)`
1457
1457
  };
1458
1458
  if (entry.kind === "group") {
1459
- return /* @__PURE__ */ jsxDEV13(ComboboxPrimitive.Group, {
1459
+ return /* @__PURE__ */ jsx13(ComboboxPrimitive.Group, {
1460
1460
  className: "contents",
1461
- children: /* @__PURE__ */ jsxDEV13(ComboboxPrimitive.GroupLabel, {
1461
+ children: /* @__PURE__ */ jsx13(ComboboxPrimitive.GroupLabel, {
1462
1462
  className: "text-muted-foreground absolute top-0 left-0 w-full px-2 pt-3 pb-1 text-xs",
1463
1463
  "data-index": virtualItem.index,
1464
1464
  ref: virtualizer.measureElement,
1465
1465
  style,
1466
1466
  children: entry.label
1467
- }, undefined, false, undefined, this)
1468
- }, entry.key, false, undefined, this);
1467
+ })
1468
+ }, entry.key);
1469
1469
  }
1470
- return /* @__PURE__ */ jsxDEV13(ComboboxPrimitive.Item, {
1470
+ return /* @__PURE__ */ jsxs5(ComboboxPrimitive.Item, {
1471
1471
  "aria-posinset": entry.index + 1,
1472
1472
  "aria-setsize": filteredItems.length,
1473
1473
  className: "data-highlighted:bg-accent data-highlighted:text-accent-foreground absolute top-0 left-0 flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50",
@@ -1477,19 +1477,19 @@ var VirtualizedComboboxList = ({
1477
1477
  style,
1478
1478
  value: entry.item,
1479
1479
  children: [
1480
- renderItem?.(entry.item) ?? /* @__PURE__ */ jsxDEV13("span", {
1480
+ renderItem?.(entry.item) ?? /* @__PURE__ */ jsx13("span", {
1481
1481
  className: "min-w-0 truncate",
1482
1482
  children: entry.item.label
1483
- }, undefined, false, undefined, this),
1484
- /* @__PURE__ */ jsxDEV13(ComboboxPrimitive.ItemIndicator, {
1483
+ }),
1484
+ /* @__PURE__ */ jsx13(ComboboxPrimitive.ItemIndicator, {
1485
1485
  className: "absolute right-2 flex size-4 items-center justify-center",
1486
- children: /* @__PURE__ */ jsxDEV13(Check, {}, undefined, false, undefined, this)
1487
- }, undefined, false, undefined, this)
1486
+ children: /* @__PURE__ */ jsx13(Check, {})
1487
+ })
1488
1488
  ]
1489
- }, entry.item.value, true, undefined, this);
1489
+ }, entry.item.value);
1490
1490
  })
1491
- }, undefined, false, undefined, this)
1492
- }, undefined, false, undefined, this);
1491
+ })
1492
+ });
1493
1493
  };
1494
1494
  var VirtualizedComboboxContent = ({
1495
1495
  contentClassName,
@@ -1501,39 +1501,39 @@ var VirtualizedComboboxContent = ({
1501
1501
  virtualizerRef
1502
1502
  }) => {
1503
1503
  const labels = virtualizedComboboxMessages(messageOverrides);
1504
- return /* @__PURE__ */ jsxDEV13(ComboboxPrimitive.Portal, {
1505
- children: /* @__PURE__ */ jsxDEV13(ComboboxPrimitive.Positioner, {
1504
+ return /* @__PURE__ */ jsx13(ComboboxPrimitive.Portal, {
1505
+ children: /* @__PURE__ */ jsx13(ComboboxPrimitive.Positioner, {
1506
1506
  align: "start",
1507
1507
  className: "isolate z-50",
1508
1508
  side: "bottom",
1509
1509
  sideOffset: 6,
1510
- children: /* @__PURE__ */ jsxDEV13(ComboboxPrimitive.Popup, {
1510
+ children: /* @__PURE__ */ jsxs5(ComboboxPrimitive.Popup, {
1511
1511
  className: cn("relative max-h-(--available-height) w-(--anchor-width) max-w-(--available-width) min-w-0 origin-(--transform-origin) overflow-hidden rounded-md bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-in-95", contentClassName),
1512
1512
  children: [
1513
- /* @__PURE__ */ jsxDEV13("div", {
1513
+ /* @__PURE__ */ jsx13("div", {
1514
1514
  className: "min-w-0 p-1 pb-0",
1515
- children: /* @__PURE__ */ jsxDEV13(InputGroup, {
1515
+ children: /* @__PURE__ */ jsx13(InputGroup, {
1516
1516
  className: "border-input/30 bg-input/30 h-8 w-full min-w-0 shadow-none",
1517
- children: /* @__PURE__ */ jsxDEV13(ComboboxPrimitive.Input, {
1517
+ children: /* @__PURE__ */ jsx13(ComboboxPrimitive.Input, {
1518
1518
  placeholder: labels.search,
1519
- render: /* @__PURE__ */ jsxDEV13(InputGroupInput, {}, undefined, false, undefined, this)
1520
- }, undefined, false, undefined, this)
1521
- }, undefined, false, undefined, this)
1522
- }, undefined, false, undefined, this),
1523
- /* @__PURE__ */ jsxDEV13(VirtualizedComboboxList, {
1519
+ render: /* @__PURE__ */ jsx13(InputGroupInput, {})
1520
+ })
1521
+ })
1522
+ }),
1523
+ /* @__PURE__ */ jsx13(VirtualizedComboboxList, {
1524
1524
  emptyLabel,
1525
1525
  groupSelections,
1526
1526
  messages: messageOverrides,
1527
1527
  renderItem,
1528
1528
  selectedValues,
1529
1529
  virtualizerRef
1530
- }, undefined, false, undefined, this)
1530
+ })
1531
1531
  ]
1532
- }, undefined, true, undefined, this)
1533
- }, undefined, false, undefined, this)
1534
- }, undefined, false, undefined, this);
1532
+ })
1533
+ })
1534
+ });
1535
1535
  };
1536
- var defaultTrigger = (ariaLabel, ariaInvalid, disabled, label, triggerId) => /* @__PURE__ */ jsxDEV13(Button, {
1536
+ var defaultTrigger = (ariaLabel, ariaInvalid, disabled, label, triggerId) => /* @__PURE__ */ jsxs5(Button, {
1537
1537
  "aria-label": ariaLabel,
1538
1538
  "aria-invalid": ariaInvalid,
1539
1539
  className: "w-full max-w-full min-w-0 justify-between overflow-hidden",
@@ -1542,15 +1542,15 @@ var defaultTrigger = (ariaLabel, ariaInvalid, disabled, label, triggerId) => /*
1542
1542
  type: "button",
1543
1543
  variant: "outline",
1544
1544
  children: [
1545
- /* @__PURE__ */ jsxDEV13("span", {
1545
+ /* @__PURE__ */ jsx13("span", {
1546
1546
  className: "min-w-0 truncate text-left",
1547
1547
  children: label
1548
- }, undefined, false, undefined, this),
1549
- /* @__PURE__ */ jsxDEV13(ChevronsUpDown, {
1548
+ }),
1549
+ /* @__PURE__ */ jsx13(ChevronsUpDown, {
1550
1550
  className: "text-muted-foreground shrink-0 opacity-70"
1551
- }, undefined, false, undefined, this)
1551
+ })
1552
1552
  ]
1553
- }, undefined, true, undefined, this);
1553
+ });
1554
1554
  var selectedLabel = (value, placeholder) => {
1555
1555
  if (Array.isArray(value)) {
1556
1556
  return value.length > 0 ? value.map(({ label }) => label).join(", ") : placeholder;
@@ -1563,7 +1563,7 @@ var useComboboxVirtualizerRef = (providedRef) => {
1563
1563
  };
1564
1564
  var VirtualizedComboboxSingle = (props) => {
1565
1565
  const virtualizerRef = useComboboxVirtualizerRef(props.virtualizerRef);
1566
- return /* @__PURE__ */ jsxDEV13(ComboboxPrimitive.Root, {
1566
+ return /* @__PURE__ */ jsxs5(ComboboxPrimitive.Root, {
1567
1567
  disabled: props.disabled,
1568
1568
  inputValue: props.searchValue,
1569
1569
  items: [...props.items],
@@ -1581,21 +1581,21 @@ var VirtualizedComboboxSingle = (props) => {
1581
1581
  value: props.value,
1582
1582
  virtualized: true,
1583
1583
  children: [
1584
- /* @__PURE__ */ jsxDEV13(ComboboxPrimitive.Trigger, {
1584
+ /* @__PURE__ */ jsx13(ComboboxPrimitive.Trigger, {
1585
1585
  render: props.trigger ?? defaultTrigger(props.ariaLabel, props.ariaInvalid, props.disabled, selectedLabel(props.value, props.placeholder), props.triggerId)
1586
- }, undefined, false, undefined, this),
1587
- /* @__PURE__ */ jsxDEV13(VirtualizedComboboxContent, {
1586
+ }),
1587
+ /* @__PURE__ */ jsx13(VirtualizedComboboxContent, {
1588
1588
  ...props,
1589
1589
  groupSelections: false,
1590
1590
  selectedValues: new Set(props.value ? [props.value.value] : []),
1591
1591
  virtualizerRef
1592
- }, undefined, false, undefined, this)
1592
+ })
1593
1593
  ]
1594
- }, undefined, true, undefined, this);
1594
+ });
1595
1595
  };
1596
1596
  var VirtualizedComboboxMultiple = (props) => {
1597
1597
  const virtualizerRef = useComboboxVirtualizerRef(props.virtualizerRef);
1598
- return /* @__PURE__ */ jsxDEV13(ComboboxPrimitive.Root, {
1598
+ return /* @__PURE__ */ jsxs5(ComboboxPrimitive.Root, {
1599
1599
  disabled: props.disabled,
1600
1600
  inputValue: props.searchValue,
1601
1601
  items: [...props.items],
@@ -1614,28 +1614,28 @@ var VirtualizedComboboxMultiple = (props) => {
1614
1614
  value: [...props.value],
1615
1615
  virtualized: true,
1616
1616
  children: [
1617
- /* @__PURE__ */ jsxDEV13(ComboboxPrimitive.Trigger, {
1617
+ /* @__PURE__ */ jsx13(ComboboxPrimitive.Trigger, {
1618
1618
  render: props.trigger ?? defaultTrigger(props.ariaLabel, props.ariaInvalid, props.disabled, selectedLabel(props.value, props.placeholder), props.triggerId)
1619
- }, undefined, false, undefined, this),
1620
- /* @__PURE__ */ jsxDEV13(VirtualizedComboboxContent, {
1619
+ }),
1620
+ /* @__PURE__ */ jsx13(VirtualizedComboboxContent, {
1621
1621
  ...props,
1622
1622
  groupSelections: true,
1623
1623
  selectedValues: new Set(props.value.map(({ value }) => value)),
1624
1624
  virtualizerRef
1625
- }, undefined, false, undefined, this)
1625
+ })
1626
1626
  ]
1627
- }, undefined, true, undefined, this);
1627
+ });
1628
1628
  };
1629
1629
  function VirtualizedCombobox(props) {
1630
- return props.multiple ? /* @__PURE__ */ jsxDEV13(VirtualizedComboboxMultiple, {
1630
+ return props.multiple ? /* @__PURE__ */ jsx13(VirtualizedComboboxMultiple, {
1631
1631
  ...props
1632
- }, undefined, false, undefined, this) : /* @__PURE__ */ jsxDEV13(VirtualizedComboboxSingle, {
1632
+ }) : /* @__PURE__ */ jsx13(VirtualizedComboboxSingle, {
1633
1633
  ...props
1634
- }, undefined, false, undefined, this);
1634
+ });
1635
1635
  }
1636
1636
 
1637
1637
  // ../../src/components/ui/effect-form.tsx
1638
- import { jsxDEV as jsxDEV14 } from "react/jsx-dev-runtime";
1638
+ import { jsx as jsx14, jsxs as jsxs6 } from "react/jsx-runtime";
1639
1639
  var messages3 = {
1640
1640
  en: {
1641
1641
  add: "Add",
@@ -1687,41 +1687,41 @@ var FieldWrapper = ({
1687
1687
  legend,
1688
1688
  locales: locales2,
1689
1689
  localized = true
1690
- }) => /* @__PURE__ */ jsxDEV14(FieldSet, {
1690
+ }) => /* @__PURE__ */ jsxs6(FieldSet, {
1691
1691
  children: [
1692
- legend && /* @__PURE__ */ jsxDEV14(FieldLegend, {
1692
+ legend && /* @__PURE__ */ jsxs6(FieldLegend, {
1693
1693
  className: "flex items-center gap-2",
1694
1694
  children: [
1695
1695
  legend,
1696
- localized && editingLocale && locales2 && /* @__PURE__ */ jsxDEV14(Badge, {
1696
+ localized && editingLocale && locales2 && /* @__PURE__ */ jsxs6(Badge, {
1697
1697
  variant: "outline",
1698
1698
  children: [
1699
- /* @__PURE__ */ jsxDEV14(Languages, {}, undefined, false, undefined, this),
1699
+ /* @__PURE__ */ jsx14(Languages, {}),
1700
1700
  locales2.find(({ value }) => value === editingLocale)?.label
1701
1701
  ]
1702
- }, undefined, true, undefined, this)
1702
+ })
1703
1703
  ]
1704
- }, undefined, true, undefined, this),
1705
- description && /* @__PURE__ */ jsxDEV14(FieldDescription, {
1704
+ }),
1705
+ description && /* @__PURE__ */ jsx14(FieldDescription, {
1706
1706
  children: description
1707
- }, undefined, false, undefined, this),
1708
- /* @__PURE__ */ jsxDEV14(FieldGroup, {
1707
+ }),
1708
+ /* @__PURE__ */ jsx14(FieldGroup, {
1709
1709
  children
1710
- }, undefined, false, undefined, this)
1710
+ })
1711
1711
  ]
1712
- }, undefined, true, undefined, this);
1713
- var ErrorMessage = ({ text }) => /* @__PURE__ */ jsxDEV14("em", {
1712
+ });
1713
+ var ErrorMessage = ({ text }) => /* @__PURE__ */ jsx14("em", {
1714
1714
  role: "alert",
1715
1715
  className: "text-destructive text-sm",
1716
1716
  children: text
1717
- }, undefined, false, undefined, this);
1717
+ });
1718
1718
  var SubmitError = ({
1719
1719
  result
1720
1720
  }) => {
1721
1721
  const message = AsyncResult.isFailure(result) ? Schema.isSchemaError(Cause.squash(result.cause)) ? undefined : getCauseErrorMessage(result.cause) : undefined;
1722
- return message ? /* @__PURE__ */ jsxDEV14(ErrorMessage, {
1722
+ return message ? /* @__PURE__ */ jsx14(ErrorMessage, {
1723
1723
  text: message
1724
- }, undefined, false, undefined, this) : null;
1724
+ }) : null;
1725
1725
  };
1726
1726
  var SubmitButton = ({
1727
1727
  children,
@@ -1733,8 +1733,8 @@ var SubmitButton = ({
1733
1733
  const isDirty = useAtomValue(form.isDirty);
1734
1734
  const hasChangedSinceSubmit = useAtomValue(form.hasChangedSinceSubmit);
1735
1735
  const lastSubmittedValues = useAtomValue(form.lastSubmittedValues);
1736
- const hasPendingChanges = isDirty && (Option.isNone(lastSubmittedValues) || hasChangedSinceSubmit);
1737
- return /* @__PURE__ */ jsxDEV14(Button, {
1736
+ const hasPendingChanges = Option.isNone(lastSubmittedValues) ? isDirty : hasChangedSinceSubmit;
1737
+ return /* @__PURE__ */ jsxs6(Button, {
1738
1738
  type: "button",
1739
1739
  disabled: !hasPendingChanges || submitResult.waiting,
1740
1740
  className: "self-start",
@@ -1743,42 +1743,42 @@ var SubmitButton = ({
1743
1743
  submit();
1744
1744
  },
1745
1745
  children: [
1746
- submitResult.waiting && /* @__PURE__ */ jsxDEV14(Loader2, {
1746
+ submitResult.waiting && /* @__PURE__ */ jsx14(Loader2, {
1747
1747
  "data-icon": "inline-start",
1748
1748
  className: "animate-spin"
1749
- }, undefined, false, undefined, this),
1749
+ }),
1750
1750
  children ?? effectFormMessages().submit
1751
1751
  ]
1752
- }, undefined, true, undefined, this);
1752
+ });
1753
1753
  };
1754
1754
  var FieldError = ({
1755
1755
  error,
1756
1756
  message
1757
1757
  }) => Option.match(error, {
1758
1758
  onNone: () => null,
1759
- onSome: (errorMessage) => /* @__PURE__ */ jsxDEV14(ErrorMessage, {
1759
+ onSome: (errorMessage) => /* @__PURE__ */ jsx14(ErrorMessage, {
1760
1760
  text: message ?? errorMessage
1761
- }, undefined, false, undefined, this)
1761
+ })
1762
1762
  });
1763
1763
  var TextField = ({
1764
1764
  field,
1765
1765
  props
1766
1766
  }) => {
1767
1767
  const { children, description, errorMessage, label, ...inputProps } = props;
1768
- return /* @__PURE__ */ jsxDEV14(Field, {
1768
+ return /* @__PURE__ */ jsxs6(Field, {
1769
1769
  "data-invalid": Option.isSome(field.error),
1770
1770
  children: [
1771
- /* @__PURE__ */ jsxDEV14("div", {
1771
+ /* @__PURE__ */ jsxs6("div", {
1772
1772
  className: "flex w-full items-center gap-2",
1773
1773
  children: [
1774
- /* @__PURE__ */ jsxDEV14(FieldLabel, {
1774
+ /* @__PURE__ */ jsx14(FieldLabel, {
1775
1775
  htmlFor: field.path,
1776
1776
  children: label
1777
- }, undefined, false, undefined, this),
1777
+ }),
1778
1778
  children
1779
1779
  ]
1780
- }, undefined, true, undefined, this),
1781
- /* @__PURE__ */ jsxDEV14(Input, {
1780
+ }),
1781
+ /* @__PURE__ */ jsx14(Input, {
1782
1782
  ...inputProps,
1783
1783
  id: field.path,
1784
1784
  name: field.path,
@@ -1786,46 +1786,46 @@ var TextField = ({
1786
1786
  onBlur: field.onBlur,
1787
1787
  onChange: (event) => field.onChange(event.target.value),
1788
1788
  "aria-invalid": Option.isSome(field.error)
1789
- }, undefined, false, undefined, this),
1790
- description && /* @__PURE__ */ jsxDEV14(FieldDescription, {
1789
+ }),
1790
+ description && /* @__PURE__ */ jsx14(FieldDescription, {
1791
1791
  children: description
1792
- }, undefined, false, undefined, this),
1793
- /* @__PURE__ */ jsxDEV14(FieldError, {
1792
+ }),
1793
+ /* @__PURE__ */ jsx14(FieldError, {
1794
1794
  error: field.error,
1795
1795
  message: errorMessage
1796
- }, undefined, false, undefined, this)
1796
+ })
1797
1797
  ]
1798
- }, undefined, true, undefined, this);
1798
+ });
1799
1799
  };
1800
1800
  var NameField = ({
1801
1801
  field,
1802
1802
  props
1803
- }) => /* @__PURE__ */ jsxDEV14(TextField, {
1803
+ }) => /* @__PURE__ */ jsx14(TextField, {
1804
1804
  field,
1805
1805
  props: {
1806
1806
  ...props,
1807
1807
  label: effectFormMessages().name,
1808
1808
  errorMessage: props.errorMessage ?? effectFormMessages().nameRequired
1809
1809
  }
1810
- }, undefined, false, undefined, this);
1810
+ });
1811
1811
  var TextAreaField = ({ field, props }) => {
1812
1812
  const { children, description, label, ...textareaProps } = props;
1813
1813
  const nativeTextareaProps = { ...textareaProps };
1814
1814
  delete nativeTextareaProps.original;
1815
- return /* @__PURE__ */ jsxDEV14(Field, {
1815
+ return /* @__PURE__ */ jsxs6(Field, {
1816
1816
  "data-invalid": Option.isSome(field.error),
1817
1817
  children: [
1818
- /* @__PURE__ */ jsxDEV14("div", {
1818
+ /* @__PURE__ */ jsxs6("div", {
1819
1819
  className: "flex w-full items-center gap-2",
1820
1820
  children: [
1821
- /* @__PURE__ */ jsxDEV14(FieldLabel, {
1821
+ /* @__PURE__ */ jsx14(FieldLabel, {
1822
1822
  htmlFor: field.path,
1823
1823
  children: label
1824
- }, undefined, false, undefined, this),
1824
+ }),
1825
1825
  children
1826
1826
  ]
1827
- }, undefined, true, undefined, this),
1828
- /* @__PURE__ */ jsxDEV14(Textarea, {
1827
+ }),
1828
+ /* @__PURE__ */ jsx14(Textarea, {
1829
1829
  ...nativeTextareaProps,
1830
1830
  id: field.path,
1831
1831
  name: field.path,
@@ -1833,30 +1833,30 @@ var TextAreaField = ({ field, props }) => {
1833
1833
  onBlur: field.onBlur,
1834
1834
  onChange: (event) => field.onChange(event.target.value),
1835
1835
  "aria-invalid": Option.isSome(field.error)
1836
- }, undefined, false, undefined, this),
1837
- description && /* @__PURE__ */ jsxDEV14(FieldDescription, {
1836
+ }),
1837
+ description && /* @__PURE__ */ jsx14(FieldDescription, {
1838
1838
  children: description
1839
- }, undefined, false, undefined, this),
1840
- /* @__PURE__ */ jsxDEV14(FieldError, {
1839
+ }),
1840
+ /* @__PURE__ */ jsx14(FieldError, {
1841
1841
  error: field.error
1842
- }, undefined, false, undefined, this)
1842
+ })
1843
1843
  ]
1844
- }, undefined, true, undefined, this);
1844
+ });
1845
1845
  };
1846
- var DescriptionField = ({ field, props }) => /* @__PURE__ */ jsxDEV14(TextAreaField, {
1846
+ var DescriptionField = ({ field, props }) => /* @__PURE__ */ jsx14(TextAreaField, {
1847
1847
  field,
1848
1848
  props: { ...props, label: effectFormMessages().description }
1849
- }, undefined, false, undefined, this);
1849
+ });
1850
1850
  var FileField = ({ field, props }) => {
1851
1851
  const invalid = Option.isSome(field.error);
1852
- return /* @__PURE__ */ jsxDEV14(Field, {
1852
+ return /* @__PURE__ */ jsxs6(Field, {
1853
1853
  "data-invalid": invalid,
1854
1854
  children: [
1855
- /* @__PURE__ */ jsxDEV14(FieldLabel, {
1855
+ /* @__PURE__ */ jsx14(FieldLabel, {
1856
1856
  htmlFor: field.path,
1857
1857
  children: props.label
1858
- }, undefined, false, undefined, this),
1859
- /* @__PURE__ */ jsxDEV14(FilePicker, {
1858
+ }),
1859
+ /* @__PURE__ */ jsx14(FilePicker, {
1860
1860
  accept: props.accept ?? "",
1861
1861
  canClear: field.value instanceof File,
1862
1862
  ...field.value ? { file: field.value } : {},
@@ -1874,34 +1874,34 @@ var FileField = ({ field, props }) => {
1874
1874
  },
1875
1875
  ...props.required === undefined ? {} : { required: props.required },
1876
1876
  title: field.value?.name ?? props.label
1877
- }, undefined, false, undefined, this),
1878
- props.description && /* @__PURE__ */ jsxDEV14(FieldDescription, {
1877
+ }),
1878
+ props.description && /* @__PURE__ */ jsx14(FieldDescription, {
1879
1879
  children: props.description
1880
- }, undefined, false, undefined, this),
1881
- /* @__PURE__ */ jsxDEV14(FieldError, {
1880
+ }),
1881
+ /* @__PURE__ */ jsx14(FieldError, {
1882
1882
  error: field.error
1883
- }, undefined, false, undefined, this)
1883
+ })
1884
1884
  ]
1885
- }, undefined, true, undefined, this);
1885
+ });
1886
1886
  };
1887
1887
  var NullableTextAreaField = ({ field, props }) => {
1888
1888
  const { children, description, label, ...textareaProps } = props;
1889
1889
  const nativeTextareaProps = { ...textareaProps };
1890
1890
  delete nativeTextareaProps.original;
1891
- return /* @__PURE__ */ jsxDEV14(Field, {
1891
+ return /* @__PURE__ */ jsxs6(Field, {
1892
1892
  "data-invalid": Option.isSome(field.error),
1893
1893
  children: [
1894
- /* @__PURE__ */ jsxDEV14("div", {
1894
+ /* @__PURE__ */ jsxs6("div", {
1895
1895
  className: "flex w-full items-center gap-2",
1896
1896
  children: [
1897
- /* @__PURE__ */ jsxDEV14(FieldLabel, {
1897
+ /* @__PURE__ */ jsx14(FieldLabel, {
1898
1898
  htmlFor: field.path,
1899
1899
  children: label
1900
- }, undefined, false, undefined, this),
1900
+ }),
1901
1901
  children
1902
1902
  ]
1903
- }, undefined, true, undefined, this),
1904
- /* @__PURE__ */ jsxDEV14(Textarea, {
1903
+ }),
1904
+ /* @__PURE__ */ jsx14(Textarea, {
1905
1905
  ...nativeTextareaProps,
1906
1906
  id: field.path,
1907
1907
  name: field.path,
@@ -1909,59 +1909,59 @@ var NullableTextAreaField = ({ field, props }) => {
1909
1909
  onBlur: field.onBlur,
1910
1910
  onChange: (event) => field.onChange(event.target.value),
1911
1911
  "aria-invalid": Option.isSome(field.error)
1912
- }, undefined, false, undefined, this),
1913
- description && /* @__PURE__ */ jsxDEV14(FieldDescription, {
1912
+ }),
1913
+ description && /* @__PURE__ */ jsx14(FieldDescription, {
1914
1914
  children: description
1915
- }, undefined, false, undefined, this),
1916
- /* @__PURE__ */ jsxDEV14(FieldError, {
1915
+ }),
1916
+ /* @__PURE__ */ jsx14(FieldError, {
1917
1917
  error: field.error
1918
- }, undefined, false, undefined, this)
1918
+ })
1919
1919
  ]
1920
- }, undefined, true, undefined, this);
1920
+ });
1921
1921
  };
1922
1922
  var CheckboxField = ({
1923
1923
  field,
1924
1924
  props
1925
- }) => /* @__PURE__ */ jsxDEV14(Field, {
1925
+ }) => /* @__PURE__ */ jsxs6(Field, {
1926
1926
  "data-invalid": Option.isSome(field.error),
1927
1927
  children: [
1928
- /* @__PURE__ */ jsxDEV14("div", {
1928
+ /* @__PURE__ */ jsxs6("div", {
1929
1929
  className: "flex w-full flex-row items-center gap-2",
1930
1930
  children: [
1931
- /* @__PURE__ */ jsxDEV14(Checkbox, {
1931
+ /* @__PURE__ */ jsx14(Checkbox, {
1932
1932
  id: field.path,
1933
1933
  name: field.path,
1934
1934
  checked: field.value,
1935
1935
  onBlur: field.onBlur,
1936
1936
  onCheckedChange: field.onChange,
1937
1937
  "aria-invalid": Option.isSome(field.error)
1938
- }, undefined, false, undefined, this),
1939
- /* @__PURE__ */ jsxDEV14(FieldLabel, {
1938
+ }),
1939
+ /* @__PURE__ */ jsx14(FieldLabel, {
1940
1940
  htmlFor: field.path,
1941
1941
  children: props.label
1942
- }, undefined, false, undefined, this),
1942
+ }),
1943
1943
  props.children
1944
1944
  ]
1945
- }, undefined, true, undefined, this),
1946
- props.description && /* @__PURE__ */ jsxDEV14(FieldDescription, {
1945
+ }),
1946
+ props.description && /* @__PURE__ */ jsx14(FieldDescription, {
1947
1947
  children: props.description
1948
- }, undefined, false, undefined, this),
1949
- /* @__PURE__ */ jsxDEV14(FieldError, {
1948
+ }),
1949
+ /* @__PURE__ */ jsx14(FieldError, {
1950
1950
  error: field.error
1951
- }, undefined, false, undefined, this)
1951
+ })
1952
1952
  ]
1953
- }, undefined, true, undefined, this);
1953
+ });
1954
1954
  var SelectField = ({
1955
1955
  field,
1956
1956
  props
1957
- }) => /* @__PURE__ */ jsxDEV14(Field, {
1957
+ }) => /* @__PURE__ */ jsxs6(Field, {
1958
1958
  "data-invalid": Option.isSome(field.error),
1959
1959
  children: [
1960
- /* @__PURE__ */ jsxDEV14(FieldLabel, {
1960
+ /* @__PURE__ */ jsx14(FieldLabel, {
1961
1961
  htmlFor: field.path,
1962
1962
  children: props.label
1963
- }, undefined, false, undefined, this),
1964
- /* @__PURE__ */ jsxDEV14(Select, {
1963
+ }),
1964
+ /* @__PURE__ */ jsxs6(Select, {
1965
1965
  items: props.options,
1966
1966
  onValueChange: (value) => {
1967
1967
  if (value !== null)
@@ -1969,122 +1969,122 @@ var SelectField = ({
1969
1969
  },
1970
1970
  value: field.value,
1971
1971
  children: [
1972
- /* @__PURE__ */ jsxDEV14(SelectTrigger, {
1972
+ /* @__PURE__ */ jsx14(SelectTrigger, {
1973
1973
  id: field.path,
1974
1974
  "aria-invalid": Option.isSome(field.error),
1975
- children: /* @__PURE__ */ jsxDEV14(SelectValue, {
1975
+ children: /* @__PURE__ */ jsx14(SelectValue, {
1976
1976
  placeholder: props.placeholder
1977
- }, undefined, false, undefined, this)
1978
- }, undefined, false, undefined, this),
1979
- /* @__PURE__ */ jsxDEV14(SelectContent, {
1980
- children: /* @__PURE__ */ jsxDEV14(SelectGroup, {
1981
- children: props.options.map((option) => /* @__PURE__ */ jsxDEV14(SelectItem, {
1977
+ })
1978
+ }),
1979
+ /* @__PURE__ */ jsx14(SelectContent, {
1980
+ children: /* @__PURE__ */ jsx14(SelectGroup, {
1981
+ children: props.options.map((option) => /* @__PURE__ */ jsx14(SelectItem, {
1982
1982
  value: option.value,
1983
1983
  children: option.label
1984
- }, option.value, false, undefined, this))
1985
- }, undefined, false, undefined, this)
1986
- }, undefined, false, undefined, this)
1984
+ }, option.value))
1985
+ })
1986
+ })
1987
1987
  ]
1988
- }, undefined, true, undefined, this),
1989
- props.description && /* @__PURE__ */ jsxDEV14(FieldDescription, {
1988
+ }),
1989
+ props.description && /* @__PURE__ */ jsx14(FieldDescription, {
1990
1990
  children: props.description
1991
- }, undefined, false, undefined, this),
1992
- /* @__PURE__ */ jsxDEV14(FieldError, {
1991
+ }),
1992
+ /* @__PURE__ */ jsx14(FieldError, {
1993
1993
  error: field.error
1994
- }, undefined, false, undefined, this)
1994
+ })
1995
1995
  ]
1996
- }, undefined, true, undefined, this);
1996
+ });
1997
1997
  var FolderField = ({
1998
1998
  field,
1999
1999
  props
2000
- }) => /* @__PURE__ */ jsxDEV14(SelectField, {
2000
+ }) => /* @__PURE__ */ jsx14(SelectField, {
2001
2001
  field,
2002
2002
  props: { ...props, label: effectFormMessages().folder }
2003
- }, undefined, false, undefined, this);
2003
+ });
2004
2004
  var MultiSelectField = ({
2005
2005
  field,
2006
2006
  props
2007
- }) => /* @__PURE__ */ jsxDEV14(Field, {
2007
+ }) => /* @__PURE__ */ jsxs6(Field, {
2008
2008
  "data-invalid": Option.isSome(field.error),
2009
2009
  children: [
2010
- /* @__PURE__ */ jsxDEV14(FieldLabel, {
2010
+ /* @__PURE__ */ jsx14(FieldLabel, {
2011
2011
  htmlFor: field.path,
2012
2012
  children: props.label
2013
- }, undefined, false, undefined, this),
2014
- /* @__PURE__ */ jsxDEV14(Select, {
2013
+ }),
2014
+ /* @__PURE__ */ jsxs6(Select, {
2015
2015
  items: props.options,
2016
2016
  onValueChange: (value) => field.onChange(value ?? []),
2017
2017
  multiple: true,
2018
2018
  value: Array.from(field.value),
2019
2019
  children: [
2020
- /* @__PURE__ */ jsxDEV14(SelectTrigger, {
2020
+ /* @__PURE__ */ jsx14(SelectTrigger, {
2021
2021
  className: "gap-1",
2022
2022
  id: field.path,
2023
2023
  "aria-invalid": Option.isSome(field.error),
2024
- children: /* @__PURE__ */ jsxDEV14(SelectValue, {
2024
+ children: /* @__PURE__ */ jsx14(SelectValue, {
2025
2025
  placeholder: props.placeholder
2026
- }, undefined, false, undefined, this)
2027
- }, undefined, false, undefined, this),
2028
- /* @__PURE__ */ jsxDEV14(SelectContent, {
2029
- children: /* @__PURE__ */ jsxDEV14(SelectGroup, {
2030
- children: props.options.map((option) => /* @__PURE__ */ jsxDEV14(SelectItem, {
2026
+ })
2027
+ }),
2028
+ /* @__PURE__ */ jsx14(SelectContent, {
2029
+ children: /* @__PURE__ */ jsx14(SelectGroup, {
2030
+ children: props.options.map((option) => /* @__PURE__ */ jsx14(SelectItem, {
2031
2031
  value: option.value,
2032
2032
  children: option.label
2033
- }, option.value, false, undefined, this))
2034
- }, undefined, false, undefined, this)
2035
- }, undefined, false, undefined, this)
2033
+ }, option.value))
2034
+ })
2035
+ })
2036
2036
  ]
2037
- }, undefined, true, undefined, this),
2038
- props.description && /* @__PURE__ */ jsxDEV14(FieldDescription, {
2037
+ }),
2038
+ props.description && /* @__PURE__ */ jsx14(FieldDescription, {
2039
2039
  children: props.description
2040
- }, undefined, false, undefined, this),
2041
- /* @__PURE__ */ jsxDEV14(FieldError, {
2040
+ }),
2041
+ /* @__PURE__ */ jsx14(FieldError, {
2042
2042
  error: field.error
2043
- }, undefined, false, undefined, this)
2043
+ })
2044
2044
  ]
2045
- }, undefined, true, undefined, this);
2045
+ });
2046
2046
  var NullableMultiSelectField = ({
2047
2047
  field,
2048
2048
  props
2049
- }) => /* @__PURE__ */ jsxDEV14(Field, {
2049
+ }) => /* @__PURE__ */ jsxs6(Field, {
2050
2050
  "data-invalid": Option.isSome(field.error),
2051
2051
  children: [
2052
- /* @__PURE__ */ jsxDEV14(FieldLabel, {
2052
+ /* @__PURE__ */ jsx14(FieldLabel, {
2053
2053
  htmlFor: field.path,
2054
2054
  children: props.label
2055
- }, undefined, false, undefined, this),
2056
- /* @__PURE__ */ jsxDEV14(Select, {
2055
+ }),
2056
+ /* @__PURE__ */ jsxs6(Select, {
2057
2057
  items: props.options,
2058
2058
  onValueChange: (value) => field.onChange(value && value.length > 0 ? value : null),
2059
2059
  multiple: true,
2060
2060
  value: field.value ? Array.from(field.value) : [],
2061
2061
  children: [
2062
- /* @__PURE__ */ jsxDEV14(SelectTrigger, {
2062
+ /* @__PURE__ */ jsx14(SelectTrigger, {
2063
2063
  className: "gap-1",
2064
2064
  id: field.path,
2065
2065
  "aria-invalid": Option.isSome(field.error),
2066
- children: /* @__PURE__ */ jsxDEV14(SelectValue, {
2066
+ children: /* @__PURE__ */ jsx14(SelectValue, {
2067
2067
  placeholder: props.placeholder
2068
- }, undefined, false, undefined, this)
2069
- }, undefined, false, undefined, this),
2070
- /* @__PURE__ */ jsxDEV14(SelectContent, {
2071
- children: /* @__PURE__ */ jsxDEV14(SelectGroup, {
2072
- children: props.options.map((option) => /* @__PURE__ */ jsxDEV14(SelectItem, {
2068
+ })
2069
+ }),
2070
+ /* @__PURE__ */ jsx14(SelectContent, {
2071
+ children: /* @__PURE__ */ jsx14(SelectGroup, {
2072
+ children: props.options.map((option) => /* @__PURE__ */ jsx14(SelectItem, {
2073
2073
  value: option.value,
2074
2074
  children: option.label
2075
- }, option.value, false, undefined, this))
2076
- }, undefined, false, undefined, this)
2077
- }, undefined, false, undefined, this)
2075
+ }, option.value))
2076
+ })
2077
+ })
2078
2078
  ]
2079
- }, undefined, true, undefined, this),
2080
- props.description && /* @__PURE__ */ jsxDEV14(FieldDescription, {
2079
+ }),
2080
+ props.description && /* @__PURE__ */ jsx14(FieldDescription, {
2081
2081
  children: props.description
2082
- }, undefined, false, undefined, this),
2083
- /* @__PURE__ */ jsxDEV14(FieldError, {
2082
+ }),
2083
+ /* @__PURE__ */ jsx14(FieldError, {
2084
2084
  error: field.error
2085
- }, undefined, false, undefined, this)
2085
+ })
2086
2086
  ]
2087
- }, undefined, true, undefined, this);
2087
+ });
2088
2088
  var getSearchableSelectItems = (values, initialItems, items) => {
2089
2089
  const itemsByValue = new Map([...initialItems, ...items].map((item) => [item.value, item]));
2090
2090
  const selectedItems = values.map((value) => itemsByValue.get(value) ?? { value, label: value });
@@ -2105,15 +2105,15 @@ var SearchableSelectField = ({
2105
2105
  const invalid = Option.isSome(field.error);
2106
2106
  const labels = virtualizedComboboxMessages(props.messages);
2107
2107
  const ariaLabel = typeof props.label === "string" ? props.label : labels.search;
2108
- return /* @__PURE__ */ jsxDEV14(Field, {
2108
+ return /* @__PURE__ */ jsxs6(Field, {
2109
2109
  className: "min-w-0",
2110
2110
  "data-invalid": invalid,
2111
2111
  children: [
2112
- /* @__PURE__ */ jsxDEV14(FieldLabel, {
2112
+ /* @__PURE__ */ jsx14(FieldLabel, {
2113
2113
  htmlFor: field.path,
2114
2114
  children: props.label
2115
- }, undefined, false, undefined, this),
2116
- /* @__PURE__ */ jsxDEV14(VirtualizedCombobox, {
2115
+ }),
2116
+ /* @__PURE__ */ jsx14(VirtualizedCombobox, {
2117
2117
  ariaInvalid: invalid,
2118
2118
  ariaLabel,
2119
2119
  emptyLabel: props.emptyLabel,
@@ -2127,15 +2127,15 @@ var SearchableSelectField = ({
2127
2127
  ...props.searchValue === undefined ? {} : { searchValue: props.searchValue },
2128
2128
  triggerId: field.path,
2129
2129
  value: selectedItems
2130
- }, undefined, false, undefined, this),
2131
- props.description && /* @__PURE__ */ jsxDEV14(FieldDescription, {
2130
+ }),
2131
+ props.description && /* @__PURE__ */ jsx14(FieldDescription, {
2132
2132
  children: props.description
2133
- }, undefined, false, undefined, this),
2134
- /* @__PURE__ */ jsxDEV14(FieldError, {
2133
+ }),
2134
+ /* @__PURE__ */ jsx14(FieldError, {
2135
2135
  error: field.error
2136
- }, undefined, false, undefined, this)
2136
+ })
2137
2137
  ]
2138
- }, undefined, true, undefined, this);
2138
+ });
2139
2139
  };
2140
2140
  var SingleSearchableSelectField = ({
2141
2141
  field,
@@ -2145,15 +2145,15 @@ var SingleSearchableSelectField = ({
2145
2145
  const invalid = Option.isSome(field.error);
2146
2146
  const labels = virtualizedComboboxMessages(props.messages);
2147
2147
  const ariaLabel = typeof props.label === "string" ? props.label : labels.search;
2148
- return /* @__PURE__ */ jsxDEV14(Field, {
2148
+ return /* @__PURE__ */ jsxs6(Field, {
2149
2149
  className: "min-w-0",
2150
2150
  "data-invalid": invalid,
2151
2151
  children: [
2152
- /* @__PURE__ */ jsxDEV14(FieldLabel, {
2152
+ /* @__PURE__ */ jsx14(FieldLabel, {
2153
2153
  htmlFor: field.path,
2154
2154
  children: props.label
2155
- }, undefined, false, undefined, this),
2156
- /* @__PURE__ */ jsxDEV14(VirtualizedCombobox, {
2155
+ }),
2156
+ /* @__PURE__ */ jsx14(VirtualizedCombobox, {
2157
2157
  ariaInvalid: invalid,
2158
2158
  ariaLabel,
2159
2159
  emptyLabel: props.emptyLabel,
@@ -2166,15 +2166,15 @@ var SingleSearchableSelectField = ({
2166
2166
  ...props.searchValue === undefined ? {} : { searchValue: props.searchValue },
2167
2167
  triggerId: field.path,
2168
2168
  value: selectedItems[0] ?? null
2169
- }, undefined, false, undefined, this),
2170
- props.description && /* @__PURE__ */ jsxDEV14(FieldDescription, {
2169
+ }),
2170
+ props.description && /* @__PURE__ */ jsx14(FieldDescription, {
2171
2171
  children: props.description
2172
- }, undefined, false, undefined, this),
2173
- /* @__PURE__ */ jsxDEV14(FieldError, {
2172
+ }),
2173
+ /* @__PURE__ */ jsx14(FieldError, {
2174
2174
  error: field.error
2175
- }, undefined, false, undefined, this)
2175
+ })
2176
2176
  ]
2177
- }, undefined, true, undefined, this);
2177
+ });
2178
2178
  };
2179
2179
  var NullableKeyValueField = ({
2180
2180
  field,
@@ -2182,16 +2182,16 @@ var NullableKeyValueField = ({
2182
2182
  }) => {
2183
2183
  const entries = Object.entries(field.value ?? {});
2184
2184
  const updateEntry = (index, key, value) => Object.fromEntries(entries.map(([currentKey, currentValue], currentIndex) => currentIndex === index ? [key, value] : [currentKey, currentValue]));
2185
- return /* @__PURE__ */ jsxDEV14(Field, {
2185
+ return /* @__PURE__ */ jsxs6(Field, {
2186
2186
  "data-invalid": Option.isSome(field.error),
2187
2187
  children: [
2188
- /* @__PURE__ */ jsxDEV14(FieldLabel, {
2188
+ /* @__PURE__ */ jsx14(FieldLabel, {
2189
2189
  children: props.label
2190
- }, undefined, false, undefined, this),
2191
- entries.map(([key, value], index) => /* @__PURE__ */ jsxDEV14("div", {
2190
+ }),
2191
+ entries.map(([key, value], index) => /* @__PURE__ */ jsxs6("div", {
2192
2192
  className: "flex w-full flex-row items-center gap-2",
2193
2193
  children: [
2194
- /* @__PURE__ */ jsxDEV14(Input, {
2194
+ /* @__PURE__ */ jsx14(Input, {
2195
2195
  id: `${field.path}-${index}-key`,
2196
2196
  name: `${field.path}.${index}.key`,
2197
2197
  type: "text",
@@ -2201,8 +2201,8 @@ var NullableKeyValueField = ({
2201
2201
  onBlur: field.onBlur,
2202
2202
  onChange: (event) => field.onChange(updateEntry(index, event.target.value, value)),
2203
2203
  "aria-invalid": Option.isSome(field.error)
2204
- }, undefined, false, undefined, this),
2205
- /* @__PURE__ */ jsxDEV14(Input, {
2204
+ }),
2205
+ /* @__PURE__ */ jsx14(Input, {
2206
2206
  id: `${field.path}-${index}-value`,
2207
2207
  name: `${field.path}.${index}.value`,
2208
2208
  type: "text",
@@ -2212,40 +2212,40 @@ var NullableKeyValueField = ({
2212
2212
  onBlur: field.onBlur,
2213
2213
  onChange: (event) => field.onChange(updateEntry(index, key, event.target.value)),
2214
2214
  "aria-invalid": Option.isSome(field.error)
2215
- }, undefined, false, undefined, this),
2216
- /* @__PURE__ */ jsxDEV14(Button, {
2215
+ }),
2216
+ /* @__PURE__ */ jsxs6(Button, {
2217
2217
  type: "button",
2218
2218
  variant: "secondary",
2219
2219
  onClick: () => field.onChange(Object.fromEntries(entries.filter((_, currentIndex) => currentIndex !== index))),
2220
2220
  children: [
2221
- /* @__PURE__ */ jsxDEV14(Trash, {
2221
+ /* @__PURE__ */ jsx14(Trash, {
2222
2222
  "data-icon": "inline-start"
2223
- }, undefined, false, undefined, this),
2223
+ }),
2224
2224
  effectFormMessages().delete
2225
2225
  ]
2226
- }, undefined, true, undefined, this)
2226
+ })
2227
2227
  ]
2228
- }, index, true, undefined, this)),
2229
- /* @__PURE__ */ jsxDEV14(Button, {
2228
+ }, index)),
2229
+ /* @__PURE__ */ jsxs6(Button, {
2230
2230
  type: "button",
2231
2231
  size: "sm",
2232
2232
  className: "self-start",
2233
2233
  onClick: () => field.onChange({ ...field.value, "": "" }),
2234
2234
  children: [
2235
- /* @__PURE__ */ jsxDEV14(Plus, {
2235
+ /* @__PURE__ */ jsx14(Plus, {
2236
2236
  "data-icon": "inline-start"
2237
- }, undefined, false, undefined, this),
2237
+ }),
2238
2238
  effectFormMessages().add
2239
2239
  ]
2240
- }, undefined, true, undefined, this),
2241
- props.description && /* @__PURE__ */ jsxDEV14(FieldDescription, {
2240
+ }),
2241
+ props.description && /* @__PURE__ */ jsx14(FieldDescription, {
2242
2242
  children: props.description
2243
- }, undefined, false, undefined, this),
2244
- /* @__PURE__ */ jsxDEV14(FieldError, {
2243
+ }),
2244
+ /* @__PURE__ */ jsx14(FieldError, {
2245
2245
  error: field.error
2246
- }, undefined, false, undefined, this)
2246
+ })
2247
2247
  ]
2248
- }, undefined, true, undefined, this);
2248
+ });
2249
2249
  };
2250
2250
  var KeyValueField = ({
2251
2251
  field,
@@ -2253,16 +2253,16 @@ var KeyValueField = ({
2253
2253
  }) => {
2254
2254
  const entries = Object.entries(field.value);
2255
2255
  const updateEntry = (index, key, value) => Object.fromEntries(entries.map(([currentKey, currentValue], currentIndex) => currentIndex === index ? [key, value] : [currentKey, currentValue]));
2256
- return /* @__PURE__ */ jsxDEV14(Field, {
2256
+ return /* @__PURE__ */ jsxs6(Field, {
2257
2257
  "data-invalid": Option.isSome(field.error),
2258
2258
  children: [
2259
- /* @__PURE__ */ jsxDEV14(FieldLabel, {
2259
+ /* @__PURE__ */ jsx14(FieldLabel, {
2260
2260
  children: props.label
2261
- }, undefined, false, undefined, this),
2262
- entries.map(([key, value], index) => /* @__PURE__ */ jsxDEV14("div", {
2261
+ }),
2262
+ entries.map(([key, value], index) => /* @__PURE__ */ jsxs6("div", {
2263
2263
  className: "flex w-full flex-row items-center gap-2",
2264
2264
  children: [
2265
- /* @__PURE__ */ jsxDEV14(Input, {
2265
+ /* @__PURE__ */ jsx14(Input, {
2266
2266
  id: `${field.path}-${index}-key`,
2267
2267
  name: `${field.path}.${index}.key`,
2268
2268
  type: "text",
@@ -2272,8 +2272,8 @@ var KeyValueField = ({
2272
2272
  onBlur: field.onBlur,
2273
2273
  onChange: (event) => field.onChange(updateEntry(index, event.target.value, value)),
2274
2274
  "aria-invalid": Option.isSome(field.error)
2275
- }, undefined, false, undefined, this),
2276
- /* @__PURE__ */ jsxDEV14(Input, {
2275
+ }),
2276
+ /* @__PURE__ */ jsx14(Input, {
2277
2277
  id: `${field.path}-${index}-value`,
2278
2278
  name: `${field.path}.${index}.value`,
2279
2279
  type: "text",
@@ -2283,65 +2283,65 @@ var KeyValueField = ({
2283
2283
  onBlur: field.onBlur,
2284
2284
  onChange: (event) => field.onChange(updateEntry(index, key, event.target.value)),
2285
2285
  "aria-invalid": Option.isSome(field.error)
2286
- }, undefined, false, undefined, this),
2287
- /* @__PURE__ */ jsxDEV14(Button, {
2286
+ }),
2287
+ /* @__PURE__ */ jsxs6(Button, {
2288
2288
  type: "button",
2289
2289
  variant: "secondary",
2290
2290
  onClick: () => field.onChange(Object.fromEntries(entries.filter((_, currentIndex) => currentIndex !== index))),
2291
2291
  children: [
2292
- /* @__PURE__ */ jsxDEV14(Trash, {
2292
+ /* @__PURE__ */ jsx14(Trash, {
2293
2293
  "data-icon": "inline-start"
2294
- }, undefined, false, undefined, this),
2294
+ }),
2295
2295
  effectFormMessages().delete
2296
2296
  ]
2297
- }, undefined, true, undefined, this)
2297
+ })
2298
2298
  ]
2299
- }, index, true, undefined, this)),
2300
- /* @__PURE__ */ jsxDEV14(Button, {
2299
+ }, index)),
2300
+ /* @__PURE__ */ jsxs6(Button, {
2301
2301
  type: "button",
2302
2302
  size: "sm",
2303
2303
  className: "self-start",
2304
2304
  onClick: () => field.onChange({ ...field.value, "": "" }),
2305
2305
  children: [
2306
- /* @__PURE__ */ jsxDEV14(Plus, {
2306
+ /* @__PURE__ */ jsx14(Plus, {
2307
2307
  "data-icon": "inline-start"
2308
- }, undefined, false, undefined, this),
2308
+ }),
2309
2309
  effectFormMessages().add
2310
2310
  ]
2311
- }, undefined, true, undefined, this),
2312
- props.description && /* @__PURE__ */ jsxDEV14(FieldDescription, {
2311
+ }),
2312
+ props.description && /* @__PURE__ */ jsx14(FieldDescription, {
2313
2313
  children: props.description
2314
- }, undefined, false, undefined, this),
2315
- /* @__PURE__ */ jsxDEV14(FieldError, {
2314
+ }),
2315
+ /* @__PURE__ */ jsx14(FieldError, {
2316
2316
  error: field.error
2317
- }, undefined, false, undefined, this)
2317
+ })
2318
2318
  ]
2319
- }, undefined, true, undefined, this);
2319
+ });
2320
2320
  };
2321
2321
  var RevertButton = ({
2322
2322
  field,
2323
2323
  props
2324
- }) => field.value === props.original ? null : /* @__PURE__ */ jsxDEV14("div", {
2324
+ }) => field.value === props.original ? null : /* @__PURE__ */ jsx14("div", {
2325
2325
  className: "flex flex-1 justify-end",
2326
- children: /* @__PURE__ */ jsxDEV14(Button, {
2326
+ children: /* @__PURE__ */ jsx14(Button, {
2327
2327
  type: "button",
2328
2328
  variant: "link",
2329
2329
  className: "-mr-4 h-auto py-0",
2330
2330
  onClick: () => field.onChange(props.original),
2331
2331
  children: effectFormMessages().revert
2332
- }, undefined, false, undefined, this)
2333
- }, undefined, false, undefined, this);
2332
+ })
2333
+ });
2334
2334
  var ImageField = ({ field, props }) => {
2335
2335
  const imageUrl = typeof field.value === "string" ? field.value : undefined;
2336
2336
  const invalid = Option.isSome(field.error);
2337
- return /* @__PURE__ */ jsxDEV14(Field, {
2337
+ return /* @__PURE__ */ jsxs6(Field, {
2338
2338
  "data-invalid": invalid,
2339
2339
  children: [
2340
- /* @__PURE__ */ jsxDEV14(FieldLabel, {
2340
+ /* @__PURE__ */ jsx14(FieldLabel, {
2341
2341
  htmlFor: field.path,
2342
2342
  children: props.label
2343
- }, undefined, false, undefined, this),
2344
- /* @__PURE__ */ jsxDEV14(FilePicker, {
2343
+ }),
2344
+ /* @__PURE__ */ jsx14(FilePicker, {
2345
2345
  accept: "image/*",
2346
2346
  onBlur: field.onBlur,
2347
2347
  canClear: Boolean(field.value),
@@ -2360,63 +2360,63 @@ var ImageField = ({ field, props }) => {
2360
2360
  onChange: field.onChange,
2361
2361
  onClear: () => field.onChange(null),
2362
2362
  title: field.value instanceof File ? field.value.name : props.label
2363
- }, undefined, false, undefined, this),
2364
- props.size.suggestedWidth && props.size.suggestedHeight ? /* @__PURE__ */ jsxDEV14(FieldDescription, {
2363
+ }),
2364
+ props.size.suggestedWidth && props.size.suggestedHeight ? /* @__PURE__ */ jsx14(FieldDescription, {
2365
2365
  children: effectFormMessages().suggestedImageSize(String(props.size.suggestedWidth), String(props.size.suggestedHeight))
2366
- }, undefined, false, undefined, this) : null,
2367
- /* @__PURE__ */ jsxDEV14(FieldError, {
2366
+ }) : null,
2367
+ /* @__PURE__ */ jsx14(FieldError, {
2368
2368
  error: field.error
2369
- }, undefined, false, undefined, this)
2369
+ })
2370
2370
  ]
2371
- }, undefined, true, undefined, this);
2371
+ });
2372
2372
  };
2373
- var NavigationBlock = ({ shouldBlock }) => /* @__PURE__ */ jsxDEV14(Block, {
2373
+ var NavigationBlock = ({ shouldBlock }) => /* @__PURE__ */ jsx14(Block, {
2374
2374
  enableBeforeUnload: () => shouldBlock,
2375
2375
  shouldBlockFn: () => shouldBlock,
2376
2376
  withResolver: true,
2377
- children: ({ status, proceed, reset }) => /* @__PURE__ */ jsxDEV14(AlertDialog, {
2377
+ children: ({ status, proceed, reset }) => /* @__PURE__ */ jsx14(AlertDialog, {
2378
2378
  open: status === "blocked",
2379
- children: /* @__PURE__ */ jsxDEV14(AlertDialogContent, {
2379
+ children: /* @__PURE__ */ jsxs6(AlertDialogContent, {
2380
2380
  children: [
2381
- /* @__PURE__ */ jsxDEV14(AlertDialogHeader, {
2381
+ /* @__PURE__ */ jsxs6(AlertDialogHeader, {
2382
2382
  children: [
2383
- /* @__PURE__ */ jsxDEV14(AlertDialogTitle, {
2383
+ /* @__PURE__ */ jsx14(AlertDialogTitle, {
2384
2384
  children: effectFormMessages().blockNavigationTitle
2385
- }, undefined, false, undefined, this),
2386
- /* @__PURE__ */ jsxDEV14(AlertDialogDescription, {
2385
+ }),
2386
+ /* @__PURE__ */ jsx14(AlertDialogDescription, {
2387
2387
  children: effectFormMessages().blockNavigationDescription
2388
- }, undefined, false, undefined, this)
2388
+ })
2389
2389
  ]
2390
- }, undefined, true, undefined, this),
2391
- /* @__PURE__ */ jsxDEV14(AlertDialogFooter, {
2390
+ }),
2391
+ /* @__PURE__ */ jsxs6(AlertDialogFooter, {
2392
2392
  children: [
2393
- /* @__PURE__ */ jsxDEV14(AlertDialogCancel, {
2393
+ /* @__PURE__ */ jsx14(AlertDialogCancel, {
2394
2394
  onClick: reset,
2395
2395
  children: effectFormMessages().blockNavigationCancel
2396
- }, undefined, false, undefined, this),
2397
- /* @__PURE__ */ jsxDEV14(AlertDialogAction, {
2396
+ }),
2397
+ /* @__PURE__ */ jsx14(AlertDialogAction, {
2398
2398
  onClick: proceed,
2399
2399
  children: effectFormMessages().blockNavigationConfirm
2400
- }, undefined, false, undefined, this)
2400
+ })
2401
2401
  ]
2402
- }, undefined, true, undefined, this)
2402
+ })
2403
2403
  ]
2404
- }, undefined, true, undefined, this)
2405
- }, undefined, false, undefined, this)
2406
- }, undefined, false, undefined, this);
2404
+ })
2405
+ })
2406
+ });
2407
2407
  var FormBlockNavigation = ({ form }) => {
2408
2408
  const submitResult = useAtomValue(form.submit);
2409
2409
  const isDirty = useAtomValue(form.isDirty);
2410
2410
  const hasChangedSinceSubmit = useAtomValue(form.hasChangedSinceSubmit);
2411
2411
  const lastSubmittedValues = useAtomValue(form.lastSubmittedValues);
2412
- const shouldBlock = !submitResult.waiting && isDirty && (Option.isNone(lastSubmittedValues) || hasChangedSinceSubmit);
2413
- return /* @__PURE__ */ jsxDEV14(NavigationBlock, {
2412
+ const shouldBlock = !submitResult.waiting && (Option.isNone(lastSubmittedValues) ? isDirty : hasChangedSinceSubmit);
2413
+ return /* @__PURE__ */ jsx14(NavigationBlock, {
2414
2414
  shouldBlock
2415
- }, undefined, false, undefined, this);
2415
+ });
2416
2416
  };
2417
- var BlockNavigation = ({ form }) => /* @__PURE__ */ jsxDEV14(FormBlockNavigation, {
2417
+ var BlockNavigation = ({ form }) => /* @__PURE__ */ jsx14(FormBlockNavigation, {
2418
2418
  form
2419
- }, undefined, false, undefined, this);
2419
+ });
2420
2420
  export {
2421
2421
  effectFormMessages,
2422
2422
  TextField,