@opengis/filter 0.1.18 → 0.1.19
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/README.md +74 -74
- package/dist/components/filter/filter.vue.d.ts.map +1 -1
- package/dist/components/filter-field/fields/date-input-inline.vue.d.ts.map +1 -1
- package/dist/composable/useFilter.d.ts.map +1 -1
- package/dist/index.js +1694 -1676
- package/dist/index.umd.cjs +2 -2
- package/package.json +59 -59
package/dist/index.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { createElementBlock as w, openBlock as
|
|
2
|
-
import { notify as
|
|
3
|
-
const te = (
|
|
4
|
-
const
|
|
5
|
-
for (const [
|
|
6
|
-
|
|
7
|
-
return
|
|
8
|
-
}, Xe = {},
|
|
1
|
+
import { createElementBlock as w, openBlock as i, createElementVNode as s, defineComponent as q, ref as A, withModifiers as se, normalizeClass as L, createCommentVNode as V, toDisplayString as B, computed as E, watch as I, createStaticVNode as Ne, Fragment as U, renderList as X, unref as e, createBlock as T, createVNode as Q, createTextVNode as G, withDirectives as W, vShow as Z, getCurrentInstance as Pe, vModelText as ee, onBeforeUnmount as me, onMounted as ce, isRef as Ye, Teleport as ge, normalizeStyle as be, renderSlot as de, nextTick as fe, withCtx as ae, resolveDynamicComponent as ne, mergeProps as J, toRaw as ue, cloneVNode as We, useSlots as pe, reactive as qe, withKeys as $e, createSlots as Qe, normalizeProps as He, guardReactiveProps as Ge } from "vue";
|
|
2
|
+
import { notify as Ae } from "@opengis/core";
|
|
3
|
+
const te = (m, o) => {
|
|
4
|
+
const y = m.__vccOpts || m;
|
|
5
|
+
for (const [t, a] of o)
|
|
6
|
+
y[t] = a;
|
|
7
|
+
return y;
|
|
8
|
+
}, Xe = {}, Je = {
|
|
9
9
|
xmlns: "http://www.w3.org/2000/svg",
|
|
10
10
|
width: "15px",
|
|
11
11
|
height: "24",
|
|
@@ -17,26 +17,26 @@ const te = (t, o) => {
|
|
|
17
17
|
"stroke-linejoin": "round",
|
|
18
18
|
class: "icon icon-tabler icons-tabler-outline icon-tabler-reload absolute inline mr-1 text-gray-800 transition-all cursor-pointer active:rotate-90 right-1 top-1 hover:text-blue-500"
|
|
19
19
|
};
|
|
20
|
-
function
|
|
21
|
-
return
|
|
22
|
-
|
|
20
|
+
function Ze(m, o) {
|
|
21
|
+
return i(), w("svg", Je, o[0] || (o[0] = [
|
|
22
|
+
s("path", {
|
|
23
23
|
stroke: "none",
|
|
24
24
|
d: "M0 0h24v24H0z",
|
|
25
25
|
fill: "none"
|
|
26
26
|
}, null, -1),
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
])
|
|
27
|
+
s("path", { d: "M19.933 13.041a8 8 0 1 1 -9.925 -8.788c3.899 -1 7.935 1.007 9.425 4.747" }, null, -1),
|
|
28
|
+
s("path", { d: "M20 4v5h-5" }, null, -1)
|
|
29
|
+
]));
|
|
30
30
|
}
|
|
31
|
-
const et = /* @__PURE__ */ te(Xe, [["render",
|
|
31
|
+
const et = /* @__PURE__ */ te(Xe, [["render", Ze]]), tt = { class: "flex items-center justify-between w-full text-sm" }, lt = { class: "flex items-center cursor-pointer w-full" }, ot = {
|
|
32
32
|
key: 0,
|
|
33
33
|
width: "16",
|
|
34
34
|
height: "auto",
|
|
35
35
|
src: "data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9J3doaXRlJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxwYXRoIGQ9J00xMi4yMDcgNC43OTNhMSAxIDAgMDEwIDEuNDE0bC01IDVhMSAxIDAgMDEtMS40MTQgMGwtMi0yYTEgMSAwIDAxMS40MTQtMS40MTRMNi41IDkuMDg2bDQuMjkzLTQuMjkzYTEgMSAwIDAxMS40MTQgMHonLz48L3N2Zz4="
|
|
36
|
-
},
|
|
36
|
+
}, at = ["value"], nt = { class: "w-[calc(100%-18px)] flex flex-row items-center justify-between pl-[10px]" }, rt = { class: "flex flex-row items-center font-normal text-gray-800 gap-x-1" }, st = {
|
|
37
37
|
key: 0,
|
|
38
38
|
class: "text-xs text-gray-500 dark:text-neutral-500 pr-1"
|
|
39
|
-
},
|
|
39
|
+
}, he = /* @__PURE__ */ q({
|
|
40
40
|
__name: "list-item",
|
|
41
41
|
props: {
|
|
42
42
|
layout: {},
|
|
@@ -49,44 +49,44 @@ const et = /* @__PURE__ */ te(Xe, [["render", Je]]), tt = { class: "flex items-c
|
|
|
49
49
|
highlighted: { type: Boolean }
|
|
50
50
|
},
|
|
51
51
|
emits: ["itemClick"],
|
|
52
|
-
setup(
|
|
53
|
-
const
|
|
54
|
-
function
|
|
55
|
-
|
|
52
|
+
setup(m, { expose: o, emit: y }) {
|
|
53
|
+
const t = m, a = y;
|
|
54
|
+
function l() {
|
|
55
|
+
a("itemClick", t.value);
|
|
56
56
|
}
|
|
57
|
-
const
|
|
58
|
-
return o({ el:
|
|
57
|
+
const g = A(null);
|
|
58
|
+
return o({ el: g }), (c, p) => (i(), w("div", {
|
|
59
59
|
class: "flex items-center w-full rounded-sm group hover:bg-gray-100",
|
|
60
60
|
ref_key: "el",
|
|
61
|
-
ref:
|
|
61
|
+
ref: g
|
|
62
62
|
}, [
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
63
|
+
s("div", tt, [
|
|
64
|
+
s("div", lt, [
|
|
65
|
+
s("label", {
|
|
66
66
|
for: "radio-9740",
|
|
67
|
-
class:
|
|
68
|
-
["inline", "popover"].includes(
|
|
69
|
-
{ "bg-blue-100":
|
|
67
|
+
class: L([
|
|
68
|
+
["inline", "popover"].includes(c.layout) ? "text-sm text-gray-500 px-2 w-full py-2 cursor-pointer !flex flex-row items-center" : "flex flex-row items-center w-full px-2 py-2 text-sm text-gray-500 cursor-pointer",
|
|
69
|
+
{ "bg-blue-100": c.highlighted }
|
|
70
70
|
]),
|
|
71
|
-
onClick: se(
|
|
71
|
+
onClick: se(l, ["stop", "prevent"])
|
|
72
72
|
}, [
|
|
73
|
-
|
|
74
|
-
class:
|
|
75
|
-
|
|
76
|
-
|
|
73
|
+
s("div", {
|
|
74
|
+
class: L(["w-[18px] h-[18px] border flex items-center justify-center", [
|
|
75
|
+
c.type == "checkbox" ? "rounded-[4px]" : "rounded-full",
|
|
76
|
+
c.color ? `bg-[${c.color}] border-[#ffffff]` : c.isSelected ? "bg-[#2563eb] border-[#ffffff]" : "bg-[#ffffff] border-[#d9d9d9]"
|
|
77
77
|
]])
|
|
78
78
|
}, [
|
|
79
|
-
|
|
79
|
+
c.isSelected ? (i(), w("img", ot)) : V("", !0)
|
|
80
80
|
], 2),
|
|
81
|
-
|
|
81
|
+
s("input", {
|
|
82
82
|
type: "checkbox",
|
|
83
83
|
class: "hidden",
|
|
84
84
|
id: "radio-9740",
|
|
85
|
-
value:
|
|
86
|
-
}, null, 8,
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
85
|
+
value: c.value
|
|
86
|
+
}, null, 8, at),
|
|
87
|
+
s("div", nt, [
|
|
88
|
+
s("span", rt, B(c.label ?? "Відсутні данні"), 1),
|
|
89
|
+
c.count ? (i(), w("div", st, " (" + B(c.count) + ") ", 1)) : V("", !0)
|
|
90
90
|
])
|
|
91
91
|
], 2)
|
|
92
92
|
])
|
|
@@ -94,56 +94,56 @@ const et = /* @__PURE__ */ te(Xe, [["render", Je]]), tt = { class: "flex items-c
|
|
|
94
94
|
], 512));
|
|
95
95
|
}
|
|
96
96
|
});
|
|
97
|
-
function
|
|
97
|
+
function xe(m, o) {
|
|
98
98
|
const {
|
|
99
|
-
options:
|
|
100
|
-
limit:
|
|
101
|
-
} =
|
|
102
|
-
function
|
|
103
|
-
return Array.isArray(
|
|
104
|
-
}
|
|
105
|
-
const
|
|
106
|
-
function k(
|
|
107
|
-
const
|
|
108
|
-
return { autoValueKey:
|
|
109
|
-
}
|
|
110
|
-
if (
|
|
111
|
-
const
|
|
112
|
-
|
|
113
|
-
}
|
|
114
|
-
const
|
|
115
|
-
const
|
|
116
|
-
return
|
|
99
|
+
options: y = [],
|
|
100
|
+
limit: t = 20
|
|
101
|
+
} = m;
|
|
102
|
+
function a(b) {
|
|
103
|
+
return Array.isArray(b) ? b[0] : b;
|
|
104
|
+
}
|
|
105
|
+
const l = A(a(m.modelValue)), g = A(""), c = A(!1), p = A([]), x = A("id"), f = A("text"), v = A(!1), u = A(m.layout !== "popover" && y.length > t);
|
|
106
|
+
function k(b) {
|
|
107
|
+
const h = b.find(Boolean) ?? {}, K = ["id", "value", "code", "key"].find(($) => $ in h) ?? "id", M = ["text", "label", "name", "title"].find(($) => $ in h) ?? "text";
|
|
108
|
+
return { autoValueKey: K, autoLabelKey: M };
|
|
109
|
+
}
|
|
110
|
+
if (y.length > 0) {
|
|
111
|
+
const b = k(y);
|
|
112
|
+
x.value = b.autoValueKey, f.value = b.autoLabelKey;
|
|
113
|
+
}
|
|
114
|
+
const _ = E(() => {
|
|
115
|
+
const b = p.value;
|
|
116
|
+
return m.layout === "popover" || v.value ? b : b.slice(0, t);
|
|
117
117
|
});
|
|
118
|
-
I(() =>
|
|
119
|
-
|
|
120
|
-
}, { immediate: !0 }),
|
|
121
|
-
function C(
|
|
122
|
-
return
|
|
118
|
+
I(() => m.modelValue, (b) => {
|
|
119
|
+
l.value = a(b);
|
|
120
|
+
}, { immediate: !0 }), p.value = [...y].sort((b, h) => m.sort === "count" ? h.count && b.count ? h.count - b.count : 0 : m.sort === "name" ? String(b[f.value] ?? "").localeCompare(String(h[f.value] ?? "")) : 0);
|
|
121
|
+
function C(b) {
|
|
122
|
+
return l.value === b[x.value];
|
|
123
123
|
}
|
|
124
|
-
function
|
|
125
|
-
|
|
124
|
+
function d(b) {
|
|
125
|
+
l.value = b[x.value], o("update:modelValue", l.value), o("change", { name: m.name, value: l.value });
|
|
126
126
|
}
|
|
127
|
-
function
|
|
128
|
-
|
|
127
|
+
function n() {
|
|
128
|
+
l.value = void 0, o("update:modelValue", l.value), o("clear", m.name);
|
|
129
129
|
}
|
|
130
|
-
function
|
|
131
|
-
|
|
130
|
+
function r() {
|
|
131
|
+
v.value = !v.value;
|
|
132
132
|
}
|
|
133
133
|
return {
|
|
134
|
-
innerValue:
|
|
135
|
-
searchTerm:
|
|
136
|
-
filteredOptions:
|
|
134
|
+
innerValue: l,
|
|
135
|
+
searchTerm: g,
|
|
136
|
+
filteredOptions: _,
|
|
137
137
|
isSelected: C,
|
|
138
|
-
selectItem:
|
|
139
|
-
clear:
|
|
140
|
-
toggleShowAll:
|
|
141
|
-
isReqProc:
|
|
142
|
-
showAll:
|
|
143
|
-
isEnableShowAll:
|
|
144
|
-
labelKey:
|
|
145
|
-
valueKey:
|
|
146
|
-
allOptions:
|
|
138
|
+
selectItem: d,
|
|
139
|
+
clear: n,
|
|
140
|
+
toggleShowAll: r,
|
|
141
|
+
isReqProc: c,
|
|
142
|
+
showAll: v,
|
|
143
|
+
isEnableShowAll: u,
|
|
144
|
+
labelKey: f,
|
|
145
|
+
valueKey: x,
|
|
146
|
+
allOptions: p
|
|
147
147
|
};
|
|
148
148
|
}
|
|
149
149
|
const it = {}, ut = {
|
|
@@ -152,12 +152,12 @@ const it = {}, ut = {
|
|
|
152
152
|
fill: "none",
|
|
153
153
|
xmlns: "http://www.w3.org/2000/svg"
|
|
154
154
|
};
|
|
155
|
-
function
|
|
156
|
-
return
|
|
155
|
+
function dt(m, o) {
|
|
156
|
+
return i(), w("svg", ut, o[0] || (o[0] = [
|
|
157
157
|
Ne('<rect x="27" y="50.5" width="124" height="39" rx="7.5" fill="currentColor" class="fill-white dark:fill-neutral-800"></rect><rect x="27" y="50.5" width="124" height="39" rx="7.5" stroke="currentColor" class="stroke-gray-50 dark:stroke-neutral-700/10"></rect><rect x="34.5" y="58" width="24" height="24" rx="4" fill="currentColor" class="fill-gray-50 dark:fill-neutral-700/30"></rect><rect x="66.5" y="61" width="60" height="6" rx="3" fill="currentColor" class="fill-gray-50 dark:fill-neutral-700/30"></rect><rect x="66.5" y="73" width="77" height="6" rx="3" fill="currentColor" class="fill-gray-50 dark:fill-neutral-700/30"></rect><rect x="19.5" y="28.5" width="139" height="39" rx="7.5" fill="currentColor" class="fill-white dark:fill-neutral-800"></rect><rect x="19.5" y="28.5" width="139" height="39" rx="7.5" stroke="currentColor" class="stroke-gray-100 dark:stroke-neutral-700/30"></rect><rect x="27" y="36" width="24" height="24" rx="4" fill="currentColor" class="fill-gray-100 dark:fill-neutral-700/70"></rect><rect x="59" y="39" width="60" height="6" rx="3" fill="currentColor" class="fill-gray-100 dark:fill-neutral-700/70"></rect><rect x="59" y="51" width="92" height="6" rx="3" fill="currentColor" class="fill-gray-100 dark:fill-neutral-700/70"></rect><g filter="url(#filter1)"><rect x="12" y="6" width="154" height="40" rx="8" fill="currentColor" class="fill-white dark:fill-neutral-800" shape-rendering="crispEdges"></rect><rect x="12.5" y="6.5" width="153" height="39" rx="7.5" stroke="currentColor" class="stroke-gray-100 dark:stroke-neutral-700/60" shape-rendering="crispEdges"></rect><rect x="20" y="14" width="24" height="24" rx="4" fill="currentColor" class="fill-gray-200 dark:fill-neutral-700"></rect><rect x="52" y="17" width="60" height="6" rx="3" fill="currentColor" class="fill-gray-200 dark:fill-neutral-700"></rect><rect x="52" y="29" width="106" height="6" rx="3" fill="currentColor" class="fill-gray-200 dark:fill-neutral-700"></rect></g><defs><filter id="filter1" x="0" y="0" width="178" height="64" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood><feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"></feColorMatrix><feOffset dy="6"></feOffset><feGaussianBlur stdDeviation="6"></feGaussianBlur><feComposite in2="hardAlpha" operator="out"></feComposite><feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.03 0"></feColorMatrix><feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_1187_14810"></feBlend><feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_1187_14810" result="shape"></feBlend></filter></defs>', 12)
|
|
158
|
-
])
|
|
158
|
+
]));
|
|
159
159
|
}
|
|
160
|
-
const we = /* @__PURE__ */ te(it, [["render",
|
|
160
|
+
const we = /* @__PURE__ */ te(it, [["render", dt]]), ct = {}, ft = {
|
|
161
161
|
xmlns: "http://www.w3.org/2000/svg",
|
|
162
162
|
width: "24",
|
|
163
163
|
height: "24",
|
|
@@ -169,17 +169,17 @@ const we = /* @__PURE__ */ te(it, [["render", ct]]), dt = {}, ft = {
|
|
|
169
169
|
"stroke-linejoin": "round",
|
|
170
170
|
class: "icon icon-tabler icons-tabler-outline icon-tabler-chevron-down w-[14px] rotate"
|
|
171
171
|
};
|
|
172
|
-
function
|
|
173
|
-
return
|
|
174
|
-
|
|
172
|
+
function pt(m, o) {
|
|
173
|
+
return i(), w("svg", ft, o[0] || (o[0] = [
|
|
174
|
+
s("path", {
|
|
175
175
|
stroke: "none",
|
|
176
176
|
d: "M0 0h24v24H0z",
|
|
177
177
|
fill: "none"
|
|
178
178
|
}, null, -1),
|
|
179
|
-
|
|
180
|
-
])
|
|
179
|
+
s("path", { d: "M6 9l6 6l6 -6" }, null, -1)
|
|
180
|
+
]));
|
|
181
181
|
}
|
|
182
|
-
const ve = /* @__PURE__ */ te(
|
|
182
|
+
const ve = /* @__PURE__ */ te(ct, [["render", pt]]), mt = {}, vt = {
|
|
183
183
|
xmlns: "http://www.w3.org/2000/svg",
|
|
184
184
|
width: "24",
|
|
185
185
|
height: "24",
|
|
@@ -191,26 +191,26 @@ const ve = /* @__PURE__ */ te(dt, [["render", mt]]), pt = {}, vt = {
|
|
|
191
191
|
"stroke-linejoin": "round",
|
|
192
192
|
class: "icon icon-tabler icons-tabler-outline icon-tabler-chevron-down w-[14px] rotate-[180deg]"
|
|
193
193
|
};
|
|
194
|
-
function yt(
|
|
195
|
-
return
|
|
196
|
-
|
|
194
|
+
function yt(m, o) {
|
|
195
|
+
return i(), w("svg", vt, o[0] || (o[0] = [
|
|
196
|
+
s("path", {
|
|
197
197
|
stroke: "none",
|
|
198
198
|
d: "M0 0h24v24H0z",
|
|
199
199
|
fill: "none"
|
|
200
200
|
}, null, -1),
|
|
201
|
-
|
|
202
|
-
])
|
|
201
|
+
s("path", { d: "M6 9l6 6l6 -6" }, null, -1)
|
|
202
|
+
]));
|
|
203
203
|
}
|
|
204
|
-
const ke = /* @__PURE__ */ te(
|
|
204
|
+
const ke = /* @__PURE__ */ te(mt, [["render", yt]]), gt = {
|
|
205
205
|
key: 0,
|
|
206
206
|
class: "w-full"
|
|
207
|
-
}, bt = { class: "flex flex-col items-center justify-center p-5 text-center" },
|
|
207
|
+
}, bt = { class: "flex flex-col items-center justify-center p-5 text-center" }, ht = {
|
|
208
208
|
key: 0,
|
|
209
209
|
class: "flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"
|
|
210
|
-
},
|
|
210
|
+
}, xt = {
|
|
211
211
|
key: 1,
|
|
212
212
|
class: "flex justify-between items-center text-xs text-gray-500 p-1 border-t"
|
|
213
|
-
}, wt = /* @__PURE__ */
|
|
213
|
+
}, wt = /* @__PURE__ */ q({
|
|
214
214
|
__name: "radio",
|
|
215
215
|
props: {
|
|
216
216
|
id: {},
|
|
@@ -239,161 +239,161 @@ const ke = /* @__PURE__ */ te(pt, [["render", yt]]), gt = {
|
|
|
239
239
|
itemClass: {}
|
|
240
240
|
},
|
|
241
241
|
emits: ["update:modelValue", "change", "clear"],
|
|
242
|
-
setup(
|
|
243
|
-
const
|
|
244
|
-
innerValue:
|
|
245
|
-
filteredOptions:
|
|
246
|
-
isSelected:
|
|
247
|
-
selectItem:
|
|
248
|
-
clear:
|
|
249
|
-
toggleShowAll:
|
|
250
|
-
isReqProc:
|
|
242
|
+
setup(m, { expose: o, emit: y }) {
|
|
243
|
+
const t = m, a = A(null), l = y, {
|
|
244
|
+
innerValue: g,
|
|
245
|
+
filteredOptions: c,
|
|
246
|
+
isSelected: p,
|
|
247
|
+
selectItem: x,
|
|
248
|
+
clear: f,
|
|
249
|
+
toggleShowAll: v,
|
|
250
|
+
isReqProc: u,
|
|
251
251
|
showAll: k,
|
|
252
|
-
isEnableShowAll:
|
|
252
|
+
isEnableShowAll: _,
|
|
253
253
|
labelKey: C,
|
|
254
|
-
valueKey:
|
|
255
|
-
allOptions:
|
|
256
|
-
} =
|
|
257
|
-
...
|
|
258
|
-
modelValue:
|
|
259
|
-
},
|
|
254
|
+
valueKey: d,
|
|
255
|
+
allOptions: n
|
|
256
|
+
} = xe({
|
|
257
|
+
...t,
|
|
258
|
+
modelValue: t.modelValue ?? t.default ?? ""
|
|
259
|
+
}, l);
|
|
260
260
|
return o({
|
|
261
|
-
clear:
|
|
262
|
-
inputTextRef:
|
|
261
|
+
clear: f,
|
|
262
|
+
inputTextRef: a
|
|
263
263
|
}), I(
|
|
264
|
-
() =>
|
|
265
|
-
(
|
|
266
|
-
|
|
264
|
+
() => t.modelValue,
|
|
265
|
+
(r) => {
|
|
266
|
+
r === void 0 && (g.value = void 0);
|
|
267
267
|
}
|
|
268
|
-
), (
|
|
269
|
-
class:
|
|
268
|
+
), (r, b) => (i(), w("div", {
|
|
269
|
+
class: L([r.layout === "popover" ? "flex flex-col h-full" : "flex flex-col vs-filter-checkbox"])
|
|
270
270
|
}, [
|
|
271
|
-
|
|
272
|
-
class:
|
|
273
|
-
|
|
274
|
-
|
|
271
|
+
s("div", {
|
|
272
|
+
class: L([
|
|
273
|
+
r.layout === "popover" ? "flex-1 overflow-y-auto p-2" : "",
|
|
274
|
+
r.layout === "inline" ? "flex-1 overflow-y-auto max-h-80" : ""
|
|
275
275
|
])
|
|
276
276
|
}, [
|
|
277
|
-
(
|
|
278
|
-
layout:
|
|
279
|
-
key:
|
|
280
|
-
count:
|
|
281
|
-
label:
|
|
282
|
-
color:
|
|
277
|
+
(i(!0), w(U, null, X(e(c), (h) => (i(), T(he, {
|
|
278
|
+
layout: r.layout,
|
|
279
|
+
key: h[e(d)],
|
|
280
|
+
count: h.count,
|
|
281
|
+
label: h[e(C)],
|
|
282
|
+
color: h.color,
|
|
283
283
|
type: "radio",
|
|
284
|
-
value:
|
|
285
|
-
"is-selected": e(
|
|
286
|
-
onItemClick: (
|
|
284
|
+
value: h[e(d)],
|
|
285
|
+
"is-selected": e(p)(h),
|
|
286
|
+
onItemClick: (K) => e(x)(h)
|
|
287
287
|
}, null, 8, ["layout", "count", "label", "color", "value", "is-selected", "onItemClick"]))), 128))
|
|
288
288
|
], 2),
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
289
|
+
r.type === "select" && e(c).length === 0 && !e(u) ? (i(), w("div", gt, [
|
|
290
|
+
s("div", bt, [
|
|
291
|
+
Q(we),
|
|
292
|
+
b[4] || (b[4] = s("div", { class: "max-w-sm mx-auto mt-6" }, [
|
|
293
|
+
s("p", { class: "font-medium text-gray-800 dark:text-neutral-200" }, "За вашим запитом нічого не знайдено"),
|
|
294
|
+
s("p", { class: "mt-2 text-sm text-gray-500 dark:text-neutral-500" })
|
|
295
295
|
], -1))
|
|
296
296
|
])
|
|
297
|
-
])) :
|
|
298
|
-
|
|
299
|
-
!e(k) && e(
|
|
297
|
+
])) : V("", !0),
|
|
298
|
+
r.layout !== "popover" && r.type !== "select" ? (i(), w(U, { key: 1 }, [
|
|
299
|
+
!e(k) && e(_) ? (i(), w("div", {
|
|
300
300
|
key: 0,
|
|
301
|
-
onClick:
|
|
302
|
-
(...
|
|
301
|
+
onClick: b[0] || (b[0] = //@ts-ignore
|
|
302
|
+
(...h) => e(v) && e(v)(...h)),
|
|
303
303
|
class: "inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"
|
|
304
304
|
}, [
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
])) :
|
|
308
|
-
e(k) ? (
|
|
305
|
+
b[5] || (b[5] = G(" Показати більше ", -1)),
|
|
306
|
+
Q(ve)
|
|
307
|
+
])) : V("", !0),
|
|
308
|
+
e(k) ? (i(), w("div", {
|
|
309
309
|
key: 1,
|
|
310
|
-
onClick:
|
|
311
|
-
(...
|
|
310
|
+
onClick: b[1] || (b[1] = //@ts-ignore
|
|
311
|
+
(...h) => e(v) && e(v)(...h)),
|
|
312
312
|
class: "inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"
|
|
313
313
|
}, [
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
])) :
|
|
317
|
-
], 64)) :
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
G(B(e(
|
|
321
|
-
|
|
314
|
+
b[6] || (b[6] = G(" Показати менше ", -1)),
|
|
315
|
+
Q(ke)
|
|
316
|
+
])) : V("", !0)
|
|
317
|
+
], 64)) : V("", !0),
|
|
318
|
+
r.cleanable ? (i(), w(U, { key: 2 }, [
|
|
319
|
+
r.layout === "inline" ? (i(), w("div", ht, [
|
|
320
|
+
G(B(e(g) || e(g) === null ? 1 : 0) + " з " + B(e(n).length) + " обрано ", 1),
|
|
321
|
+
W(s("button", {
|
|
322
322
|
class: "text-gray-600 hover:text-gray-800",
|
|
323
|
-
onClick:
|
|
324
|
-
(...
|
|
323
|
+
onClick: b[2] || (b[2] = //@ts-ignore
|
|
324
|
+
(...h) => e(f) && e(f)(...h))
|
|
325
325
|
}, " Очистити ", 512), [
|
|
326
|
-
[
|
|
326
|
+
[Z, e(g) !== "" && e(g) !== void 0]
|
|
327
327
|
])
|
|
328
|
-
])) :
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
328
|
+
])) : V("", !0),
|
|
329
|
+
r.layout === "popover" ? (i(), w("div", xt, [
|
|
330
|
+
s("span", null, B(e(g) || e(g) === null ? 1 : 0) + " з " + B(e(n).length) + " обрано", 1),
|
|
331
|
+
W(s("button", {
|
|
332
332
|
class: "text-gray-600 hover:text-gray-800",
|
|
333
|
-
onClick:
|
|
334
|
-
(...
|
|
333
|
+
onClick: b[3] || (b[3] = //@ts-ignore
|
|
334
|
+
(...h) => e(f) && e(f)(...h))
|
|
335
335
|
}, " Очистити ", 512), [
|
|
336
|
-
[
|
|
336
|
+
[Z, e(g) !== "" && e(g) !== void 0]
|
|
337
337
|
])
|
|
338
|
-
])) :
|
|
339
|
-
], 64)) :
|
|
338
|
+
])) : V("", !0)
|
|
339
|
+
], 64)) : V("", !0)
|
|
340
340
|
], 2));
|
|
341
341
|
}
|
|
342
342
|
});
|
|
343
|
-
function
|
|
343
|
+
function Me(m, o) {
|
|
344
344
|
const {
|
|
345
|
-
options:
|
|
346
|
-
limit:
|
|
347
|
-
} =
|
|
348
|
-
function
|
|
349
|
-
return Array.isArray(
|
|
350
|
-
}
|
|
351
|
-
const
|
|
352
|
-
function k(
|
|
353
|
-
const
|
|
354
|
-
return { autoValueKey:
|
|
355
|
-
}
|
|
356
|
-
if (
|
|
357
|
-
const
|
|
358
|
-
|
|
359
|
-
}
|
|
360
|
-
const
|
|
361
|
-
const
|
|
362
|
-
return
|
|
345
|
+
options: y = [],
|
|
346
|
+
limit: t = 20
|
|
347
|
+
} = m;
|
|
348
|
+
function a(b) {
|
|
349
|
+
return Array.isArray(b) ? b : b ? [b] : [];
|
|
350
|
+
}
|
|
351
|
+
const l = A(a(m.modelValue)), g = A(""), c = A(!1), p = A([]), x = A("id"), f = A("text"), v = A(!1), u = A(m.layout !== "popover" && y.length > t);
|
|
352
|
+
function k(b) {
|
|
353
|
+
const h = b.find(Boolean) ?? {}, K = ["id", "value", "code", "key"].find(($) => $ in h) ?? "id", M = ["text", "label", "name", "title"].find(($) => $ in h) ?? "text";
|
|
354
|
+
return { autoValueKey: K, autoLabelKey: M };
|
|
355
|
+
}
|
|
356
|
+
if (y.length > 0) {
|
|
357
|
+
const b = k(y);
|
|
358
|
+
x.value = b.autoValueKey, f.value = b.autoLabelKey;
|
|
359
|
+
}
|
|
360
|
+
const _ = E(() => {
|
|
361
|
+
const b = p.value;
|
|
362
|
+
return m.layout === "popover" || v.value ? b : b.slice(0, t);
|
|
363
363
|
});
|
|
364
|
-
I(() =>
|
|
365
|
-
|
|
366
|
-
}, { immediate: !0 }),
|
|
367
|
-
function C(
|
|
368
|
-
return
|
|
364
|
+
I(() => m.modelValue, (b) => {
|
|
365
|
+
l.value = a(b);
|
|
366
|
+
}, { immediate: !0 }), p.value = [...y].sort((b, h) => m.sort === "count" ? h.count && b.count ? h.count - b.count : 0 : m.sort === "name" ? String(b[f.value]).localeCompare(String(h[f.value])) : 0);
|
|
367
|
+
function C(b) {
|
|
368
|
+
return l.value && l.value.includes(b[x.value]);
|
|
369
369
|
}
|
|
370
|
-
function
|
|
371
|
-
const
|
|
372
|
-
|
|
370
|
+
function d(b) {
|
|
371
|
+
const h = l.value.includes(b[x.value]);
|
|
372
|
+
l.value = h ? l.value.filter((K) => K !== b[x.value]) : [...l.value, b[x.value]], o("update:modelValue", l.value), o("change", { name: m.name, value: l.value });
|
|
373
373
|
}
|
|
374
|
-
function
|
|
375
|
-
|
|
374
|
+
function n() {
|
|
375
|
+
l.value = [], o("update:modelValue", l.value), o("clear", m.name);
|
|
376
376
|
}
|
|
377
|
-
function
|
|
378
|
-
|
|
377
|
+
function r() {
|
|
378
|
+
v.value = !v.value;
|
|
379
379
|
}
|
|
380
380
|
return {
|
|
381
|
-
innerValue:
|
|
382
|
-
searchTerm:
|
|
383
|
-
filteredOptions:
|
|
381
|
+
innerValue: l,
|
|
382
|
+
searchTerm: g,
|
|
383
|
+
filteredOptions: _,
|
|
384
384
|
isSelected: C,
|
|
385
|
-
selectItem:
|
|
386
|
-
clear:
|
|
387
|
-
toggleShowAll:
|
|
388
|
-
isReqProc:
|
|
389
|
-
showAll:
|
|
390
|
-
isEnableShowAll:
|
|
391
|
-
labelKey:
|
|
392
|
-
valueKey:
|
|
393
|
-
allOptions:
|
|
385
|
+
selectItem: d,
|
|
386
|
+
clear: n,
|
|
387
|
+
toggleShowAll: r,
|
|
388
|
+
isReqProc: c,
|
|
389
|
+
showAll: v,
|
|
390
|
+
isEnableShowAll: u,
|
|
391
|
+
labelKey: f,
|
|
392
|
+
valueKey: x,
|
|
393
|
+
allOptions: p
|
|
394
394
|
};
|
|
395
395
|
}
|
|
396
|
-
const
|
|
396
|
+
const Be = {
|
|
397
397
|
en: {
|
|
398
398
|
apply: "Apply",
|
|
399
399
|
search: "Search",
|
|
@@ -433,29 +433,29 @@ const Se = {
|
|
|
433
433
|
selectFieldHelp: "Оберіть поле, щоб розпочати створення фільтра."
|
|
434
434
|
}
|
|
435
435
|
};
|
|
436
|
-
function
|
|
437
|
-
const o =
|
|
438
|
-
return (
|
|
436
|
+
function Se(m) {
|
|
437
|
+
const o = m.split(".")[1], y = typeof window < "u" && window.localStorage ? localStorage.locale : null;
|
|
438
|
+
return (Be[y || navigator.language] || Be.uk)[o];
|
|
439
439
|
}
|
|
440
|
-
function
|
|
441
|
-
const
|
|
442
|
-
if (!
|
|
443
|
-
const o =
|
|
444
|
-
return (
|
|
445
|
-
const
|
|
446
|
-
return
|
|
440
|
+
function oe() {
|
|
441
|
+
const m = Pe();
|
|
442
|
+
if (!m.appContext.config.globalProperties.$i18n) return Se;
|
|
443
|
+
const o = m.appContext.config.globalProperties.$t;
|
|
444
|
+
return (y) => {
|
|
445
|
+
const t = o(y);
|
|
446
|
+
return t === y ? Se(y) : t;
|
|
447
447
|
};
|
|
448
448
|
}
|
|
449
449
|
const kt = {
|
|
450
450
|
key: 0,
|
|
451
451
|
class: "w-full"
|
|
452
|
-
}, Ct = { class: "flex flex-col items-center justify-center p-5 text-center" },
|
|
452
|
+
}, Ct = { class: "flex flex-col items-center justify-center p-5 text-center" }, _t = { class: "max-w-sm mx-auto mt-6" }, Vt = { class: "font-medium text-gray-800 dark:text-neutral-200" }, $t = {
|
|
453
453
|
key: 0,
|
|
454
454
|
class: "flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"
|
|
455
|
-
},
|
|
455
|
+
}, At = {
|
|
456
456
|
key: 1,
|
|
457
457
|
class: "flex justify-between items-center text-xs text-gray-500 p-1 border-t"
|
|
458
|
-
},
|
|
458
|
+
}, je = /* @__PURE__ */ q({
|
|
459
459
|
__name: "checkbox",
|
|
460
460
|
props: {
|
|
461
461
|
id: {},
|
|
@@ -484,105 +484,105 @@ const kt = {
|
|
|
484
484
|
itemClass: {}
|
|
485
485
|
},
|
|
486
486
|
emits: ["update:modelValue", "change", "clear"],
|
|
487
|
-
setup(
|
|
488
|
-
const
|
|
489
|
-
innerValue:
|
|
490
|
-
filteredOptions:
|
|
491
|
-
isSelected:
|
|
492
|
-
selectItem:
|
|
493
|
-
clear:
|
|
494
|
-
toggleShowAll:
|
|
495
|
-
isReqProc:
|
|
487
|
+
setup(m, { expose: o, emit: y }) {
|
|
488
|
+
const t = oe(), a = m, l = y, {
|
|
489
|
+
innerValue: g,
|
|
490
|
+
filteredOptions: c,
|
|
491
|
+
isSelected: p,
|
|
492
|
+
selectItem: x,
|
|
493
|
+
clear: f,
|
|
494
|
+
toggleShowAll: v,
|
|
495
|
+
isReqProc: u,
|
|
496
496
|
showAll: k,
|
|
497
|
-
isEnableShowAll:
|
|
497
|
+
isEnableShowAll: _,
|
|
498
498
|
labelKey: C,
|
|
499
|
-
valueKey:
|
|
500
|
-
allOptions:
|
|
501
|
-
} =
|
|
502
|
-
...
|
|
503
|
-
modelValue:
|
|
504
|
-
},
|
|
499
|
+
valueKey: d,
|
|
500
|
+
allOptions: n
|
|
501
|
+
} = Me({
|
|
502
|
+
...a,
|
|
503
|
+
modelValue: a.modelValue
|
|
504
|
+
}, l);
|
|
505
505
|
return I(
|
|
506
|
-
() =>
|
|
507
|
-
(
|
|
508
|
-
|
|
506
|
+
() => a.modelValue,
|
|
507
|
+
(r) => {
|
|
508
|
+
r === void 0 && (g.value = []);
|
|
509
509
|
}
|
|
510
510
|
), o({
|
|
511
|
-
clear:
|
|
512
|
-
}), (
|
|
513
|
-
class:
|
|
511
|
+
clear: f
|
|
512
|
+
}), (r, b) => (i(), w("div", {
|
|
513
|
+
class: L([r.layout === "popover" ? "flex flex-col h-full" : "flex flex-col vs-filter-checkbox space-y-0.5"])
|
|
514
514
|
}, [
|
|
515
|
-
|
|
516
|
-
class:
|
|
517
|
-
|
|
518
|
-
|
|
515
|
+
s("div", {
|
|
516
|
+
class: L([
|
|
517
|
+
r.layout === "popover" ? "flex-1 overflow-y-auto p-2" : "",
|
|
518
|
+
r.layout === "inline" ? "flex-1 overflow-y-auto max-h-80" : ""
|
|
519
519
|
])
|
|
520
520
|
}, [
|
|
521
|
-
(
|
|
522
|
-
layout:
|
|
523
|
-
count:
|
|
524
|
-
label:
|
|
525
|
-
color:
|
|
521
|
+
(i(!0), w(U, null, X(e(c), (h) => (i(), T(he, {
|
|
522
|
+
layout: r.layout,
|
|
523
|
+
count: h.count,
|
|
524
|
+
label: h[e(C)],
|
|
525
|
+
color: h.color,
|
|
526
526
|
type: "checkbox",
|
|
527
|
-
value:
|
|
528
|
-
"is-selected": e(
|
|
529
|
-
onItemClick: (
|
|
527
|
+
value: h[e(d)],
|
|
528
|
+
"is-selected": e(p)(h),
|
|
529
|
+
onItemClick: (K) => e(x)(h)
|
|
530
530
|
}, null, 8, ["layout", "count", "label", "color", "value", "is-selected", "onItemClick"]))), 256))
|
|
531
531
|
], 2),
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
532
|
+
r.type === "select" && e(c).length === 0 && !e(u) ? (i(), w("div", kt, [
|
|
533
|
+
s("div", Ct, [
|
|
534
|
+
Q(we),
|
|
535
|
+
s("div", _t, [
|
|
536
|
+
s("p", Vt, B(e(t)("filter.notfound")), 1),
|
|
537
|
+
b[4] || (b[4] = s("p", { class: "mt-2 text-sm text-gray-500 dark:text-neutral-500" }, null, -1))
|
|
538
538
|
])
|
|
539
539
|
])
|
|
540
|
-
])) :
|
|
541
|
-
|
|
542
|
-
!e(k) && e(
|
|
540
|
+
])) : V("", !0),
|
|
541
|
+
r.layout !== "popover" && r.type !== "select" ? (i(), w(U, { key: 1 }, [
|
|
542
|
+
!e(k) && e(_) ? (i(), w("div", {
|
|
543
543
|
key: 0,
|
|
544
|
-
onClick:
|
|
545
|
-
(...
|
|
544
|
+
onClick: b[0] || (b[0] = //@ts-ignore
|
|
545
|
+
(...h) => e(v) && e(v)(...h)),
|
|
546
546
|
class: "inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"
|
|
547
547
|
}, [
|
|
548
|
-
G(B(e(
|
|
549
|
-
|
|
550
|
-
])) :
|
|
551
|
-
e(k) ? (
|
|
548
|
+
G(B(e(t)("filter.more")) + " ", 1),
|
|
549
|
+
Q(ve)
|
|
550
|
+
])) : V("", !0),
|
|
551
|
+
e(k) ? (i(), w("div", {
|
|
552
552
|
key: 1,
|
|
553
|
-
onClick:
|
|
554
|
-
(...
|
|
553
|
+
onClick: b[1] || (b[1] = //@ts-ignore
|
|
554
|
+
(...h) => e(v) && e(v)(...h)),
|
|
555
555
|
class: "inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"
|
|
556
556
|
}, [
|
|
557
|
-
G(B(e(
|
|
558
|
-
|
|
559
|
-
])) :
|
|
560
|
-
], 64)) :
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
G(B(e(
|
|
564
|
-
|
|
557
|
+
G(B(e(t)("filter.less")) + " ", 1),
|
|
558
|
+
Q(ke)
|
|
559
|
+
])) : V("", !0)
|
|
560
|
+
], 64)) : V("", !0),
|
|
561
|
+
r.cleanable ? (i(), w(U, { key: 2 }, [
|
|
562
|
+
r.layout === "inline" ? (i(), w("div", $t, [
|
|
563
|
+
G(B(e(g).length) + " / " + B(e(n).length) + " " + B(e(t)("filter.selected")) + " ", 1),
|
|
564
|
+
W(s("button", {
|
|
565
565
|
class: "text-gray-600 hover:text-gray-800",
|
|
566
|
-
onClick:
|
|
567
|
-
(...
|
|
568
|
-
}, B(e(
|
|
569
|
-
[
|
|
566
|
+
onClick: b[2] || (b[2] = //@ts-ignore
|
|
567
|
+
(...h) => e(f) && e(f)(...h))
|
|
568
|
+
}, B(e(t)("filter.clear")), 513), [
|
|
569
|
+
[Z, e(g).length !== 0]
|
|
570
570
|
])
|
|
571
|
-
])) :
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
571
|
+
])) : V("", !0),
|
|
572
|
+
r.layout === "popover" ? (i(), w("div", At, [
|
|
573
|
+
s("span", null, B(e(g).length) + " / " + B(e(n).length) + " " + B(e(t)("filter.selected")), 1),
|
|
574
|
+
W(s("button", {
|
|
575
575
|
class: "text-gray-600 hover:text-gray-800",
|
|
576
|
-
onClick:
|
|
577
|
-
(...
|
|
578
|
-
}, B(e(
|
|
579
|
-
[
|
|
576
|
+
onClick: b[3] || (b[3] = //@ts-ignore
|
|
577
|
+
(...h) => e(f) && e(f)(...h))
|
|
578
|
+
}, B(e(t)("filter.clear")), 513), [
|
|
579
|
+
[Z, e(g).length !== 0]
|
|
580
580
|
])
|
|
581
|
-
])) :
|
|
582
|
-
], 64)) :
|
|
581
|
+
])) : V("", !0)
|
|
582
|
+
], 64)) : V("", !0)
|
|
583
583
|
], 2));
|
|
584
584
|
}
|
|
585
|
-
}),
|
|
585
|
+
}), Bt = {}, St = {
|
|
586
586
|
xmlns: "http://www.w3.org/2000/svg",
|
|
587
587
|
width: "15px",
|
|
588
588
|
height: "15px",
|
|
@@ -594,18 +594,18 @@ const kt = {
|
|
|
594
594
|
"stroke-linejoin": "round",
|
|
595
595
|
class: "icon icon-tabler icons-tabler-outline icon-tabler-search stroke-gray-500 transition-all"
|
|
596
596
|
};
|
|
597
|
-
function
|
|
598
|
-
return
|
|
599
|
-
|
|
597
|
+
function jt(m, o) {
|
|
598
|
+
return i(), w("svg", St, o[0] || (o[0] = [
|
|
599
|
+
s("path", {
|
|
600
600
|
stroke: "none",
|
|
601
601
|
d: "M0 0h24v24H0z",
|
|
602
602
|
fill: "none"
|
|
603
603
|
}, null, -1),
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
])
|
|
604
|
+
s("path", { d: "M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0" }, null, -1),
|
|
605
|
+
s("path", { d: "M21 21l-6 -6" }, null, -1)
|
|
606
|
+
]));
|
|
607
607
|
}
|
|
608
|
-
const
|
|
608
|
+
const Le = /* @__PURE__ */ te(Bt, [["render", jt]]), Dt = {}, Rt = {
|
|
609
609
|
xmlns: "http://www.w3.org/2000/svg",
|
|
610
610
|
viewBox: "0 0 24 24",
|
|
611
611
|
fill: "none",
|
|
@@ -617,24 +617,24 @@ const _e = /* @__PURE__ */ te(St, [["render", Dt]]), Rt = {}, Ft = {
|
|
|
617
617
|
width: "15px",
|
|
618
618
|
height: "15px"
|
|
619
619
|
};
|
|
620
|
-
function
|
|
621
|
-
return
|
|
622
|
-
|
|
620
|
+
function Ft(m, o) {
|
|
621
|
+
return i(), w("svg", Rt, o[0] || (o[0] = [
|
|
622
|
+
s("path", {
|
|
623
623
|
stroke: "none",
|
|
624
624
|
d: "M0 0h24v24H0z",
|
|
625
625
|
fill: "none"
|
|
626
626
|
}, null, -1),
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
])
|
|
627
|
+
s("path", { d: "M18 6l-12 12" }, null, -1),
|
|
628
|
+
s("path", { d: "M6 6l12 12" }, null, -1)
|
|
629
|
+
]));
|
|
630
630
|
}
|
|
631
|
-
const Ce = /* @__PURE__ */ te(
|
|
632
|
-
class
|
|
631
|
+
const Ce = /* @__PURE__ */ te(Dt, [["render", Ft]]);
|
|
632
|
+
class Oe {
|
|
633
633
|
static getWidthClass(o) {
|
|
634
634
|
return typeof o == "number" ? `max-w-[${o}px] min-w-[${o}px]` : typeof o == "string" ? o.endsWith("%") || o.endsWith("px") ? `max-w-[${o}]` : `max-w-${o}` : "w-full";
|
|
635
635
|
}
|
|
636
636
|
}
|
|
637
|
-
const
|
|
637
|
+
const Kt = { class: "absolute bottom-2/4 translate-y-2/4 cursor-pointer left-3" }, Mt = ["placeholder"], Lt = /* @__PURE__ */ q({
|
|
638
638
|
__name: "text-input",
|
|
639
639
|
props: {
|
|
640
640
|
id: {},
|
|
@@ -663,70 +663,70 @@ const Mt = { class: "absolute bottom-2/4 translate-y-2/4 cursor-pointer left-3"
|
|
|
663
663
|
itemClass: {}
|
|
664
664
|
},
|
|
665
665
|
emits: ["update:modelValue", "change", "clear"],
|
|
666
|
-
setup(
|
|
667
|
-
const
|
|
666
|
+
setup(m, { emit: o }) {
|
|
667
|
+
const y = m, t = A((y.placeholder || y.label || y.title || y.name || "search").toString()), a = o, l = A(y.modelValue?.toString() ?? "");
|
|
668
668
|
I(
|
|
669
|
-
() =>
|
|
670
|
-
(
|
|
671
|
-
|
|
669
|
+
() => y.modelValue,
|
|
670
|
+
(x) => {
|
|
671
|
+
x !== l.value && (l.value = x?.toString() ?? "");
|
|
672
672
|
}
|
|
673
673
|
);
|
|
674
|
-
let
|
|
675
|
-
function
|
|
676
|
-
if (
|
|
677
|
-
|
|
674
|
+
let g = null;
|
|
675
|
+
function c() {
|
|
676
|
+
if (l.value = l.value.trimStart(), l.value.length === 0) {
|
|
677
|
+
p();
|
|
678
678
|
return;
|
|
679
679
|
}
|
|
680
|
-
|
|
681
|
-
|
|
680
|
+
g && clearTimeout(g), g = setTimeout(() => {
|
|
681
|
+
a("update:modelValue", l.value), a("change", { name: y.name, value: l.value });
|
|
682
682
|
}, 300);
|
|
683
683
|
}
|
|
684
|
-
function
|
|
685
|
-
|
|
684
|
+
function p() {
|
|
685
|
+
l.value = "", a("update:modelValue", ""), a("clear", y.name);
|
|
686
686
|
}
|
|
687
|
-
return (
|
|
688
|
-
class:
|
|
687
|
+
return (x, f) => (i(), w("div", {
|
|
688
|
+
class: L([
|
|
689
689
|
"vs-form-text relative bg-white rounded-sm [&>input]:py-[7px] [&>input]:max-h-[38px] [&>input]:ps-10 [&>input]:pe-8 [&>input]:block [&>input]:w-full [&>input]:bg-gray-100 [&>input]:border-transparent [&>input]:rounded-sm [&>input]:text-sm [&>input]:focus:bg-white [&>input]:focus:border-blue-500 [&>input]:focus:ring-blue-500 [&>input]:disabled:opacity-50 [&>input]:disabled:pointer-events-none [&>input]:dark:bg-neutral-700 [&>input]:dark:border-transparent [&>input]:dark:text-neutral-400 [&>input]:dark:placeholder:text-neutral-400 dark:focus:bg-neutral-800 dark:focus:ring-neutral-600",
|
|
690
|
-
|
|
690
|
+
x.layout === "inline" ? e(Oe).getWidthClass(x.width) : "mb-2" + (x.layout === "popover" ? " m-2" : "")
|
|
691
691
|
])
|
|
692
692
|
}, [
|
|
693
|
-
|
|
694
|
-
|
|
693
|
+
s("div", Kt, [
|
|
694
|
+
Q(Le)
|
|
695
695
|
]),
|
|
696
|
-
|
|
696
|
+
l.value !== "" ? (i(), w("div", {
|
|
697
697
|
key: 0,
|
|
698
|
-
onClick:
|
|
698
|
+
onClick: p,
|
|
699
699
|
class: "absolute bottom-2/4 translate-y-2/4 right-3 cursor-pointer"
|
|
700
700
|
}, [
|
|
701
|
-
|
|
702
|
-
])) :
|
|
703
|
-
|
|
701
|
+
Q(Ce)
|
|
702
|
+
])) : V("", !0),
|
|
703
|
+
W(s("input", {
|
|
704
704
|
type: "text",
|
|
705
|
-
"onUpdate:modelValue":
|
|
706
|
-
onInput:
|
|
707
|
-
placeholder:
|
|
705
|
+
"onUpdate:modelValue": f[0] || (f[0] = (v) => l.value = v),
|
|
706
|
+
onInput: c,
|
|
707
|
+
placeholder: t.value,
|
|
708
708
|
class: "!pr-7 !pl-8 bg-white h-[38px] min-w-[100px] text-sm py-2 px-3 block w-full border border-solid placeholder:text-nowrap border-stone-200 rounded-sm text-sm text-stone-800 placeholder:text-stone-400 focus:border-2 focus:z-10 focus:border-blue-500 focus:ring-blue-500 focus:outline-blue-500"
|
|
709
|
-
}, null, 40,
|
|
710
|
-
[ee,
|
|
709
|
+
}, null, 40, Mt), [
|
|
710
|
+
[ee, l.value]
|
|
711
711
|
])
|
|
712
712
|
], 2));
|
|
713
713
|
}
|
|
714
714
|
});
|
|
715
|
-
function
|
|
715
|
+
function Ee(m = { color: "blue" }) {
|
|
716
716
|
return E(() => {
|
|
717
|
-
const
|
|
717
|
+
const y = `w-full px-3 py-2 border-solid border text-black border-gray-300 text-sm rounded focus:outline-none focus:ring-2 focus:ring-${m.color}-500 focus:border-transparent
|
|
718
718
|
text-gray-800 bg-white dark:text-neutral-300 dark:bg-neutral-800 dark:border-neutral-600`;
|
|
719
|
-
return
|
|
719
|
+
return m?.size === "sm" ? `${y}h-[32px]` : `${y}h-[38px]`;
|
|
720
720
|
});
|
|
721
721
|
}
|
|
722
|
-
function
|
|
722
|
+
function Ot() {
|
|
723
723
|
return "rounded-md font-medium border-gray-200 border-solid disabled:pointer-events-none disabled:opacity-50 px-4 py-2 w-full bg-transparent border text-black text-sm h-[38px]";
|
|
724
724
|
}
|
|
725
|
-
function
|
|
725
|
+
function Et() {
|
|
726
726
|
return "font-medium border border-gray-200 border-solid disabled:pointer-events-none disabled:opacity-50 h-7 rounded-md text-xs px-2 py-1 text-gray-800 bg-white hover:bg-gray-100 dark:text-neutral-300 dark:bg-neutral-800 dark:hover:bg-neutral-700 dark:border-neutral-600";
|
|
727
727
|
}
|
|
728
|
-
function Te(
|
|
729
|
-
return
|
|
728
|
+
function Te(m) {
|
|
729
|
+
return m === "ghost" ? "inline-flex relative py-2 px-4 items-center gap-x-2 text-sm font-medium rounded-sm border text-gray-600 hover:bg-blue-100 hover:text-gray-800 focus:outline-hidden focus:bg-gray-100 focus:text-gray-800 disabled:opacity-50 disabled:pointer-events-none dark:text-gray-500 dark:hover:bg-blue-800/30 dark:hover:text-blue-400 dark:focus:bg-blue-800/30 dark:focus:text-blue-400" : m === "soft" ? "inline-flex relative py-2 px-4 items-center gap-x-2 text-sm font-medium rounded-sm border bg-white-100 text-gray-800 hover:bg-gray-200 hover:bg-gray-200 focus:outline-hidden focus:bg-gray-200 disabled:opacity-50 disabled:pointer-events-none dark:text-blue-400 dark:hover:bg-blue-900 dark:focus:bg-blue-900" : "relative border-solid border-gray-200 focus-visible:outline-hidden focus-visible:ring-ring inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 border-input hover:bg-gray-100 border px-4 py-2 gap-1 bg-transparent h-[38px]";
|
|
730
730
|
}
|
|
731
731
|
const Tt = {
|
|
732
732
|
key: 0,
|
|
@@ -738,7 +738,7 @@ const Tt = {
|
|
|
738
738
|
key: 0,
|
|
739
739
|
class: "block text-xs font-medium text-gray-600 mb-1"
|
|
740
740
|
}, Nt = ["placeholder", "disabled"], Pt = ["disabled"];
|
|
741
|
-
const Yt = /* @__PURE__ */
|
|
741
|
+
const Yt = /* @__PURE__ */ q({
|
|
742
742
|
__name: "range-input",
|
|
743
743
|
props: {
|
|
744
744
|
id: {},
|
|
@@ -767,208 +767,208 @@ const Yt = /* @__PURE__ */ W({
|
|
|
767
767
|
itemClass: {}
|
|
768
768
|
},
|
|
769
769
|
emits: ["update:modelValue", "change", "clear"],
|
|
770
|
-
setup(
|
|
771
|
-
const
|
|
772
|
-
|
|
773
|
-
),
|
|
774
|
-
get: () =>
|
|
775
|
-
set: (
|
|
776
|
-
|
|
770
|
+
setup(m, { expose: o, emit: y }) {
|
|
771
|
+
const t = Ee(), a = Ot(), l = oe(), g = m, c = A(
|
|
772
|
+
g.modelValue ?? g.default ?? []
|
|
773
|
+
), p = y, x = E({
|
|
774
|
+
get: () => g.modelValue ?? c.value,
|
|
775
|
+
set: (u) => {
|
|
776
|
+
g.modelValue !== void 0 ? p("update:modelValue", u) : c.value = u;
|
|
777
777
|
}
|
|
778
778
|
});
|
|
779
|
-
function
|
|
780
|
-
|
|
779
|
+
function f() {
|
|
780
|
+
p("change", { name: g.name, value: x.value || c.value });
|
|
781
781
|
}
|
|
782
|
-
function
|
|
783
|
-
|
|
782
|
+
function v() {
|
|
783
|
+
c.value = [], x.value = c.value, p("clear", g.name);
|
|
784
784
|
}
|
|
785
|
-
return I(() =>
|
|
786
|
-
|
|
785
|
+
return I(() => g.modelValue, (u) => {
|
|
786
|
+
u !== void 0 && g.layout !== "popover" ? (c.value = u, p("update:modelValue", u)) : c.value = [];
|
|
787
787
|
}), o({
|
|
788
|
-
clear:
|
|
789
|
-
currentValue:
|
|
790
|
-
}), (
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
class:
|
|
788
|
+
clear: v,
|
|
789
|
+
currentValue: x
|
|
790
|
+
}), (u, k) => (i(), w(U, null, [
|
|
791
|
+
s("div", null, [
|
|
792
|
+
s("div", {
|
|
793
|
+
class: L(u.layout === "vertical" ? "inline-flex items-center gap-2" : "space-y-3 p-2")
|
|
794
794
|
}, [
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
795
|
+
s("div", null, [
|
|
796
|
+
u.layout !== "vertical" ? (i(), w("label", Tt, B(e(l)("filter.from")), 1)) : V("", !0),
|
|
797
|
+
W(s("input", {
|
|
798
798
|
type: "number",
|
|
799
|
-
class:
|
|
800
|
-
placeholder:
|
|
799
|
+
class: L(e(t)),
|
|
800
|
+
placeholder: u.placeholder?.[0] ?? "min",
|
|
801
801
|
step: "1",
|
|
802
802
|
style: { outline: "none" },
|
|
803
|
-
"onUpdate:modelValue": k[0] || (k[0] = (
|
|
804
|
-
disabled:
|
|
803
|
+
"onUpdate:modelValue": k[0] || (k[0] = (_) => x.value[0] = _),
|
|
804
|
+
disabled: u.disabled
|
|
805
805
|
}, null, 10, It), [
|
|
806
|
-
[ee,
|
|
806
|
+
[ee, x.value[0]]
|
|
807
807
|
])
|
|
808
808
|
]),
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
809
|
+
u.layout === "vertical" ? (i(), w("label", Ut, " - ")) : V("", !0),
|
|
810
|
+
s("div", null, [
|
|
811
|
+
u.layout !== "vertical" ? (i(), w("label", zt, B(e(l)("filter.to")), 1)) : V("", !0),
|
|
812
|
+
W(s("input", {
|
|
813
813
|
type: "number",
|
|
814
|
-
class:
|
|
815
|
-
placeholder:
|
|
814
|
+
class: L(e(t)),
|
|
815
|
+
placeholder: u.placeholder?.[1] ?? "max",
|
|
816
816
|
min: "0",
|
|
817
817
|
max: "1000000000000000",
|
|
818
818
|
step: "1",
|
|
819
819
|
style: { outline: "none" },
|
|
820
|
-
"onUpdate:modelValue": k[1] || (k[1] = (
|
|
821
|
-
disabled:
|
|
820
|
+
"onUpdate:modelValue": k[1] || (k[1] = (_) => x.value[1] = _),
|
|
821
|
+
disabled: u.disabled
|
|
822
822
|
}, null, 10, Nt), [
|
|
823
|
-
[ee,
|
|
823
|
+
[ee, x.value[1]]
|
|
824
824
|
])
|
|
825
825
|
]),
|
|
826
|
-
["popover", "inline", "vertical"].includes(
|
|
826
|
+
["popover", "inline", "vertical"].includes(u.layout) ? (i(), w("button", {
|
|
827
827
|
key: 1,
|
|
828
|
-
onClick:
|
|
829
|
-
class:
|
|
830
|
-
}, B(
|
|
831
|
-
["popover", "inline"].includes(
|
|
828
|
+
onClick: f,
|
|
829
|
+
class: L(e(a) + (u.layout === "vertical" ? " w-[50px]" : " bg-blue-100 hover:bg-blue-200"))
|
|
830
|
+
}, B(u.layout === "vertical" ? "Ok" : e(l)("filter.apply")), 3)) : V("", !0),
|
|
831
|
+
["popover", "inline"].includes(u.layout) ? (i(), w("button", {
|
|
832
832
|
key: 2,
|
|
833
|
-
disabled: !(
|
|
834
|
-
onClick:
|
|
835
|
-
class:
|
|
836
|
-
}, B(e(
|
|
833
|
+
disabled: !(x.value[0] || x.value[1]),
|
|
834
|
+
onClick: v,
|
|
835
|
+
class: L(e(a) + " hover:bg-gray-100")
|
|
836
|
+
}, B(e(l)("filter.clear")), 11, Pt)) : V("", !0)
|
|
837
837
|
], 2)
|
|
838
838
|
]),
|
|
839
|
-
(
|
|
839
|
+
(u.cleanable && c.value.length, V("", !0))
|
|
840
840
|
], 64));
|
|
841
841
|
}
|
|
842
842
|
});
|
|
843
843
|
class H {
|
|
844
844
|
static format(o) {
|
|
845
|
-
const
|
|
846
|
-
return `${
|
|
845
|
+
const y = o.getFullYear(), t = (o.getMonth() + 1).toString().padStart(2, "0"), a = o.getDate().toString().padStart(2, "0");
|
|
846
|
+
return `${y}-${t}-${a}`;
|
|
847
847
|
}
|
|
848
|
-
static getShiftedDay(o,
|
|
849
|
-
const
|
|
850
|
-
return
|
|
848
|
+
static getShiftedDay(o, y = 0) {
|
|
849
|
+
const t = o ? new Date(o) : /* @__PURE__ */ new Date();
|
|
850
|
+
return t.setDate(t.getDate() + y), this.format(t);
|
|
851
851
|
}
|
|
852
|
-
static getLastWeekRange(o,
|
|
853
|
-
if (o &&
|
|
854
|
-
const
|
|
855
|
-
return
|
|
852
|
+
static getLastWeekRange(o, y, t = 0) {
|
|
853
|
+
if (o && y) {
|
|
854
|
+
const x = new Date(o), f = new Date(y);
|
|
855
|
+
return x.setDate(x.getDate() + t * 7), f.setDate(f.getDate() + t * 7), [this.format(x), this.format(f)];
|
|
856
856
|
}
|
|
857
|
-
const
|
|
858
|
-
|
|
859
|
-
const
|
|
860
|
-
return
|
|
861
|
-
}
|
|
862
|
-
static getMonthRange(o,
|
|
863
|
-
let
|
|
864
|
-
o ?
|
|
865
|
-
const
|
|
866
|
-
return [this.format(
|
|
867
|
-
}
|
|
868
|
-
static getQuarterRange(o,
|
|
869
|
-
const
|
|
870
|
-
let
|
|
871
|
-
|
|
872
|
-
const
|
|
873
|
-
return [this.format(
|
|
874
|
-
}
|
|
875
|
-
static getYear(o,
|
|
876
|
-
let
|
|
877
|
-
return o && /^\d{4}$/.test(o) ?
|
|
878
|
-
}
|
|
879
|
-
static getYearRange(o,
|
|
880
|
-
let
|
|
881
|
-
return o && /^\d{4}$/.test(o) ?
|
|
882
|
-
this.format(new Date(
|
|
883
|
-
this.format(new Date(
|
|
857
|
+
const a = /* @__PURE__ */ new Date(), l = a.getDay(), g = l === 0 ? 13 : l - 1 + 7, c = new Date(a);
|
|
858
|
+
c.setDate(a.getDate() - g + t * 7);
|
|
859
|
+
const p = new Date(c);
|
|
860
|
+
return p.setDate(c.getDate() + 6), [this.format(c), this.format(p)];
|
|
861
|
+
}
|
|
862
|
+
static getMonthRange(o, y, t = 0) {
|
|
863
|
+
let a;
|
|
864
|
+
o ? a = new Date(o) : a = /* @__PURE__ */ new Date(), a = new Date(a.getFullYear(), a.getMonth() + t, 1);
|
|
865
|
+
const l = a, g = new Date(a.getFullYear(), a.getMonth() + 1, 0);
|
|
866
|
+
return [this.format(l), this.format(g)];
|
|
867
|
+
}
|
|
868
|
+
static getQuarterRange(o, y, t = 0) {
|
|
869
|
+
const a = o || y, l = a ? new Date(a) : /* @__PURE__ */ new Date();
|
|
870
|
+
let g = Math.floor(l.getMonth() / 3);
|
|
871
|
+
g += t;
|
|
872
|
+
const c = (g % 4 + 4) % 4 * 3, p = l.getFullYear() + Math.floor(g / 4), x = new Date(p, c, 1), f = new Date(p, c + 3, 0);
|
|
873
|
+
return [this.format(x), this.format(f)];
|
|
874
|
+
}
|
|
875
|
+
static getYear(o, y = 0) {
|
|
876
|
+
let t;
|
|
877
|
+
return o && /^\d{4}$/.test(o) ? t = parseInt(o, 10) : o ? t = new Date(o).getFullYear() : t = (/* @__PURE__ */ new Date()).getFullYear(), String(t + y);
|
|
878
|
+
}
|
|
879
|
+
static getYearRange(o, y = 0) {
|
|
880
|
+
let t;
|
|
881
|
+
return o && /^\d{4}$/.test(o) ? t = parseInt(o, 10) : o ? t = new Date(o).getFullYear() : t = (/* @__PURE__ */ new Date()).getFullYear(), [
|
|
882
|
+
this.format(new Date(t + y, 0, 1)),
|
|
883
|
+
this.format(new Date(t + y + 1, 0, 0))
|
|
884
884
|
];
|
|
885
885
|
}
|
|
886
886
|
static getRangeFromDaysBefore(o) {
|
|
887
|
-
const
|
|
888
|
-
return
|
|
887
|
+
const y = /* @__PURE__ */ new Date(), t = new Date(y.getTime());
|
|
888
|
+
return t.setDate(y.getDate() - o), [this.format(t), this.format(y)];
|
|
889
889
|
}
|
|
890
890
|
}
|
|
891
|
-
function Ie(
|
|
891
|
+
function Ie(m, o) {
|
|
892
892
|
const {
|
|
893
|
-
popoverRef:
|
|
894
|
-
} =
|
|
895
|
-
|
|
896
|
-
),
|
|
897
|
-
function
|
|
898
|
-
const
|
|
899
|
-
return
|
|
893
|
+
popoverRef: y
|
|
894
|
+
} = m, t = oe(), a = A(""), l = A(
|
|
895
|
+
m.modelValue ?? m.default ?? []
|
|
896
|
+
), g = A(0);
|
|
897
|
+
function c() {
|
|
898
|
+
const n = H.getRangeFromDaysBefore(g.value);
|
|
899
|
+
return l.value = [...n], o("change", { name: m.name, value: l.value }), o("update:modelValue", l.value), n;
|
|
900
900
|
}
|
|
901
|
-
function
|
|
902
|
-
|
|
903
|
-
const
|
|
904
|
-
switch (
|
|
901
|
+
function p(n) {
|
|
902
|
+
a.value = n, y.value?.close();
|
|
903
|
+
const r = [];
|
|
904
|
+
switch (a.value) {
|
|
905
905
|
case "today":
|
|
906
|
-
|
|
906
|
+
r.push(H.getShiftedDay()), r.push(H.getShiftedDay());
|
|
907
907
|
break;
|
|
908
908
|
case "week":
|
|
909
|
-
|
|
909
|
+
r.push(...H.getLastWeekRange());
|
|
910
910
|
break;
|
|
911
911
|
case "month":
|
|
912
|
-
|
|
912
|
+
r.push(...H.getMonthRange());
|
|
913
913
|
break;
|
|
914
914
|
case "quarter":
|
|
915
|
-
|
|
915
|
+
r.push(...H.getQuarterRange());
|
|
916
916
|
break;
|
|
917
917
|
case "year":
|
|
918
|
-
|
|
918
|
+
r.push(...H.getYearRange());
|
|
919
919
|
break;
|
|
920
920
|
case "last_7_days":
|
|
921
|
-
|
|
921
|
+
g.value = 7, c();
|
|
922
922
|
break;
|
|
923
923
|
case "range":
|
|
924
|
-
|
|
924
|
+
g.value = 7, r.push(...c());
|
|
925
925
|
break;
|
|
926
926
|
}
|
|
927
|
-
|
|
927
|
+
l.value = [...r], o("change", { name: m.name, value: l.value }), o("update:modelValue", l.value);
|
|
928
928
|
}
|
|
929
|
-
function
|
|
930
|
-
const
|
|
931
|
-
switch (
|
|
929
|
+
function x() {
|
|
930
|
+
const n = [];
|
|
931
|
+
switch (a.value) {
|
|
932
932
|
case "today":
|
|
933
|
-
|
|
933
|
+
n.push(H.getShiftedDay(l.value[0], 1));
|
|
934
934
|
break;
|
|
935
935
|
case "week":
|
|
936
|
-
|
|
936
|
+
n.push(...H.getLastWeekRange(l.value[0], l.value[1], 1));
|
|
937
937
|
break;
|
|
938
938
|
case "month":
|
|
939
|
-
|
|
939
|
+
n.push(...H.getMonthRange(l.value[0], l.value[1], 1));
|
|
940
940
|
break;
|
|
941
941
|
case "quarter":
|
|
942
|
-
|
|
942
|
+
n.push(...H.getQuarterRange(l.value[0], l.value[1], 1));
|
|
943
943
|
break;
|
|
944
944
|
case "year":
|
|
945
|
-
|
|
945
|
+
n.push(...H.getYearRange(l.value[0], 1));
|
|
946
946
|
break;
|
|
947
947
|
}
|
|
948
|
-
|
|
948
|
+
l.value = [...n], o("change", { name: m.name, value: l.value }), o("update:modelValue", l.value);
|
|
949
949
|
}
|
|
950
|
-
function
|
|
951
|
-
const
|
|
952
|
-
switch (
|
|
950
|
+
function f() {
|
|
951
|
+
const n = [];
|
|
952
|
+
switch (a.value) {
|
|
953
953
|
case "today":
|
|
954
|
-
|
|
954
|
+
n.push(H.getShiftedDay(l.value[0], -1));
|
|
955
955
|
break;
|
|
956
956
|
case "week":
|
|
957
|
-
|
|
957
|
+
n.push(...H.getLastWeekRange(l.value[0], l.value[1], -1));
|
|
958
958
|
break;
|
|
959
959
|
case "month":
|
|
960
|
-
|
|
960
|
+
n.push(...H.getMonthRange(l.value[0], l.value[1], -1));
|
|
961
961
|
break;
|
|
962
962
|
case "quarter":
|
|
963
|
-
|
|
963
|
+
n.push(...H.getQuarterRange(l.value[0], l.value[1], -1));
|
|
964
964
|
break;
|
|
965
965
|
case "year":
|
|
966
|
-
|
|
966
|
+
n.push(...H.getYearRange(l.value[0], -1));
|
|
967
967
|
break;
|
|
968
968
|
}
|
|
969
|
-
|
|
969
|
+
l.value = [...n], o("change", { name: m.name, value: l.value }), o("update:modelValue", l.value);
|
|
970
970
|
}
|
|
971
|
-
const
|
|
971
|
+
const v = [
|
|
972
972
|
"Січень",
|
|
973
973
|
"Лютий",
|
|
974
974
|
"Березень",
|
|
@@ -982,60 +982,60 @@ function Ie(t, o) {
|
|
|
982
982
|
"Листопад",
|
|
983
983
|
"Грудень"
|
|
984
984
|
];
|
|
985
|
-
function
|
|
986
|
-
const [
|
|
987
|
-
return `${
|
|
985
|
+
function u(n) {
|
|
986
|
+
const [r, b, h] = n.split("-");
|
|
987
|
+
return `${h}.${b}.${r}`;
|
|
988
988
|
}
|
|
989
|
-
function k(
|
|
990
|
-
const
|
|
991
|
-
return new Intl.DateTimeFormat(localStorage.locale, { month:
|
|
989
|
+
function k(n, r = "long") {
|
|
990
|
+
const b = new Date(Date.UTC(2e3, n - 1, 1));
|
|
991
|
+
return new Intl.DateTimeFormat(localStorage.locale, { month: r, timeZone: "UTC" }).format(b);
|
|
992
992
|
}
|
|
993
|
-
function
|
|
994
|
-
const { value:
|
|
995
|
-
switch (
|
|
993
|
+
function _(n) {
|
|
994
|
+
const { value: r } = l;
|
|
995
|
+
switch (n) {
|
|
996
996
|
case "today":
|
|
997
|
-
return
|
|
997
|
+
return u(r[0]);
|
|
998
998
|
case "range":
|
|
999
999
|
return "Період";
|
|
1000
1000
|
case "week":
|
|
1001
|
-
return
|
|
1001
|
+
return r[0] && r[1] ? `${u(r[0])} – ${u(r[1])}` : "";
|
|
1002
1002
|
case "quarter":
|
|
1003
|
-
if (
|
|
1004
|
-
const
|
|
1005
|
-
return `${Math.floor(
|
|
1003
|
+
if (r[0]) {
|
|
1004
|
+
const b = new Date(r[0]), h = b.getFullYear(), K = b.getMonth();
|
|
1005
|
+
return `${Math.floor(K / 3) + 1} ${t("filter.quarter")} ${h}`;
|
|
1006
1006
|
}
|
|
1007
1007
|
return "";
|
|
1008
1008
|
case "month":
|
|
1009
|
-
if (
|
|
1010
|
-
const [
|
|
1011
|
-
return `${k(parseInt(
|
|
1009
|
+
if (r[0]) {
|
|
1010
|
+
const [b, h] = r[0].split("-");
|
|
1011
|
+
return `${k(parseInt(h, 10))} ${b}`;
|
|
1012
1012
|
}
|
|
1013
1013
|
return "";
|
|
1014
1014
|
case "year":
|
|
1015
|
-
return
|
|
1015
|
+
return r[0] || "";
|
|
1016
1016
|
case "last_7_days":
|
|
1017
1017
|
return "За останні дні";
|
|
1018
1018
|
default:
|
|
1019
|
-
return
|
|
1019
|
+
return m.label ?? "";
|
|
1020
1020
|
}
|
|
1021
1021
|
}
|
|
1022
|
-
const C = E(() =>
|
|
1023
|
-
function
|
|
1024
|
-
|
|
1022
|
+
const C = E(() => a.value ? _(a.value) : m.label ?? "");
|
|
1023
|
+
function d() {
|
|
1024
|
+
a.value = "", l.value = [], o("update:modelValue", []), o("clear", m.name);
|
|
1025
1025
|
}
|
|
1026
1026
|
return {
|
|
1027
|
-
activeMode:
|
|
1028
|
-
innerValue:
|
|
1029
|
-
daysBefore:
|
|
1030
|
-
onDaysBeforeChange:
|
|
1031
|
-
onSelectChange:
|
|
1032
|
-
nextClick:
|
|
1033
|
-
prevClick:
|
|
1034
|
-
ukMonths:
|
|
1035
|
-
formatDisplayDate:
|
|
1036
|
-
getModeLabel:
|
|
1027
|
+
activeMode: a,
|
|
1028
|
+
innerValue: l,
|
|
1029
|
+
daysBefore: g,
|
|
1030
|
+
onDaysBeforeChange: c,
|
|
1031
|
+
onSelectChange: p,
|
|
1032
|
+
nextClick: x,
|
|
1033
|
+
prevClick: f,
|
|
1034
|
+
ukMonths: v,
|
|
1035
|
+
formatDisplayDate: u,
|
|
1036
|
+
getModeLabel: _,
|
|
1037
1037
|
currentLabel: C,
|
|
1038
|
-
clear:
|
|
1038
|
+
clear: d
|
|
1039
1039
|
};
|
|
1040
1040
|
}
|
|
1041
1041
|
const Wt = {
|
|
@@ -1047,14 +1047,14 @@ const Wt = {
|
|
|
1047
1047
|
}, Qt = ["max", "disabled"], Ht = ["min", "disabled"], Gt = {
|
|
1048
1048
|
key: 0,
|
|
1049
1049
|
class: "block text-xs font-medium text-gray-600 mb-1"
|
|
1050
|
-
}, Xt = ["max", "disabled"],
|
|
1050
|
+
}, Xt = ["max", "disabled"], Jt = {
|
|
1051
1051
|
key: 0,
|
|
1052
1052
|
class: "block text-xs font-medium text-gray-600 mb-1"
|
|
1053
|
-
},
|
|
1053
|
+
}, Zt = {
|
|
1054
1054
|
key: 0,
|
|
1055
1055
|
class: "block text-xs font-medium text-gray-600 mb-1"
|
|
1056
1056
|
}, el = ["min", "disabled"], tl = { class: "flex gap-1 pt-2" }, ll = ["onClick"];
|
|
1057
|
-
const
|
|
1057
|
+
const ol = /* @__PURE__ */ q({
|
|
1058
1058
|
__name: "date-input",
|
|
1059
1059
|
props: {
|
|
1060
1060
|
id: {},
|
|
@@ -1083,241 +1083,241 @@ const al = /* @__PURE__ */ W({
|
|
|
1083
1083
|
itemClass: {}
|
|
1084
1084
|
},
|
|
1085
1085
|
emits: ["update:modelValue", "change", "clear"],
|
|
1086
|
-
setup(
|
|
1087
|
-
const
|
|
1088
|
-
activeMode:
|
|
1089
|
-
innerValue:
|
|
1090
|
-
onSelectChange:
|
|
1091
|
-
nextClick:
|
|
1086
|
+
setup(m, { expose: o, emit: y }) {
|
|
1087
|
+
const t = m, a = Ee(), l = Et(), g = oe(), c = y, p = A(null), {
|
|
1088
|
+
activeMode: x,
|
|
1089
|
+
innerValue: f,
|
|
1090
|
+
onSelectChange: v,
|
|
1091
|
+
nextClick: u,
|
|
1092
1092
|
prevClick: k,
|
|
1093
|
-
clear:
|
|
1093
|
+
clear: _
|
|
1094
1094
|
} = Ie({
|
|
1095
|
-
...
|
|
1096
|
-
popoverRef:
|
|
1097
|
-
},
|
|
1098
|
-
return I(() =>
|
|
1099
|
-
C !== void 0 ? (
|
|
1095
|
+
...t,
|
|
1096
|
+
popoverRef: p
|
|
1097
|
+
}, c);
|
|
1098
|
+
return I(() => t.modelValue, (C) => {
|
|
1099
|
+
C !== void 0 ? (f.value = C, c("update:modelValue", C)) : (x.value = "", f.value = []);
|
|
1100
1100
|
}), o({
|
|
1101
|
-
clear:
|
|
1102
|
-
popoverRef:
|
|
1103
|
-
}), (C,
|
|
1104
|
-
|
|
1105
|
-
e(
|
|
1106
|
-
|
|
1101
|
+
clear: _,
|
|
1102
|
+
popoverRef: p
|
|
1103
|
+
}), (C, d) => (i(), w(U, null, [
|
|
1104
|
+
C.layout === "inline" ? (i(), w("div", Wt, [
|
|
1105
|
+
e(x) !== "" && e(x) === "range" ? (i(), w("div", qt, [
|
|
1106
|
+
W(s("input", {
|
|
1107
1107
|
type: "date",
|
|
1108
|
-
max: e(
|
|
1108
|
+
max: e(f)[1],
|
|
1109
1109
|
locale: "uk-UA",
|
|
1110
|
-
"onUpdate:modelValue":
|
|
1110
|
+
"onUpdate:modelValue": d[0] || (d[0] = (n) => e(f)[0] = n),
|
|
1111
1111
|
class: "px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600",
|
|
1112
|
-
disabled:
|
|
1112
|
+
disabled: C.disabled
|
|
1113
1113
|
}, null, 8, Qt), [
|
|
1114
|
-
[ee, e(
|
|
1114
|
+
[ee, e(f)[0]]
|
|
1115
1115
|
]),
|
|
1116
|
-
|
|
1116
|
+
W(s("input", {
|
|
1117
1117
|
type: "date",
|
|
1118
|
-
min: e(
|
|
1118
|
+
min: e(f)[0],
|
|
1119
1119
|
locale: "uk-UA",
|
|
1120
|
-
"onUpdate:modelValue":
|
|
1120
|
+
"onUpdate:modelValue": d[1] || (d[1] = (n) => e(f)[1] = n),
|
|
1121
1121
|
class: "px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600 appearance-auto",
|
|
1122
|
-
disabled:
|
|
1122
|
+
disabled: C.disabled
|
|
1123
1123
|
}, null, 8, Ht), [
|
|
1124
|
-
[ee, e(
|
|
1124
|
+
[ee, e(f)[1]]
|
|
1125
1125
|
])
|
|
1126
|
-
])) :
|
|
1127
|
-
])) :
|
|
1128
|
-
|
|
1129
|
-
class:
|
|
1126
|
+
])) : V("", !0)
|
|
1127
|
+
])) : V("", !0),
|
|
1128
|
+
s("div", {
|
|
1129
|
+
class: L(C.layout === "popover" ? "space-y-3 p-2" : "flex items-center gap-2")
|
|
1130
1130
|
}, [
|
|
1131
|
-
|
|
1132
|
-
class:
|
|
1131
|
+
s("div", {
|
|
1132
|
+
class: L(C.layout !== "popover" ? "w-[48%]" : "")
|
|
1133
1133
|
}, [
|
|
1134
|
-
|
|
1135
|
-
|
|
1134
|
+
C.layout === "popover" ? (i(), w("label", Gt, B(e(g)("filter.from")), 1)) : V("", !0),
|
|
1135
|
+
W(s("input", {
|
|
1136
1136
|
type: "date",
|
|
1137
|
-
max: e(
|
|
1137
|
+
max: e(f)[1],
|
|
1138
1138
|
locale: "uk-UA",
|
|
1139
|
-
"onUpdate:modelValue":
|
|
1140
|
-
class:
|
|
1141
|
-
disabled:
|
|
1139
|
+
"onUpdate:modelValue": d[2] || (d[2] = (n) => e(f)[0] = n),
|
|
1140
|
+
class: L(e(a)),
|
|
1141
|
+
disabled: C.disabled
|
|
1142
1142
|
}, null, 10, Xt), [
|
|
1143
|
-
[ee, e(
|
|
1143
|
+
[ee, e(f)[0]]
|
|
1144
1144
|
])
|
|
1145
1145
|
], 2),
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
class:
|
|
1146
|
+
C.layout !== "popover" ? (i(), w("label", Jt, " - ")) : V("", !0),
|
|
1147
|
+
s("div", {
|
|
1148
|
+
class: L(C.layout !== "popover" ? "w-[48%]" : "")
|
|
1149
1149
|
}, [
|
|
1150
|
-
|
|
1151
|
-
|
|
1150
|
+
C.layout === "popover" ? (i(), w("label", Zt, B(e(g)("filter.to")), 1)) : V("", !0),
|
|
1151
|
+
W(s("input", {
|
|
1152
1152
|
type: "date",
|
|
1153
|
-
min: e(
|
|
1153
|
+
min: e(f)[0],
|
|
1154
1154
|
locale: "uk-UA",
|
|
1155
|
-
"onUpdate:modelValue":
|
|
1156
|
-
class:
|
|
1157
|
-
disabled:
|
|
1155
|
+
"onUpdate:modelValue": d[3] || (d[3] = (n) => e(f)[1] = n),
|
|
1156
|
+
class: L(e(a)),
|
|
1157
|
+
disabled: C.disabled
|
|
1158
1158
|
}, null, 10, el), [
|
|
1159
|
-
[ee, e(
|
|
1159
|
+
[ee, e(f)[1]]
|
|
1160
1160
|
])
|
|
1161
1161
|
], 2)
|
|
1162
1162
|
], 2),
|
|
1163
|
-
|
|
1164
|
-
(
|
|
1165
|
-
key:
|
|
1166
|
-
class:
|
|
1167
|
-
onClick: (
|
|
1168
|
-
}, B(e(
|
|
1169
|
-
|
|
1170
|
-
class:
|
|
1171
|
-
onClick:
|
|
1172
|
-
(...
|
|
1163
|
+
s("div", tl, [
|
|
1164
|
+
(i(), w(U, null, X(["today", "week", "month", "quarter", "year"], (n) => s("button", {
|
|
1165
|
+
key: n,
|
|
1166
|
+
class: L(e(l) + (e(x) === n ? " bg-blue-100" : "")),
|
|
1167
|
+
onClick: (r) => e(v)(n)
|
|
1168
|
+
}, B(e(g)("filter." + n)), 11, ll)), 64)),
|
|
1169
|
+
s("button", {
|
|
1170
|
+
class: L(e(l)),
|
|
1171
|
+
onClick: d[4] || (d[4] = //@ts-ignore
|
|
1172
|
+
(...n) => e(k) && e(k)(...n))
|
|
1173
1173
|
}, " <", 2),
|
|
1174
|
-
|
|
1175
|
-
class:
|
|
1176
|
-
onClick:
|
|
1177
|
-
(...
|
|
1174
|
+
s("button", {
|
|
1175
|
+
class: L(e(l)),
|
|
1176
|
+
onClick: d[5] || (d[5] = //@ts-ignore
|
|
1177
|
+
(...n) => e(u) && e(u)(...n))
|
|
1178
1178
|
}, " >", 2)
|
|
1179
1179
|
]),
|
|
1180
|
-
(
|
|
1180
|
+
(C.cleanable, V("", !0))
|
|
1181
1181
|
], 64));
|
|
1182
1182
|
}
|
|
1183
1183
|
});
|
|
1184
|
-
function
|
|
1184
|
+
function al(m, o) {
|
|
1185
1185
|
const {
|
|
1186
|
-
api:
|
|
1187
|
-
options:
|
|
1188
|
-
limit:
|
|
1189
|
-
dataKey:
|
|
1190
|
-
} =
|
|
1191
|
-
function
|
|
1192
|
-
return
|
|
1193
|
-
}
|
|
1194
|
-
const
|
|
1195
|
-
function
|
|
1196
|
-
const
|
|
1197
|
-
return { autoValueKey:
|
|
1198
|
-
}
|
|
1199
|
-
if (
|
|
1200
|
-
const
|
|
1201
|
-
|
|
1202
|
-
}
|
|
1203
|
-
const
|
|
1204
|
-
if (
|
|
1205
|
-
const
|
|
1206
|
-
if (
|
|
1207
|
-
if (!
|
|
1208
|
-
return
|
|
1209
|
-
const
|
|
1210
|
-
return
|
|
1186
|
+
api: y,
|
|
1187
|
+
options: t = [],
|
|
1188
|
+
limit: a = 20,
|
|
1189
|
+
dataKey: l = "data"
|
|
1190
|
+
} = m, g = m.multi;
|
|
1191
|
+
function c(j) {
|
|
1192
|
+
return g ? Array.isArray(j) ? j : j ? [j] : [] : Array.isArray(j) ? j[0] : j;
|
|
1193
|
+
}
|
|
1194
|
+
const p = A(c(m.modelValue)), x = A(""), f = A(!1), v = A(t), u = A("id"), k = A("text"), _ = A(!1), C = A(m.layout !== "popover" && t.length > a), d = A([]), n = A(0);
|
|
1195
|
+
function r(j) {
|
|
1196
|
+
const O = j.find(Boolean) ?? {}, P = ["id", "value", "code", "key"].find((ie) => ie in O) ?? "id", Y = ["text", "label", "name", "title"].find((ie) => ie in O) ?? "text";
|
|
1197
|
+
return { autoValueKey: P, autoLabelKey: Y };
|
|
1198
|
+
}
|
|
1199
|
+
if (t.length > 0) {
|
|
1200
|
+
const j = r(t);
|
|
1201
|
+
u.value = j.autoValueKey, k.value = j.autoLabelKey;
|
|
1202
|
+
}
|
|
1203
|
+
const b = E(() => {
|
|
1204
|
+
if (y) return v.value;
|
|
1205
|
+
const j = v.value;
|
|
1206
|
+
if (m.layout === "popover") return j;
|
|
1207
|
+
if (!x.value)
|
|
1208
|
+
return _.value ? j : j.slice(0, a);
|
|
1209
|
+
const O = x.value.toLowerCase();
|
|
1210
|
+
return j.filter((P) => P[k.value].toLowerCase().includes(O));
|
|
1211
1211
|
});
|
|
1212
|
-
let
|
|
1213
|
-
async function
|
|
1214
|
-
if (
|
|
1215
|
-
|
|
1212
|
+
let h = null;
|
|
1213
|
+
async function K(j) {
|
|
1214
|
+
if (y) {
|
|
1215
|
+
f.value = !0;
|
|
1216
1216
|
try {
|
|
1217
|
-
const
|
|
1218
|
-
|
|
1219
|
-
const
|
|
1220
|
-
if (!
|
|
1221
|
-
|
|
1217
|
+
const O = new URL(y, window.location.origin);
|
|
1218
|
+
O.searchParams.set("json", "1"), O.searchParams.set("key", j), O.searchParams.set("limit", a.toString());
|
|
1219
|
+
const P = await fetch(O.toString());
|
|
1220
|
+
if (!P.ok) {
|
|
1221
|
+
Ae({ type: "error", title: "Error", message: "Failed to fetch remote options" }), v.value = [];
|
|
1222
1222
|
return;
|
|
1223
1223
|
}
|
|
1224
|
-
const
|
|
1225
|
-
if (!
|
|
1226
|
-
|
|
1224
|
+
const Y = await P.json();
|
|
1225
|
+
if (!Y[l]) {
|
|
1226
|
+
Ae({ type: "error", title: "Error", message: Y }), v.value = [];
|
|
1227
1227
|
return;
|
|
1228
1228
|
}
|
|
1229
|
-
if (
|
|
1230
|
-
const ie =
|
|
1231
|
-
|
|
1229
|
+
if (v.value = Y[l], v.value.length > 0) {
|
|
1230
|
+
const ie = r(v.value);
|
|
1231
|
+
u.value = ie.autoValueKey, k.value = ie.autoLabelKey;
|
|
1232
1232
|
}
|
|
1233
|
-
|
|
1234
|
-
} catch (
|
|
1235
|
-
console.error("Failed to fetch remote options:",
|
|
1233
|
+
n.value = Y.total;
|
|
1234
|
+
} catch (O) {
|
|
1235
|
+
console.error("Failed to fetch remote options:", O);
|
|
1236
1236
|
} finally {
|
|
1237
|
-
|
|
1237
|
+
f.value = !1;
|
|
1238
1238
|
}
|
|
1239
1239
|
}
|
|
1240
1240
|
}
|
|
1241
|
-
I(
|
|
1242
|
-
|
|
1243
|
-
|
|
1241
|
+
I(x, (j) => {
|
|
1242
|
+
y && (h && clearTimeout(h), h = setTimeout(() => {
|
|
1243
|
+
K(j);
|
|
1244
1244
|
}, 200));
|
|
1245
|
-
}), I(() =>
|
|
1246
|
-
|
|
1245
|
+
}), I(() => m.modelValue, (j) => {
|
|
1246
|
+
p.value = c(j);
|
|
1247
1247
|
}, { immediate: !0 });
|
|
1248
|
-
function
|
|
1249
|
-
return
|
|
1248
|
+
function M(j) {
|
|
1249
|
+
return g && Array.isArray(p.value) ? p.value.includes(j[u.value]) : p.value && p.value === j[u.value];
|
|
1250
1250
|
}
|
|
1251
|
-
function j
|
|
1252
|
-
if (
|
|
1253
|
-
const
|
|
1254
|
-
|
|
1251
|
+
function $(j) {
|
|
1252
|
+
if (g && !Array.isArray(p.value) && (p.value = []), g && Array.isArray(p.value)) {
|
|
1253
|
+
const O = p.value.includes(j[u.value]);
|
|
1254
|
+
p.value = O ? p.value.filter((P) => P !== j[u.value]) : [...p.value, j[u.value]], d.value = O ? d.value.filter((P) => P !== j[k.value]) : [...d.value, j[k.value]];
|
|
1255
1255
|
} else
|
|
1256
|
-
|
|
1257
|
-
o("update:modelValue",
|
|
1256
|
+
p.value = j[u.value], d.value = j[k.value];
|
|
1257
|
+
o("update:modelValue", p.value), o("change", { name: m.name, value: p.value });
|
|
1258
1258
|
}
|
|
1259
1259
|
function S() {
|
|
1260
|
-
|
|
1260
|
+
g ? (p.value = [], d.value = []) : (p.value = void 0, d.value = []), o("update:modelValue", p.value), o("clear", m.name);
|
|
1261
1261
|
}
|
|
1262
|
-
function
|
|
1263
|
-
|
|
1262
|
+
function F() {
|
|
1263
|
+
h && clearTimeout(h), x.value = "", _.value = !1;
|
|
1264
1264
|
}
|
|
1265
|
-
function
|
|
1266
|
-
|
|
1265
|
+
function D() {
|
|
1266
|
+
_.value = !_.value;
|
|
1267
1267
|
}
|
|
1268
1268
|
me(() => {
|
|
1269
|
-
|
|
1269
|
+
h && clearTimeout(h);
|
|
1270
1270
|
});
|
|
1271
|
-
const
|
|
1272
|
-
I(
|
|
1273
|
-
|
|
1271
|
+
const R = A(-1);
|
|
1272
|
+
I(b, () => {
|
|
1273
|
+
R.value = b.value.length > 0 ? 0 : -1;
|
|
1274
1274
|
});
|
|
1275
|
-
function
|
|
1276
|
-
const
|
|
1277
|
-
if (
|
|
1278
|
-
|
|
1279
|
-
else if (
|
|
1280
|
-
|
|
1281
|
-
else if (
|
|
1282
|
-
const
|
|
1283
|
-
|
|
1275
|
+
function N(j) {
|
|
1276
|
+
const O = b.value.length;
|
|
1277
|
+
if (j.key === "ArrowDown")
|
|
1278
|
+
j.preventDefault(), R.value = (R.value + 1) % O;
|
|
1279
|
+
else if (j.key === "ArrowUp")
|
|
1280
|
+
j.preventDefault(), R.value = (R.value - 1 + O) % O;
|
|
1281
|
+
else if (j.key === "Enter" && (j.preventDefault(), R.value >= 0 && R.value < b.value.length)) {
|
|
1282
|
+
const P = b.value[R.value];
|
|
1283
|
+
$(P);
|
|
1284
1284
|
}
|
|
1285
1285
|
}
|
|
1286
|
-
function
|
|
1287
|
-
|
|
1286
|
+
function z() {
|
|
1287
|
+
y && v.value.length === 0 && x.value.length === 0 && K(x.value);
|
|
1288
1288
|
}
|
|
1289
1289
|
return {
|
|
1290
|
-
innerValue:
|
|
1291
|
-
searchTerm:
|
|
1292
|
-
filteredOptions:
|
|
1293
|
-
isSelected:
|
|
1294
|
-
selectItem:
|
|
1290
|
+
innerValue: p,
|
|
1291
|
+
searchTerm: x,
|
|
1292
|
+
filteredOptions: b,
|
|
1293
|
+
isSelected: M,
|
|
1294
|
+
selectItem: $,
|
|
1295
1295
|
clear: S,
|
|
1296
|
-
resetSearch:
|
|
1297
|
-
toggleShowAll:
|
|
1298
|
-
isReqProc:
|
|
1299
|
-
showAll:
|
|
1296
|
+
resetSearch: F,
|
|
1297
|
+
toggleShowAll: D,
|
|
1298
|
+
isReqProc: f,
|
|
1299
|
+
showAll: _,
|
|
1300
1300
|
isEnableShowAll: C,
|
|
1301
1301
|
labelKey: k,
|
|
1302
|
-
valueKey:
|
|
1303
|
-
allOptions:
|
|
1304
|
-
highlightedIndex:
|
|
1305
|
-
onKeyDown:
|
|
1306
|
-
selectedLabels:
|
|
1307
|
-
totalCount:
|
|
1308
|
-
loadData:
|
|
1302
|
+
valueKey: u,
|
|
1303
|
+
allOptions: v,
|
|
1304
|
+
highlightedIndex: R,
|
|
1305
|
+
onKeyDown: N,
|
|
1306
|
+
selectedLabels: d,
|
|
1307
|
+
totalCount: n,
|
|
1308
|
+
loadData: z
|
|
1309
1309
|
};
|
|
1310
1310
|
}
|
|
1311
|
-
const
|
|
1311
|
+
const nl = { class: "h-[45px] shrink-0 px-[6px] py-[4px] flex items-center relative justify-center" }, rl = ["placeholder"], sl = {
|
|
1312
1312
|
key: 0,
|
|
1313
1313
|
class: "w-full"
|
|
1314
|
-
}, il = { class: "flex flex-col items-center justify-center p-5 text-center" }, ul = { class: "max-w-sm mx-auto mt-6" },
|
|
1314
|
+
}, il = { class: "flex flex-col items-center justify-center p-5 text-center" }, ul = { class: "max-w-sm mx-auto mt-6" }, dl = { class: "font-medium text-gray-800 dark:text-neutral-200" }, cl = {
|
|
1315
1315
|
key: 0,
|
|
1316
1316
|
class: "flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"
|
|
1317
1317
|
}, fl = {
|
|
1318
1318
|
key: 1,
|
|
1319
1319
|
class: "flex justify-between items-center text-xs text-gray-500 p-1 border-t"
|
|
1320
|
-
},
|
|
1320
|
+
}, pl = /* @__PURE__ */ q({
|
|
1321
1321
|
__name: "select",
|
|
1322
1322
|
props: {
|
|
1323
1323
|
id: {},
|
|
@@ -1346,154 +1346,154 @@ const ol = { class: "h-[45px] shrink-0 px-[6px] py-[4px] flex items-center relat
|
|
|
1346
1346
|
itemClass: {}
|
|
1347
1347
|
},
|
|
1348
1348
|
emits: ["update:modelValue", "change", "clear"],
|
|
1349
|
-
setup(
|
|
1350
|
-
const
|
|
1351
|
-
innerValue:
|
|
1352
|
-
filteredOptions:
|
|
1353
|
-
isSelected:
|
|
1354
|
-
selectItem:
|
|
1355
|
-
clear:
|
|
1356
|
-
resetSearch:
|
|
1349
|
+
setup(m, { expose: o, emit: y }) {
|
|
1350
|
+
const t = oe(), a = m, l = y, g = A(null), {
|
|
1351
|
+
innerValue: c,
|
|
1352
|
+
filteredOptions: p,
|
|
1353
|
+
isSelected: x,
|
|
1354
|
+
selectItem: f,
|
|
1355
|
+
clear: v,
|
|
1356
|
+
resetSearch: u,
|
|
1357
1357
|
toggleShowAll: k,
|
|
1358
|
-
isReqProc:
|
|
1358
|
+
isReqProc: _,
|
|
1359
1359
|
showAll: C,
|
|
1360
|
-
isEnableShowAll:
|
|
1361
|
-
searchTerm:
|
|
1362
|
-
labelKey:
|
|
1363
|
-
valueKey:
|
|
1364
|
-
highlightedIndex:
|
|
1365
|
-
onKeyDown:
|
|
1366
|
-
selectedLabels:
|
|
1367
|
-
totalCount:
|
|
1360
|
+
isEnableShowAll: d,
|
|
1361
|
+
searchTerm: n,
|
|
1362
|
+
labelKey: r,
|
|
1363
|
+
valueKey: b,
|
|
1364
|
+
highlightedIndex: h,
|
|
1365
|
+
onKeyDown: K,
|
|
1366
|
+
selectedLabels: M,
|
|
1367
|
+
totalCount: $,
|
|
1368
1368
|
loadData: S
|
|
1369
|
-
} =
|
|
1370
|
-
...
|
|
1371
|
-
modelValue:
|
|
1372
|
-
},
|
|
1373
|
-
|
|
1374
|
-
|
|
1369
|
+
} = al({
|
|
1370
|
+
...a,
|
|
1371
|
+
modelValue: a.modelValue
|
|
1372
|
+
}, l);
|
|
1373
|
+
ce(() => {
|
|
1374
|
+
u(), a.layout !== "inline" && (S(), g.value && a.layout === "popover" && g.value.focus());
|
|
1375
1375
|
}), I(
|
|
1376
|
-
() =>
|
|
1377
|
-
(
|
|
1378
|
-
|
|
1376
|
+
() => a.modelValue,
|
|
1377
|
+
(D) => {
|
|
1378
|
+
D === void 0 && (a.multi ? c.value = [] : c.value = void 0);
|
|
1379
1379
|
}
|
|
1380
1380
|
);
|
|
1381
|
-
const
|
|
1382
|
-
return I(
|
|
1383
|
-
|
|
1381
|
+
const F = A([]);
|
|
1382
|
+
return I(h, (D) => {
|
|
1383
|
+
D >= 0 && F.value[D] && F.value[D]?.scrollIntoView({
|
|
1384
1384
|
block: "nearest",
|
|
1385
1385
|
behavior: "smooth"
|
|
1386
1386
|
});
|
|
1387
|
-
}), I(
|
|
1388
|
-
|
|
1387
|
+
}), I(p, () => {
|
|
1388
|
+
F.value = [];
|
|
1389
1389
|
}), o({
|
|
1390
|
-
clear:
|
|
1391
|
-
inputTextRef:
|
|
1392
|
-
selectedLabels:
|
|
1390
|
+
clear: v,
|
|
1391
|
+
inputTextRef: g,
|
|
1392
|
+
selectedLabels: M,
|
|
1393
1393
|
loadData: S
|
|
1394
|
-
}), (
|
|
1395
|
-
class:
|
|
1394
|
+
}), (D, R) => (i(), w("div", {
|
|
1395
|
+
class: L([D.layout === "popover" ? "flex flex-col h-full" : "flex flex-col vs-filter-checkbox space-y-0.5"])
|
|
1396
1396
|
}, [
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
"onUpdate:modelValue":
|
|
1400
|
-
onKeydown:
|
|
1401
|
-
(...
|
|
1397
|
+
s("div", nl, [
|
|
1398
|
+
W(s("input", {
|
|
1399
|
+
"onUpdate:modelValue": R[0] || (R[0] = (N) => Ye(n) ? n.value = N : null),
|
|
1400
|
+
onKeydown: R[1] || (R[1] = //@ts-ignore
|
|
1401
|
+
(...N) => e(K) && e(K)(...N)),
|
|
1402
1402
|
class: "w-full h-full text-[13px] px-4 border rounded-sm pl-9 focus:outline-none focus:ring-ring focus:ring-1 focus:ring-blue-500 text-gray-700",
|
|
1403
|
-
placeholder: e(
|
|
1403
|
+
placeholder: e(t)("filter.search"),
|
|
1404
1404
|
type: "text",
|
|
1405
1405
|
ref_key: "inputTextRef",
|
|
1406
|
-
ref:
|
|
1406
|
+
ref: g
|
|
1407
1407
|
}, null, 40, rl), [
|
|
1408
|
-
[ee, e(
|
|
1408
|
+
[ee, e(n)]
|
|
1409
1409
|
]),
|
|
1410
|
-
|
|
1411
|
-
e(
|
|
1410
|
+
Q(Le, { class: "absolute text-gray-400 -translate-y-1/2 left-4 top-1/2" }),
|
|
1411
|
+
e(n) != "" ? (i(), T(Ce, {
|
|
1412
1412
|
key: 0,
|
|
1413
|
-
onClick:
|
|
1413
|
+
onClick: R[2] || (R[2] = (N) => n.value = ""),
|
|
1414
1414
|
class: "absolute text-gray-400 -translate-y-1/2 cursor-pointer hover:text-red-500 right-4 top-1/2"
|
|
1415
|
-
})) :
|
|
1415
|
+
})) : V("", !0)
|
|
1416
1416
|
]),
|
|
1417
|
-
|
|
1418
|
-
class:
|
|
1419
|
-
|
|
1420
|
-
|
|
1417
|
+
s("div", {
|
|
1418
|
+
class: L([
|
|
1419
|
+
D.layout === "popover" ? "flex-1 overflow-y-auto p-2" : "",
|
|
1420
|
+
D.layout === "inline" ? "flex-1 overflow-y-auto max-h-80" : ""
|
|
1421
1421
|
])
|
|
1422
1422
|
}, [
|
|
1423
|
-
(
|
|
1424
|
-
layout:
|
|
1425
|
-
count:
|
|
1426
|
-
label:
|
|
1427
|
-
color:
|
|
1428
|
-
type:
|
|
1429
|
-
value:
|
|
1430
|
-
"is-selected": e(
|
|
1431
|
-
highlighted:
|
|
1432
|
-
onItemClick: (
|
|
1423
|
+
(i(!0), w(U, null, X(e(p), (N, z) => (i(), T(he, {
|
|
1424
|
+
layout: D.layout,
|
|
1425
|
+
count: N.count,
|
|
1426
|
+
label: N[e(r)],
|
|
1427
|
+
color: N.color,
|
|
1428
|
+
type: D.multi ? "checkbox" : "radio",
|
|
1429
|
+
value: N[e(b)],
|
|
1430
|
+
"is-selected": e(x)(N),
|
|
1431
|
+
highlighted: z === e(h),
|
|
1432
|
+
onItemClick: (j) => e(f)(N),
|
|
1433
1433
|
ref_for: !0,
|
|
1434
|
-
ref: (
|
|
1434
|
+
ref: (j) => F.value[z] = j?.el
|
|
1435
1435
|
}, null, 8, ["layout", "count", "label", "color", "type", "value", "is-selected", "highlighted", "onItemClick"]))), 256))
|
|
1436
1436
|
], 2),
|
|
1437
|
-
|
|
1438
|
-
|
|
1439
|
-
|
|
1440
|
-
|
|
1441
|
-
|
|
1442
|
-
|
|
1437
|
+
D.type === "select" && e(p).length === 0 && !e(_) ? (i(), w("div", sl, [
|
|
1438
|
+
s("div", il, [
|
|
1439
|
+
Q(we),
|
|
1440
|
+
s("div", ul, [
|
|
1441
|
+
s("p", dl, B(e(t)("filter.notfound")), 1),
|
|
1442
|
+
R[7] || (R[7] = s("p", { class: "mt-2 text-sm text-gray-500 dark:text-neutral-500" }, null, -1))
|
|
1443
1443
|
])
|
|
1444
1444
|
])
|
|
1445
|
-
])) :
|
|
1446
|
-
|
|
1447
|
-
!e(C) && e(
|
|
1445
|
+
])) : V("", !0),
|
|
1446
|
+
D.layout !== "popover" && D.type !== "select" ? (i(), w(U, { key: 1 }, [
|
|
1447
|
+
!e(C) && e(d) ? (i(), w("div", {
|
|
1448
1448
|
key: 0,
|
|
1449
|
-
onClick:
|
|
1450
|
-
(...
|
|
1449
|
+
onClick: R[3] || (R[3] = //@ts-ignore
|
|
1450
|
+
(...N) => e(k) && e(k)(...N)),
|
|
1451
1451
|
class: "inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"
|
|
1452
1452
|
}, [
|
|
1453
|
-
G(B(e(
|
|
1454
|
-
|
|
1455
|
-
])) :
|
|
1456
|
-
e(C) ? (
|
|
1453
|
+
G(B(e(t)("filter.more")) + " ", 1),
|
|
1454
|
+
Q(ve)
|
|
1455
|
+
])) : V("", !0),
|
|
1456
|
+
e(C) ? (i(), w("div", {
|
|
1457
1457
|
key: 1,
|
|
1458
|
-
onClick:
|
|
1459
|
-
(...
|
|
1458
|
+
onClick: R[4] || (R[4] = //@ts-ignore
|
|
1459
|
+
(...N) => e(k) && e(k)(...N)),
|
|
1460
1460
|
class: "inline-flex cursor-pointer items-center gap-x-1.5 text-[13px] text-gray-800 underline underline-offset-4 hover:text-blue-600 focus:outline-none focus:text-blue-600 mt-1 px-2"
|
|
1461
1461
|
}, [
|
|
1462
|
-
G(B(e(
|
|
1463
|
-
|
|
1464
|
-
])) :
|
|
1465
|
-
], 64)) :
|
|
1466
|
-
|
|
1467
|
-
|
|
1468
|
-
G(B(
|
|
1469
|
-
|
|
1462
|
+
G(B(e(t)("filter.less")) + " ", 1),
|
|
1463
|
+
Q(ke)
|
|
1464
|
+
])) : V("", !0)
|
|
1465
|
+
], 64)) : V("", !0),
|
|
1466
|
+
D.cleanable ? (i(), w(U, { key: 2 }, [
|
|
1467
|
+
D.layout === "inline" ? (i(), w("div", cl, [
|
|
1468
|
+
G(B(D.multi && Array.isArray(e(c)) ? e(c)?.length : e(c) !== void 0 && (e(c) || e(c) === null) ? 1 : 0) + " / " + B(e($)) + " " + B(e(t)("filter.selected")) + " ", 1),
|
|
1469
|
+
W(s("button", {
|
|
1470
1470
|
class: "text-gray-600 hover:text-gray-800",
|
|
1471
|
-
onClick:
|
|
1472
|
-
(...
|
|
1473
|
-
}, B(e(
|
|
1474
|
-
[
|
|
1471
|
+
onClick: R[5] || (R[5] = //@ts-ignore
|
|
1472
|
+
(...N) => e(v) && e(v)(...N))
|
|
1473
|
+
}, B(e(t)("filter.clear")), 513), [
|
|
1474
|
+
[Z, e(c) !== "" && e(c) !== void 0 || e(c)]
|
|
1475
1475
|
])
|
|
1476
|
-
])) :
|
|
1477
|
-
|
|
1478
|
-
|
|
1479
|
-
|
|
1476
|
+
])) : V("", !0),
|
|
1477
|
+
D.layout === "popover" ? (i(), w("div", fl, [
|
|
1478
|
+
s("span", null, B(D.multi && Array.isArray(e(c)) ? e(c)?.length : e(c) !== void 0 && (e(c) || e(c) === null) ? 1 : 0) + " / " + B(e($)) + " " + B(e(t)("filter.selected")), 1),
|
|
1479
|
+
W(s("button", {
|
|
1480
1480
|
class: "text-gray-600 hover:text-gray-800",
|
|
1481
|
-
onClick:
|
|
1482
|
-
(...
|
|
1483
|
-
}, B(e(
|
|
1484
|
-
[
|
|
1481
|
+
onClick: R[6] || (R[6] = //@ts-ignore
|
|
1482
|
+
(...N) => e(v) && e(v)(...N))
|
|
1483
|
+
}, B(e(t)("filter.clear")), 513), [
|
|
1484
|
+
[Z, e(c) !== "" && e(c) !== void 0 || e(c)]
|
|
1485
1485
|
])
|
|
1486
|
-
])) :
|
|
1487
|
-
], 64)) :
|
|
1486
|
+
])) : V("", !0)
|
|
1487
|
+
], 64)) : V("", !0)
|
|
1488
1488
|
], 2));
|
|
1489
1489
|
}
|
|
1490
|
-
}),
|
|
1490
|
+
}), ml = ["for", "onClick"], vl = ["id", "name", "value"], yl = { class: "block" }, gl = {
|
|
1491
1491
|
key: 0,
|
|
1492
1492
|
class: "flex justify-between p-2 border-t bg-gray-50 text-xs text-gray-500"
|
|
1493
1493
|
}, bl = {
|
|
1494
1494
|
key: 1,
|
|
1495
1495
|
class: "flex justify-between items-center text-xs text-gray-500 p-1 border-t"
|
|
1496
|
-
},
|
|
1496
|
+
}, hl = /* @__PURE__ */ q({
|
|
1497
1497
|
__name: "tag-field",
|
|
1498
1498
|
props: {
|
|
1499
1499
|
id: {},
|
|
@@ -1522,77 +1522,77 @@ const ol = { class: "h-[45px] shrink-0 px-[6px] py-[4px] flex items-center relat
|
|
|
1522
1522
|
itemClass: {}
|
|
1523
1523
|
},
|
|
1524
1524
|
emits: ["update:modelValue", "change", "clear"],
|
|
1525
|
-
setup(
|
|
1526
|
-
const
|
|
1527
|
-
innerValue:
|
|
1528
|
-
isSelected:
|
|
1529
|
-
selectItem:
|
|
1530
|
-
clear:
|
|
1531
|
-
labelKey:
|
|
1532
|
-
valueKey:
|
|
1533
|
-
allOptions:
|
|
1534
|
-
} =
|
|
1535
|
-
...
|
|
1536
|
-
modelValue:
|
|
1537
|
-
},
|
|
1538
|
-
...
|
|
1539
|
-
modelValue:
|
|
1540
|
-
},
|
|
1525
|
+
setup(m, { expose: o, emit: y }) {
|
|
1526
|
+
const t = m, a = y, {
|
|
1527
|
+
innerValue: l,
|
|
1528
|
+
isSelected: g,
|
|
1529
|
+
selectItem: c,
|
|
1530
|
+
clear: p,
|
|
1531
|
+
labelKey: x,
|
|
1532
|
+
valueKey: f,
|
|
1533
|
+
allOptions: v
|
|
1534
|
+
} = t.multi ? Me({
|
|
1535
|
+
...t,
|
|
1536
|
+
modelValue: t.modelValue ?? t.default ?? []
|
|
1537
|
+
}, a) : xe({
|
|
1538
|
+
...t,
|
|
1539
|
+
modelValue: t.modelValue !== void 0 ? t.modelValue : t.default ?? ""
|
|
1540
|
+
}, a);
|
|
1541
1541
|
return o({
|
|
1542
|
-
clear:
|
|
1542
|
+
clear: p
|
|
1543
1543
|
}), I(
|
|
1544
|
-
() =>
|
|
1545
|
-
(
|
|
1546
|
-
|
|
1544
|
+
() => t.modelValue,
|
|
1545
|
+
(u) => {
|
|
1546
|
+
u === void 0 && (t.multi ? l.value = [] : l.value = void 0);
|
|
1547
1547
|
}
|
|
1548
|
-
), (
|
|
1549
|
-
|
|
1550
|
-
class:
|
|
1548
|
+
), (u, k) => (i(), w(U, null, [
|
|
1549
|
+
s("div", {
|
|
1550
|
+
class: L(["grid grid-cols-3 gap-2 mx-[1px]", u.layout === "popover" ? "m-1" : "mb-1"])
|
|
1551
1551
|
}, [
|
|
1552
|
-
(
|
|
1553
|
-
key: `item-${
|
|
1554
|
-
for: `item-${
|
|
1555
|
-
onClick: se((C) => e(
|
|
1556
|
-
class:
|
|
1552
|
+
(i(!0), w(U, null, X(e(v), (_) => (i(), w("label", {
|
|
1553
|
+
key: `item-${_[e(f)]}`,
|
|
1554
|
+
for: `item-${_[e(f)]}`,
|
|
1555
|
+
onClick: se((C) => e(c)(_), ["stop", "prevent"]),
|
|
1556
|
+
class: L([e(g)(_) ? "ring-2 ring-indigo-600" : "", "p-2.5 group relative flex justify-center items-center gap-x-12 text-center text-xs bg-white text-gray-800 border border-gray-200 cursor-pointer rounded-sm dark:bg-neutral-900 dark:border-neutral-700 dark:text-neutral-200 peer-checked:text-indigo-600 dark:has-checked:text-indigo-500 peer-checked:border-indigo-600 dark:has-checked:border-indigo-500 peer-checked:ring peer-checked:shadow focus:ring dark:has-checked:ring-indigo-500 has-disabled:pointer-events-none has-disabled:text-gray-200 dark:has-disabled:text-neutral-700 has-disabled:after:absolute has-disabled:after:inset-0 has-disabled:after:bg-[linear-gradient(to_right_bottom,transparent_calc(50%-1px),var(--color-gray-200)_calc(50%-1px),var(--color-gray-200)_50%,transparent_50%)] dark:has-disabled:after:bg-[linear-gradient(to_right_bottom,transparent_calc(50%-1px),var(--color-neutral-700)_calc(50%-1px),var(--color-neutral-700)_50%,transparent_50%)]"])
|
|
1557
1557
|
}, [
|
|
1558
|
-
|
|
1558
|
+
s("input", {
|
|
1559
1559
|
type: "checkbox",
|
|
1560
|
-
id: `item-${
|
|
1560
|
+
id: `item-${_[e(f)]}`,
|
|
1561
1561
|
class: "hidden w4poy border-gray-200 g41z1 g22e3 axcnw dark:text-indigo-500 dark:border-neutral-700 dark:focus:ring-neutral-900",
|
|
1562
|
-
name: `item-${
|
|
1563
|
-
value:
|
|
1562
|
+
name: `item-${_[e(f)]}`,
|
|
1563
|
+
value: _[e(f)]
|
|
1564
1564
|
}, null, 8, vl),
|
|
1565
|
-
|
|
1566
|
-
], 10,
|
|
1565
|
+
s("span", yl, B(_[e(x)]), 1)
|
|
1566
|
+
], 10, ml))), 128))
|
|
1567
1567
|
], 2),
|
|
1568
|
-
|
|
1569
|
-
|
|
1570
|
-
G(B(
|
|
1571
|
-
|
|
1568
|
+
u.cleanable ? (i(), w(U, { key: 0 }, [
|
|
1569
|
+
u.layout === "inline" ? (i(), w("div", gl, [
|
|
1570
|
+
G(B(u.multi && Array.isArray(e(l)) ? e(l)?.length : e(l) !== void 0 && (e(l) || e(l) === null) ? 1 : 0) + " з " + B(e(v).length) + " обрано ", 1),
|
|
1571
|
+
W(s("button", {
|
|
1572
1572
|
class: "text-gray-600 hover:text-gray-800",
|
|
1573
1573
|
onClick: k[0] || (k[0] = //@ts-ignore
|
|
1574
|
-
(...
|
|
1574
|
+
(..._) => e(p) && e(p)(..._))
|
|
1575
1575
|
}, " Очистити ", 512), [
|
|
1576
|
-
[
|
|
1576
|
+
[Z, e(l) !== "" && e(l) !== void 0 || e(l)]
|
|
1577
1577
|
])
|
|
1578
|
-
])) :
|
|
1579
|
-
|
|
1580
|
-
|
|
1581
|
-
|
|
1578
|
+
])) : V("", !0),
|
|
1579
|
+
u.layout === "popover" ? (i(), w("div", bl, [
|
|
1580
|
+
s("span", null, B(u.multi && Array.isArray(e(l)) ? e(l)?.length : e(l) !== void 0 && (e(l) || e(l) === null) ? 1 : 0) + " з " + B(e(v).length) + " обрано", 1),
|
|
1581
|
+
W(s("button", {
|
|
1582
1582
|
class: "text-gray-600 hover:text-gray-800",
|
|
1583
1583
|
onClick: k[1] || (k[1] = //@ts-ignore
|
|
1584
|
-
(...
|
|
1584
|
+
(..._) => e(p) && e(p)(..._))
|
|
1585
1585
|
}, " Очистити ", 512), [
|
|
1586
|
-
[
|
|
1586
|
+
[Z, e(l) !== void 0 && e(l) !== "" || e(l)]
|
|
1587
1587
|
])
|
|
1588
|
-
])) :
|
|
1589
|
-
], 64)) :
|
|
1588
|
+
])) : V("", !0)
|
|
1589
|
+
], 64)) : V("", !0)
|
|
1590
1590
|
], 64));
|
|
1591
1591
|
}
|
|
1592
|
-
}),
|
|
1592
|
+
}), xl = ["disabled", "title"], wl = { class: "flex w-full items-center justify-between gap-1 overflow-hidden text-left" }, kl = { class: "truncate text-ellipsis text-sm" }, Cl = {
|
|
1593
1593
|
key: 0,
|
|
1594
1594
|
class: "inline-flex min-h-[18px] min-w-[18px] items-center justify-center rounded-sm bg-blue-100 px-2 text-[11px] font-semibold text-blue-600"
|
|
1595
|
-
},
|
|
1595
|
+
}, _l = { class: "w-full text-sm text-stone-800 bg-white shadow-[0_10px_40px_10px_rgba(0,0,0,0.08)] rounded-sm focus:outline-none focus:bg-stone-100 after:h-4 after:absolute after:-bottom-4 after:start-0 after:w-full before:h-4 before:absolute before:-top-4 before:start-0 before:w-full" }, Vl = { class: "w-[360px] max-h-[500px] overflow-auto [&::-webkit-scrollbar]:h-2 [&::-webkit-scrollbar]:w-1 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-track]:bg-stone-100 [&::-webkit-scrollbar-thumb]:bg-stone-300 dark:[&::-webkit-scrollbar-track]:bg-neutral-700 dark:[&::-webkit-scrollbar-thumb]:bg-neutral-500 before:w-full p-2" }, _e = /* @__PURE__ */ q({
|
|
1596
1596
|
__name: "popover-field",
|
|
1597
1597
|
props: {
|
|
1598
1598
|
disabled: { type: Boolean, default: !1 },
|
|
@@ -1609,91 +1609,91 @@ const ol = { class: "h-[45px] shrink-0 px-[6px] py-[4px] flex items-center relat
|
|
|
1609
1609
|
mode: {},
|
|
1610
1610
|
layout: {}
|
|
1611
1611
|
},
|
|
1612
|
-
setup(
|
|
1613
|
-
const
|
|
1614
|
-
function
|
|
1615
|
-
const
|
|
1616
|
-
if (!
|
|
1617
|
-
const
|
|
1618
|
-
let { left:
|
|
1619
|
-
|
|
1612
|
+
setup(m, { expose: o }) {
|
|
1613
|
+
const y = m, t = E(() => Te(y.mode)), a = A(!1), l = A({ top: 0, left: 0 }), g = A(null), c = A(null), p = A(null);
|
|
1614
|
+
function x() {
|
|
1615
|
+
const h = c.value, K = p.value;
|
|
1616
|
+
if (!h || !K) return;
|
|
1617
|
+
const M = h.getBoundingClientRect(), $ = K.offsetWidth, S = window.innerWidth, F = M.bottom + 8;
|
|
1618
|
+
let { left: D } = M;
|
|
1619
|
+
D + $ > S && (D = Math.max(S - $ - 10, 10)), l.value = { top: F, left: D };
|
|
1620
1620
|
}
|
|
1621
|
-
function
|
|
1622
|
-
|
|
1623
|
-
|
|
1621
|
+
function f() {
|
|
1622
|
+
a.value = !a.value, a.value && fe(() => {
|
|
1623
|
+
x(), y.fieldRef?.inputTextRef && y.fieldRef?.inputTextRef?.focus?.(), y.fieldRef?.loadData && y.fieldRef?.loadData?.();
|
|
1624
1624
|
});
|
|
1625
1625
|
}
|
|
1626
|
-
function
|
|
1627
|
-
!
|
|
1626
|
+
function v(h) {
|
|
1627
|
+
!g.value?.contains(h.target) && !p.value?.contains(h.target) && !c.value?.contains(h.target) && (a.value = !1);
|
|
1628
1628
|
}
|
|
1629
|
-
function
|
|
1630
|
-
|
|
1629
|
+
function u(h) {
|
|
1630
|
+
h.key === "Escape" && (a.value = !1);
|
|
1631
1631
|
}
|
|
1632
|
-
const k = A(!1),
|
|
1633
|
-
|
|
1632
|
+
const k = A(!1), _ = A("ua"), C = (h) => {
|
|
1633
|
+
h.detail.key === "locale" && (_.value = h.detail.newValue);
|
|
1634
1634
|
};
|
|
1635
|
-
|
|
1636
|
-
k.value = !0,
|
|
1635
|
+
ce(() => {
|
|
1636
|
+
k.value = !0, _.value = localStorage.locale, window.addEventListener("storage", C), document.addEventListener("click", v, !0), document.addEventListener("keydown", u), window.addEventListener("scroll", x, !0);
|
|
1637
1637
|
}), me(() => {
|
|
1638
|
-
window.removeEventListener("resize", C), document.removeEventListener("click",
|
|
1638
|
+
window.removeEventListener("resize", C), document.removeEventListener("click", v, !0), document.removeEventListener("keydown", u), window.removeEventListener("scroll", x, !0);
|
|
1639
1639
|
});
|
|
1640
|
-
function
|
|
1641
|
-
|
|
1640
|
+
function d() {
|
|
1641
|
+
a.value = !1;
|
|
1642
1642
|
}
|
|
1643
|
-
o({ close:
|
|
1644
|
-
function
|
|
1645
|
-
return Array.isArray(
|
|
1643
|
+
o({ close: d });
|
|
1644
|
+
function n(h) {
|
|
1645
|
+
return Array.isArray(h) ? h.filter((K) => K != null && K !== "").length : h && typeof h == "object" ? Object.values(h).filter((K) => K != null && K !== "").length : typeof h == "string" ? h.trim() === "" ? 0 : 1 : typeof h == "number" ? Number.isNaN(h) ? 0 : 1 : h === null || h !== void 0 ? 1 : 0;
|
|
1646
1646
|
}
|
|
1647
|
-
const
|
|
1648
|
-
const
|
|
1649
|
-
return
|
|
1650
|
-
}),
|
|
1651
|
-
const
|
|
1652
|
-
return !
|
|
1647
|
+
const r = E(() => {
|
|
1648
|
+
const h = y.fieldRef?.selectedLabels, K = n(h);
|
|
1649
|
+
return K > 0 ? K : n(y.currentValue);
|
|
1650
|
+
}), b = E(() => {
|
|
1651
|
+
const h = y.fieldRef?.selectedLabels;
|
|
1652
|
+
return !h || ["inline"].includes(y.layout || "") ? y[_.value] || (y.label ?? "") : Array.isArray(h) ? h.length > 0 ? h.join(", ") : y.label ?? "" : String(h);
|
|
1653
1653
|
});
|
|
1654
|
-
return (
|
|
1655
|
-
|
|
1656
|
-
onClick:
|
|
1657
|
-
disabled:
|
|
1654
|
+
return (h, K) => (i(), w("div", null, [
|
|
1655
|
+
s("button", {
|
|
1656
|
+
onClick: f,
|
|
1657
|
+
disabled: h.disabled,
|
|
1658
1658
|
ref_key: "triggerRef",
|
|
1659
|
-
ref:
|
|
1660
|
-
title:
|
|
1661
|
-
class:
|
|
1662
|
-
|
|
1663
|
-
|
|
1664
|
-
|
|
1659
|
+
ref: c,
|
|
1660
|
+
title: h.label,
|
|
1661
|
+
class: L([
|
|
1662
|
+
t.value,
|
|
1663
|
+
h.width ? e(Oe).getWidthClass(h.width) : "w-full",
|
|
1664
|
+
h.layout === "inline" && r.value > 0 ? "border border-blue-400 bg-blue-50 text-blue-600" : ""
|
|
1665
1665
|
]),
|
|
1666
1666
|
type: "button"
|
|
1667
1667
|
}, [
|
|
1668
|
-
|
|
1669
|
-
|
|
1670
|
-
|
|
1668
|
+
s("span", wl, [
|
|
1669
|
+
s("span", kl, B(b.value), 1),
|
|
1670
|
+
h.layout === "inline" && r.value > 0 ? (i(), w("span", Cl, B(r.value), 1)) : V("", !0)
|
|
1671
1671
|
]),
|
|
1672
|
-
|
|
1673
|
-
], 10,
|
|
1674
|
-
k.value ? (
|
|
1672
|
+
Q(ve, { class: "h-4 w-4 text-neutral-500" })
|
|
1673
|
+
], 10, xl),
|
|
1674
|
+
k.value ? (i(), T(ge, {
|
|
1675
1675
|
key: 0,
|
|
1676
1676
|
to: "body"
|
|
1677
1677
|
}, [
|
|
1678
|
-
|
|
1678
|
+
W(s("div", {
|
|
1679
1679
|
ref_key: "popperRef",
|
|
1680
|
-
ref:
|
|
1680
|
+
ref: p,
|
|
1681
1681
|
class: "vsTailwind vs-popover__content bottom-right w-fit fixed z-[1000]",
|
|
1682
|
-
style: be({ top: `${
|
|
1682
|
+
style: be({ top: `${l.value.top}px`, left: `${l.value.left}px` }),
|
|
1683
1683
|
"data-inside-popover": ""
|
|
1684
1684
|
}, [
|
|
1685
|
-
|
|
1686
|
-
|
|
1687
|
-
|
|
1685
|
+
s("div", _l, [
|
|
1686
|
+
s("div", Vl, [
|
|
1687
|
+
de(h.$slots, "default")
|
|
1688
1688
|
])
|
|
1689
1689
|
])
|
|
1690
1690
|
], 4), [
|
|
1691
|
-
[
|
|
1691
|
+
[Z, a.value]
|
|
1692
1692
|
])
|
|
1693
|
-
])) :
|
|
1693
|
+
])) : V("", !0)
|
|
1694
1694
|
]));
|
|
1695
1695
|
}
|
|
1696
|
-
}),
|
|
1696
|
+
}), $l = {}, Al = {
|
|
1697
1697
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1698
1698
|
width: "24",
|
|
1699
1699
|
height: "24",
|
|
@@ -1705,12 +1705,12 @@ const ol = { class: "h-[45px] shrink-0 px-[6px] py-[4px] flex items-center relat
|
|
|
1705
1705
|
"stroke-linejoin": "round",
|
|
1706
1706
|
class: "text-blue-600 w-[16px] h-[16px]"
|
|
1707
1707
|
};
|
|
1708
|
-
function
|
|
1709
|
-
return
|
|
1710
|
-
|
|
1711
|
-
])
|
|
1708
|
+
function Bl(m, o) {
|
|
1709
|
+
return i(), w("svg", Al, o[0] || (o[0] = [
|
|
1710
|
+
s("path", { d: "M20 6 9 17l-5-5" }, null, -1)
|
|
1711
|
+
]));
|
|
1712
1712
|
}
|
|
1713
|
-
const re = /* @__PURE__ */ te(
|
|
1713
|
+
const re = /* @__PURE__ */ te($l, [["render", Bl]]), Sl = {}, jl = {
|
|
1714
1714
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1715
1715
|
width: "15px",
|
|
1716
1716
|
height: "24",
|
|
@@ -1722,17 +1722,17 @@ const re = /* @__PURE__ */ te(Al, [["render", Sl]]), jl = {}, Dl = {
|
|
|
1722
1722
|
"stroke-linejoin": "round",
|
|
1723
1723
|
class: "icon icon-tabler icons-tabler-outline icon-tabler-chevron-down text-gray-800 rotate-[90deg]"
|
|
1724
1724
|
};
|
|
1725
|
-
function
|
|
1726
|
-
return
|
|
1727
|
-
|
|
1725
|
+
function Dl(m, o) {
|
|
1726
|
+
return i(), w("svg", jl, o[0] || (o[0] = [
|
|
1727
|
+
s("path", {
|
|
1728
1728
|
stroke: "none",
|
|
1729
1729
|
d: "M0 0h24v24H0z",
|
|
1730
1730
|
fill: "none"
|
|
1731
1731
|
}, null, -1),
|
|
1732
|
-
|
|
1733
|
-
])
|
|
1732
|
+
s("path", { d: "M6 9l6 6l6 -6" }, null, -1)
|
|
1733
|
+
]));
|
|
1734
1734
|
}
|
|
1735
|
-
const
|
|
1735
|
+
const Rl = /* @__PURE__ */ te(Sl, [["render", Dl]]), Fl = {}, Kl = {
|
|
1736
1736
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1737
1737
|
width: "15px",
|
|
1738
1738
|
height: "24",
|
|
@@ -1744,21 +1744,21 @@ const Fl = /* @__PURE__ */ te(jl, [["render", Rl]]), Kl = {}, Ml = {
|
|
|
1744
1744
|
"stroke-linejoin": "round",
|
|
1745
1745
|
class: "icon icon-tabler icons-tabler-outline icon-tabler-chevron-down text-gray-800 rotate-[270deg]"
|
|
1746
1746
|
};
|
|
1747
|
-
function
|
|
1748
|
-
return
|
|
1749
|
-
|
|
1747
|
+
function Ml(m, o) {
|
|
1748
|
+
return i(), w("svg", Kl, o[0] || (o[0] = [
|
|
1749
|
+
s("path", {
|
|
1750
1750
|
stroke: "none",
|
|
1751
1751
|
d: "M0 0h24v24H0z",
|
|
1752
1752
|
fill: "none"
|
|
1753
1753
|
}, null, -1),
|
|
1754
|
-
|
|
1755
|
-
])
|
|
1754
|
+
s("path", { d: "M6 9l6 6l6 -6" }, null, -1)
|
|
1755
|
+
]));
|
|
1756
1756
|
}
|
|
1757
|
-
const
|
|
1757
|
+
const Ll = /* @__PURE__ */ te(Fl, [["render", Ml]]), Ol = { class: "flex gap-1" }, El = { class: "mb-1" }, Tl = { class: "mb-1" }, Il = { class: "inline-flex rounded-sm shrink-0 pl-1" }, Ul = ["title"], zl = { class: "inline-flex rounded-sm shrink-0 pl-1" }, Nl = ["title"], Pl = {
|
|
1758
1758
|
key: 1,
|
|
1759
1759
|
class: "flex gap-1 !w-[75%] rounded-sm"
|
|
1760
1760
|
}, Yl = ["max", "disabled"], Wl = ["min", "disabled"];
|
|
1761
|
-
const ql = /* @__PURE__ */
|
|
1761
|
+
const ql = /* @__PURE__ */ q({
|
|
1762
1762
|
__name: "date-input-inline",
|
|
1763
1763
|
props: {
|
|
1764
1764
|
id: {},
|
|
@@ -1787,167 +1787,169 @@ const ql = /* @__PURE__ */ W({
|
|
|
1787
1787
|
itemClass: {}
|
|
1788
1788
|
},
|
|
1789
1789
|
emits: ["update:modelValue", "change", "clear"],
|
|
1790
|
-
setup(
|
|
1791
|
-
const
|
|
1792
|
-
activeMode:
|
|
1793
|
-
innerValue:
|
|
1794
|
-
onSelectChange:
|
|
1795
|
-
nextClick:
|
|
1796
|
-
prevClick:
|
|
1797
|
-
currentLabel:
|
|
1790
|
+
setup(m, { expose: o, emit: y }) {
|
|
1791
|
+
const t = oe(), a = m, l = y, g = A(null), {
|
|
1792
|
+
activeMode: c,
|
|
1793
|
+
innerValue: p,
|
|
1794
|
+
onSelectChange: x,
|
|
1795
|
+
nextClick: f,
|
|
1796
|
+
prevClick: v,
|
|
1797
|
+
currentLabel: u,
|
|
1798
1798
|
clear: k
|
|
1799
1799
|
} = Ie({
|
|
1800
|
-
...
|
|
1801
|
-
popoverRef:
|
|
1802
|
-
},
|
|
1803
|
-
return I(() =>
|
|
1804
|
-
|
|
1800
|
+
...a,
|
|
1801
|
+
popoverRef: g
|
|
1802
|
+
}, l);
|
|
1803
|
+
return I(() => a.modelValue, (_) => {
|
|
1804
|
+
_ !== void 0 ? (p.value = _, l("update:modelValue", _)) : (c.value = "", p.value = []);
|
|
1805
1805
|
}), o({
|
|
1806
1806
|
clear: k,
|
|
1807
|
-
popoverRef:
|
|
1808
|
-
}), (
|
|
1809
|
-
|
|
1810
|
-
|
|
1807
|
+
popoverRef: g
|
|
1808
|
+
}), (_, C) => (i(), w(U, null, [
|
|
1809
|
+
s("div", Ol, [
|
|
1810
|
+
Q(_e, {
|
|
1811
1811
|
ref_key: "popoverRef",
|
|
1812
|
-
ref:
|
|
1813
|
-
label: e(
|
|
1814
|
-
"current-value": e(
|
|
1815
|
-
mode:
|
|
1816
|
-
width: typeof
|
|
1812
|
+
ref: g,
|
|
1813
|
+
label: e(u),
|
|
1814
|
+
"current-value": e(p),
|
|
1815
|
+
mode: _.mode,
|
|
1816
|
+
width: typeof _.width == "number" && e(p).length ? _.width - 70 : _.width,
|
|
1817
1817
|
onClear: e(k),
|
|
1818
|
-
layout:
|
|
1818
|
+
layout: _.layout,
|
|
1819
|
+
class: L(_.itemClass)
|
|
1819
1820
|
}, {
|
|
1820
|
-
default:
|
|
1821
|
-
|
|
1822
|
-
|
|
1821
|
+
default: ae(() => [
|
|
1822
|
+
s("div", null, [
|
|
1823
|
+
s("button", {
|
|
1823
1824
|
type: "button",
|
|
1824
|
-
onClick: C[0] || (C[0] = (
|
|
1825
|
+
onClick: C[0] || (C[0] = (d) => e(x)("range")),
|
|
1825
1826
|
class: "flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"
|
|
1826
1827
|
}, [
|
|
1827
|
-
G(B(e(
|
|
1828
|
-
e(
|
|
1828
|
+
G(B(e(t)("filter.period")) + " ", 1),
|
|
1829
|
+
e(c) === "range" ? (i(), T(re, { key: 0 })) : V("", !0)
|
|
1829
1830
|
])
|
|
1830
1831
|
]),
|
|
1831
|
-
C[12] || (C[12] =
|
|
1832
|
-
|
|
1832
|
+
C[12] || (C[12] = s("div", null, [
|
|
1833
|
+
s("div", { class: "pt-1 mt-1 border-t" })
|
|
1833
1834
|
], -1)),
|
|
1834
|
-
|
|
1835
|
-
|
|
1835
|
+
s("div", null, [
|
|
1836
|
+
s("button", {
|
|
1836
1837
|
type: "button",
|
|
1837
|
-
onClick: C[1] || (C[1] = (
|
|
1838
|
+
onClick: C[1] || (C[1] = (d) => e(x)("today")),
|
|
1838
1839
|
class: "flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"
|
|
1839
1840
|
}, [
|
|
1840
|
-
G(B(e(
|
|
1841
|
-
e(
|
|
1841
|
+
G(B(e(t)("filter.today")) + " ", 1),
|
|
1842
|
+
e(c) === "today" ? (i(), T(re, { key: 0 })) : V("", !0)
|
|
1842
1843
|
])
|
|
1843
1844
|
]),
|
|
1844
|
-
|
|
1845
|
-
|
|
1845
|
+
s("div", null, [
|
|
1846
|
+
s("button", {
|
|
1846
1847
|
type: "button",
|
|
1847
|
-
onClick: C[2] || (C[2] = (
|
|
1848
|
+
onClick: C[2] || (C[2] = (d) => e(x)("week")),
|
|
1848
1849
|
class: "flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"
|
|
1849
1850
|
}, [
|
|
1850
|
-
G(B(e(
|
|
1851
|
-
e(
|
|
1851
|
+
G(B(e(t)("filter.week")) + " ", 1),
|
|
1852
|
+
e(c) === "week" ? (i(), T(re, { key: 0 })) : V("", !0)
|
|
1852
1853
|
])
|
|
1853
1854
|
]),
|
|
1854
|
-
|
|
1855
|
-
|
|
1855
|
+
s("div", null, [
|
|
1856
|
+
s("button", {
|
|
1856
1857
|
type: "button",
|
|
1857
|
-
onClick: C[3] || (C[3] = (
|
|
1858
|
+
onClick: C[3] || (C[3] = (d) => e(x)("month")),
|
|
1858
1859
|
class: "flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"
|
|
1859
1860
|
}, [
|
|
1860
|
-
G(B(e(
|
|
1861
|
-
e(
|
|
1861
|
+
G(B(e(t)("filter.month")) + " ", 1),
|
|
1862
|
+
e(c) === "month" ? (i(), T(re, { key: 0 })) : V("", !0)
|
|
1862
1863
|
])
|
|
1863
1864
|
]),
|
|
1864
|
-
|
|
1865
|
-
|
|
1865
|
+
s("div", null, [
|
|
1866
|
+
s("button", {
|
|
1866
1867
|
type: "button",
|
|
1867
|
-
onClick: C[4] || (C[4] = (
|
|
1868
|
+
onClick: C[4] || (C[4] = (d) => e(x)("quarter")),
|
|
1868
1869
|
class: "flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"
|
|
1869
1870
|
}, [
|
|
1870
|
-
G(B(e(
|
|
1871
|
-
e(
|
|
1871
|
+
G(B(e(t)("filter.quarter")) + " ", 1),
|
|
1872
|
+
e(c) === "quarter" ? (i(), T(re, { key: 0 })) : V("", !0)
|
|
1872
1873
|
])
|
|
1873
1874
|
]),
|
|
1874
|
-
|
|
1875
|
-
|
|
1875
|
+
s("div", El, [
|
|
1876
|
+
s("button", {
|
|
1876
1877
|
type: "button",
|
|
1877
|
-
onClick: C[5] || (C[5] = (
|
|
1878
|
+
onClick: C[5] || (C[5] = (d) => e(x)("year")),
|
|
1878
1879
|
class: "flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"
|
|
1879
1880
|
}, [
|
|
1880
|
-
G(B(e(
|
|
1881
|
-
e(
|
|
1881
|
+
G(B(e(t)("filter.year")) + " ", 1),
|
|
1882
|
+
e(c) === "year" ? (i(), T(re, { key: 0 })) : V("", !0)
|
|
1882
1883
|
])
|
|
1883
1884
|
]),
|
|
1884
|
-
|
|
1885
|
-
|
|
1885
|
+
s("div", Tl, [
|
|
1886
|
+
s("button", {
|
|
1886
1887
|
type: "button",
|
|
1887
|
-
onClick: C[6] || (C[6] = (
|
|
1888
|
+
onClick: C[6] || (C[6] = (d) => e(k)()),
|
|
1888
1889
|
class: "flex items-center justify-between w-full px-4 py-2 text-sm text-left rounded-sm cursor-pointer filter-date__item hs-selected:bg-stone-100 text-stone-800 hover:bg-stone-100 focus:outline-none focus:bg-stone-100"
|
|
1889
1890
|
}, [
|
|
1890
|
-
G(B(e(
|
|
1891
|
-
e(
|
|
1891
|
+
G(B(e(t)("filter.alltime")) + " ", 1),
|
|
1892
|
+
e(p)[0] ? V("", !0) : (i(), T(re, { key: 0 }))
|
|
1892
1893
|
])
|
|
1893
1894
|
])
|
|
1894
1895
|
]),
|
|
1895
|
-
_: 1
|
|
1896
|
-
|
|
1897
|
-
|
|
1898
|
-
|
|
1899
|
-
|
|
1896
|
+
_: 1,
|
|
1897
|
+
__: [12]
|
|
1898
|
+
}, 8, ["label", "current-value", "mode", "width", "onClear", "layout", "class"]),
|
|
1899
|
+
e(c) !== "" && e(c) !== "range" && e(c) !== "last_7_days" ? (i(), w(U, { key: 0 }, [
|
|
1900
|
+
s("div", Il, [
|
|
1901
|
+
s("button", {
|
|
1900
1902
|
type: "button",
|
|
1901
|
-
title: e(
|
|
1903
|
+
title: e(t)("filter.prev"),
|
|
1902
1904
|
class: "inline-flex h-[38px] items-center px-2 text-sm text-gray-800 bg-gray-100 gap-x-2 -ms-px first:rounded-s-lg first:ms-0 last:rounded-e-lg focus:z-10 hover:bg-gray-200 focus:bg-gray-200 duration-300",
|
|
1903
1905
|
onClick: C[7] || (C[7] = //@ts-ignore
|
|
1904
|
-
(...
|
|
1906
|
+
(...d) => e(v) && e(v)(...d))
|
|
1905
1907
|
}, [
|
|
1906
|
-
|
|
1908
|
+
Q(Rl)
|
|
1907
1909
|
], 8, Ul)
|
|
1908
1910
|
]),
|
|
1909
|
-
|
|
1910
|
-
|
|
1911
|
+
s("div", zl, [
|
|
1912
|
+
s("button", {
|
|
1911
1913
|
type: "button",
|
|
1912
|
-
title: e(
|
|
1914
|
+
title: e(t)("filter.next"),
|
|
1913
1915
|
class: "inline-flex h-[38px] items-center px-2 text-sm text-gray-800 gap-x-2 bg-gray-100 -ms-px first:rounded-s-lg first:ms-0 last:rounded-e-lg focus:z-10 hover:bg-gray-200 focus:bg-gray-200 duration-300",
|
|
1914
1916
|
onClick: C[8] || (C[8] = //@ts-ignore
|
|
1915
|
-
(...
|
|
1917
|
+
(...d) => e(f) && e(f)(...d))
|
|
1916
1918
|
}, [
|
|
1917
|
-
|
|
1919
|
+
Q(Ll)
|
|
1918
1920
|
], 8, Nl)
|
|
1919
1921
|
])
|
|
1920
|
-
], 64)) :
|
|
1921
|
-
e(
|
|
1922
|
-
|
|
1922
|
+
], 64)) : V("", !0),
|
|
1923
|
+
e(c) !== "" && e(c) === "range" ? (i(), w("div", Pl, [
|
|
1924
|
+
W(s("input", {
|
|
1923
1925
|
type: "date",
|
|
1924
|
-
max: e(
|
|
1926
|
+
max: e(p)[1],
|
|
1925
1927
|
locale: "uk-UA",
|
|
1926
|
-
"onUpdate:modelValue": C[9] || (C[9] = (
|
|
1928
|
+
"onUpdate:modelValue": C[9] || (C[9] = (d) => e(p)[0] = d),
|
|
1927
1929
|
class: "px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600",
|
|
1928
|
-
disabled:
|
|
1930
|
+
disabled: _.disabled
|
|
1929
1931
|
}, null, 8, Yl), [
|
|
1930
|
-
[ee, e(
|
|
1932
|
+
[ee, e(p)[0]]
|
|
1931
1933
|
]),
|
|
1932
|
-
|
|
1934
|
+
W(s("input", {
|
|
1933
1935
|
type: "date",
|
|
1934
|
-
min: e(
|
|
1936
|
+
min: e(p)[0],
|
|
1935
1937
|
locale: "uk-UA",
|
|
1936
|
-
"onUpdate:modelValue": C[10] || (C[10] = (
|
|
1938
|
+
"onUpdate:modelValue": C[10] || (C[10] = (d) => e(p)[1] = d),
|
|
1937
1939
|
class: "px-2 p-0 border text-[12px] max-w-[calc(50%-5px)] h-[38px] rounded-sm focus:outline-blue-600 appearance-auto",
|
|
1938
|
-
disabled:
|
|
1940
|
+
disabled: _.disabled
|
|
1939
1941
|
}, null, 8, Wl), [
|
|
1940
|
-
[ee, e(
|
|
1942
|
+
[ee, e(p)[1]]
|
|
1941
1943
|
])
|
|
1942
|
-
])) :
|
|
1944
|
+
])) : V("", !0)
|
|
1943
1945
|
]),
|
|
1944
|
-
(
|
|
1946
|
+
(_.cleanable, V("", !0))
|
|
1945
1947
|
], 64));
|
|
1946
1948
|
}
|
|
1947
1949
|
}), Ql = { class: "flex flex-wrap items-center gap-2" }, Hl = ["disabled", "onClick"], Gl = {
|
|
1948
1950
|
key: 0,
|
|
1949
1951
|
class: "flex justify-between items-center text-xs text-gray-500 p-1 border-t"
|
|
1950
|
-
}, Xl = /* @__PURE__ */
|
|
1952
|
+
}, Xl = /* @__PURE__ */ q({
|
|
1951
1953
|
__name: "button-field",
|
|
1952
1954
|
props: {
|
|
1953
1955
|
id: {},
|
|
@@ -1976,84 +1978,84 @@ const ql = /* @__PURE__ */ W({
|
|
|
1976
1978
|
itemClass: {}
|
|
1977
1979
|
},
|
|
1978
1980
|
emits: ["update:modelValue", "change", "clear"],
|
|
1979
|
-
setup(
|
|
1980
|
-
const
|
|
1981
|
-
innerValue:
|
|
1982
|
-
isSelected:
|
|
1983
|
-
selectItem:
|
|
1984
|
-
clear:
|
|
1985
|
-
labelKey:
|
|
1986
|
-
valueKey:
|
|
1987
|
-
allOptions:
|
|
1988
|
-
} =
|
|
1989
|
-
...
|
|
1990
|
-
modelValue:
|
|
1991
|
-
},
|
|
1992
|
-
function
|
|
1993
|
-
return
|
|
1981
|
+
setup(m, { expose: o, emit: y }) {
|
|
1982
|
+
const t = m, a = y, {
|
|
1983
|
+
innerValue: l,
|
|
1984
|
+
isSelected: g,
|
|
1985
|
+
selectItem: c,
|
|
1986
|
+
clear: p,
|
|
1987
|
+
labelKey: x,
|
|
1988
|
+
valueKey: f,
|
|
1989
|
+
allOptions: v
|
|
1990
|
+
} = xe({
|
|
1991
|
+
...t,
|
|
1992
|
+
modelValue: t.modelValue ?? t.default ?? ""
|
|
1993
|
+
}, a), u = E(() => l.value !== void 0 && !(typeof l.value == "string" && l.value === "")), k = E(() => u.value ? 1 : 0);
|
|
1994
|
+
function _(d) {
|
|
1995
|
+
return g(d) ? ["bg-blue-600 text-white"].filter((n) => typeof n == "string" && n.trim().length > 0).join(" ") : ["text-gray-700 hover:bg-gray-200 bg-gray-50 "].filter((n) => typeof n == "string" && n.trim().length > 0).join(" ");
|
|
1994
1996
|
}
|
|
1995
|
-
function C(
|
|
1996
|
-
|
|
1997
|
+
function C(d) {
|
|
1998
|
+
t.disabled || c(d);
|
|
1997
1999
|
}
|
|
1998
2000
|
return o({
|
|
1999
|
-
clear:
|
|
2001
|
+
clear: p
|
|
2000
2002
|
}), I(
|
|
2001
|
-
() =>
|
|
2002
|
-
(
|
|
2003
|
-
|
|
2003
|
+
() => t.modelValue,
|
|
2004
|
+
(d) => {
|
|
2005
|
+
d === void 0 && (l.value = void 0);
|
|
2004
2006
|
}
|
|
2005
|
-
), (
|
|
2006
|
-
|
|
2007
|
-
(
|
|
2008
|
-
key:
|
|
2007
|
+
), (d, n) => (i(), w(U, null, [
|
|
2008
|
+
s("div", Ql, [
|
|
2009
|
+
(i(!0), w(U, null, X(e(v), (r) => (i(), w("button", {
|
|
2010
|
+
key: r[e(f)],
|
|
2009
2011
|
type: "button",
|
|
2010
|
-
class:
|
|
2011
|
-
disabled:
|
|
2012
|
-
onClick: (
|
|
2013
|
-
}, B(
|
|
2012
|
+
class: L(["px-3 py-2 text-sm font-medium rounded-md transition-colors", _(r)]),
|
|
2013
|
+
disabled: d.disabled,
|
|
2014
|
+
onClick: (b) => C(r)
|
|
2015
|
+
}, B(r[e(x)]), 11, Hl))), 128))
|
|
2014
2016
|
]),
|
|
2015
|
-
|
|
2016
|
-
|
|
2017
|
-
|
|
2017
|
+
d.cleanable && d.layout === "popover" ? (i(), w("div", Gl, [
|
|
2018
|
+
s("span", null, B(k.value) + " з " + B(e(v).length) + " обрано", 1),
|
|
2019
|
+
W(s("button", {
|
|
2018
2020
|
class: "text-gray-600 hover:text-gray-800",
|
|
2019
|
-
onClick:
|
|
2020
|
-
(...
|
|
2021
|
+
onClick: n[0] || (n[0] = //@ts-ignore
|
|
2022
|
+
(...r) => e(p) && e(p)(...r))
|
|
2021
2023
|
}, " Очистити ", 512), [
|
|
2022
|
-
[
|
|
2024
|
+
[Z, u.value]
|
|
2023
2025
|
])
|
|
2024
|
-
])) :
|
|
2026
|
+
])) : V("", !0)
|
|
2025
2027
|
], 64));
|
|
2026
2028
|
}
|
|
2027
|
-
}),
|
|
2029
|
+
}), De = {
|
|
2028
2030
|
radio: wt,
|
|
2029
|
-
checkbox:
|
|
2030
|
-
check:
|
|
2031
|
-
text:
|
|
2031
|
+
checkbox: je,
|
|
2032
|
+
check: je,
|
|
2033
|
+
text: Lt,
|
|
2032
2034
|
range: Yt,
|
|
2033
|
-
date:
|
|
2034
|
-
select:
|
|
2035
|
-
tag:
|
|
2035
|
+
date: ol,
|
|
2036
|
+
select: pl,
|
|
2037
|
+
tag: hl,
|
|
2036
2038
|
button: Xl,
|
|
2037
2039
|
"date:inline": ql
|
|
2038
2040
|
};
|
|
2039
|
-
function
|
|
2040
|
-
let
|
|
2041
|
-
switch (
|
|
2041
|
+
function Ve(m, o) {
|
|
2042
|
+
let y;
|
|
2043
|
+
switch (m.toLowerCase()) {
|
|
2042
2044
|
case "autocomplete":
|
|
2043
|
-
|
|
2045
|
+
y = "select";
|
|
2044
2046
|
break;
|
|
2045
2047
|
case "check":
|
|
2046
|
-
|
|
2048
|
+
y = "checkbox";
|
|
2047
2049
|
break;
|
|
2048
2050
|
default:
|
|
2049
|
-
|
|
2051
|
+
y = m?.toString().toLowerCase();
|
|
2050
2052
|
}
|
|
2051
|
-
return
|
|
2052
|
-
component:
|
|
2053
|
-
type:
|
|
2053
|
+
return y === "date" && o && o === "inline" && (y = "date:inline"), {
|
|
2054
|
+
component: De[y] || De.text,
|
|
2055
|
+
type: y
|
|
2054
2056
|
};
|
|
2055
2057
|
}
|
|
2056
|
-
const
|
|
2058
|
+
const Jl = { style: { display: "inline-flex", margin: "0px", width: "100%" } }, Zl = { class: "relative w-full mb-2 p-4 bg-white rounded-lg shadow-sm" }, eo = { class: "block mb-3 text-sm font-medium text-gray-800 dark:text-neutral-200" }, to = { class: "flex items-center" }, lo = { class: "text-sm font-medium max-w-[80%] text-gray-800 flex items-center gap-x-1" }, oo = { class: "filter-layout__body" }, ao = /* @__PURE__ */ q({
|
|
2057
2059
|
__name: "vertical-layout",
|
|
2058
2060
|
props: {
|
|
2059
2061
|
id: {},
|
|
@@ -2082,71 +2084,71 @@ const Zl = { style: { display: "inline-flex", margin: "0px", width: "100%" } },
|
|
|
2082
2084
|
itemClass: {}
|
|
2083
2085
|
},
|
|
2084
2086
|
emits: ["update:modelValue", "change", "clear"],
|
|
2085
|
-
setup(
|
|
2086
|
-
const
|
|
2087
|
-
get: () =>
|
|
2088
|
-
set: (
|
|
2087
|
+
setup(m, { expose: o, emit: y }) {
|
|
2088
|
+
const t = m, a = y, l = A(), g = Ve(t.type, t.layout), c = E({
|
|
2089
|
+
get: () => t.modelValue,
|
|
2090
|
+
set: (v) => a("update:modelValue", v)
|
|
2089
2091
|
});
|
|
2090
|
-
function
|
|
2091
|
-
|
|
2092
|
+
function p(v) {
|
|
2093
|
+
a("clear", v);
|
|
2092
2094
|
}
|
|
2093
|
-
function
|
|
2094
|
-
|
|
2095
|
+
function x(v, u) {
|
|
2096
|
+
a("change", { name: v, value: u }), t.modelValue !== void 0 && a("update:modelValue", u);
|
|
2095
2097
|
}
|
|
2096
|
-
function
|
|
2097
|
-
|
|
2098
|
+
function f() {
|
|
2099
|
+
a("clear", t.name);
|
|
2098
2100
|
}
|
|
2099
2101
|
return I(
|
|
2100
|
-
() =>
|
|
2101
|
-
(
|
|
2102
|
-
|
|
2102
|
+
() => t.default,
|
|
2103
|
+
(v) => {
|
|
2104
|
+
c.value = v;
|
|
2103
2105
|
}
|
|
2104
2106
|
), I(
|
|
2105
|
-
() =>
|
|
2106
|
-
(
|
|
2107
|
-
|
|
2107
|
+
() => t.modelValue,
|
|
2108
|
+
(v) => {
|
|
2109
|
+
c.value = v;
|
|
2108
2110
|
}
|
|
2109
2111
|
), o({
|
|
2110
|
-
filterRef:
|
|
2111
|
-
}), (
|
|
2112
|
-
|
|
2113
|
-
|
|
2114
|
-
|
|
2115
|
-
|
|
2112
|
+
filterRef: l
|
|
2113
|
+
}), (v, u) => (i(), w("div", Jl, [
|
|
2114
|
+
s("div", Zl, [
|
|
2115
|
+
s("div", eo, [
|
|
2116
|
+
s("div", to, [
|
|
2117
|
+
s("span", lo, B(v.label), 1)
|
|
2116
2118
|
]),
|
|
2117
|
-
typeof
|
|
2119
|
+
typeof c.value == "string" && c.value.trim() !== "" || Array.isArray(c.value) && c.value.length > 0 && c.value.some((k) => k !== void 0) || c.value === null ? (i(), T(et, {
|
|
2118
2120
|
key: 0,
|
|
2119
|
-
onClick:
|
|
2120
|
-
})) :
|
|
2121
|
+
onClick: f
|
|
2122
|
+
})) : V("", !0)
|
|
2121
2123
|
]),
|
|
2122
|
-
|
|
2123
|
-
e(
|
|
2124
|
-
type: e(
|
|
2125
|
-
class:
|
|
2126
|
-
onChange:
|
|
2127
|
-
onClear:
|
|
2124
|
+
s("div", oo, [
|
|
2125
|
+
e(g)?.type !== "select" ? (i(), T(ne(e(g)?.component), J({ key: 0 }, t, {
|
|
2126
|
+
type: e(g)?.type,
|
|
2127
|
+
class: t.itemClass,
|
|
2128
|
+
onChange: u[0] || (u[0] = (k) => x(k.name, k.value)),
|
|
2129
|
+
onClear: u[1] || (u[1] = (k) => p(k)),
|
|
2128
2130
|
ref_key: "filterRef",
|
|
2129
|
-
ref:
|
|
2130
|
-
}), null, 16, ["type", "class"])) : (
|
|
2131
|
+
ref: l
|
|
2132
|
+
}), null, 16, ["type", "class"])) : (i(), T(_e, {
|
|
2131
2133
|
key: 1,
|
|
2132
|
-
"current-value":
|
|
2133
|
-
label:
|
|
2134
|
-
mode:
|
|
2135
|
-
onClear:
|
|
2136
|
-
fieldRef:
|
|
2134
|
+
"current-value": c.value,
|
|
2135
|
+
label: v.label,
|
|
2136
|
+
mode: v.mode,
|
|
2137
|
+
onClear: f,
|
|
2138
|
+
fieldRef: l.value,
|
|
2137
2139
|
width: void 0,
|
|
2138
|
-
disabled:
|
|
2140
|
+
disabled: v.disabled,
|
|
2139
2141
|
layout: "vertical"
|
|
2140
2142
|
}, {
|
|
2141
|
-
default:
|
|
2142
|
-
(
|
|
2143
|
+
default: ae(() => [
|
|
2144
|
+
(i(), T(ne(e(g)?.component), J({
|
|
2143
2145
|
ref_key: "filterRef",
|
|
2144
|
-
ref:
|
|
2145
|
-
},
|
|
2146
|
-
type: e(
|
|
2147
|
-
class:
|
|
2148
|
-
onChange:
|
|
2149
|
-
onClear:
|
|
2146
|
+
ref: l
|
|
2147
|
+
}, t, {
|
|
2148
|
+
type: e(g)?.type,
|
|
2149
|
+
class: t.itemClass,
|
|
2150
|
+
onChange: u[2] || (u[2] = (k) => x(k.name, k.value)),
|
|
2151
|
+
onClear: u[3] || (u[3] = (k) => p(k))
|
|
2150
2152
|
}), null, 16, ["type", "class"]))
|
|
2151
2153
|
]),
|
|
2152
2154
|
_: 1
|
|
@@ -2155,7 +2157,7 @@ const Zl = { style: { display: "inline-flex", margin: "0px", width: "100%" } },
|
|
|
2155
2157
|
])
|
|
2156
2158
|
]));
|
|
2157
2159
|
}
|
|
2158
|
-
}),
|
|
2160
|
+
}), Re = /* @__PURE__ */ q({
|
|
2159
2161
|
__name: "inline-layout",
|
|
2160
2162
|
props: {
|
|
2161
2163
|
id: {},
|
|
@@ -2184,65 +2186,65 @@ const Zl = { style: { display: "inline-flex", margin: "0px", width: "100%" } },
|
|
|
2184
2186
|
itemClass: {}
|
|
2185
2187
|
},
|
|
2186
2188
|
emits: ["update:modelValue", "change", "clear"],
|
|
2187
|
-
setup(
|
|
2188
|
-
const
|
|
2189
|
-
get: () =>
|
|
2190
|
-
set: (
|
|
2189
|
+
setup(m, { expose: o, emit: y }) {
|
|
2190
|
+
const t = m, a = y, l = A(), g = Ve(t.type, t.layout), c = E({
|
|
2191
|
+
get: () => t.modelValue,
|
|
2192
|
+
set: (f) => a("update:modelValue", f)
|
|
2191
2193
|
});
|
|
2192
|
-
function f
|
|
2193
|
-
|
|
2194
|
+
function p(f = t.name) {
|
|
2195
|
+
a("clear", f);
|
|
2194
2196
|
}
|
|
2195
|
-
function
|
|
2196
|
-
|
|
2197
|
+
function x(f, v) {
|
|
2198
|
+
a("change", { name: f, value: v }), t.modelValue !== void 0 && a("update:modelValue", v);
|
|
2197
2199
|
}
|
|
2198
2200
|
return I(
|
|
2199
|
-
() =>
|
|
2200
|
-
(
|
|
2201
|
-
|
|
2201
|
+
() => t.default,
|
|
2202
|
+
(f) => {
|
|
2203
|
+
c.value = f;
|
|
2202
2204
|
}
|
|
2203
2205
|
), I(
|
|
2204
|
-
() =>
|
|
2205
|
-
(
|
|
2206
|
-
|
|
2206
|
+
() => t.modelValue,
|
|
2207
|
+
(f) => {
|
|
2208
|
+
c.value = f;
|
|
2207
2209
|
}
|
|
2208
2210
|
), o({
|
|
2209
|
-
filterRef:
|
|
2210
|
-
}), (
|
|
2211
|
-
type: e(
|
|
2212
|
-
class:
|
|
2213
|
-
onChange:
|
|
2214
|
-
onClear:
|
|
2215
|
-
disabled:
|
|
2216
|
-
modelValue:
|
|
2217
|
-
"onUpdate:modelValue":
|
|
2218
|
-
}), null, 16, ["type", "class", "disabled", "modelValue"])) : (
|
|
2211
|
+
filterRef: l
|
|
2212
|
+
}), (f, v) => ["text", "date", "button"].includes(f.type.toLocaleLowerCase()) ? (i(), T(ne(e(g)?.component), J({ key: 0 }, t, {
|
|
2213
|
+
type: e(g)?.type,
|
|
2214
|
+
class: f.itemClass,
|
|
2215
|
+
onChange: v[0] || (v[0] = (u) => x(u.name, u.value)),
|
|
2216
|
+
onClear: v[1] || (v[1] = (u) => p(u)),
|
|
2217
|
+
disabled: f.disabled,
|
|
2218
|
+
modelValue: c.value,
|
|
2219
|
+
"onUpdate:modelValue": v[2] || (v[2] = (u) => c.value = u)
|
|
2220
|
+
}), null, 16, ["type", "class", "disabled", "modelValue"])) : (i(), T(_e, {
|
|
2219
2221
|
key: 1,
|
|
2220
|
-
"current-value":
|
|
2221
|
-
label:
|
|
2222
|
-
mode:
|
|
2223
|
-
onClear:
|
|
2224
|
-
fieldRef:
|
|
2225
|
-
width:
|
|
2226
|
-
disabled:
|
|
2222
|
+
"current-value": c.value,
|
|
2223
|
+
label: f.label,
|
|
2224
|
+
mode: f.mode,
|
|
2225
|
+
onClear: p,
|
|
2226
|
+
fieldRef: l.value,
|
|
2227
|
+
width: t.width,
|
|
2228
|
+
disabled: f.disabled,
|
|
2227
2229
|
layout: "inline"
|
|
2228
2230
|
}, {
|
|
2229
|
-
default:
|
|
2230
|
-
(
|
|
2231
|
+
default: ae(() => [
|
|
2232
|
+
(i(), T(ne(e(g)?.component), J({
|
|
2231
2233
|
ref_key: "filterRef",
|
|
2232
|
-
ref:
|
|
2233
|
-
},
|
|
2234
|
-
modelValue:
|
|
2235
|
-
"onUpdate:modelValue":
|
|
2236
|
-
type: e(
|
|
2237
|
-
class:
|
|
2238
|
-
onChange:
|
|
2239
|
-
onClear:
|
|
2234
|
+
ref: l
|
|
2235
|
+
}, t, {
|
|
2236
|
+
modelValue: c.value,
|
|
2237
|
+
"onUpdate:modelValue": v[3] || (v[3] = (u) => c.value = u),
|
|
2238
|
+
type: e(g)?.type,
|
|
2239
|
+
class: t.itemClass,
|
|
2240
|
+
onChange: v[4] || (v[4] = (u) => x(u.name, u.value)),
|
|
2241
|
+
onClear: v[5] || (v[5] = (u) => p(u))
|
|
2240
2242
|
}), null, 16, ["modelValue", "type", "class"]))
|
|
2241
2243
|
]),
|
|
2242
2244
|
_: 1
|
|
2243
2245
|
}, 8, ["current-value", "label", "mode", "fieldRef", "width", "disabled"]));
|
|
2244
2246
|
}
|
|
2245
|
-
}),
|
|
2247
|
+
}), no = /* @__PURE__ */ q({
|
|
2246
2248
|
__name: "popover-layout",
|
|
2247
2249
|
props: {
|
|
2248
2250
|
id: {},
|
|
@@ -2271,46 +2273,46 @@ const Zl = { style: { display: "inline-flex", margin: "0px", width: "100%" } },
|
|
|
2271
2273
|
itemClass: {}
|
|
2272
2274
|
},
|
|
2273
2275
|
emits: ["update:modelValue", "change", "clear"],
|
|
2274
|
-
setup(
|
|
2275
|
-
const
|
|
2276
|
-
get: () =>
|
|
2277
|
-
set: (
|
|
2276
|
+
setup(m, { expose: o, emit: y }) {
|
|
2277
|
+
const t = m, a = y, l = A(), g = A(Ve(t.type, t.layout)), c = E({
|
|
2278
|
+
get: () => t.modelValue,
|
|
2279
|
+
set: (f) => a("update:modelValue", f)
|
|
2278
2280
|
});
|
|
2279
|
-
function f
|
|
2280
|
-
|
|
2281
|
+
function p(f) {
|
|
2282
|
+
a("clear", f);
|
|
2281
2283
|
}
|
|
2282
|
-
function
|
|
2283
|
-
|
|
2284
|
+
function x(f, v) {
|
|
2285
|
+
a("change", { name: f, value: v }), t.modelValue !== void 0 && a("update:modelValue", v);
|
|
2284
2286
|
}
|
|
2285
2287
|
return I(
|
|
2286
|
-
() =>
|
|
2287
|
-
(
|
|
2288
|
-
|
|
2288
|
+
() => t.default,
|
|
2289
|
+
(f) => {
|
|
2290
|
+
c.value = f;
|
|
2289
2291
|
}
|
|
2290
2292
|
), I(
|
|
2291
|
-
() =>
|
|
2292
|
-
(
|
|
2293
|
-
|
|
2293
|
+
() => t.modelValue,
|
|
2294
|
+
(f) => {
|
|
2295
|
+
c.value = f;
|
|
2294
2296
|
}
|
|
2295
2297
|
), I(
|
|
2296
|
-
() =>
|
|
2297
|
-
(
|
|
2298
|
-
|
|
2298
|
+
() => t,
|
|
2299
|
+
(f) => {
|
|
2300
|
+
c.value = f;
|
|
2299
2301
|
}
|
|
2300
2302
|
), o({
|
|
2301
|
-
filterRef:
|
|
2302
|
-
}), (
|
|
2303
|
-
type:
|
|
2304
|
-
class:
|
|
2305
|
-
modelValue:
|
|
2306
|
-
"onUpdate:modelValue":
|
|
2307
|
-
onChange:
|
|
2308
|
-
onClear:
|
|
2303
|
+
filterRef: l
|
|
2304
|
+
}), (f, v) => (i(), T(ne(g.value?.component), J(t, {
|
|
2305
|
+
type: g.value?.type,
|
|
2306
|
+
class: t.itemClass,
|
|
2307
|
+
modelValue: c.value,
|
|
2308
|
+
"onUpdate:modelValue": v[0] || (v[0] = (u) => c.value = u),
|
|
2309
|
+
onChange: v[1] || (v[1] = (u) => x(u.name, u.value)),
|
|
2310
|
+
onClear: v[2] || (v[2] = (u) => p(u)),
|
|
2309
2311
|
ref_key: "filterRef",
|
|
2310
|
-
ref:
|
|
2312
|
+
ref: l
|
|
2311
2313
|
}), null, 16, ["type", "class", "modelValue"]));
|
|
2312
2314
|
}
|
|
2313
|
-
}), le = /* @__PURE__ */
|
|
2315
|
+
}), le = /* @__PURE__ */ q({
|
|
2314
2316
|
__name: "filter-field",
|
|
2315
2317
|
props: {
|
|
2316
2318
|
id: {},
|
|
@@ -2339,184 +2341,192 @@ const Zl = { style: { display: "inline-flex", margin: "0px", width: "100%" } },
|
|
|
2339
2341
|
itemClass: {}
|
|
2340
2342
|
},
|
|
2341
2343
|
emits: ["update:modelValue", "change", "clear"],
|
|
2342
|
-
setup(
|
|
2343
|
-
const
|
|
2344
|
-
get: () =>
|
|
2345
|
-
set: (
|
|
2344
|
+
setup(m, { expose: o, emit: y }) {
|
|
2345
|
+
const t = m, a = y, l = A(), g = E({
|
|
2346
|
+
get: () => t.modelValue,
|
|
2347
|
+
set: (f) => a("update:modelValue", f)
|
|
2346
2348
|
});
|
|
2347
|
-
function
|
|
2348
|
-
|
|
2349
|
+
function c(f) {
|
|
2350
|
+
a("clear", f);
|
|
2349
2351
|
}
|
|
2350
|
-
function f
|
|
2351
|
-
|
|
2352
|
+
function p(f, v) {
|
|
2353
|
+
a("change", { name: f, value: v }), t.modelValue !== void 0 && a("update:modelValue", v);
|
|
2352
2354
|
}
|
|
2353
2355
|
I(
|
|
2354
|
-
() =>
|
|
2355
|
-
(
|
|
2356
|
-
|
|
2356
|
+
() => t.default,
|
|
2357
|
+
(f) => {
|
|
2358
|
+
g.value = f;
|
|
2357
2359
|
}
|
|
2358
2360
|
), I(
|
|
2359
|
-
() =>
|
|
2360
|
-
(
|
|
2361
|
-
|
|
2361
|
+
() => t.modelValue,
|
|
2362
|
+
(f) => {
|
|
2363
|
+
g.value = f;
|
|
2362
2364
|
}
|
|
2363
2365
|
), o({
|
|
2364
|
-
filterRef:
|
|
2366
|
+
filterRef: l
|
|
2365
2367
|
});
|
|
2366
|
-
function
|
|
2367
|
-
switch (
|
|
2368
|
+
function x() {
|
|
2369
|
+
switch (t.layout) {
|
|
2368
2370
|
case "inline":
|
|
2369
|
-
return
|
|
2371
|
+
return Re;
|
|
2370
2372
|
case "vertical":
|
|
2371
|
-
return
|
|
2373
|
+
return ao;
|
|
2372
2374
|
case "popover":
|
|
2373
|
-
return
|
|
2375
|
+
return no;
|
|
2374
2376
|
default:
|
|
2375
|
-
return
|
|
2377
|
+
return Re;
|
|
2376
2378
|
}
|
|
2377
2379
|
}
|
|
2378
|
-
return (
|
|
2379
|
-
onChange:
|
|
2380
|
-
onClear:
|
|
2381
|
-
modelValue:
|
|
2382
|
-
"onUpdate:modelValue":
|
|
2380
|
+
return (f, v) => (i(), T(ne(x()), J(t, {
|
|
2381
|
+
onChange: v[0] || (v[0] = (u) => p(u.name, u.value)),
|
|
2382
|
+
onClear: v[1] || (v[1] = (u) => c(u)),
|
|
2383
|
+
modelValue: g.value,
|
|
2384
|
+
"onUpdate:modelValue": v[2] || (v[2] = (u) => g.value = u)
|
|
2383
2385
|
}), null, 16, ["modelValue"]));
|
|
2384
2386
|
}
|
|
2385
2387
|
});
|
|
2386
|
-
function ye(
|
|
2388
|
+
function ye(m, o) {
|
|
2387
2389
|
const {
|
|
2388
|
-
slots:
|
|
2389
|
-
} =
|
|
2390
|
-
|
|
2391
|
-
|
|
2392
|
-
|
|
2390
|
+
slots: y
|
|
2391
|
+
} = m, t = (n) => n ? JSON.parse(JSON.stringify(ue(n))) : {}, a = A(t(m.value));
|
|
2392
|
+
I(
|
|
2393
|
+
() => m.value,
|
|
2394
|
+
(n) => {
|
|
2395
|
+
a.value = t(n);
|
|
2396
|
+
},
|
|
2397
|
+
{ deep: !0, immediate: !0 }
|
|
2398
|
+
);
|
|
2399
|
+
const l = E(() => (ue(y?.default?.()) ?? []).flatMap((r) => Array.isArray(r.children) ? r.children : [r]));
|
|
2400
|
+
function g(n) {
|
|
2401
|
+
delete a.value[n], o("clear", {
|
|
2402
|
+
data: ue(a.value),
|
|
2393
2403
|
name: n
|
|
2394
2404
|
});
|
|
2395
2405
|
}
|
|
2396
|
-
function
|
|
2397
|
-
|
|
2398
|
-
...
|
|
2399
|
-
[n]:
|
|
2406
|
+
function c(n, r) {
|
|
2407
|
+
r === void 0 ? g(n) : a.value = {
|
|
2408
|
+
...a.value,
|
|
2409
|
+
[n]: r
|
|
2400
2410
|
}, o("change", {
|
|
2401
|
-
data:
|
|
2411
|
+
data: ue(a.value),
|
|
2402
2412
|
name: n,
|
|
2403
|
-
value:
|
|
2413
|
+
value: r
|
|
2404
2414
|
});
|
|
2405
2415
|
}
|
|
2406
|
-
const
|
|
2407
|
-
const
|
|
2416
|
+
const p = E(() => l.value.map((n) => {
|
|
2417
|
+
const r = n.props?.name;
|
|
2408
2418
|
return We(n, {
|
|
2409
2419
|
...n.props,
|
|
2410
|
-
layout:
|
|
2420
|
+
layout: m.view,
|
|
2411
2421
|
showClean: !0,
|
|
2412
|
-
modelValue:
|
|
2413
|
-
"onUpdate:modelValue": (
|
|
2414
|
-
|
|
2422
|
+
modelValue: a.value[r],
|
|
2423
|
+
"onUpdate:modelValue": (b) => {
|
|
2424
|
+
c(r, b);
|
|
2415
2425
|
},
|
|
2416
|
-
onClear: () =>
|
|
2417
|
-
class: [
|
|
2418
|
-
itemClass: [
|
|
2426
|
+
onClear: () => g(r),
|
|
2427
|
+
class: [m.itemClass, n.props?.class],
|
|
2428
|
+
itemClass: [m.itemClass, n.props?.itemClass].filter((b) => typeof b == "string" && b.trim().length > 0).join(" ") || void 0
|
|
2419
2429
|
});
|
|
2420
|
-
})),
|
|
2430
|
+
})), x = E(
|
|
2421
2431
|
() => new Map(
|
|
2422
|
-
|
|
2423
|
-
const
|
|
2424
|
-
return
|
|
2432
|
+
p.value.map((n) => {
|
|
2433
|
+
const r = n.props?.name;
|
|
2434
|
+
return r ? [r, n] : null;
|
|
2425
2435
|
}).filter((n) => n !== null)
|
|
2426
2436
|
)
|
|
2427
2437
|
);
|
|
2428
|
-
function
|
|
2429
|
-
|
|
2430
|
-
data:
|
|
2438
|
+
function f(n = !1) {
|
|
2439
|
+
a.value = {}, n || o("clearAll", {
|
|
2440
|
+
data: ue(a.value),
|
|
2431
2441
|
name: "ALL"
|
|
2432
2442
|
});
|
|
2433
2443
|
}
|
|
2434
|
-
const
|
|
2435
|
-
I(
|
|
2436
|
-
await
|
|
2444
|
+
const v = A(""), u = E(() => m.schema?.value ? Object.entries(a.value).filter(([n, r]) => m.schema && !(n in m.schema.value) ? !1 : Array.isArray(r) ? r.some((b) => b !== "" && b !== void 0) : r !== "" && r !== void 0).length : 0), k = A();
|
|
2445
|
+
I(v, async () => {
|
|
2446
|
+
await fe(), k?.value?.filterRef?.inputTextRef && k.value.filterRef.inputTextRef.focus();
|
|
2437
2447
|
});
|
|
2438
|
-
const
|
|
2439
|
-
if (
|
|
2448
|
+
const _ = E(() => m.schema?.value ? Object.fromEntries(Object.entries(m.schema?.value).slice(0, m.limit)) : {}), C = E(() => {
|
|
2449
|
+
if (p.value.length === 0) return [];
|
|
2440
2450
|
let n = 0;
|
|
2441
|
-
if (
|
|
2442
|
-
const
|
|
2443
|
-
|
|
2451
|
+
if (m.schema?.value) {
|
|
2452
|
+
const r = Object.entries(m.schema.value).length;
|
|
2453
|
+
m.limit && r < m.limit ? n = m.limit - r : n = 0;
|
|
2444
2454
|
}
|
|
2445
|
-
return
|
|
2446
|
-
}),
|
|
2455
|
+
return p.value.slice(0, n);
|
|
2456
|
+
}), d = E(() => p.value.length === 0 ? [] : m.view !== "inline" ? p.value : p.value.slice(C.value.length));
|
|
2447
2457
|
return {
|
|
2448
|
-
activeFilter:
|
|
2449
|
-
activeFilterCount:
|
|
2450
|
-
onFilterChange:
|
|
2451
|
-
clearFilter:
|
|
2452
|
-
clearAllFilters:
|
|
2453
|
-
limitedSchema:
|
|
2454
|
-
filtersSlot:
|
|
2455
|
-
limitedFiltersSlot:
|
|
2456
|
-
popoverFiltersSlot:
|
|
2457
|
-
vnodeMap:
|
|
2458
|
-
selectedFilter:
|
|
2459
|
-
filterRef:
|
|
2458
|
+
activeFilter: a,
|
|
2459
|
+
activeFilterCount: u,
|
|
2460
|
+
onFilterChange: c,
|
|
2461
|
+
clearFilter: g,
|
|
2462
|
+
clearAllFilters: f,
|
|
2463
|
+
limitedSchema: _,
|
|
2464
|
+
filtersSlot: p,
|
|
2465
|
+
limitedFiltersSlot: C,
|
|
2466
|
+
popoverFiltersSlot: d,
|
|
2467
|
+
vnodeMap: x,
|
|
2468
|
+
selectedFilter: v,
|
|
2469
|
+
filterRef: k
|
|
2460
2470
|
};
|
|
2461
2471
|
}
|
|
2462
|
-
const
|
|
2472
|
+
const ro = /* @__PURE__ */ q({
|
|
2463
2473
|
__name: "popover",
|
|
2464
2474
|
emits: ["open", "close"],
|
|
2465
|
-
setup(
|
|
2466
|
-
const
|
|
2467
|
-
function
|
|
2468
|
-
|
|
2475
|
+
setup(m, { emit: o }) {
|
|
2476
|
+
const y = A(!1), t = A(null), a = A(null), l = A(null), g = A({ top: "0px", left: "0px", position: "absolute" });
|
|
2477
|
+
function c() {
|
|
2478
|
+
y.value = !y.value;
|
|
2469
2479
|
}
|
|
2470
|
-
function
|
|
2471
|
-
const k =
|
|
2472
|
-
if (!k || !
|
|
2473
|
-
const C = k.getBoundingClientRect(),
|
|
2474
|
-
let
|
|
2475
|
-
|
|
2480
|
+
function p() {
|
|
2481
|
+
const k = l.value, _ = t.value;
|
|
2482
|
+
if (!k || !_) return;
|
|
2483
|
+
const C = k.getBoundingClientRect(), d = _.offsetWidth, n = window.innerWidth - C.left;
|
|
2484
|
+
let r = C.left + window.scrollX;
|
|
2485
|
+
d > n && (r = window.innerWidth - d - 8, r < 8 && (r = 8)), g.value = {
|
|
2476
2486
|
position: "absolute",
|
|
2477
2487
|
top: `${C.bottom + window.scrollY + 8}px`,
|
|
2478
|
-
left: `${
|
|
2488
|
+
left: `${r}px`
|
|
2479
2489
|
};
|
|
2480
2490
|
}
|
|
2481
|
-
const
|
|
2482
|
-
function
|
|
2483
|
-
const
|
|
2484
|
-
!
|
|
2491
|
+
const x = E(() => Object.entries(g.value).map((k) => k.join(":")).join(";"));
|
|
2492
|
+
function f(k) {
|
|
2493
|
+
const _ = k.target;
|
|
2494
|
+
!l.value?.contains(k.target) && !t.value?.contains(k.target) && !_.closest("[data-inside-popover]") && (y.value = !1);
|
|
2485
2495
|
}
|
|
2486
|
-
const
|
|
2487
|
-
|
|
2488
|
-
|
|
2489
|
-
}),
|
|
2490
|
-
|
|
2496
|
+
const v = A(!1);
|
|
2497
|
+
ce(() => {
|
|
2498
|
+
v.value = !0;
|
|
2499
|
+
}), ce(() => {
|
|
2500
|
+
l.value = a.value?.querySelector("[data-popover-trigger]") || null, l.value?.addEventListener("click", c), document.addEventListener("click", f), window.addEventListener("resize", p), window.addEventListener("scroll", p, !0);
|
|
2491
2501
|
}), me(() => {
|
|
2492
|
-
|
|
2502
|
+
l.value?.removeEventListener("click", c), document.removeEventListener("click", f), window.removeEventListener("resize", p), window.removeEventListener("scroll", p, !0);
|
|
2493
2503
|
});
|
|
2494
|
-
const
|
|
2495
|
-
return I(
|
|
2496
|
-
k ? (
|
|
2497
|
-
}), (k,
|
|
2504
|
+
const u = o;
|
|
2505
|
+
return I(y, async (k) => {
|
|
2506
|
+
k ? (u("open"), await fe(), p()) : u("close");
|
|
2507
|
+
}), (k, _) => (i(), w("div", {
|
|
2498
2508
|
ref_key: "wrapperRef",
|
|
2499
|
-
ref:
|
|
2509
|
+
ref: a
|
|
2500
2510
|
}, [
|
|
2501
|
-
|
|
2502
|
-
|
|
2511
|
+
de(k.$slots, "trigger"),
|
|
2512
|
+
v.value ? (i(), T(ge, {
|
|
2503
2513
|
key: 0,
|
|
2504
2514
|
to: "body"
|
|
2505
2515
|
}, [
|
|
2506
|
-
|
|
2516
|
+
W(s("div", {
|
|
2507
2517
|
ref_key: "popoverRef",
|
|
2508
|
-
ref:
|
|
2518
|
+
ref: t,
|
|
2509
2519
|
class: "absolute z-[50] w-[600px] rounded-md border bg-white shadow-md",
|
|
2510
|
-
style: be(
|
|
2520
|
+
style: be(x.value)
|
|
2511
2521
|
}, [
|
|
2512
|
-
|
|
2522
|
+
de(k.$slots, "default")
|
|
2513
2523
|
], 4), [
|
|
2514
|
-
[
|
|
2524
|
+
[Z, y.value]
|
|
2515
2525
|
])
|
|
2516
|
-
])) :
|
|
2526
|
+
])) : V("", !0)
|
|
2517
2527
|
], 512));
|
|
2518
2528
|
}
|
|
2519
|
-
}),
|
|
2529
|
+
}), so = {}, io = {
|
|
2520
2530
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2521
2531
|
width: "24",
|
|
2522
2532
|
height: "24",
|
|
@@ -2528,27 +2538,27 @@ const ra = /* @__PURE__ */ W({
|
|
|
2528
2538
|
"stroke-linejoin": "round",
|
|
2529
2539
|
class: "lucide lucide-filter h-4 w-4"
|
|
2530
2540
|
};
|
|
2531
|
-
function
|
|
2532
|
-
return
|
|
2533
|
-
|
|
2534
|
-
])
|
|
2541
|
+
function uo(m, o) {
|
|
2542
|
+
return i(), w("svg", io, o[0] || (o[0] = [
|
|
2543
|
+
s("polygon", { points: "22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3" }, null, -1)
|
|
2544
|
+
]));
|
|
2535
2545
|
}
|
|
2536
|
-
const Ue = /* @__PURE__ */ te(
|
|
2546
|
+
const Ue = /* @__PURE__ */ te(so, [["render", uo]]), co = { class: "flex items-center gap-2 overflow-hidden" }, fo = {
|
|
2537
2547
|
key: 0,
|
|
2538
2548
|
class: "inline-flex min-h-[18px] min-w-[18px] items-center justify-center rounded-[4px] bg-blue-500 px-1 text-[11px] font-semibold text-white"
|
|
2539
|
-
},
|
|
2549
|
+
}, po = { class: "flex max-h-[calc(100dvh-240px)]" }, mo = { class: "w-64 border-r border-gray-200 overflow-y-auto" }, vo = { class: "p-4 border-b" }, yo = { class: "text-sm text-gray-600" }, go = { class: "p-2" }, bo = ["onClick"], ho = { class: "flex items-center gap-2" }, xo = { class: "text-sm font-medium" }, wo = {
|
|
2540
2550
|
key: 0,
|
|
2541
2551
|
class: "inline-flex min-h-[18px] min-w-[18px] items-center justify-center rounded-[4px] bg-blue-100 px-1 text-[11px] font-semibold text-blue-600"
|
|
2542
|
-
},
|
|
2552
|
+
}, ko = ["onClick"], Co = { class: "flex items-center gap-2" }, _o = { class: "text-sm font-medium" }, Vo = {
|
|
2543
2553
|
key: 0,
|
|
2544
2554
|
class: "inline-flex min-h-[18px] min-w-[18px] items-center justify-center rounded-[4px] bg-blue-100 px-1 text-[11px] font-semibold text-blue-600"
|
|
2545
|
-
}, $
|
|
2555
|
+
}, $o = {
|
|
2546
2556
|
key: 0,
|
|
2547
2557
|
class: "p-2 border-t"
|
|
2548
|
-
},
|
|
2558
|
+
}, Ao = { class: "flex-1 min-h-[300px] overflow-y-auto" }, Bo = {
|
|
2549
2559
|
key: 0,
|
|
2550
2560
|
class: "flex items-center justify-center h-full text-gray-500"
|
|
2551
|
-
},
|
|
2561
|
+
}, So = { class: "text-sm" }, ze = /* @__PURE__ */ q({
|
|
2552
2562
|
__name: "popover-filter-layout",
|
|
2553
2563
|
props: {
|
|
2554
2564
|
badgeCount: {},
|
|
@@ -2565,163 +2575,163 @@ const Ue = /* @__PURE__ */ te(sa, [["render", ua]]), ca = { class: "flex items-c
|
|
|
2565
2575
|
itemClass: {}
|
|
2566
2576
|
},
|
|
2567
2577
|
emits: ["change", "clear", "clearAll"],
|
|
2568
|
-
setup(
|
|
2569
|
-
const
|
|
2570
|
-
activeFilter:
|
|
2571
|
-
activeFilterCount:
|
|
2572
|
-
onFilterChange:
|
|
2578
|
+
setup(m, { expose: o, emit: y }) {
|
|
2579
|
+
const t = oe(), a = m, l = Te(a.mode), g = pe(), c = y, p = A({}), x = E(() => p?.value ? a.view !== "inline" ? p?.value : Object.fromEntries(Object.entries(p?.value).slice(a.limit)) : {}), {
|
|
2580
|
+
activeFilter: f,
|
|
2581
|
+
activeFilterCount: v,
|
|
2582
|
+
onFilterChange: u,
|
|
2573
2583
|
clearFilter: k,
|
|
2574
|
-
clearAllFilters:
|
|
2584
|
+
clearAllFilters: _,
|
|
2575
2585
|
popoverFiltersSlot: C,
|
|
2576
|
-
selectedFilter:
|
|
2577
|
-
filterRef:
|
|
2586
|
+
selectedFilter: d,
|
|
2587
|
+
filterRef: n
|
|
2578
2588
|
} = ye({
|
|
2579
|
-
...
|
|
2580
|
-
schema:
|
|
2581
|
-
slots:
|
|
2582
|
-
},
|
|
2583
|
-
function
|
|
2584
|
-
return Array.isArray(
|
|
2589
|
+
...a,
|
|
2590
|
+
schema: p,
|
|
2591
|
+
slots: g
|
|
2592
|
+
}, c), r = E(() => a.badgeCount ?? v.value);
|
|
2593
|
+
function b(M) {
|
|
2594
|
+
return Array.isArray(M) ? M.filter(($) => $ != null && $ !== "").length : M && typeof M == "object" ? Object.values(M).filter(($) => $ != null && $ !== "").length : M === null || M !== void 0 && M !== "" ? 1 : 0;
|
|
2585
2595
|
}
|
|
2586
|
-
function
|
|
2587
|
-
return
|
|
2596
|
+
function h(M) {
|
|
2597
|
+
return f.value ? b(f.value[M]) : 0;
|
|
2588
2598
|
}
|
|
2589
|
-
function
|
|
2590
|
-
if (
|
|
2591
|
-
const [
|
|
2592
|
-
|
|
2593
|
-
} else C.value.length > 0 ?
|
|
2599
|
+
function K() {
|
|
2600
|
+
if (x.value) {
|
|
2601
|
+
const [M] = Object.keys(x.value);
|
|
2602
|
+
d.value = M;
|
|
2603
|
+
} else C.value.length > 0 ? d.value = C.value[0].props.name : d.value = "";
|
|
2594
2604
|
}
|
|
2595
2605
|
return I(
|
|
2596
|
-
() =>
|
|
2597
|
-
(
|
|
2598
|
-
|
|
2606
|
+
() => a.schema,
|
|
2607
|
+
(M) => {
|
|
2608
|
+
p.value = M ?? {};
|
|
2599
2609
|
},
|
|
2600
2610
|
{ deep: !0, immediate: !0 }
|
|
2601
2611
|
), o({
|
|
2602
2612
|
clearFilter: k,
|
|
2603
|
-
clearAllFilters:
|
|
2604
|
-
}), (
|
|
2605
|
-
onOpen:
|
|
2606
|
-
onClose:
|
|
2613
|
+
clearAllFilters: _
|
|
2614
|
+
}), (M, $) => (i(), T(ro, {
|
|
2615
|
+
onOpen: K,
|
|
2616
|
+
onClose: $[5] || ($[5] = (S) => d.value = "")
|
|
2607
2617
|
}, {
|
|
2608
|
-
trigger:
|
|
2609
|
-
|
|
2618
|
+
trigger: ae(() => [
|
|
2619
|
+
s("button", {
|
|
2610
2620
|
"data-popover-trigger": "",
|
|
2611
2621
|
"aria-haspopup": "dialog",
|
|
2612
2622
|
"aria-expanded": "false",
|
|
2613
|
-
class:
|
|
2614
|
-
|
|
2615
|
-
e(
|
|
2623
|
+
class: L([
|
|
2624
|
+
M.itemClass,
|
|
2625
|
+
e(l),
|
|
2616
2626
|
"flex items-center justify-between gap-2",
|
|
2617
|
-
|
|
2627
|
+
r.value > 0 ? "border border-blue-400 bg-blue-50 text-blue-600 hover:border-blue-500" : "text-neutral-700 hover:border-neutral-400"
|
|
2618
2628
|
]),
|
|
2619
2629
|
type: "button"
|
|
2620
2630
|
}, [
|
|
2621
|
-
|
|
2622
|
-
|
|
2623
|
-
|
|
2631
|
+
s("span", co, [
|
|
2632
|
+
Q(Ue, { class: "h-4 w-4" }),
|
|
2633
|
+
$[6] || ($[6] = s("span", { class: "text-sm font-medium" }, "Фільтр", -1))
|
|
2624
2634
|
]),
|
|
2625
|
-
|
|
2635
|
+
r.value > 0 ? (i(), w("span", fo, B(r.value), 1)) : V("", !0)
|
|
2626
2636
|
], 2)
|
|
2627
2637
|
]),
|
|
2628
|
-
default:
|
|
2629
|
-
|
|
2630
|
-
|
|
2631
|
-
|
|
2632
|
-
|
|
2638
|
+
default: ae(() => [
|
|
2639
|
+
s("div", po, [
|
|
2640
|
+
s("div", mo, [
|
|
2641
|
+
s("div", vo, [
|
|
2642
|
+
s("p", yo, B(e(t)("filter.selectFieldHelp")), 1)
|
|
2633
2643
|
]),
|
|
2634
|
-
|
|
2635
|
-
|
|
2644
|
+
s("div", go, [
|
|
2645
|
+
M.schema ? (i(!0), w(U, { key: 0 }, X(Object.entries(x.value), ([S, F]) => (i(), w("button", {
|
|
2636
2646
|
key: S,
|
|
2637
2647
|
onClick: () => {
|
|
2638
|
-
|
|
2648
|
+
d.value = S;
|
|
2639
2649
|
},
|
|
2640
|
-
class:
|
|
2650
|
+
class: L([
|
|
2641
2651
|
"flex w-full items-center justify-between px-3 py-2 text-left transition-colors hover:bg-gray-50",
|
|
2642
|
-
e(
|
|
2652
|
+
e(d) === S ? "bg-blue-50 text-blue-700 border-l-2 border-blue-500" : "text-neutral-700"
|
|
2643
2653
|
])
|
|
2644
2654
|
}, [
|
|
2645
|
-
|
|
2646
|
-
|
|
2655
|
+
s("div", ho, [
|
|
2656
|
+
s("span", xo, B(F.label), 1)
|
|
2647
2657
|
]),
|
|
2648
|
-
|
|
2649
|
-
], 10,
|
|
2650
|
-
(
|
|
2651
|
-
key: "slot-" +
|
|
2652
|
-
onClick: (
|
|
2653
|
-
class:
|
|
2658
|
+
h(S) > 0 ? (i(), w("div", wo, B(h(S)), 1)) : V("", !0)
|
|
2659
|
+
], 10, bo))), 128)) : V("", !0),
|
|
2660
|
+
(i(!0), w(U, null, X(e(C), (S, F) => (i(), w("button", {
|
|
2661
|
+
key: "slot-" + F,
|
|
2662
|
+
onClick: (D) => d.value = S.props.name,
|
|
2663
|
+
class: L([
|
|
2654
2664
|
"flex items-center justify-between px-3 py-2 text-left transition-colors hover:bg-gray-50",
|
|
2655
|
-
e(
|
|
2665
|
+
e(d) === S.props.name ? "bg-blue-50 text-blue-700 border-l-2 border-blue-500" : "text-neutral-700"
|
|
2656
2666
|
])
|
|
2657
2667
|
}, [
|
|
2658
|
-
|
|
2659
|
-
|
|
2668
|
+
s("div", Co, [
|
|
2669
|
+
s("span", _o, B(S.props.label), 1)
|
|
2660
2670
|
]),
|
|
2661
|
-
|
|
2662
|
-
], 10,
|
|
2671
|
+
h(S.props.name) > 0 ? (i(), w("div", Vo, B(h(S.props.name)), 1)) : V("", !0)
|
|
2672
|
+
], 10, ko))), 128))
|
|
2663
2673
|
]),
|
|
2664
|
-
e(
|
|
2665
|
-
|
|
2666
|
-
class:
|
|
2667
|
-
onClick:
|
|
2674
|
+
e(v) > 0 ? (i(), w("div", $o, [
|
|
2675
|
+
s("button", {
|
|
2676
|
+
class: L([M.itemClass, "w-full px-3 py-2 text-left text-sm text-gray-600 hover:bg-gray-50 transition-colors"]),
|
|
2677
|
+
onClick: $[0] || ($[0] = (S) => e(_)()),
|
|
2668
2678
|
"data-inside-popover": ""
|
|
2669
2679
|
}, " Очистити всі ", 2)
|
|
2670
|
-
])) :
|
|
2680
|
+
])) : V("", !0)
|
|
2671
2681
|
]),
|
|
2672
|
-
|
|
2673
|
-
e(
|
|
2674
|
-
|
|
2675
|
-
])) :
|
|
2676
|
-
e(
|
|
2677
|
-
|
|
2678
|
-
e(
|
|
2682
|
+
s("div", Ao, [
|
|
2683
|
+
e(d) === "" ? (i(), w("div", Bo, [
|
|
2684
|
+
s("p", So, B(e(t)("filter.selectFieldHelp")), 1)
|
|
2685
|
+
])) : V("", !0),
|
|
2686
|
+
e(d) ? (i(), w(U, { key: 1 }, [
|
|
2687
|
+
x.value ? (i(!0), w(U, { key: 0 }, X(Object.entries(x.value), ([S, F]) => (i(), w(U, null, [
|
|
2688
|
+
e(d) === S ? (i(), T(le, J({
|
|
2679
2689
|
key: S,
|
|
2680
2690
|
layout: "popover",
|
|
2681
2691
|
ref_for: !0,
|
|
2682
2692
|
ref_key: "filterRef",
|
|
2683
|
-
ref:
|
|
2684
|
-
}, { ref_for: !0 },
|
|
2685
|
-
class: [
|
|
2686
|
-
"item-class": [
|
|
2687
|
-
onChange:
|
|
2688
|
-
onClear:
|
|
2689
|
-
e(k)(
|
|
2693
|
+
ref: n
|
|
2694
|
+
}, { ref_for: !0 }, F, {
|
|
2695
|
+
class: [M.itemClass, F?.class],
|
|
2696
|
+
"item-class": [M.itemClass, F?.itemClass].filter(Boolean).join(" ") || void 0,
|
|
2697
|
+
onChange: $[1] || ($[1] = (D) => e(u)(D.name, D.value)),
|
|
2698
|
+
onClear: $[2] || ($[2] = (D) => {
|
|
2699
|
+
e(k)(D), e(u)(D, void 0);
|
|
2690
2700
|
}),
|
|
2691
|
-
modelValue: e(
|
|
2692
|
-
"onUpdate:modelValue": (
|
|
2701
|
+
modelValue: e(f)[S],
|
|
2702
|
+
"onUpdate:modelValue": (D) => e(f)[S] = D,
|
|
2693
2703
|
cleanable: !0
|
|
2694
|
-
}), null, 16, ["class", "item-class", "modelValue", "onUpdate:modelValue"])) :
|
|
2695
|
-
], 64))), 256)) :
|
|
2696
|
-
(
|
|
2697
|
-
key: "slot-" +
|
|
2704
|
+
}), null, 16, ["class", "item-class", "modelValue", "onUpdate:modelValue"])) : V("", !0)
|
|
2705
|
+
], 64))), 256)) : V("", !0),
|
|
2706
|
+
(i(!0), w(U, null, X(e(C), (S, F) => (i(), w(U, {
|
|
2707
|
+
key: "slot-" + F
|
|
2698
2708
|
}, [
|
|
2699
|
-
e(
|
|
2709
|
+
e(d) === S.props.name ? (i(), T(le, J({
|
|
2700
2710
|
key: 0,
|
|
2701
2711
|
layout: "popover"
|
|
2702
2712
|
}, { ref_for: !0 }, S.props, {
|
|
2703
2713
|
ref_for: !0,
|
|
2704
2714
|
ref_key: "filterRef",
|
|
2705
|
-
ref:
|
|
2706
|
-
class: [
|
|
2707
|
-
"item-class": [
|
|
2708
|
-
onChange:
|
|
2709
|
-
onClear:
|
|
2710
|
-
e(k)(
|
|
2715
|
+
ref: n,
|
|
2716
|
+
class: [M.itemClass, S.props?.class],
|
|
2717
|
+
"item-class": [M.itemClass, S.props?.itemClass].filter(Boolean).join(" ") || void 0,
|
|
2718
|
+
onChange: $[3] || ($[3] = (D) => e(u)(D.name, D.value)),
|
|
2719
|
+
onClear: $[4] || ($[4] = (D) => {
|
|
2720
|
+
e(k)(D), e(u)(D, void 0);
|
|
2711
2721
|
}),
|
|
2712
|
-
modelValue: e(
|
|
2713
|
-
"onUpdate:modelValue": (
|
|
2722
|
+
modelValue: e(f)[S.props.name],
|
|
2723
|
+
"onUpdate:modelValue": (D) => e(f)[S.props.name] = D,
|
|
2714
2724
|
cleanable: !0
|
|
2715
|
-
}), null, 16, ["class", "item-class", "modelValue", "onUpdate:modelValue"])) :
|
|
2725
|
+
}), null, 16, ["class", "item-class", "modelValue", "onUpdate:modelValue"])) : V("", !0)
|
|
2716
2726
|
], 64))), 128))
|
|
2717
|
-
], 64)) :
|
|
2727
|
+
], 64)) : V("", !0)
|
|
2718
2728
|
])
|
|
2719
2729
|
])
|
|
2720
2730
|
]),
|
|
2721
2731
|
_: 1
|
|
2722
2732
|
}));
|
|
2723
2733
|
}
|
|
2724
|
-
}),
|
|
2734
|
+
}), jo = { class: "flex gap-1 items-center flex-wrap" }, Fe = /* @__PURE__ */ q({
|
|
2725
2735
|
__name: "inline-filter-layout",
|
|
2726
2736
|
props: {
|
|
2727
2737
|
schema: {},
|
|
@@ -2737,106 +2747,106 @@ const Ue = /* @__PURE__ */ te(sa, [["render", ua]]), ca = { class: "flex items-c
|
|
|
2737
2747
|
itemClass: {}
|
|
2738
2748
|
},
|
|
2739
2749
|
emits: ["change", "clear", "clearAll"],
|
|
2740
|
-
setup(
|
|
2741
|
-
const
|
|
2742
|
-
activeFilter:
|
|
2743
|
-
activeFilterCount:
|
|
2744
|
-
onFilterChange:
|
|
2745
|
-
clearFilter:
|
|
2750
|
+
setup(m, { expose: o, emit: y }) {
|
|
2751
|
+
const t = oe(), a = m, l = y, g = pe(), c = A({}), p = E(() => Object.keys(a.schema).length > a.limit), {
|
|
2752
|
+
activeFilter: x,
|
|
2753
|
+
activeFilterCount: f,
|
|
2754
|
+
onFilterChange: v,
|
|
2755
|
+
clearFilter: u,
|
|
2746
2756
|
clearAllFilters: k,
|
|
2747
|
-
limitedSchema:
|
|
2757
|
+
limitedSchema: _,
|
|
2748
2758
|
filtersSlot: C,
|
|
2749
|
-
limitedFiltersSlot:
|
|
2759
|
+
limitedFiltersSlot: d
|
|
2750
2760
|
} = ye(
|
|
2751
2761
|
{
|
|
2752
|
-
...
|
|
2753
|
-
schema:
|
|
2754
|
-
slots:
|
|
2762
|
+
...a,
|
|
2763
|
+
schema: c,
|
|
2764
|
+
slots: g
|
|
2755
2765
|
},
|
|
2756
|
-
|
|
2766
|
+
l
|
|
2757
2767
|
);
|
|
2758
|
-
function
|
|
2759
|
-
return Array.isArray(
|
|
2768
|
+
function n($) {
|
|
2769
|
+
return Array.isArray($) ? $.some((S) => S !== "" && S !== void 0 && S !== null) : $ === null ? !0 : $ && typeof $ == "object" ? Object.values($).some((S) => S !== "" && S !== void 0 && S !== null) : $ !== "" && $ !== void 0;
|
|
2760
2770
|
}
|
|
2761
|
-
const
|
|
2762
|
-
const
|
|
2763
|
-
return /* @__PURE__ */ new Set([
|
|
2764
|
-
}),
|
|
2765
|
-
const
|
|
2766
|
-
return Math.max(
|
|
2767
|
-
}),
|
|
2768
|
-
function
|
|
2769
|
-
|
|
2771
|
+
const r = E(() => {
|
|
2772
|
+
const $ = Object.keys(_.value ?? {}), S = d.value.map((F) => F.props?.name).filter((F) => typeof F == "string");
|
|
2773
|
+
return /* @__PURE__ */ new Set([...$, ...S]);
|
|
2774
|
+
}), b = E(() => Object.entries(x.value ?? {}).filter(([$, S]) => r.value.has($) && n(S)).length), h = E(() => {
|
|
2775
|
+
const $ = f.value ?? 0, S = b.value ?? 0;
|
|
2776
|
+
return Math.max($ - S, 0);
|
|
2777
|
+
}), K = A();
|
|
2778
|
+
function M() {
|
|
2779
|
+
K.value && K.value.clearAllFilters(!0), k();
|
|
2770
2780
|
}
|
|
2771
2781
|
return I(
|
|
2772
|
-
() =>
|
|
2773
|
-
(
|
|
2774
|
-
|
|
2782
|
+
() => a.schema,
|
|
2783
|
+
($) => {
|
|
2784
|
+
c.value = $;
|
|
2775
2785
|
},
|
|
2776
2786
|
{ deep: !0, immediate: !0 }
|
|
2777
2787
|
), o({
|
|
2778
|
-
clearFilter:
|
|
2788
|
+
clearFilter: u,
|
|
2779
2789
|
clearAllFilters: k
|
|
2780
|
-
}), (
|
|
2781
|
-
|
|
2782
|
-
key:
|
|
2783
|
-
mode:
|
|
2784
|
-
width:
|
|
2785
|
-
}, { ref_for: !0 },
|
|
2786
|
-
class: [
|
|
2787
|
-
"item-class": [
|
|
2788
|
-
onChange: S[0] || (S[0] = (
|
|
2789
|
-
onClear: e(
|
|
2790
|
+
}), ($, S) => (i(), w("div", jo, [
|
|
2791
|
+
$.schema ? (i(!0), w(U, { key: 0 }, X(Object.entries(e(_)), ([F, D]) => (i(), T(le, J({
|
|
2792
|
+
key: F,
|
|
2793
|
+
mode: $.mode,
|
|
2794
|
+
width: $.width ? $.width : D?.width
|
|
2795
|
+
}, { ref_for: !0 }, D, {
|
|
2796
|
+
class: [$.itemClass, D?.class],
|
|
2797
|
+
"item-class": [$.itemClass, D?.itemClass].filter(Boolean).join(" ") || void 0,
|
|
2798
|
+
onChange: S[0] || (S[0] = (R) => e(v)(R.name, R.value)),
|
|
2799
|
+
onClear: e(u),
|
|
2790
2800
|
layout: "inline",
|
|
2791
2801
|
cleanable: !0,
|
|
2792
|
-
modelValue: e(
|
|
2793
|
-
"onUpdate:modelValue": (
|
|
2794
|
-
}), null, 16, ["mode", "width", "class", "item-class", "onClear", "modelValue", "onUpdate:modelValue"]))), 128)) :
|
|
2795
|
-
(
|
|
2796
|
-
key: "slot-" +
|
|
2802
|
+
modelValue: e(x)[F],
|
|
2803
|
+
"onUpdate:modelValue": (R) => e(x)[F] = R
|
|
2804
|
+
}), null, 16, ["mode", "width", "class", "item-class", "onClear", "modelValue", "onUpdate:modelValue"]))), 128)) : V("", !0),
|
|
2805
|
+
(i(!0), w(U, null, X(e(d), (F, D) => (i(), T(le, J({
|
|
2806
|
+
key: "slot-" + D,
|
|
2797
2807
|
layout: "inline"
|
|
2798
|
-
}, { ref_for: !0 },
|
|
2799
|
-
class: [
|
|
2800
|
-
"item-class": [
|
|
2801
|
-
onChange: S[1] || (S[1] = (
|
|
2802
|
-
onClear: S[2] || (S[2] = (
|
|
2803
|
-
e(
|
|
2808
|
+
}, { ref_for: !0 }, F.props, {
|
|
2809
|
+
class: [$.itemClass, F.props?.class],
|
|
2810
|
+
"item-class": [$.itemClass, F.props?.itemClass].filter(Boolean).join(" ") || void 0,
|
|
2811
|
+
onChange: S[1] || (S[1] = (R) => e(v)(R.name, R.value)),
|
|
2812
|
+
onClear: S[2] || (S[2] = (R) => {
|
|
2813
|
+
e(u)(R), e(v)(R, void 0);
|
|
2804
2814
|
}),
|
|
2805
2815
|
cleanable: !0,
|
|
2806
|
-
modelValue: e(
|
|
2807
|
-
"onUpdate:modelValue": (
|
|
2816
|
+
modelValue: e(x)[F.props.name],
|
|
2817
|
+
"onUpdate:modelValue": (R) => e(x)[F.props.name] = R
|
|
2808
2818
|
}), null, 16, ["class", "item-class", "modelValue", "onUpdate:modelValue"]))), 128)),
|
|
2809
|
-
|
|
2810
|
-
schema:
|
|
2811
|
-
limit:
|
|
2812
|
-
onChange: S[3] || (S[3] = (
|
|
2813
|
-
onClearAll: S[4] || (S[4] = (
|
|
2814
|
-
onClear: S[5] || (S[5] = (
|
|
2815
|
-
mode:
|
|
2819
|
+
p.value ? (i(), T(ze, J({ key: 1 }, a, {
|
|
2820
|
+
schema: $.schema,
|
|
2821
|
+
limit: $.limit,
|
|
2822
|
+
onChange: S[3] || (S[3] = (F) => e(v)(F.name, F.value)),
|
|
2823
|
+
onClearAll: S[4] || (S[4] = (F) => e(k)()),
|
|
2824
|
+
onClear: S[5] || (S[5] = (F) => e(u)(F.name)),
|
|
2825
|
+
mode: $.mode,
|
|
2816
2826
|
ref_key: "popoverRef",
|
|
2817
|
-
ref:
|
|
2827
|
+
ref: K,
|
|
2818
2828
|
cleanable: !0,
|
|
2819
|
-
"badge-count":
|
|
2829
|
+
"badge-count": h.value
|
|
2820
2830
|
}), {
|
|
2821
|
-
default:
|
|
2822
|
-
(
|
|
2823
|
-
key: "slot-" +
|
|
2831
|
+
default: ae(() => [
|
|
2832
|
+
(i(!0), w(U, null, X(e(C), (F, D) => (i(), T(ne(F), J({
|
|
2833
|
+
key: "slot-" + D,
|
|
2824
2834
|
layout: "popover"
|
|
2825
|
-
}, { ref_for: !0 },
|
|
2835
|
+
}, { ref_for: !0 }, F.props, { cleanable: !0 }), null, 16))), 128))
|
|
2826
2836
|
]),
|
|
2827
2837
|
_: 1
|
|
2828
|
-
}, 16, ["schema", "limit", "mode", "badge-count"])) :
|
|
2829
|
-
e(
|
|
2838
|
+
}, 16, ["schema", "limit", "mode", "badge-count"])) : V("", !0),
|
|
2839
|
+
e(f) > 0 ? (i(), w("button", {
|
|
2830
2840
|
key: 2,
|
|
2831
|
-
onClick:
|
|
2832
|
-
class:
|
|
2833
|
-
}, B(e(
|
|
2841
|
+
onClick: M,
|
|
2842
|
+
class: L([$.itemClass, "relative py-2 px-3 inline-flex justify-center items-center gap-x-2 text-sm font-medium rounded-md bg-gray-50 border text-gray-800 hover:bg-gray-200 focus:bg-gray-200"])
|
|
2843
|
+
}, B(e(t)("filter.clear")), 3)) : V("", !0)
|
|
2834
2844
|
]));
|
|
2835
2845
|
}
|
|
2836
|
-
}),
|
|
2846
|
+
}), Do = {
|
|
2837
2847
|
key: 0,
|
|
2838
2848
|
class: "p-2 overflow-y-auto overflow-hidden [&::-webkit-scrollbar]:w-2 [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-track]:bg-gray-100 [&::-webkit-scrollbar-thumb]:bg-gray-300 dark:[&::-webkit-scrollbar-track]:bg-neutral-700 dark:[&::-webkit-scrollbar-thumb]:bg-neutral-500 dark:bg-neutral-800 max-h-[calc(100%-142px)] h-full bg-gray-100"
|
|
2839
|
-
},
|
|
2849
|
+
}, Ro = { class: "flex items-center vst-filters vsTailwind flex-col w-full" }, Fo = /* @__PURE__ */ q({
|
|
2840
2850
|
__name: "vertical-filter-layout",
|
|
2841
2851
|
props: {
|
|
2842
2852
|
schema: {},
|
|
@@ -2852,67 +2862,67 @@ const Ue = /* @__PURE__ */ te(sa, [["render", ua]]), ca = { class: "flex items-c
|
|
|
2852
2862
|
itemClass: {}
|
|
2853
2863
|
},
|
|
2854
2864
|
emits: ["change", "clear", "clearAll"],
|
|
2855
|
-
setup(
|
|
2856
|
-
const
|
|
2857
|
-
activeFilter:
|
|
2858
|
-
activeFilterCount:
|
|
2859
|
-
onFilterChange:
|
|
2860
|
-
clearFilter:
|
|
2861
|
-
clearAllFilters:
|
|
2862
|
-
filtersSlot:
|
|
2865
|
+
setup(m, { expose: o, emit: y }) {
|
|
2866
|
+
const t = m, a = y, l = pe(), {
|
|
2867
|
+
activeFilter: g,
|
|
2868
|
+
activeFilterCount: c,
|
|
2869
|
+
onFilterChange: p,
|
|
2870
|
+
clearFilter: x,
|
|
2871
|
+
clearAllFilters: f,
|
|
2872
|
+
filtersSlot: v
|
|
2863
2873
|
} = ye({
|
|
2864
|
-
...
|
|
2865
|
-
slots:
|
|
2866
|
-
},
|
|
2874
|
+
...t,
|
|
2875
|
+
slots: l
|
|
2876
|
+
}, a);
|
|
2867
2877
|
return o({
|
|
2868
|
-
clearFilter:
|
|
2869
|
-
clearAllFilters:
|
|
2870
|
-
}), (
|
|
2871
|
-
|
|
2872
|
-
e(
|
|
2878
|
+
clearFilter: x,
|
|
2879
|
+
clearAllFilters: f
|
|
2880
|
+
}), (u, k) => u.view === "vertical" ? (i(), w("div", Do, [
|
|
2881
|
+
s("div", Ro, [
|
|
2882
|
+
e(c) > 0 ? (i(), w("button", {
|
|
2873
2883
|
key: 0,
|
|
2874
|
-
onClick: k[0] || (k[0] = (
|
|
2884
|
+
onClick: k[0] || (k[0] = (_) => e(f)()),
|
|
2875
2885
|
"data-popover-trigger": "",
|
|
2876
2886
|
"aria-haspopup": "dialog",
|
|
2877
2887
|
"aria-expanded": "false",
|
|
2878
|
-
class:
|
|
2888
|
+
class: L([u.itemClass, "w-full ring-offset-background focus-visible:outline-hidden focus-visible:ring-ring inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:ring-2 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 hover:text-accent-foreground border h-10 px-4 py-2 gap-2 m-2 bg-white text-gray-800 hover:bg-gray-200 focus:bg-gray-200"]),
|
|
2879
2889
|
type: "button"
|
|
2880
|
-
}, " Очистити ", 2)) :
|
|
2881
|
-
|
|
2882
|
-
class: [
|
|
2883
|
-
"item-class": [
|
|
2884
|
-
onChange: k[1] || (k[1] = (
|
|
2885
|
-
onClear: k[2] || (k[2] = (
|
|
2886
|
-
e(
|
|
2890
|
+
}, " Очистити ", 2)) : V("", !0),
|
|
2891
|
+
u.schema ? (i(!0), w(U, { key: 1 }, X(Object.entries(u.schema), ([_, C]) => (i(), T(le, J({ layout: "vertical" }, { ref_for: !0 }, C, {
|
|
2892
|
+
class: [u.itemClass, C?.class],
|
|
2893
|
+
"item-class": [u.itemClass, C?.itemClass].filter(Boolean).join(" ") || void 0,
|
|
2894
|
+
onChange: k[1] || (k[1] = (d) => e(p)(d.name, d.value)),
|
|
2895
|
+
onClear: k[2] || (k[2] = (d) => {
|
|
2896
|
+
e(x)(d), e(p)(d, void 0);
|
|
2887
2897
|
}),
|
|
2888
|
-
modelValue: e(
|
|
2889
|
-
"onUpdate:modelValue": (
|
|
2898
|
+
modelValue: e(g)[_],
|
|
2899
|
+
"onUpdate:modelValue": (d) => e(g)[_] = d,
|
|
2890
2900
|
showClean: !0
|
|
2891
|
-
}), null, 16, ["class", "item-class", "modelValue", "onUpdate:modelValue"]))), 256)) :
|
|
2892
|
-
(
|
|
2901
|
+
}), null, 16, ["class", "item-class", "modelValue", "onUpdate:modelValue"]))), 256)) : V("", !0),
|
|
2902
|
+
(i(!0), w(U, null, X(e(v), (_, C) => (i(), T(le, J({
|
|
2893
2903
|
key: "slot-" + C,
|
|
2894
2904
|
layout: "vertical"
|
|
2895
|
-
}, { ref_for: !0 },
|
|
2896
|
-
class: [
|
|
2897
|
-
"item-class": [
|
|
2898
|
-
onChange: k[3] || (k[3] = (
|
|
2899
|
-
onClear: k[4] || (k[4] = (
|
|
2900
|
-
e(
|
|
2905
|
+
}, { ref_for: !0 }, _.props, {
|
|
2906
|
+
class: [u.itemClass, _.props?.class],
|
|
2907
|
+
"item-class": [u.itemClass, _.props?.itemClass].filter(Boolean).join(" ") || void 0,
|
|
2908
|
+
onChange: k[3] || (k[3] = (d) => e(p)(d.name, d.value)),
|
|
2909
|
+
onClear: k[4] || (k[4] = (d) => {
|
|
2910
|
+
e(x)(d), e(p)(d, void 0);
|
|
2901
2911
|
}),
|
|
2902
|
-
modelValue: e(
|
|
2903
|
-
"onUpdate:modelValue": (
|
|
2912
|
+
modelValue: e(g)[_.props.name],
|
|
2913
|
+
"onUpdate:modelValue": (d) => e(g)[_.props.name] = d,
|
|
2904
2914
|
showClean: !0
|
|
2905
2915
|
}), null, 16, ["class", "item-class", "modelValue", "onUpdate:modelValue"]))), 128))
|
|
2906
2916
|
])
|
|
2907
|
-
])) :
|
|
2917
|
+
])) : V("", !0);
|
|
2908
2918
|
}
|
|
2909
|
-
}),
|
|
2919
|
+
}), Ko = ["onKeydown"], Mo = ["disabled"], Lo = {
|
|
2910
2920
|
key: 0,
|
|
2911
2921
|
class: "ml-2 inline-flex min-h-[18px] min-w-[18px] items-center justify-center rounded-full bg-blue-500 px-1.5 text-[11px] font-semibold text-white"
|
|
2912
|
-
},
|
|
2922
|
+
}, Oo = { class: "rounded-2xl border border-slate-300/35 bg-white/95 p-4 shadow-2xl backdrop-blur-sm" }, Eo = { class: "mb-3 flex items-center justify-between" }, To = { class: "text-[15px] font-semibold text-slate-800" }, Io = { "aria-hidden": "true" }, Uo = { class: "flex max-h-80 flex-col gap-1 overflow-y-auto" }, zo = {
|
|
2913
2923
|
key: 0,
|
|
2914
2924
|
class: "mt-3 flex justify-end"
|
|
2915
|
-
},
|
|
2925
|
+
}, No = /* @__PURE__ */ q({
|
|
2916
2926
|
__name: "popover-inline-filter-layout",
|
|
2917
2927
|
props: {
|
|
2918
2928
|
schema: {},
|
|
@@ -2928,177 +2938,177 @@ const Ue = /* @__PURE__ */ te(sa, [["render", ua]]), ca = { class: "flex items-c
|
|
|
2928
2938
|
itemClass: {}
|
|
2929
2939
|
},
|
|
2930
2940
|
emits: ["change", "clear", "clearAll"],
|
|
2931
|
-
setup(
|
|
2932
|
-
const
|
|
2933
|
-
activeFilter:
|
|
2934
|
-
activeFilterCount:
|
|
2935
|
-
onFilterChange:
|
|
2936
|
-
clearFilter:
|
|
2937
|
-
clearAllFilters:
|
|
2938
|
-
filtersSlot:
|
|
2941
|
+
setup(m, { emit: o }) {
|
|
2942
|
+
const y = oe(), t = m, a = o, l = A({}), g = pe(), {
|
|
2943
|
+
activeFilter: c,
|
|
2944
|
+
activeFilterCount: p,
|
|
2945
|
+
onFilterChange: x,
|
|
2946
|
+
clearFilter: f,
|
|
2947
|
+
clearAllFilters: v,
|
|
2948
|
+
filtersSlot: u
|
|
2939
2949
|
} = ye(
|
|
2940
2950
|
{
|
|
2941
|
-
...
|
|
2942
|
-
schema:
|
|
2943
|
-
slots:
|
|
2951
|
+
...t,
|
|
2952
|
+
schema: l.value,
|
|
2953
|
+
slots: g
|
|
2944
2954
|
},
|
|
2945
|
-
|
|
2946
|
-
), k = A(null),
|
|
2955
|
+
a
|
|
2956
|
+
), k = A(null), _ = A(null), C = qe({ open: !1, top: 0, left: 0 }), d = E(() => C.open), n = E(() => !!t.disabled), r = E(() => l.value || {}), b = E(() => t.title ?? "Фільтр"), h = E(() => !!g.trigger), K = E(() => [
|
|
2947
2957
|
"inline-flex h-9 items-center justify-center gap-2 rounded-lg border border-transparent bg-slate-200/70 px-3 text-sm font-medium text-slate-700 transition-colors hover:bg-blue-100 hover:text-blue-600 focus:outline-none focus:ring-2 focus:ring-blue-200 disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-slate-200/70 disabled:hover:text-slate-700",
|
|
2948
|
-
|
|
2949
|
-
]),
|
|
2958
|
+
n.value ? "cursor-not-allowed opacity-60" : "cursor-pointer"
|
|
2959
|
+
]), M = E(() => C.open ? {
|
|
2950
2960
|
position: "absolute",
|
|
2951
2961
|
top: `${C.top}px`,
|
|
2952
2962
|
left: `${C.left}px`,
|
|
2953
2963
|
transform: "translateX(-50%)",
|
|
2954
2964
|
zIndex: 1e3
|
|
2955
2965
|
} : { display: "none" });
|
|
2956
|
-
function
|
|
2966
|
+
function $() {
|
|
2957
2967
|
C.open = !1;
|
|
2958
2968
|
}
|
|
2959
2969
|
function S() {
|
|
2960
2970
|
if (!k.value) return;
|
|
2961
|
-
const
|
|
2962
|
-
C.top =
|
|
2971
|
+
const z = k.value.getBoundingClientRect();
|
|
2972
|
+
C.top = z.bottom + window.scrollY + 8, C.left = z.left + z.width / 2 + window.scrollX;
|
|
2963
2973
|
}
|
|
2964
|
-
function
|
|
2965
|
-
C.open = !C.open, C.open &&
|
|
2974
|
+
function F() {
|
|
2975
|
+
C.open = !C.open, C.open && fe(S);
|
|
2966
2976
|
}
|
|
2967
|
-
function
|
|
2968
|
-
|
|
2977
|
+
function D() {
|
|
2978
|
+
n.value || F();
|
|
2969
2979
|
}
|
|
2970
|
-
function
|
|
2980
|
+
function R() {
|
|
2971
2981
|
C.open && S();
|
|
2972
2982
|
}
|
|
2973
|
-
function
|
|
2974
|
-
|
|
2983
|
+
function N() {
|
|
2984
|
+
v();
|
|
2975
2985
|
}
|
|
2976
|
-
return
|
|
2977
|
-
window.addEventListener("resize",
|
|
2986
|
+
return ce(() => {
|
|
2987
|
+
window.addEventListener("resize", R), window.addEventListener("scroll", R, !0);
|
|
2978
2988
|
}), me(() => {
|
|
2979
|
-
window.removeEventListener("resize",
|
|
2989
|
+
window.removeEventListener("resize", R), window.removeEventListener("scroll", R, !0);
|
|
2980
2990
|
}), I(
|
|
2981
|
-
() =>
|
|
2982
|
-
(
|
|
2983
|
-
if (!
|
|
2984
|
-
|
|
2991
|
+
() => t.schema,
|
|
2992
|
+
(z) => {
|
|
2993
|
+
if (!z) {
|
|
2994
|
+
l.value = {};
|
|
2985
2995
|
return;
|
|
2986
2996
|
}
|
|
2987
|
-
if (Array.isArray(
|
|
2988
|
-
const
|
|
2989
|
-
const
|
|
2990
|
-
return [
|
|
2997
|
+
if (Array.isArray(z)) {
|
|
2998
|
+
const j = z.filter((O) => O && (O.name || O.id)).map((O) => {
|
|
2999
|
+
const P = O.name || O.id;
|
|
3000
|
+
return [P, { ...O, name: P }];
|
|
2991
3001
|
});
|
|
2992
|
-
|
|
3002
|
+
l.value = Object.fromEntries(j);
|
|
2993
3003
|
return;
|
|
2994
3004
|
}
|
|
2995
|
-
|
|
3005
|
+
l.value = z;
|
|
2996
3006
|
},
|
|
2997
3007
|
{ deep: !0, immediate: !0 }
|
|
2998
3008
|
), I(
|
|
2999
|
-
() =>
|
|
3000
|
-
(
|
|
3001
|
-
|
|
3009
|
+
() => t.disabled,
|
|
3010
|
+
(z) => {
|
|
3011
|
+
z && $();
|
|
3002
3012
|
}
|
|
3003
|
-
), (
|
|
3013
|
+
), (z, j) => (i(), w("div", {
|
|
3004
3014
|
class: "relative inline-flex",
|
|
3005
3015
|
ref_key: "anchor",
|
|
3006
3016
|
ref: k
|
|
3007
3017
|
}, [
|
|
3008
|
-
|
|
3018
|
+
h.value ? (i(), w("span", {
|
|
3009
3019
|
key: 0,
|
|
3010
|
-
class:
|
|
3020
|
+
class: L(["inline-flex", n.value ? "cursor-not-allowed opacity-60 pointer-events-none" : "cursor-pointer"]),
|
|
3011
3021
|
role: "button",
|
|
3012
3022
|
tabindex: "0",
|
|
3013
3023
|
"data-popover-trigger": "",
|
|
3014
|
-
onClick: se(
|
|
3024
|
+
onClick: se(D, ["prevent", "stop"]),
|
|
3015
3025
|
onKeydown: [
|
|
3016
|
-
|
|
3017
|
-
|
|
3026
|
+
$e(se(D, ["prevent", "stop"]), ["enter"]),
|
|
3027
|
+
$e(se(D, ["prevent", "stop"]), ["space"])
|
|
3018
3028
|
]
|
|
3019
3029
|
}, [
|
|
3020
|
-
|
|
3021
|
-
toggle:
|
|
3022
|
-
open:
|
|
3023
|
-
disabled:
|
|
3024
|
-
activeCount: e(
|
|
3030
|
+
de(z.$slots, "trigger", {
|
|
3031
|
+
toggle: D,
|
|
3032
|
+
open: d.value,
|
|
3033
|
+
disabled: n.value,
|
|
3034
|
+
activeCount: e(p)
|
|
3025
3035
|
})
|
|
3026
|
-
], 42,
|
|
3036
|
+
], 42, Ko)) : (i(), w("button", {
|
|
3027
3037
|
key: 1,
|
|
3028
|
-
class:
|
|
3038
|
+
class: L(K.value),
|
|
3029
3039
|
type: "button",
|
|
3030
|
-
disabled:
|
|
3031
|
-
onClick: se(
|
|
3040
|
+
disabled: n.value,
|
|
3041
|
+
onClick: se(D, ["prevent", "stop"]),
|
|
3032
3042
|
"data-popover-trigger": ""
|
|
3033
3043
|
}, [
|
|
3034
|
-
|
|
3035
|
-
e(
|
|
3036
|
-
], 10,
|
|
3037
|
-
(
|
|
3038
|
-
|
|
3044
|
+
Q(Ue, { class: "h-4 w-4" }),
|
|
3045
|
+
e(p) > 0 ? (i(), w("div", Lo, B(e(p)), 1)) : V("", !0)
|
|
3046
|
+
], 10, Mo)),
|
|
3047
|
+
(i(), T(ge, { to: "body" }, [
|
|
3048
|
+
d.value ? (i(), w("div", {
|
|
3039
3049
|
key: 0,
|
|
3040
|
-
class:
|
|
3041
|
-
style: be(
|
|
3050
|
+
class: L(["absolute", typeof z.width == "number" ? `min-w-[${z.width + 32 + (Object.keys(r.value).length > 7 ? 20 : 0)}px]` : "min-w-[268px] "]),
|
|
3051
|
+
style: be(M.value),
|
|
3042
3052
|
ref_key: "panel",
|
|
3043
|
-
ref:
|
|
3044
|
-
onClick:
|
|
3053
|
+
ref: _,
|
|
3054
|
+
onClick: j[4] || (j[4] = se(() => {
|
|
3045
3055
|
}, ["stop"]))
|
|
3046
3056
|
}, [
|
|
3047
|
-
|
|
3048
|
-
|
|
3049
|
-
|
|
3050
|
-
|
|
3057
|
+
s("div", Oo, [
|
|
3058
|
+
s("div", Eo, [
|
|
3059
|
+
s("h3", To, B(b.value), 1),
|
|
3060
|
+
s("button", {
|
|
3051
3061
|
type: "button",
|
|
3052
3062
|
class: "inline-flex h-6 w-6 items-center justify-center rounded-full border-0 bg-slate-300/40 text-slate-600 transition-colors hover:bg-blue-200/60 hover:text-blue-600 focus:outline-none focus:ring-2 focus:ring-blue-200",
|
|
3053
|
-
onClick:
|
|
3063
|
+
onClick: $
|
|
3054
3064
|
}, [
|
|
3055
|
-
|
|
3056
|
-
|
|
3065
|
+
s("span", Io, [
|
|
3066
|
+
Q(Ce, { class: "h-4 w-4" })
|
|
3057
3067
|
]),
|
|
3058
|
-
|
|
3068
|
+
j[5] || (j[5] = s("span", { class: "sr-only" }, "Закрити", -1))
|
|
3059
3069
|
])
|
|
3060
3070
|
]),
|
|
3061
|
-
|
|
3062
|
-
Object.keys(
|
|
3063
|
-
width:
|
|
3064
|
-
class: [
|
|
3065
|
-
"item-class": [
|
|
3071
|
+
s("div", Uo, [
|
|
3072
|
+
Object.keys(r.value).length ? (i(!0), w(U, { key: 0 }, X(Object.entries(r.value), ([O, P]) => (i(), T(le, J({ key: O }, { ref_for: !0 }, { ...P, layout: "inline" }, {
|
|
3073
|
+
width: z.width ? z.width : P?.width,
|
|
3074
|
+
class: [z.itemClass, P?.class],
|
|
3075
|
+
"item-class": [z.itemClass, P?.itemClass].filter(Boolean).join(" ") || void 0,
|
|
3066
3076
|
cleanable: !0,
|
|
3067
|
-
modelValue: e(
|
|
3068
|
-
"onUpdate:modelValue": (
|
|
3069
|
-
onChange:
|
|
3070
|
-
onClear:
|
|
3071
|
-
e(
|
|
3077
|
+
modelValue: e(c)[O],
|
|
3078
|
+
"onUpdate:modelValue": (Y) => e(c)[O] = Y,
|
|
3079
|
+
onChange: j[0] || (j[0] = (Y) => e(x)(Y.name, Y.value)),
|
|
3080
|
+
onClear: j[1] || (j[1] = (Y) => {
|
|
3081
|
+
e(f)(Y), e(x)(Y, void 0);
|
|
3072
3082
|
})
|
|
3073
|
-
}), null, 16, ["width", "class", "item-class", "modelValue", "onUpdate:modelValue"]))), 128)) :
|
|
3074
|
-
(
|
|
3075
|
-
key: "slot-" +
|
|
3083
|
+
}), null, 16, ["width", "class", "item-class", "modelValue", "onUpdate:modelValue"]))), 128)) : V("", !0),
|
|
3084
|
+
(i(!0), w(U, null, X(e(u), (O, P) => (i(), T(le, J({
|
|
3085
|
+
key: "slot-" + P,
|
|
3076
3086
|
ref_for: !0
|
|
3077
|
-
}, { ...
|
|
3078
|
-
class: [
|
|
3079
|
-
"item-class": [
|
|
3087
|
+
}, { ...O.props, layout: "inline" }, {
|
|
3088
|
+
class: [z.itemClass, O.props?.class],
|
|
3089
|
+
"item-class": [z.itemClass, O.props?.itemClass].filter(Boolean).join(" ") || void 0,
|
|
3080
3090
|
cleanable: !0,
|
|
3081
|
-
modelValue: e(
|
|
3082
|
-
"onUpdate:modelValue": (
|
|
3083
|
-
onChange:
|
|
3084
|
-
onClear:
|
|
3085
|
-
e(
|
|
3091
|
+
modelValue: e(c)[O.props.name],
|
|
3092
|
+
"onUpdate:modelValue": (Y) => e(c)[O.props.name] = Y,
|
|
3093
|
+
onChange: j[2] || (j[2] = (Y) => e(x)(Y.name, Y.value)),
|
|
3094
|
+
onClear: j[3] || (j[3] = (Y) => {
|
|
3095
|
+
e(f)(Y), e(x)(Y, void 0);
|
|
3086
3096
|
})
|
|
3087
3097
|
}), null, 16, ["class", "item-class", "modelValue", "onUpdate:modelValue"]))), 128))
|
|
3088
3098
|
]),
|
|
3089
|
-
e(
|
|
3090
|
-
|
|
3099
|
+
e(p) > 0 ? (i(), w("div", zo, [
|
|
3100
|
+
s("button", {
|
|
3091
3101
|
type: "button",
|
|
3092
|
-
class:
|
|
3093
|
-
onClick:
|
|
3094
|
-
}, B(e(
|
|
3095
|
-
])) :
|
|
3102
|
+
class: L([z.itemClass, "text-sm font-semibold text-blue-600 transition-colors hover:text-blue-700 focus:outline-none"]),
|
|
3103
|
+
onClick: N
|
|
3104
|
+
}, B(e(y)("filter.clear")), 3)
|
|
3105
|
+
])) : V("", !0)
|
|
3096
3106
|
])
|
|
3097
|
-
], 6)) :
|
|
3107
|
+
], 6)) : V("", !0)
|
|
3098
3108
|
]))
|
|
3099
3109
|
], 512));
|
|
3100
3110
|
}
|
|
3101
|
-
}),
|
|
3111
|
+
}), Ke = /* @__PURE__ */ q({
|
|
3102
3112
|
__name: "filter",
|
|
3103
3113
|
props: {
|
|
3104
3114
|
schema: {},
|
|
@@ -3114,133 +3124,141 @@ const Ue = /* @__PURE__ */ te(sa, [["render", ua]]), ca = { class: "flex items-c
|
|
|
3114
3124
|
itemClass: {}
|
|
3115
3125
|
},
|
|
3116
3126
|
emits: ["change", "clear", "clearAll"],
|
|
3117
|
-
setup(
|
|
3118
|
-
const
|
|
3119
|
-
|
|
3120
|
-
|
|
3121
|
-
|
|
3122
|
-
|
|
3123
|
-
|
|
3124
|
-
|
|
3125
|
-
|
|
3126
|
-
|
|
3127
|
+
setup(m, { expose: o, emit: y }) {
|
|
3128
|
+
const t = m, a = A(p(t.value ?? {}));
|
|
3129
|
+
I(
|
|
3130
|
+
() => t.value,
|
|
3131
|
+
async (d) => {
|
|
3132
|
+
a.value = p(d ?? {}), (!d || Object.keys(d).length === 0) && (await fe(), g.value?.clearAllFilters?.(!0));
|
|
3133
|
+
},
|
|
3134
|
+
{ deep: !0, immediate: !0 }
|
|
3135
|
+
);
|
|
3136
|
+
const l = y, g = A(), c = pe();
|
|
3137
|
+
function p(d) {
|
|
3138
|
+
if (Array.isArray(d))
|
|
3139
|
+
return d.map((n) => p(n));
|
|
3140
|
+
if (d !== null && typeof d == "object") {
|
|
3141
|
+
const n = ue(d), r = {};
|
|
3142
|
+
for (const b in n)
|
|
3143
|
+
r[b] = p(n[b]);
|
|
3144
|
+
return r;
|
|
3127
3145
|
}
|
|
3128
|
-
return
|
|
3146
|
+
return d;
|
|
3129
3147
|
}
|
|
3130
|
-
function
|
|
3131
|
-
|
|
3132
|
-
...
|
|
3133
|
-
[
|
|
3134
|
-
} : delete
|
|
3135
|
-
data:
|
|
3136
|
-
name:
|
|
3137
|
-
value:
|
|
3148
|
+
function x(d, n) {
|
|
3149
|
+
n !== void 0 ? a.value = {
|
|
3150
|
+
...a.value,
|
|
3151
|
+
[d]: n
|
|
3152
|
+
} : delete a.value[d], l("change", {
|
|
3153
|
+
data: p(a.value),
|
|
3154
|
+
name: d,
|
|
3155
|
+
value: p(n)
|
|
3138
3156
|
});
|
|
3139
3157
|
}
|
|
3140
|
-
function
|
|
3141
|
-
delete
|
|
3142
|
-
data:
|
|
3143
|
-
name:
|
|
3144
|
-
}),
|
|
3145
|
-
data:
|
|
3146
|
-
name:
|
|
3158
|
+
function f(d) {
|
|
3159
|
+
delete a.value[d], l("clear", {
|
|
3160
|
+
data: p(a.value),
|
|
3161
|
+
name: d
|
|
3162
|
+
}), l("change", {
|
|
3163
|
+
data: p(a.value),
|
|
3164
|
+
name: d,
|
|
3147
3165
|
value: null
|
|
3148
3166
|
});
|
|
3149
3167
|
}
|
|
3150
|
-
function
|
|
3151
|
-
|
|
3152
|
-
data:
|
|
3168
|
+
function v() {
|
|
3169
|
+
a.value = {}, l("clear", {
|
|
3170
|
+
data: p(a.value),
|
|
3153
3171
|
name: "ALL"
|
|
3154
|
-
}),
|
|
3155
|
-
data:
|
|
3172
|
+
}), l("change", {
|
|
3173
|
+
data: p(a.value),
|
|
3156
3174
|
name: "ALL",
|
|
3157
3175
|
value: null
|
|
3158
3176
|
});
|
|
3159
3177
|
}
|
|
3160
|
-
const
|
|
3178
|
+
const u = A({});
|
|
3161
3179
|
function k() {
|
|
3162
|
-
switch (
|
|
3180
|
+
switch (t.view) {
|
|
3163
3181
|
case "inline":
|
|
3164
|
-
return
|
|
3182
|
+
return Fe;
|
|
3165
3183
|
case "vertical":
|
|
3166
|
-
return
|
|
3184
|
+
return Fo;
|
|
3167
3185
|
case "popover":
|
|
3168
3186
|
return ze;
|
|
3169
3187
|
case "popover-inline":
|
|
3170
|
-
return
|
|
3188
|
+
return No;
|
|
3171
3189
|
default:
|
|
3172
|
-
return
|
|
3190
|
+
return Fe;
|
|
3173
3191
|
}
|
|
3174
3192
|
}
|
|
3175
3193
|
I(
|
|
3176
|
-
() =>
|
|
3177
|
-
(
|
|
3178
|
-
if (!
|
|
3179
|
-
|
|
3194
|
+
() => t.schema,
|
|
3195
|
+
(d) => {
|
|
3196
|
+
if (!d) {
|
|
3197
|
+
u.value = {};
|
|
3180
3198
|
return;
|
|
3181
3199
|
}
|
|
3182
|
-
if (Array.isArray(
|
|
3183
|
-
|
|
3200
|
+
if (Array.isArray(d) && !d.length) {
|
|
3201
|
+
u.value = {};
|
|
3184
3202
|
return;
|
|
3185
3203
|
}
|
|
3186
|
-
Array.isArray(
|
|
3187
|
-
name:
|
|
3188
|
-
type: { datepicker: "date" }[
|
|
3189
|
-
label:
|
|
3190
|
-
}),
|
|
3191
|
-
Object.assign(
|
|
3192
|
-
}),
|
|
3204
|
+
Array.isArray(d) ? u.value = d.filter((n) => n.type).reduce((n, r) => (Object.assign(r, {
|
|
3205
|
+
name: r.id || r.name,
|
|
3206
|
+
type: { datepicker: "date" }[r.type.toLowerCase()] || r.type.toLowerCase(),
|
|
3207
|
+
label: r.label || r.ua
|
|
3208
|
+
}), n[r.name] = r, r.data && !r.api && !r.options && Object.assign(r, { api: `/api/suggest/${r.data}` }), n), {}) : (Object.entries(d).forEach(([n, r]) => {
|
|
3209
|
+
Object.assign(r, { name: n || r.name || r.id, type: r.type.toLowerCase() });
|
|
3210
|
+
}), u.value = { ...d });
|
|
3193
3211
|
},
|
|
3194
3212
|
{ immediate: !0, deep: !0 }
|
|
3195
3213
|
);
|
|
3196
|
-
function
|
|
3197
|
-
|
|
3214
|
+
function _(d) {
|
|
3215
|
+
g.value.clearFilter(d), f(d);
|
|
3198
3216
|
}
|
|
3199
3217
|
function C() {
|
|
3200
|
-
|
|
3218
|
+
g.value.clearAllFilters(), v();
|
|
3201
3219
|
}
|
|
3202
3220
|
return I(
|
|
3203
|
-
() =>
|
|
3204
|
-
(
|
|
3205
|
-
if (
|
|
3206
|
-
const
|
|
3207
|
-
Object.keys(
|
|
3221
|
+
() => a.value,
|
|
3222
|
+
(d) => {
|
|
3223
|
+
if (t.history) {
|
|
3224
|
+
const n = new URL(window.location.href), r = new URLSearchParams(window.location.search);
|
|
3225
|
+
Object.keys(d).length > 0 ? r.set(
|
|
3208
3226
|
"filter",
|
|
3209
|
-
Object.entries(
|
|
3210
|
-
) :
|
|
3227
|
+
Object.entries(d).filter(([, b]) => b).map(([b, h]) => `${b}=${h}`).join("|")
|
|
3228
|
+
) : r.delete("filter"), n.search = decodeURI(r.toString()), window.history.pushState({}, "", n);
|
|
3211
3229
|
}
|
|
3212
3230
|
}
|
|
3213
3231
|
), o({
|
|
3214
3232
|
clearAllFilters: C,
|
|
3215
|
-
clearFilter:
|
|
3216
|
-
}), (
|
|
3217
|
-
schema:
|
|
3218
|
-
onChange:
|
|
3219
|
-
onClear:
|
|
3220
|
-
onClearAll:
|
|
3233
|
+
clearFilter: _
|
|
3234
|
+
}), (d, n) => (i(), T(ne(k()), J(t, {
|
|
3235
|
+
schema: u.value,
|
|
3236
|
+
onChange: n[0] || (n[0] = (r) => x(r.name, r.value)),
|
|
3237
|
+
onClear: n[1] || (n[1] = (r) => f(r.name)),
|
|
3238
|
+
onClearAll: v,
|
|
3221
3239
|
ref_key: "filterRef",
|
|
3222
|
-
ref:
|
|
3240
|
+
ref: g
|
|
3223
3241
|
}), Qe({
|
|
3224
|
-
default:
|
|
3225
|
-
|
|
3242
|
+
default: ae(() => [
|
|
3243
|
+
de(d.$slots, "default")
|
|
3226
3244
|
]),
|
|
3227
3245
|
_: 2
|
|
3228
3246
|
}, [
|
|
3229
|
-
e(
|
|
3247
|
+
e(c).trigger ? {
|
|
3230
3248
|
name: "trigger",
|
|
3231
|
-
fn:
|
|
3232
|
-
|
|
3249
|
+
fn: ae((r) => [
|
|
3250
|
+
de(d.$slots, "trigger", He(Ge(r)))
|
|
3233
3251
|
]),
|
|
3234
3252
|
key: "0"
|
|
3235
3253
|
} : void 0
|
|
3236
3254
|
]), 1040, ["schema"]));
|
|
3237
3255
|
}
|
|
3238
3256
|
});
|
|
3239
|
-
|
|
3240
|
-
o.component("Filter",
|
|
3257
|
+
Ke.install = function(o) {
|
|
3258
|
+
o.component("Filter", Ke), o.component("FilterField", le);
|
|
3241
3259
|
};
|
|
3242
3260
|
export {
|
|
3243
|
-
|
|
3261
|
+
Ke as Filter,
|
|
3244
3262
|
le as FilterField,
|
|
3245
|
-
|
|
3263
|
+
Ke as default
|
|
3246
3264
|
};
|