@7pmlabs/design-system 0.4.7 → 0.4.8
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/design-system10.js +1 -1
- package/dist/design-system10.mjs +1 -1
- package/dist/design-system100.js +1 -1
- package/dist/design-system100.js.map +1 -1
- package/dist/design-system100.mjs +5 -24
- package/dist/design-system100.mjs.map +1 -1
- package/dist/design-system101.js +1 -1
- package/dist/design-system101.mjs +1 -1
- package/dist/design-system102.js +1 -1
- package/dist/design-system102.mjs +1 -1
- package/dist/design-system103.js +1 -1
- package/dist/design-system103.mjs +2 -2
- package/dist/design-system104.js +1 -1
- package/dist/design-system104.mjs +2 -6
- package/dist/design-system104.mjs.map +1 -1
- package/dist/design-system105.js +1 -1
- package/dist/design-system105.mjs +5 -3
- package/dist/design-system105.mjs.map +1 -1
- package/dist/design-system106.js +1 -1
- package/dist/design-system106.mjs +4 -2
- package/dist/design-system106.mjs.map +1 -1
- package/dist/design-system107.js +1 -1
- package/dist/design-system107.mjs +2 -2
- package/dist/design-system13.js +1 -1
- package/dist/design-system13.mjs +1 -1
- package/dist/design-system14.js +1 -1
- package/dist/design-system14.js.map +1 -1
- package/dist/design-system14.mjs +2 -2
- package/dist/design-system15.js +1 -1
- package/dist/design-system15.mjs +1 -1
- package/dist/design-system18.js +1 -1
- package/dist/design-system18.js.map +1 -1
- package/dist/design-system18.mjs +1 -1
- package/dist/design-system18.mjs.map +1 -1
- package/dist/design-system19.js +1 -1
- package/dist/design-system19.js.map +1 -1
- package/dist/design-system19.mjs +3 -3
- package/dist/design-system202.js +1 -1
- package/dist/design-system202.mjs +5 -5
- package/dist/design-system203.js +1 -1
- package/dist/design-system203.mjs +1 -1
- package/dist/design-system21.js +1 -1
- package/dist/design-system21.mjs +1 -1
- package/dist/design-system211.js +1 -1
- package/dist/design-system211.js.map +1 -1
- package/dist/design-system211.mjs +3 -3
- package/dist/design-system211.mjs.map +1 -1
- package/dist/design-system212.js +1 -1
- package/dist/design-system212.js.map +1 -1
- package/dist/design-system212.mjs +4 -4
- package/dist/design-system212.mjs.map +1 -1
- package/dist/design-system213.js +1 -1
- package/dist/design-system213.js.map +1 -1
- package/dist/design-system213.mjs +4 -10
- package/dist/design-system213.mjs.map +1 -1
- package/dist/design-system214.js +1 -1
- package/dist/design-system214.js.map +1 -1
- package/dist/design-system214.mjs +10 -6
- package/dist/design-system214.mjs.map +1 -1
- package/dist/design-system215.js +1 -1
- package/dist/design-system215.js.map +1 -1
- package/dist/design-system215.mjs +6 -6
- package/dist/design-system215.mjs.map +1 -1
- package/dist/design-system216.js +1 -1
- package/dist/design-system216.js.map +1 -1
- package/dist/design-system216.mjs +6 -4
- package/dist/design-system216.mjs.map +1 -1
- package/dist/design-system22.js +1 -1
- package/dist/design-system22.js.map +1 -1
- package/dist/design-system22.mjs +1 -1
- package/dist/design-system22.mjs.map +1 -1
- package/dist/design-system23.js +1 -1
- package/dist/design-system23.mjs +1 -1
- package/dist/design-system25.js +1 -1
- package/dist/design-system25.mjs +3 -3
- package/dist/design-system26.js +1 -1
- package/dist/design-system26.mjs +3 -3
- package/dist/design-system27.js +1 -1
- package/dist/design-system27.mjs +3 -3
- package/dist/design-system28.js +1 -1
- package/dist/design-system28.mjs +1 -1
- package/dist/design-system31.js +1 -1
- package/dist/design-system31.mjs +3 -3
- package/dist/design-system32.js +1 -1
- package/dist/design-system32.mjs +3 -3
- package/dist/design-system33.js +1 -1
- package/dist/design-system33.mjs +1 -1
- package/dist/design-system34.js +1 -1
- package/dist/design-system34.mjs +1 -1
- package/dist/design-system35.js +1 -1
- package/dist/design-system35.mjs +1 -1
- package/dist/design-system36.js +1 -1
- package/dist/design-system36.mjs +1 -1
- package/dist/design-system37.js +1 -1
- package/dist/design-system37.mjs +2 -2
- package/dist/design-system38.js +1 -1
- package/dist/design-system38.mjs +3 -3
- package/dist/design-system39.js +1 -1
- package/dist/design-system39.mjs +3 -3
- package/dist/design-system41.js +1 -1
- package/dist/design-system41.mjs +3 -3
- package/dist/design-system42.js +1 -1
- package/dist/design-system42.mjs +1 -1
- package/dist/design-system43.js +1 -1
- package/dist/design-system43.mjs +1 -1
- package/dist/design-system44.js +1 -1
- package/dist/design-system44.mjs +5 -5
- package/dist/design-system45.js +1 -1
- package/dist/design-system45.js.map +1 -1
- package/dist/design-system45.mjs +44 -42
- package/dist/design-system45.mjs.map +1 -1
- package/dist/design-system46.js +1 -1
- package/dist/design-system46.mjs +3 -3
- package/dist/design-system48.js +1 -1
- package/dist/design-system48.mjs +3 -3
- package/dist/design-system49.js +6 -1
- package/dist/design-system49.js.map +1 -1
- package/dist/design-system49.mjs +107 -2
- package/dist/design-system49.mjs.map +1 -1
- package/dist/design-system50.js +6 -1
- package/dist/design-system50.js.map +1 -1
- package/dist/design-system50.mjs +910 -130
- package/dist/design-system50.mjs.map +1 -1
- package/dist/design-system51.js +7 -1
- package/dist/design-system51.js.map +1 -1
- package/dist/design-system51.mjs +861 -2
- package/dist/design-system51.mjs.map +1 -1
- package/dist/design-system52.js +1 -1
- package/dist/design-system52.mjs +2 -7
- package/dist/design-system52.mjs.map +1 -1
- package/dist/design-system53.js +1 -1
- package/dist/design-system53.js.map +1 -1
- package/dist/design-system53.mjs +132 -2
- package/dist/design-system53.mjs.map +1 -1
- package/dist/design-system55.js +1 -4
- package/dist/design-system55.js.map +1 -1
- package/dist/design-system55.mjs +7 -74
- package/dist/design-system55.mjs.map +1 -1
- package/dist/design-system57.js +1 -1
- package/dist/design-system57.mjs +2 -2
- package/dist/design-system58.js +4 -1
- package/dist/design-system58.js.map +1 -1
- package/dist/design-system58.mjs +74 -2
- package/dist/design-system58.mjs.map +1 -1
- package/dist/design-system59.js +1 -1
- package/dist/design-system59.mjs +2 -2
- package/dist/design-system60.js +1 -1
- package/dist/design-system60.mjs +1 -1
- package/dist/design-system61.js +1 -1
- package/dist/design-system61.mjs +1 -1
- package/dist/design-system62.js +1 -1
- package/dist/design-system62.mjs +1 -1
- package/dist/design-system63.js +1 -1
- package/dist/design-system63.mjs +1 -1
- package/dist/design-system64.js +1 -1
- package/dist/design-system64.js.map +1 -1
- package/dist/design-system64.mjs +2 -28
- package/dist/design-system64.mjs.map +1 -1
- package/dist/design-system65.js +1 -1
- package/dist/design-system65.mjs +2 -2
- package/dist/design-system66.js +1 -1
- package/dist/design-system66.js.map +1 -1
- package/dist/design-system66.mjs +2 -58
- package/dist/design-system66.mjs.map +1 -1
- package/dist/design-system67.js +1 -1
- package/dist/design-system67.js.map +1 -1
- package/dist/design-system67.mjs +28 -2
- package/dist/design-system67.mjs.map +1 -1
- package/dist/design-system68.js +1 -1
- package/dist/design-system68.mjs +2 -2
- package/dist/design-system69.js +1 -1
- package/dist/design-system69.js.map +1 -1
- package/dist/design-system69.mjs +58 -2
- package/dist/design-system69.mjs.map +1 -1
- package/dist/design-system70.js +1 -1
- package/dist/design-system70.mjs +2 -2
- package/dist/design-system71.js +1 -1
- package/dist/design-system71.mjs +1 -1
- package/dist/design-system72.js +1 -1
- package/dist/design-system72.mjs +1 -1
- package/dist/design-system73.js +1 -1
- package/dist/design-system73.mjs +1 -1
- package/dist/design-system74.js +1 -1
- package/dist/design-system74.mjs +2 -2
- package/dist/design-system75.js +1 -1
- package/dist/design-system75.js.map +1 -1
- package/dist/design-system75.mjs +2 -81
- package/dist/design-system75.mjs.map +1 -1
- package/dist/design-system76.js +1 -1
- package/dist/design-system76.mjs +2 -2
- package/dist/design-system77.js +1 -1
- package/dist/design-system77.mjs +2 -2
- package/dist/design-system78.js +1 -1
- package/dist/design-system78.js.map +1 -1
- package/dist/design-system78.mjs +71 -109
- package/dist/design-system78.mjs.map +1 -1
- package/dist/design-system80.js +1 -1
- package/dist/design-system80.mjs +1 -1
- package/dist/design-system81.js +1 -1
- package/dist/design-system81.js.map +1 -1
- package/dist/design-system81.mjs +119 -2
- package/dist/design-system81.mjs.map +1 -1
- package/dist/design-system82.js +1 -1
- package/dist/design-system82.js.map +1 -1
- package/dist/design-system82.mjs +2 -102
- package/dist/design-system82.mjs.map +1 -1
- package/dist/design-system83.js +1 -1
- package/dist/design-system83.mjs +2 -2
- package/dist/design-system84.js +1 -1
- package/dist/design-system84.js.map +1 -1
- package/dist/design-system84.mjs +2 -173
- package/dist/design-system84.mjs.map +1 -1
- package/dist/design-system85.js +1 -1
- package/dist/design-system85.js.map +1 -1
- package/dist/design-system85.mjs +102 -2
- package/dist/design-system85.mjs.map +1 -1
- package/dist/design-system86.js +1 -1
- package/dist/design-system86.mjs +2 -2
- package/dist/design-system87.js +1 -1
- package/dist/design-system87.js.map +1 -1
- package/dist/design-system87.mjs +170 -122
- package/dist/design-system87.mjs.map +1 -1
- package/dist/design-system89.js +1 -6
- package/dist/design-system89.js.map +1 -1
- package/dist/design-system89.mjs +2 -107
- package/dist/design-system89.mjs.map +1 -1
- package/dist/design-system9.js +1 -1
- package/dist/design-system9.mjs +1 -1
- package/dist/design-system90.js +1 -6
- package/dist/design-system90.js.map +1 -1
- package/dist/design-system90.mjs +140 -910
- package/dist/design-system90.mjs.map +1 -1
- package/dist/design-system91.js +1 -7
- package/dist/design-system91.js.map +1 -1
- package/dist/design-system91.mjs +2 -861
- package/dist/design-system91.mjs.map +1 -1
- package/dist/design-system92.js +1 -1
- package/dist/design-system92.mjs +3 -3
- package/dist/design-system93.js +5 -1
- package/dist/design-system93.js.map +1 -1
- package/dist/design-system93.mjs +10 -17
- package/dist/design-system93.mjs.map +1 -1
- package/dist/design-system94.js +1 -5
- package/dist/design-system94.js.map +1 -1
- package/dist/design-system94.mjs +17 -10
- package/dist/design-system94.mjs.map +1 -1
- package/dist/design-system96.js +1 -1
- package/dist/design-system96.mjs +1 -1
- package/dist/design-system98.js +1 -1
- package/dist/design-system98.js.map +1 -1
- package/dist/design-system98.mjs +25 -68
- package/dist/design-system98.mjs.map +1 -1
- package/dist/design-system99.js +1 -1
- package/dist/design-system99.js.map +1 -1
- package/dist/design-system99.mjs +68 -6
- package/dist/design-system99.mjs.map +1 -1
- package/dist/style.css +1 -1
- package/dist/types/components/BImagePicker/BImagePicker.vue.d.ts +14 -5
- package/dist/types/types/components/BImagePicker.d.ts +2 -2
- package/package.json +1 -1
package/dist/design-system81.mjs
CHANGED
|
@@ -1,5 +1,122 @@
|
|
|
1
|
-
import f from "
|
|
1
|
+
import { defineComponent as C, ref as R, computed as d, openBlock as l, createElementBlock as p, createVNode as I, createElementVNode as m, renderSlot as b, createCommentVNode as f, withDirectives as $, normalizeClass as w, withKeys as E, vModelDynamic as K, createBlock as M, unref as D } from "vue";
|
|
2
|
+
import { useValidationField as z } from "./design-system3.mjs";
|
|
3
|
+
import { useI18n as F } from "./design-system48.mjs";
|
|
4
|
+
import H from "./design-system29.mjs";
|
|
5
|
+
import N from "./design-system30.mjs";
|
|
6
|
+
import U from "./design-system94.mjs";
|
|
7
|
+
const S = { class: "b-text-field" }, T = { class: "ds-relative" }, j = {
|
|
8
|
+
key: 0,
|
|
9
|
+
class: "b-text-field__prepend-icon ds-absolute ds-left-3 ds-top-0 ds-z-[1] ds-flex ds-h-full ds-cursor-pointer ds-items-center hover:ds-text-primary-t"
|
|
10
|
+
}, A = ["id", "autocomplete", "disabled", "inputmode", "placeholder", "readonly", "type", "onKeyup"], G = {
|
|
11
|
+
key: 1,
|
|
12
|
+
class: "b-text-field__append-icon ds-absolute ds-right-3 ds-top-0 ds-z-[1] ds-flex ds-h-full ds-cursor-pointer ds-items-center hover:ds-text-primary-t"
|
|
13
|
+
}, Z = /* @__PURE__ */ C({
|
|
14
|
+
__name: "BTextField",
|
|
15
|
+
props: {
|
|
16
|
+
inputId: { default: "" },
|
|
17
|
+
inputCssClass: { default: "" },
|
|
18
|
+
validationRules: { default: void 0 },
|
|
19
|
+
modelValue: {},
|
|
20
|
+
label: { default: "" },
|
|
21
|
+
placeholder: { default: "" },
|
|
22
|
+
autocomplete: { type: Boolean, default: !1 },
|
|
23
|
+
disabled: { type: Boolean, default: !1 },
|
|
24
|
+
readonly: { type: Boolean, default: !1 },
|
|
25
|
+
type: { default: "text" },
|
|
26
|
+
required: { type: Boolean, default: !1 },
|
|
27
|
+
requiredErrorMessage: { default: "" },
|
|
28
|
+
hideDetails: { type: Boolean, default: !1 },
|
|
29
|
+
inputHandler: { default: void 0 },
|
|
30
|
+
inputmode: { default: "text" }
|
|
31
|
+
},
|
|
32
|
+
emits: ["focus", "blur", "press:enter", "update:modelValue"],
|
|
33
|
+
setup(v, { expose: y, emit: t }) {
|
|
34
|
+
const s = v, { t: h } = F(), r = R(null), g = {
|
|
35
|
+
validateRule: (e) => typeof e == "number" ? !!e : !!(e && (e != null && e.trim())),
|
|
36
|
+
errorMessage: () => s.requiredErrorMessage || h("ds.global.field_required")
|
|
37
|
+
}, a = d(() => s.inputId || `id-${U()}`), u = d({
|
|
38
|
+
get() {
|
|
39
|
+
return s.modelValue;
|
|
40
|
+
},
|
|
41
|
+
set(e) {
|
|
42
|
+
t("update:modelValue", e);
|
|
43
|
+
}
|
|
44
|
+
}), _ = d(() => [
|
|
45
|
+
{
|
|
46
|
+
"ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4]": s.disabled,
|
|
47
|
+
"ds-text-black/[0.85]": !s.disabled,
|
|
48
|
+
"ds-border-error focus:ds-ring-1 focus:ds-ring-error": !n.value.valid,
|
|
49
|
+
"ds-border-black/[0.1] focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus": n.value.valid
|
|
50
|
+
},
|
|
51
|
+
s.inputCssClass
|
|
52
|
+
]), k = d(() => {
|
|
53
|
+
let e = [];
|
|
54
|
+
return s.required && e.push(g), s.validationRules && (e = e.concat(s.validationRules)), e.length ? e : void 0;
|
|
55
|
+
}), { validate: c, validationResult: n } = z(
|
|
56
|
+
a.value,
|
|
57
|
+
u,
|
|
58
|
+
k.value
|
|
59
|
+
), B = () => {
|
|
60
|
+
t("press:enter");
|
|
61
|
+
}, V = () => {
|
|
62
|
+
t("focus");
|
|
63
|
+
}, q = () => {
|
|
64
|
+
t("blur");
|
|
65
|
+
}, x = () => {
|
|
66
|
+
c();
|
|
67
|
+
};
|
|
68
|
+
return y({ validate: c, focus: () => {
|
|
69
|
+
var e;
|
|
70
|
+
(e = r.value) == null || e.focus();
|
|
71
|
+
}, blur: () => {
|
|
72
|
+
var e;
|
|
73
|
+
(e = r.value) == null || e.blur();
|
|
74
|
+
} }), (e, o) => (l(), p("div", S, [
|
|
75
|
+
I(N, {
|
|
76
|
+
id: a.value,
|
|
77
|
+
label: e.label,
|
|
78
|
+
required: e.required
|
|
79
|
+
}, null, 8, ["id", "label", "required"]),
|
|
80
|
+
m("div", T, [
|
|
81
|
+
e.$slots.prependIcon ? (l(), p("div", j, [
|
|
82
|
+
b(e.$slots, "prependIcon", {}, void 0, !0)
|
|
83
|
+
])) : f("", !0),
|
|
84
|
+
$(m("input", {
|
|
85
|
+
id: a.value,
|
|
86
|
+
ref_key: "inputRef",
|
|
87
|
+
ref: r,
|
|
88
|
+
"onUpdate:modelValue": o[0] || (o[0] = (i) => u.value = i),
|
|
89
|
+
autocomplete: s.autocomplete ? "on" : "off",
|
|
90
|
+
disabled: s.disabled,
|
|
91
|
+
inputmode: s.inputmode,
|
|
92
|
+
placeholder: s.placeholder,
|
|
93
|
+
readonly: s.readonly,
|
|
94
|
+
type: s.type,
|
|
95
|
+
class: w([[_.value], "ds-block ds-h-[40px] ds-w-full ds-rounded-lg ds-border ds-px-3 ds-text-sm ds-drop-shadow-light"]),
|
|
96
|
+
onBlur: q,
|
|
97
|
+
onFocus: V,
|
|
98
|
+
onInput: o[1] || (o[1] = //@ts-ignore
|
|
99
|
+
(...i) => e.inputHandler && e.inputHandler(...i)),
|
|
100
|
+
onKeyup: [
|
|
101
|
+
x,
|
|
102
|
+
E(B, ["enter"])
|
|
103
|
+
]
|
|
104
|
+
}, null, 42, A), [
|
|
105
|
+
[K, u.value]
|
|
106
|
+
]),
|
|
107
|
+
e.$slots.appendIcon ? (l(), p("div", G, [
|
|
108
|
+
b(e.$slots, "appendIcon", {}, void 0, !0)
|
|
109
|
+
])) : f("", !0)
|
|
110
|
+
]),
|
|
111
|
+
e.hideDetails ? f("", !0) : (l(), M(H, {
|
|
112
|
+
key: 0,
|
|
113
|
+
"error-message": D(n).errorMessage(),
|
|
114
|
+
class: "ds-mt-1"
|
|
115
|
+
}, null, 8, ["error-message"]))
|
|
116
|
+
]));
|
|
117
|
+
}
|
|
118
|
+
});
|
|
2
119
|
export {
|
|
3
|
-
|
|
120
|
+
Z as default
|
|
4
121
|
};
|
|
5
122
|
//# sourceMappingURL=design-system81.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system81.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
1
|
+
{"version":3,"file":"design-system81.mjs","sources":["../src/components/BTextField.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, renderSlot as _renderSlot, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, vModelDynamic as _vModelDynamic, withKeys as _withKeys, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, withDirectives as _withDirectives, unref as _unref, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-d47b93d4\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"b-text-field\" }\nconst _hoisted_2 = { class: \"ds-relative\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"b-text-field__prepend-icon ds-absolute ds-left-3 ds-top-0 ds-z-[1] ds-flex ds-h-full ds-cursor-pointer ds-items-center hover:ds-text-primary-t\"\n}\nconst _hoisted_4 = [\"id\", \"autocomplete\", \"disabled\", \"inputmode\", \"placeholder\", \"readonly\", \"type\", \"onKeyup\"]\nconst _hoisted_5 = {\n key: 1,\n class: \"b-text-field__append-icon ds-absolute ds-right-3 ds-top-0 ds-z-[1] ds-flex ds-h-full ds-cursor-pointer ds-items-center hover:ds-text-primary-t\"\n}\n\nimport {\n useValidationField,\n type ValidationRule,\n} from '@/composables/Validation';\nimport { v4 as uuid } from 'uuid';\nimport { computed, ref } from 'vue';\nimport { useI18n } from 'vue-i18n';\nimport BErrorMessage from './BErrorMessage.vue';\nimport BLabel from './BLabel.vue';\n\n//#region Props\nexport interface BTextFieldProps {\n /**\n * ID of input element\n */\n inputId?: string;\n inputCssClass?: string;\n /**\n * Array of custom validation rules.\n */\n validationRules?: ValidationRule[];\n modelValue: string | number;\n label?: string;\n placeholder?: string;\n autocomplete?: boolean;\n disabled?: boolean;\n readonly?: boolean;\n type?: string;\n /**\n * Validate if the field is left empty.\n */\n required?: boolean;\n requiredErrorMessage?: string;\n /**\n * Hide the validation error message.\n */\n hideDetails?: boolean;\n /**\n * Function is executed on input event.\n */\n inputHandler?: any;\n /**\n * Value of input element's inputmode\n */\n inputmode?:\n | 'none'\n | 'text'\n | 'tel'\n | 'url'\n | 'email'\n | 'numeric'\n | 'decimal'\n | 'search'; // This allows a browser to display an appropriate virtual keyboard\n}\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BTextField',\n props: {\n inputId: { default: '' },\n inputCssClass: { default: '' },\n validationRules: { default: undefined },\n modelValue: {},\n label: { default: '' },\n placeholder: { default: '' },\n autocomplete: { type: Boolean, default: false },\n disabled: { type: Boolean, default: false },\n readonly: { type: Boolean, default: false },\n type: { default: 'text' },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n hideDetails: { type: Boolean, default: false },\n inputHandler: { default: undefined },\n inputmode: { default: 'text' }\n },\n emits: [\"focus\", \"blur\", \"press:enter\", \"update:modelValue\"],\n setup(__props: any, { expose: __expose, emit }) {\n\nconst props = __props;\n\n// https://github.com/tailwindlabs/tailwindcss/discussions/7554\n\n//#endregion\n\n//#region Events\n// https://vuejs.org/api/sfc-script-setup.html#defineprops-defineemits\n// new \"defineEmits\" way of Vue 3.3+ doesn't work with Storybook's autodocs yet\n\n//#endregion\n\n//#region Data\nconst { t } = useI18n();\nconst inputRef = ref<HTMLInputElement | null>(null);\nconst validateRequired: ValidationRule = {\n validateRule: (val: string) => {\n if (typeof val === 'number') {\n return !!val;\n }\n return !!(val && val?.trim());\n },\n errorMessage: () =>\n props.requiredErrorMessage || t('ds.global.field_required'),\n};\nconst id = computed(() => props.inputId || `id-${uuid()}`);\nconst value = computed({\n get() {\n return props.modelValue;\n },\n set(val) {\n emit('update:modelValue', val);\n },\n});\nconst inputCssClassValue = computed(() => [\n {\n 'ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4]': props.disabled,\n 'ds-text-black/[0.85]': !props.disabled,\n 'ds-border-error focus:ds-ring-1 focus:ds-ring-error':\n !validationResult.value.valid,\n 'ds-border-black/[0.1] focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus':\n validationResult.value.valid,\n },\n props.inputCssClass,\n]);\nconst vRules = computed(() => {\n let result: ValidationRule[] = [];\n\n if (props.required) {\n result.push(validateRequired);\n }\n if (props.validationRules) {\n result = result.concat(props.validationRules);\n }\n\n return result.length ? result : undefined;\n});\n\nconst { validate, validationResult } = useValidationField(\n id.value,\n value,\n vRules.value,\n);\n//#endregion\n\n//#region Methods\nconst onKeyUpEnter = () => {\n emit('press:enter');\n};\nconst onFocus = () => {\n emit('focus');\n};\nconst onBlur = () => {\n emit('blur');\n};\nconst onKeyUp = () => {\n validate();\n};\nconst focus = () => {\n inputRef.value?.focus();\n};\nconst blur = () => {\n inputRef.value?.blur();\n};\n//#endregion\n\n__expose({ validate, focus, blur });\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(BLabel, {\n id: id.value,\n label: _ctx.label,\n required: _ctx.required\n }, null, 8, [\"id\", \"label\", \"required\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n (_ctx.$slots.prependIcon)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n _renderSlot(_ctx.$slots, \"prependIcon\", {}, undefined, true)\n ]))\n : _createCommentVNode(\"\", true),\n _withDirectives(_createElementVNode(\"input\", {\n id: id.value,\n ref_key: \"inputRef\",\n ref: inputRef,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((value).value = $event)),\n autocomplete: props.autocomplete ? 'on' : 'off',\n disabled: props.disabled,\n inputmode: props.inputmode,\n placeholder: props.placeholder,\n readonly: props.readonly,\n type: props.type,\n class: _normalizeClass([[inputCssClassValue.value], \"ds-block ds-h-[40px] ds-w-full ds-rounded-lg ds-border ds-px-3 ds-text-sm ds-drop-shadow-light\"]),\n onBlur: onBlur,\n onFocus: onFocus,\n onInput: _cache[1] || (_cache[1] = \n//@ts-ignore\n(...args) => (_ctx.inputHandler && _ctx.inputHandler(...args))),\n onKeyup: [\n onKeyUp,\n _withKeys(onKeyUpEnter, [\"enter\"])\n ]\n }, null, 42, _hoisted_4), [\n [_vModelDynamic, value.value]\n ]),\n (_ctx.$slots.appendIcon)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _renderSlot(_ctx.$slots, \"appendIcon\", {}, undefined, true)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n (!_ctx.hideDetails)\n ? (_openBlock(), _createBlock(BErrorMessage, {\n key: 0,\n \"error-message\": _unref(validationResult).errorMessage(),\n class: \"ds-mt-1\"\n }, null, 8, [\"error-message\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_sfc_main","_defineComponent","__props","__expose","emit","props","t","useI18n","inputRef","ref","validateRequired","val","id","computed","uuid","value","inputCssClassValue","validationResult","vRules","result","validate","useValidationField","onKeyUpEnter","onFocus","onBlur","onKeyUp","_a","_ctx","_cache","_openBlock","_createElementBlock","_createVNode","BLabel","_createElementVNode","_renderSlot","_createCommentVNode","_withDirectives","$event","_normalizeClass","args","_withKeys","_vModelDynamic","_createBlock","BErrorMessage","_unref"],"mappings":"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"}
|
package/dist/design-system82.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=
|
|
1
|
+
"use strict";const e="";module.exports=e;
|
|
2
2
|
//# sourceMappingURL=design-system82.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system82.js","sources":[
|
|
1
|
+
{"version":3,"file":"design-system82.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
package/dist/design-system82.mjs
CHANGED
|
@@ -1,105 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
import { BTooltipPosition as c, BTooltipOpenEvent as i } from "./design-system5.mjs";
|
|
3
|
-
const z = (a) => (P("data-v-8e5f01f5"), a = a(), $(), a), D = { class: "ds-relative" }, M = /* @__PURE__ */ z(() => /* @__PURE__ */ d("div", {
|
|
4
|
-
class: "tooltip-arrow",
|
|
5
|
-
"data-popper-arrow": ""
|
|
6
|
-
}, null, -1)), j = /* @__PURE__ */ x({
|
|
7
|
-
__name: "BTooltip",
|
|
8
|
-
props: {
|
|
9
|
-
modelValue: { type: Boolean, default: !1 },
|
|
10
|
-
position: { default: c.Top },
|
|
11
|
-
openEvent: { default: i.Hover }
|
|
12
|
-
},
|
|
13
|
-
emits: ["update:modelValue"],
|
|
14
|
-
setup(a, { emit: w }) {
|
|
15
|
-
const s = a, t = v(null), o = v(null), p = v(!1), n = C({
|
|
16
|
-
get() {
|
|
17
|
-
return s.modelValue !== void 0 ? s.modelValue : p.value;
|
|
18
|
-
},
|
|
19
|
-
set(e) {
|
|
20
|
-
s.modelValue !== void 0 ? w("update:modelValue", e) : p.value = e;
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
L(
|
|
24
|
-
() => s.position,
|
|
25
|
-
() => {
|
|
26
|
-
V(), h();
|
|
27
|
-
}
|
|
28
|
-
), L(
|
|
29
|
-
() => s.openEvent,
|
|
30
|
-
() => {
|
|
31
|
-
g(), b();
|
|
32
|
-
}
|
|
33
|
-
);
|
|
34
|
-
const f = () => {
|
|
35
|
-
n.value = !n.value;
|
|
36
|
-
}, m = () => {
|
|
37
|
-
n.value = !0;
|
|
38
|
-
}, B = () => {
|
|
39
|
-
n.value = !1;
|
|
40
|
-
}, E = () => {
|
|
41
|
-
n.value = !0;
|
|
42
|
-
}, k = () => {
|
|
43
|
-
n.value = !1;
|
|
44
|
-
}, V = () => {
|
|
45
|
-
o.value && (o.value.style.top = "", o.value.style.right = "", o.value.style.bottom = "", o.value.style.left = "");
|
|
46
|
-
}, h = () => {
|
|
47
|
-
if (o.value)
|
|
48
|
-
switch (s.position) {
|
|
49
|
-
case c.Bottom:
|
|
50
|
-
o.value.style.top = "4px";
|
|
51
|
-
break;
|
|
52
|
-
case c.Top:
|
|
53
|
-
default:
|
|
54
|
-
o.value.style.bottom = "24px";
|
|
55
|
-
break;
|
|
56
|
-
}
|
|
57
|
-
}, b = () => {
|
|
58
|
-
var e, l, u, r, y;
|
|
59
|
-
switch (s.openEvent) {
|
|
60
|
-
case i.Click:
|
|
61
|
-
(e = t.value) == null || e.addEventListener("click", f);
|
|
62
|
-
break;
|
|
63
|
-
case i.Focus:
|
|
64
|
-
(l = t.value) == null || l.addEventListener("focus", m), (u = t.value) == null || u.addEventListener("focusout", B);
|
|
65
|
-
break;
|
|
66
|
-
case i.Hover:
|
|
67
|
-
default:
|
|
68
|
-
(r = t.value) == null || r.addEventListener("mouseover", E), (y = t.value) == null || y.addEventListener("mouseleave", k);
|
|
69
|
-
break;
|
|
70
|
-
}
|
|
71
|
-
}, g = () => {
|
|
72
|
-
var e, l, u, r;
|
|
73
|
-
(e = t.value) == null || e.removeEventListener("click", f), (l = t.value) == null || l.removeEventListener("focus", m), (u = t.value) == null || u.removeEventListener("mouseover", E), (r = t.value) == null || r.removeEventListener("mouseleave", k);
|
|
74
|
-
};
|
|
75
|
-
return S(() => {
|
|
76
|
-
b(), h();
|
|
77
|
-
}), T(() => {
|
|
78
|
-
g();
|
|
79
|
-
}), (e, l) => (F(), H(R, null, [
|
|
80
|
-
d("div", {
|
|
81
|
-
ref_key: "toggleRef",
|
|
82
|
-
ref: t,
|
|
83
|
-
class: "ds-inline"
|
|
84
|
-
}, [
|
|
85
|
-
_(e.$slots, "toggle", {}, void 0, !0)
|
|
86
|
-
], 512),
|
|
87
|
-
I(d("div", D, [
|
|
88
|
-
d("div", {
|
|
89
|
-
ref_key: "contentRef",
|
|
90
|
-
ref: o,
|
|
91
|
-
class: "ds-absolute ds-z-10 ds-inline-block ds-rounded-lg ds-bg-black/[0.65] ds-px-3 ds-py-2 ds-text-sm ds-font-medium ds-text-white ds-shadow-sm ds-transition-opacity ds-duration-300"
|
|
92
|
-
}, [
|
|
93
|
-
_(e.$slots, "default", {}, void 0, !0),
|
|
94
|
-
M
|
|
95
|
-
], 512)
|
|
96
|
-
], 512), [
|
|
97
|
-
[O, n.value]
|
|
98
|
-
])
|
|
99
|
-
], 64));
|
|
100
|
-
}
|
|
101
|
-
});
|
|
1
|
+
const e = "";
|
|
102
2
|
export {
|
|
103
|
-
|
|
3
|
+
e as default
|
|
104
4
|
};
|
|
105
5
|
//# sourceMappingURL=design-system82.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system82.mjs","sources":[
|
|
1
|
+
{"version":3,"file":"design-system82.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
package/dist/design-system83.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e="";module.exports=e;
|
|
1
|
+
"use strict";const e=require("./design-system24.js");module.exports=e;
|
|
2
2
|
//# sourceMappingURL=design-system83.js.map
|
package/dist/design-system83.mjs
CHANGED
package/dist/design-system84.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const
|
|
1
|
+
"use strict";const e=require("./design-system40.js");module.exports=e;
|
|
2
2
|
//# sourceMappingURL=design-system84.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system84.js","sources":["../src/components/BImagePicker/BImagePicker.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withCtx as _withCtx, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-fec0801f\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"b-image-picker ds-w-full\" }\nconst _hoisted_2 = { class: \"ds-gap-2 ds-space-y-4 ds-rounded-lg ds-bg-white ds-p-4 ds-drop-shadow\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"ds-flex ds-flex-wrap ds-justify-center ds-gap-1\"\n}\nconst _hoisted_4 = [\"onClick\", \"onDragenter\", \"onDragstart\", \"onDrop\"]\nconst _hoisted_5 = [\"src\"]\nconst _hoisted_6 = { class: \"ds-flex ds-flex-wrap ds-justify-center\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"svg\", {\n class: \"ds-absolute -ds-bottom-[3px] ds-left-0 ds-h-4 ds-w-4 ds-fill-primary-t\",\n viewBox: \"0 0 512 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, [\n /*#__PURE__*/_createElementVNode(\"path\", { d: \"M447.1 32h-384C28.64 32-.0091 60.65-.0091 96v320c0 35.35 28.65 64 63.1 64h384c35.35 0 64-28.65 64-64V96C511.1 60.65 483.3 32 447.1 32zM111.1 96c26.51 0 48 21.49 48 48S138.5 192 111.1 192s-48-21.49-48-48S85.48 96 111.1 96zM446.1 407.6C443.3 412.8 437.9 416 432 416H82.01c-6.021 0-11.53-3.379-14.26-8.75c-2.73-5.367-2.215-11.81 1.334-16.68l70-96C142.1 290.4 146.9 288 152 288s9.916 2.441 12.93 6.574l32.46 44.51l93.3-139.1C293.7 194.7 298.7 192 304 192s10.35 2.672 13.31 7.125l128 192C448.6 396 448.9 402.3 446.1 407.6z\" })\n], -1))\nconst _hoisted_8 = [\"accept\", \"multiple\"]\n\nimport { FileImageTypes } from '@/constants/Common';\r\nimport type { FileItemRead } from '@/types';\r\nimport { isEmpty } from 'lodash-es';\r\nimport { v4 as uuid } from 'uuid';\r\nimport { computed, ref } from 'vue';\r\nimport { useI18n } from 'vue-i18n';\r\nimport BImagePickerCloseButton from './BImagePickerCloseButton.vue';\r\nimport ImagePreview from './BImagePreview.vue';\r\nimport type { ValidationRule } from '@/composables/Validation';\r\nimport { useValidationField } from '@/composables/Validation';\r\nimport BLabel from '../BLabel.vue';\r\nimport BButton from '../BButton.vue';\r\nimport BErrorMessage from '../BErrorMessage.vue';\r\n\r\n//#region Props\r\nexport interface Props {\r\n inputId?: string;\r\n modelValue: FileItemRead[];\r\n label?: string;\r\n multiple?: boolean;\r\n maxFileSize?: number;\r\n hideDetails?: boolean;\r\n required?: boolean;\r\n requiredErrorMessage?: string;\r\n validationRules?: ValidationRule[];\r\n}\r\n\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BImagePicker',\n props: {\n inputId: { default: '' },\n modelValue: {},\n label: { default: '' },\n multiple: { type: Boolean, default: false },\n maxFileSize: { default: 20 },\n hideDetails: { type: Boolean, default: false },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n validationRules: { default: undefined }\n },\n emits: [\"change\", \"update:modelValue\"],\n setup(__props: any, { expose: __expose, emit }) {\n\nconst props = __props;\n\r\n// Drag & Drop: https://www.w3schools.com/jsref/event_ondragover.asp\r\n\r\n//#endregion\r\n\r\n//#region Events\r\n\r\n//#endregion\r\n\r\n//#region Data\r\nconst { t } = useI18n();\r\nconst inputRef = ref<HTMLInputElement | null>(null);\r\nconst draggedIndex = ref(0);\r\nconst value = computed({\r\n get() {\r\n return props.modelValue;\r\n },\r\n set(val) {\r\n emit('update:modelValue', val);\r\n },\r\n});\r\nconst fileTypesValid = ref(true);\r\nconst fileSizeValid = ref(true);\r\nconst previewImage = ref({\r\n visible: false,\r\n url: '',\r\n});\r\nconst allowedTypes = computed(() => FileImageTypes.join(', '));\r\nconst id = computed(() => props.inputId || `id-${uuid()}`);\r\nconst validateRequired: ValidationRule = {\r\n validateRule: (val: FileItemRead[]) => !!val && val.length > 0,\r\n errorMessage: () =>\r\n props.requiredErrorMessage || t('ds.global.field_required'),\r\n};\r\nconst validateFileTypesValid: ValidationRule = {\r\n validateRule: () => fileTypesValid.value,\r\n errorMessage: () =>\r\n t('ds.components.base.image_picker.file_types_valid', {\r\n types: allowedTypes.value,\r\n }),\r\n};\r\nconst validateFileSizeValid: ValidationRule = {\r\n validateRule: () => fileSizeValid.value,\r\n errorMessage: () =>\r\n t('ds.components.base.image_picker.file_size_valid', {\r\n size: props.maxFileSize,\r\n }),\r\n};\r\nconst vRules = computed(() => {\r\n let result: ValidationRule[] = [];\r\n\r\n if (props.required) {\r\n result.push(validateRequired);\r\n }\r\n if (props.validationRules) {\r\n result = result.concat(props.validationRules);\r\n }\r\n result.push(validateFileTypesValid);\r\n result.push(validateFileSizeValid);\r\n\r\n return result.length ? result : undefined;\r\n});\r\nconst { validate, validationResult } = useValidationField(\r\n id.value,\r\n value,\r\n vRules.value,\r\n);\r\n//#endregion\r\n\r\n//#region Methods\r\n/* Events fired on the drag target */\r\nconst handleDragStart = (index: number, e: DragEvent) => {\r\n draggedIndex.value = index;\r\n const target = e.target as HTMLDivElement;\r\n target.classList.add('dragging');\r\n e.dataTransfer!.effectAllowed = 'move';\r\n e.dataTransfer!.setData('index', index.toString());\r\n};\r\nconst handleDragEnd = (e: DragEvent) => {\r\n const target = e.target as HTMLDivElement;\r\n target.classList.remove('dragging');\r\n};\r\n/* Events fired on the drop target */\r\nconst handleDragEnter = (index: number, e: DragEvent) => {\r\n const target = e.target as HTMLDivElement;\r\n if (draggedIndex.value !== index) {\r\n target.classList.add('dropped-target');\r\n }\r\n};\r\nconst handleDragOver = (e: DragEvent) => {\r\n // By default, data/elements cannot be dropped in other elements. To allow a drop, we must prevent the default handling of the element\r\n e.preventDefault();\r\n e.dataTransfer!.dropEffect = 'move';\r\n};\r\nconst handleDragLeave = (e: DragEvent) => {\r\n // When the draggable p element leaves the droptarget, reset the style\r\n const target = e.target as HTMLDivElement;\r\n target.classList.remove('dropped-target');\r\n};\r\nconst handleDrop = (index: number, e: DragEvent) => {\r\n e.preventDefault();\r\n const target = e.target as HTMLDivElement;\r\n target.classList.remove('dropped-target');\r\n const draggedIndex = parseInt(e.dataTransfer!.getData('index'));\r\n const draggedImg = value.value[draggedIndex];\r\n value.value.splice(draggedIndex, 1);\r\n value.value.splice(index, 0, draggedImg);\r\n\r\n emit('change');\r\n validate();\r\n};\r\nconst openFileDialog = () => {\r\n inputRef.value?.click();\r\n};\r\nconst onChangeInput = (e: any) => {\r\n let fileList: FileList = e.target.files || e.dataTransfer.files;\r\n if (!fileList.length) {\r\n return;\r\n }\r\n createFileImages(fileList);\r\n\r\n // Clear input's value so onChange event can work for the same files next picks\r\n if (inputRef.value) {\r\n inputRef.value.value = null as any;\r\n }\r\n};\r\nconst createFileImages = (fileList: FileList) => {\r\n Array.from(fileList).forEach((file) => {\r\n fileTypesValid.value = FileImageTypes.includes(file.type);\r\n fileSizeValid.value = convertToMB(file.size) <= props.maxFileSize;\r\n\r\n if (fileTypesValid.value && fileSizeValid.value) {\r\n let reader: any = new FileReader();\r\n\r\n reader.onload = (f: any) => {\r\n if (props.multiple) {\r\n value.value.push({\r\n url: f.target.result,\r\n file,\r\n type: file.type,\r\n });\r\n } else {\r\n value.value.splice(0, 1, {\r\n url: f.target.result,\r\n file,\r\n type: file.type,\r\n });\r\n }\r\n\r\n emit('change');\r\n validate();\r\n };\r\n\r\n reader.readAsDataURL(file);\r\n } else {\r\n validate();\r\n }\r\n });\r\n};\r\nconst removeFileImage = (e: Event, index: number) => {\r\n e.stopPropagation();\r\n value.value.splice(index, 1);\r\n\r\n emit('change');\r\n validate();\r\n};\r\nconst convertToMB = (numberOfBytes: number) => numberOfBytes / 1024 ** 2;\r\nconst preview = (item: FileItemRead) => {\r\n previewImage.value.url = item.url;\r\n previewImage.value.visible = true;\r\n};\r\n//#endregion\r\n\r\n__expose({ validate });\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(BLabel, {\n label: props.label\n }, null, 8, [\"label\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n (!_unref(isEmpty)(value.value))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(value.value, (item, index) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n key: index,\n class: \"b-image-picker__draggable ds-h-full ds-cursor-pointer ds-rounded-lg ds-transition-all hover:ds-ring-2 hover:ds-ring-primary-t\",\n draggable: \"true\",\n onClick: ($event: any) => (preview(item)),\n onDragend: handleDragEnd,\n onDragenter: ($event: any) => (handleDragEnter(index, $event)),\n onDragleave: handleDragLeave,\n onDragover: handleDragOver,\n onDragstart: ($event: any) => (handleDragStart(index, $event)),\n onDrop: ($event: any) => (handleDrop(index, $event))\n }, [\n _createElementVNode(\"img\", {\n src: item.url,\n alt: \"image\",\n class: \"ds-h-full ds-w-full ds-rounded-lg\"\n }, null, 8, _hoisted_5),\n _createVNode(BImagePickerCloseButton, {\n class: \"ds-right-1 ds-top-1 ds-h-8 ds-w-8\",\n onClick: (e) => removeFileImage(e, index)\n }, null, 8, [\"onClick\"])\n ], 40, _hoisted_4))\n }), 128))\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_6, [\n _createVNode(BButton, { onClick: openFileDialog }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('ds.components.base.image_picker.select_image')), 1)\n ]),\n appendIcon: _withCtx(() => [\n _hoisted_7\n ]),\n _: 1\n }),\n _createElementVNode(\"input\", {\n ref_key: \"inputRef\",\n ref: inputRef,\n accept: allowedTypes.value,\n multiple: props.multiple,\n class: \"ds-hidden\",\n type: \"file\",\n onChange: onChangeInput\n }, null, 40, _hoisted_8)\n ])\n ]),\n (!props.hideDetails)\n ? (_openBlock(), _createBlock(BErrorMessage, {\n key: 0,\n \"error-message\": _unref(validationResult).errorMessage(),\n class: \"mt-1\"\n }, null, 8, [\"error-message\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(ImagePreview, {\n modelValue: previewImage.value.visible,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((previewImage.value.visible) = $event)),\n url: previewImage.value.url\n }, null, 8, [\"modelValue\", \"url\"])\n ]))\n}\n}\n\n})"],"names":["_withScopeId","_pushScopeId","n","_popScopeId","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_createElementVNode","_hoisted_8","_sfc_main","_defineComponent","__props","__expose","emit","props","t","useI18n","inputRef","ref","draggedIndex","value","computed","val","fileTypesValid","fileSizeValid","previewImage","allowedTypes","FileImageTypes","id","uuid","validateRequired","validateFileTypesValid","validateFileSizeValid","vRules","result","validate","validationResult","useValidationField","handleDragStart","index","e","handleDragEnd","handleDragEnter","target","handleDragOver","handleDragLeave","handleDrop","draggedImg","openFileDialog","_a","onChangeInput","fileList","createFileImages","file","convertToMB","reader","f","removeFileImage","numberOfBytes","preview","item","_ctx","_cache","_openBlock","_createElementBlock","_createVNode","BLabel","_unref","isEmpty","_createCommentVNode","_Fragment","_renderList","$event","BImagePickerCloseButton","BButton","_withCtx","_createTextVNode","_toDisplayString","_createBlock","BErrorMessage","ImagePreview"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"design-system84.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
package/dist/design-system84.mjs
CHANGED
|
@@ -1,176 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { FileImageTypes as V } from "./design-system4.mjs";
|
|
3
|
-
import { useI18n as ee } from "./design-system48.mjs";
|
|
4
|
-
import te from "./design-system101.mjs";
|
|
5
|
-
import ae from "./design-system45.mjs";
|
|
6
|
-
import { useValidationField as le } from "./design-system3.mjs";
|
|
7
|
-
import se from "./design-system30.mjs";
|
|
8
|
-
import re from "./design-system11.mjs";
|
|
9
|
-
import oe from "./design-system29.mjs";
|
|
10
|
-
import de from "./design-system93.mjs";
|
|
11
|
-
import ie from "./design-system100.mjs";
|
|
12
|
-
const ne = (i) => (Y("data-v-fec0801f"), i = i(), Z(), i), ue = { class: "b-image-picker ds-w-full" }, ce = { class: "ds-gap-2 ds-space-y-4 ds-rounded-lg ds-bg-white ds-p-4 ds-drop-shadow" }, pe = {
|
|
13
|
-
key: 0,
|
|
14
|
-
class: "ds-flex ds-flex-wrap ds-justify-center ds-gap-1"
|
|
15
|
-
}, ge = ["onClick", "onDragenter", "onDragstart", "onDrop"], me = ["src"], ve = { class: "ds-flex ds-flex-wrap ds-justify-center" }, fe = /* @__PURE__ */ ne(() => /* @__PURE__ */ d("svg", {
|
|
16
|
-
class: "ds-absolute -ds-bottom-[3px] ds-left-0 ds-h-4 ds-w-4 ds-fill-primary-t",
|
|
17
|
-
viewBox: "0 0 512 512",
|
|
18
|
-
xmlns: "http://www.w3.org/2000/svg"
|
|
19
|
-
}, [
|
|
20
|
-
/* @__PURE__ */ d("path", { d: "M447.1 32h-384C28.64 32-.0091 60.65-.0091 96v320c0 35.35 28.65 64 63.1 64h384c35.35 0 64-28.65 64-64V96C511.1 60.65 483.3 32 447.1 32zM111.1 96c26.51 0 48 21.49 48 48S138.5 192 111.1 192s-48-21.49-48-48S85.48 96 111.1 96zM446.1 407.6C443.3 412.8 437.9 416 432 416H82.01c-6.021 0-11.53-3.379-14.26-8.75c-2.73-5.367-2.215-11.81 1.334-16.68l70-96C142.1 290.4 146.9 288 152 288s9.916 2.441 12.93 6.574l32.46 44.51l93.3-139.1C293.7 194.7 298.7 192 304 192s10.35 2.672 13.31 7.125l128 192C448.6 396 448.9 402.3 446.1 407.6z" })
|
|
21
|
-
], -1)), he = ["accept", "multiple"], Se = /* @__PURE__ */ G({
|
|
22
|
-
__name: "BImagePicker",
|
|
23
|
-
props: {
|
|
24
|
-
inputId: { default: "" },
|
|
25
|
-
modelValue: {},
|
|
26
|
-
label: { default: "" },
|
|
27
|
-
multiple: { type: Boolean, default: !1 },
|
|
28
|
-
maxFileSize: { default: 20 },
|
|
29
|
-
hideDetails: { type: Boolean, default: !1 },
|
|
30
|
-
required: { type: Boolean, default: !1 },
|
|
31
|
-
requiredErrorMessage: { default: "" },
|
|
32
|
-
validationRules: { default: void 0 }
|
|
33
|
-
},
|
|
34
|
-
emits: ["change", "update:modelValue"],
|
|
35
|
-
setup(i, { expose: x, emit: g }) {
|
|
36
|
-
const a = i, { t: _ } = ee(), m = c(null), k = c(0), o = v({
|
|
37
|
-
get() {
|
|
38
|
-
return a.modelValue;
|
|
39
|
-
},
|
|
40
|
-
set(e) {
|
|
41
|
-
g("update:modelValue", e);
|
|
42
|
-
}
|
|
43
|
-
}), y = c(!0), D = c(!0), n = c({
|
|
44
|
-
visible: !1,
|
|
45
|
-
url: ""
|
|
46
|
-
}), w = v(() => V.join(", ")), R = v(() => a.inputId || `id-${de()}`), S = {
|
|
47
|
-
validateRule: (e) => !!e && e.length > 0,
|
|
48
|
-
errorMessage: () => a.requiredErrorMessage || _("ds.global.field_required")
|
|
49
|
-
}, F = {
|
|
50
|
-
validateRule: () => y.value,
|
|
51
|
-
errorMessage: () => _("ds.components.base.image_picker.file_types_valid", {
|
|
52
|
-
types: w.value
|
|
53
|
-
})
|
|
54
|
-
}, z = {
|
|
55
|
-
validateRule: () => D.value,
|
|
56
|
-
errorMessage: () => _("ds.components.base.image_picker.file_size_valid", {
|
|
57
|
-
size: a.maxFileSize
|
|
58
|
-
})
|
|
59
|
-
}, B = v(() => {
|
|
60
|
-
let e = [];
|
|
61
|
-
return a.required && e.push(S), a.validationRules && (e = e.concat(a.validationRules)), e.push(F), e.push(z), e.length ? e : void 0;
|
|
62
|
-
}), { validate: u, validationResult: T } = le(
|
|
63
|
-
R.value,
|
|
64
|
-
o,
|
|
65
|
-
B.value
|
|
66
|
-
), M = (e, t) => {
|
|
67
|
-
k.value = e, t.target.classList.add("dragging"), t.dataTransfer.effectAllowed = "move", t.dataTransfer.setData("index", e.toString());
|
|
68
|
-
}, E = (e) => {
|
|
69
|
-
e.target.classList.remove("dragging");
|
|
70
|
-
}, L = (e, t) => {
|
|
71
|
-
const l = t.target;
|
|
72
|
-
k.value !== e && l.classList.add("dropped-target");
|
|
73
|
-
}, $ = (e) => {
|
|
74
|
-
e.preventDefault(), e.dataTransfer.dropEffect = "move";
|
|
75
|
-
}, q = (e) => {
|
|
76
|
-
e.target.classList.remove("dropped-target");
|
|
77
|
-
}, N = (e, t) => {
|
|
78
|
-
t.preventDefault(), t.target.classList.remove("dropped-target");
|
|
79
|
-
const s = parseInt(t.dataTransfer.getData("index")), r = o.value[s];
|
|
80
|
-
o.value.splice(s, 1), o.value.splice(e, 0, r), g("change"), u();
|
|
81
|
-
}, j = () => {
|
|
82
|
-
var e;
|
|
83
|
-
(e = m.value) == null || e.click();
|
|
84
|
-
}, A = (e) => {
|
|
85
|
-
let t = e.target.files || e.dataTransfer.files;
|
|
86
|
-
t.length && (P(t), m.value && (m.value.value = null));
|
|
87
|
-
}, P = (e) => {
|
|
88
|
-
Array.from(e).forEach((t) => {
|
|
89
|
-
if (y.value = V.includes(t.type), D.value = H(t.size) <= a.maxFileSize, y.value && D.value) {
|
|
90
|
-
let l = new FileReader();
|
|
91
|
-
l.onload = (s) => {
|
|
92
|
-
a.multiple ? o.value.push({
|
|
93
|
-
url: s.target.result,
|
|
94
|
-
file: t,
|
|
95
|
-
type: t.type
|
|
96
|
-
}) : o.value.splice(0, 1, {
|
|
97
|
-
url: s.target.result,
|
|
98
|
-
file: t,
|
|
99
|
-
type: t.type
|
|
100
|
-
}), g("change"), u();
|
|
101
|
-
}, l.readAsDataURL(t);
|
|
102
|
-
} else
|
|
103
|
-
u();
|
|
104
|
-
});
|
|
105
|
-
}, U = (e, t) => {
|
|
106
|
-
e.stopPropagation(), o.value.splice(t, 1), g("change"), u();
|
|
107
|
-
}, H = (e) => e / 1024 ** 2, O = (e) => {
|
|
108
|
-
n.value.url = e.url, n.value.visible = !0;
|
|
109
|
-
};
|
|
110
|
-
return x({ validate: u }), (e, t) => (p(), f("div", ue, [
|
|
111
|
-
h(se, {
|
|
112
|
-
label: a.label
|
|
113
|
-
}, null, 8, ["label"]),
|
|
114
|
-
d("div", ce, [
|
|
115
|
-
b(ie)(o.value) ? I("", !0) : (p(), f("div", pe, [
|
|
116
|
-
(p(!0), f(J, null, K(o.value, (l, s) => (p(), f("div", {
|
|
117
|
-
key: s,
|
|
118
|
-
class: "b-image-picker__draggable ds-h-full ds-cursor-pointer ds-rounded-lg ds-transition-all hover:ds-ring-2 hover:ds-ring-primary-t",
|
|
119
|
-
draggable: "true",
|
|
120
|
-
onClick: (r) => O(l),
|
|
121
|
-
onDragend: E,
|
|
122
|
-
onDragenter: (r) => L(s, r),
|
|
123
|
-
onDragleave: q,
|
|
124
|
-
onDragover: $,
|
|
125
|
-
onDragstart: (r) => M(s, r),
|
|
126
|
-
onDrop: (r) => N(s, r)
|
|
127
|
-
}, [
|
|
128
|
-
d("img", {
|
|
129
|
-
src: l.url,
|
|
130
|
-
alt: "image",
|
|
131
|
-
class: "ds-h-full ds-w-full ds-rounded-lg"
|
|
132
|
-
}, null, 8, me),
|
|
133
|
-
h(te, {
|
|
134
|
-
class: "ds-right-1 ds-top-1 ds-h-8 ds-w-8",
|
|
135
|
-
onClick: (r) => U(r, s)
|
|
136
|
-
}, null, 8, ["onClick"])
|
|
137
|
-
], 40, ge))), 128))
|
|
138
|
-
])),
|
|
139
|
-
d("div", ve, [
|
|
140
|
-
h(re, { onClick: j }, {
|
|
141
|
-
default: C(() => [
|
|
142
|
-
Q(W(e.$t("ds.components.base.image_picker.select_image")), 1)
|
|
143
|
-
]),
|
|
144
|
-
appendIcon: C(() => [
|
|
145
|
-
fe
|
|
146
|
-
]),
|
|
147
|
-
_: 1
|
|
148
|
-
}),
|
|
149
|
-
d("input", {
|
|
150
|
-
ref_key: "inputRef",
|
|
151
|
-
ref: m,
|
|
152
|
-
accept: w.value,
|
|
153
|
-
multiple: a.multiple,
|
|
154
|
-
class: "ds-hidden",
|
|
155
|
-
type: "file",
|
|
156
|
-
onChange: A
|
|
157
|
-
}, null, 40, he)
|
|
158
|
-
])
|
|
159
|
-
]),
|
|
160
|
-
a.hideDetails ? I("", !0) : (p(), X(oe, {
|
|
161
|
-
key: 0,
|
|
162
|
-
"error-message": b(T).errorMessage(),
|
|
163
|
-
class: "mt-1"
|
|
164
|
-
}, null, 8, ["error-message"])),
|
|
165
|
-
h(ae, {
|
|
166
|
-
modelValue: n.value.visible,
|
|
167
|
-
"onUpdate:modelValue": t[0] || (t[0] = (l) => n.value.visible = l),
|
|
168
|
-
url: n.value.url
|
|
169
|
-
}, null, 8, ["modelValue", "url"])
|
|
170
|
-
]));
|
|
171
|
-
}
|
|
172
|
-
});
|
|
1
|
+
import f from "./design-system40.mjs";
|
|
173
2
|
export {
|
|
174
|
-
|
|
3
|
+
f as default
|
|
175
4
|
};
|
|
176
5
|
//# sourceMappingURL=design-system84.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system84.mjs","sources":["../src/components/BImagePicker/BImagePicker.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withCtx as _withCtx, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-fec0801f\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"b-image-picker ds-w-full\" }\nconst _hoisted_2 = { class: \"ds-gap-2 ds-space-y-4 ds-rounded-lg ds-bg-white ds-p-4 ds-drop-shadow\" }\nconst _hoisted_3 = {\n key: 0,\n class: \"ds-flex ds-flex-wrap ds-justify-center ds-gap-1\"\n}\nconst _hoisted_4 = [\"onClick\", \"onDragenter\", \"onDragstart\", \"onDrop\"]\nconst _hoisted_5 = [\"src\"]\nconst _hoisted_6 = { class: \"ds-flex ds-flex-wrap ds-justify-center\" }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"svg\", {\n class: \"ds-absolute -ds-bottom-[3px] ds-left-0 ds-h-4 ds-w-4 ds-fill-primary-t\",\n viewBox: \"0 0 512 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, [\n /*#__PURE__*/_createElementVNode(\"path\", { d: \"M447.1 32h-384C28.64 32-.0091 60.65-.0091 96v320c0 35.35 28.65 64 63.1 64h384c35.35 0 64-28.65 64-64V96C511.1 60.65 483.3 32 447.1 32zM111.1 96c26.51 0 48 21.49 48 48S138.5 192 111.1 192s-48-21.49-48-48S85.48 96 111.1 96zM446.1 407.6C443.3 412.8 437.9 416 432 416H82.01c-6.021 0-11.53-3.379-14.26-8.75c-2.73-5.367-2.215-11.81 1.334-16.68l70-96C142.1 290.4 146.9 288 152 288s9.916 2.441 12.93 6.574l32.46 44.51l93.3-139.1C293.7 194.7 298.7 192 304 192s10.35 2.672 13.31 7.125l128 192C448.6 396 448.9 402.3 446.1 407.6z\" })\n], -1))\nconst _hoisted_8 = [\"accept\", \"multiple\"]\n\nimport { FileImageTypes } from '@/constants/Common';\r\nimport type { FileItemRead } from '@/types';\r\nimport { isEmpty } from 'lodash-es';\r\nimport { v4 as uuid } from 'uuid';\r\nimport { computed, ref } from 'vue';\r\nimport { useI18n } from 'vue-i18n';\r\nimport BImagePickerCloseButton from './BImagePickerCloseButton.vue';\r\nimport ImagePreview from './BImagePreview.vue';\r\nimport type { ValidationRule } from '@/composables/Validation';\r\nimport { useValidationField } from '@/composables/Validation';\r\nimport BLabel from '../BLabel.vue';\r\nimport BButton from '../BButton.vue';\r\nimport BErrorMessage from '../BErrorMessage.vue';\r\n\r\n//#region Props\r\nexport interface Props {\r\n inputId?: string;\r\n modelValue: FileItemRead[];\r\n label?: string;\r\n multiple?: boolean;\r\n maxFileSize?: number;\r\n hideDetails?: boolean;\r\n required?: boolean;\r\n requiredErrorMessage?: string;\r\n validationRules?: ValidationRule[];\r\n}\r\n\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BImagePicker',\n props: {\n inputId: { default: '' },\n modelValue: {},\n label: { default: '' },\n multiple: { type: Boolean, default: false },\n maxFileSize: { default: 20 },\n hideDetails: { type: Boolean, default: false },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n validationRules: { default: undefined }\n },\n emits: [\"change\", \"update:modelValue\"],\n setup(__props: any, { expose: __expose, emit }) {\n\nconst props = __props;\n\r\n// Drag & Drop: https://www.w3schools.com/jsref/event_ondragover.asp\r\n\r\n//#endregion\r\n\r\n//#region Events\r\n\r\n//#endregion\r\n\r\n//#region Data\r\nconst { t } = useI18n();\r\nconst inputRef = ref<HTMLInputElement | null>(null);\r\nconst draggedIndex = ref(0);\r\nconst value = computed({\r\n get() {\r\n return props.modelValue;\r\n },\r\n set(val) {\r\n emit('update:modelValue', val);\r\n },\r\n});\r\nconst fileTypesValid = ref(true);\r\nconst fileSizeValid = ref(true);\r\nconst previewImage = ref({\r\n visible: false,\r\n url: '',\r\n});\r\nconst allowedTypes = computed(() => FileImageTypes.join(', '));\r\nconst id = computed(() => props.inputId || `id-${uuid()}`);\r\nconst validateRequired: ValidationRule = {\r\n validateRule: (val: FileItemRead[]) => !!val && val.length > 0,\r\n errorMessage: () =>\r\n props.requiredErrorMessage || t('ds.global.field_required'),\r\n};\r\nconst validateFileTypesValid: ValidationRule = {\r\n validateRule: () => fileTypesValid.value,\r\n errorMessage: () =>\r\n t('ds.components.base.image_picker.file_types_valid', {\r\n types: allowedTypes.value,\r\n }),\r\n};\r\nconst validateFileSizeValid: ValidationRule = {\r\n validateRule: () => fileSizeValid.value,\r\n errorMessage: () =>\r\n t('ds.components.base.image_picker.file_size_valid', {\r\n size: props.maxFileSize,\r\n }),\r\n};\r\nconst vRules = computed(() => {\r\n let result: ValidationRule[] = [];\r\n\r\n if (props.required) {\r\n result.push(validateRequired);\r\n }\r\n if (props.validationRules) {\r\n result = result.concat(props.validationRules);\r\n }\r\n result.push(validateFileTypesValid);\r\n result.push(validateFileSizeValid);\r\n\r\n return result.length ? result : undefined;\r\n});\r\nconst { validate, validationResult } = useValidationField(\r\n id.value,\r\n value,\r\n vRules.value,\r\n);\r\n//#endregion\r\n\r\n//#region Methods\r\n/* Events fired on the drag target */\r\nconst handleDragStart = (index: number, e: DragEvent) => {\r\n draggedIndex.value = index;\r\n const target = e.target as HTMLDivElement;\r\n target.classList.add('dragging');\r\n e.dataTransfer!.effectAllowed = 'move';\r\n e.dataTransfer!.setData('index', index.toString());\r\n};\r\nconst handleDragEnd = (e: DragEvent) => {\r\n const target = e.target as HTMLDivElement;\r\n target.classList.remove('dragging');\r\n};\r\n/* Events fired on the drop target */\r\nconst handleDragEnter = (index: number, e: DragEvent) => {\r\n const target = e.target as HTMLDivElement;\r\n if (draggedIndex.value !== index) {\r\n target.classList.add('dropped-target');\r\n }\r\n};\r\nconst handleDragOver = (e: DragEvent) => {\r\n // By default, data/elements cannot be dropped in other elements. To allow a drop, we must prevent the default handling of the element\r\n e.preventDefault();\r\n e.dataTransfer!.dropEffect = 'move';\r\n};\r\nconst handleDragLeave = (e: DragEvent) => {\r\n // When the draggable p element leaves the droptarget, reset the style\r\n const target = e.target as HTMLDivElement;\r\n target.classList.remove('dropped-target');\r\n};\r\nconst handleDrop = (index: number, e: DragEvent) => {\r\n e.preventDefault();\r\n const target = e.target as HTMLDivElement;\r\n target.classList.remove('dropped-target');\r\n const draggedIndex = parseInt(e.dataTransfer!.getData('index'));\r\n const draggedImg = value.value[draggedIndex];\r\n value.value.splice(draggedIndex, 1);\r\n value.value.splice(index, 0, draggedImg);\r\n\r\n emit('change');\r\n validate();\r\n};\r\nconst openFileDialog = () => {\r\n inputRef.value?.click();\r\n};\r\nconst onChangeInput = (e: any) => {\r\n let fileList: FileList = e.target.files || e.dataTransfer.files;\r\n if (!fileList.length) {\r\n return;\r\n }\r\n createFileImages(fileList);\r\n\r\n // Clear input's value so onChange event can work for the same files next picks\r\n if (inputRef.value) {\r\n inputRef.value.value = null as any;\r\n }\r\n};\r\nconst createFileImages = (fileList: FileList) => {\r\n Array.from(fileList).forEach((file) => {\r\n fileTypesValid.value = FileImageTypes.includes(file.type);\r\n fileSizeValid.value = convertToMB(file.size) <= props.maxFileSize;\r\n\r\n if (fileTypesValid.value && fileSizeValid.value) {\r\n let reader: any = new FileReader();\r\n\r\n reader.onload = (f: any) => {\r\n if (props.multiple) {\r\n value.value.push({\r\n url: f.target.result,\r\n file,\r\n type: file.type,\r\n });\r\n } else {\r\n value.value.splice(0, 1, {\r\n url: f.target.result,\r\n file,\r\n type: file.type,\r\n });\r\n }\r\n\r\n emit('change');\r\n validate();\r\n };\r\n\r\n reader.readAsDataURL(file);\r\n } else {\r\n validate();\r\n }\r\n });\r\n};\r\nconst removeFileImage = (e: Event, index: number) => {\r\n e.stopPropagation();\r\n value.value.splice(index, 1);\r\n\r\n emit('change');\r\n validate();\r\n};\r\nconst convertToMB = (numberOfBytes: number) => numberOfBytes / 1024 ** 2;\r\nconst preview = (item: FileItemRead) => {\r\n previewImage.value.url = item.url;\r\n previewImage.value.visible = true;\r\n};\r\n//#endregion\r\n\r\n__expose({ validate });\r\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(BLabel, {\n label: props.label\n }, null, 8, [\"label\"]),\n _createElementVNode(\"div\", _hoisted_2, [\n (!_unref(isEmpty)(value.value))\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_3, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(value.value, (item, index) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n key: index,\n class: \"b-image-picker__draggable ds-h-full ds-cursor-pointer ds-rounded-lg ds-transition-all hover:ds-ring-2 hover:ds-ring-primary-t\",\n draggable: \"true\",\n onClick: ($event: any) => (preview(item)),\n onDragend: handleDragEnd,\n onDragenter: ($event: any) => (handleDragEnter(index, $event)),\n onDragleave: handleDragLeave,\n onDragover: handleDragOver,\n onDragstart: ($event: any) => (handleDragStart(index, $event)),\n onDrop: ($event: any) => (handleDrop(index, $event))\n }, [\n _createElementVNode(\"img\", {\n src: item.url,\n alt: \"image\",\n class: \"ds-h-full ds-w-full ds-rounded-lg\"\n }, null, 8, _hoisted_5),\n _createVNode(BImagePickerCloseButton, {\n class: \"ds-right-1 ds-top-1 ds-h-8 ds-w-8\",\n onClick: (e) => removeFileImage(e, index)\n }, null, 8, [\"onClick\"])\n ], 40, _hoisted_4))\n }), 128))\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_6, [\n _createVNode(BButton, { onClick: openFileDialog }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t('ds.components.base.image_picker.select_image')), 1)\n ]),\n appendIcon: _withCtx(() => [\n _hoisted_7\n ]),\n _: 1\n }),\n _createElementVNode(\"input\", {\n ref_key: \"inputRef\",\n ref: inputRef,\n accept: allowedTypes.value,\n multiple: props.multiple,\n class: \"ds-hidden\",\n type: \"file\",\n onChange: onChangeInput\n }, null, 40, _hoisted_8)\n ])\n ]),\n (!props.hideDetails)\n ? (_openBlock(), _createBlock(BErrorMessage, {\n key: 0,\n \"error-message\": _unref(validationResult).errorMessage(),\n class: \"mt-1\"\n }, null, 8, [\"error-message\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(ImagePreview, {\n modelValue: previewImage.value.visible,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event: any) => ((previewImage.value.visible) = $event)),\n url: previewImage.value.url\n }, null, 8, [\"modelValue\", \"url\"])\n ]))\n}\n}\n\n})"],"names":["_withScopeId","_pushScopeId","n","_popScopeId","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_createElementVNode","_hoisted_8","_sfc_main","_defineComponent","__props","__expose","emit","props","t","useI18n","inputRef","ref","draggedIndex","value","computed","val","fileTypesValid","fileSizeValid","previewImage","allowedTypes","FileImageTypes","id","uuid","validateRequired","validateFileTypesValid","validateFileSizeValid","vRules","result","validate","validationResult","useValidationField","handleDragStart","index","e","handleDragEnd","handleDragEnter","target","handleDragOver","handleDragLeave","handleDrop","draggedImg","openFileDialog","_a","onChangeInput","fileList","createFileImages","file","convertToMB","reader","f","removeFileImage","numberOfBytes","preview","item","_ctx","_cache","_openBlock","_createElementBlock","_createVNode","BLabel","_unref","isEmpty","_createCommentVNode","_Fragment","_renderList","$event","BImagePickerCloseButton","BButton","_withCtx","_createTextVNode","_toDisplayString","_createBlock","BErrorMessage","ImagePreview"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"design-system84.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|