cisse-vue-ui 0.7.0 → 0.7.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/{TagsInput-C4wBPfrj.js → TagsInput-CFAC_MSw.js} +357 -295
- package/dist/TagsInput-CFAC_MSw.js.map +1 -0
- package/dist/{TagsInput-ClqgyR9O.cjs → TagsInput-DVebLEH2.cjs} +356 -294
- package/dist/TagsInput-DVebLEH2.cjs.map +1 -0
- package/dist/cisse-vue-ui.css +4 -4
- package/dist/components/form/EmailInput.vue.d.ts +1 -1
- package/dist/components/form/MoneyInput.vue.d.ts +1 -1
- package/dist/components/form/NumberInput.vue.d.ts +1 -1
- package/dist/components/form/OTPInput.vue.d.ts +1 -1
- package/dist/components/form/PasswordInput.vue.d.ts +1 -1
- package/dist/components/form/PercentInput.vue.d.ts +1 -1
- package/dist/components/form/PhoneInput.vue.d.ts +14 -1
- package/dist/components/form/QuantityInput.vue.d.ts +1 -1
- package/dist/components/form/SearchInput.vue.d.ts +18 -4
- package/dist/components/form/TagsInput.vue.d.ts +1 -1
- package/dist/components/form/URLInput.vue.d.ts +1 -1
- package/dist/components/form/index.cjs +1 -1
- package/dist/components/form/index.js +1 -1
- package/dist/components/index.cjs +1 -1
- package/dist/components/index.js +1 -1
- package/dist/{index-CRoTVc47.cjs → index-Bl5eyNdr.cjs} +2 -2
- package/dist/{index-CRoTVc47.cjs.map → index-Bl5eyNdr.cjs.map} +1 -1
- package/dist/{index-D49k0PP0.js → index-Cke8qLRH.js} +2 -2
- package/dist/index-Cke8qLRH.js.map +1 -0
- package/dist/index.cjs +2 -2
- package/dist/index.js +2 -2
- package/package.json +1 -1
- package/dist/TagsInput-C4wBPfrj.js.map +0 -1
- package/dist/TagsInput-ClqgyR9O.cjs.map +0 -1
- package/dist/index-D49k0PP0.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent, createElementBlock, openBlock, renderSlot, createTextVNode, toDisplayString,
|
|
1
|
+
import { defineComponent, createElementBlock, openBlock, renderSlot, createTextVNode, toDisplayString, useSlots, computed, normalizeClass, createCommentVNode, createBlock, unref, mergeModels, useModel, withCtx, withDirectives, createElementVNode, mergeProps, vModelDynamic, ref, watch, createVNode, Teleport, Transition, normalizeStyle, vModelText, Fragment, renderList, nextTick, withModifiers, withKeys, vShow, createSlots, onMounted, TransitionGroup } from "vue";
|
|
2
2
|
import { u as useId } from "./useId-xeHj7rkg.js";
|
|
3
3
|
import { Icon } from "@iconify/vue";
|
|
4
4
|
import { u as useDropdown } from "./useDropdown-iVu14E6s.js";
|
|
@@ -50,12 +50,80 @@ const _sfc_main$q = /* @__PURE__ */ defineComponent({
|
|
|
50
50
|
});
|
|
51
51
|
const _hoisted_1$p = {
|
|
52
52
|
key: 0,
|
|
53
|
-
class: "
|
|
53
|
+
class: "absolute left-3 top-1/2 -translate-y-1/2 pointer-events-none text-gray-400"
|
|
54
|
+
};
|
|
55
|
+
const _hoisted_2$h = {
|
|
56
|
+
key: 1,
|
|
57
|
+
class: "absolute right-3 top-1/2 -translate-y-1/2 flex items-center gap-1"
|
|
54
58
|
};
|
|
55
|
-
const _hoisted_2$j = ["id", "disabled", "name", "placeholder", "type", "required", "aria-invalid", "aria-required", "aria-describedby"];
|
|
56
|
-
const _hoisted_3$g = ["id", "disabled", "name", "placeholder", "type", "required", "aria-invalid", "aria-required", "aria-describedby"];
|
|
57
|
-
const baseInputClass = "block w-full rounded-xl border border-gray-200 bg-gray-50 text-sm text-gray-900 placeholder-gray-400 transition-all focus:border-primary-500 focus:ring-2 focus:ring-primary-500 focus:bg-white focus:outline-hidden disabled:border-gray-200 disabled:bg-gray-100 disabled:text-gray-500 disabled:cursor-not-allowed dark:border-slate-600 dark:bg-slate-700 dark:text-white dark:placeholder-gray-500 dark:focus:border-primary-500 dark:focus:ring-primary-500 dark:focus:bg-slate-600 dark:disabled:bg-slate-800 dark:disabled:text-gray-500";
|
|
58
59
|
const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
60
|
+
__name: "InputWrapper",
|
|
61
|
+
props: {
|
|
62
|
+
icon: {},
|
|
63
|
+
iconRight: {},
|
|
64
|
+
size: { default: "md" },
|
|
65
|
+
invalid: { type: Boolean },
|
|
66
|
+
disabled: { type: Boolean },
|
|
67
|
+
wrapperClass: {}
|
|
68
|
+
},
|
|
69
|
+
setup(__props, { expose: __expose }) {
|
|
70
|
+
const props = __props;
|
|
71
|
+
const slots = useSlots();
|
|
72
|
+
const hasLeftIcon = computed(() => props.icon || slots.icon);
|
|
73
|
+
const hasRightContent = computed(() => props.iconRight || slots.actions);
|
|
74
|
+
const inputClass = computed(() => [
|
|
75
|
+
// Base styles
|
|
76
|
+
"block w-full rounded-xl border text-sm transition-all",
|
|
77
|
+
"border-gray-200 bg-gray-50 text-gray-900 placeholder-gray-400",
|
|
78
|
+
"focus:border-primary-500 focus:ring-2 focus:ring-primary-500 focus:bg-white focus:outline-hidden",
|
|
79
|
+
"disabled:border-gray-200 disabled:bg-gray-100 disabled:text-gray-500 disabled:cursor-not-allowed",
|
|
80
|
+
// Dark mode
|
|
81
|
+
"dark:border-slate-600 dark:bg-slate-700 dark:text-white dark:placeholder-gray-500",
|
|
82
|
+
"dark:focus:border-primary-500 dark:focus:ring-primary-500 dark:focus:bg-slate-600",
|
|
83
|
+
"dark:disabled:bg-slate-800 dark:disabled:text-gray-500",
|
|
84
|
+
// Padding based on icons/actions
|
|
85
|
+
hasLeftIcon.value ? "pl-10" : "pl-4",
|
|
86
|
+
hasRightContent.value ? "pr-10" : "pr-4",
|
|
87
|
+
// Size
|
|
88
|
+
props.size === "sm" && "py-2 text-xs",
|
|
89
|
+
props.size === "md" && "py-3 text-sm",
|
|
90
|
+
props.size === "lg" && "py-4 text-base",
|
|
91
|
+
// Invalid state
|
|
92
|
+
props.invalid && "border-red-500 focus:border-red-500 focus:ring-red-500 dark:border-red-500"
|
|
93
|
+
]);
|
|
94
|
+
__expose({ inputClass });
|
|
95
|
+
return (_ctx, _cache) => {
|
|
96
|
+
return openBlock(), createElementBlock("div", {
|
|
97
|
+
class: normalizeClass(["relative", __props.wrapperClass])
|
|
98
|
+
}, [
|
|
99
|
+
hasLeftIcon.value ? (openBlock(), createElementBlock("div", _hoisted_1$p, [
|
|
100
|
+
renderSlot(_ctx.$slots, "icon", {}, () => [
|
|
101
|
+
__props.icon ? (openBlock(), createBlock(unref(Icon), {
|
|
102
|
+
key: 0,
|
|
103
|
+
icon: __props.icon,
|
|
104
|
+
class: "size-5"
|
|
105
|
+
}, null, 8, ["icon"])) : createCommentVNode("", true)
|
|
106
|
+
])
|
|
107
|
+
])) : createCommentVNode("", true),
|
|
108
|
+
renderSlot(_ctx.$slots, "default", { inputClass: inputClass.value }),
|
|
109
|
+
hasRightContent.value ? (openBlock(), createElementBlock("div", _hoisted_2$h, [
|
|
110
|
+
renderSlot(_ctx.$slots, "actions", {}, () => [
|
|
111
|
+
__props.iconRight ? (openBlock(), createBlock(unref(Icon), {
|
|
112
|
+
key: 0,
|
|
113
|
+
icon: __props.iconRight,
|
|
114
|
+
class: "size-5 text-gray-400 pointer-events-none"
|
|
115
|
+
}, null, 8, ["icon"])) : createCommentVNode("", true)
|
|
116
|
+
])
|
|
117
|
+
])) : createCommentVNode("", true)
|
|
118
|
+
], 2);
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
});
|
|
122
|
+
const _hoisted_1$o = ["id", "disabled", "name", "placeholder", "type", "required", "aria-invalid", "aria-required", "aria-describedby"];
|
|
123
|
+
const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
124
|
+
...{
|
|
125
|
+
inheritAttrs: false
|
|
126
|
+
},
|
|
59
127
|
__name: "FormInput",
|
|
60
128
|
props: /* @__PURE__ */ mergeModels({
|
|
61
129
|
type: { default: "text" },
|
|
@@ -78,58 +146,36 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
78
146
|
const props = __props;
|
|
79
147
|
const modelValue = useModel(__props, "modelValue");
|
|
80
148
|
return (_ctx, _cache) => {
|
|
81
|
-
return
|
|
82
|
-
props.icon
|
|
83
|
-
|
|
84
|
-
icon: props.icon,
|
|
85
|
-
class: "absolute left-3 top-1/2 -translate-y-1/2 size-5 text-gray-400 pointer-events-none"
|
|
86
|
-
}, null, 8, ["icon"])) : createCommentVNode("", true),
|
|
87
|
-
withDirectives(createElementVNode("input", mergeProps({
|
|
88
|
-
id: props.id ?? props.name ?? "",
|
|
89
|
-
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event),
|
|
90
|
-
disabled: props.disabled,
|
|
91
|
-
name: props.name ?? "",
|
|
92
|
-
placeholder: props.placeholder,
|
|
93
|
-
type: props.type,
|
|
94
|
-
required: props.required,
|
|
95
|
-
"aria-invalid": props.invalid || void 0,
|
|
96
|
-
"aria-required": props.required || void 0,
|
|
97
|
-
"aria-describedby": props.describedBy || void 0,
|
|
98
|
-
class: [
|
|
99
|
-
baseInputClass,
|
|
100
|
-
"py-3",
|
|
101
|
-
props.icon ? "pl-10" : "pl-4",
|
|
102
|
-
props.iconRight ? "pr-10" : "pr-4"
|
|
103
|
-
]
|
|
104
|
-
}, _ctx.$attrs), null, 16, _hoisted_2$j), [
|
|
105
|
-
[vModelDynamic, modelValue.value]
|
|
106
|
-
]),
|
|
107
|
-
props.iconRight ? (openBlock(), createBlock(unref(Icon), {
|
|
108
|
-
key: 1,
|
|
109
|
-
icon: props.iconRight,
|
|
110
|
-
class: "absolute right-3 top-1/2 -translate-y-1/2 size-5 text-gray-400 pointer-events-none"
|
|
111
|
-
}, null, 8, ["icon"])) : createCommentVNode("", true)
|
|
112
|
-
])) : withDirectives((openBlock(), createElementBlock("input", mergeProps({
|
|
113
|
-
key: 1,
|
|
114
|
-
id: props.id ?? props.name ?? "",
|
|
115
|
-
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => modelValue.value = $event),
|
|
149
|
+
return openBlock(), createBlock(_sfc_main$p, {
|
|
150
|
+
icon: props.icon,
|
|
151
|
+
"icon-right": props.iconRight,
|
|
116
152
|
disabled: props.disabled,
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
153
|
+
invalid: props.invalid
|
|
154
|
+
}, {
|
|
155
|
+
default: withCtx(({ inputClass }) => [
|
|
156
|
+
withDirectives(createElementVNode("input", mergeProps({
|
|
157
|
+
id: props.id ?? props.name ?? "",
|
|
158
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event),
|
|
159
|
+
disabled: props.disabled,
|
|
160
|
+
name: props.name ?? "",
|
|
161
|
+
placeholder: props.placeholder,
|
|
162
|
+
type: props.type,
|
|
163
|
+
required: props.required,
|
|
164
|
+
"aria-invalid": props.invalid || void 0,
|
|
165
|
+
"aria-required": props.required || void 0,
|
|
166
|
+
"aria-describedby": props.describedBy || void 0,
|
|
167
|
+
class: inputClass
|
|
168
|
+
}, _ctx.$attrs), null, 16, _hoisted_1$o), [
|
|
169
|
+
[vModelDynamic, modelValue.value]
|
|
170
|
+
])
|
|
171
|
+
]),
|
|
172
|
+
_: 1
|
|
173
|
+
}, 8, ["icon", "icon-right", "disabled", "invalid"]);
|
|
128
174
|
};
|
|
129
175
|
}
|
|
130
176
|
});
|
|
131
|
-
const _hoisted_1$
|
|
132
|
-
const _hoisted_2$
|
|
177
|
+
const _hoisted_1$n = { class: "relative" };
|
|
178
|
+
const _hoisted_2$g = ["id", "disabled", "aria-expanded", "aria-controls", "aria-invalid", "aria-describedby"];
|
|
133
179
|
const _hoisted_3$f = { class: "flex-1 truncate" };
|
|
134
180
|
const _hoisted_4$b = ["id", "aria-label"];
|
|
135
181
|
const _hoisted_5$8 = {
|
|
@@ -150,7 +196,7 @@ const _hoisted_10$4 = {
|
|
|
150
196
|
"aria-hidden": "true"
|
|
151
197
|
};
|
|
152
198
|
const _hoisted_11$4 = { class: "flex-1" };
|
|
153
|
-
const _sfc_main$
|
|
199
|
+
const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
154
200
|
__name: "FormSelect",
|
|
155
201
|
props: /* @__PURE__ */ mergeModels({
|
|
156
202
|
options: {},
|
|
@@ -270,7 +316,7 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
270
316
|
return [base, state, text, props.triggerClass];
|
|
271
317
|
});
|
|
272
318
|
return (_ctx, _cache) => {
|
|
273
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
319
|
+
return openBlock(), createElementBlock("div", _hoisted_1$n, [
|
|
274
320
|
createElementVNode("button", {
|
|
275
321
|
id: triggerId.value,
|
|
276
322
|
ref_key: "triggerRef",
|
|
@@ -297,7 +343,7 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
297
343
|
class: normalizeClass(["size-4 shrink-0 text-gray-400 transition-transform", unref(isOpen) && "rotate-180"]),
|
|
298
344
|
"aria-hidden": "true"
|
|
299
345
|
}, null, 8, ["class"])
|
|
300
|
-
], 42, _hoisted_2$
|
|
346
|
+
], 42, _hoisted_2$g),
|
|
301
347
|
(openBlock(), createBlock(Teleport, {
|
|
302
348
|
to: "body",
|
|
303
349
|
disabled: !__props.teleport
|
|
@@ -388,8 +434,8 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
388
434
|
};
|
|
389
435
|
}
|
|
390
436
|
});
|
|
391
|
-
const _hoisted_1$
|
|
392
|
-
const _sfc_main$
|
|
437
|
+
const _hoisted_1$m = ["hidden"];
|
|
438
|
+
const _sfc_main$m = /* @__PURE__ */ defineComponent({
|
|
393
439
|
__name: "FormGroup",
|
|
394
440
|
props: /* @__PURE__ */ mergeModels({
|
|
395
441
|
label: {},
|
|
@@ -442,7 +488,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
442
488
|
}, 8, ["html-for", "error"])) : createCommentVNode("", true)
|
|
443
489
|
]),
|
|
444
490
|
renderSlot(_ctx.$slots, "input", {}, () => [
|
|
445
|
-
isSelect.value ? (openBlock(), createBlock(_sfc_main$
|
|
491
|
+
isSelect.value ? (openBlock(), createBlock(_sfc_main$n, mergeProps({
|
|
446
492
|
key: 0,
|
|
447
493
|
modelValue: modelValue.value,
|
|
448
494
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event)
|
|
@@ -450,7 +496,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
450
496
|
id: inputId.value,
|
|
451
497
|
invalid: Boolean(__props.error),
|
|
452
498
|
"described-by": hasError.value ? helpId.value : void 0
|
|
453
|
-
}), null, 16, ["modelValue", "id", "invalid", "described-by"])) : (openBlock(), createBlock(_sfc_main$
|
|
499
|
+
}), null, 16, ["modelValue", "id", "invalid", "described-by"])) : (openBlock(), createBlock(_sfc_main$o, mergeProps({
|
|
454
500
|
key: 1,
|
|
455
501
|
modelValue: modelValue.value,
|
|
456
502
|
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => modelValue.value = $event)
|
|
@@ -471,53 +517,61 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
471
517
|
_: 1
|
|
472
518
|
}, 8, ["id"])) : createCommentVNode("", true)
|
|
473
519
|
])
|
|
474
|
-
], 12, _hoisted_1$
|
|
520
|
+
], 12, _hoisted_1$m);
|
|
475
521
|
};
|
|
476
522
|
}
|
|
477
523
|
});
|
|
478
|
-
const _hoisted_1$
|
|
479
|
-
const
|
|
480
|
-
|
|
524
|
+
const _hoisted_1$l = ["name", "placeholder", "disabled"];
|
|
525
|
+
const _sfc_main$l = /* @__PURE__ */ defineComponent({
|
|
526
|
+
...{
|
|
527
|
+
inheritAttrs: false
|
|
528
|
+
},
|
|
481
529
|
__name: "SearchInput",
|
|
482
|
-
props: {
|
|
483
|
-
modelValue: {},
|
|
530
|
+
props: /* @__PURE__ */ mergeModels({
|
|
484
531
|
placeholder: { default: "Search..." },
|
|
485
532
|
icon: { default: "lucide:search" },
|
|
486
|
-
disabled: { type: Boolean
|
|
487
|
-
|
|
533
|
+
disabled: { type: Boolean },
|
|
534
|
+
size: { default: "md" },
|
|
535
|
+
name: {}
|
|
536
|
+
}, {
|
|
537
|
+
"modelValue": { default: "" },
|
|
538
|
+
"modelModifiers": {}
|
|
539
|
+
}),
|
|
488
540
|
emits: ["update:modelValue"],
|
|
489
|
-
setup(__props
|
|
490
|
-
const
|
|
491
|
-
const
|
|
492
|
-
const target = event.target;
|
|
493
|
-
emit("update:modelValue", target.value);
|
|
494
|
-
};
|
|
541
|
+
setup(__props) {
|
|
542
|
+
const props = __props;
|
|
543
|
+
const modelValue = useModel(__props, "modelValue");
|
|
495
544
|
return (_ctx, _cache) => {
|
|
496
|
-
return openBlock(),
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
545
|
+
return openBlock(), createBlock(_sfc_main$p, {
|
|
546
|
+
icon: props.icon,
|
|
547
|
+
size: props.size,
|
|
548
|
+
disabled: props.disabled
|
|
549
|
+
}, {
|
|
550
|
+
default: withCtx(({ inputClass }) => [
|
|
551
|
+
withDirectives(createElementVNode("input", mergeProps({
|
|
552
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event),
|
|
553
|
+
type: "text",
|
|
554
|
+
name: props.name,
|
|
555
|
+
placeholder: props.placeholder,
|
|
556
|
+
disabled: props.disabled,
|
|
557
|
+
class: inputClass
|
|
558
|
+
}, _ctx.$attrs), null, 16, _hoisted_1$l), [
|
|
559
|
+
[vModelText, modelValue.value]
|
|
560
|
+
])
|
|
561
|
+
]),
|
|
562
|
+
_: 1
|
|
563
|
+
}, 8, ["icon", "size", "disabled"]);
|
|
510
564
|
};
|
|
511
565
|
}
|
|
512
566
|
});
|
|
513
|
-
const _hoisted_1$
|
|
514
|
-
const _hoisted_2$
|
|
567
|
+
const _hoisted_1$k = ["id", "aria-checked", "aria-labelledby", "aria-describedby", "disabled"];
|
|
568
|
+
const _hoisted_2$f = {
|
|
515
569
|
key: 0,
|
|
516
570
|
class: "flex flex-col"
|
|
517
571
|
};
|
|
518
572
|
const _hoisted_3$e = ["id"];
|
|
519
573
|
const _hoisted_4$a = ["id"];
|
|
520
|
-
const _sfc_main$
|
|
574
|
+
const _sfc_main$k = /* @__PURE__ */ defineComponent({
|
|
521
575
|
__name: "Switch",
|
|
522
576
|
props: {
|
|
523
577
|
modelValue: { type: Boolean, default: false },
|
|
@@ -581,8 +635,8 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
|
|
|
581
635
|
]),
|
|
582
636
|
"aria-hidden": "true"
|
|
583
637
|
}, null, 2)
|
|
584
|
-
], 10, _hoisted_1$
|
|
585
|
-
__props.label || __props.description ? (openBlock(), createElementBlock("div", _hoisted_2$
|
|
638
|
+
], 10, _hoisted_1$k),
|
|
639
|
+
__props.label || __props.description ? (openBlock(), createElementBlock("div", _hoisted_2$f, [
|
|
586
640
|
__props.label ? (openBlock(), createElementBlock("span", {
|
|
587
641
|
key: 0,
|
|
588
642
|
id: labelId.value,
|
|
@@ -598,8 +652,8 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
|
|
|
598
652
|
};
|
|
599
653
|
}
|
|
600
654
|
});
|
|
601
|
-
const _hoisted_1$
|
|
602
|
-
const _hoisted_2$
|
|
655
|
+
const _hoisted_1$j = { class: "w-full" };
|
|
656
|
+
const _hoisted_2$e = {
|
|
603
657
|
key: 0,
|
|
604
658
|
class: "mb-2 flex justify-between text-sm"
|
|
605
659
|
};
|
|
@@ -609,7 +663,7 @@ const _hoisted_5$7 = { class: "text-gray-600 dark:text-gray-400" };
|
|
|
609
663
|
const _hoisted_6$7 = { class: "relative" };
|
|
610
664
|
const _hoisted_7$6 = ["value", "min", "max", "step", "disabled"];
|
|
611
665
|
const _hoisted_8$5 = { class: "pointer-events-none absolute inset-y-0 left-0 flex items-center" };
|
|
612
|
-
const _sfc_main$
|
|
666
|
+
const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
613
667
|
__name: "Slider",
|
|
614
668
|
props: /* @__PURE__ */ mergeModels({
|
|
615
669
|
min: { default: 0 },
|
|
@@ -640,8 +694,8 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
|
|
|
640
694
|
modelValue.value = Number(target.value);
|
|
641
695
|
};
|
|
642
696
|
return (_ctx, _cache) => {
|
|
643
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
644
|
-
__props.showValue ? (openBlock(), createElementBlock("div", _hoisted_2$
|
|
697
|
+
return openBlock(), createElementBlock("div", _hoisted_1$j, [
|
|
698
|
+
__props.showValue ? (openBlock(), createElementBlock("div", _hoisted_2$e, [
|
|
645
699
|
createElementVNode("span", _hoisted_3$d, toDisplayString(__props.min), 1),
|
|
646
700
|
createElementVNode("span", _hoisted_4$9, toDisplayString(displayValue.value), 1),
|
|
647
701
|
createElementVNode("span", _hoisted_5$7, toDisplayString(__props.max), 1)
|
|
@@ -668,9 +722,9 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
|
|
|
668
722
|
};
|
|
669
723
|
}
|
|
670
724
|
});
|
|
671
|
-
const Slider = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
672
|
-
const _hoisted_1$
|
|
673
|
-
const _hoisted_2$
|
|
725
|
+
const Slider = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__scopeId", "data-v-c25e2c2a"]]);
|
|
726
|
+
const _hoisted_1$i = { class: "relative" };
|
|
727
|
+
const _hoisted_2$d = ["id", "disabled", "aria-expanded", "aria-controls"];
|
|
674
728
|
const _hoisted_3$c = { class: "flex-1 truncate" };
|
|
675
729
|
const _hoisted_4$8 = { class: "flex items-center gap-1" };
|
|
676
730
|
const _hoisted_5$6 = ["id", "aria-label"];
|
|
@@ -688,7 +742,7 @@ const _hoisted_9$3 = ["abbr"];
|
|
|
688
742
|
const _hoisted_10$3 = ["id", "aria-label"];
|
|
689
743
|
const _hoisted_11$3 = ["aria-label", "aria-selected", "aria-disabled", "disabled", "onClick"];
|
|
690
744
|
const _hoisted_12$2 = { class: "mt-4 border-t border-gray-200 pt-3 dark:border-gray-700" };
|
|
691
|
-
const _sfc_main$
|
|
745
|
+
const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
692
746
|
__name: "DatePicker",
|
|
693
747
|
props: /* @__PURE__ */ mergeModels({
|
|
694
748
|
placeholder: { default: "Select date" },
|
|
@@ -812,7 +866,7 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
812
866
|
return formatter.format(date);
|
|
813
867
|
};
|
|
814
868
|
return (_ctx, _cache) => {
|
|
815
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
869
|
+
return openBlock(), createElementBlock("div", _hoisted_1$i, [
|
|
816
870
|
createElementVNode("button", {
|
|
817
871
|
id: triggerId.value,
|
|
818
872
|
ref_key: "triggerRef",
|
|
@@ -851,7 +905,7 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
851
905
|
"aria-hidden": "true"
|
|
852
906
|
})
|
|
853
907
|
])
|
|
854
|
-
], 10, _hoisted_2$
|
|
908
|
+
], 10, _hoisted_2$d),
|
|
855
909
|
(openBlock(), createBlock(Teleport, {
|
|
856
910
|
to: "body",
|
|
857
911
|
disabled: !__props.teleport
|
|
@@ -956,8 +1010,8 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
956
1010
|
};
|
|
957
1011
|
}
|
|
958
1012
|
});
|
|
959
|
-
const _hoisted_1$
|
|
960
|
-
const _hoisted_2$
|
|
1013
|
+
const _hoisted_1$h = { class: "space-y-4" };
|
|
1014
|
+
const _hoisted_2$c = ["accept", "multiple", "disabled"];
|
|
961
1015
|
const _hoisted_3$b = { class: "space-y-2" };
|
|
962
1016
|
const _hoisted_4$7 = { class: "text-sm font-medium text-gray-700 dark:text-gray-300" };
|
|
963
1017
|
const _hoisted_5$5 = {
|
|
@@ -976,7 +1030,7 @@ const _hoisted_8$3 = { class: "flex-1 min-w-0" };
|
|
|
976
1030
|
const _hoisted_9$2 = { class: "text-sm font-medium text-gray-700 dark:text-gray-300 truncate" };
|
|
977
1031
|
const _hoisted_10$2 = { class: "text-xs text-gray-500 dark:text-gray-400" };
|
|
978
1032
|
const _hoisted_11$2 = ["onClick"];
|
|
979
|
-
const _sfc_main$
|
|
1033
|
+
const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
980
1034
|
__name: "FileUpload",
|
|
981
1035
|
props: {
|
|
982
1036
|
accept: {},
|
|
@@ -1104,7 +1158,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
1104
1158
|
return "heroicons:document";
|
|
1105
1159
|
};
|
|
1106
1160
|
return (_ctx, _cache) => {
|
|
1107
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
1161
|
+
return openBlock(), createElementBlock("div", _hoisted_1$h, [
|
|
1108
1162
|
createElementVNode("div", {
|
|
1109
1163
|
class: normalizeClass(dropzoneClasses.value),
|
|
1110
1164
|
onDrop: withModifiers(handleDrop, ["prevent"]),
|
|
@@ -1121,7 +1175,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
1121
1175
|
multiple: __props.multiple,
|
|
1122
1176
|
disabled: __props.disabled,
|
|
1123
1177
|
onChange: handleInputChange
|
|
1124
|
-
}, null, 40, _hoisted_2$
|
|
1178
|
+
}, null, 40, _hoisted_2$c),
|
|
1125
1179
|
createElementVNode("div", _hoisted_3$b, [
|
|
1126
1180
|
createVNode(unref(Icon), {
|
|
1127
1181
|
icon: "heroicons:cloud-arrow-up",
|
|
@@ -1163,13 +1217,13 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
1163
1217
|
};
|
|
1164
1218
|
}
|
|
1165
1219
|
});
|
|
1166
|
-
const _hoisted_1$
|
|
1167
|
-
const _hoisted_2$
|
|
1220
|
+
const _hoisted_1$g = { class: "flex items-center gap-1" };
|
|
1221
|
+
const _hoisted_2$b = ["disabled", "onClick", "onMousemove"];
|
|
1168
1222
|
const _hoisted_3$a = {
|
|
1169
1223
|
key: 0,
|
|
1170
1224
|
class: "ml-2 text-sm font-medium text-gray-700 dark:text-gray-300"
|
|
1171
1225
|
};
|
|
1172
|
-
const _sfc_main$
|
|
1226
|
+
const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
1173
1227
|
__name: "Rating",
|
|
1174
1228
|
props: {
|
|
1175
1229
|
modelValue: { default: 0 },
|
|
@@ -1232,7 +1286,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
1232
1286
|
hoverValue.value = null;
|
|
1233
1287
|
};
|
|
1234
1288
|
return (_ctx, _cache) => {
|
|
1235
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
1289
|
+
return openBlock(), createElementBlock("div", _hoisted_1$g, [
|
|
1236
1290
|
createElementVNode("div", {
|
|
1237
1291
|
class: "flex items-center",
|
|
1238
1292
|
onMouseleave: handleMouseLeave
|
|
@@ -1264,7 +1318,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
1264
1318
|
class: normalizeClass([sizeClasses.value, __props.color])
|
|
1265
1319
|
}, null, 8, ["icon", "class"])
|
|
1266
1320
|
], 4)
|
|
1267
|
-
], 42, _hoisted_2$
|
|
1321
|
+
], 42, _hoisted_2$b);
|
|
1268
1322
|
}), 128))
|
|
1269
1323
|
], 32),
|
|
1270
1324
|
__props.showValue ? (openBlock(), createElementBlock("span", _hoisted_3$a, toDisplayString(__props.modelValue.toFixed(__props.allowHalf ? 1 : 0)), 1)) : createCommentVNode("", true)
|
|
@@ -1272,8 +1326,8 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
1272
1326
|
};
|
|
1273
1327
|
}
|
|
1274
1328
|
});
|
|
1275
|
-
const _hoisted_1$
|
|
1276
|
-
const _hoisted_2$
|
|
1329
|
+
const _hoisted_1$f = { class: "relative inline-block" };
|
|
1330
|
+
const _hoisted_2$a = {
|
|
1277
1331
|
key: 0,
|
|
1278
1332
|
class: "block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1"
|
|
1279
1333
|
};
|
|
@@ -1286,7 +1340,7 @@ const _hoisted_7$3 = {
|
|
|
1286
1340
|
class: "flex items-center gap-2 pt-3 border-t border-gray-200 dark:border-gray-700"
|
|
1287
1341
|
};
|
|
1288
1342
|
const _hoisted_8$2 = ["value"];
|
|
1289
|
-
const _sfc_main$
|
|
1343
|
+
const _sfc_main$f = /* @__PURE__ */ defineComponent({
|
|
1290
1344
|
__name: "ColorPicker",
|
|
1291
1345
|
props: {
|
|
1292
1346
|
modelValue: { default: "#3b82f6" },
|
|
@@ -1355,8 +1409,8 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
1355
1409
|
isOpen.value = false;
|
|
1356
1410
|
};
|
|
1357
1411
|
return (_ctx, _cache) => {
|
|
1358
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
1359
|
-
__props.label ? (openBlock(), createElementBlock("label", _hoisted_2$
|
|
1412
|
+
return openBlock(), createElementBlock("div", _hoisted_1$f, [
|
|
1413
|
+
__props.label ? (openBlock(), createElementBlock("label", _hoisted_2$a, toDisplayString(__props.label), 1)) : createCommentVNode("", true),
|
|
1360
1414
|
createElementVNode("button", {
|
|
1361
1415
|
type: "button",
|
|
1362
1416
|
class: normalizeClass(["flex items-center gap-2 px-3 py-2 border border-gray-300 dark:border-gray-600 rounded-lg bg-white dark:bg-gray-800 hover:bg-gray-50 dark:hover:bg-gray-700 transition-colors", { "opacity-50 cursor-not-allowed": __props.disabled }]),
|
|
@@ -1446,8 +1500,8 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
1446
1500
|
};
|
|
1447
1501
|
}
|
|
1448
1502
|
});
|
|
1449
|
-
const _hoisted_1$
|
|
1450
|
-
const _hoisted_2$
|
|
1503
|
+
const _hoisted_1$e = { class: "space-y-2" };
|
|
1504
|
+
const _hoisted_2$9 = {
|
|
1451
1505
|
key: 0,
|
|
1452
1506
|
class: "flex justify-between text-sm font-medium text-gray-700 dark:text-gray-300"
|
|
1453
1507
|
};
|
|
@@ -1455,7 +1509,7 @@ const _hoisted_3$8 = {
|
|
|
1455
1509
|
key: 1,
|
|
1456
1510
|
class: "flex justify-between text-xs text-gray-500 dark:text-gray-400"
|
|
1457
1511
|
};
|
|
1458
|
-
const _sfc_main$
|
|
1512
|
+
const _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
1459
1513
|
__name: "RangeSlider",
|
|
1460
1514
|
props: {
|
|
1461
1515
|
modelValue: { default: () => [25, 75] },
|
|
@@ -1533,8 +1587,8 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
|
|
|
1533
1587
|
}
|
|
1534
1588
|
};
|
|
1535
1589
|
return (_ctx, _cache) => {
|
|
1536
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
1537
|
-
__props.showLabels ? (openBlock(), createElementBlock("div", _hoisted_2$
|
|
1590
|
+
return openBlock(), createElementBlock("div", _hoisted_1$e, [
|
|
1591
|
+
__props.showLabels ? (openBlock(), createElementBlock("div", _hoisted_2$9, [
|
|
1538
1592
|
createElementVNode("span", null, toDisplayString(__props.formatLabel(minValue.value)), 1),
|
|
1539
1593
|
createElementVNode("span", null, toDisplayString(__props.formatLabel(maxValue.value)), 1)
|
|
1540
1594
|
])) : createCommentVNode("", true),
|
|
@@ -1575,8 +1629,8 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
|
|
|
1575
1629
|
};
|
|
1576
1630
|
}
|
|
1577
1631
|
});
|
|
1578
|
-
const _hoisted_1$
|
|
1579
|
-
const _hoisted_2$
|
|
1632
|
+
const _hoisted_1$d = ["aria-expanded", "aria-controls"];
|
|
1633
|
+
const _hoisted_2$8 = ["id", "name", "placeholder", "disabled", "aria-controls"];
|
|
1580
1634
|
const _hoisted_3$7 = { class: "flex items-center gap-1" };
|
|
1581
1635
|
const _hoisted_4$5 = ["id", "aria-label", "aria-multiselectable"];
|
|
1582
1636
|
const _hoisted_5$3 = ["aria-selected", "aria-disabled", "disabled", "onClick"];
|
|
@@ -1586,7 +1640,7 @@ const _hoisted_7$2 = {
|
|
|
1586
1640
|
class: "px-3 py-2 text-center text-sm text-gray-500 dark:text-gray-400",
|
|
1587
1641
|
role: "status"
|
|
1588
1642
|
};
|
|
1589
|
-
const _sfc_main$
|
|
1643
|
+
const _sfc_main$d = /* @__PURE__ */ defineComponent({
|
|
1590
1644
|
__name: "Combobox",
|
|
1591
1645
|
props: {
|
|
1592
1646
|
modelValue: {},
|
|
@@ -1717,7 +1771,7 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
|
1717
1771
|
class: "flex-1 border-none bg-transparent text-sm text-gray-900 outline-hidden placeholder:text-gray-400 dark:text-gray-100 dark:placeholder:text-gray-500",
|
|
1718
1772
|
onClick: _cache[1] || (_cache[1] = withModifiers(() => {
|
|
1719
1773
|
}, ["stop"]))
|
|
1720
|
-
}, null, 8, _hoisted_2$
|
|
1774
|
+
}, null, 8, _hoisted_2$8)), [
|
|
1721
1775
|
[vModelText, search.value]
|
|
1722
1776
|
]),
|
|
1723
1777
|
createElementVNode("div", _hoisted_3$7, [
|
|
@@ -1743,7 +1797,7 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
|
1743
1797
|
"aria-hidden": "true"
|
|
1744
1798
|
}, null, 8, ["class"])
|
|
1745
1799
|
])
|
|
1746
|
-
], 10, _hoisted_1$
|
|
1800
|
+
], 10, _hoisted_1$d),
|
|
1747
1801
|
(openBlock(), createBlock(Teleport, {
|
|
1748
1802
|
to: teleportTarget.value,
|
|
1749
1803
|
disabled: teleportDisabled.value
|
|
@@ -1811,8 +1865,8 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
|
1811
1865
|
};
|
|
1812
1866
|
}
|
|
1813
1867
|
});
|
|
1814
|
-
const _hoisted_1$
|
|
1815
|
-
const _hoisted_2$
|
|
1868
|
+
const _hoisted_1$c = { class: "relative" };
|
|
1869
|
+
const _hoisted_2$7 = {
|
|
1816
1870
|
key: 0,
|
|
1817
1871
|
class: "text-red-500 ml-0.5"
|
|
1818
1872
|
};
|
|
@@ -1845,7 +1899,7 @@ const _hoisted_13 = {
|
|
|
1845
1899
|
const _hoisted_14 = ["title", "onClick"];
|
|
1846
1900
|
const _hoisted_15 = { class: "mt-4 flex items-center justify-between border-t border-gray-200 pt-4 dark:border-gray-700" };
|
|
1847
1901
|
const _hoisted_16 = { class: "text-xs text-gray-500" };
|
|
1848
|
-
const _sfc_main$
|
|
1902
|
+
const _sfc_main$c = /* @__PURE__ */ defineComponent({
|
|
1849
1903
|
__name: "IconPicker",
|
|
1850
1904
|
props: /* @__PURE__ */ mergeModels({
|
|
1851
1905
|
label: {},
|
|
@@ -1969,7 +2023,7 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
|
|
|
1969
2023
|
searchQuery.value = "";
|
|
1970
2024
|
}
|
|
1971
2025
|
return (_ctx, _cache) => {
|
|
1972
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
2026
|
+
return openBlock(), createElementBlock("div", _hoisted_1$c, [
|
|
1973
2027
|
__props.label ? (openBlock(), createBlock(_sfc_main$r, {
|
|
1974
2028
|
key: 0,
|
|
1975
2029
|
"html-for": inputId.value,
|
|
@@ -1977,7 +2031,7 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
|
|
|
1977
2031
|
}, {
|
|
1978
2032
|
default: withCtx(() => [
|
|
1979
2033
|
createTextVNode(toDisplayString(__props.label) + " ", 1),
|
|
1980
|
-
__props.required ? (openBlock(), createElementBlock("span", _hoisted_2$
|
|
2034
|
+
__props.required ? (openBlock(), createElementBlock("span", _hoisted_2$7, "*")) : createCommentVNode("", true)
|
|
1981
2035
|
]),
|
|
1982
2036
|
_: 1
|
|
1983
2037
|
}, 8, ["html-for", "error"])) : createCommentVNode("", true),
|
|
@@ -2104,8 +2158,8 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
|
|
|
2104
2158
|
};
|
|
2105
2159
|
}
|
|
2106
2160
|
});
|
|
2107
|
-
const _hoisted_1$
|
|
2108
|
-
const _hoisted_2$
|
|
2161
|
+
const _hoisted_1$b = { class: "flex items-center justify-between" };
|
|
2162
|
+
const _hoisted_2$6 = { class: "flex items-center gap-3" };
|
|
2109
2163
|
const _hoisted_3$5 = { class: "text-lg font-semibold text-gray-900 dark:text-white" };
|
|
2110
2164
|
const _hoisted_4$3 = {
|
|
2111
2165
|
key: 0,
|
|
@@ -2116,7 +2170,7 @@ const _hoisted_6$1 = {
|
|
|
2116
2170
|
key: 0,
|
|
2117
2171
|
class: "px-5 py-4 bg-gray-50 dark:bg-slate-800/50 border-t border-gray-100 dark:border-slate-700"
|
|
2118
2172
|
};
|
|
2119
|
-
const _sfc_main$
|
|
2173
|
+
const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
2120
2174
|
__name: "FormSection",
|
|
2121
2175
|
props: /* @__PURE__ */ mergeModels({
|
|
2122
2176
|
title: {},
|
|
@@ -2150,8 +2204,8 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
|
|
|
2150
2204
|
]),
|
|
2151
2205
|
onClick: _cache[0] || (_cache[0] = ($event) => __props.collapsible && toggleCollapse())
|
|
2152
2206
|
}, [
|
|
2153
|
-
createElementVNode("div", _hoisted_1$
|
|
2154
|
-
createElementVNode("div", _hoisted_2$
|
|
2207
|
+
createElementVNode("div", _hoisted_1$b, [
|
|
2208
|
+
createElementVNode("div", _hoisted_2$6, [
|
|
2155
2209
|
__props.icon ? (openBlock(), createElementBlock("div", {
|
|
2156
2210
|
key: 0,
|
|
2157
2211
|
class: normalizeClass([
|
|
@@ -2219,8 +2273,8 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
|
|
|
2219
2273
|
};
|
|
2220
2274
|
}
|
|
2221
2275
|
});
|
|
2222
|
-
const _hoisted_1$
|
|
2223
|
-
const _sfc_main$
|
|
2276
|
+
const _hoisted_1$a = { key: 1 };
|
|
2277
|
+
const _sfc_main$a = /* @__PURE__ */ defineComponent({
|
|
2224
2278
|
__name: "FormActions",
|
|
2225
2279
|
props: {
|
|
2226
2280
|
submitLabel: { default: "Enregistrer" },
|
|
@@ -2287,7 +2341,7 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
2287
2341
|
class: "w-5 h-5"
|
|
2288
2342
|
}, null, 8, ["icon"])) : createCommentVNode("", true),
|
|
2289
2343
|
createTextVNode(" " + toDisplayString(__props.submitLabel), 1)
|
|
2290
|
-
], 64)) : (openBlock(), createElementBlock("span", _hoisted_1$
|
|
2344
|
+
], 64)) : (openBlock(), createElementBlock("span", _hoisted_1$a, toDisplayString(__props.loadingLabel || __props.submitLabel + "..."), 1))
|
|
2291
2345
|
]),
|
|
2292
2346
|
_: 1
|
|
2293
2347
|
}, 8, ["variant", "disabled", "loading", "class"]),
|
|
@@ -2296,79 +2350,11 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
2296
2350
|
};
|
|
2297
2351
|
}
|
|
2298
2352
|
});
|
|
2299
|
-
const _hoisted_1$a = {
|
|
2300
|
-
key: 0,
|
|
2301
|
-
class: "absolute left-3 top-1/2 -translate-y-1/2 pointer-events-none text-gray-400"
|
|
2302
|
-
};
|
|
2303
|
-
const _hoisted_2$6 = {
|
|
2304
|
-
key: 1,
|
|
2305
|
-
class: "absolute right-3 top-1/2 -translate-y-1/2 flex items-center gap-1"
|
|
2306
|
-
};
|
|
2307
|
-
const _sfc_main$a = /* @__PURE__ */ defineComponent({
|
|
2308
|
-
__name: "InputWrapper",
|
|
2309
|
-
props: {
|
|
2310
|
-
icon: {},
|
|
2311
|
-
iconRight: {},
|
|
2312
|
-
size: { default: "md" },
|
|
2313
|
-
invalid: { type: Boolean },
|
|
2314
|
-
disabled: { type: Boolean },
|
|
2315
|
-
wrapperClass: {}
|
|
2316
|
-
},
|
|
2317
|
-
setup(__props, { expose: __expose }) {
|
|
2318
|
-
const props = __props;
|
|
2319
|
-
const slots = useSlots();
|
|
2320
|
-
const hasLeftIcon = computed(() => props.icon || slots.icon);
|
|
2321
|
-
const hasRightContent = computed(() => props.iconRight || slots.actions);
|
|
2322
|
-
const inputClass = computed(() => [
|
|
2323
|
-
// Base styles
|
|
2324
|
-
"block w-full rounded-xl border text-sm transition-all",
|
|
2325
|
-
"border-gray-200 bg-gray-50 text-gray-900 placeholder-gray-400",
|
|
2326
|
-
"focus:border-primary-500 focus:ring-2 focus:ring-primary-500 focus:bg-white focus:outline-hidden",
|
|
2327
|
-
"disabled:border-gray-200 disabled:bg-gray-100 disabled:text-gray-500 disabled:cursor-not-allowed",
|
|
2328
|
-
// Dark mode
|
|
2329
|
-
"dark:border-slate-600 dark:bg-slate-700 dark:text-white dark:placeholder-gray-500",
|
|
2330
|
-
"dark:focus:border-primary-500 dark:focus:ring-primary-500 dark:focus:bg-slate-600",
|
|
2331
|
-
"dark:disabled:bg-slate-800 dark:disabled:text-gray-500",
|
|
2332
|
-
// Padding based on icons/actions
|
|
2333
|
-
hasLeftIcon.value ? "pl-10" : "pl-4",
|
|
2334
|
-
hasRightContent.value ? "pr-10" : "pr-4",
|
|
2335
|
-
// Size
|
|
2336
|
-
props.size === "sm" && "py-2 text-xs",
|
|
2337
|
-
props.size === "md" && "py-3 text-sm",
|
|
2338
|
-
props.size === "lg" && "py-4 text-base",
|
|
2339
|
-
// Invalid state
|
|
2340
|
-
props.invalid && "border-red-500 focus:border-red-500 focus:ring-red-500 dark:border-red-500"
|
|
2341
|
-
]);
|
|
2342
|
-
__expose({ inputClass });
|
|
2343
|
-
return (_ctx, _cache) => {
|
|
2344
|
-
return openBlock(), createElementBlock("div", {
|
|
2345
|
-
class: normalizeClass(["relative", __props.wrapperClass])
|
|
2346
|
-
}, [
|
|
2347
|
-
hasLeftIcon.value ? (openBlock(), createElementBlock("div", _hoisted_1$a, [
|
|
2348
|
-
renderSlot(_ctx.$slots, "icon", {}, () => [
|
|
2349
|
-
__props.icon ? (openBlock(), createBlock(unref(Icon), {
|
|
2350
|
-
key: 0,
|
|
2351
|
-
icon: __props.icon,
|
|
2352
|
-
class: "size-5"
|
|
2353
|
-
}, null, 8, ["icon"])) : createCommentVNode("", true)
|
|
2354
|
-
])
|
|
2355
|
-
])) : createCommentVNode("", true),
|
|
2356
|
-
renderSlot(_ctx.$slots, "default", { inputClass: inputClass.value }),
|
|
2357
|
-
hasRightContent.value ? (openBlock(), createElementBlock("div", _hoisted_2$6, [
|
|
2358
|
-
renderSlot(_ctx.$slots, "actions", {}, () => [
|
|
2359
|
-
__props.iconRight ? (openBlock(), createBlock(unref(Icon), {
|
|
2360
|
-
key: 0,
|
|
2361
|
-
icon: __props.iconRight,
|
|
2362
|
-
class: "size-5 text-gray-400 pointer-events-none"
|
|
2363
|
-
}, null, 8, ["icon"])) : createCommentVNode("", true)
|
|
2364
|
-
])
|
|
2365
|
-
])) : createCommentVNode("", true)
|
|
2366
|
-
], 2);
|
|
2367
|
-
};
|
|
2368
|
-
}
|
|
2369
|
-
});
|
|
2370
2353
|
const _hoisted_1$9 = ["id", "name", "placeholder", "disabled", "required", "aria-invalid", "aria-required", "aria-describedby"];
|
|
2371
2354
|
const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
2355
|
+
...{
|
|
2356
|
+
inheritAttrs: false
|
|
2357
|
+
},
|
|
2372
2358
|
__name: "EmailInput",
|
|
2373
2359
|
props: /* @__PURE__ */ mergeModels({
|
|
2374
2360
|
placeholder: { default: "Enter email address..." },
|
|
@@ -2400,14 +2386,14 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
|
2400
2386
|
isTouched.value = true;
|
|
2401
2387
|
}
|
|
2402
2388
|
return (_ctx, _cache) => {
|
|
2403
|
-
return openBlock(), createBlock(_sfc_main$
|
|
2389
|
+
return openBlock(), createBlock(_sfc_main$p, {
|
|
2404
2390
|
icon: "lucide:mail",
|
|
2405
2391
|
size: __props.size,
|
|
2406
2392
|
disabled: __props.disabled,
|
|
2407
2393
|
invalid: showStatus.value && isValid.value === false
|
|
2408
2394
|
}, {
|
|
2409
2395
|
default: withCtx(({ inputClass }) => [
|
|
2410
|
-
withDirectives(createElementVNode("input", {
|
|
2396
|
+
withDirectives(createElementVNode("input", mergeProps({
|
|
2411
2397
|
id: __props.id ?? __props.name,
|
|
2412
2398
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event),
|
|
2413
2399
|
type: "email",
|
|
@@ -2418,9 +2404,8 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
|
|
|
2418
2404
|
"aria-invalid": showStatus.value && isValid.value === false || void 0,
|
|
2419
2405
|
"aria-required": __props.required || void 0,
|
|
2420
2406
|
"aria-describedby": __props.describedBy,
|
|
2421
|
-
class:
|
|
2422
|
-
|
|
2423
|
-
}, null, 42, _hoisted_1$9), [
|
|
2407
|
+
class: inputClass
|
|
2408
|
+
}, _ctx.$attrs, { onBlur: handleBlur }), null, 16, _hoisted_1$9), [
|
|
2424
2409
|
[vModelText, modelValue.value]
|
|
2425
2410
|
])
|
|
2426
2411
|
]),
|
|
@@ -2448,6 +2433,9 @@ const _hoisted_3$4 = {
|
|
|
2448
2433
|
};
|
|
2449
2434
|
const _hoisted_4$2 = { class: "h-1.5 w-full rounded-full bg-gray-200 dark:bg-slate-700 overflow-hidden" };
|
|
2450
2435
|
const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
2436
|
+
...{
|
|
2437
|
+
inheritAttrs: false
|
|
2438
|
+
},
|
|
2451
2439
|
__name: "PasswordInput",
|
|
2452
2440
|
props: /* @__PURE__ */ mergeModels({
|
|
2453
2441
|
placeholder: { default: "Enter password..." },
|
|
@@ -2498,13 +2486,13 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
2498
2486
|
return (_ctx, _cache) => {
|
|
2499
2487
|
var _a, _b;
|
|
2500
2488
|
return openBlock(), createElementBlock("div", null, [
|
|
2501
|
-
createVNode(_sfc_main$
|
|
2489
|
+
createVNode(_sfc_main$p, {
|
|
2502
2490
|
icon: "lucide:lock",
|
|
2503
2491
|
size: __props.size,
|
|
2504
2492
|
disabled: __props.disabled
|
|
2505
2493
|
}, {
|
|
2506
2494
|
default: withCtx(({ inputClass }) => [
|
|
2507
|
-
withDirectives(createElementVNode("input", {
|
|
2495
|
+
withDirectives(createElementVNode("input", mergeProps({
|
|
2508
2496
|
id: __props.id ?? __props.name,
|
|
2509
2497
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event),
|
|
2510
2498
|
type: showPassword.value ? "text" : "password",
|
|
@@ -2514,9 +2502,8 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
|
|
|
2514
2502
|
required: __props.required,
|
|
2515
2503
|
"aria-required": __props.required || void 0,
|
|
2516
2504
|
"aria-describedby": __props.describedBy,
|
|
2517
|
-
class:
|
|
2518
|
-
|
|
2519
|
-
}, null, 10, _hoisted_1$8), [
|
|
2505
|
+
class: inputClass
|
|
2506
|
+
}, _ctx.$attrs, { autocomplete: "new-password" }), null, 16, _hoisted_1$8), [
|
|
2520
2507
|
[vModelDynamic, modelValue.value]
|
|
2521
2508
|
])
|
|
2522
2509
|
]),
|
|
@@ -2579,29 +2566,52 @@ const _hoisted_12 = {
|
|
|
2579
2566
|
class: "px-3 py-4 text-center text-sm text-gray-500"
|
|
2580
2567
|
};
|
|
2581
2568
|
const defaultCountries = [
|
|
2582
|
-
{ code: "FR", name: "France", dialCode: "+33", flag: "🇫🇷" },
|
|
2583
|
-
{ code: "US", name: "United States", dialCode: "+1", flag: "🇺🇸" },
|
|
2584
|
-
{ code: "GB", name: "United Kingdom", dialCode: "+44", flag: "🇬🇧" },
|
|
2585
|
-
{ code: "DE", name: "Germany", dialCode: "+49", flag: "🇩🇪" },
|
|
2586
|
-
{ code: "ES", name: "Spain", dialCode: "+34", flag: "🇪🇸" },
|
|
2587
|
-
{ code: "IT", name: "Italy", dialCode: "+39", flag: "🇮🇹" },
|
|
2588
|
-
{ code: "BE", name: "Belgium", dialCode: "+32", flag: "🇧🇪" },
|
|
2589
|
-
{ code: "CH", name: "Switzerland", dialCode: "+41", flag: "🇨🇭" },
|
|
2590
|
-
{ code: "CA", name: "Canada", dialCode: "+1", flag: "🇨🇦" },
|
|
2591
|
-
{ code: "AU", name: "Australia", dialCode: "+61", flag: "🇦🇺" },
|
|
2592
|
-
{ code: "ML", name: "Mali", dialCode: "+223", flag: "🇲🇱" },
|
|
2593
|
-
{ code: "SN", name: "Senegal", dialCode: "+221", flag: "🇸🇳" },
|
|
2594
|
-
{ code: "CI", name: "Côte d'Ivoire", dialCode: "+225", flag: "🇨🇮" },
|
|
2595
|
-
{ code: "MA", name: "Morocco", dialCode: "+212", flag: "🇲🇦" },
|
|
2596
|
-
{ code: "TN", name: "Tunisia", dialCode: "+216", flag: "🇹🇳" },
|
|
2597
|
-
{ code: "DZ", name: "Algeria", dialCode: "+213", flag: "🇩🇿" }
|
|
2569
|
+
{ code: "FR", name: "France", dialCode: "+33", flag: "🇫🇷", format: "# ## ## ## ##" },
|
|
2570
|
+
{ code: "US", name: "United States", dialCode: "+1", flag: "🇺🇸", format: "(###) ###-####" },
|
|
2571
|
+
{ code: "GB", name: "United Kingdom", dialCode: "+44", flag: "🇬🇧", format: "#### ######" },
|
|
2572
|
+
{ code: "DE", name: "Germany", dialCode: "+49", flag: "🇩🇪", format: "### #######" },
|
|
2573
|
+
{ code: "ES", name: "Spain", dialCode: "+34", flag: "🇪🇸", format: "### ### ###" },
|
|
2574
|
+
{ code: "IT", name: "Italy", dialCode: "+39", flag: "🇮🇹", format: "### ### ####" },
|
|
2575
|
+
{ code: "BE", name: "Belgium", dialCode: "+32", flag: "🇧🇪", format: "### ## ## ##" },
|
|
2576
|
+
{ code: "CH", name: "Switzerland", dialCode: "+41", flag: "🇨🇭", format: "## ### ## ##" },
|
|
2577
|
+
{ code: "CA", name: "Canada", dialCode: "+1", flag: "🇨🇦", format: "(###) ###-####" },
|
|
2578
|
+
{ code: "AU", name: "Australia", dialCode: "+61", flag: "🇦🇺", format: "### ### ###" },
|
|
2579
|
+
{ code: "ML", name: "Mali", dialCode: "+223", flag: "🇲🇱", format: "## ## ## ##" },
|
|
2580
|
+
{ code: "SN", name: "Senegal", dialCode: "+221", flag: "🇸🇳", format: "## ### ## ##" },
|
|
2581
|
+
{ code: "CI", name: "Côte d'Ivoire", dialCode: "+225", flag: "🇨🇮", format: "## ## ## ## ##" },
|
|
2582
|
+
{ code: "MA", name: "Morocco", dialCode: "+212", flag: "🇲🇦", format: "## ## ## ## ##" },
|
|
2583
|
+
{ code: "TN", name: "Tunisia", dialCode: "+216", flag: "🇹🇳", format: "## ### ###" },
|
|
2584
|
+
{ code: "DZ", name: "Algeria", dialCode: "+213", flag: "🇩🇿", format: "### ## ## ##" }
|
|
2598
2585
|
];
|
|
2586
|
+
function formatPhoneWithPattern(value, pattern) {
|
|
2587
|
+
if (!pattern) return value;
|
|
2588
|
+
const digits = value.replace(/\D/g, "");
|
|
2589
|
+
let result = "";
|
|
2590
|
+
let digitIndex = 0;
|
|
2591
|
+
for (const char of pattern) {
|
|
2592
|
+
if (digitIndex >= digits.length) break;
|
|
2593
|
+
if (char === "#") {
|
|
2594
|
+
result += digits[digitIndex];
|
|
2595
|
+
digitIndex++;
|
|
2596
|
+
} else {
|
|
2597
|
+
result += char;
|
|
2598
|
+
}
|
|
2599
|
+
}
|
|
2600
|
+
return result;
|
|
2601
|
+
}
|
|
2602
|
+
function getPhoneDigits(value) {
|
|
2603
|
+
return value.replace(/\D/g, "");
|
|
2604
|
+
}
|
|
2599
2605
|
const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
2606
|
+
...{
|
|
2607
|
+
inheritAttrs: false
|
|
2608
|
+
},
|
|
2600
2609
|
__name: "PhoneInput",
|
|
2601
2610
|
props: /* @__PURE__ */ mergeModels({
|
|
2602
2611
|
placeholder: { default: "Phone number" },
|
|
2603
2612
|
size: { default: "md" },
|
|
2604
2613
|
disabled: { type: Boolean },
|
|
2614
|
+
showDialCode: { type: Boolean, default: false },
|
|
2605
2615
|
name: {},
|
|
2606
2616
|
id: {},
|
|
2607
2617
|
required: { type: Boolean },
|
|
@@ -2633,19 +2643,50 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
2633
2643
|
if (!modelValue.value) return "";
|
|
2634
2644
|
return `${selectedCountry.value.dialCode}${modelValue.value}`;
|
|
2635
2645
|
});
|
|
2646
|
+
const displayValue = computed(() => {
|
|
2647
|
+
const formatted = formatPhoneWithPattern(modelValue.value, selectedCountry.value.format);
|
|
2648
|
+
if (props.showDialCode && modelValue.value) {
|
|
2649
|
+
return `${selectedCountry.value.dialCode} ${formatted}`;
|
|
2650
|
+
}
|
|
2651
|
+
return formatted;
|
|
2652
|
+
});
|
|
2636
2653
|
function selectCountry(country) {
|
|
2637
2654
|
selectedCountry.value = country;
|
|
2638
2655
|
showDropdown.value = false;
|
|
2639
2656
|
searchQuery.value = "";
|
|
2640
2657
|
}
|
|
2641
|
-
function
|
|
2642
|
-
const cleaned = value.replace(/\
|
|
2643
|
-
|
|
2658
|
+
function parsePhoneWithDialCode(value) {
|
|
2659
|
+
const cleaned = value.replace(/\s/g, "");
|
|
2660
|
+
if (cleaned.startsWith("+") || cleaned.startsWith("00")) {
|
|
2661
|
+
const withPlus = cleaned.startsWith("00") ? "+" + cleaned.slice(2) : cleaned;
|
|
2662
|
+
for (const country of props.countries) {
|
|
2663
|
+
if (withPlus.startsWith(country.dialCode)) {
|
|
2664
|
+
const digits = withPlus.slice(country.dialCode.length).replace(/\D/g, "");
|
|
2665
|
+
return { digits, country };
|
|
2666
|
+
}
|
|
2667
|
+
}
|
|
2668
|
+
}
|
|
2669
|
+
return { digits: getPhoneDigits(value) };
|
|
2644
2670
|
}
|
|
2645
2671
|
function handleInput(event) {
|
|
2646
2672
|
const target = event.target;
|
|
2647
|
-
const
|
|
2648
|
-
|
|
2673
|
+
const inputValue = target.value;
|
|
2674
|
+
const { digits, country } = parsePhoneWithDialCode(inputValue);
|
|
2675
|
+
if (country) {
|
|
2676
|
+
selectedCountry.value = country;
|
|
2677
|
+
}
|
|
2678
|
+
modelValue.value = digits;
|
|
2679
|
+
}
|
|
2680
|
+
function handlePaste(event) {
|
|
2681
|
+
var _a;
|
|
2682
|
+
const pastedData = (_a = event.clipboardData) == null ? void 0 : _a.getData("text");
|
|
2683
|
+
if (!pastedData) return;
|
|
2684
|
+
const { digits, country } = parsePhoneWithDialCode(pastedData);
|
|
2685
|
+
if (country) {
|
|
2686
|
+
event.preventDefault();
|
|
2687
|
+
selectedCountry.value = country;
|
|
2688
|
+
modelValue.value = digits;
|
|
2689
|
+
}
|
|
2649
2690
|
}
|
|
2650
2691
|
function handleClickOutside(event) {
|
|
2651
2692
|
if (dropdownRef.value && !dropdownRef.value.contains(event.target)) {
|
|
@@ -2667,7 +2708,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
2667
2708
|
ref_key: "dropdownRef",
|
|
2668
2709
|
ref: dropdownRef
|
|
2669
2710
|
}, [
|
|
2670
|
-
createVNode(_sfc_main$
|
|
2711
|
+
createVNode(_sfc_main$p, {
|
|
2671
2712
|
size: __props.size,
|
|
2672
2713
|
disabled: __props.disabled
|
|
2673
2714
|
}, {
|
|
@@ -2689,9 +2730,9 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
2689
2730
|
], 8, _hoisted_1$7)
|
|
2690
2731
|
]),
|
|
2691
2732
|
default: withCtx(({ inputClass }) => [
|
|
2692
|
-
createElementVNode("input", {
|
|
2733
|
+
createElementVNode("input", mergeProps({
|
|
2693
2734
|
id: __props.id ?? __props.name,
|
|
2694
|
-
value:
|
|
2735
|
+
value: displayValue.value,
|
|
2695
2736
|
type: "tel",
|
|
2696
2737
|
name: __props.name,
|
|
2697
2738
|
placeholder: __props.placeholder,
|
|
@@ -2699,9 +2740,11 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
2699
2740
|
required: __props.required,
|
|
2700
2741
|
"aria-required": __props.required || void 0,
|
|
2701
2742
|
"aria-describedby": __props.describedBy,
|
|
2702
|
-
class:
|
|
2703
|
-
|
|
2704
|
-
|
|
2743
|
+
class: [inputClass, "pl-20"]
|
|
2744
|
+
}, _ctx.$attrs, {
|
|
2745
|
+
onInput: handleInput,
|
|
2746
|
+
onPaste: handlePaste
|
|
2747
|
+
}), null, 16, _hoisted_3$3)
|
|
2705
2748
|
]),
|
|
2706
2749
|
actions: withCtx(() => [
|
|
2707
2750
|
createElementVNode("span", _hoisted_4$1, toDisplayString(selectedCountry.value.dialCode), 1)
|
|
@@ -2754,6 +2797,9 @@ const _hoisted_1$6 = ["disabled"];
|
|
|
2754
2797
|
const _hoisted_2$3 = ["id", "value", "name", "placeholder", "disabled", "required", "min", "max", "step", "aria-required", "aria-describedby"];
|
|
2755
2798
|
const _hoisted_3$2 = ["disabled"];
|
|
2756
2799
|
const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
2800
|
+
...{
|
|
2801
|
+
inheritAttrs: false
|
|
2802
|
+
},
|
|
2757
2803
|
__name: "NumberInput",
|
|
2758
2804
|
props: /* @__PURE__ */ mergeModels({
|
|
2759
2805
|
placeholder: { default: "0" },
|
|
@@ -2812,12 +2858,12 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
2812
2858
|
}
|
|
2813
2859
|
}
|
|
2814
2860
|
return (_ctx, _cache) => {
|
|
2815
|
-
return openBlock(), createBlock(_sfc_main$
|
|
2861
|
+
return openBlock(), createBlock(_sfc_main$p, {
|
|
2816
2862
|
size: __props.size,
|
|
2817
2863
|
disabled: __props.disabled
|
|
2818
2864
|
}, createSlots({
|
|
2819
2865
|
default: withCtx(({ inputClass }) => [
|
|
2820
|
-
createElementVNode("input", {
|
|
2866
|
+
createElementVNode("input", mergeProps({
|
|
2821
2867
|
id: __props.id ?? __props.name,
|
|
2822
2868
|
value: modelValue.value,
|
|
2823
2869
|
type: "number",
|
|
@@ -2830,9 +2876,8 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
2830
2876
|
step: __props.step,
|
|
2831
2877
|
"aria-required": __props.required || void 0,
|
|
2832
2878
|
"aria-describedby": __props.describedBy,
|
|
2833
|
-
class:
|
|
2834
|
-
|
|
2835
|
-
}, null, 42, _hoisted_2$3)
|
|
2879
|
+
class: [inputClass, "text-center", __props.showStepper && "pl-12 pr-12"]
|
|
2880
|
+
}, _ctx.$attrs, { onInput: handleInput }), null, 16, _hoisted_2$3)
|
|
2836
2881
|
]),
|
|
2837
2882
|
_: 2
|
|
2838
2883
|
}, [
|
|
@@ -2878,6 +2923,9 @@ const _hoisted_1$5 = { class: "text-sm font-medium text-gray-500 dark:text-gray-
|
|
|
2878
2923
|
const _hoisted_2$2 = ["id", "value", "name", "placeholder", "disabled", "required", "aria-required", "aria-describedby"];
|
|
2879
2924
|
const _hoisted_3$1 = { class: "text-sm font-medium text-gray-500 dark:text-gray-400" };
|
|
2880
2925
|
const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
2926
|
+
...{
|
|
2927
|
+
inheritAttrs: false
|
|
2928
|
+
},
|
|
2881
2929
|
__name: "MoneyInput",
|
|
2882
2930
|
props: /* @__PURE__ */ mergeModels({
|
|
2883
2931
|
placeholder: { default: "0.00" },
|
|
@@ -2948,12 +2996,12 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
2948
2996
|
}
|
|
2949
2997
|
}
|
|
2950
2998
|
return (_ctx, _cache) => {
|
|
2951
|
-
return openBlock(), createBlock(_sfc_main$
|
|
2999
|
+
return openBlock(), createBlock(_sfc_main$p, {
|
|
2952
3000
|
size: __props.size,
|
|
2953
3001
|
disabled: __props.disabled
|
|
2954
3002
|
}, createSlots({
|
|
2955
3003
|
default: withCtx(({ inputClass }) => [
|
|
2956
|
-
createElementVNode("input", {
|
|
3004
|
+
createElementVNode("input", mergeProps({
|
|
2957
3005
|
id: __props.id ?? __props.name,
|
|
2958
3006
|
value: displayValue.value,
|
|
2959
3007
|
type: "text",
|
|
@@ -2964,10 +3012,11 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
2964
3012
|
required: __props.required,
|
|
2965
3013
|
"aria-required": __props.required || void 0,
|
|
2966
3014
|
"aria-describedby": __props.describedBy,
|
|
2967
|
-
class:
|
|
3015
|
+
class: [inputClass, "text-right"]
|
|
3016
|
+
}, _ctx.$attrs, {
|
|
2968
3017
|
onInput: handleInput,
|
|
2969
3018
|
onBlur: handleBlur
|
|
2970
|
-
}, null,
|
|
3019
|
+
}), null, 16, _hoisted_2$2)
|
|
2971
3020
|
]),
|
|
2972
3021
|
_: 2
|
|
2973
3022
|
}, [
|
|
@@ -2991,6 +3040,9 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
2991
3040
|
});
|
|
2992
3041
|
const _hoisted_1$4 = ["id", "value", "name", "placeholder", "disabled", "required", "min", "max", "step", "aria-required", "aria-describedby"];
|
|
2993
3042
|
const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
3043
|
+
...{
|
|
3044
|
+
inheritAttrs: false
|
|
3045
|
+
},
|
|
2994
3046
|
__name: "PercentInput",
|
|
2995
3047
|
props: /* @__PURE__ */ mergeModels({
|
|
2996
3048
|
placeholder: { default: "0" },
|
|
@@ -3032,12 +3084,12 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
|
3032
3084
|
displayValue.value = target.value;
|
|
3033
3085
|
}
|
|
3034
3086
|
return (_ctx, _cache) => {
|
|
3035
|
-
return openBlock(), createBlock(_sfc_main$
|
|
3087
|
+
return openBlock(), createBlock(_sfc_main$p, {
|
|
3036
3088
|
size: __props.size,
|
|
3037
3089
|
disabled: __props.disabled
|
|
3038
3090
|
}, {
|
|
3039
3091
|
default: withCtx(({ inputClass }) => [
|
|
3040
|
-
createElementVNode("input", {
|
|
3092
|
+
createElementVNode("input", mergeProps({
|
|
3041
3093
|
id: __props.id ?? __props.name,
|
|
3042
3094
|
value: displayValue.value,
|
|
3043
3095
|
type: "number",
|
|
@@ -3051,9 +3103,8 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
|
3051
3103
|
step: __props.decimals > 0 ? Math.pow(10, -__props.decimals) : 1,
|
|
3052
3104
|
"aria-required": __props.required || void 0,
|
|
3053
3105
|
"aria-describedby": __props.describedBy,
|
|
3054
|
-
class:
|
|
3055
|
-
|
|
3056
|
-
}, null, 42, _hoisted_1$4)
|
|
3106
|
+
class: [inputClass, "text-right pr-10"]
|
|
3107
|
+
}, _ctx.$attrs, { onInput: handleInput }), null, 16, _hoisted_1$4)
|
|
3057
3108
|
]),
|
|
3058
3109
|
actions: withCtx(() => [..._cache[0] || (_cache[0] = [
|
|
3059
3110
|
createElementVNode("span", { class: "text-sm font-medium text-gray-500 dark:text-gray-400" }, "%", -1)
|
|
@@ -3068,6 +3119,9 @@ const _hoisted_2$1 = ["disabled"];
|
|
|
3068
3119
|
const _hoisted_3 = ["id", "value", "name", "disabled", "required", "min", "max"];
|
|
3069
3120
|
const _hoisted_4 = ["disabled"];
|
|
3070
3121
|
const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
3122
|
+
...{
|
|
3123
|
+
inheritAttrs: false
|
|
3124
|
+
},
|
|
3071
3125
|
__name: "QuantityInput",
|
|
3072
3126
|
props: /* @__PURE__ */ mergeModels({
|
|
3073
3127
|
size: { default: "md" },
|
|
@@ -3152,7 +3206,7 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
|
3152
3206
|
class: normalizeClass(["text-gray-600 dark:text-gray-300", sizeClasses.value.icon])
|
|
3153
3207
|
}, null, 8, ["class"])
|
|
3154
3208
|
], 10, _hoisted_2$1),
|
|
3155
|
-
createElementVNode("input", {
|
|
3209
|
+
createElementVNode("input", mergeProps({
|
|
3156
3210
|
id: __props.id ?? __props.name,
|
|
3157
3211
|
value: modelValue.value,
|
|
3158
3212
|
type: "number",
|
|
@@ -3161,15 +3215,14 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
|
3161
3215
|
required: __props.required,
|
|
3162
3216
|
min: __props.min,
|
|
3163
3217
|
max: __props.max,
|
|
3164
|
-
class:
|
|
3218
|
+
class: [
|
|
3165
3219
|
"bg-transparent text-center font-semibold text-gray-900 dark:text-white",
|
|
3166
3220
|
"focus:outline-none appearance-none",
|
|
3167
3221
|
"[&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none",
|
|
3168
3222
|
"disabled:opacity-50",
|
|
3169
3223
|
sizeClasses.value.input
|
|
3170
|
-
]
|
|
3171
|
-
|
|
3172
|
-
}, null, 42, _hoisted_3),
|
|
3224
|
+
]
|
|
3225
|
+
}, _ctx.$attrs, { onInput: handleInput }), null, 16, _hoisted_3),
|
|
3173
3226
|
createElementVNode("button", {
|
|
3174
3227
|
type: "button",
|
|
3175
3228
|
disabled: !canIncrement.value,
|
|
@@ -3193,6 +3246,9 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
|
3193
3246
|
});
|
|
3194
3247
|
const _hoisted_1$2 = ["id", "name", "placeholder", "disabled", "required", "aria-invalid", "aria-required", "aria-describedby"];
|
|
3195
3248
|
const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
3249
|
+
...{
|
|
3250
|
+
inheritAttrs: false
|
|
3251
|
+
},
|
|
3196
3252
|
__name: "URLInput",
|
|
3197
3253
|
props: /* @__PURE__ */ mergeModels({
|
|
3198
3254
|
placeholder: { default: "https://example.com" },
|
|
@@ -3230,14 +3286,14 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
3230
3286
|
}
|
|
3231
3287
|
}
|
|
3232
3288
|
return (_ctx, _cache) => {
|
|
3233
|
-
return openBlock(), createBlock(_sfc_main$
|
|
3289
|
+
return openBlock(), createBlock(_sfc_main$p, {
|
|
3234
3290
|
icon: "lucide:link",
|
|
3235
3291
|
size: __props.size,
|
|
3236
3292
|
disabled: __props.disabled,
|
|
3237
3293
|
invalid: showStatus.value && isValid.value === false
|
|
3238
3294
|
}, {
|
|
3239
3295
|
default: withCtx(({ inputClass }) => [
|
|
3240
|
-
withDirectives(createElementVNode("input", {
|
|
3296
|
+
withDirectives(createElementVNode("input", mergeProps({
|
|
3241
3297
|
id: __props.id ?? __props.name,
|
|
3242
3298
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event),
|
|
3243
3299
|
type: "url",
|
|
@@ -3248,9 +3304,8 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
3248
3304
|
"aria-invalid": showStatus.value && isValid.value === false || void 0,
|
|
3249
3305
|
"aria-required": __props.required || void 0,
|
|
3250
3306
|
"aria-describedby": __props.describedBy,
|
|
3251
|
-
class:
|
|
3252
|
-
|
|
3253
|
-
}, null, 42, _hoisted_1$2), [
|
|
3307
|
+
class: inputClass
|
|
3308
|
+
}, _ctx.$attrs, { onBlur: handleBlur }), null, 16, _hoisted_1$2), [
|
|
3254
3309
|
[vModelText, modelValue.value]
|
|
3255
3310
|
])
|
|
3256
3311
|
]),
|
|
@@ -3279,6 +3334,9 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
3279
3334
|
});
|
|
3280
3335
|
const _hoisted_1$1 = ["value", "type", "name", "disabled", "onInput", "onKeydown"];
|
|
3281
3336
|
const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
3337
|
+
...{
|
|
3338
|
+
inheritAttrs: false
|
|
3339
|
+
},
|
|
3282
3340
|
__name: "OTPInput",
|
|
3283
3341
|
props: /* @__PURE__ */ mergeModels({
|
|
3284
3342
|
length: { default: 6 },
|
|
@@ -3429,6 +3487,9 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
3429
3487
|
const _hoisted_1 = ["onClick"];
|
|
3430
3488
|
const _hoisted_2 = ["id", "name", "placeholder", "disabled", "required"];
|
|
3431
3489
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
3490
|
+
...{
|
|
3491
|
+
inheritAttrs: false
|
|
3492
|
+
},
|
|
3432
3493
|
__name: "TagsInput",
|
|
3433
3494
|
props: /* @__PURE__ */ mergeModels({
|
|
3434
3495
|
placeholder: { default: "Add tag..." },
|
|
@@ -3549,7 +3610,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
3549
3610
|
]),
|
|
3550
3611
|
_: 1
|
|
3551
3612
|
}),
|
|
3552
|
-
canAddMore.value ? withDirectives((openBlock(), createElementBlock("input", {
|
|
3613
|
+
canAddMore.value ? withDirectives((openBlock(), createElementBlock("input", mergeProps({
|
|
3553
3614
|
key: 0,
|
|
3554
3615
|
id: __props.id ?? __props.name,
|
|
3555
3616
|
ref_key: "inputRef",
|
|
@@ -3560,41 +3621,42 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
3560
3621
|
placeholder: modelValue.value.length === 0 ? __props.placeholder : "",
|
|
3561
3622
|
disabled: __props.disabled,
|
|
3562
3623
|
required: __props.required && modelValue.value.length === 0,
|
|
3563
|
-
class:
|
|
3624
|
+
class: [
|
|
3564
3625
|
"flex-1 min-w-20 bg-transparent border-none focus:outline-none",
|
|
3565
3626
|
"text-gray-900 dark:text-white placeholder-gray-400",
|
|
3566
3627
|
sizeClasses.value.input
|
|
3567
|
-
]
|
|
3628
|
+
]
|
|
3629
|
+
}, _ctx.$attrs, {
|
|
3568
3630
|
onKeydown: handleKeydown,
|
|
3569
3631
|
onBlur: handleBlur
|
|
3570
|
-
}, null,
|
|
3632
|
+
}), null, 16, _hoisted_2)), [
|
|
3571
3633
|
[vModelText, inputValue.value]
|
|
3572
3634
|
]) : createCommentVNode("", true)
|
|
3573
3635
|
], 2);
|
|
3574
3636
|
};
|
|
3575
3637
|
}
|
|
3576
3638
|
});
|
|
3577
|
-
const TagsInput = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
3639
|
+
const TagsInput = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-fcace07c"]]);
|
|
3578
3640
|
export {
|
|
3579
3641
|
Slider as S,
|
|
3580
3642
|
TagsInput as T,
|
|
3581
3643
|
_sfc_main$r as _,
|
|
3582
3644
|
_sfc_main$q as a,
|
|
3583
|
-
_sfc_main$
|
|
3584
|
-
_sfc_main$
|
|
3585
|
-
_sfc_main$
|
|
3586
|
-
_sfc_main$
|
|
3587
|
-
_sfc_main$
|
|
3588
|
-
_sfc_main$
|
|
3589
|
-
_sfc_main$
|
|
3590
|
-
_sfc_main$
|
|
3591
|
-
_sfc_main$
|
|
3592
|
-
_sfc_main$
|
|
3593
|
-
_sfc_main$
|
|
3594
|
-
_sfc_main$
|
|
3595
|
-
_sfc_main$
|
|
3596
|
-
_sfc_main$
|
|
3597
|
-
_sfc_main$
|
|
3645
|
+
_sfc_main$o as b,
|
|
3646
|
+
_sfc_main$n as c,
|
|
3647
|
+
_sfc_main$m as d,
|
|
3648
|
+
_sfc_main$l as e,
|
|
3649
|
+
_sfc_main$k as f,
|
|
3650
|
+
_sfc_main$i as g,
|
|
3651
|
+
_sfc_main$h as h,
|
|
3652
|
+
_sfc_main$g as i,
|
|
3653
|
+
_sfc_main$f as j,
|
|
3654
|
+
_sfc_main$e as k,
|
|
3655
|
+
_sfc_main$d as l,
|
|
3656
|
+
_sfc_main$c as m,
|
|
3657
|
+
_sfc_main$b as n,
|
|
3658
|
+
_sfc_main$a as o,
|
|
3659
|
+
_sfc_main$p as p,
|
|
3598
3660
|
_sfc_main$9 as q,
|
|
3599
3661
|
_sfc_main$8 as r,
|
|
3600
3662
|
_sfc_main$7 as s,
|
|
@@ -3605,4 +3667,4 @@ export {
|
|
|
3605
3667
|
_sfc_main$2 as x,
|
|
3606
3668
|
_sfc_main$1 as y
|
|
3607
3669
|
};
|
|
3608
|
-
//# sourceMappingURL=TagsInput-
|
|
3670
|
+
//# sourceMappingURL=TagsInput-CFAC_MSw.js.map
|