@enos5/enos-vue-default 1.2.4 → 1.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -5,139 +5,139 @@ import { Link } from "@inertiajs/vue3";
5
5
  const components = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
6
6
  __proto__: null,
7
7
  get ActionCard() {
8
- return _sfc_main$K;
8
+ return _sfc_main$M;
9
9
  },
10
10
  get ActionMessage() {
11
- return _sfc_main$J;
11
+ return _sfc_main$L;
12
12
  },
13
13
  get ActionSection() {
14
- return _sfc_main$H;
14
+ return _sfc_main$J;
15
15
  },
16
16
  get Badge() {
17
- return _sfc_main$G;
17
+ return _sfc_main$I;
18
18
  },
19
19
  get Button() {
20
- return _sfc_main$F;
20
+ return _sfc_main$H;
21
21
  },
22
22
  get Card() {
23
- return _sfc_main$M;
23
+ return _sfc_main$O;
24
24
  },
25
25
  get CardTabs() {
26
- return _sfc_main$N;
26
+ return _sfc_main$P;
27
27
  },
28
28
  get Checkbox() {
29
- return _sfc_main$E;
29
+ return _sfc_main$G;
30
30
  },
31
31
  get CheckboxInput() {
32
- return _sfc_main$D;
32
+ return _sfc_main$F;
33
33
  },
34
34
  get CheckboxMultipleInput() {
35
- return _sfc_main$r;
35
+ return _sfc_main$s;
36
36
  },
37
37
  get ConfirmationModal() {
38
- return _sfc_main$p;
38
+ return _sfc_main$q;
39
39
  },
40
40
  get CustomSelect() {
41
- return _sfc_main$A;
41
+ return _sfc_main$C;
42
42
  },
43
43
  get DateInput() {
44
- return _sfc_main$y;
44
+ return _sfc_main$A;
45
45
  },
46
46
  get DialogModal() {
47
- return _sfc_main$o;
47
+ return _sfc_main$p;
48
48
  },
49
49
  get Divider() {
50
- return _sfc_main$L;
50
+ return _sfc_main$N;
51
51
  },
52
52
  get Dropdown() {
53
- return _sfc_main$n;
53
+ return _sfc_main$o;
54
54
  },
55
55
  get DropdownLink() {
56
- return _sfc_main$m;
56
+ return _sfc_main$n;
57
57
  },
58
58
  get EnosVueDefault() {
59
59
  return plugin;
60
60
  },
61
61
  get FormSection() {
62
- return _sfc_main$l;
62
+ return _sfc_main$m;
63
63
  },
64
64
  get ImageInput() {
65
- return _sfc_main$x;
65
+ return _sfc_main$z;
66
66
  },
67
67
  get InputError() {
68
- return _sfc_main$k;
68
+ return _sfc_main$l;
69
69
  },
70
70
  get InputGroup() {
71
- return _sfc_main$s;
71
+ return _sfc_main$t;
72
72
  },
73
73
  get InputLabel() {
74
- return _sfc_main$j;
74
+ return _sfc_main$k;
75
75
  },
76
76
  get LinkButton() {
77
- return _sfc_main$i;
77
+ return _sfc_main$j;
78
78
  },
79
79
  get Modal() {
80
- return _sfc_main$q;
80
+ return _sfc_main$r;
81
81
  },
82
82
  get NotationInput() {
83
- return _sfc_main$w;
83
+ return _sfc_main$y;
84
84
  },
85
85
  get RadioInput() {
86
- return _sfc_main$v;
86
+ return _sfc_main$x;
87
87
  },
88
88
  get RadioMultipleInput() {
89
- return _sfc_main$u;
89
+ return _sfc_main$v;
90
90
  },
91
91
  get SectionBorder() {
92
- return _sfc_main$h;
92
+ return _sfc_main$i;
93
93
  },
94
94
  get SectionTitle() {
95
95
  return SectionTitle;
96
96
  },
97
97
  get SelectInput() {
98
- return _sfc_main$z;
98
+ return _sfc_main$B;
99
99
  },
100
100
  get Sidebar() {
101
- return _sfc_main$g;
101
+ return _sfc_main$h;
102
102
  },
103
103
  get SidebarContent() {
104
- return _sfc_main$f;
104
+ return _sfc_main$g;
105
105
  },
106
106
  get SidebarFooter() {
107
- return _sfc_main$e;
107
+ return _sfc_main$f;
108
108
  },
109
109
  get SidebarGroup() {
110
- return _sfc_main$d;
110
+ return _sfc_main$e;
111
111
  },
112
112
  get SidebarGroupContent() {
113
- return _sfc_main$c;
113
+ return _sfc_main$d;
114
114
  },
115
115
  get SidebarGroupLabel() {
116
- return _sfc_main$b;
116
+ return _sfc_main$c;
117
117
  },
118
118
  get SidebarHeader() {
119
- return _sfc_main$a;
119
+ return _sfc_main$b;
120
120
  },
121
121
  get SidebarInset() {
122
- return _sfc_main$9;
122
+ return _sfc_main$a;
123
123
  },
124
124
  get SidebarMenu() {
125
- return _sfc_main$8;
125
+ return _sfc_main$9;
126
126
  },
127
127
  get SidebarMenuButton() {
128
- return _sfc_main$7;
128
+ return _sfc_main$8;
129
129
  },
130
130
  get SidebarMenuItem() {
131
- return _sfc_main$6;
131
+ return _sfc_main$7;
132
132
  },
133
133
  get SidebarProvider() {
134
- return _sfc_main$5;
134
+ return _sfc_main$6;
135
135
  },
136
136
  get SidebarTrigger() {
137
- return _sfc_main$4;
137
+ return _sfc_main$5;
138
138
  },
139
139
  get SortControls() {
140
- return _sfc_main$3;
140
+ return _sfc_main$4;
141
141
  },
142
142
  get TableList() {
143
143
  return _sfc_main$1;
@@ -145,29 +145,35 @@ const components = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePr
145
145
  get TableListForm() {
146
146
  return _sfc_main;
147
147
  },
148
+ get TableSearch() {
149
+ return _sfc_main$2;
150
+ },
148
151
  get TextArea() {
149
- return _sfc_main$B;
152
+ return _sfc_main$D;
150
153
  },
151
154
  get TextInput() {
152
- return _sfc_main$C;
155
+ return _sfc_main$E;
153
156
  },
154
157
  get ThSortable() {
155
- return _sfc_main$2;
158
+ return _sfc_main$3;
156
159
  },
157
160
  get TinyEditor() {
158
- return _sfc_main$t;
161
+ return _sfc_main$u;
162
+ },
163
+ get ToggleInput() {
164
+ return _sfc_main$w;
159
165
  },
160
166
  get useSidebar() {
161
167
  return useSidebar;
162
168
  }
163
169
  }, Symbol.toStringTag, { value: "Module" }));
164
- const _hoisted_1$y = { class: "border-b border-neutral-200 bg-neutral-50/80 p-2 dark:border-neutral-800 dark:bg-neutral-900/80" };
165
- const _hoisted_2$i = {
170
+ const _hoisted_1$A = { class: "border-b border-neutral-200 bg-neutral-50/80 p-2 dark:border-neutral-800 dark:bg-neutral-900/80" };
171
+ const _hoisted_2$k = {
166
172
  role: "tablist",
167
173
  class: "flex overflow-hidden rounded-lg bg-white shadow-sm ring-1 ring-neutral-200 dark:bg-neutral-950 dark:ring-neutral-800"
168
174
  };
169
- const _hoisted_3$c = ["aria-selected", "tabindex", "onClick", "onKeydown"];
170
- const _sfc_main$N = {
175
+ const _hoisted_3$d = ["aria-selected", "tabindex", "onClick", "onKeydown"];
176
+ const _sfc_main$P = {
171
177
  __name: "CardTabs",
172
178
  props: {
173
179
  tabs: {
@@ -236,8 +242,8 @@ const _sfc_main$N = {
236
242
  focusTabAtIndex(targetIndex);
237
243
  };
238
244
  return (_ctx, _cache) => {
239
- return openBlock(), createElementBlock("div", _hoisted_1$y, [
240
- createElementVNode("div", _hoisted_2$i, [
245
+ return openBlock(), createElementBlock("div", _hoisted_1$A, [
246
+ createElementVNode("div", _hoisted_2$k, [
241
247
  (openBlock(true), createElementBlock(Fragment, null, renderList(__props.tabs, (tab, index) => {
242
248
  return openBlock(), createElementBlock("button", {
243
249
  key: tab.value,
@@ -257,22 +263,22 @@ const _sfc_main$N = {
257
263
  ]),
258
264
  onClick: ($event) => activateTab(tab.value),
259
265
  onKeydown: ($event) => onTabKeydown($event, index)
260
- }, toDisplayString(tab.label), 47, _hoisted_3$c);
266
+ }, toDisplayString(tab.label), 47, _hoisted_3$d);
261
267
  }), 128))
262
268
  ])
263
269
  ]);
264
270
  };
265
271
  }
266
272
  };
267
- const _hoisted_1$x = {
273
+ const _hoisted_1$z = {
268
274
  key: 0,
269
275
  class: "mb-4"
270
276
  };
271
- const _hoisted_2$h = {
277
+ const _hoisted_2$j = {
272
278
  key: 1,
273
279
  class: "mb-4 text-xl font-semibold tracking-tight text-neutral-950 dark:text-neutral-50"
274
280
  };
275
- const _sfc_main$M = {
281
+ const _sfc_main$O = {
276
282
  __name: "Card",
277
283
  props: {
278
284
  title: {
@@ -333,7 +339,7 @@ const _sfc_main$M = {
333
339
  return openBlock(), createElementBlock("div", {
334
340
  class: normalizeClass(["rounded-2xl border border-neutral-200 bg-white text-neutral-950 shadow-sm dark:border-neutral-800 dark:bg-neutral-950 dark:text-neutral-50", __props.overflowClass, { "sticky top-6 self-start": __props.sticky }, __props.cardClass])
335
341
  }, [
336
- __props.tabs.length > 0 ? (openBlock(), createBlock(_sfc_main$N, {
342
+ __props.tabs.length > 0 ? (openBlock(), createBlock(_sfc_main$P, {
337
343
  key: 0,
338
344
  tabs: __props.tabs,
339
345
  "active-tab": __props.activeTab,
@@ -343,9 +349,9 @@ const _sfc_main$M = {
343
349
  createElementVNode("div", {
344
350
  class: normalizeClass(__props.paddingClass)
345
351
  }, [
346
- _ctx.$slots.customTitle ? (openBlock(), createElementBlock("div", _hoisted_1$x, [
352
+ _ctx.$slots.customTitle ? (openBlock(), createElementBlock("div", _hoisted_1$z, [
347
353
  renderSlot(_ctx.$slots, "customTitle")
348
- ])) : __props.title ? (openBlock(), createElementBlock("h3", _hoisted_2$h, toDisplayString(__props.title), 1)) : createCommentVNode("", true),
354
+ ])) : __props.title ? (openBlock(), createElementBlock("h3", _hoisted_2$j, toDisplayString(__props.title), 1)) : createCommentVNode("", true),
349
355
  createElementVNode("div", {
350
356
  class: normalizeClass(["relative", __props.tabs.length > 0 ? "overflow-hidden" : "overflow-visible"])
351
357
  }, [
@@ -378,7 +384,7 @@ const _sfc_main$M = {
378
384
  };
379
385
  }
380
386
  };
381
- const _sfc_main$L = /* @__PURE__ */ Object.assign({
387
+ const _sfc_main$N = /* @__PURE__ */ Object.assign({
382
388
  inheritAttrs: false
383
389
  }, {
384
390
  __name: "Divider",
@@ -390,7 +396,7 @@ const _sfc_main$L = /* @__PURE__ */ Object.assign({
390
396
  };
391
397
  }
392
398
  });
393
- const _sfc_main$K = {
399
+ const _sfc_main$M = {
394
400
  __name: "ActionCard",
395
401
  props: {
396
402
  title: {
@@ -405,13 +411,13 @@ const _sfc_main$K = {
405
411
  setup(__props) {
406
412
  const slots = useSlots();
407
413
  return (_ctx, _cache) => {
408
- return openBlock(), createBlock(_sfc_main$M, {
414
+ return openBlock(), createBlock(_sfc_main$O, {
409
415
  title: __props.title,
410
416
  "content-class": __props.actionsClass
411
417
  }, {
412
418
  default: withCtx(() => [
413
419
  renderSlot(_ctx.$slots, "default"),
414
- unref(slots).danger ? (openBlock(), createBlock(_sfc_main$L, {
420
+ unref(slots).danger ? (openBlock(), createBlock(_sfc_main$N, {
415
421
  key: 0,
416
422
  class: "mt-6 pt-4"
417
423
  }, {
@@ -426,8 +432,8 @@ const _sfc_main$K = {
426
432
  };
427
433
  }
428
434
  };
429
- const _hoisted_1$w = { class: "text-sm text-gray-600" };
430
- const _sfc_main$J = {
435
+ const _hoisted_1$y = { class: "text-sm text-gray-600" };
436
+ const _sfc_main$L = {
431
437
  __name: "ActionMessage",
432
438
  props: {
433
439
  on: Boolean
@@ -441,7 +447,7 @@ const _sfc_main$J = {
441
447
  "leave-to-class": "opacity-0"
442
448
  }, {
443
449
  default: withCtx(() => [
444
- withDirectives(createElementVNode("div", _hoisted_1$w, [
450
+ withDirectives(createElementVNode("div", _hoisted_1$y, [
445
451
  renderSlot(_ctx.$slots, "default")
446
452
  ], 512), [
447
453
  [vShow, __props.on]
@@ -460,36 +466,36 @@ const _export_sfc = (sfc, props) => {
460
466
  }
461
467
  return target;
462
468
  };
463
- const _sfc_main$I = {};
464
- const _hoisted_1$v = { class: "md:col-span-1 flex justify-between" };
465
- const _hoisted_2$g = { class: "px-4 sm:px-0" };
466
- const _hoisted_3$b = { class: "text-xl font-semibold tracking-tight text-neutral-950 dark:text-neutral-50" };
467
- const _hoisted_4$8 = { class: "mt-1 max-w-2xl text-sm text-neutral-600 dark:text-neutral-200" };
468
- const _hoisted_5$6 = { class: "px-4 sm:px-0" };
469
+ const _sfc_main$K = {};
470
+ const _hoisted_1$x = { class: "md:col-span-1 flex justify-between" };
471
+ const _hoisted_2$i = { class: "px-4 sm:px-0" };
472
+ const _hoisted_3$c = { class: "text-xl font-semibold tracking-tight text-neutral-950 dark:text-neutral-50" };
473
+ const _hoisted_4$9 = { class: "mt-1 max-w-2xl text-sm text-neutral-600 dark:text-neutral-200" };
474
+ const _hoisted_5$7 = { class: "px-4 sm:px-0" };
469
475
  function _sfc_render(_ctx, _cache) {
470
- return openBlock(), createElementBlock("div", _hoisted_1$v, [
471
- createElementVNode("div", _hoisted_2$g, [
472
- createElementVNode("h3", _hoisted_3$b, [
476
+ return openBlock(), createElementBlock("div", _hoisted_1$x, [
477
+ createElementVNode("div", _hoisted_2$i, [
478
+ createElementVNode("h3", _hoisted_3$c, [
473
479
  renderSlot(_ctx.$slots, "title")
474
480
  ]),
475
- createElementVNode("p", _hoisted_4$8, [
481
+ createElementVNode("p", _hoisted_4$9, [
476
482
  renderSlot(_ctx.$slots, "description")
477
483
  ])
478
484
  ]),
479
- createElementVNode("div", _hoisted_5$6, [
485
+ createElementVNode("div", _hoisted_5$7, [
480
486
  renderSlot(_ctx.$slots, "aside")
481
487
  ])
482
488
  ]);
483
489
  }
484
- const SectionTitle = /* @__PURE__ */ _export_sfc(_sfc_main$I, [["render", _sfc_render]]);
485
- const _hoisted_1$u = { class: "md:grid md:grid-cols-3 md:gap-6" };
486
- const _hoisted_2$f = { class: "mt-5 md:mt-0 md:col-span-2" };
487
- const _hoisted_3$a = { class: "rounded-lg border border-neutral-200 bg-white px-4 py-5 shadow-sm dark:border-neutral-800 dark:bg-neutral-950 sm:p-6" };
488
- const _sfc_main$H = {
490
+ const SectionTitle = /* @__PURE__ */ _export_sfc(_sfc_main$K, [["render", _sfc_render]]);
491
+ const _hoisted_1$w = { class: "md:grid md:grid-cols-3 md:gap-6" };
492
+ const _hoisted_2$h = { class: "mt-5 md:mt-0 md:col-span-2" };
493
+ const _hoisted_3$b = { class: "rounded-lg border border-neutral-200 bg-white px-4 py-5 shadow-sm dark:border-neutral-800 dark:bg-neutral-950 sm:p-6" };
494
+ const _sfc_main$J = {
489
495
  __name: "ActionSection",
490
496
  setup(__props) {
491
497
  return (_ctx, _cache) => {
492
- return openBlock(), createElementBlock("div", _hoisted_1$u, [
498
+ return openBlock(), createElementBlock("div", _hoisted_1$w, [
493
499
  createVNode(SectionTitle, null, {
494
500
  title: withCtx(() => [
495
501
  renderSlot(_ctx.$slots, "title")
@@ -499,8 +505,8 @@ const _sfc_main$H = {
499
505
  ]),
500
506
  _: 3
501
507
  }),
502
- createElementVNode("div", _hoisted_2$f, [
503
- createElementVNode("div", _hoisted_3$a, [
508
+ createElementVNode("div", _hoisted_2$h, [
509
+ createElementVNode("div", _hoisted_3$b, [
504
510
  renderSlot(_ctx.$slots, "content")
505
511
  ])
506
512
  ])
@@ -508,8 +514,8 @@ const _sfc_main$H = {
508
514
  };
509
515
  }
510
516
  };
511
- const _hoisted_1$t = { class: "sr-only" };
512
- const _sfc_main$G = {
517
+ const _hoisted_1$v = { class: "sr-only" };
518
+ const _sfc_main$I = {
513
519
  __name: "Badge",
514
520
  props: {
515
521
  type: {
@@ -574,7 +580,7 @@ const _sfc_main$G = {
574
580
  createElementVNode("span", {
575
581
  class: normalizeClass(["w-2 h-2 rounded-full", colorClasses[__props.color].dot])
576
582
  }, null, 2),
577
- createElementVNode("span", _hoisted_1$t, [
583
+ createElementVNode("span", _hoisted_1$v, [
578
584
  renderSlot(_ctx.$slots, "default")
579
585
  ])
580
586
  ], 2)) : (openBlock(), createElementBlock("span", {
@@ -591,8 +597,8 @@ const _sfc_main$G = {
591
597
  };
592
598
  }
593
599
  };
594
- const _hoisted_1$s = ["type", "disabled"];
595
- const _sfc_main$F = /* @__PURE__ */ Object.assign({
600
+ const _hoisted_1$u = ["type", "disabled"];
601
+ const _sfc_main$H = /* @__PURE__ */ Object.assign({
596
602
  inheritAttrs: false
597
603
  }, {
598
604
  __name: "Button",
@@ -659,12 +665,12 @@ const _sfc_main$F = /* @__PURE__ */ Object.assign({
659
665
  class: buttonClasses.value
660
666
  }), [
661
667
  renderSlot(_ctx.$slots, "default")
662
- ], 16, _hoisted_1$s);
668
+ ], 16, _hoisted_1$u);
663
669
  };
664
670
  }
665
671
  });
666
- const _hoisted_1$r = ["value"];
667
- const _sfc_main$E = {
672
+ const _hoisted_1$t = ["value"];
673
+ const _sfc_main$G = {
668
674
  __name: "Checkbox",
669
675
  props: {
670
676
  checked: {
@@ -694,14 +700,14 @@ const _sfc_main$E = {
694
700
  type: "checkbox",
695
701
  value: __props.value,
696
702
  class: "rounded border-neutral-300 text-neutral-900 shadow-sm focus:ring-neutral-900 dark:border-neutral-700 dark:bg-neutral-950 dark:text-neutral-100 dark:focus:ring-neutral-100"
697
- }, null, 8, _hoisted_1$r)), [
703
+ }, null, 8, _hoisted_1$t)), [
698
704
  [vModelCheckbox, proxyChecked.value]
699
705
  ]);
700
706
  };
701
707
  }
702
708
  };
703
- const _hoisted_1$q = ["name", "checked", "disabled"];
704
- const _sfc_main$D = {
709
+ const _hoisted_1$s = ["name", "checked", "disabled"];
710
+ const _sfc_main$F = {
705
711
  __name: "CheckboxInput",
706
712
  props: {
707
713
  modelValue: {
@@ -761,7 +767,7 @@ const _sfc_main$D = {
761
767
  onChange,
762
768
  onFocus: handleFocus,
763
769
  onBlur: handleBlur
764
- }, null, 40, _hoisted_1$q),
770
+ }, null, 40, _hoisted_1$s),
765
771
  createElementVNode("span", {
766
772
  class: normalizeClass(["inline-flex h-4 w-4 items-center justify-center border text-[10px] font-bold leading-none", [
767
773
  isChecked.value ? "border-current bg-white/15 text-current dark:bg-neutral-900/15" : "border-current/70 text-transparent",
@@ -773,21 +779,21 @@ const _sfc_main$D = {
773
779
  };
774
780
  }
775
781
  };
776
- const _hoisted_1$p = { class: "relative flex items-center" };
777
- const _hoisted_2$e = {
782
+ const _hoisted_1$r = { class: "relative flex items-center" };
783
+ const _hoisted_2$g = {
778
784
  key: 0,
779
785
  class: "absolute inset-y-0 left-0 flex items-center pointer-events-none pl-3"
780
786
  };
781
- const _hoisted_3$9 = ["type", "value", "disabled"];
782
- const _hoisted_4$7 = ["aria-label"];
783
- const _hoisted_5$5 = {
787
+ const _hoisted_3$a = ["type", "value", "disabled"];
788
+ const _hoisted_4$8 = ["aria-label"];
789
+ const _hoisted_5$6 = {
784
790
  key: 0,
785
791
  class: "h-5 w-5",
786
792
  fill: "none",
787
793
  stroke: "currentColor",
788
794
  viewBox: "0 0 24 24"
789
795
  };
790
- const _hoisted_6$5 = {
796
+ const _hoisted_6$6 = {
791
797
  key: 1,
792
798
  class: "h-5 w-5",
793
799
  fill: "none",
@@ -795,7 +801,7 @@ const _hoisted_6$5 = {
795
801
  viewBox: "0 0 24 24"
796
802
  };
797
803
  const DEFAULT_MAX_LENGTH$1 = 254;
798
- const _sfc_main$C = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
804
+ const _sfc_main$E = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
799
805
  __name: "TextInput",
800
806
  props: {
801
807
  modelValue: {
@@ -854,8 +860,8 @@ const _sfc_main$C = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
854
860
  });
855
861
  __expose({ focus: () => input.value?.focus() });
856
862
  return (_ctx, _cache) => {
857
- return openBlock(), createElementBlock("div", _hoisted_1$p, [
858
- isPasswordField.value ? (openBlock(), createElementBlock("div", _hoisted_2$e, [
863
+ return openBlock(), createElementBlock("div", _hoisted_1$r, [
864
+ isPasswordField.value ? (openBlock(), createElementBlock("div", _hoisted_2$g, [
859
865
  createVNode(unref(LockClosedIcon), { class: "h-5 w-5 text-neutral-400 dark:text-neutral-200" })
860
866
  ])) : createCommentVNode("", true),
861
867
  createElementVNode("input", mergeProps({
@@ -869,7 +875,7 @@ const _sfc_main$C = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
869
875
  onInput: _cache[0] || (_cache[0] = ($event) => emit("update:modelValue", $event.target.value)),
870
876
  onBlur: _cache[1] || (_cache[1] = ($event) => emit("blur", $event)),
871
877
  onWheel: handleWheel
872
- }), null, 16, _hoisted_3$9),
878
+ }), null, 16, _hoisted_3$a),
873
879
  isPasswordField.value ? (openBlock(), createElementBlock("button", {
874
880
  key: 1,
875
881
  type: "button",
@@ -877,14 +883,14 @@ const _sfc_main$C = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
877
883
  "aria-label": revealed.value ? "Hide password" : "Show password",
878
884
  onClick: toggleVisibility
879
885
  }, [
880
- revealed.value ? (openBlock(), createElementBlock("svg", _hoisted_5$5, [..._cache[2] || (_cache[2] = [
886
+ revealed.value ? (openBlock(), createElementBlock("svg", _hoisted_5$6, [..._cache[2] || (_cache[2] = [
881
887
  createElementVNode("path", {
882
888
  "stroke-linecap": "round",
883
889
  "stroke-linejoin": "round",
884
890
  "stroke-width": "2",
885
891
  d: "M13.875 18.825A10.05 10.05 0 0112 19c-5 0-9.27-3.11-11-7 1.01-2.27 2.78-4.1 5-5.32m3.08-1.3A9.96 9.96 0 0112 5c5 0 9.27 3.11 11 7a11.03 11.03 0 01-4.16 4.91M15 12a3 3 0 00-3-3m0 0a3 3 0 00-2.94 3.59M3 3l18 18"
886
892
  }, null, -1)
887
- ])])) : (openBlock(), createElementBlock("svg", _hoisted_6$5, [..._cache[3] || (_cache[3] = [
893
+ ])])) : (openBlock(), createElementBlock("svg", _hoisted_6$6, [..._cache[3] || (_cache[3] = [
888
894
  createElementVNode("path", {
889
895
  "stroke-linecap": "round",
890
896
  "stroke-linejoin": "round",
@@ -898,14 +904,14 @@ const _sfc_main$C = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
898
904
  d: "M2.458 12C3.732 7.943 7.523 5 12 5s8.268 2.943 9.542 7c-1.274 4.057-5.065 7-9.542 7S3.732 16.057 2.458 12z"
899
905
  }, null, -1)
900
906
  ])]))
901
- ], 8, _hoisted_4$7)) : createCommentVNode("", true)
907
+ ], 8, _hoisted_4$8)) : createCommentVNode("", true)
902
908
  ]);
903
909
  };
904
910
  }
905
911
  });
906
- const _hoisted_1$o = ["value", "disabled"];
912
+ const _hoisted_1$q = ["value", "disabled"];
907
913
  const DEFAULT_MAX_LENGTH = 1e3;
908
- const _sfc_main$B = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
914
+ const _sfc_main$D = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
909
915
  __name: "TextArea",
910
916
  props: {
911
917
  modelValue: String,
@@ -975,13 +981,13 @@ const _sfc_main$B = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
975
981
  value: props.modelValue,
976
982
  disabled: props.disabled,
977
983
  onInput: updateValue
978
- }), null, 16, _hoisted_1$o)
984
+ }), null, 16, _hoisted_1$q)
979
985
  ]);
980
986
  };
981
987
  }
982
988
  });
983
- const _hoisted_1$n = ["onClick"];
984
- const _sfc_main$A = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
989
+ const _hoisted_1$p = ["onClick"];
990
+ const _sfc_main$C = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
985
991
  __name: "CustomSelect",
986
992
  props: {
987
993
  modelValue: {
@@ -1261,7 +1267,7 @@ const _sfc_main$A = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1261
1267
  }
1262
1268
  ]),
1263
1269
  onClick: withModifiers(($event) => selectOption(option), ["stop"])
1264
- }, toDisplayString(optionText(option)), 11, _hoisted_1$n);
1270
+ }, toDisplayString(optionText(option)), 11, _hoisted_1$p);
1265
1271
  }), 128))
1266
1272
  ], 6)) : createCommentVNode("", true)
1267
1273
  ]))
@@ -1272,7 +1278,7 @@ const _sfc_main$A = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1272
1278
  };
1273
1279
  }
1274
1280
  });
1275
- const _sfc_main$z = {
1281
+ const _sfc_main$B = {
1276
1282
  __name: "SelectInput",
1277
1283
  props: {
1278
1284
  modelValue: {
@@ -1360,7 +1366,7 @@ const _sfc_main$z = {
1360
1366
  setup(__props, { emit: __emit }) {
1361
1367
  const emit = __emit;
1362
1368
  return (_ctx, _cache) => {
1363
- return openBlock(), createBlock(_sfc_main$A, mergeProps({
1369
+ return openBlock(), createBlock(_sfc_main$C, mergeProps({
1364
1370
  "model-value": __props.modelValue,
1365
1371
  "model-modifiers": __props.modelModifiers,
1366
1372
  options: __props.options,
@@ -1386,8 +1392,8 @@ const _sfc_main$z = {
1386
1392
  };
1387
1393
  }
1388
1394
  };
1389
- const _hoisted_1$m = ["type", "max", "value", "disabled"];
1390
- const _sfc_main$y = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1395
+ const _hoisted_1$o = ["type", "max", "value", "disabled"];
1396
+ const _sfc_main$A = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1391
1397
  __name: "DateInput",
1392
1398
  props: {
1393
1399
  modelValue: {
@@ -1467,22 +1473,22 @@ const _sfc_main$y = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1467
1473
  disabled: props.disabled,
1468
1474
  onInput: handleDateInput,
1469
1475
  onChange: handleDateInput
1470
- }), null, 16, _hoisted_1$m);
1476
+ }), null, 16, _hoisted_1$o);
1471
1477
  };
1472
1478
  }
1473
1479
  });
1474
- const _hoisted_1$l = { class: "relative" };
1475
- const _hoisted_2$d = { class: "absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none" };
1476
- const _hoisted_3$8 = ["accept"];
1477
- const _hoisted_4$6 = {
1480
+ const _hoisted_1$n = { class: "relative" };
1481
+ const _hoisted_2$f = { class: "absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none" };
1482
+ const _hoisted_3$9 = ["accept"];
1483
+ const _hoisted_4$7 = {
1478
1484
  key: 0,
1479
1485
  class: "mt-4 rounded-lg border border-neutral-200 bg-neutral-50 p-4 dark:border-neutral-800 dark:bg-neutral-900/50"
1480
1486
  };
1481
- const _hoisted_5$4 = { class: "flex items-center space-x-4" };
1482
- const _hoisted_6$4 = ["src"];
1483
- const _hoisted_7$4 = { class: "text-sm font-medium text-neutral-900 dark:text-neutral-50" };
1484
- const _hoisted_8$2 = { class: "text-xs text-neutral-500 dark:text-neutral-200" };
1485
- const _sfc_main$x = {
1487
+ const _hoisted_5$5 = { class: "flex items-center space-x-4" };
1488
+ const _hoisted_6$5 = ["src"];
1489
+ const _hoisted_7$5 = { class: "text-sm font-medium text-neutral-900 dark:text-neutral-50" };
1490
+ const _hoisted_8$3 = { class: "text-xs text-neutral-500 dark:text-neutral-200" };
1491
+ const _sfc_main$z = {
1486
1492
  __name: "ImageInput",
1487
1493
  props: {
1488
1494
  currentImageUrl: {
@@ -1516,8 +1522,8 @@ const _sfc_main$x = {
1516
1522
  };
1517
1523
  return (_ctx, _cache) => {
1518
1524
  return openBlock(), createElementBlock("div", null, [
1519
- createElementVNode("div", _hoisted_1$l, [
1520
- createElementVNode("div", _hoisted_2$d, [
1525
+ createElementVNode("div", _hoisted_1$n, [
1526
+ createElementVNode("div", _hoisted_2$f, [
1521
1527
  createVNode(unref(PhotoIcon), { class: "size-5 text-neutral-400 dark:text-neutral-200" })
1522
1528
  ]),
1523
1529
  createElementVNode("input", mergeProps(__props.attrs, {
@@ -1525,18 +1531,18 @@ const _sfc_main$x = {
1525
1531
  accept: __props.accept,
1526
1532
  class: "block w-full cursor-pointer rounded-lg border border-neutral-200 bg-white py-3 pl-10 pr-4 text-sm text-neutral-700 shadow-sm transition-all duration-200 file:mr-4 file:rounded-md file:border-0 file:bg-neutral-900 file:px-4 file:py-2 file:text-sm file:font-medium file:text-neutral-50 hover:file:bg-neutral-800 focus:border-neutral-900 focus:outline-none focus:ring-2 focus:ring-neutral-950/10 dark:border-neutral-800 dark:bg-neutral-950 dark:text-neutral-100 dark:file:bg-neutral-800 dark:file:text-neutral-50 dark:hover:file:bg-neutral-700 dark:focus:border-neutral-100 dark:focus:ring-neutral-100/10",
1527
1533
  onChange: handleFileChange
1528
- }), null, 16, _hoisted_3$8)
1534
+ }), null, 16, _hoisted_3$9)
1529
1535
  ]),
1530
- props.currentImageUrl ? (openBlock(), createElementBlock("div", _hoisted_4$6, [
1531
- createElementVNode("div", _hoisted_5$4, [
1536
+ props.currentImageUrl ? (openBlock(), createElementBlock("div", _hoisted_4$7, [
1537
+ createElementVNode("div", _hoisted_5$5, [
1532
1538
  createElementVNode("img", {
1533
1539
  src: props.currentImageUrl,
1534
1540
  alt: "Current logo",
1535
1541
  class: "h-16 w-auto max-w-24 object-contain rounded-lg shadow-sm"
1536
- }, null, 8, _hoisted_6$4),
1542
+ }, null, 8, _hoisted_6$5),
1537
1543
  createElementVNode("div", null, [
1538
- createElementVNode("p", _hoisted_7$4, toDisplayString(props.currentLabel), 1),
1539
- createElementVNode("p", _hoisted_8$2, toDisplayString(props.currentSubtext), 1)
1544
+ createElementVNode("p", _hoisted_7$5, toDisplayString(props.currentLabel), 1),
1545
+ createElementVNode("p", _hoisted_8$3, toDisplayString(props.currentSubtext), 1)
1540
1546
  ])
1541
1547
  ])
1542
1548
  ])) : createCommentVNode("", true)
@@ -1544,9 +1550,9 @@ const _sfc_main$x = {
1544
1550
  };
1545
1551
  }
1546
1552
  };
1547
- const _hoisted_1$k = { class: "flex h-12 overflow-hidden rounded-lg border border-neutral-200 bg-white text-sm dark:border-neutral-800 dark:bg-neutral-950" };
1548
- const _hoisted_2$c = ["disabled", "onClick"];
1549
- const _sfc_main$w = {
1553
+ const _hoisted_1$m = { class: "flex h-12 overflow-hidden rounded-lg border border-neutral-200 bg-white text-sm dark:border-neutral-800 dark:bg-neutral-950" };
1554
+ const _hoisted_2$e = ["disabled", "onClick"];
1555
+ const _sfc_main$y = {
1550
1556
  __name: "NotationInput",
1551
1557
  props: {
1552
1558
  modelValue: {
@@ -1572,7 +1578,7 @@ const _sfc_main$w = {
1572
1578
  const isSelected = (option) => String(option) === String(props.modelValue ?? "");
1573
1579
  const selectOption = (option) => emit("update:modelValue", option);
1574
1580
  return (_ctx, _cache) => {
1575
- return openBlock(), createElementBlock("div", _hoisted_1$k, [
1581
+ return openBlock(), createElementBlock("div", _hoisted_1$m, [
1576
1582
  (openBlock(true), createElementBlock(Fragment, null, renderList(normalizedOptions.value, (option, idx) => {
1577
1583
  return openBlock(), createElementBlock("button", {
1578
1584
  key: `notation-${idx}-${option}`,
@@ -1585,14 +1591,14 @@ const _sfc_main$w = {
1585
1591
  ]]),
1586
1592
  disabled: __props.disabled,
1587
1593
  onClick: ($event) => selectOption(option)
1588
- }, toDisplayString(option), 11, _hoisted_2$c);
1594
+ }, toDisplayString(option), 11, _hoisted_2$e);
1589
1595
  }), 128))
1590
1596
  ]);
1591
1597
  };
1592
1598
  }
1593
1599
  };
1594
- const _hoisted_1$j = ["name", "value", "checked", "disabled"];
1595
- const _sfc_main$v = {
1600
+ const _hoisted_1$l = ["name", "value", "checked", "disabled"];
1601
+ const _sfc_main$x = {
1596
1602
  __name: "RadioInput",
1597
1603
  props: {
1598
1604
  modelValue: {
@@ -1647,14 +1653,98 @@ const _sfc_main$v = {
1647
1653
  onChange,
1648
1654
  onFocus: handleFocus,
1649
1655
  onBlur: handleBlur
1650
- }, null, 40, _hoisted_1$j),
1656
+ }, null, 40, _hoisted_1$l),
1651
1657
  createElementVNode("span", null, toDisplayString(isChecked.value ? "✓" : "○") + " " + toDisplayString(__props.label), 1)
1652
1658
  ], 2);
1653
1659
  };
1654
1660
  }
1655
1661
  };
1656
- const _hoisted_1$i = { class: "flex flex-wrap gap-3" };
1657
- const _sfc_main$u = {
1662
+ const _hoisted_1$k = ["name", "checked", "disabled"];
1663
+ const _hoisted_2$d = {
1664
+ key: 0,
1665
+ class: "text-sm text-neutral-700 dark:text-neutral-200"
1666
+ };
1667
+ const _sfc_main$w = {
1668
+ __name: "ToggleInput",
1669
+ props: {
1670
+ modelValue: {
1671
+ type: [Boolean, String, Number, null],
1672
+ default: false
1673
+ },
1674
+ value: {
1675
+ type: [Boolean, String, Number],
1676
+ default: true
1677
+ },
1678
+ uncheckedValue: {
1679
+ type: [Boolean, String, Number, null],
1680
+ default: false
1681
+ },
1682
+ label: {
1683
+ type: String,
1684
+ default: ""
1685
+ },
1686
+ name: {
1687
+ type: String,
1688
+ default: void 0
1689
+ },
1690
+ disabled: {
1691
+ type: Boolean,
1692
+ default: false
1693
+ }
1694
+ },
1695
+ emits: ["update:modelValue", "blur"],
1696
+ setup(__props, { emit: __emit }) {
1697
+ const emit = __emit;
1698
+ const props = __props;
1699
+ const isChecked = computed(() => props.modelValue === props.value);
1700
+ const hasFocus = ref(false);
1701
+ const handleFocus = () => {
1702
+ hasFocus.value = true;
1703
+ };
1704
+ const handleBlur = (event) => {
1705
+ hasFocus.value = false;
1706
+ emit("blur", event);
1707
+ };
1708
+ const onChange = (event) => {
1709
+ emit(
1710
+ "update:modelValue",
1711
+ event.target.checked ? props.value : props.uncheckedValue
1712
+ );
1713
+ };
1714
+ return (_ctx, _cache) => {
1715
+ return openBlock(), createElementBlock("label", {
1716
+ class: normalizeClass(["inline-flex items-center gap-3 select-none", [
1717
+ __props.disabled ? "cursor-not-allowed opacity-60" : "cursor-pointer",
1718
+ hasFocus.value && !__props.disabled ? "rounded-full ring-2 ring-neutral-900/20 ring-offset-2 ring-offset-white dark:ring-neutral-100/20 dark:ring-offset-neutral-950" : ""
1719
+ ]])
1720
+ }, [
1721
+ createElementVNode("input", {
1722
+ type: "checkbox",
1723
+ class: "sr-only",
1724
+ name: __props.name,
1725
+ checked: isChecked.value,
1726
+ disabled: __props.disabled,
1727
+ onChange,
1728
+ onFocus: handleFocus,
1729
+ onBlur: handleBlur
1730
+ }, null, 40, _hoisted_1$k),
1731
+ createElementVNode("span", {
1732
+ "aria-hidden": "true",
1733
+ class: normalizeClass(["relative inline-flex h-6 w-11 items-center rounded-full border transition-colors duration-200", [
1734
+ isChecked.value ? "border-neutral-900 bg-neutral-900 dark:border-neutral-100 dark:bg-neutral-100" : "border-neutral-300 bg-neutral-200 dark:border-neutral-700 dark:bg-neutral-800"
1735
+ ]])
1736
+ }, [
1737
+ createElementVNode("span", {
1738
+ class: normalizeClass(["inline-block size-4 rounded-full bg-white shadow-sm transition-transform duration-200 dark:bg-neutral-950", [isChecked.value ? "translate-x-6" : "translate-x-1"]])
1739
+ }, null, 2)
1740
+ ], 2),
1741
+ __props.label ? (openBlock(), createElementBlock("span", _hoisted_2$d, toDisplayString(__props.label), 1)) : createCommentVNode("", true)
1742
+ ], 2);
1743
+ };
1744
+ }
1745
+ };
1746
+ const _hoisted_1$j = { class: "flex flex-wrap gap-3" };
1747
+ const _sfc_main$v = {
1658
1748
  __name: "RadioMultipleInput",
1659
1749
  props: {
1660
1750
  modelValue: {
@@ -1683,9 +1773,9 @@ const _sfc_main$u = {
1683
1773
  });
1684
1774
  const selectOption = (option) => emit("update:modelValue", option);
1685
1775
  return (_ctx, _cache) => {
1686
- return openBlock(), createElementBlock("div", _hoisted_1$i, [
1776
+ return openBlock(), createElementBlock("div", _hoisted_1$j, [
1687
1777
  (openBlock(true), createElementBlock(Fragment, null, renderList(normalizedOptions.value, (option) => {
1688
- return openBlock(), createBlock(_sfc_main$s, {
1778
+ return openBlock(), createBlock(_sfc_main$t, {
1689
1779
  key: `radio-${__props.name ?? "group"}-${option}`,
1690
1780
  type: "radio-input",
1691
1781
  "model-value": props.modelValue,
@@ -1700,11 +1790,11 @@ const _sfc_main$u = {
1700
1790
  };
1701
1791
  }
1702
1792
  };
1703
- const _hoisted_1$h = {
1793
+ const _hoisted_1$i = {
1704
1794
  key: 0,
1705
1795
  class: "min-h-[12rem] w-full rounded-lg border border-slate-300 bg-slate-50"
1706
1796
  };
1707
- const _sfc_main$t = {
1797
+ const _sfc_main$u = {
1708
1798
  __name: "TinyEditor",
1709
1799
  props: {
1710
1800
  modelValue: {
@@ -1809,7 +1899,7 @@ const _sfc_main$t = {
1809
1899
  };
1810
1900
  return (_ctx, _cache) => {
1811
1901
  return openBlock(), createElementBlock("div", { key: editorKey.value }, [
1812
- !isEditorReady.value ? (openBlock(), createElementBlock("div", _hoisted_1$h)) : (openBlock(), createBlock(unref(Editor), {
1902
+ !isEditorReady.value ? (openBlock(), createElementBlock("div", _hoisted_1$i)) : (openBlock(), createBlock(unref(Editor), {
1813
1903
  key: 1,
1814
1904
  "initial-value": content.value,
1815
1905
  "license-key": __props.licenseKey,
@@ -1823,17 +1913,17 @@ const _sfc_main$t = {
1823
1913
  };
1824
1914
  }
1825
1915
  };
1826
- const _hoisted_1$g = ["for"];
1827
- const _hoisted_2$b = {
1916
+ const _hoisted_1$h = ["for"];
1917
+ const _hoisted_2$c = {
1828
1918
  key: 1,
1829
1919
  class: "text-xs text-gray-500 mb-1 block break-all"
1830
1920
  };
1831
- const _hoisted_3$7 = {
1832
- key: 15,
1921
+ const _hoisted_3$8 = {
1922
+ key: 16,
1833
1923
  class: "flex items-center mt-2 text-sm text-red-600"
1834
1924
  };
1835
1925
  const defaultFieldClass = "block w-full rounded-lg border border-neutral-200 bg-white px-4 py-3 text-sm text-neutral-950 placeholder:text-neutral-400 shadow-sm transition-all duration-200 focus:border-neutral-900 focus:outline-none focus:ring-2 focus:ring-neutral-950/10 dark:border-neutral-800 dark:bg-neutral-950 dark:text-neutral-50 dark:placeholder:text-neutral-500 dark:focus:border-neutral-100 dark:focus:ring-neutral-100/10";
1836
- const _sfc_main$s = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1926
+ const _sfc_main$t = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1837
1927
  __name: "InputGroup",
1838
1928
  props: {
1839
1929
  type: {
@@ -1984,7 +2074,9 @@ const _sfc_main$s = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1984
2074
  const attrs = useAttrs();
1985
2075
  const updateValue = (value) => emit("update:modelValue", value);
1986
2076
  const hasError = computed(() => Boolean(props.errorMessage));
1987
- const showsInlineChoiceControl = computed(() => isCheckboxSingleType.value || isRadioSingleType.value);
2077
+ const showsInlineChoiceControl = computed(
2078
+ () => isCheckboxSingleType.value || isRadioSingleType.value || isToggleSingleType.value
2079
+ );
1988
2080
  const fieldId = computed(() => {
1989
2081
  const id = attrs.id;
1990
2082
  return typeof id === "string" && id !== "" ? id : void 0;
@@ -2007,9 +2099,12 @@ const _sfc_main$s = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
2007
2099
  const isNotationType = computed(() => props.type === "notation");
2008
2100
  const isCheckboxSingleType = computed(() => props.type === "checkbox-input");
2009
2101
  const isRadioSingleType = computed(() => props.type === "radio-input");
2102
+ const isToggleSingleType = computed(() => props.type === "toggle-input");
2010
2103
  const isCheckboxType = computed(() => props.type === "checkbox");
2011
2104
  const isRadioType = computed(() => props.type === "radio");
2012
- const isDateType = computed(() => props.type === "date" || props.type === "datetime-local");
2105
+ const isDateType = computed(
2106
+ () => props.type === "date" || props.type === "datetime-local"
2107
+ );
2013
2108
  const isTextareaType = computed(() => props.type === "textarea");
2014
2109
  const isTinyEditorType = computed(() => props.type === "tiny-editor");
2015
2110
  const isSelectType = computed(() => props.type === "select");
@@ -2059,11 +2154,16 @@ const _sfc_main$s = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
2059
2154
  optionLabel: props.optionLabel
2060
2155
  };
2061
2156
  if (props.baseClass !== void 0) inputProps.baseClass = props.baseClass;
2062
- if (props.normalTextClass !== void 0) inputProps.normalTextClass = props.normalTextClass;
2063
- if (props.deletedSelectedClass !== void 0) inputProps.deletedSelectedClass = props.deletedSelectedClass;
2064
- if (props.optionClass !== void 0) inputProps.optionClass = props.optionClass;
2065
- if (props.deletedOptionClass !== void 0) inputProps.deletedOptionClass = props.deletedOptionClass;
2066
- if (props.placeholderClass !== void 0) inputProps.placeholderClass = props.placeholderClass;
2157
+ if (props.normalTextClass !== void 0)
2158
+ inputProps.normalTextClass = props.normalTextClass;
2159
+ if (props.deletedSelectedClass !== void 0)
2160
+ inputProps.deletedSelectedClass = props.deletedSelectedClass;
2161
+ if (props.optionClass !== void 0)
2162
+ inputProps.optionClass = props.optionClass;
2163
+ if (props.deletedOptionClass !== void 0)
2164
+ inputProps.deletedOptionClass = props.deletedOptionClass;
2165
+ if (props.placeholderClass !== void 0)
2166
+ inputProps.placeholderClass = props.placeholderClass;
2067
2167
  return inputProps;
2068
2168
  });
2069
2169
  const notationBindings = computed(() => ({
@@ -2101,6 +2201,13 @@ const _sfc_main$s = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
2101
2201
  name: props.name ?? attrs.name,
2102
2202
  disabled: props.disabled
2103
2203
  }));
2204
+ const toggleSingleBindings = computed(() => ({
2205
+ ...attrs,
2206
+ name: props.name,
2207
+ modelValue: props.modelValue,
2208
+ label: props.label || attrs.label || "",
2209
+ disabled: props.disabled
2210
+ }));
2104
2211
  const imageBindings = computed(() => {
2105
2212
  return {
2106
2213
  ...attrs,
@@ -2132,55 +2239,58 @@ const _sfc_main$s = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
2132
2239
  key: 0,
2133
2240
  for: fieldId.value,
2134
2241
  class: "text-base font-semibold text-gray-900 dark:text-gray-50 mb-1 block"
2135
- }, toDisplayString(__props.label), 9, _hoisted_1$g)) : createCommentVNode("", true),
2136
- __props.helperText && !showsInlineChoiceControl.value ? (openBlock(), createElementBlock("span", _hoisted_2$b, toDisplayString(__props.helperText), 1)) : createCommentVNode("", true),
2137
- isTextareaType.value ? (openBlock(), createBlock(_sfc_main$B, mergeProps({ key: 2 }, textAreaBindings.value, {
2242
+ }, toDisplayString(__props.label), 9, _hoisted_1$h)) : createCommentVNode("", true),
2243
+ __props.helperText && !showsInlineChoiceControl.value ? (openBlock(), createElementBlock("span", _hoisted_2$c, toDisplayString(__props.helperText), 1)) : createCommentVNode("", true),
2244
+ isTextareaType.value ? (openBlock(), createBlock(_sfc_main$D, mergeProps({ key: 2 }, textAreaBindings.value, {
2138
2245
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => emit("update:modelValue", $event)),
2139
2246
  onBlur: _cache[1] || (_cache[1] = ($event) => emit("blur", $event))
2140
- }), null, 16)) : isTinyEditorType.value ? (openBlock(), createBlock(_sfc_main$t, mergeProps({ key: 3 }, tinyEditorBindings.value, {
2247
+ }), null, 16)) : isTinyEditorType.value ? (openBlock(), createBlock(_sfc_main$u, mergeProps({ key: 3 }, tinyEditorBindings.value, {
2141
2248
  "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => emit("update:modelValue", $event)),
2142
2249
  onBlur: _cache[3] || (_cache[3] = ($event) => emit("blur", $event))
2143
- }), null, 16)) : isSelectType.value ? (openBlock(), createBlock(_sfc_main$z, mergeProps({ key: 4 }, selectBindings.value, {
2250
+ }), null, 16)) : isSelectType.value ? (openBlock(), createBlock(_sfc_main$B, mergeProps({ key: 4 }, selectBindings.value, {
2144
2251
  "onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => emit("update:modelValue", $event)),
2145
2252
  onBlur: _cache[5] || (_cache[5] = ($event) => emit("blur", $event))
2146
- }), null, 16)) : isDateType.value ? (openBlock(), createBlock(_sfc_main$y, mergeProps({ key: 5 }, dateBindings.value, {
2253
+ }), null, 16)) : isDateType.value ? (openBlock(), createBlock(_sfc_main$A, mergeProps({ key: 5 }, dateBindings.value, {
2147
2254
  "onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => emit("update:modelValue", $event)),
2148
2255
  onBlur: _cache[7] || (_cache[7] = ($event) => emit("blur", $event))
2149
- }), null, 16)) : isTextLikeType.value ? (openBlock(), createBlock(_sfc_main$C, mergeProps({ key: 6 }, textInputBindings.value, {
2256
+ }), null, 16)) : isTextLikeType.value ? (openBlock(), createBlock(_sfc_main$E, mergeProps({ key: 6 }, textInputBindings.value, {
2150
2257
  "onUpdate:modelValue": _cache[8] || (_cache[8] = ($event) => emit("update:modelValue", $event)),
2151
2258
  onBlur: _cache[9] || (_cache[9] = ($event) => emit("blur", $event))
2152
- }), null, 16)) : isImageType.value ? (openBlock(), createBlock(_sfc_main$x, mergeProps({ key: 7 }, imageBindings.value, {
2259
+ }), null, 16)) : isImageType.value ? (openBlock(), createBlock(_sfc_main$z, mergeProps({ key: 7 }, imageBindings.value, {
2153
2260
  "onUpdate:modelValue": _cache[10] || (_cache[10] = ($event) => emit("update:modelValue", $event)),
2154
2261
  onBlur: _cache[11] || (_cache[11] = ($event) => emit("blur", $event))
2155
- }), null, 16)) : isCheckboxSingleType.value ? (openBlock(), createBlock(_sfc_main$D, mergeProps({ key: 8 }, checkboxSingleBindings.value, {
2262
+ }), null, 16)) : isCheckboxSingleType.value ? (openBlock(), createBlock(_sfc_main$F, mergeProps({ key: 8 }, checkboxSingleBindings.value, {
2156
2263
  "onUpdate:modelValue": _cache[12] || (_cache[12] = ($event) => emit("update:modelValue", $event)),
2157
2264
  onBlur: _cache[13] || (_cache[13] = ($event) => emit("blur", $event))
2158
- }), null, 16)) : isRadioSingleType.value ? (openBlock(), createBlock(_sfc_main$v, mergeProps({ key: 9 }, radioSingleBindings.value, {
2265
+ }), null, 16)) : isRadioSingleType.value ? (openBlock(), createBlock(_sfc_main$x, mergeProps({ key: 9 }, radioSingleBindings.value, {
2159
2266
  "onUpdate:modelValue": _cache[14] || (_cache[14] = ($event) => emit("update:modelValue", $event)),
2160
2267
  onBlur: _cache[15] || (_cache[15] = ($event) => emit("blur", $event))
2161
- }), null, 16)) : isNotationType.value ? (openBlock(), createBlock(_sfc_main$w, mergeProps({ key: 10 }, notationBindings.value, {
2268
+ }), null, 16)) : isToggleSingleType.value ? (openBlock(), createBlock(_sfc_main$w, mergeProps({ key: 10 }, toggleSingleBindings.value, {
2162
2269
  "onUpdate:modelValue": _cache[16] || (_cache[16] = ($event) => emit("update:modelValue", $event)),
2163
2270
  onBlur: _cache[17] || (_cache[17] = ($event) => emit("blur", $event))
2164
- }), null, 16)) : isCheckboxType.value ? (openBlock(), createBlock(_sfc_main$r, mergeProps({ key: 11 }, checkboxBindings.value, {
2271
+ }), null, 16)) : isNotationType.value ? (openBlock(), createBlock(_sfc_main$y, mergeProps({ key: 11 }, notationBindings.value, {
2165
2272
  "onUpdate:modelValue": _cache[18] || (_cache[18] = ($event) => emit("update:modelValue", $event)),
2166
2273
  onBlur: _cache[19] || (_cache[19] = ($event) => emit("blur", $event))
2167
- }), null, 16)) : isRadioType.value ? (openBlock(), createBlock(_sfc_main$u, mergeProps({ key: 12 }, radioBindings.value, {
2274
+ }), null, 16)) : isCheckboxType.value ? (openBlock(), createBlock(_sfc_main$s, mergeProps({ key: 12 }, checkboxBindings.value, {
2168
2275
  "onUpdate:modelValue": _cache[20] || (_cache[20] = ($event) => emit("update:modelValue", $event)),
2169
2276
  onBlur: _cache[21] || (_cache[21] = ($event) => emit("blur", $event))
2277
+ }), null, 16)) : isRadioType.value ? (openBlock(), createBlock(_sfc_main$v, mergeProps({ key: 13 }, radioBindings.value, {
2278
+ "onUpdate:modelValue": _cache[22] || (_cache[22] = ($event) => emit("update:modelValue", $event)),
2279
+ onBlur: _cache[23] || (_cache[23] = ($event) => emit("blur", $event))
2170
2280
  }), null, 16)) : isNoComponentType.value ? renderSlot(_ctx.$slots, "unsupported-type", {
2171
- key: 13,
2281
+ key: 14,
2172
2282
  type: __props.type,
2173
2283
  modelValue: __props.modelValue,
2174
2284
  updateValue,
2175
2285
  attrs: unref(attrs)
2176
2286
  }) : renderSlot(_ctx.$slots, "unsupported-type", {
2177
- key: 14,
2287
+ key: 15,
2178
2288
  type: __props.type,
2179
2289
  modelValue: __props.modelValue,
2180
2290
  updateValue,
2181
2291
  attrs: unref(attrs)
2182
2292
  }),
2183
- hasError.value ? (openBlock(), createElementBlock("div", _hoisted_3$7, [
2293
+ hasError.value ? (openBlock(), createElementBlock("div", _hoisted_3$8, [
2184
2294
  createVNode(unref(ExclamationCircleIcon), { class: "mr-1 h-4 w-4 flex-shrink-0" }),
2185
2295
  createElementVNode("span", null, toDisplayString(__props.errorMessage), 1)
2186
2296
  ])) : createCommentVNode("", true)
@@ -2188,8 +2298,8 @@ const _sfc_main$s = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
2188
2298
  };
2189
2299
  }
2190
2300
  });
2191
- const _hoisted_1$f = { class: "flex flex-wrap gap-3" };
2192
- const _sfc_main$r = {
2301
+ const _hoisted_1$g = { class: "flex flex-wrap gap-3" };
2302
+ const _sfc_main$s = {
2193
2303
  __name: "CheckboxMultipleInput",
2194
2304
  props: {
2195
2305
  modelValue: {
@@ -2230,9 +2340,9 @@ const _sfc_main$r = {
2230
2340
  emit("update:modelValue", nextSelection);
2231
2341
  };
2232
2342
  return (_ctx, _cache) => {
2233
- return openBlock(), createElementBlock("div", _hoisted_1$f, [
2343
+ return openBlock(), createElementBlock("div", _hoisted_1$g, [
2234
2344
  (openBlock(true), createElementBlock(Fragment, null, renderList(normalizedOptions.value, (option) => {
2235
- return openBlock(), createBlock(_sfc_main$s, {
2345
+ return openBlock(), createBlock(_sfc_main$t, {
2236
2346
  key: `checkbox-${option}`,
2237
2347
  type: "checkbox-input",
2238
2348
  name: __props.name,
@@ -2248,7 +2358,7 @@ const _sfc_main$r = {
2248
2358
  };
2249
2359
  }
2250
2360
  };
2251
- const _sfc_main$q = {
2361
+ const _sfc_main$r = {
2252
2362
  __name: "Modal",
2253
2363
  props: {
2254
2364
  show: {
@@ -2389,14 +2499,14 @@ const _sfc_main$q = {
2389
2499
  };
2390
2500
  }
2391
2501
  };
2392
- const _hoisted_1$e = { class: "bg-white px-4 pb-4 pt-5 dark:bg-neutral-950 sm:p-6 sm:pb-4" };
2393
- const _hoisted_2$a = { class: "sm:flex sm:items-start" };
2394
- const _hoisted_3$6 = { class: "mx-auto flex size-12 shrink-0 items-center justify-center rounded-full bg-red-100 dark:bg-red-950/60 sm:mx-0 sm:size-10" };
2395
- const _hoisted_4$5 = { class: "mt-3 text-center sm:mt-0 sm:ms-4 sm:text-start" };
2396
- const _hoisted_5$3 = { class: "text-lg font-medium text-neutral-950 dark:text-neutral-50" };
2397
- const _hoisted_6$3 = { class: "mt-4 text-sm text-neutral-600 dark:text-neutral-200" };
2398
- const _hoisted_7$3 = { class: "flex flex-col-reverse gap-4 border-t border-neutral-200 bg-neutral-50 px-6 py-4 text-end dark:border-neutral-800 dark:bg-neutral-900/60 lg:flex-row lg:justify-end lg:gap-0" };
2399
- const _sfc_main$p = {
2502
+ const _hoisted_1$f = { class: "bg-white px-4 pb-4 pt-5 dark:bg-neutral-950 sm:p-6 sm:pb-4" };
2503
+ const _hoisted_2$b = { class: "sm:flex sm:items-start" };
2504
+ const _hoisted_3$7 = { class: "mx-auto flex size-12 shrink-0 items-center justify-center rounded-full bg-red-100 dark:bg-red-950/60 sm:mx-0 sm:size-10" };
2505
+ const _hoisted_4$6 = { class: "mt-3 text-center sm:mt-0 sm:ms-4 sm:text-start" };
2506
+ const _hoisted_5$4 = { class: "text-lg font-medium text-neutral-950 dark:text-neutral-50" };
2507
+ const _hoisted_6$4 = { class: "mt-4 text-sm text-neutral-600 dark:text-neutral-200" };
2508
+ const _hoisted_7$4 = { class: "flex flex-col-reverse gap-4 border-t border-neutral-200 bg-neutral-50 px-6 py-4 text-end dark:border-neutral-800 dark:bg-neutral-900/60 lg:flex-row lg:justify-end lg:gap-0" };
2509
+ const _sfc_main$q = {
2400
2510
  __name: "ConfirmationModal",
2401
2511
  props: {
2402
2512
  show: {
@@ -2424,7 +2534,7 @@ const _sfc_main$p = {
2424
2534
  emit("close");
2425
2535
  };
2426
2536
  return (_ctx, _cache) => {
2427
- return openBlock(), createBlock(_sfc_main$q, {
2537
+ return openBlock(), createBlock(_sfc_main$r, {
2428
2538
  show: __props.show,
2429
2539
  "max-width": __props.maxWidth,
2430
2540
  closeable: __props.closeable,
@@ -2432,22 +2542,22 @@ const _sfc_main$p = {
2432
2542
  onClose: close
2433
2543
  }, {
2434
2544
  default: withCtx(() => [
2435
- createElementVNode("div", _hoisted_1$e, [
2436
- createElementVNode("div", _hoisted_2$a, [
2437
- createElementVNode("div", _hoisted_3$6, [
2545
+ createElementVNode("div", _hoisted_1$f, [
2546
+ createElementVNode("div", _hoisted_2$b, [
2547
+ createElementVNode("div", _hoisted_3$7, [
2438
2548
  createVNode(unref(ExclamationTriangleIcon), { class: "size-6 text-red-600 dark:text-neutral-100" })
2439
2549
  ]),
2440
- createElementVNode("div", _hoisted_4$5, [
2441
- createElementVNode("h3", _hoisted_5$3, [
2550
+ createElementVNode("div", _hoisted_4$6, [
2551
+ createElementVNode("h3", _hoisted_5$4, [
2442
2552
  renderSlot(_ctx.$slots, "title")
2443
2553
  ]),
2444
- createElementVNode("div", _hoisted_6$3, [
2554
+ createElementVNode("div", _hoisted_6$4, [
2445
2555
  renderSlot(_ctx.$slots, "content")
2446
2556
  ])
2447
2557
  ])
2448
2558
  ])
2449
2559
  ]),
2450
- createElementVNode("div", _hoisted_7$3, [
2560
+ createElementVNode("div", _hoisted_7$4, [
2451
2561
  renderSlot(_ctx.$slots, "footer")
2452
2562
  ])
2453
2563
  ]),
@@ -2456,11 +2566,11 @@ const _sfc_main$p = {
2456
2566
  };
2457
2567
  }
2458
2568
  };
2459
- const _hoisted_1$d = { class: "px-6 py-4" };
2460
- const _hoisted_2$9 = { class: "text-lg font-medium text-neutral-950 dark:text-neutral-50" };
2461
- const _hoisted_3$5 = { class: "mt-4 text-sm text-neutral-600 dark:text-neutral-200" };
2462
- const _hoisted_4$4 = { class: "flex flex-row justify-end border-t border-neutral-200 bg-neutral-50 px-6 py-4 text-end dark:border-neutral-800 dark:bg-neutral-900/60" };
2463
- const _sfc_main$o = {
2569
+ const _hoisted_1$e = { class: "px-6 py-4" };
2570
+ const _hoisted_2$a = { class: "text-lg font-medium text-neutral-950 dark:text-neutral-50" };
2571
+ const _hoisted_3$6 = { class: "mt-4 text-sm text-neutral-600 dark:text-neutral-200" };
2572
+ const _hoisted_4$5 = { class: "flex flex-row justify-end border-t border-neutral-200 bg-neutral-50 px-6 py-4 text-end dark:border-neutral-800 dark:bg-neutral-900/60" };
2573
+ const _sfc_main$p = {
2464
2574
  __name: "DialogModal",
2465
2575
  props: {
2466
2576
  show: {
@@ -2483,22 +2593,22 @@ const _sfc_main$o = {
2483
2593
  emit("close");
2484
2594
  };
2485
2595
  return (_ctx, _cache) => {
2486
- return openBlock(), createBlock(_sfc_main$q, {
2596
+ return openBlock(), createBlock(_sfc_main$r, {
2487
2597
  show: __props.show,
2488
2598
  "max-width": __props.maxWidth,
2489
2599
  closeable: __props.closeable,
2490
2600
  onClose: close
2491
2601
  }, {
2492
2602
  default: withCtx(() => [
2493
- createElementVNode("div", _hoisted_1$d, [
2494
- createElementVNode("div", _hoisted_2$9, [
2603
+ createElementVNode("div", _hoisted_1$e, [
2604
+ createElementVNode("div", _hoisted_2$a, [
2495
2605
  renderSlot(_ctx.$slots, "title")
2496
2606
  ]),
2497
- createElementVNode("div", _hoisted_3$5, [
2607
+ createElementVNode("div", _hoisted_3$6, [
2498
2608
  renderSlot(_ctx.$slots, "content")
2499
2609
  ])
2500
2610
  ]),
2501
- createElementVNode("div", _hoisted_4$4, [
2611
+ createElementVNode("div", _hoisted_4$5, [
2502
2612
  renderSlot(_ctx.$slots, "footer")
2503
2613
  ])
2504
2614
  ]),
@@ -2507,8 +2617,8 @@ const _sfc_main$o = {
2507
2617
  };
2508
2618
  }
2509
2619
  };
2510
- const _hoisted_1$c = { class: "relative inline-block w-fit" };
2511
- const _sfc_main$n = {
2620
+ const _hoisted_1$d = { class: "relative inline-block w-fit" };
2621
+ const _sfc_main$o = {
2512
2622
  __name: "Dropdown",
2513
2623
  props: {
2514
2624
  align: {
@@ -2649,7 +2759,7 @@ const _sfc_main$n = {
2649
2759
  window.removeEventListener("scroll", handleViewportChange, true);
2650
2760
  });
2651
2761
  return (_ctx, _cache) => {
2652
- return openBlock(), createElementBlock("div", _hoisted_1$c, [
2762
+ return openBlock(), createElementBlock("div", _hoisted_1$d, [
2653
2763
  createElementVNode("div", {
2654
2764
  ref_key: "triggerRef",
2655
2765
  ref: triggerRef,
@@ -2689,13 +2799,13 @@ const _sfc_main$n = {
2689
2799
  };
2690
2800
  }
2691
2801
  };
2692
- const _hoisted_1$b = {
2802
+ const _hoisted_1$c = {
2693
2803
  key: 0,
2694
2804
  type: "submit",
2695
2805
  class: "block w-full px-4 py-2 text-start text-sm leading-5 text-neutral-700 transition duration-150 ease-in-out hover:bg-neutral-100 focus:bg-neutral-100 focus:outline-none dark:text-neutral-100 dark:hover:bg-neutral-900 dark:focus:bg-neutral-900"
2696
2806
  };
2697
- const _hoisted_2$8 = ["href"];
2698
- const _sfc_main$m = {
2807
+ const _hoisted_2$9 = ["href"];
2808
+ const _sfc_main$n = {
2699
2809
  __name: "DropdownLink",
2700
2810
  props: {
2701
2811
  href: String,
@@ -2704,7 +2814,7 @@ const _sfc_main$m = {
2704
2814
  setup(__props) {
2705
2815
  return (_ctx, _cache) => {
2706
2816
  return openBlock(), createElementBlock("div", null, [
2707
- __props.as == "button" ? (openBlock(), createElementBlock("button", _hoisted_1$b, [
2817
+ __props.as == "button" ? (openBlock(), createElementBlock("button", _hoisted_1$c, [
2708
2818
  renderSlot(_ctx.$slots, "default")
2709
2819
  ])) : __props.as == "a" ? (openBlock(), createElementBlock("a", {
2710
2820
  key: 1,
@@ -2712,7 +2822,7 @@ const _sfc_main$m = {
2712
2822
  class: "block px-4 py-2 text-sm leading-5 text-neutral-700 transition duration-150 ease-in-out hover:bg-neutral-100 focus:bg-neutral-100 focus:outline-none dark:text-neutral-100 dark:hover:bg-neutral-900 dark:focus:bg-neutral-900"
2713
2823
  }, [
2714
2824
  renderSlot(_ctx.$slots, "default")
2715
- ], 8, _hoisted_2$8)) : (openBlock(), createBlock(unref(Link), {
2825
+ ], 8, _hoisted_2$9)) : (openBlock(), createBlock(unref(Link), {
2716
2826
  key: 2,
2717
2827
  href: __props.href,
2718
2828
  class: "block px-4 py-2 text-sm leading-5 text-neutral-700 transition duration-150 ease-in-out hover:bg-neutral-100 focus:bg-neutral-100 focus:outline-none dark:text-neutral-100 dark:hover:bg-neutral-900 dark:focus:bg-neutral-900"
@@ -2726,20 +2836,20 @@ const _sfc_main$m = {
2726
2836
  };
2727
2837
  }
2728
2838
  };
2729
- const _hoisted_1$a = { class: "md:grid md:grid-cols-3 md:gap-6" };
2730
- const _hoisted_2$7 = { class: "mt-5 md:col-span-2 md:mt-0" };
2731
- const _hoisted_3$4 = { class: "grid grid-cols-6 gap-6" };
2732
- const _hoisted_4$3 = {
2839
+ const _hoisted_1$b = { class: "md:grid md:grid-cols-3 md:gap-6" };
2840
+ const _hoisted_2$8 = { class: "mt-5 md:col-span-2 md:mt-0" };
2841
+ const _hoisted_3$5 = { class: "grid grid-cols-6 gap-6" };
2842
+ const _hoisted_4$4 = {
2733
2843
  key: 0,
2734
2844
  class: "flex items-center justify-start rounded-b-lg border border-t-0 border-neutral-200 bg-neutral-50 px-3 pb-6 text-end dark:border-neutral-800 dark:bg-neutral-900/60 sm:rounded-bl-md sm:rounded-br-md"
2735
2845
  };
2736
- const _sfc_main$l = {
2846
+ const _sfc_main$m = {
2737
2847
  __name: "FormSection",
2738
2848
  emits: ["submitted"],
2739
2849
  setup(__props) {
2740
2850
  const hasActions = computed(() => !!useSlots().actions);
2741
2851
  return (_ctx, _cache) => {
2742
- return openBlock(), createElementBlock("div", _hoisted_1$a, [
2852
+ return openBlock(), createElementBlock("div", _hoisted_1$b, [
2743
2853
  createVNode(SectionTitle, null, {
2744
2854
  title: withCtx(() => [
2745
2855
  renderSlot(_ctx.$slots, "title")
@@ -2749,18 +2859,18 @@ const _sfc_main$l = {
2749
2859
  ]),
2750
2860
  _: 3
2751
2861
  }),
2752
- createElementVNode("div", _hoisted_2$7, [
2862
+ createElementVNode("div", _hoisted_2$8, [
2753
2863
  createElementVNode("form", {
2754
2864
  onSubmit: _cache[0] || (_cache[0] = withModifiers(($event) => _ctx.$emit("submitted"), ["prevent"]))
2755
2865
  }, [
2756
2866
  createElementVNode("div", {
2757
2867
  class: normalizeClass(["rounded-lg border border-neutral-200 bg-white px-4 py-5 shadow-sm dark:border-neutral-800 dark:bg-neutral-950 sm:p-6", hasActions.value ? "sm:rounded-tl-md sm:rounded-tr-md" : "sm:rounded-md"])
2758
2868
  }, [
2759
- createElementVNode("div", _hoisted_3$4, [
2869
+ createElementVNode("div", _hoisted_3$5, [
2760
2870
  renderSlot(_ctx.$slots, "form")
2761
2871
  ])
2762
2872
  ], 2),
2763
- hasActions.value ? (openBlock(), createElementBlock("div", _hoisted_4$3, [
2873
+ hasActions.value ? (openBlock(), createElementBlock("div", _hoisted_4$4, [
2764
2874
  renderSlot(_ctx.$slots, "actions")
2765
2875
  ])) : createCommentVNode("", true)
2766
2876
  ], 32)
@@ -2769,8 +2879,8 @@ const _sfc_main$l = {
2769
2879
  };
2770
2880
  }
2771
2881
  };
2772
- const _hoisted_1$9 = { class: "text-sm text-red-600 dark:text-neutral-100" };
2773
- const _sfc_main$k = {
2882
+ const _hoisted_1$a = { class: "text-sm text-red-600 dark:text-neutral-100" };
2883
+ const _sfc_main$l = {
2774
2884
  __name: "InputError",
2775
2885
  props: {
2776
2886
  message: String
@@ -2778,33 +2888,33 @@ const _sfc_main$k = {
2778
2888
  setup(__props) {
2779
2889
  return (_ctx, _cache) => {
2780
2890
  return withDirectives((openBlock(), createElementBlock("div", null, [
2781
- createElementVNode("p", _hoisted_1$9, toDisplayString(__props.message), 1)
2891
+ createElementVNode("p", _hoisted_1$a, toDisplayString(__props.message), 1)
2782
2892
  ], 512)), [
2783
2893
  [vShow, __props.message]
2784
2894
  ]);
2785
2895
  };
2786
2896
  }
2787
2897
  };
2788
- const _hoisted_1$8 = { class: "block text-sm font-medium text-neutral-700 dark:text-neutral-100" };
2789
- const _hoisted_2$6 = { key: 0 };
2790
- const _hoisted_3$3 = { key: 1 };
2791
- const _sfc_main$j = {
2898
+ const _hoisted_1$9 = { class: "block text-sm font-medium text-neutral-700 dark:text-neutral-100" };
2899
+ const _hoisted_2$7 = { key: 0 };
2900
+ const _hoisted_3$4 = { key: 1 };
2901
+ const _sfc_main$k = {
2792
2902
  __name: "InputLabel",
2793
2903
  props: {
2794
2904
  value: String
2795
2905
  },
2796
2906
  setup(__props) {
2797
2907
  return (_ctx, _cache) => {
2798
- return openBlock(), createElementBlock("label", _hoisted_1$8, [
2799
- __props.value ? (openBlock(), createElementBlock("span", _hoisted_2$6, toDisplayString(__props.value), 1)) : (openBlock(), createElementBlock("span", _hoisted_3$3, [
2908
+ return openBlock(), createElementBlock("label", _hoisted_1$9, [
2909
+ __props.value ? (openBlock(), createElementBlock("span", _hoisted_2$7, toDisplayString(__props.value), 1)) : (openBlock(), createElementBlock("span", _hoisted_3$4, [
2800
2910
  renderSlot(_ctx.$slots, "default")
2801
2911
  ]))
2802
2912
  ]);
2803
2913
  };
2804
2914
  }
2805
2915
  };
2806
- const _hoisted_1$7 = ["href", "title", "target", "rel"];
2807
- const _sfc_main$i = /* @__PURE__ */ Object.assign({
2916
+ const _hoisted_1$8 = ["href", "title", "target", "rel"];
2917
+ const _sfc_main$j = /* @__PURE__ */ Object.assign({
2808
2918
  inheritAttrs: false
2809
2919
  }, {
2810
2920
  __name: "LinkButton",
@@ -2873,19 +2983,19 @@ const _sfc_main$i = /* @__PURE__ */ Object.assign({
2873
2983
  class: linkClasses.value
2874
2984
  }), [
2875
2985
  renderSlot(_ctx.$slots, "default")
2876
- ], 16, _hoisted_1$7));
2986
+ ], 16, _hoisted_1$8));
2877
2987
  };
2878
2988
  }
2879
2989
  });
2880
- const _hoisted_1$6 = { class: "hidden sm:block" };
2881
- const _hoisted_2$5 = { class: "py-8" };
2882
- const _sfc_main$h = {
2990
+ const _hoisted_1$7 = { class: "hidden sm:block" };
2991
+ const _hoisted_2$6 = { class: "py-8" };
2992
+ const _sfc_main$i = {
2883
2993
  __name: "SectionBorder",
2884
2994
  setup(__props) {
2885
2995
  return (_ctx, _cache) => {
2886
- return openBlock(), createElementBlock("div", _hoisted_1$6, [
2887
- createElementVNode("div", _hoisted_2$5, [
2888
- createVNode(_sfc_main$L)
2996
+ return openBlock(), createElementBlock("div", _hoisted_1$7, [
2997
+ createElementVNode("div", _hoisted_2$6, [
2998
+ createVNode(_sfc_main$N)
2889
2999
  ])
2890
3000
  ]);
2891
3001
  };
@@ -2934,12 +3044,12 @@ function provideSidebarContext(defaultOpen = true) {
2934
3044
  function useSidebar() {
2935
3045
  return inject(SIDEBAR_CONTEXT_KEY, fallbackContext);
2936
3046
  }
2937
- const _hoisted_1$5 = ["data-state", "data-collapsible", "data-variant", "data-side"];
2938
- const _hoisted_2$4 = {
3047
+ const _hoisted_1$6 = ["data-state", "data-collapsible", "data-variant", "data-side"];
3048
+ const _hoisted_2$5 = {
2939
3049
  "data-sidebar": "sidebar",
2940
3050
  class: "bg-sidebar text-sidebar-foreground flex h-full w-full flex-col group-data-[variant=floating]:border-sidebar-border group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:shadow-sm"
2941
3051
  };
2942
- const _sfc_main$g = /* @__PURE__ */ defineComponent({
3052
+ const _sfc_main$h = /* @__PURE__ */ defineComponent({
2943
3053
  ...{ inheritAttrs: false },
2944
3054
  __name: "Sidebar",
2945
3055
  props: {
@@ -2987,15 +3097,15 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
2987
3097
  props.class
2988
3098
  ]
2989
3099
  }, _ctx.$attrs), [
2990
- createElementVNode("div", _hoisted_2$4, [
3100
+ createElementVNode("div", _hoisted_2$5, [
2991
3101
  renderSlot(_ctx.$slots, "default")
2992
3102
  ])
2993
3103
  ], 16)
2994
- ], 8, _hoisted_1$5));
3104
+ ], 8, _hoisted_1$6));
2995
3105
  };
2996
3106
  }
2997
3107
  });
2998
- const _sfc_main$f = /* @__PURE__ */ defineComponent({
3108
+ const _sfc_main$g = /* @__PURE__ */ defineComponent({
2999
3109
  __name: "SidebarContent",
3000
3110
  props: {
3001
3111
  class: { type: [Boolean, null, String, Object, Array] }
@@ -3013,7 +3123,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
3013
3123
  };
3014
3124
  }
3015
3125
  });
3016
- const _sfc_main$e = /* @__PURE__ */ defineComponent({
3126
+ const _sfc_main$f = /* @__PURE__ */ defineComponent({
3017
3127
  __name: "SidebarFooter",
3018
3128
  props: {
3019
3129
  class: { type: [Boolean, null, String, Object, Array] }
@@ -3031,7 +3141,7 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
3031
3141
  };
3032
3142
  }
3033
3143
  });
3034
- const _sfc_main$d = /* @__PURE__ */ defineComponent({
3144
+ const _sfc_main$e = /* @__PURE__ */ defineComponent({
3035
3145
  __name: "SidebarGroup",
3036
3146
  props: {
3037
3147
  class: { type: [Boolean, null, String, Object, Array] }
@@ -3049,7 +3159,7 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
3049
3159
  };
3050
3160
  }
3051
3161
  });
3052
- const _sfc_main$c = /* @__PURE__ */ defineComponent({
3162
+ const _sfc_main$d = /* @__PURE__ */ defineComponent({
3053
3163
  __name: "SidebarGroupContent",
3054
3164
  props: {
3055
3165
  class: { type: [Boolean, null, String, Object, Array] }
@@ -3067,7 +3177,7 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
3067
3177
  };
3068
3178
  }
3069
3179
  });
3070
- const _sfc_main$b = /* @__PURE__ */ defineComponent({
3180
+ const _sfc_main$c = /* @__PURE__ */ defineComponent({
3071
3181
  ...{ inheritAttrs: false },
3072
3182
  __name: "SidebarGroupLabel",
3073
3183
  props: {
@@ -3113,7 +3223,7 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
3113
3223
  };
3114
3224
  }
3115
3225
  });
3116
- const _sfc_main$a = /* @__PURE__ */ defineComponent({
3226
+ const _sfc_main$b = /* @__PURE__ */ defineComponent({
3117
3227
  __name: "SidebarHeader",
3118
3228
  props: {
3119
3229
  class: { type: [Boolean, null, String, Object, Array] }
@@ -3131,7 +3241,7 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
3131
3241
  };
3132
3242
  }
3133
3243
  });
3134
- const _sfc_main$9 = /* @__PURE__ */ defineComponent({
3244
+ const _sfc_main$a = /* @__PURE__ */ defineComponent({
3135
3245
  __name: "SidebarInset",
3136
3246
  props: {
3137
3247
  class: { type: [Boolean, null, String, Object, Array] }
@@ -3152,7 +3262,7 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
3152
3262
  };
3153
3263
  }
3154
3264
  });
3155
- const _sfc_main$8 = /* @__PURE__ */ defineComponent({
3265
+ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
3156
3266
  __name: "SidebarMenu",
3157
3267
  props: {
3158
3268
  class: { type: [Boolean, null, String, Object, Array] }
@@ -3170,8 +3280,8 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
3170
3280
  };
3171
3281
  }
3172
3282
  });
3173
- const _hoisted_1$4 = ["href", "target", "rel"];
3174
- const _sfc_main$7 = /* @__PURE__ */ defineComponent({
3283
+ const _hoisted_1$5 = ["href", "target", "rel"];
3284
+ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
3175
3285
  ...{ inheritAttrs: false },
3176
3286
  __name: "SidebarMenuButton",
3177
3287
  props: {
@@ -3244,7 +3354,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
3244
3354
  renderSlot(_ctx.$slots, "default", {}, () => [
3245
3355
  createTextVNode(toDisplayString(__props.title), 1)
3246
3356
  ])
3247
- ], 16, _hoisted_1$4)) : (openBlock(), createElementBlock("button", mergeProps({
3357
+ ], 16, _hoisted_1$5)) : (openBlock(), createElementBlock("button", mergeProps({
3248
3358
  key: 3,
3249
3359
  type: "button"
3250
3360
  }, sharedAttrs.value), [
@@ -3256,7 +3366,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
3256
3366
  };
3257
3367
  }
3258
3368
  });
3259
- const _sfc_main$6 = /* @__PURE__ */ defineComponent({
3369
+ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
3260
3370
  __name: "SidebarMenuItem",
3261
3371
  props: {
3262
3372
  class: { type: [Boolean, null, String, Object, Array] }
@@ -3274,7 +3384,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
3274
3384
  };
3275
3385
  }
3276
3386
  });
3277
- const _sfc_main$5 = /* @__PURE__ */ defineComponent({
3387
+ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
3278
3388
  ...{ inheritAttrs: false },
3279
3389
  __name: "SidebarProvider",
3280
3390
  props: {
@@ -3385,19 +3495,24 @@ const createLucideIcon = (iconName, iconNode) => (props, { slots, attrs }) => h(
3385
3495
  },
3386
3496
  slots
3387
3497
  );
3388
- const __iconNode$1 = [
3498
+ const __iconNode$2 = [
3389
3499
  ["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", key: "afitv7" }],
3390
3500
  ["path", { d: "M9 3v18", key: "fh3hqa" }],
3391
3501
  ["path", { d: "m16 15-3-3 3-3", key: "14y99z" }]
3392
3502
  ];
3393
- const PanelLeftClose = createLucideIcon("panel-left-close", __iconNode$1);
3394
- const __iconNode = [
3503
+ const PanelLeftClose = createLucideIcon("panel-left-close", __iconNode$2);
3504
+ const __iconNode$1 = [
3395
3505
  ["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", key: "afitv7" }],
3396
3506
  ["path", { d: "M9 3v18", key: "fh3hqa" }],
3397
3507
  ["path", { d: "m14 9 3 3-3 3", key: "8010ee" }]
3398
3508
  ];
3399
- const PanelLeftOpen = createLucideIcon("panel-left-open", __iconNode);
3400
- const _sfc_main$4 = /* @__PURE__ */ defineComponent({
3509
+ const PanelLeftOpen = createLucideIcon("panel-left-open", __iconNode$1);
3510
+ const __iconNode = [
3511
+ ["path", { d: "m21 21-4.34-4.34", key: "14j7rj" }],
3512
+ ["circle", { cx: "11", cy: "11", r: "8", key: "4ej97u" }]
3513
+ ];
3514
+ const Search = createLucideIcon("search", __iconNode);
3515
+ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
3401
3516
  __name: "SidebarTrigger",
3402
3517
  props: {
3403
3518
  class: { type: [Boolean, null, String, Object, Array] }
@@ -3406,7 +3521,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
3406
3521
  const props = __props;
3407
3522
  const { state, toggleSidebar } = useSidebar();
3408
3523
  return (_ctx, _cache) => {
3409
- return openBlock(), createBlock(_sfc_main$F, {
3524
+ return openBlock(), createBlock(_sfc_main$H, {
3410
3525
  "data-sidebar": "trigger",
3411
3526
  "data-slot": "sidebar-trigger",
3412
3527
  variant: "ghost",
@@ -3423,14 +3538,14 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
3423
3538
  };
3424
3539
  }
3425
3540
  });
3426
- const _hoisted_1$3 = { class: "rounded-xl border border-neutral-200 bg-white/80 px-6 py-4 backdrop-blur-sm dark:border-neutral-800 dark:bg-neutral-950/80" };
3427
- const _hoisted_2$3 = { class: "flex flex-col items-start justify-between gap-4 sm:flex-row sm:items-center" };
3428
- const _hoisted_3$2 = { class: "flex items-center gap-3" };
3429
- const _hoisted_4$2 = { class: "text-sm font-medium text-neutral-700 dark:text-neutral-100" };
3430
- const _hoisted_5$2 = { class: "flex flex-wrap items-center gap-2" };
3431
- const _hoisted_6$2 = ["onClick"];
3432
- const _hoisted_7$2 = { class: "text-xs text-neutral-500 dark:text-neutral-200" };
3433
- const _sfc_main$3 = {
3541
+ const _hoisted_1$4 = { class: "rounded-xl border border-neutral-200 bg-white/80 px-6 py-4 backdrop-blur-sm dark:border-neutral-800 dark:bg-neutral-950/80" };
3542
+ const _hoisted_2$4 = { class: "flex flex-col items-start justify-between gap-4 sm:flex-row sm:items-center" };
3543
+ const _hoisted_3$3 = { class: "flex items-center gap-3" };
3544
+ const _hoisted_4$3 = { class: "text-sm font-medium text-neutral-700 dark:text-neutral-100" };
3545
+ const _hoisted_5$3 = { class: "flex flex-wrap items-center gap-2" };
3546
+ const _hoisted_6$3 = ["onClick"];
3547
+ const _hoisted_7$3 = { class: "text-xs text-neutral-500 dark:text-neutral-200" };
3548
+ const _sfc_main$4 = {
3434
3549
  __name: "SortControls",
3435
3550
  props: {
3436
3551
  fields: {
@@ -3471,11 +3586,11 @@ const _sfc_main$3 = {
3471
3586
  emit("sort", fieldKey);
3472
3587
  };
3473
3588
  return (_ctx, _cache) => {
3474
- return openBlock(), createElementBlock("div", _hoisted_1$3, [
3475
- createElementVNode("div", _hoisted_2$3, [
3476
- createElementVNode("div", _hoisted_3$2, [
3477
- createElementVNode("label", _hoisted_4$2, toDisplayString(__props.sortByLabel) + ":", 1),
3478
- createElementVNode("div", _hoisted_5$2, [
3589
+ return openBlock(), createElementBlock("div", _hoisted_1$4, [
3590
+ createElementVNode("div", _hoisted_2$4, [
3591
+ createElementVNode("div", _hoisted_3$3, [
3592
+ createElementVNode("label", _hoisted_4$3, toDisplayString(__props.sortByLabel) + ":", 1),
3593
+ createElementVNode("div", _hoisted_5$3, [
3479
3594
  (openBlock(true), createElementBlock(Fragment, null, renderList(__props.fields, (field) => {
3480
3595
  return openBlock(), createElementBlock("button", {
3481
3596
  key: field.key,
@@ -3494,19 +3609,19 @@ const _sfc_main$3 = {
3494
3609
  key: 1,
3495
3610
  class: "w-3 h-3 ml-1 inline"
3496
3611
  })) : createCommentVNode("", true)
3497
- ], 10, _hoisted_6$2);
3612
+ ], 10, _hoisted_6$3);
3498
3613
  }), 128))
3499
3614
  ])
3500
3615
  ]),
3501
- createElementVNode("div", _hoisted_7$2, toDisplayString(__props.count) + " " + toDisplayString(__props.countLabel), 1)
3616
+ createElementVNode("div", _hoisted_7$3, toDisplayString(__props.count) + " " + toDisplayString(__props.countLabel), 1)
3502
3617
  ])
3503
3618
  ]);
3504
3619
  };
3505
3620
  }
3506
3621
  };
3507
- const _hoisted_1$2 = { class: "flex items-center space-x-1" };
3508
- const _hoisted_2$2 = { class: "flex flex-col" };
3509
- const _sfc_main$2 = {
3622
+ const _hoisted_1$3 = { class: "flex items-center space-x-1" };
3623
+ const _hoisted_2$3 = { class: "flex flex-col" };
3624
+ const _sfc_main$3 = {
3510
3625
  __name: "ThSortable",
3511
3626
  props: {
3512
3627
  field: {
@@ -3538,11 +3653,11 @@ const _sfc_main$2 = {
3538
3653
  class: "cursor-pointer px-6 py-3 text-left text-xs font-medium uppercase tracking-wider text-neutral-500 transition-colors duration-150 hover:bg-neutral-100 dark:text-neutral-200 dark:hover:bg-neutral-900",
3539
3654
  onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("sort", __props.field))
3540
3655
  }, [
3541
- createElementVNode("div", _hoisted_1$2, [
3656
+ createElementVNode("div", _hoisted_1$3, [
3542
3657
  createElementVNode("span", null, [
3543
3658
  renderSlot(_ctx.$slots, "default")
3544
3659
  ]),
3545
- createElementVNode("div", _hoisted_2$2, [
3660
+ createElementVNode("div", _hoisted_2$3, [
3546
3661
  isCurrentSort.value && __props.currentDirection === "asc" ? (openBlock(), createBlock(unref(ChevronUpIcon), {
3547
3662
  key: 0,
3548
3663
  class: normalizeClass([sortIconClass.value, "w-3 h-3"])
@@ -3557,35 +3672,151 @@ const _sfc_main$2 = {
3557
3672
  };
3558
3673
  }
3559
3674
  };
3560
- const _hoisted_1$1 = { class: "min-w-full divide-y divide-neutral-200 dark:divide-neutral-800" };
3561
- const _hoisted_2$1 = { class: "bg-neutral-50/80 dark:bg-neutral-900/80" };
3562
- const _hoisted_3$1 = {
3675
+ const _hoisted_1$2 = { class: "flex flex-col lg:items-center items-start justify-between gap-4 lg:flex-row" };
3676
+ const _hoisted_2$2 = { class: "flex w-full lg:max-w-md" };
3677
+ const _hoisted_3$2 = { class: "relative w-full" };
3678
+ const _hoisted_4$2 = { class: "pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3" };
3679
+ const _hoisted_5$2 = ["placeholder"];
3680
+ const _hoisted_6$2 = {
3681
+ key: 0,
3682
+ class: "flex sm:flex-row flex-col items-start gap-3 sm:items-center lg:w-auto"
3683
+ };
3684
+ const _hoisted_7$2 = {
3685
+ key: 0,
3686
+ class: "flex items-center"
3687
+ };
3688
+ const _hoisted_8$2 = {
3689
+ key: 1,
3690
+ class: "flex items-center text-xs text-neutral-500 dark:text-neutral-400 sm:w-auto sm:text-sm lg:w-auto"
3691
+ };
3692
+ const _hoisted_9$2 = {
3693
+ key: 0,
3694
+ class: "ml-2"
3695
+ };
3696
+ const _hoisted_10$2 = { class: "font-medium text-neutral-700 dark:text-neutral-200" };
3697
+ const _sfc_main$2 = {
3698
+ __name: "TableSearch",
3699
+ props: {
3700
+ modelValue: {
3701
+ type: String,
3702
+ default: ""
3703
+ },
3704
+ placeholder: {
3705
+ type: String,
3706
+ default: "Search..."
3707
+ },
3708
+ count: {
3709
+ type: Number,
3710
+ default: null
3711
+ },
3712
+ countLabel: {
3713
+ type: String,
3714
+ default: "results"
3715
+ },
3716
+ queryLabel: {
3717
+ type: String,
3718
+ default: "for"
3719
+ },
3720
+ showDeleted: {
3721
+ type: Boolean,
3722
+ default: false
3723
+ },
3724
+ showDeletedToggle: {
3725
+ type: Boolean,
3726
+ default: false
3727
+ },
3728
+ showDeletedLabel: {
3729
+ type: String,
3730
+ default: "Show deleted"
3731
+ },
3732
+ cardClass: {
3733
+ type: String,
3734
+ default: "rounded-xl border border-neutral-200 bg-white/90 px-6 py-4 shadow-sm dark:border-neutral-800 dark:bg-neutral-950/90"
3735
+ }
3736
+ },
3737
+ emits: ["update:modelValue", "update:showDeleted"],
3738
+ setup(__props, { emit: __emit }) {
3739
+ const props = __props;
3740
+ const emit = __emit;
3741
+ const model = computed({
3742
+ get: () => props.modelValue,
3743
+ set: (value) => emit("update:modelValue", value)
3744
+ });
3745
+ const showDeletedModel = computed({
3746
+ get: () => props.showDeleted,
3747
+ set: (value) => emit("update:showDeleted", value)
3748
+ });
3749
+ return (_ctx, _cache) => {
3750
+ return openBlock(), createElementBlock("div", {
3751
+ class: normalizeClass(__props.cardClass)
3752
+ }, [
3753
+ createElementVNode("div", _hoisted_1$2, [
3754
+ createElementVNode("div", _hoisted_2$2, [
3755
+ createElementVNode("div", _hoisted_3$2, [
3756
+ createElementVNode("div", _hoisted_4$2, [
3757
+ createVNode(unref(Search), { class: "h-5 w-5 text-neutral-400 dark:text-neutral-500" })
3758
+ ]),
3759
+ withDirectives(createElementVNode("input", {
3760
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => model.value = $event),
3761
+ type: "text",
3762
+ placeholder: __props.placeholder,
3763
+ class: "block w-full rounded-lg border border-neutral-300 bg-white py-2 pr-3 pl-10 text-sm text-neutral-900 placeholder:text-neutral-500 transition-all duration-200 focus:border-neutral-500 focus:outline-none dark:border-neutral-700 dark:bg-neutral-900 dark:text-neutral-100 dark:placeholder:text-neutral-500 dark:focus:border-neutral-500"
3764
+ }, null, 8, _hoisted_5$2), [
3765
+ [vModelText, model.value]
3766
+ ])
3767
+ ])
3768
+ ]),
3769
+ __props.showDeletedToggle || __props.count !== null ? (openBlock(), createElementBlock("div", _hoisted_6$2, [
3770
+ __props.showDeletedToggle ? (openBlock(), createElementBlock("div", _hoisted_7$2, [
3771
+ createVNode(_sfc_main$w, {
3772
+ modelValue: showDeletedModel.value,
3773
+ "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => showDeletedModel.value = $event),
3774
+ label: __props.showDeletedLabel
3775
+ }, null, 8, ["modelValue", "label"])
3776
+ ])) : createCommentVNode("", true),
3777
+ __props.count !== null ? (openBlock(), createElementBlock("div", _hoisted_8$2, [
3778
+ createElementVNode("span", null, toDisplayString(__props.count) + " " + toDisplayString(__props.countLabel), 1),
3779
+ model.value ? (openBlock(), createElementBlock("span", _hoisted_9$2, [
3780
+ createTextVNode(toDisplayString(__props.queryLabel) + " ", 1),
3781
+ createElementVNode("span", _hoisted_10$2, ' "' + toDisplayString(model.value) + '" ', 1)
3782
+ ])) : createCommentVNode("", true)
3783
+ ])) : createCommentVNode("", true)
3784
+ ])) : createCommentVNode("", true)
3785
+ ])
3786
+ ], 2);
3787
+ };
3788
+ }
3789
+ };
3790
+ const _hoisted_1$1 = { class: "space-y-6" };
3791
+ const _hoisted_2$1 = { class: "min-w-full divide-y divide-neutral-200 dark:divide-neutral-800" };
3792
+ const _hoisted_3$1 = { class: "bg-neutral-50/80 dark:bg-neutral-900/80" };
3793
+ const _hoisted_4$1 = {
3563
3794
  key: 0,
3564
3795
  class: "px-6 py-3 text-right text-[11px] font-semibold tracking-[0.12em] text-neutral-600 uppercase dark:text-neutral-200"
3565
3796
  };
3566
- const _hoisted_4$1 = { class: "divide-y divide-neutral-200 bg-white dark:divide-neutral-800 dark:bg-neutral-950" };
3567
- const _hoisted_5$1 = {
3797
+ const _hoisted_5$1 = { class: "divide-y divide-neutral-200 bg-white dark:divide-neutral-800 dark:bg-neutral-950" };
3798
+ const _hoisted_6$1 = {
3568
3799
  key: 0,
3569
3800
  class: "flex items-center"
3570
3801
  };
3571
- const _hoisted_6$1 = ["title"];
3572
- const _hoisted_7$1 = {
3802
+ const _hoisted_7$1 = ["title"];
3803
+ const _hoisted_8$1 = {
3573
3804
  key: 0,
3574
3805
  class: "ml-2 inline-flex items-center rounded-full bg-red-100 px-2 py-1 text-xs font-medium text-red-700 dark:bg-red-950/60 dark:text-neutral-100"
3575
3806
  };
3576
- const _hoisted_8$1 = ["innerHTML"];
3577
- const _hoisted_9$1 = { key: 3 };
3578
- const _hoisted_10$1 = {
3807
+ const _hoisted_9$1 = ["innerHTML"];
3808
+ const _hoisted_10$1 = { key: 3 };
3809
+ const _hoisted_11$1 = {
3579
3810
  key: 0,
3580
3811
  class: "px-6 py-4 whitespace-nowrap text-right text-sm font-medium"
3581
3812
  };
3582
- const _hoisted_11$1 = {
3813
+ const _hoisted_12$1 = {
3583
3814
  key: 0,
3584
- class: "text-center py-12"
3815
+ class: "py-12 text-center"
3585
3816
  };
3586
- const _hoisted_12$1 = { class: "mb-4 inline-flex h-16 w-16 items-center justify-center rounded-full bg-neutral-100 dark:bg-neutral-900" };
3587
- const _hoisted_13$1 = { class: "mb-2 text-lg font-semibold text-neutral-950 dark:text-neutral-50" };
3588
- const _hoisted_14$1 = { class: "mb-4 text-neutral-600 dark:text-neutral-200" };
3817
+ const _hoisted_13$1 = { class: "mb-4 inline-flex h-16 w-16 items-center justify-center rounded-full bg-neutral-100 dark:bg-neutral-900" };
3818
+ const _hoisted_14$1 = { class: "mb-2 text-lg font-semibold text-neutral-950 dark:text-neutral-50" };
3819
+ const _hoisted_15$1 = { class: "mb-4 text-neutral-600 dark:text-neutral-200" };
3589
3820
  const _sfc_main$1 = {
3590
3821
  __name: "TableList",
3591
3822
  props: {
@@ -3637,18 +3868,68 @@ const _sfc_main$1 = {
3637
3868
  deletedLabel: {
3638
3869
  type: String,
3639
3870
  default: "Deleted"
3871
+ },
3872
+ search: {
3873
+ type: Boolean,
3874
+ default: false
3875
+ },
3876
+ searchPlaceholder: {
3877
+ type: String,
3878
+ default: "Search..."
3879
+ },
3880
+ searchCountLabel: {
3881
+ type: String,
3882
+ default: "results"
3883
+ },
3884
+ searchQueryLabel: {
3885
+ type: String,
3886
+ default: "for"
3887
+ },
3888
+ searchShowDeleted: {
3889
+ type: Boolean,
3890
+ default: false
3891
+ },
3892
+ searchShowDeletedToggle: {
3893
+ type: Boolean,
3894
+ default: false
3895
+ },
3896
+ searchShowDeletedLabel: {
3897
+ type: String,
3898
+ default: "Show deleted"
3640
3899
  }
3641
3900
  },
3642
- emits: ["sort"],
3901
+ emits: ["sort", "update:searchShowDeleted"],
3643
3902
  setup(__props, { emit: __emit }) {
3644
3903
  const slots = useSlots();
3645
3904
  const props = __props;
3646
3905
  const emit = __emit;
3647
3906
  computed(() => !!slots.actions);
3648
- const hasData = computed(() => props.data && props.data.length > 0);
3907
+ const searchQuery = ref("");
3908
+ const filteredData = computed(() => {
3909
+ if (!props.search || !searchQuery.value.trim()) {
3910
+ return props.data;
3911
+ }
3912
+ const query = searchQuery.value.toLowerCase().trim();
3913
+ return props.data.filter((item) => {
3914
+ return props.columns.some((column) => {
3915
+ if (column.searchable === false || column.slot) {
3916
+ return false;
3917
+ }
3918
+ const value = column.key.split(".").reduce((obj, key) => obj?.[key], item);
3919
+ if (value === null || value === void 0 || value === "") {
3920
+ return false;
3921
+ }
3922
+ return String(value).toLowerCase().includes(query);
3923
+ });
3924
+ });
3925
+ });
3926
+ const hasData = computed(() => filteredData.value && filteredData.value.length > 0);
3649
3927
  const sortBy = (field) => {
3650
3928
  emit("sort", field);
3651
3929
  };
3930
+ const updateSearchShowDeleted = (value) => {
3931
+ emit("update:searchShowDeleted", value);
3932
+ };
3652
3933
  const truncateText = (value) => {
3653
3934
  const stringValue = String(value ?? "");
3654
3935
  const maxLength = Number(props.maxTextLength);
@@ -3693,96 +3974,114 @@ const _sfc_main$1 = {
3693
3974
  return "px-6 py-3 text-left text-[11px] font-semibold tracking-[0.12em] text-neutral-600 uppercase dark:text-neutral-200";
3694
3975
  };
3695
3976
  return (_ctx, _cache) => {
3696
- return openBlock(), createElementBlock("div", {
3697
- class: normalizeClass(["bg-white/90 backdrop-blur-sm dark:bg-neutral-950/90", __props.isCard ? "mx-4 animate-fadeIn rounded-2xl border border-neutral-200 shadow-sm dark:border-neutral-800 md:mx-0" : ""])
3698
- }, [
3977
+ return openBlock(), createElementBlock("div", _hoisted_1$1, [
3978
+ __props.search ? (openBlock(), createBlock(_sfc_main$2, {
3979
+ key: 0,
3980
+ "model-value": searchQuery.value,
3981
+ placeholder: __props.searchPlaceholder,
3982
+ count: filteredData.value.length,
3983
+ "count-label": __props.searchCountLabel,
3984
+ "query-label": __props.searchQueryLabel,
3985
+ "show-deleted": __props.searchShowDeleted,
3986
+ "show-deleted-toggle": __props.searchShowDeletedToggle,
3987
+ "show-deleted-label": __props.searchShowDeletedLabel,
3988
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => searchQuery.value = $event),
3989
+ "onUpdate:showDeleted": updateSearchShowDeleted
3990
+ }, null, 8, ["model-value", "placeholder", "count", "count-label", "query-label", "show-deleted", "show-deleted-toggle", "show-deleted-label"])) : createCommentVNode("", true),
3699
3991
  createElementVNode("div", {
3700
- class: normalizeClass(["overflow-x-auto", __props.isCard ? "rounded-xl" : ""])
3992
+ class: normalizeClass([
3993
+ "bg-white/90 backdrop-blur-sm dark:bg-neutral-950/90",
3994
+ __props.isCard ? "mx-4 animate-fadeIn rounded-2xl border border-neutral-200 shadow-sm dark:border-neutral-800 md:mx-0" : ""
3995
+ ])
3701
3996
  }, [
3702
- createElementVNode("table", _hoisted_1$1, [
3703
- createElementVNode("thead", _hoisted_2$1, [
3704
- createElementVNode("tr", null, [
3705
- (openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (column) => {
3706
- return openBlock(), createElementBlock(Fragment, {
3707
- key: column.key
3708
- }, [
3709
- column.sortable ? (openBlock(), createBlock(_sfc_main$2, {
3710
- key: 0,
3711
- field: column.key,
3712
- "current-sort-field": __props.sortField,
3713
- "current-direction": __props.sortDirection,
3714
- onSort: sortBy
3715
- }, {
3716
- default: withCtx(() => [
3717
- createTextVNode(toDisplayString(column.label), 1)
3718
- ]),
3719
- _: 2
3720
- }, 1032, ["field", "current-sort-field", "current-direction"])) : (openBlock(), createElementBlock("th", {
3721
- key: 1,
3722
- class: normalizeClass([getHeaderClass(column), { "text-right": column.align === "right" }])
3723
- }, toDisplayString(column.label), 3))
3724
- ], 64);
3725
- }), 128)),
3726
- _ctx.$slots.actions ? (openBlock(), createElementBlock("th", _hoisted_3$1, toDisplayString(__props.actionsLabel), 1)) : createCommentVNode("", true)
3727
- ])
3728
- ]),
3729
- createElementVNode("tbody", _hoisted_4$1, [
3730
- (openBlock(true), createElementBlock(Fragment, null, renderList(__props.data, (item, index) => {
3731
- return openBlock(), createElementBlock("tr", {
3732
- key: item.id,
3733
- class: normalizeClass(__props.rowClasses(item, index))
3734
- }, [
3997
+ createElementVNode("div", {
3998
+ class: normalizeClass(["overflow-x-auto", __props.isCard ? "rounded-xl" : ""])
3999
+ }, [
4000
+ createElementVNode("table", _hoisted_2$1, [
4001
+ createElementVNode("thead", _hoisted_3$1, [
4002
+ createElementVNode("tr", null, [
3735
4003
  (openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (column) => {
3736
- return openBlock(), createElementBlock("td", {
3737
- key: column.key,
3738
- class: normalizeClass(getColumnClass(column))
4004
+ return openBlock(), createElementBlock(Fragment, {
4005
+ key: column.key
3739
4006
  }, [
3740
- column.key === "name" && !column.slot ? (openBlock(), createElementBlock("div", _hoisted_5$1, [
3741
- createElementVNode("div", {
3742
- class: "truncate text-sm font-medium text-neutral-950 dark:text-neutral-50",
3743
- title: getCellContent(item, column)
3744
- }, toDisplayString(getCellContent(item, column)), 9, _hoisted_6$1),
3745
- isDeleted(item) ? (openBlock(), createElementBlock("span", _hoisted_7$1, toDisplayString(__props.deletedLabel), 1)) : createCommentVNode("", true)
3746
- ])) : column.slot ? renderSlot(_ctx.$slots, column.slot, {
4007
+ column.sortable ? (openBlock(), createBlock(_sfc_main$3, {
4008
+ key: 0,
4009
+ field: column.key,
4010
+ "current-sort-field": __props.sortField,
4011
+ "current-direction": __props.sortDirection,
4012
+ onSort: sortBy
4013
+ }, {
4014
+ default: withCtx(() => [
4015
+ createTextVNode(toDisplayString(column.label), 1)
4016
+ ]),
4017
+ _: 2
4018
+ }, 1032, ["field", "current-sort-field", "current-direction"])) : (openBlock(), createElementBlock("th", {
3747
4019
  key: 1,
4020
+ class: normalizeClass([getHeaderClass(column), { "text-right": column.align === "right" }])
4021
+ }, toDisplayString(column.label), 3))
4022
+ ], 64);
4023
+ }), 128)),
4024
+ _ctx.$slots.actions ? (openBlock(), createElementBlock("th", _hoisted_4$1, toDisplayString(__props.actionsLabel), 1)) : createCommentVNode("", true)
4025
+ ])
4026
+ ]),
4027
+ createElementVNode("tbody", _hoisted_5$1, [
4028
+ (openBlock(true), createElementBlock(Fragment, null, renderList(filteredData.value, (item, index) => {
4029
+ return openBlock(), createElementBlock("tr", {
4030
+ key: item.id,
4031
+ class: normalizeClass(__props.rowClasses(item, index))
4032
+ }, [
4033
+ (openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (column) => {
4034
+ return openBlock(), createElementBlock("td", {
4035
+ key: column.key,
4036
+ class: normalizeClass(getColumnClass(column))
4037
+ }, [
4038
+ column.key === "name" && !column.slot ? (openBlock(), createElementBlock("div", _hoisted_6$1, [
4039
+ createElementVNode("div", {
4040
+ class: "truncate text-sm font-medium text-neutral-950 dark:text-neutral-50",
4041
+ title: getCellContent(item, column)
4042
+ }, toDisplayString(getCellContent(item, column)), 9, _hoisted_7$1),
4043
+ isDeleted(item) ? (openBlock(), createElementBlock("span", _hoisted_8$1, toDisplayString(__props.deletedLabel), 1)) : createCommentVNode("", true)
4044
+ ])) : column.slot ? renderSlot(_ctx.$slots, column.slot, {
4045
+ key: 1,
4046
+ item,
4047
+ column,
4048
+ index
4049
+ }) : column.render ? (openBlock(), createElementBlock("div", {
4050
+ key: 2,
4051
+ innerHTML: column.render(item)
4052
+ }, null, 8, _hoisted_9$1)) : (openBlock(), createElementBlock("div", _hoisted_10$1, toDisplayString(getCellContent(item, column)), 1))
4053
+ ], 2);
4054
+ }), 128)),
4055
+ _ctx.$slots.actions ? (openBlock(), createElementBlock("td", _hoisted_11$1, [
4056
+ renderSlot(_ctx.$slots, "actions", {
3748
4057
  item,
3749
- column,
3750
4058
  index
3751
- }) : column.render ? (openBlock(), createElementBlock("div", {
3752
- key: 2,
3753
- innerHTML: column.render(item)
3754
- }, null, 8, _hoisted_8$1)) : (openBlock(), createElementBlock("div", _hoisted_9$1, toDisplayString(getCellContent(item, column)), 1))
3755
- ], 2);
3756
- }), 128)),
3757
- _ctx.$slots.actions ? (openBlock(), createElementBlock("td", _hoisted_10$1, [
3758
- renderSlot(_ctx.$slots, "actions", {
3759
- item,
3760
- index
3761
- })
3762
- ])) : createCommentVNode("", true)
3763
- ], 2);
3764
- }), 128))
4059
+ })
4060
+ ])) : createCommentVNode("", true)
4061
+ ], 2);
4062
+ }), 128))
4063
+ ])
3765
4064
  ])
3766
- ])
3767
- ], 2),
3768
- !hasData.value ? (openBlock(), createElementBlock("div", _hoisted_11$1, [
3769
- createElementVNode("div", _hoisted_12$1, [
3770
- (openBlock(), createBlock(resolveDynamicComponent(__props.emptyState.icon), { class: "h-8 w-8 text-neutral-400 dark:text-neutral-200" }))
3771
- ]),
3772
- createElementVNode("h3", _hoisted_13$1, toDisplayString(__props.emptyState.title), 1),
3773
- createElementVNode("p", _hoisted_14$1, toDisplayString(__props.emptyState.description), 1),
3774
- __props.emptyState.actionText && __props.emptyState.actionUrl ? (openBlock(), createBlock(_sfc_main$i, {
3775
- key: 0,
3776
- href: __props.emptyState.actionUrl,
3777
- variant: "primary"
3778
- }, {
3779
- default: withCtx(() => [
3780
- createTextVNode(toDisplayString(__props.emptyState.actionText), 1)
4065
+ ], 2),
4066
+ !hasData.value ? (openBlock(), createElementBlock("div", _hoisted_12$1, [
4067
+ createElementVNode("div", _hoisted_13$1, [
4068
+ (openBlock(), createBlock(resolveDynamicComponent(__props.emptyState.icon), { class: "h-8 w-8 text-neutral-400 dark:text-neutral-200" }))
3781
4069
  ]),
3782
- _: 1
3783
- }, 8, ["href"])) : createCommentVNode("", true)
3784
- ])) : createCommentVNode("", true)
3785
- ], 2);
4070
+ createElementVNode("h3", _hoisted_14$1, toDisplayString(__props.emptyState.title), 1),
4071
+ createElementVNode("p", _hoisted_15$1, toDisplayString(__props.emptyState.description), 1),
4072
+ __props.emptyState.actionText && __props.emptyState.actionUrl ? (openBlock(), createBlock(_sfc_main$j, {
4073
+ key: 0,
4074
+ href: __props.emptyState.actionUrl,
4075
+ variant: "primary"
4076
+ }, {
4077
+ default: withCtx(() => [
4078
+ createTextVNode(toDisplayString(__props.emptyState.actionText), 1)
4079
+ ]),
4080
+ _: 1
4081
+ }, 8, ["href"])) : createCommentVNode("", true)
4082
+ ])) : createCommentVNode("", true)
4083
+ ], 2)
4084
+ ]);
3786
4085
  };
3787
4086
  }
3788
4087
  };
@@ -4230,7 +4529,7 @@ const _sfc_main = {
4230
4529
  return openBlock(), createElementBlock(Fragment, {
4231
4530
  key: column.key
4232
4531
  }, [
4233
- column.sortable ? (openBlock(), createBlock(_sfc_main$2, {
4532
+ column.sortable ? (openBlock(), createBlock(_sfc_main$3, {
4234
4533
  key: 0,
4235
4534
  field: column.key,
4236
4535
  "current-sort-field": localSortField.value,
@@ -4264,7 +4563,7 @@ const _sfc_main = {
4264
4563
  isEditingRow(item, index) && column.slot && unref(slots)[getEditSlotName(column)] ? renderSlot(_ctx.$slots, getEditSlotName(column), mergeProps({
4265
4564
  key: 0,
4266
4565
  ref_for: true
4267
- }, getSlotBindings(item, column, index))) : isEditingRow(item, index) && column.input ? (openBlock(), createBlock(_sfc_main$s, {
4566
+ }, getSlotBindings(item, column, index))) : isEditingRow(item, index) && column.input ? (openBlock(), createBlock(_sfc_main$t, {
4268
4567
  key: 1,
4269
4568
  type: getInputType(column),
4270
4569
  class: normalizeClass(getInputClass(column)),
@@ -4297,7 +4596,7 @@ const _sfc_main = {
4297
4596
  key: 0,
4298
4597
  ref_for: true
4299
4598
  }, getSlotBindings(item, null, index))) : createCommentVNode("", true),
4300
- __props.rowEditing && isEditingRow(item, index) ? (openBlock(), createBlock(_sfc_main$F, {
4599
+ __props.rowEditing && isEditingRow(item, index) ? (openBlock(), createBlock(_sfc_main$H, {
4301
4600
  key: 1,
4302
4601
  type: "button",
4303
4602
  variant: "outline",
@@ -4310,7 +4609,7 @@ const _sfc_main = {
4310
4609
  createVNode(unref(CheckIcon), { class: "size-4" })
4311
4610
  ]),
4312
4611
  _: 1
4313
- }, 8, ["title", "aria-label", "onClick"])) : __props.rowEditing ? (openBlock(), createBlock(_sfc_main$F, {
4612
+ }, 8, ["title", "aria-label", "onClick"])) : __props.rowEditing ? (openBlock(), createBlock(_sfc_main$H, {
4314
4613
  key: 2,
4315
4614
  type: "button",
4316
4615
  variant: "secondary",
@@ -4337,7 +4636,7 @@ const _sfc_main = {
4337
4636
  ]),
4338
4637
  createElementVNode("h3", _hoisted_17, toDisplayString(__props.emptyState.title), 1),
4339
4638
  createElementVNode("p", _hoisted_18, toDisplayString(__props.emptyState.description), 1),
4340
- __props.emptyState.actionText && __props.emptyState.actionUrl ? (openBlock(), createBlock(_sfc_main$i, {
4639
+ __props.emptyState.actionText && __props.emptyState.actionUrl ? (openBlock(), createBlock(_sfc_main$j, {
4341
4640
  key: 0,
4342
4641
  href: __props.emptyState.actionUrl,
4343
4642
  variant: "primary"
@@ -4363,57 +4662,59 @@ const plugin = {
4363
4662
  }
4364
4663
  };
4365
4664
  export {
4366
- _sfc_main$K as ActionCard,
4367
- _sfc_main$J as ActionMessage,
4368
- _sfc_main$H as ActionSection,
4369
- _sfc_main$G as Badge,
4370
- _sfc_main$F as Button,
4371
- _sfc_main$M as Card,
4372
- _sfc_main$N as CardTabs,
4373
- _sfc_main$E as Checkbox,
4374
- _sfc_main$D as CheckboxInput,
4375
- _sfc_main$r as CheckboxMultipleInput,
4376
- _sfc_main$p as ConfirmationModal,
4377
- _sfc_main$A as CustomSelect,
4378
- _sfc_main$y as DateInput,
4379
- _sfc_main$o as DialogModal,
4380
- _sfc_main$L as Divider,
4381
- _sfc_main$n as Dropdown,
4382
- _sfc_main$m as DropdownLink,
4665
+ _sfc_main$M as ActionCard,
4666
+ _sfc_main$L as ActionMessage,
4667
+ _sfc_main$J as ActionSection,
4668
+ _sfc_main$I as Badge,
4669
+ _sfc_main$H as Button,
4670
+ _sfc_main$O as Card,
4671
+ _sfc_main$P as CardTabs,
4672
+ _sfc_main$G as Checkbox,
4673
+ _sfc_main$F as CheckboxInput,
4674
+ _sfc_main$s as CheckboxMultipleInput,
4675
+ _sfc_main$q as ConfirmationModal,
4676
+ _sfc_main$C as CustomSelect,
4677
+ _sfc_main$A as DateInput,
4678
+ _sfc_main$p as DialogModal,
4679
+ _sfc_main$N as Divider,
4680
+ _sfc_main$o as Dropdown,
4681
+ _sfc_main$n as DropdownLink,
4383
4682
  plugin as EnosVueDefault,
4384
- _sfc_main$l as FormSection,
4385
- _sfc_main$x as ImageInput,
4386
- _sfc_main$k as InputError,
4387
- _sfc_main$s as InputGroup,
4388
- _sfc_main$j as InputLabel,
4389
- _sfc_main$i as LinkButton,
4390
- _sfc_main$q as Modal,
4391
- _sfc_main$w as NotationInput,
4392
- _sfc_main$v as RadioInput,
4393
- _sfc_main$u as RadioMultipleInput,
4394
- _sfc_main$h as SectionBorder,
4683
+ _sfc_main$m as FormSection,
4684
+ _sfc_main$z as ImageInput,
4685
+ _sfc_main$l as InputError,
4686
+ _sfc_main$t as InputGroup,
4687
+ _sfc_main$k as InputLabel,
4688
+ _sfc_main$j as LinkButton,
4689
+ _sfc_main$r as Modal,
4690
+ _sfc_main$y as NotationInput,
4691
+ _sfc_main$x as RadioInput,
4692
+ _sfc_main$v as RadioMultipleInput,
4693
+ _sfc_main$i as SectionBorder,
4395
4694
  SectionTitle,
4396
- _sfc_main$z as SelectInput,
4397
- _sfc_main$g as Sidebar,
4398
- _sfc_main$f as SidebarContent,
4399
- _sfc_main$e as SidebarFooter,
4400
- _sfc_main$d as SidebarGroup,
4401
- _sfc_main$c as SidebarGroupContent,
4402
- _sfc_main$b as SidebarGroupLabel,
4403
- _sfc_main$a as SidebarHeader,
4404
- _sfc_main$9 as SidebarInset,
4405
- _sfc_main$8 as SidebarMenu,
4406
- _sfc_main$7 as SidebarMenuButton,
4407
- _sfc_main$6 as SidebarMenuItem,
4408
- _sfc_main$5 as SidebarProvider,
4409
- _sfc_main$4 as SidebarTrigger,
4410
- _sfc_main$3 as SortControls,
4695
+ _sfc_main$B as SelectInput,
4696
+ _sfc_main$h as Sidebar,
4697
+ _sfc_main$g as SidebarContent,
4698
+ _sfc_main$f as SidebarFooter,
4699
+ _sfc_main$e as SidebarGroup,
4700
+ _sfc_main$d as SidebarGroupContent,
4701
+ _sfc_main$c as SidebarGroupLabel,
4702
+ _sfc_main$b as SidebarHeader,
4703
+ _sfc_main$a as SidebarInset,
4704
+ _sfc_main$9 as SidebarMenu,
4705
+ _sfc_main$8 as SidebarMenuButton,
4706
+ _sfc_main$7 as SidebarMenuItem,
4707
+ _sfc_main$6 as SidebarProvider,
4708
+ _sfc_main$5 as SidebarTrigger,
4709
+ _sfc_main$4 as SortControls,
4411
4710
  _sfc_main$1 as TableList,
4412
4711
  _sfc_main as TableListForm,
4413
- _sfc_main$B as TextArea,
4414
- _sfc_main$C as TextInput,
4415
- _sfc_main$2 as ThSortable,
4416
- _sfc_main$t as TinyEditor,
4712
+ _sfc_main$2 as TableSearch,
4713
+ _sfc_main$D as TextArea,
4714
+ _sfc_main$E as TextInput,
4715
+ _sfc_main$3 as ThSortable,
4716
+ _sfc_main$u as TinyEditor,
4717
+ _sfc_main$w as ToggleInput,
4417
4718
  useSidebar
4418
4719
  };
4419
4720
  //# sourceMappingURL=index.js.map