@thebes/cadmea 1.2.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  import { createComponent, escape, ssr, ssrAttribute } from "solid-js/web";
2
2
  import { createMutation, createQuery, useQueryClient } from "@tanstack/solid-query";
3
- import { For, Index, Show, Suspense, createEffect, createSignal, lazy } from "solid-js";
3
+ import { For, Index, Show, Suspense, createEffect, createSignal, lazy, onCleanup } from "solid-js";
4
4
  import { createForm } from "@tanstack/solid-form";
5
5
  import { validateDocument } from "@thebes/cadmus/cms";
6
6
  import { Link, useBlocker } from "@tanstack/solid-router";
@@ -19,15 +19,19 @@ var _tmpl$$4 = ["<p class=\"text-sm text-error\" role=\"alert\">", "</p>"], _tmp
19
19
  ">",
20
20
  "</button>"
21
21
  ], _tmpl$6$1 = [
22
+ "<span class=\"text-base-content/60 self-center px-1 text-xs\" aria-live=\"polite\">",
23
+ "",
24
+ "</span>"
25
+ ], _tmpl$7$1 = [
22
26
  "<form class=\"flex flex-col gap-4\">",
23
27
  "",
24
28
  "<div class=\"bg-base-100 sticky bottom-0 flex gap-2 border-t py-3\">",
25
29
  "</div></form>"
26
- ], _tmpl$7$1 = [
30
+ ], _tmpl$8$1 = [
27
31
  "<fieldset class=\"border-base-300 rounded-box border p-4\"><legend class=\"px-2 text-sm font-semibold\">",
28
32
  "</legend>",
29
33
  "</fieldset>"
30
- ], _tmpl$8$1 = ["<div class=\"grid grid-cols-1 gap-4 md:grid-cols-2\">", "</div>"], _tmpl$9$1 = "<span class=\"text-error\"> *</span>", _tmpl$0$1 = ["<p class=\"text-base-content/60 mb-1 text-xs\">", "</p>"], _tmpl$1$1 = ["<p class=\"text-error mt-1 text-sm\" role=\"alert\">", "</p>"], _tmpl$10$1 = [
34
+ ], _tmpl$9$1 = ["<div class=\"grid grid-cols-1 gap-4 md:grid-cols-2\">", "</div>"], _tmpl$0$1 = "<span class=\"text-error\"> *</span>", _tmpl$1$1 = ["<p class=\"text-base-content/60 mb-1 text-xs\">", "</p>"], _tmpl$10$1 = ["<p class=\"text-error mt-1 text-sm\" role=\"alert\">", "</p>"], _tmpl$11$1 = [
31
35
  "<div class=\"",
32
36
  "\"><label class=\"label\"",
33
37
  ">",
@@ -36,37 +40,37 @@ var _tmpl$$4 = ["<p class=\"text-sm text-error\" role=\"alert\">", "</p>"], _tmp
36
40
  "",
37
41
  "",
38
42
  "</div>"
39
- ], _tmpl$11$1 = [
43
+ ], _tmpl$12$1 = [
40
44
  "<input",
41
45
  " class=\"input\" type=\"text\"",
42
46
  "",
43
47
  ">"
44
- ], _tmpl$12$1 = [
48
+ ], _tmpl$13$1 = [
45
49
  "<select",
46
50
  " class=\"select\"",
47
51
  "",
48
52
  "",
49
53
  ">",
50
54
  "</select>"
51
- ], _tmpl$13$1 = [
55
+ ], _tmpl$14$1 = [
52
56
  "<option",
53
57
  ">",
54
58
  "</option>"
55
- ], _tmpl$14$1 = [
59
+ ], _tmpl$15$1 = [
56
60
  "<input",
57
61
  " class=\"input\" type=\"number\"",
58
62
  "",
59
63
  ">"
60
- ], _tmpl$15$1 = [
64
+ ], _tmpl$16 = [
61
65
  "<input",
62
66
  " class=\"input\" type=\"text\" readonly",
63
67
  ">"
64
- ], _tmpl$16 = [
68
+ ], _tmpl$17 = [
65
69
  "<input",
66
70
  " class=\"checkbox\" type=\"checkbox\"",
67
71
  "",
68
72
  ">"
69
- ], _tmpl$17 = ["<p class=\"text-sm opacity-70 break-all\">", "</p>"], _tmpl$18 = ["<p class=\"text-sm text-error\">", "</p>"], _tmpl$19 = [
73
+ ], _tmpl$18 = ["<p class=\"text-sm opacity-70 break-all\">", "</p>"], _tmpl$19 = ["<p class=\"text-sm text-error\">", "</p>"], _tmpl$20 = [
70
74
  "<div class=\"flex flex-col gap-2\">",
71
75
  "<input",
72
76
  " class=\"file-input\" type=\"file\"",
@@ -74,11 +78,11 @@ var _tmpl$$4 = ["<p class=\"text-sm text-error\" role=\"alert\">", "</p>"], _tmp
74
78
  ">",
75
79
  "",
76
80
  "</div>"
77
- ], _tmpl$20 = ["<div class=\"mb-1 flex flex-wrap gap-1\">", "</div>"], _tmpl$21 = "<button type=\"button\" aria-label=\"Clear\" class=\"absolute top-2 right-2 cursor-pointer opacity-60\">×</button>", _tmpl$22 = [
81
+ ], _tmpl$21 = ["<div class=\"mb-1 flex flex-wrap gap-1\">", "</div>"], _tmpl$22 = "<button type=\"button\" aria-label=\"Clear\" class=\"absolute top-2 right-2 cursor-pointer opacity-60\">×</button>", _tmpl$23 = [
78
82
  "<div",
79
83
  " role=\"listbox\" class=\"bg-base-100 border-base-300 rounded-box absolute z-10 mt-1 flex max-h-56 w-full flex-col overflow-auto border p-1 shadow\">",
80
84
  "</div>"
81
- ], _tmpl$23 = [
85
+ ], _tmpl$24 = [
82
86
  "<div class=\"relative\">",
83
87
  "<input",
84
88
  " type=\"text\" role=\"combobox\"",
@@ -87,27 +91,27 @@ var _tmpl$$4 = ["<p class=\"text-sm text-error\" role=\"alert\">", "</p>"], _tmp
87
91
  ">",
88
92
  "",
89
93
  "</div>"
90
- ], _tmpl$24 = [
94
+ ], _tmpl$25 = [
91
95
  "<span class=\"badge badge-primary gap-1\">",
92
96
  "<button type=\"button\" aria-label=\"",
93
97
  "\" class=\"cursor-pointer\">×</button></span>"
94
- ], _tmpl$25 = [
98
+ ], _tmpl$26 = [
95
99
  "<button type=\"button\" role=\"option\"",
96
100
  " class=\"",
97
101
  "\">",
98
102
  "</button>"
99
- ], _tmpl$26 = ["<div role=\"menu\" class=\"bg-base-100 border-base-300 rounded-box absolute z-10 mt-1 flex flex-col border p-1 shadow\">", "</div>"], _tmpl$27 = [
103
+ ], _tmpl$27 = ["<div role=\"menu\" class=\"bg-base-100 border-base-300 rounded-box absolute z-10 mt-1 flex flex-col border p-1 shadow\">", "</div>"], _tmpl$28 = [
100
104
  "<div class=\"relative self-start\"><button type=\"button\" class=\"btn btn-outline btn-sm\" aria-haspopup=\"menu\"",
101
105
  ">Add block</button>",
102
106
  "</div>"
103
- ], _tmpl$28 = [
107
+ ], _tmpl$29 = [
104
108
  "<div class=\"form-control md:col-span-2\"><div class=\"label font-medium\">",
105
109
  "",
106
110
  "</div>",
107
111
  "<div class=\"flex flex-col gap-3\">",
108
112
  "",
109
113
  "</div></div>"
110
- ], _tmpl$29 = ["<span class=\"text-base-content/60 truncate text-sm\">", "</span>"], _tmpl$30 = ["<div class=\"flex flex-col gap-2\">", "</div>"], _tmpl$31 = [
114
+ ], _tmpl$30 = ["<span class=\"text-base-content/60 truncate text-sm\">", "</span>"], _tmpl$31 = ["<div class=\"flex flex-col gap-2\">", "</div>"], _tmpl$32 = [
111
115
  "<div class=\"card bg-base-200 flex flex-col gap-2 p-3\"><div class=\"flex items-center gap-2\"><button type=\"button\" class=\"btn btn-ghost btn-sm gap-2\"",
112
116
  "><span aria-hidden=\"true\">",
113
117
  "</span><span class=\"font-semibold\">",
@@ -116,12 +120,12 @@ var _tmpl$$4 = ["<p class=\"text-sm text-error\" role=\"alert\">", "</p>"], _tmp
116
120
  ">↑</button><button type=\"button\" class=\"btn btn-ghost btn-xs\" aria-label=\"Move down\"",
117
121
  ">↓</button><button type=\"button\" class=\"btn btn-ghost btn-xs\" aria-label=\"Duplicate\">⧉</button><button type=\"button\" class=\"btn btn-ghost btn-xs text-error\" aria-label=\"Remove\">Remove</button></div></div>",
118
122
  "</div>"
119
- ], _tmpl$32 = ["<button type=\"button\" class=\"btn btn-outline btn-sm self-start\">Add ", "</button>"], _tmpl$33 = ["<i", " aria-hidden=\"true\"></i>"], _tmpl$34 = [
123
+ ], _tmpl$33 = ["<button type=\"button\" class=\"btn btn-outline btn-sm self-start\">Add ", "</button>"], _tmpl$34 = ["<i", " aria-hidden=\"true\"></i>"], _tmpl$35 = [
120
124
  "<button type=\"button\" role=\"menuitem\" class=\"flex items-center gap-2 rounded px-3 py-2 text-left\">",
121
125
  "",
122
126
  "</button>"
123
127
  ];
124
- const RichTextEditor = lazy(() => import("../RichTextEditor-DcLqdFY7.js").then((mod) => ({ default: mod.RichTextEditor })));
128
+ const RichTextEditor = lazy(() => import("../RichTextEditor-CPQTvhQD.js").then((mod) => ({ default: mod.RichTextEditor })));
125
129
  function editableFields(config) {
126
130
  return Object.entries(config.fields).filter(([key]) => key !== "id");
127
131
  }
@@ -184,7 +188,29 @@ function CollectionEdit(props) {
184
188
  };
185
189
  const fieldGroups = groupFields(editableFields(props.config));
186
190
  const versioned = () => props.config.versions?.drafts && props.draftActions;
187
- return ssr(_tmpl$6$1, escape(createComponent(Show, {
191
+ const [autosaveStatus, setAutosaveStatus] = createSignal("idle");
192
+ let autosaveTimer;
193
+ createEffect(() => {
194
+ const dirty = !isDefaultValue();
195
+ const values = formValues();
196
+ if (!versioned() || !props.draftActions?.autosave) return;
197
+ if (!dirty) {
198
+ setAutosaveStatus("idle");
199
+ return;
200
+ }
201
+ clearTimeout(autosaveTimer);
202
+ autosaveTimer = setTimeout(async () => {
203
+ setAutosaveStatus("saving");
204
+ try {
205
+ await props.draftActions?.onSaveDraft(editablePayload(values));
206
+ setAutosaveStatus("saved");
207
+ } catch {
208
+ setAutosaveStatus("idle");
209
+ }
210
+ }, props.draftActions?.autosaveMs ?? 1500);
211
+ });
212
+ onCleanup(() => clearTimeout(autosaveTimer));
213
+ return ssr(_tmpl$7$1, escape(createComponent(Show, {
188
214
  get when() {
189
215
  return props.error;
190
216
  },
@@ -208,7 +234,7 @@ function CollectionEdit(props) {
208
234
  });
209
235
  },
210
236
  get children() {
211
- return ssr(_tmpl$7$1, escape(group.name), escape(createComponent(FieldsGrid, {
237
+ return ssr(_tmpl$8$1, escape(group.name), escape(createComponent(FieldsGrid, {
212
238
  form,
213
239
  ctx,
214
240
  get fields() {
@@ -283,13 +309,31 @@ function CollectionEdit(props) {
283
309
  }
284
310
  })));
285
311
  }
312
+ }),
313
+ createComponent(Show, {
314
+ get when() {
315
+ return props.draftActions?.autosave;
316
+ },
317
+ get children() {
318
+ return ssr(_tmpl$6$1, escape(createComponent(Show, {
319
+ get when() {
320
+ return autosaveStatus() === "saving";
321
+ },
322
+ children: "Saving…"
323
+ })), escape(createComponent(Show, {
324
+ get when() {
325
+ return autosaveStatus() === "saved";
326
+ },
327
+ children: "Saved"
328
+ })));
329
+ }
286
330
  })
287
331
  ];
288
332
  }
289
333
  })));
290
334
  }
291
335
  function FieldsGrid(props) {
292
- return ssr(_tmpl$8$1, escape(createComponent(For, {
336
+ return ssr(_tmpl$9$1, escape(createComponent(For, {
293
337
  get each() {
294
338
  return props.fields;
295
339
  },
@@ -308,26 +352,26 @@ function renderField(form, ctx, name, field, label) {
308
352
  const spanClass = field.admin?.width === "half" ? "md:col-span-1" : "md:col-span-2";
309
353
  return createComponent(form.Field, {
310
354
  name,
311
- children: (fieldApi) => ssr(_tmpl$10$1, `form-control ${escape(spanClass, true)}`, ssrAttribute("for", escape(name, true), false), escape(label), escape(createComponent(Show, {
355
+ children: (fieldApi) => ssr(_tmpl$11$1, `form-control ${escape(spanClass, true)}`, ssrAttribute("for", escape(name, true), false), escape(label), escape(createComponent(Show, {
312
356
  get when() {
313
357
  return field.required;
314
358
  },
315
359
  get children() {
316
- return ssr(_tmpl$9$1);
360
+ return ssr(_tmpl$0$1);
317
361
  }
318
362
  })), escape(createComponent(Show, {
319
363
  get when() {
320
364
  return field.admin?.description;
321
365
  },
322
366
  get children() {
323
- return ssr(_tmpl$0$1, escape(field.admin?.description));
367
+ return ssr(_tmpl$1$1, escape(field.admin?.description));
324
368
  }
325
369
  })), escape(renderControl(ctx, name, field, fieldApi)), escape(createComponent(Show, {
326
370
  get when() {
327
371
  return (fieldApi().state.meta.errors?.length ?? 0) > 0;
328
372
  },
329
373
  get children() {
330
- return ssr(_tmpl$1$1, escape(fieldApi().state.meta.errors.filter(Boolean).join(", ")));
374
+ return ssr(_tmpl$10$1, escape(fieldApi().state.meta.errors.filter(Boolean).join(", ")));
331
375
  }
332
376
  })))
333
377
  });
@@ -347,16 +391,16 @@ function renderControl(ctx, name, field, fieldApi) {
347
391
  const readOnly = field.admin?.readOnly;
348
392
  const change = (v) => fieldApi().handleChange(v);
349
393
  switch (field.type) {
350
- case "text": return ssr(_tmpl$11$1, ssrAttribute("id", escape(name, true), false), ssrAttribute("placeholder", escape(field.admin?.placeholder, true), false) + ssrAttribute("readonly", escape(readOnly, true), false) + ssrAttribute("value", escape(fieldApi().state.value ?? "", true), false), ssrAttribute("required", field.required, true));
351
- case "select": return ssr(_tmpl$12$1, ssrAttribute("id", escape(name, true), false), ssrAttribute("value", escape(fieldApi().state.value ?? "", true), false), ssrAttribute("required", field.required, true), ssrAttribute("disabled", readOnly, true), escape(createComponent(For, {
394
+ case "text": return ssr(_tmpl$12$1, ssrAttribute("id", escape(name, true), false), ssrAttribute("placeholder", escape(field.admin?.placeholder, true), false) + ssrAttribute("readonly", escape(readOnly, true), false) + ssrAttribute("value", escape(fieldApi().state.value ?? "", true), false), ssrAttribute("required", field.required, true));
395
+ case "select": return ssr(_tmpl$13$1, ssrAttribute("id", escape(name, true), false), ssrAttribute("value", escape(fieldApi().state.value ?? "", true), false), ssrAttribute("required", field.required, true), ssrAttribute("disabled", readOnly, true), escape(createComponent(For, {
352
396
  get each() {
353
397
  return field.options;
354
398
  },
355
- children: (option) => ssr(_tmpl$13$1, ssrAttribute("value", escape(option, true), false), escape(option))
399
+ children: (option) => ssr(_tmpl$14$1, ssrAttribute("value", escape(option, true), false), escape(option))
356
400
  })));
357
- case "number": return ssr(_tmpl$14$1, ssrAttribute("id", escape(name, true), false), ssrAttribute("placeholder", escape(field.admin?.placeholder, true), false) + ssrAttribute("readonly", escape(readOnly, true), false) + ssrAttribute("value", escape(fieldApi().state.value ?? "", true), false), ssrAttribute("required", field.required, true));
358
- case "date": return ssr(_tmpl$15$1, ssrAttribute("id", escape(name, true), false), ssrAttribute("value", escape(formatDateValue(fieldApi().state.value), true), false));
359
- case "checkbox": return ssr(_tmpl$16, ssrAttribute("id", escape(name, true), false), ssrAttribute("disabled", readOnly, true), ssrAttribute("checked", fieldApi().state.value ?? false, true));
401
+ case "number": return ssr(_tmpl$15$1, ssrAttribute("id", escape(name, true), false), ssrAttribute("placeholder", escape(field.admin?.placeholder, true), false) + ssrAttribute("readonly", escape(readOnly, true), false) + ssrAttribute("value", escape(fieldApi().state.value ?? "", true), false), ssrAttribute("required", field.required, true));
402
+ case "date": return ssr(_tmpl$16, ssrAttribute("id", escape(name, true), false), ssrAttribute("value", escape(formatDateValue(fieldApi().state.value), true), false));
403
+ case "checkbox": return ssr(_tmpl$17, ssrAttribute("id", escape(name, true), false), ssrAttribute("disabled", readOnly, true), ssrAttribute("checked", fieldApi().state.value ?? false, true));
360
404
  case "upload": return createComponent(UploadControl, {
361
405
  name,
362
406
  field,
@@ -381,7 +425,10 @@ function renderControl(ctx, name, field, fieldApi) {
381
425
  get content() {
382
426
  return fieldApi().state.value;
383
427
  },
384
- onChange: (doc) => change(doc)
428
+ onChange: (doc) => change(doc),
429
+ get onUploadFile() {
430
+ return ctx.onUploadFile;
431
+ }
385
432
  });
386
433
  }
387
434
  });
@@ -392,12 +439,12 @@ function UploadControl(props) {
392
439
  const [uploading, setUploading] = createSignal(false);
393
440
  const [uploadError, setUploadError] = createSignal();
394
441
  const value = () => props.fieldApi().state.value;
395
- return ssr(_tmpl$19, escape(createComponent(Show, {
442
+ return ssr(_tmpl$20, escape(createComponent(Show, {
396
443
  get when() {
397
444
  return value();
398
445
  },
399
446
  get children() {
400
- return ssr(_tmpl$17, escape(value()));
447
+ return ssr(_tmpl$18, escape(value()));
401
448
  }
402
449
  })), ssrAttribute("id", escape(props.name, true), false), ssrAttribute("required", props.field.required && !value(), true), ssrAttribute("disabled", uploading() || props.field.admin?.readOnly, true), escape(createComponent(Show, {
403
450
  get when() {
@@ -411,7 +458,7 @@ function UploadControl(props) {
411
458
  return uploadError();
412
459
  },
413
460
  get children() {
414
- return ssr(_tmpl$18, escape(uploadError()));
461
+ return ssr(_tmpl$19, escape(uploadError()));
415
462
  }
416
463
  })));
417
464
  }
@@ -433,16 +480,16 @@ function RelationshipField(props) {
433
480
  return props.options.filter((o) => o.label.toLowerCase().includes(q) && (!isMulti() || !selectedIds().includes(o.id)));
434
481
  };
435
482
  const singleLabel = () => selectedOptions()[0]?.label ?? "";
436
- return ssr(_tmpl$23, escape(createComponent(Show, {
483
+ return ssr(_tmpl$24, escape(createComponent(Show, {
437
484
  get when() {
438
485
  return isMulti() && selectedOptions().length > 0;
439
486
  },
440
487
  get children() {
441
- return ssr(_tmpl$20, escape(createComponent(For, {
488
+ return ssr(_tmpl$21, escape(createComponent(For, {
442
489
  get each() {
443
490
  return selectedOptions();
444
491
  },
445
- children: (option) => ssr(_tmpl$24, escape(option.label), `Remove ${escape(option.label, true)}`)
492
+ children: (option) => ssr(_tmpl$25, escape(option.label), `Remove ${escape(option.label, true)}`)
446
493
  })));
447
494
  }
448
495
  })), ssrAttribute("id", escape(props.name, true), false), ssrAttribute("aria-expanded", escape(open(), true), false) + ssrAttribute("aria-controls", escape(listId, true), false), ssrAttribute("required", props.field.required && selectedIds().length === 0, true), ssrAttribute("disabled", props.field.admin?.readOnly, true) + ssrAttribute("placeholder", escape(props.field.admin?.placeholder ?? "Search…", true), false) + ssrAttribute("value", open() || isMulti() ? escape(query(), true) : escape(singleLabel(), true), false), escape(createComponent(Show, {
@@ -450,18 +497,18 @@ function RelationshipField(props) {
450
497
  return !isMulti() && value() != null && !props.field.required;
451
498
  },
452
499
  get children() {
453
- return ssr(_tmpl$21);
500
+ return ssr(_tmpl$22);
454
501
  }
455
502
  })), escape(createComponent(Show, {
456
503
  get when() {
457
504
  return open() && filtered().length > 0;
458
505
  },
459
506
  get children() {
460
- return ssr(_tmpl$22, ssrAttribute("id", escape(listId, true), false), escape(createComponent(For, {
507
+ return ssr(_tmpl$23, ssrAttribute("id", escape(listId, true), false), escape(createComponent(For, {
461
508
  get each() {
462
509
  return filtered();
463
510
  },
464
- children: (option, i) => ssr(_tmpl$25, ssrAttribute("aria-selected", escape(selectedIds().includes(option.id), true), false), `rounded px-3 py-2 text-left ${i() === active() ? "bg-base-200" : ""}`, escape(option.label))
511
+ children: (option, i) => ssr(_tmpl$26, ssrAttribute("aria-selected", escape(selectedIds().includes(option.id), true), false), `rounded px-3 py-2 text-left ${i() === active() ? "bg-base-200" : ""}`, escape(option.label))
465
512
  })));
466
513
  }
467
514
  })));
@@ -503,19 +550,19 @@ function BlockEditor(props) {
503
550
  }
504
551
  return "";
505
552
  }
506
- return ssr(_tmpl$28, escape(props.label), escape(createComponent(Show, {
553
+ return ssr(_tmpl$29, escape(props.label), escape(createComponent(Show, {
507
554
  get when() {
508
555
  return props.field.required;
509
556
  },
510
557
  get children() {
511
- return ssr(_tmpl$9$1);
558
+ return ssr(_tmpl$0$1);
512
559
  }
513
560
  })), escape(createComponent(Show, {
514
561
  get when() {
515
562
  return props.field.admin?.description;
516
563
  },
517
564
  get children() {
518
- return ssr(_tmpl$0$1, escape(props.field.admin?.description));
565
+ return ssr(_tmpl$1$1, escape(props.field.admin?.description));
519
566
  }
520
567
  })), escape(createComponent(Index, {
521
568
  get each() {
@@ -523,19 +570,19 @@ function BlockEditor(props) {
523
570
  },
524
571
  children: (item, index) => {
525
572
  const isCollapsed = () => collapsed().has(index);
526
- return ssr(_tmpl$31, ssrAttribute("aria-expanded", !isCollapsed(), false), isCollapsed() ? "▸" : "▾", escape(blockTitle(item())), escape(createComponent(Show, {
573
+ return ssr(_tmpl$32, ssrAttribute("aria-expanded", !isCollapsed(), false), isCollapsed() ? "▸" : "▾", escape(blockTitle(item())), escape(createComponent(Show, {
527
574
  get when() {
528
575
  return isCollapsed() && blockSummary(item());
529
576
  },
530
577
  get children() {
531
- return ssr(_tmpl$29, escape(blockSummary(item())));
578
+ return ssr(_tmpl$30, escape(blockSummary(item())));
532
579
  }
533
580
  })), ssrAttribute("disabled", index === 0, true), ssrAttribute("disabled", index === items().length - 1, true), escape(createComponent(Show, {
534
581
  get when() {
535
582
  return !isCollapsed();
536
583
  },
537
584
  get children() {
538
- return ssr(_tmpl$30, escape(createComponent(For, {
585
+ return ssr(_tmpl$31, escape(createComponent(For, {
539
586
  get each() {
540
587
  return fieldsForItem(props.field, item());
541
588
  },
@@ -549,22 +596,22 @@ function BlockEditor(props) {
549
596
  return disc && variants.length > 0;
550
597
  },
551
598
  get fallback() {
552
- return ssr(_tmpl$32, escape(props.label));
599
+ return ssr(_tmpl$33, escape(props.label));
553
600
  },
554
601
  get children() {
555
- return ssr(_tmpl$27, ssrAttribute("aria-expanded", escape(menuOpen(), true), false), escape(createComponent(Show, {
602
+ return ssr(_tmpl$28, ssrAttribute("aria-expanded", escape(menuOpen(), true), false), escape(createComponent(Show, {
556
603
  get when() {
557
604
  return menuOpen();
558
605
  },
559
606
  get children() {
560
- return ssr(_tmpl$26, escape(createComponent(For, {
607
+ return ssr(_tmpl$27, escape(createComponent(For, {
561
608
  each: variants,
562
- children: (variant) => ssr(_tmpl$34, escape(createComponent(Show, {
609
+ children: (variant) => ssr(_tmpl$35, escape(createComponent(Show, {
563
610
  get when() {
564
611
  return disc?.variantsAdmin?.[variant]?.icon;
565
612
  },
566
613
  get children() {
567
- return ssr(_tmpl$33, ssrAttribute("class", escape(disc?.variantsAdmin?.[variant]?.icon, true), false));
614
+ return ssr(_tmpl$34, ssrAttribute("class", escape(disc?.variantsAdmin?.[variant]?.icon, true), false));
568
615
  }
569
616
  })), escape(variantLabel(disc, variant)))
570
617
  })));