@enos5/enos-vue-default 1.7.5 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,13 +2,13 @@ import { ref, computed, watch, openBlock, createElementBlock, createElementVNode
2
2
  import { LockClosedIcon, ChevronDownIcon, PhotoIcon, ExclamationCircleIcon, ExclamationTriangleIcon, ChevronUpIcon, MagnifyingGlassIcon, CheckIcon, PencilSquareIcon } from "@heroicons/vue/24/outline";
3
3
  import Editor from "@tinymce/tinymce-vue";
4
4
  import { Link } from "@inertiajs/vue3";
5
- const _hoisted_1$D = { class: "border-b border-neutral-200 bg-neutral-50/80 p-2 dark:border-neutral-800 dark:bg-neutral-900/80" };
6
- const _hoisted_2$n = {
5
+ const _hoisted_1$E = { class: "border-b border-neutral-200 bg-neutral-50/80 p-2 dark:border-neutral-800 dark:bg-neutral-900/80" };
6
+ const _hoisted_2$o = {
7
7
  role: "tablist",
8
8
  class: "flex overflow-hidden rounded-lg bg-white shadow-sm ring-1 ring-neutral-200 dark:bg-neutral-950 dark:ring-neutral-800"
9
9
  };
10
- const _hoisted_3$g = ["aria-selected", "tabindex", "onClick", "onKeydown"];
11
- const _sfc_main$S = {
10
+ const _hoisted_3$h = ["aria-selected", "tabindex", "onClick", "onKeydown"];
11
+ const _sfc_main$T = {
12
12
  __name: "CardTabs",
13
13
  props: {
14
14
  tabs: {
@@ -77,8 +77,8 @@ const _sfc_main$S = {
77
77
  focusTabAtIndex(targetIndex);
78
78
  };
79
79
  return (_ctx, _cache) => {
80
- return openBlock(), createElementBlock("div", _hoisted_1$D, [
81
- createElementVNode("div", _hoisted_2$n, [
80
+ return openBlock(), createElementBlock("div", _hoisted_1$E, [
81
+ createElementVNode("div", _hoisted_2$o, [
82
82
  (openBlock(true), createElementBlock(Fragment, null, renderList(__props.tabs, (tab, index) => {
83
83
  return openBlock(), createElementBlock("button", {
84
84
  key: tab.value,
@@ -98,22 +98,22 @@ const _sfc_main$S = {
98
98
  ]),
99
99
  onClick: ($event) => activateTab(tab.value),
100
100
  onKeydown: ($event) => onTabKeydown($event, index)
101
- }, toDisplayString(tab.label), 47, _hoisted_3$g);
101
+ }, toDisplayString(tab.label), 47, _hoisted_3$h);
102
102
  }), 128))
103
103
  ])
104
104
  ]);
105
105
  };
106
106
  }
107
107
  };
108
- const _hoisted_1$C = {
108
+ const _hoisted_1$D = {
109
109
  key: 0,
110
110
  class: "mb-4"
111
111
  };
112
- const _hoisted_2$m = {
112
+ const _hoisted_2$n = {
113
113
  key: 1,
114
114
  class: "mb-4 text-xl font-semibold tracking-tight text-neutral-950 dark:text-neutral-50"
115
115
  };
116
- const _sfc_main$R = {
116
+ const _sfc_main$S = {
117
117
  __name: "Card",
118
118
  props: {
119
119
  title: {
@@ -174,7 +174,7 @@ const _sfc_main$R = {
174
174
  return openBlock(), createElementBlock("div", {
175
175
  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])
176
176
  }, [
177
- __props.tabs.length > 0 ? (openBlock(), createBlock(_sfc_main$S, {
177
+ __props.tabs.length > 0 ? (openBlock(), createBlock(_sfc_main$T, {
178
178
  key: 0,
179
179
  tabs: __props.tabs,
180
180
  "active-tab": __props.activeTab,
@@ -184,9 +184,9 @@ const _sfc_main$R = {
184
184
  createElementVNode("div", {
185
185
  class: normalizeClass(__props.paddingClass)
186
186
  }, [
187
- _ctx.$slots.customTitle ? (openBlock(), createElementBlock("div", _hoisted_1$C, [
187
+ _ctx.$slots.customTitle ? (openBlock(), createElementBlock("div", _hoisted_1$D, [
188
188
  renderSlot(_ctx.$slots, "customTitle")
189
- ])) : __props.title ? (openBlock(), createElementBlock("h3", _hoisted_2$m, toDisplayString(__props.title), 1)) : createCommentVNode("", true),
189
+ ])) : __props.title ? (openBlock(), createElementBlock("h3", _hoisted_2$n, toDisplayString(__props.title), 1)) : createCommentVNode("", true),
190
190
  createElementVNode("div", {
191
191
  class: normalizeClass(["relative", __props.tabs.length > 0 ? "overflow-hidden" : "overflow-visible"])
192
192
  }, [
@@ -204,7 +204,7 @@ const _sfc_main$R = {
204
204
  key: __props.activeTab,
205
205
  class: normalizeClass([
206
206
  __props.tabs.length > 0 ? "p-2" : "",
207
- "dark:text-neutral-50 dark:[&_h1]:text-neutral-50 dark:[&_h2]:text-neutral-50 dark:[&_h3]:text-neutral-50 dark:[&_h4]:text-neutral-50 dark:[&_h5]:text-neutral-50 dark:[&_h6]:text-neutral-50 dark:[&_p]:text-neutral-100 dark:[&_span]:text-neutral-100 dark:[&_label]:text-neutral-100 dark:[&_li]:text-neutral-100 dark:[&_a]:text-neutral-100",
207
+ "dark:text-neutral-50 dark:[&_h1]:text-neutral-50 dark:[&_h2]:text-neutral-50 dark:[&_h3]:text-neutral-50 dark:[&_h4]:text-neutral-50 dark:[&_h5]:text-neutral-50 dark:[&_h6]:text-neutral-50 dark:[&_p]:text-neutral-100 dark:[&_li]:text-neutral-100 dark:[&_a]:text-neutral-100",
208
208
  __props.contentClass
209
209
  ])
210
210
  }, [
@@ -219,7 +219,7 @@ const _sfc_main$R = {
219
219
  };
220
220
  }
221
221
  };
222
- const _sfc_main$Q = /* @__PURE__ */ Object.assign({
222
+ const _sfc_main$R = /* @__PURE__ */ Object.assign({
223
223
  inheritAttrs: false
224
224
  }, {
225
225
  __name: "Divider",
@@ -231,7 +231,7 @@ const _sfc_main$Q = /* @__PURE__ */ Object.assign({
231
231
  };
232
232
  }
233
233
  });
234
- const _sfc_main$P = {
234
+ const _sfc_main$Q = {
235
235
  __name: "ActionCard",
236
236
  props: {
237
237
  title: {
@@ -246,13 +246,13 @@ const _sfc_main$P = {
246
246
  setup(__props) {
247
247
  const slots = useSlots();
248
248
  return (_ctx, _cache) => {
249
- return openBlock(), createBlock(_sfc_main$R, {
249
+ return openBlock(), createBlock(_sfc_main$S, {
250
250
  title: __props.title,
251
251
  "content-class": __props.actionsClass
252
252
  }, {
253
253
  default: withCtx(() => [
254
254
  renderSlot(_ctx.$slots, "default"),
255
- unref(slots).danger ? (openBlock(), createBlock(_sfc_main$Q, {
255
+ unref(slots).danger ? (openBlock(), createBlock(_sfc_main$R, {
256
256
  key: 0,
257
257
  class: "mt-6 pt-4"
258
258
  }, {
@@ -267,8 +267,8 @@ const _sfc_main$P = {
267
267
  };
268
268
  }
269
269
  };
270
- const _hoisted_1$B = { class: "text-sm text-gray-600" };
271
- const _sfc_main$O = {
270
+ const _hoisted_1$C = { class: "text-sm text-gray-600" };
271
+ const _sfc_main$P = {
272
272
  __name: "ActionMessage",
273
273
  props: {
274
274
  on: Boolean
@@ -282,7 +282,7 @@ const _sfc_main$O = {
282
282
  "leave-to-class": "opacity-0"
283
283
  }, {
284
284
  default: withCtx(() => [
285
- withDirectives(createElementVNode("div", _hoisted_1$B, [
285
+ withDirectives(createElementVNode("div", _hoisted_1$C, [
286
286
  renderSlot(_ctx.$slots, "default")
287
287
  ], 512), [
288
288
  [vShow, __props.on]
@@ -301,19 +301,19 @@ const _export_sfc = (sfc, props) => {
301
301
  }
302
302
  return target;
303
303
  };
304
- const _sfc_main$N = {};
305
- const _hoisted_1$A = { class: "md:col-span-1 flex justify-between" };
306
- const _hoisted_2$l = { class: "px-4 sm:px-0" };
307
- const _hoisted_3$f = { class: "text-xl font-semibold tracking-tight text-neutral-950 dark:text-neutral-50" };
308
- const _hoisted_4$a = { class: "mt-1 max-w-2xl text-sm text-neutral-600 dark:text-neutral-200" };
304
+ const _sfc_main$O = {};
305
+ const _hoisted_1$B = { class: "md:col-span-1 flex justify-between" };
306
+ const _hoisted_2$m = { class: "px-4 sm:px-0" };
307
+ const _hoisted_3$g = { class: "text-xl font-semibold tracking-tight text-neutral-950 dark:text-neutral-50" };
308
+ const _hoisted_4$b = { class: "mt-1 max-w-2xl text-sm text-neutral-600 dark:text-neutral-200" };
309
309
  const _hoisted_5$8 = { class: "px-4 sm:px-0" };
310
310
  function _sfc_render(_ctx, _cache) {
311
- return openBlock(), createElementBlock("div", _hoisted_1$A, [
312
- createElementVNode("div", _hoisted_2$l, [
313
- createElementVNode("h3", _hoisted_3$f, [
311
+ return openBlock(), createElementBlock("div", _hoisted_1$B, [
312
+ createElementVNode("div", _hoisted_2$m, [
313
+ createElementVNode("h3", _hoisted_3$g, [
314
314
  renderSlot(_ctx.$slots, "title")
315
315
  ]),
316
- createElementVNode("p", _hoisted_4$a, [
316
+ createElementVNode("p", _hoisted_4$b, [
317
317
  renderSlot(_ctx.$slots, "description")
318
318
  ])
319
319
  ]),
@@ -322,15 +322,15 @@ function _sfc_render(_ctx, _cache) {
322
322
  ])
323
323
  ]);
324
324
  }
325
- const SectionTitle = /* @__PURE__ */ _export_sfc(_sfc_main$N, [["render", _sfc_render]]);
326
- const _hoisted_1$z = { class: "md:grid md:grid-cols-3 md:gap-6" };
327
- const _hoisted_2$k = { class: "mt-5 md:mt-0 md:col-span-2" };
328
- const _hoisted_3$e = { 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" };
329
- const _sfc_main$M = {
325
+ const SectionTitle = /* @__PURE__ */ _export_sfc(_sfc_main$O, [["render", _sfc_render]]);
326
+ const _hoisted_1$A = { class: "md:grid md:grid-cols-3 md:gap-6" };
327
+ const _hoisted_2$l = { class: "mt-5 md:mt-0 md:col-span-2" };
328
+ const _hoisted_3$f = { 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" };
329
+ const _sfc_main$N = {
330
330
  __name: "ActionSection",
331
331
  setup(__props) {
332
332
  return (_ctx, _cache) => {
333
- return openBlock(), createElementBlock("div", _hoisted_1$z, [
333
+ return openBlock(), createElementBlock("div", _hoisted_1$A, [
334
334
  createVNode(SectionTitle, null, {
335
335
  title: withCtx(() => [
336
336
  renderSlot(_ctx.$slots, "title")
@@ -340,8 +340,8 @@ const _sfc_main$M = {
340
340
  ]),
341
341
  _: 3
342
342
  }),
343
- createElementVNode("div", _hoisted_2$k, [
344
- createElementVNode("div", _hoisted_3$e, [
343
+ createElementVNode("div", _hoisted_2$l, [
344
+ createElementVNode("div", _hoisted_3$f, [
345
345
  renderSlot(_ctx.$slots, "content")
346
346
  ])
347
347
  ])
@@ -349,8 +349,8 @@ const _sfc_main$M = {
349
349
  };
350
350
  }
351
351
  };
352
- const _hoisted_1$y = { class: "sr-only" };
353
- const _sfc_main$L = {
352
+ const _hoisted_1$z = { class: "sr-only" };
353
+ const _sfc_main$M = {
354
354
  __name: "Badge",
355
355
  props: {
356
356
  type: {
@@ -415,7 +415,7 @@ const _sfc_main$L = {
415
415
  createElementVNode("span", {
416
416
  class: normalizeClass(["w-2 h-2 rounded-full", colorClasses[__props.color].dot])
417
417
  }, null, 2),
418
- createElementVNode("span", _hoisted_1$y, [
418
+ createElementVNode("span", _hoisted_1$z, [
419
419
  renderSlot(_ctx.$slots, "default")
420
420
  ])
421
421
  ], 2)) : (openBlock(), createElementBlock("span", {
@@ -432,8 +432,8 @@ const _sfc_main$L = {
432
432
  };
433
433
  }
434
434
  };
435
- const _hoisted_1$x = ["type", "disabled"];
436
- const _sfc_main$K = /* @__PURE__ */ Object.assign({
435
+ const _hoisted_1$y = ["type", "disabled"];
436
+ const _sfc_main$L = /* @__PURE__ */ Object.assign({
437
437
  inheritAttrs: false
438
438
  }, {
439
439
  __name: "Button",
@@ -500,12 +500,12 @@ const _sfc_main$K = /* @__PURE__ */ Object.assign({
500
500
  class: buttonClasses.value
501
501
  }), [
502
502
  renderSlot(_ctx.$slots, "default")
503
- ], 16, _hoisted_1$x);
503
+ ], 16, _hoisted_1$y);
504
504
  };
505
505
  }
506
506
  });
507
- const _hoisted_1$w = ["value"];
508
- const _sfc_main$J = {
507
+ const _hoisted_1$x = ["value"];
508
+ const _sfc_main$K = {
509
509
  __name: "Checkbox",
510
510
  props: {
511
511
  checked: {
@@ -535,14 +535,14 @@ const _sfc_main$J = {
535
535
  type: "checkbox",
536
536
  value: __props.value,
537
537
  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"
538
- }, null, 8, _hoisted_1$w)), [
538
+ }, null, 8, _hoisted_1$x)), [
539
539
  [vModelCheckbox, proxyChecked.value]
540
540
  ]);
541
541
  };
542
542
  }
543
543
  };
544
- const _hoisted_1$v = ["name", "checked", "disabled"];
545
- const _sfc_main$I = {
544
+ const _hoisted_1$w = ["name", "checked", "disabled"];
545
+ const _sfc_main$J = {
546
546
  __name: "CheckboxInput",
547
547
  props: {
548
548
  modelValue: {
@@ -602,7 +602,7 @@ const _sfc_main$I = {
602
602
  onChange,
603
603
  onFocus: handleFocus,
604
604
  onBlur: handleBlur
605
- }, null, 40, _hoisted_1$v),
605
+ }, null, 40, _hoisted_1$w),
606
606
  createElementVNode("span", {
607
607
  class: normalizeClass(["inline-flex h-4 w-4 items-center justify-center border text-[10px] font-bold leading-none", [
608
608
  isChecked.value ? "border-current bg-white/15 text-current dark:bg-neutral-900/15" : "border-neutral-400 text-transparent dark:border-neutral-500",
@@ -614,13 +614,13 @@ const _sfc_main$I = {
614
614
  };
615
615
  }
616
616
  };
617
- const _hoisted_1$u = { class: "relative flex items-center" };
618
- const _hoisted_2$j = {
617
+ const _hoisted_1$v = { class: "relative flex items-center" };
618
+ const _hoisted_2$k = {
619
619
  key: 0,
620
620
  class: "absolute inset-y-0 left-0 flex items-center pointer-events-none pl-3"
621
621
  };
622
- const _hoisted_3$d = ["type", "value", "disabled"];
623
- const _hoisted_4$9 = ["aria-label"];
622
+ const _hoisted_3$e = ["type", "value", "disabled"];
623
+ const _hoisted_4$a = ["aria-label"];
624
624
  const _hoisted_5$7 = {
625
625
  key: 0,
626
626
  class: "h-5 w-5",
@@ -635,8 +635,8 @@ const _hoisted_6$7 = {
635
635
  stroke: "currentColor",
636
636
  viewBox: "0 0 24 24"
637
637
  };
638
- const DEFAULT_MAX_LENGTH$1 = 254;
639
- const _sfc_main$H = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
638
+ const DEFAULT_MAX_LENGTH$2 = 254;
639
+ const _sfc_main$I = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
640
640
  __name: "TextInput",
641
641
  props: {
642
642
  modelValue: {
@@ -666,7 +666,7 @@ const _sfc_main$H = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
666
666
  const inputAttrs = computed(() => {
667
667
  const { class: _class, type: _type, ...rest } = attrs;
668
668
  if (rest.maxlength === void 0) {
669
- rest.maxlength = DEFAULT_MAX_LENGTH$1;
669
+ rest.maxlength = DEFAULT_MAX_LENGTH$2;
670
670
  }
671
671
  return rest;
672
672
  });
@@ -695,8 +695,8 @@ const _sfc_main$H = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
695
695
  });
696
696
  __expose({ focus: () => input.value?.focus() });
697
697
  return (_ctx, _cache) => {
698
- return openBlock(), createElementBlock("div", _hoisted_1$u, [
699
- isPasswordField.value ? (openBlock(), createElementBlock("div", _hoisted_2$j, [
698
+ return openBlock(), createElementBlock("div", _hoisted_1$v, [
699
+ isPasswordField.value ? (openBlock(), createElementBlock("div", _hoisted_2$k, [
700
700
  createVNode(unref(LockClosedIcon), { class: "h-5 w-5 text-neutral-400 dark:text-neutral-200" })
701
701
  ])) : createCommentVNode("", true),
702
702
  createElementVNode("input", mergeProps({
@@ -710,7 +710,7 @@ const _sfc_main$H = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
710
710
  onInput: _cache[0] || (_cache[0] = ($event) => emit("update:modelValue", $event.target.value)),
711
711
  onBlur: _cache[1] || (_cache[1] = ($event) => emit("blur", $event)),
712
712
  onWheel: handleWheel
713
- }), null, 16, _hoisted_3$d),
713
+ }), null, 16, _hoisted_3$e),
714
714
  isPasswordField.value ? (openBlock(), createElementBlock("button", {
715
715
  key: 1,
716
716
  type: "button",
@@ -739,14 +739,14 @@ const _sfc_main$H = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
739
739
  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"
740
740
  }, null, -1)
741
741
  ])]))
742
- ], 8, _hoisted_4$9)) : createCommentVNode("", true)
742
+ ], 8, _hoisted_4$a)) : createCommentVNode("", true)
743
743
  ]);
744
744
  };
745
745
  }
746
746
  });
747
- const _hoisted_1$t = ["value", "disabled"];
748
- const DEFAULT_MAX_LENGTH = 1e3;
749
- const _sfc_main$G = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
747
+ const _hoisted_1$u = ["value", "disabled"];
748
+ const DEFAULT_MAX_LENGTH$1 = 1e3;
749
+ const _sfc_main$H = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
750
750
  __name: "TextArea",
751
751
  props: {
752
752
  modelValue: String,
@@ -772,7 +772,7 @@ const _sfc_main$G = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
772
772
  const textareaAttrs = computed(() => {
773
773
  const { class: _class, ...rest } = attrs;
774
774
  if (rest.maxlength === void 0) {
775
- rest.maxlength = DEFAULT_MAX_LENGTH;
775
+ rest.maxlength = DEFAULT_MAX_LENGTH$1;
776
776
  }
777
777
  return rest;
778
778
  });
@@ -816,18 +816,18 @@ const _sfc_main$G = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
816
816
  value: props.modelValue,
817
817
  disabled: props.disabled,
818
818
  onInput: updateValue
819
- }), null, 16, _hoisted_1$t)
819
+ }), null, 16, _hoisted_1$u)
820
820
  ]);
821
821
  };
822
822
  }
823
823
  });
824
- const _hoisted_1$s = ["onClick"];
825
- const _hoisted_2$i = {
824
+ const _hoisted_1$t = ["onClick"];
825
+ const _hoisted_2$j = {
826
826
  key: 0,
827
827
  class: "flex items-center gap-3"
828
828
  };
829
- const _hoisted_3$c = ["checked", "disabled", "onChange"];
830
- const _sfc_main$F = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
829
+ const _hoisted_3$d = ["checked", "disabled", "onChange"];
830
+ const _sfc_main$G = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
831
831
  __name: "CustomSelect",
832
832
  props: {
833
833
  modelValue: {
@@ -1185,7 +1185,7 @@ const _sfc_main$F = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1185
1185
  ]),
1186
1186
  onClick: withModifiers(($event) => __props.multiple ? toggleMultipleOption(option) : selectOption(option), ["stop"])
1187
1187
  }, [
1188
- __props.multiple ? (openBlock(), createElementBlock("div", _hoisted_2$i, [
1188
+ __props.multiple ? (openBlock(), createElementBlock("div", _hoisted_2$j, [
1189
1189
  createElementVNode("input", {
1190
1190
  type: "checkbox",
1191
1191
  class: "h-4 w-4 rounded border-neutral-300 text-neutral-900 focus:ring-neutral-900",
@@ -1195,7 +1195,7 @@ const _sfc_main$F = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1195
1195
  onClick: _cache[0] || (_cache[0] = withModifiers(() => {
1196
1196
  }, ["stop"])),
1197
1197
  onChange: withModifiers(($event) => toggleMultipleOption(option), ["stop"])
1198
- }, null, 40, _hoisted_3$c),
1198
+ }, null, 40, _hoisted_3$d),
1199
1199
  createElementVNode("span", {
1200
1200
  style: normalizeStyle(darkTextStyle.value)
1201
1201
  }, toDisplayString(optionText(option)), 5)
@@ -1203,7 +1203,7 @@ const _sfc_main$F = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1203
1203
  key: 1,
1204
1204
  style: normalizeStyle(darkTextStyle.value)
1205
1205
  }, toDisplayString(optionText(option)), 5))
1206
- ], 10, _hoisted_1$s);
1206
+ ], 10, _hoisted_1$t);
1207
1207
  }), 128))
1208
1208
  ], 2)
1209
1209
  ], 6)) : createCommentVNode("", true)
@@ -1215,7 +1215,7 @@ const _sfc_main$F = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1215
1215
  };
1216
1216
  }
1217
1217
  });
1218
- const _sfc_main$E = {
1218
+ const _sfc_main$F = {
1219
1219
  __name: "SelectInput",
1220
1220
  props: {
1221
1221
  modelValue: {
@@ -1307,7 +1307,7 @@ const _sfc_main$E = {
1307
1307
  setup(__props, { emit: __emit }) {
1308
1308
  const emit = __emit;
1309
1309
  return (_ctx, _cache) => {
1310
- return openBlock(), createBlock(_sfc_main$F, mergeProps({
1310
+ return openBlock(), createBlock(_sfc_main$G, mergeProps({
1311
1311
  "model-value": __props.modelValue,
1312
1312
  "model-modifiers": __props.modelModifiers,
1313
1313
  options: __props.options,
@@ -1334,8 +1334,8 @@ const _sfc_main$E = {
1334
1334
  };
1335
1335
  }
1336
1336
  };
1337
- const _hoisted_1$r = ["type", "max", "value", "disabled"];
1338
- const _sfc_main$D = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1337
+ const _hoisted_1$s = ["type", "max", "value", "disabled"];
1338
+ const _sfc_main$E = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1339
1339
  __name: "DateInput",
1340
1340
  props: {
1341
1341
  modelValue: {
@@ -1415,18 +1415,18 @@ const _sfc_main$D = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1415
1415
  disabled: props.disabled,
1416
1416
  onInput: handleDateInput,
1417
1417
  onChange: handleDateInput
1418
- }), null, 16, _hoisted_1$r);
1418
+ }), null, 16, _hoisted_1$s);
1419
1419
  };
1420
1420
  }
1421
1421
  });
1422
- const DateInput = /* @__PURE__ */ _export_sfc(_sfc_main$D, [["__scopeId", "data-v-35dd480a"]]);
1423
- const _hoisted_1$q = { class: "relative" };
1424
- const _hoisted_2$h = {
1422
+ const DateInput = /* @__PURE__ */ _export_sfc(_sfc_main$E, [["__scopeId", "data-v-35dd480a"]]);
1423
+ const _hoisted_1$r = { class: "relative" };
1424
+ const _hoisted_2$i = {
1425
1425
  key: 0,
1426
1426
  class: "text-sm font-medium text-neutral-700 dark:text-neutral-300 mb-1 block"
1427
1427
  };
1428
- const _hoisted_3$b = ["value", "disabled"];
1429
- const _hoisted_4$8 = { class: "p-4" };
1428
+ const _hoisted_3$c = ["value", "disabled"];
1429
+ const _hoisted_4$9 = { class: "p-4" };
1430
1430
  const _hoisted_5$6 = { class: "mb-4 flex items-center justify-between" };
1431
1431
  const _hoisted_6$6 = { class: "text-sm font-medium text-neutral-900 dark:text-neutral-50" };
1432
1432
  const _hoisted_7$6 = { class: "grid grid-cols-7 gap-1 mb-2" };
@@ -1438,7 +1438,7 @@ const _hoisted_12$2 = { class: "text-xs text-neutral-500 dark:text-neutral-400"
1438
1438
  const _hoisted_13$2 = { key: 0 };
1439
1439
  const _hoisted_14$2 = { key: 1 };
1440
1440
  const _hoisted_15$2 = { key: 2 };
1441
- const _sfc_main$C = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1441
+ const _sfc_main$D = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1442
1442
  __name: "DateRangeInput",
1443
1443
  props: {
1444
1444
  modelValue: {
@@ -1705,8 +1705,8 @@ const _sfc_main$C = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1705
1705
  document.removeEventListener("click", closeCalendar);
1706
1706
  });
1707
1707
  return (_ctx, _cache) => {
1708
- return openBlock(), createElementBlock("div", _hoisted_1$q, [
1709
- __props.label ? (openBlock(), createElementBlock("label", _hoisted_2$h, toDisplayString(__props.label), 1)) : createCommentVNode("", true),
1708
+ return openBlock(), createElementBlock("div", _hoisted_1$r, [
1709
+ __props.label ? (openBlock(), createElementBlock("label", _hoisted_2$i, toDisplayString(__props.label), 1)) : createCommentVNode("", true),
1710
1710
  createElementVNode("input", {
1711
1711
  ref_key: "inputRef",
1712
1712
  ref: inputRef,
@@ -1715,7 +1715,7 @@ const _sfc_main$C = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1715
1715
  value: displayText.value,
1716
1716
  disabled: props.disabled,
1717
1717
  onClick: toggleCalendar
1718
- }, null, 10, _hoisted_3$b),
1718
+ }, null, 10, _hoisted_3$c),
1719
1719
  isOpen.value ? (openBlock(), createElementBlock("div", {
1720
1720
  key: 1,
1721
1721
  ref_key: "calendarRef",
@@ -1724,7 +1724,7 @@ const _sfc_main$C = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1724
1724
  onClick: _cache[0] || (_cache[0] = withModifiers(() => {
1725
1725
  }, ["stop"]))
1726
1726
  }, [
1727
- createElementVNode("div", _hoisted_4$8, [
1727
+ createElementVNode("div", _hoisted_4$9, [
1728
1728
  createElementVNode("div", _hoisted_5$6, [
1729
1729
  createElementVNode("button", {
1730
1730
  type: "button",
@@ -1822,11 +1822,11 @@ const _sfc_main$C = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1822
1822
  };
1823
1823
  }
1824
1824
  });
1825
- const DateRangeInput = /* @__PURE__ */ _export_sfc(_sfc_main$C, [["__scopeId", "data-v-60a85ab0"]]);
1826
- const _hoisted_1$p = { class: "relative" };
1827
- const _hoisted_2$g = { class: "absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none" };
1828
- const _hoisted_3$a = ["accept"];
1829
- const _hoisted_4$7 = {
1825
+ const DateRangeInput = /* @__PURE__ */ _export_sfc(_sfc_main$D, [["__scopeId", "data-v-60a85ab0"]]);
1826
+ const _hoisted_1$q = { class: "relative" };
1827
+ const _hoisted_2$h = { class: "absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none" };
1828
+ const _hoisted_3$b = ["accept"];
1829
+ const _hoisted_4$8 = {
1830
1830
  key: 0,
1831
1831
  class: "mt-4 rounded-lg border border-neutral-200 bg-neutral-50 p-4 dark:border-neutral-800 dark:bg-neutral-900/50"
1832
1832
  };
@@ -1834,7 +1834,7 @@ const _hoisted_5$5 = { class: "flex items-center space-x-4" };
1834
1834
  const _hoisted_6$5 = ["src"];
1835
1835
  const _hoisted_7$5 = { class: "text-sm font-medium text-neutral-900 dark:text-neutral-50" };
1836
1836
  const _hoisted_8$3 = { class: "text-xs text-neutral-500 dark:text-neutral-200" };
1837
- const _sfc_main$B = {
1837
+ const _sfc_main$C = {
1838
1838
  __name: "ImageInput",
1839
1839
  props: {
1840
1840
  currentImageUrl: {
@@ -1868,8 +1868,8 @@ const _sfc_main$B = {
1868
1868
  };
1869
1869
  return (_ctx, _cache) => {
1870
1870
  return openBlock(), createElementBlock("div", null, [
1871
- createElementVNode("div", _hoisted_1$p, [
1872
- createElementVNode("div", _hoisted_2$g, [
1871
+ createElementVNode("div", _hoisted_1$q, [
1872
+ createElementVNode("div", _hoisted_2$h, [
1873
1873
  createVNode(unref(PhotoIcon), { class: "size-5 text-neutral-400 dark:text-neutral-200" })
1874
1874
  ]),
1875
1875
  createElementVNode("input", mergeProps(__props.attrs, {
@@ -1877,9 +1877,9 @@ const _sfc_main$B = {
1877
1877
  accept: __props.accept,
1878
1878
  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",
1879
1879
  onChange: handleFileChange
1880
- }), null, 16, _hoisted_3$a)
1880
+ }), null, 16, _hoisted_3$b)
1881
1881
  ]),
1882
- props.currentImageUrl ? (openBlock(), createElementBlock("div", _hoisted_4$7, [
1882
+ props.currentImageUrl ? (openBlock(), createElementBlock("div", _hoisted_4$8, [
1883
1883
  createElementVNode("div", _hoisted_5$5, [
1884
1884
  createElementVNode("img", {
1885
1885
  src: props.currentImageUrl,
@@ -1896,9 +1896,9 @@ const _sfc_main$B = {
1896
1896
  };
1897
1897
  }
1898
1898
  };
1899
- const _hoisted_1$o = { class: "flex h-12 overflow-hidden rounded-lg border border-neutral-200 bg-white text-sm dark:border-neutral-800 dark:bg-neutral-950" };
1900
- const _hoisted_2$f = ["disabled", "onClick"];
1901
- const _sfc_main$A = {
1899
+ const _hoisted_1$p = { class: "flex h-12 overflow-hidden rounded-lg border border-neutral-200 bg-white text-sm dark:border-neutral-800 dark:bg-neutral-950" };
1900
+ const _hoisted_2$g = ["disabled", "onClick"];
1901
+ const _sfc_main$B = {
1902
1902
  __name: "NotationInput",
1903
1903
  props: {
1904
1904
  modelValue: {
@@ -1924,7 +1924,7 @@ const _sfc_main$A = {
1924
1924
  const isSelected = (option) => String(option) === String(props.modelValue ?? "");
1925
1925
  const selectOption = (option) => emit("update:modelValue", option);
1926
1926
  return (_ctx, _cache) => {
1927
- return openBlock(), createElementBlock("div", _hoisted_1$o, [
1927
+ return openBlock(), createElementBlock("div", _hoisted_1$p, [
1928
1928
  (openBlock(true), createElementBlock(Fragment, null, renderList(normalizedOptions.value, (option, idx) => {
1929
1929
  return openBlock(), createElementBlock("button", {
1930
1930
  key: `notation-${idx}-${option}`,
@@ -1937,14 +1937,14 @@ const _sfc_main$A = {
1937
1937
  ]]),
1938
1938
  disabled: __props.disabled,
1939
1939
  onClick: ($event) => selectOption(option)
1940
- }, toDisplayString(option), 11, _hoisted_2$f);
1940
+ }, toDisplayString(option), 11, _hoisted_2$g);
1941
1941
  }), 128))
1942
1942
  ]);
1943
1943
  };
1944
1944
  }
1945
1945
  };
1946
- const _hoisted_1$n = ["name", "value", "checked", "disabled"];
1947
- const _sfc_main$z = {
1946
+ const _hoisted_1$o = ["name", "value", "checked", "disabled"];
1947
+ const _sfc_main$A = {
1948
1948
  __name: "RadioInput",
1949
1949
  props: {
1950
1950
  modelValue: {
@@ -1999,18 +1999,18 @@ const _sfc_main$z = {
1999
1999
  onChange,
2000
2000
  onFocus: handleFocus,
2001
2001
  onBlur: handleBlur
2002
- }, null, 40, _hoisted_1$n),
2002
+ }, null, 40, _hoisted_1$o),
2003
2003
  createElementVNode("span", null, toDisplayString(isChecked.value ? "✓" : "○") + " " + toDisplayString(__props.label), 1)
2004
2004
  ], 2);
2005
2005
  };
2006
2006
  }
2007
2007
  };
2008
- const _hoisted_1$m = ["name", "checked", "disabled"];
2009
- const _hoisted_2$e = {
2008
+ const _hoisted_1$n = ["name", "checked", "disabled"];
2009
+ const _hoisted_2$f = {
2010
2010
  key: 0,
2011
2011
  class: "text-sm text-neutral-700 dark:text-neutral-200"
2012
2012
  };
2013
- const _sfc_main$y = {
2013
+ const _sfc_main$z = {
2014
2014
  __name: "ToggleInput",
2015
2015
  props: {
2016
2016
  modelValue: {
@@ -2073,7 +2073,7 @@ const _sfc_main$y = {
2073
2073
  onChange,
2074
2074
  onFocus: handleFocus,
2075
2075
  onBlur: handleBlur
2076
- }, null, 40, _hoisted_1$m),
2076
+ }, null, 40, _hoisted_1$n),
2077
2077
  createElementVNode("span", {
2078
2078
  "aria-hidden": "true",
2079
2079
  class: normalizeClass(["relative inline-flex h-6 w-11 items-center rounded-full border transition-colors duration-200", [
@@ -2084,13 +2084,13 @@ const _sfc_main$y = {
2084
2084
  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"]])
2085
2085
  }, null, 2)
2086
2086
  ], 2),
2087
- __props.label ? (openBlock(), createElementBlock("span", _hoisted_2$e, toDisplayString(__props.label), 1)) : createCommentVNode("", true)
2087
+ __props.label ? (openBlock(), createElementBlock("span", _hoisted_2$f, toDisplayString(__props.label), 1)) : createCommentVNode("", true)
2088
2088
  ], 2);
2089
2089
  };
2090
2090
  }
2091
2091
  };
2092
- const _hoisted_1$l = { class: "flex flex-wrap gap-3" };
2093
- const _sfc_main$x = {
2092
+ const _hoisted_1$m = { class: "flex flex-wrap gap-3" };
2093
+ const _sfc_main$y = {
2094
2094
  __name: "RadioMultipleInput",
2095
2095
  props: {
2096
2096
  modelValue: {
@@ -2119,9 +2119,9 @@ const _sfc_main$x = {
2119
2119
  });
2120
2120
  const selectOption = (option) => emit("update:modelValue", option);
2121
2121
  return (_ctx, _cache) => {
2122
- return openBlock(), createElementBlock("div", _hoisted_1$l, [
2122
+ return openBlock(), createElementBlock("div", _hoisted_1$m, [
2123
2123
  (openBlock(true), createElementBlock(Fragment, null, renderList(normalizedOptions.value, (option) => {
2124
- return openBlock(), createBlock(_sfc_main$v, {
2124
+ return openBlock(), createBlock(_sfc_main$w, {
2125
2125
  key: `radio-${__props.name ?? "group"}-${option}`,
2126
2126
  type: "radio-input",
2127
2127
  "model-value": props.modelValue,
@@ -2136,11 +2136,11 @@ const _sfc_main$x = {
2136
2136
  };
2137
2137
  }
2138
2138
  };
2139
- const _hoisted_1$k = {
2139
+ const _hoisted_1$l = {
2140
2140
  key: 0,
2141
2141
  class: "min-h-[12rem] w-full rounded-lg border border-slate-300 bg-slate-50"
2142
2142
  };
2143
- const _sfc_main$w = {
2143
+ const _sfc_main$x = {
2144
2144
  __name: "TinyEditor",
2145
2145
  props: {
2146
2146
  modelValue: {
@@ -2247,7 +2247,7 @@ const _sfc_main$w = {
2247
2247
  };
2248
2248
  return (_ctx, _cache) => {
2249
2249
  return openBlock(), createElementBlock("div", { key: editorKey.value }, [
2250
- !isEditorReady.value ? (openBlock(), createElementBlock("div", _hoisted_1$k)) : (openBlock(), createBlock(unref(Editor), {
2250
+ !isEditorReady.value ? (openBlock(), createElementBlock("div", _hoisted_1$l)) : (openBlock(), createBlock(unref(Editor), {
2251
2251
  key: 1,
2252
2252
  "initial-value": content.value,
2253
2253
  "license-key": __props.licenseKey,
@@ -2261,17 +2261,17 @@ const _sfc_main$w = {
2261
2261
  };
2262
2262
  }
2263
2263
  };
2264
- const _hoisted_1$j = ["for"];
2265
- const _hoisted_2$d = {
2264
+ const _hoisted_1$k = ["for"];
2265
+ const _hoisted_2$e = {
2266
2266
  key: 1,
2267
2267
  class: "text-xs text-gray-500 mb-1 block"
2268
2268
  };
2269
- const _hoisted_3$9 = {
2269
+ const _hoisted_3$a = {
2270
2270
  key: 17,
2271
2271
  class: "flex items-center mt-2 text-sm text-red-600"
2272
2272
  };
2273
2273
  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";
2274
- const _sfc_main$v = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
2274
+ const _sfc_main$w = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
2275
2275
  __name: "InputGroup",
2276
2276
  props: {
2277
2277
  type: {
@@ -2636,15 +2636,15 @@ const _sfc_main$v = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
2636
2636
  key: 0,
2637
2637
  for: fieldId.value,
2638
2638
  class: "text-base font-semibold text-gray-900 dark:text-gray-50 mb-1 block"
2639
- }, toDisplayString(__props.label), 9, _hoisted_1$j)) : createCommentVNode("", true),
2640
- __props.helperText && !showsInlineChoiceControl.value ? (openBlock(), createElementBlock("span", _hoisted_2$d, toDisplayString(__props.helperText), 1)) : createCommentVNode("", true),
2641
- isTextareaType.value ? (openBlock(), createBlock(_sfc_main$G, mergeProps({ key: 2 }, textAreaBindings.value, {
2639
+ }, toDisplayString(__props.label), 9, _hoisted_1$k)) : createCommentVNode("", true),
2640
+ __props.helperText && !showsInlineChoiceControl.value ? (openBlock(), createElementBlock("span", _hoisted_2$e, toDisplayString(__props.helperText), 1)) : createCommentVNode("", true),
2641
+ isTextareaType.value ? (openBlock(), createBlock(_sfc_main$H, mergeProps({ key: 2 }, textAreaBindings.value, {
2642
2642
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => emit("update:modelValue", $event)),
2643
2643
  onBlur: _cache[1] || (_cache[1] = ($event) => emit("blur", $event))
2644
- }), null, 16)) : isTinyEditorType.value ? (openBlock(), createBlock(_sfc_main$w, mergeProps({ key: 3 }, tinyEditorBindings.value, {
2644
+ }), null, 16)) : isTinyEditorType.value ? (openBlock(), createBlock(_sfc_main$x, mergeProps({ key: 3 }, tinyEditorBindings.value, {
2645
2645
  "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => emit("update:modelValue", $event)),
2646
2646
  onBlur: _cache[3] || (_cache[3] = ($event) => emit("blur", $event))
2647
- }), null, 16)) : isSelectType.value ? (openBlock(), createBlock(_sfc_main$E, mergeProps({ key: 4 }, selectBindings.value, {
2647
+ }), null, 16)) : isSelectType.value ? (openBlock(), createBlock(_sfc_main$F, mergeProps({ key: 4 }, selectBindings.value, {
2648
2648
  "onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => emit("update:modelValue", $event)),
2649
2649
  onBlur: _cache[5] || (_cache[5] = ($event) => emit("blur", $event))
2650
2650
  }), null, 16)) : isDateType.value ? (openBlock(), createBlock(DateInput, mergeProps({ key: 5 }, dateBindings.value, {
@@ -2653,28 +2653,28 @@ const _sfc_main$v = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
2653
2653
  }), null, 16)) : isDateRangeType.value ? (openBlock(), createBlock(DateRangeInput, mergeProps({ key: 6 }, dateRangeBindings.value, {
2654
2654
  "onUpdate:modelValue": _cache[8] || (_cache[8] = ($event) => emit("update:modelValue", $event)),
2655
2655
  onBlur: _cache[9] || (_cache[9] = ($event) => emit("blur", $event))
2656
- }), null, 16)) : isTextLikeType.value ? (openBlock(), createBlock(_sfc_main$H, mergeProps({ key: 7 }, textInputBindings.value, {
2656
+ }), null, 16)) : isTextLikeType.value ? (openBlock(), createBlock(_sfc_main$I, mergeProps({ key: 7 }, textInputBindings.value, {
2657
2657
  "onUpdate:modelValue": _cache[10] || (_cache[10] = ($event) => emit("update:modelValue", $event)),
2658
2658
  onBlur: _cache[11] || (_cache[11] = ($event) => emit("blur", $event))
2659
- }), null, 16)) : isImageType.value ? (openBlock(), createBlock(_sfc_main$B, mergeProps({ key: 8 }, imageBindings.value, {
2659
+ }), null, 16)) : isImageType.value ? (openBlock(), createBlock(_sfc_main$C, mergeProps({ key: 8 }, imageBindings.value, {
2660
2660
  "onUpdate:modelValue": _cache[12] || (_cache[12] = ($event) => emit("update:modelValue", $event)),
2661
2661
  onBlur: _cache[13] || (_cache[13] = ($event) => emit("blur", $event))
2662
- }), null, 16)) : isCheckboxSingleType.value ? (openBlock(), createBlock(_sfc_main$I, mergeProps({ key: 9 }, checkboxSingleBindings.value, {
2662
+ }), null, 16)) : isCheckboxSingleType.value ? (openBlock(), createBlock(_sfc_main$J, mergeProps({ key: 9 }, checkboxSingleBindings.value, {
2663
2663
  "onUpdate:modelValue": _cache[14] || (_cache[14] = ($event) => emit("update:modelValue", $event)),
2664
2664
  onBlur: _cache[15] || (_cache[15] = ($event) => emit("blur", $event))
2665
- }), null, 16)) : isRadioSingleType.value ? (openBlock(), createBlock(_sfc_main$z, mergeProps({ key: 10 }, radioSingleBindings.value, {
2665
+ }), null, 16)) : isRadioSingleType.value ? (openBlock(), createBlock(_sfc_main$A, mergeProps({ key: 10 }, radioSingleBindings.value, {
2666
2666
  "onUpdate:modelValue": _cache[16] || (_cache[16] = ($event) => emit("update:modelValue", $event)),
2667
2667
  onBlur: _cache[17] || (_cache[17] = ($event) => emit("blur", $event))
2668
- }), null, 16)) : isToggleSingleType.value ? (openBlock(), createBlock(_sfc_main$y, mergeProps({ key: 11 }, toggleSingleBindings.value, {
2668
+ }), null, 16)) : isToggleSingleType.value ? (openBlock(), createBlock(_sfc_main$z, mergeProps({ key: 11 }, toggleSingleBindings.value, {
2669
2669
  "onUpdate:modelValue": _cache[18] || (_cache[18] = ($event) => emit("update:modelValue", $event)),
2670
2670
  onBlur: _cache[19] || (_cache[19] = ($event) => emit("blur", $event))
2671
- }), null, 16)) : isNotationType.value ? (openBlock(), createBlock(_sfc_main$A, mergeProps({ key: 12 }, notationBindings.value, {
2671
+ }), null, 16)) : isNotationType.value ? (openBlock(), createBlock(_sfc_main$B, mergeProps({ key: 12 }, notationBindings.value, {
2672
2672
  "onUpdate:modelValue": _cache[20] || (_cache[20] = ($event) => emit("update:modelValue", $event)),
2673
2673
  onBlur: _cache[21] || (_cache[21] = ($event) => emit("blur", $event))
2674
- }), null, 16)) : isCheckboxType.value ? (openBlock(), createBlock(_sfc_main$u, mergeProps({ key: 13 }, checkboxBindings.value, {
2674
+ }), null, 16)) : isCheckboxType.value ? (openBlock(), createBlock(_sfc_main$v, mergeProps({ key: 13 }, checkboxBindings.value, {
2675
2675
  "onUpdate:modelValue": _cache[22] || (_cache[22] = ($event) => emit("update:modelValue", $event)),
2676
2676
  onBlur: _cache[23] || (_cache[23] = ($event) => emit("blur", $event))
2677
- }), null, 16)) : isRadioType.value ? (openBlock(), createBlock(_sfc_main$x, mergeProps({ key: 14 }, radioBindings.value, {
2677
+ }), null, 16)) : isRadioType.value ? (openBlock(), createBlock(_sfc_main$y, mergeProps({ key: 14 }, radioBindings.value, {
2678
2678
  "onUpdate:modelValue": _cache[24] || (_cache[24] = ($event) => emit("update:modelValue", $event)),
2679
2679
  onBlur: _cache[25] || (_cache[25] = ($event) => emit("blur", $event))
2680
2680
  }), null, 16)) : isNoComponentType.value ? renderSlot(_ctx.$slots, "unsupported-type", {
@@ -2690,7 +2690,7 @@ const _sfc_main$v = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
2690
2690
  updateValue,
2691
2691
  attrs: unref(attrs)
2692
2692
  }),
2693
- hasError.value ? (openBlock(), createElementBlock("div", _hoisted_3$9, [
2693
+ hasError.value ? (openBlock(), createElementBlock("div", _hoisted_3$a, [
2694
2694
  createVNode(unref(ExclamationCircleIcon), { class: "mr-1 h-4 w-4 flex-shrink-0" }),
2695
2695
  createElementVNode("span", null, toDisplayString(__props.errorMessage), 1)
2696
2696
  ])) : createCommentVNode("", true)
@@ -2698,8 +2698,8 @@ const _sfc_main$v = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
2698
2698
  };
2699
2699
  }
2700
2700
  });
2701
- const _hoisted_1$i = { class: "flex flex-wrap gap-3" };
2702
- const _sfc_main$u = {
2701
+ const _hoisted_1$j = { class: "flex flex-wrap gap-3" };
2702
+ const _sfc_main$v = {
2703
2703
  __name: "CheckboxMultipleInput",
2704
2704
  props: {
2705
2705
  modelValue: {
@@ -2740,9 +2740,9 @@ const _sfc_main$u = {
2740
2740
  emit("update:modelValue", nextSelection);
2741
2741
  };
2742
2742
  return (_ctx, _cache) => {
2743
- return openBlock(), createElementBlock("div", _hoisted_1$i, [
2743
+ return openBlock(), createElementBlock("div", _hoisted_1$j, [
2744
2744
  (openBlock(true), createElementBlock(Fragment, null, renderList(normalizedOptions.value, (option) => {
2745
- return openBlock(), createBlock(_sfc_main$v, {
2745
+ return openBlock(), createBlock(_sfc_main$w, {
2746
2746
  key: `checkbox-${option}`,
2747
2747
  type: "checkbox-input",
2748
2748
  name: __props.name,
@@ -2758,6 +2758,153 @@ const _sfc_main$u = {
2758
2758
  };
2759
2759
  }
2760
2760
  };
2761
+ const _hoisted_1$i = { class: "relative" };
2762
+ const _hoisted_2$d = ["disabled", "aria-label"];
2763
+ const _hoisted_3$9 = ["value", "disabled"];
2764
+ const _hoisted_4$7 = ["value", "disabled"];
2765
+ const DEFAULT_COLOR = "#000000";
2766
+ const DEFAULT_MAX_LENGTH = 7;
2767
+ const _sfc_main$u = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
2768
+ __name: "ColorPicker",
2769
+ props: {
2770
+ modelValue: {
2771
+ type: [String, null],
2772
+ default: ""
2773
+ },
2774
+ disabled: {
2775
+ type: Boolean,
2776
+ default: false
2777
+ },
2778
+ disabledClass: {
2779
+ type: String,
2780
+ default: "!border-neutral-200 !bg-neutral-100 !text-neutral-500 dark:!border-neutral-800 dark:!bg-neutral-900 dark:!text-neutral-500"
2781
+ }
2782
+ },
2783
+ emits: ["update:modelValue", "blur"],
2784
+ setup(__props, { expose: __expose, emit: __emit }) {
2785
+ const props = __props;
2786
+ const emit = __emit;
2787
+ const attrs = useAttrs();
2788
+ const textInput = ref(null);
2789
+ const nativeInput = ref(null);
2790
+ const normalizeHexColor = (value) => {
2791
+ if (typeof value !== "string") {
2792
+ return "";
2793
+ }
2794
+ const trimmed = value.trim();
2795
+ if (trimmed === "") {
2796
+ return "";
2797
+ }
2798
+ const withHash = trimmed.startsWith("#") ? trimmed : `#${trimmed}`;
2799
+ const shortMatch = withHash.match(/^#([0-9a-fA-F]{3})$/);
2800
+ if (shortMatch) {
2801
+ const [, shortValue] = shortMatch;
2802
+ return `#${shortValue.split("").map((char) => char.repeat(2)).join("").toUpperCase()}`;
2803
+ }
2804
+ const longMatch = withHash.match(/^#([0-9a-fA-F]{6})$/);
2805
+ if (longMatch) {
2806
+ return `#${longMatch[1].toUpperCase()}`;
2807
+ }
2808
+ return "";
2809
+ };
2810
+ const normalizedModelValue = computed(() => normalizeHexColor(props.modelValue));
2811
+ const fallbackColor = computed(() => normalizedModelValue.value || DEFAULT_COLOR);
2812
+ const displayValue = ref(normalizedModelValue.value);
2813
+ const textInputAttrs = computed(() => {
2814
+ const { class: _class, type: _type, ...rest } = attrs;
2815
+ if (rest.maxlength === void 0) {
2816
+ rest.maxlength = DEFAULT_MAX_LENGTH;
2817
+ }
2818
+ return rest;
2819
+ });
2820
+ const textInputClasses = computed(() => [
2821
+ "w-full min-w-0 rounded-lg border border-neutral-200 bg-white px-4 py-3 text-sm text-neutral-950 shadow-sm outline-none transition-colors placeholder:text-neutral-400 focus:border-neutral-900 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",
2822
+ "pl-16",
2823
+ attrs.class
2824
+ ]);
2825
+ watch(normalizedModelValue, (nextValue) => {
2826
+ displayValue.value = nextValue;
2827
+ });
2828
+ const emitNormalizedColor = (value) => {
2829
+ const normalized = normalizeHexColor(value);
2830
+ if (!normalized) {
2831
+ return false;
2832
+ }
2833
+ emit("update:modelValue", normalized);
2834
+ return true;
2835
+ };
2836
+ const handleTextInput = (event) => {
2837
+ const nextValue = String(event.target?.value ?? "");
2838
+ displayValue.value = nextValue;
2839
+ emitNormalizedColor(nextValue);
2840
+ };
2841
+ const handleNativeInput = (event) => {
2842
+ const nextValue = String(event.target?.value ?? "");
2843
+ const normalized = normalizeHexColor(nextValue) || DEFAULT_COLOR;
2844
+ displayValue.value = normalized;
2845
+ emit("update:modelValue", normalized);
2846
+ };
2847
+ const handleBlur = (event) => {
2848
+ displayValue.value = normalizedModelValue.value;
2849
+ emit("blur", event);
2850
+ };
2851
+ const openNativePicker = () => {
2852
+ if (props.disabled) {
2853
+ return;
2854
+ }
2855
+ nativeInput.value?.click();
2856
+ };
2857
+ onMounted(() => {
2858
+ if (textInput.value?.hasAttribute("autofocus")) {
2859
+ textInput.value.focus();
2860
+ }
2861
+ });
2862
+ __expose({ focus: () => textInput.value?.focus() });
2863
+ return (_ctx, _cache) => {
2864
+ return openBlock(), createElementBlock("div", _hoisted_1$i, [
2865
+ createElementVNode("button", {
2866
+ type: "button",
2867
+ class: normalizeClass(["absolute inset-y-0 left-0 my-2 ml-2 inline-flex w-10 items-center justify-center rounded-md border border-neutral-200 bg-white shadow-sm transition-colors focus:outline-none focus:ring-2 focus:ring-neutral-950/10 dark:border-neutral-800 dark:bg-neutral-950 dark:focus:ring-neutral-100/10", props.disabled ? "cursor-not-allowed opacity-60" : "cursor-pointer"]),
2868
+ disabled: props.disabled,
2869
+ "aria-label": `Choose color${normalizedModelValue.value ? ` ${normalizedModelValue.value}` : ""}`,
2870
+ onClick: openNativePicker
2871
+ }, [
2872
+ createElementVNode("span", {
2873
+ class: "h-5 w-5 rounded border border-black/10 dark:border-white/10",
2874
+ style: normalizeStyle({ backgroundColor: fallbackColor.value })
2875
+ }, null, 4)
2876
+ ], 10, _hoisted_2$d),
2877
+ createElementVNode("input", {
2878
+ ref_key: "nativeInput",
2879
+ ref: nativeInput,
2880
+ type: "color",
2881
+ tabindex: "-1",
2882
+ "aria-hidden": "true",
2883
+ class: "pointer-events-none absolute h-0 w-0 opacity-0",
2884
+ value: fallbackColor.value,
2885
+ disabled: props.disabled,
2886
+ onInput: handleNativeInput,
2887
+ onChange: handleNativeInput
2888
+ }, null, 40, _hoisted_3$9),
2889
+ createElementVNode("input", mergeProps({
2890
+ ref_key: "textInput",
2891
+ ref: textInput
2892
+ }, textInputAttrs.value, {
2893
+ type: "text",
2894
+ inputmode: "text",
2895
+ spellcheck: "false",
2896
+ autocapitalize: "characters",
2897
+ placeholder: "#RRGGBB",
2898
+ class: [textInputClasses.value, props.disabled ? props.disabledClass : null],
2899
+ value: displayValue.value,
2900
+ disabled: props.disabled,
2901
+ onInput: handleTextInput,
2902
+ onBlur: handleBlur
2903
+ }), null, 16, _hoisted_4$7)
2904
+ ]);
2905
+ };
2906
+ }
2907
+ });
2761
2908
  const _sfc_main$t = {
2762
2909
  __name: "Modal",
2763
2910
  props: {
@@ -3395,7 +3542,7 @@ const _sfc_main$k = {
3395
3542
  return (_ctx, _cache) => {
3396
3543
  return openBlock(), createElementBlock("div", _hoisted_1$9, [
3397
3544
  createElementVNode("div", _hoisted_2$7, [
3398
- createVNode(_sfc_main$Q)
3545
+ createVNode(_sfc_main$R)
3399
3546
  ])
3400
3547
  ]);
3401
3548
  };
@@ -3921,7 +4068,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
3921
4068
  const props = __props;
3922
4069
  const { state, toggleSidebar } = useSidebar();
3923
4070
  return (_ctx, _cache) => {
3924
- return openBlock(), createBlock(_sfc_main$K, {
4071
+ return openBlock(), createBlock(_sfc_main$L, {
3925
4072
  "data-sidebar": "trigger",
3926
4073
  "data-slot": "sidebar-trigger",
3927
4074
  variant: "ghost",
@@ -4172,7 +4319,7 @@ const _sfc_main$4 = {
4172
4319
  ]),
4173
4320
  __props.showDeletedToggle || __props.count !== null || _ctx.$slots.controls ? (openBlock(), createElementBlock("div", _hoisted_7$2, [
4174
4321
  __props.showDeletedToggle ? (openBlock(), createElementBlock("div", _hoisted_8$2, [
4175
- createVNode(_sfc_main$y, {
4322
+ createVNode(_sfc_main$z, {
4176
4323
  modelValue: showDeletedModel.value,
4177
4324
  "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => showDeletedModel.value = $event),
4178
4325
  label: __props.showDeletedLabel
@@ -4990,7 +5137,7 @@ const _sfc_main$2 = {
4990
5137
  isEditingRow(item, index) && column.slot && unref(slots)[getEditSlotName(column)] ? renderSlot(_ctx.$slots, getEditSlotName(column), mergeProps({
4991
5138
  key: 0,
4992
5139
  ref_for: true
4993
- }, getSlotBindings(item, column, index))) : isEditingRow(item, index) && column.input ? (openBlock(), createBlock(_sfc_main$v, {
5140
+ }, getSlotBindings(item, column, index))) : isEditingRow(item, index) && column.input ? (openBlock(), createBlock(_sfc_main$w, {
4994
5141
  key: 1,
4995
5142
  type: getInputType(column),
4996
5143
  class: normalizeClass(getInputClass(column)),
@@ -5023,7 +5170,7 @@ const _sfc_main$2 = {
5023
5170
  key: 0,
5024
5171
  ref_for: true
5025
5172
  }, getSlotBindings(item, null, index))) : createCommentVNode("", true),
5026
- __props.rowEditing && isEditingRow(item, index) ? (openBlock(), createBlock(_sfc_main$K, {
5173
+ __props.rowEditing && isEditingRow(item, index) ? (openBlock(), createBlock(_sfc_main$L, {
5027
5174
  key: 1,
5028
5175
  type: "button",
5029
5176
  variant: "outline",
@@ -5036,7 +5183,7 @@ const _sfc_main$2 = {
5036
5183
  createVNode(unref(CheckIcon), { class: "size-4" })
5037
5184
  ]),
5038
5185
  _: 1
5039
- }, 8, ["title", "aria-label", "onClick"])) : __props.rowEditing ? (openBlock(), createBlock(_sfc_main$K, {
5186
+ }, 8, ["title", "aria-label", "onClick"])) : __props.rowEditing ? (openBlock(), createBlock(_sfc_main$L, {
5040
5187
  key: 2,
5041
5188
  type: "button",
5042
5189
  variant: "secondary",
@@ -5209,37 +5356,38 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
5209
5356
  });
5210
5357
  const components = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
5211
5358
  __proto__: null,
5212
- ActionCard: _sfc_main$P,
5213
- ActionMessage: _sfc_main$O,
5214
- ActionSection: _sfc_main$M,
5215
- Badge: _sfc_main$L,
5216
- Button: _sfc_main$K,
5217
- Card: _sfc_main$R,
5218
- CardTabs: _sfc_main$S,
5219
- Checkbox: _sfc_main$J,
5220
- CheckboxInput: _sfc_main$I,
5221
- CheckboxMultipleInput: _sfc_main$u,
5359
+ ActionCard: _sfc_main$Q,
5360
+ ActionMessage: _sfc_main$P,
5361
+ ActionSection: _sfc_main$N,
5362
+ Badge: _sfc_main$M,
5363
+ Button: _sfc_main$L,
5364
+ Card: _sfc_main$S,
5365
+ CardTabs: _sfc_main$T,
5366
+ Checkbox: _sfc_main$K,
5367
+ CheckboxInput: _sfc_main$J,
5368
+ CheckboxMultipleInput: _sfc_main$v,
5369
+ ColorPicker: _sfc_main$u,
5222
5370
  ConfirmationModal: _sfc_main$s,
5223
- CustomSelect: _sfc_main$F,
5371
+ CustomSelect: _sfc_main$G,
5224
5372
  DateInput,
5225
5373
  DateRangeInput,
5226
5374
  DialogModal: _sfc_main$r,
5227
- Divider: _sfc_main$Q,
5375
+ Divider: _sfc_main$R,
5228
5376
  Dropdown: _sfc_main$q,
5229
5377
  DropdownLink: _sfc_main$p,
5230
5378
  FormSection: _sfc_main$o,
5231
- ImageInput: _sfc_main$B,
5379
+ ImageInput: _sfc_main$C,
5232
5380
  InputError: _sfc_main$n,
5233
- InputGroup: _sfc_main$v,
5381
+ InputGroup: _sfc_main$w,
5234
5382
  InputLabel: _sfc_main$m,
5235
5383
  LinkButton: _sfc_main$l,
5236
5384
  Modal: _sfc_main$t,
5237
- NotationInput: _sfc_main$A,
5238
- RadioInput: _sfc_main$z,
5239
- RadioMultipleInput: _sfc_main$x,
5385
+ NotationInput: _sfc_main$B,
5386
+ RadioInput: _sfc_main$A,
5387
+ RadioMultipleInput: _sfc_main$y,
5240
5388
  SectionBorder: _sfc_main$k,
5241
5389
  SectionTitle,
5242
- SelectInput: _sfc_main$E,
5390
+ SelectInput: _sfc_main$F,
5243
5391
  Sidebar: _sfc_main$j,
5244
5392
  SidebarContent: _sfc_main$i,
5245
5393
  SidebarFooter: _sfc_main$h,
@@ -5257,13 +5405,13 @@ const components = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePr
5257
5405
  TableList: _sfc_main$3,
5258
5406
  TableListForm: _sfc_main$2,
5259
5407
  TableSearch: _sfc_main$4,
5260
- TextArea: _sfc_main$G,
5261
- TextInput: _sfc_main$H,
5408
+ TextArea: _sfc_main$H,
5409
+ TextInput: _sfc_main$I,
5262
5410
  ThSortable: _sfc_main$5,
5263
- TinyEditor: _sfc_main$w,
5411
+ TinyEditor: _sfc_main$x,
5264
5412
  Toast: _sfc_main$1,
5265
5413
  ToastContainer: _sfc_main,
5266
- ToggleInput: _sfc_main$y,
5414
+ ToggleInput: _sfc_main$z,
5267
5415
  useSidebar
5268
5416
  }, Symbol.toStringTag, { value: "Module" }));
5269
5417
  const plugin = {
@@ -5274,62 +5422,63 @@ const plugin = {
5274
5422
  }
5275
5423
  };
5276
5424
  export {
5277
- _sfc_main$1 as $,
5278
- _sfc_main$x as A,
5279
- _sfc_main$k as B,
5280
- _sfc_main$E as C,
5425
+ _sfc_main$x as $,
5426
+ _sfc_main$A as A,
5427
+ _sfc_main$y as B,
5428
+ _sfc_main$k as C,
5281
5429
  DateInput as D,
5282
- _sfc_main$j as E,
5283
- _sfc_main$i as F,
5284
- _sfc_main$h as G,
5285
- _sfc_main$g as H,
5286
- _sfc_main$f as I,
5287
- _sfc_main$e as J,
5288
- _sfc_main$d as K,
5289
- _sfc_main$c as L,
5290
- _sfc_main$b as M,
5291
- _sfc_main$a as N,
5292
- _sfc_main$9 as O,
5293
- _sfc_main$8 as P,
5294
- _sfc_main$7 as Q,
5295
- _sfc_main$6 as R,
5430
+ _sfc_main$F as E,
5431
+ _sfc_main$j as F,
5432
+ _sfc_main$i as G,
5433
+ _sfc_main$h as H,
5434
+ _sfc_main$g as I,
5435
+ _sfc_main$f as J,
5436
+ _sfc_main$e as K,
5437
+ _sfc_main$d as L,
5438
+ _sfc_main$c as M,
5439
+ _sfc_main$b as N,
5440
+ _sfc_main$a as O,
5441
+ _sfc_main$9 as P,
5442
+ _sfc_main$8 as Q,
5443
+ _sfc_main$7 as R,
5296
5444
  SectionTitle as S,
5297
- _sfc_main$3 as T,
5298
- _sfc_main$2 as U,
5299
- _sfc_main$4 as V,
5300
- _sfc_main$G as W,
5445
+ _sfc_main$6 as T,
5446
+ _sfc_main$3 as U,
5447
+ _sfc_main$2 as V,
5448
+ _sfc_main$4 as W,
5301
5449
  _sfc_main$H as X,
5302
- _sfc_main$5 as Y,
5303
- _sfc_main$w as Z,
5304
- _sfc_main$P as _,
5305
- _sfc_main$O as a,
5306
- _sfc_main as a0,
5307
- _sfc_main$y as a1,
5308
- useSidebar as a2,
5309
- _sfc_main$M as b,
5310
- _sfc_main$L as c,
5311
- _sfc_main$K as d,
5312
- _sfc_main$R as e,
5313
- _sfc_main$S as f,
5314
- _sfc_main$J as g,
5315
- _sfc_main$I as h,
5316
- _sfc_main$u as i,
5317
- _sfc_main$s as j,
5318
- _sfc_main$F as k,
5319
- DateRangeInput as l,
5320
- _sfc_main$r as m,
5321
- _sfc_main$Q as n,
5322
- _sfc_main$q as o,
5323
- _sfc_main$p as p,
5324
- plugin as q,
5325
- _sfc_main$o as r,
5326
- _sfc_main$B as s,
5327
- _sfc_main$n as t,
5328
- _sfc_main$v as u,
5329
- _sfc_main$m as v,
5330
- _sfc_main$l as w,
5331
- _sfc_main$t as x,
5332
- _sfc_main$A as y,
5333
- _sfc_main$z as z
5450
+ _sfc_main$I as Y,
5451
+ _sfc_main$5 as Z,
5452
+ _sfc_main$Q as _,
5453
+ _sfc_main$P as a,
5454
+ _sfc_main$1 as a0,
5455
+ _sfc_main as a1,
5456
+ _sfc_main$z as a2,
5457
+ useSidebar as a3,
5458
+ _sfc_main$N as b,
5459
+ _sfc_main$M as c,
5460
+ _sfc_main$L as d,
5461
+ _sfc_main$S as e,
5462
+ _sfc_main$T as f,
5463
+ _sfc_main$K as g,
5464
+ _sfc_main$J as h,
5465
+ _sfc_main$v as i,
5466
+ _sfc_main$u as j,
5467
+ _sfc_main$s as k,
5468
+ _sfc_main$G as l,
5469
+ DateRangeInput as m,
5470
+ _sfc_main$r as n,
5471
+ _sfc_main$R as o,
5472
+ _sfc_main$q as p,
5473
+ _sfc_main$p as q,
5474
+ plugin as r,
5475
+ _sfc_main$o as s,
5476
+ _sfc_main$C as t,
5477
+ _sfc_main$n as u,
5478
+ _sfc_main$w as v,
5479
+ _sfc_main$m as w,
5480
+ _sfc_main$l as x,
5481
+ _sfc_main$t as y,
5482
+ _sfc_main$B as z
5334
5483
  };
5335
- //# sourceMappingURL=plugin-COD45Fax.js.map
5484
+ //# sourceMappingURL=plugin-ODQo1Iv8.js.map