cisse-vue-ui 0.7.0 → 0.7.2
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-ClqgyR9O.cjs → TagsInput-BF3zRMcU.cjs} +369 -294
- package/dist/TagsInput-BF3zRMcU.cjs.map +1 -0
- package/dist/{TagsInput-C4wBPfrj.js → TagsInput-D0O6z6le.js} +370 -295
- package/dist/TagsInput-D0O6z6le.js.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-D49k0PP0.js → index-D9_zMCpN.js} +2 -2
- package/dist/index-D9_zMCpN.js.map +1 -0
- package/dist/{index-CRoTVc47.cjs → index-PehFvNFG.cjs} +2 -2
- package/dist/{index-CRoTVc47.cjs.map → index-PehFvNFG.cjs.map} +1 -1
- 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 },
|
|
@@ -2622,6 +2632,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
2622
2632
|
const showDropdown = ref(false);
|
|
2623
2633
|
const searchQuery = ref("");
|
|
2624
2634
|
const dropdownRef = ref(null);
|
|
2635
|
+
const rawDialCodeInput = ref("");
|
|
2625
2636
|
const filteredCountries = computed(() => {
|
|
2626
2637
|
if (!searchQuery.value) return props.countries;
|
|
2627
2638
|
const query = searchQuery.value.toLowerCase();
|
|
@@ -2633,19 +2644,62 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
2633
2644
|
if (!modelValue.value) return "";
|
|
2634
2645
|
return `${selectedCountry.value.dialCode}${modelValue.value}`;
|
|
2635
2646
|
});
|
|
2647
|
+
const displayValue = computed(() => {
|
|
2648
|
+
if (rawDialCodeInput.value) {
|
|
2649
|
+
return rawDialCodeInput.value;
|
|
2650
|
+
}
|
|
2651
|
+
const formatted = formatPhoneWithPattern(modelValue.value, selectedCountry.value.format);
|
|
2652
|
+
if (props.showDialCode && modelValue.value) {
|
|
2653
|
+
return `${selectedCountry.value.dialCode} ${formatted}`;
|
|
2654
|
+
}
|
|
2655
|
+
return formatted;
|
|
2656
|
+
});
|
|
2636
2657
|
function selectCountry(country) {
|
|
2637
2658
|
selectedCountry.value = country;
|
|
2638
2659
|
showDropdown.value = false;
|
|
2639
2660
|
searchQuery.value = "";
|
|
2640
2661
|
}
|
|
2641
|
-
function
|
|
2642
|
-
const cleaned = value.replace(/\
|
|
2643
|
-
|
|
2662
|
+
function parsePhoneWithDialCode(value) {
|
|
2663
|
+
const cleaned = value.replace(/\s/g, "");
|
|
2664
|
+
if (cleaned.startsWith("+") || cleaned.startsWith("00")) {
|
|
2665
|
+
const withPlus = cleaned.startsWith("00") ? "+" + cleaned.slice(2) : cleaned;
|
|
2666
|
+
for (const country of props.countries) {
|
|
2667
|
+
if (withPlus.startsWith(country.dialCode)) {
|
|
2668
|
+
const digits = withPlus.slice(country.dialCode.length).replace(/\D/g, "");
|
|
2669
|
+
return { digits, country };
|
|
2670
|
+
}
|
|
2671
|
+
}
|
|
2672
|
+
}
|
|
2673
|
+
return { digits: getPhoneDigits(value) };
|
|
2644
2674
|
}
|
|
2645
2675
|
function handleInput(event) {
|
|
2646
2676
|
const target = event.target;
|
|
2647
|
-
const
|
|
2648
|
-
|
|
2677
|
+
const inputValue = target.value;
|
|
2678
|
+
if (inputValue.startsWith("+") || inputValue.startsWith("00")) {
|
|
2679
|
+
const { digits, country } = parsePhoneWithDialCode(inputValue);
|
|
2680
|
+
if (country) {
|
|
2681
|
+
selectedCountry.value = country;
|
|
2682
|
+
modelValue.value = digits;
|
|
2683
|
+
rawDialCodeInput.value = "";
|
|
2684
|
+
} else {
|
|
2685
|
+
rawDialCodeInput.value = inputValue;
|
|
2686
|
+
modelValue.value = "";
|
|
2687
|
+
}
|
|
2688
|
+
} else {
|
|
2689
|
+
rawDialCodeInput.value = "";
|
|
2690
|
+
modelValue.value = getPhoneDigits(inputValue);
|
|
2691
|
+
}
|
|
2692
|
+
}
|
|
2693
|
+
function handlePaste(event) {
|
|
2694
|
+
var _a;
|
|
2695
|
+
const pastedData = (_a = event.clipboardData) == null ? void 0 : _a.getData("text");
|
|
2696
|
+
if (!pastedData) return;
|
|
2697
|
+
const { digits, country } = parsePhoneWithDialCode(pastedData);
|
|
2698
|
+
if (country) {
|
|
2699
|
+
event.preventDefault();
|
|
2700
|
+
selectedCountry.value = country;
|
|
2701
|
+
modelValue.value = digits;
|
|
2702
|
+
}
|
|
2649
2703
|
}
|
|
2650
2704
|
function handleClickOutside(event) {
|
|
2651
2705
|
if (dropdownRef.value && !dropdownRef.value.contains(event.target)) {
|
|
@@ -2667,7 +2721,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
2667
2721
|
ref_key: "dropdownRef",
|
|
2668
2722
|
ref: dropdownRef
|
|
2669
2723
|
}, [
|
|
2670
|
-
createVNode(_sfc_main$
|
|
2724
|
+
createVNode(_sfc_main$p, {
|
|
2671
2725
|
size: __props.size,
|
|
2672
2726
|
disabled: __props.disabled
|
|
2673
2727
|
}, {
|
|
@@ -2689,9 +2743,9 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
2689
2743
|
], 8, _hoisted_1$7)
|
|
2690
2744
|
]),
|
|
2691
2745
|
default: withCtx(({ inputClass }) => [
|
|
2692
|
-
createElementVNode("input", {
|
|
2746
|
+
createElementVNode("input", mergeProps({
|
|
2693
2747
|
id: __props.id ?? __props.name,
|
|
2694
|
-
value:
|
|
2748
|
+
value: displayValue.value,
|
|
2695
2749
|
type: "tel",
|
|
2696
2750
|
name: __props.name,
|
|
2697
2751
|
placeholder: __props.placeholder,
|
|
@@ -2699,9 +2753,11 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
2699
2753
|
required: __props.required,
|
|
2700
2754
|
"aria-required": __props.required || void 0,
|
|
2701
2755
|
"aria-describedby": __props.describedBy,
|
|
2702
|
-
class:
|
|
2703
|
-
|
|
2704
|
-
|
|
2756
|
+
class: [inputClass, "pl-20"]
|
|
2757
|
+
}, _ctx.$attrs, {
|
|
2758
|
+
onInput: handleInput,
|
|
2759
|
+
onPaste: handlePaste
|
|
2760
|
+
}), null, 16, _hoisted_3$3)
|
|
2705
2761
|
]),
|
|
2706
2762
|
actions: withCtx(() => [
|
|
2707
2763
|
createElementVNode("span", _hoisted_4$1, toDisplayString(selectedCountry.value.dialCode), 1)
|
|
@@ -2754,6 +2810,9 @@ const _hoisted_1$6 = ["disabled"];
|
|
|
2754
2810
|
const _hoisted_2$3 = ["id", "value", "name", "placeholder", "disabled", "required", "min", "max", "step", "aria-required", "aria-describedby"];
|
|
2755
2811
|
const _hoisted_3$2 = ["disabled"];
|
|
2756
2812
|
const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
2813
|
+
...{
|
|
2814
|
+
inheritAttrs: false
|
|
2815
|
+
},
|
|
2757
2816
|
__name: "NumberInput",
|
|
2758
2817
|
props: /* @__PURE__ */ mergeModels({
|
|
2759
2818
|
placeholder: { default: "0" },
|
|
@@ -2812,12 +2871,12 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
2812
2871
|
}
|
|
2813
2872
|
}
|
|
2814
2873
|
return (_ctx, _cache) => {
|
|
2815
|
-
return openBlock(), createBlock(_sfc_main$
|
|
2874
|
+
return openBlock(), createBlock(_sfc_main$p, {
|
|
2816
2875
|
size: __props.size,
|
|
2817
2876
|
disabled: __props.disabled
|
|
2818
2877
|
}, createSlots({
|
|
2819
2878
|
default: withCtx(({ inputClass }) => [
|
|
2820
|
-
createElementVNode("input", {
|
|
2879
|
+
createElementVNode("input", mergeProps({
|
|
2821
2880
|
id: __props.id ?? __props.name,
|
|
2822
2881
|
value: modelValue.value,
|
|
2823
2882
|
type: "number",
|
|
@@ -2830,9 +2889,8 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
2830
2889
|
step: __props.step,
|
|
2831
2890
|
"aria-required": __props.required || void 0,
|
|
2832
2891
|
"aria-describedby": __props.describedBy,
|
|
2833
|
-
class:
|
|
2834
|
-
|
|
2835
|
-
}, null, 42, _hoisted_2$3)
|
|
2892
|
+
class: [inputClass, "text-center", __props.showStepper && "pl-12 pr-12"]
|
|
2893
|
+
}, _ctx.$attrs, { onInput: handleInput }), null, 16, _hoisted_2$3)
|
|
2836
2894
|
]),
|
|
2837
2895
|
_: 2
|
|
2838
2896
|
}, [
|
|
@@ -2878,6 +2936,9 @@ const _hoisted_1$5 = { class: "text-sm font-medium text-gray-500 dark:text-gray-
|
|
|
2878
2936
|
const _hoisted_2$2 = ["id", "value", "name", "placeholder", "disabled", "required", "aria-required", "aria-describedby"];
|
|
2879
2937
|
const _hoisted_3$1 = { class: "text-sm font-medium text-gray-500 dark:text-gray-400" };
|
|
2880
2938
|
const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
2939
|
+
...{
|
|
2940
|
+
inheritAttrs: false
|
|
2941
|
+
},
|
|
2881
2942
|
__name: "MoneyInput",
|
|
2882
2943
|
props: /* @__PURE__ */ mergeModels({
|
|
2883
2944
|
placeholder: { default: "0.00" },
|
|
@@ -2948,12 +3009,12 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
2948
3009
|
}
|
|
2949
3010
|
}
|
|
2950
3011
|
return (_ctx, _cache) => {
|
|
2951
|
-
return openBlock(), createBlock(_sfc_main$
|
|
3012
|
+
return openBlock(), createBlock(_sfc_main$p, {
|
|
2952
3013
|
size: __props.size,
|
|
2953
3014
|
disabled: __props.disabled
|
|
2954
3015
|
}, createSlots({
|
|
2955
3016
|
default: withCtx(({ inputClass }) => [
|
|
2956
|
-
createElementVNode("input", {
|
|
3017
|
+
createElementVNode("input", mergeProps({
|
|
2957
3018
|
id: __props.id ?? __props.name,
|
|
2958
3019
|
value: displayValue.value,
|
|
2959
3020
|
type: "text",
|
|
@@ -2964,10 +3025,11 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
2964
3025
|
required: __props.required,
|
|
2965
3026
|
"aria-required": __props.required || void 0,
|
|
2966
3027
|
"aria-describedby": __props.describedBy,
|
|
2967
|
-
class:
|
|
3028
|
+
class: [inputClass, "text-right"]
|
|
3029
|
+
}, _ctx.$attrs, {
|
|
2968
3030
|
onInput: handleInput,
|
|
2969
3031
|
onBlur: handleBlur
|
|
2970
|
-
}, null,
|
|
3032
|
+
}), null, 16, _hoisted_2$2)
|
|
2971
3033
|
]),
|
|
2972
3034
|
_: 2
|
|
2973
3035
|
}, [
|
|
@@ -2991,6 +3053,9 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
2991
3053
|
});
|
|
2992
3054
|
const _hoisted_1$4 = ["id", "value", "name", "placeholder", "disabled", "required", "min", "max", "step", "aria-required", "aria-describedby"];
|
|
2993
3055
|
const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
3056
|
+
...{
|
|
3057
|
+
inheritAttrs: false
|
|
3058
|
+
},
|
|
2994
3059
|
__name: "PercentInput",
|
|
2995
3060
|
props: /* @__PURE__ */ mergeModels({
|
|
2996
3061
|
placeholder: { default: "0" },
|
|
@@ -3032,12 +3097,12 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
|
3032
3097
|
displayValue.value = target.value;
|
|
3033
3098
|
}
|
|
3034
3099
|
return (_ctx, _cache) => {
|
|
3035
|
-
return openBlock(), createBlock(_sfc_main$
|
|
3100
|
+
return openBlock(), createBlock(_sfc_main$p, {
|
|
3036
3101
|
size: __props.size,
|
|
3037
3102
|
disabled: __props.disabled
|
|
3038
3103
|
}, {
|
|
3039
3104
|
default: withCtx(({ inputClass }) => [
|
|
3040
|
-
createElementVNode("input", {
|
|
3105
|
+
createElementVNode("input", mergeProps({
|
|
3041
3106
|
id: __props.id ?? __props.name,
|
|
3042
3107
|
value: displayValue.value,
|
|
3043
3108
|
type: "number",
|
|
@@ -3051,9 +3116,8 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
|
3051
3116
|
step: __props.decimals > 0 ? Math.pow(10, -__props.decimals) : 1,
|
|
3052
3117
|
"aria-required": __props.required || void 0,
|
|
3053
3118
|
"aria-describedby": __props.describedBy,
|
|
3054
|
-
class:
|
|
3055
|
-
|
|
3056
|
-
}, null, 42, _hoisted_1$4)
|
|
3119
|
+
class: [inputClass, "text-right pr-10"]
|
|
3120
|
+
}, _ctx.$attrs, { onInput: handleInput }), null, 16, _hoisted_1$4)
|
|
3057
3121
|
]),
|
|
3058
3122
|
actions: withCtx(() => [..._cache[0] || (_cache[0] = [
|
|
3059
3123
|
createElementVNode("span", { class: "text-sm font-medium text-gray-500 dark:text-gray-400" }, "%", -1)
|
|
@@ -3068,6 +3132,9 @@ const _hoisted_2$1 = ["disabled"];
|
|
|
3068
3132
|
const _hoisted_3 = ["id", "value", "name", "disabled", "required", "min", "max"];
|
|
3069
3133
|
const _hoisted_4 = ["disabled"];
|
|
3070
3134
|
const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
3135
|
+
...{
|
|
3136
|
+
inheritAttrs: false
|
|
3137
|
+
},
|
|
3071
3138
|
__name: "QuantityInput",
|
|
3072
3139
|
props: /* @__PURE__ */ mergeModels({
|
|
3073
3140
|
size: { default: "md" },
|
|
@@ -3152,7 +3219,7 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
|
3152
3219
|
class: normalizeClass(["text-gray-600 dark:text-gray-300", sizeClasses.value.icon])
|
|
3153
3220
|
}, null, 8, ["class"])
|
|
3154
3221
|
], 10, _hoisted_2$1),
|
|
3155
|
-
createElementVNode("input", {
|
|
3222
|
+
createElementVNode("input", mergeProps({
|
|
3156
3223
|
id: __props.id ?? __props.name,
|
|
3157
3224
|
value: modelValue.value,
|
|
3158
3225
|
type: "number",
|
|
@@ -3161,15 +3228,14 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
|
3161
3228
|
required: __props.required,
|
|
3162
3229
|
min: __props.min,
|
|
3163
3230
|
max: __props.max,
|
|
3164
|
-
class:
|
|
3231
|
+
class: [
|
|
3165
3232
|
"bg-transparent text-center font-semibold text-gray-900 dark:text-white",
|
|
3166
3233
|
"focus:outline-none appearance-none",
|
|
3167
3234
|
"[&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none",
|
|
3168
3235
|
"disabled:opacity-50",
|
|
3169
3236
|
sizeClasses.value.input
|
|
3170
|
-
]
|
|
3171
|
-
|
|
3172
|
-
}, null, 42, _hoisted_3),
|
|
3237
|
+
]
|
|
3238
|
+
}, _ctx.$attrs, { onInput: handleInput }), null, 16, _hoisted_3),
|
|
3173
3239
|
createElementVNode("button", {
|
|
3174
3240
|
type: "button",
|
|
3175
3241
|
disabled: !canIncrement.value,
|
|
@@ -3193,6 +3259,9 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
|
3193
3259
|
});
|
|
3194
3260
|
const _hoisted_1$2 = ["id", "name", "placeholder", "disabled", "required", "aria-invalid", "aria-required", "aria-describedby"];
|
|
3195
3261
|
const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
3262
|
+
...{
|
|
3263
|
+
inheritAttrs: false
|
|
3264
|
+
},
|
|
3196
3265
|
__name: "URLInput",
|
|
3197
3266
|
props: /* @__PURE__ */ mergeModels({
|
|
3198
3267
|
placeholder: { default: "https://example.com" },
|
|
@@ -3230,14 +3299,14 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
3230
3299
|
}
|
|
3231
3300
|
}
|
|
3232
3301
|
return (_ctx, _cache) => {
|
|
3233
|
-
return openBlock(), createBlock(_sfc_main$
|
|
3302
|
+
return openBlock(), createBlock(_sfc_main$p, {
|
|
3234
3303
|
icon: "lucide:link",
|
|
3235
3304
|
size: __props.size,
|
|
3236
3305
|
disabled: __props.disabled,
|
|
3237
3306
|
invalid: showStatus.value && isValid.value === false
|
|
3238
3307
|
}, {
|
|
3239
3308
|
default: withCtx(({ inputClass }) => [
|
|
3240
|
-
withDirectives(createElementVNode("input", {
|
|
3309
|
+
withDirectives(createElementVNode("input", mergeProps({
|
|
3241
3310
|
id: __props.id ?? __props.name,
|
|
3242
3311
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event),
|
|
3243
3312
|
type: "url",
|
|
@@ -3248,9 +3317,8 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
3248
3317
|
"aria-invalid": showStatus.value && isValid.value === false || void 0,
|
|
3249
3318
|
"aria-required": __props.required || void 0,
|
|
3250
3319
|
"aria-describedby": __props.describedBy,
|
|
3251
|
-
class:
|
|
3252
|
-
|
|
3253
|
-
}, null, 42, _hoisted_1$2), [
|
|
3320
|
+
class: inputClass
|
|
3321
|
+
}, _ctx.$attrs, { onBlur: handleBlur }), null, 16, _hoisted_1$2), [
|
|
3254
3322
|
[vModelText, modelValue.value]
|
|
3255
3323
|
])
|
|
3256
3324
|
]),
|
|
@@ -3279,6 +3347,9 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
3279
3347
|
});
|
|
3280
3348
|
const _hoisted_1$1 = ["value", "type", "name", "disabled", "onInput", "onKeydown"];
|
|
3281
3349
|
const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
3350
|
+
...{
|
|
3351
|
+
inheritAttrs: false
|
|
3352
|
+
},
|
|
3282
3353
|
__name: "OTPInput",
|
|
3283
3354
|
props: /* @__PURE__ */ mergeModels({
|
|
3284
3355
|
length: { default: 6 },
|
|
@@ -3429,6 +3500,9 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
3429
3500
|
const _hoisted_1 = ["onClick"];
|
|
3430
3501
|
const _hoisted_2 = ["id", "name", "placeholder", "disabled", "required"];
|
|
3431
3502
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
3503
|
+
...{
|
|
3504
|
+
inheritAttrs: false
|
|
3505
|
+
},
|
|
3432
3506
|
__name: "TagsInput",
|
|
3433
3507
|
props: /* @__PURE__ */ mergeModels({
|
|
3434
3508
|
placeholder: { default: "Add tag..." },
|
|
@@ -3549,7 +3623,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
3549
3623
|
]),
|
|
3550
3624
|
_: 1
|
|
3551
3625
|
}),
|
|
3552
|
-
canAddMore.value ? withDirectives((openBlock(), createElementBlock("input", {
|
|
3626
|
+
canAddMore.value ? withDirectives((openBlock(), createElementBlock("input", mergeProps({
|
|
3553
3627
|
key: 0,
|
|
3554
3628
|
id: __props.id ?? __props.name,
|
|
3555
3629
|
ref_key: "inputRef",
|
|
@@ -3560,41 +3634,42 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
3560
3634
|
placeholder: modelValue.value.length === 0 ? __props.placeholder : "",
|
|
3561
3635
|
disabled: __props.disabled,
|
|
3562
3636
|
required: __props.required && modelValue.value.length === 0,
|
|
3563
|
-
class:
|
|
3637
|
+
class: [
|
|
3564
3638
|
"flex-1 min-w-20 bg-transparent border-none focus:outline-none",
|
|
3565
3639
|
"text-gray-900 dark:text-white placeholder-gray-400",
|
|
3566
3640
|
sizeClasses.value.input
|
|
3567
|
-
]
|
|
3641
|
+
]
|
|
3642
|
+
}, _ctx.$attrs, {
|
|
3568
3643
|
onKeydown: handleKeydown,
|
|
3569
3644
|
onBlur: handleBlur
|
|
3570
|
-
}, null,
|
|
3645
|
+
}), null, 16, _hoisted_2)), [
|
|
3571
3646
|
[vModelText, inputValue.value]
|
|
3572
3647
|
]) : createCommentVNode("", true)
|
|
3573
3648
|
], 2);
|
|
3574
3649
|
};
|
|
3575
3650
|
}
|
|
3576
3651
|
});
|
|
3577
|
-
const TagsInput = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
3652
|
+
const TagsInput = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-fcace07c"]]);
|
|
3578
3653
|
export {
|
|
3579
3654
|
Slider as S,
|
|
3580
3655
|
TagsInput as T,
|
|
3581
3656
|
_sfc_main$r as _,
|
|
3582
3657
|
_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$
|
|
3658
|
+
_sfc_main$o as b,
|
|
3659
|
+
_sfc_main$n as c,
|
|
3660
|
+
_sfc_main$m as d,
|
|
3661
|
+
_sfc_main$l as e,
|
|
3662
|
+
_sfc_main$k as f,
|
|
3663
|
+
_sfc_main$i as g,
|
|
3664
|
+
_sfc_main$h as h,
|
|
3665
|
+
_sfc_main$g as i,
|
|
3666
|
+
_sfc_main$f as j,
|
|
3667
|
+
_sfc_main$e as k,
|
|
3668
|
+
_sfc_main$d as l,
|
|
3669
|
+
_sfc_main$c as m,
|
|
3670
|
+
_sfc_main$b as n,
|
|
3671
|
+
_sfc_main$a as o,
|
|
3672
|
+
_sfc_main$p as p,
|
|
3598
3673
|
_sfc_main$9 as q,
|
|
3599
3674
|
_sfc_main$8 as r,
|
|
3600
3675
|
_sfc_main$7 as s,
|
|
@@ -3605,4 +3680,4 @@ export {
|
|
|
3605
3680
|
_sfc_main$2 as x,
|
|
3606
3681
|
_sfc_main$1 as y
|
|
3607
3682
|
};
|
|
3608
|
-
//# sourceMappingURL=TagsInput-
|
|
3683
|
+
//# sourceMappingURL=TagsInput-D0O6z6le.js.map
|