@feedmepos/mf-common 1.27.6 → 1.27.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{CustomAttributesForm-05d5b316.js → CustomAttributesForm-9af4a917.js} +1 -1
- package/dist/{ItemSelector-b13afc4e.js → ItemSelector-7f86b7a1.js} +9418 -9287
- package/dist/RestaurantSelector-1d17c411.js +244 -0
- package/dist/{app-f8b2e389.js → app-d45aa4b4.js} +3 -3
- package/dist/app.js +2 -2
- package/dist/components/RestaurantSelector.vue.d.ts.map +1 -1
- package/dist/tsconfig.app.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/dist/RestaurantSelector-571a07f4.js +0 -242
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
import { ref as S, computed as o, defineComponent as ae, mergeModels as ne, useModel as ue, watch as j, resolveComponent as k, openBlock as i, createElementBlock as b, createElementVNode as C, createVNode as y, withCtx as L, normalizeClass as re, toDisplayString as oe, createCommentVNode as N, createBlock as O, withModifiers as K, unref as g, isRef as se, Fragment as Q, renderList as T, renderSlot as ie, nextTick as ce } from "vue";
|
|
2
|
+
import { t as ve, u as de, a as fe, O as E, b as me } from "./app-d45aa4b4.js";
|
|
3
|
+
import "@feedmepos/ui-library";
|
|
4
|
+
import "pinia";
|
|
5
|
+
import "vue-router";
|
|
6
|
+
function pe(f, t, c = f) {
|
|
7
|
+
const a = S(!0), v = o(() => {
|
|
8
|
+
if (!a.value && !t.value)
|
|
9
|
+
return !0;
|
|
10
|
+
if (t.value && t.value.length > 0) {
|
|
11
|
+
const u = new Set(c.value.map((n) => n.value));
|
|
12
|
+
return t.value.length === c.value.length && t.value.every((n) => u.has(n));
|
|
13
|
+
}
|
|
14
|
+
return !1;
|
|
15
|
+
}), x = o(() => {
|
|
16
|
+
var u, n, h, m;
|
|
17
|
+
return !!((u = t.value) != null && u.length && ((n = t.value) == null ? void 0 : n.length) > 0 && ((h = t.value) == null ? void 0 : h.length) < ((m = f.value) == null ? void 0 : m.length));
|
|
18
|
+
});
|
|
19
|
+
return { allCleared: a, allSelected: v, indeterminate: x, toggleAll: () => {
|
|
20
|
+
if (v.value) {
|
|
21
|
+
t.value = void 0, a.value = !0;
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
const u = c.value.map((n) => n.value);
|
|
25
|
+
u.length === f.value.length ? (t.value = void 0, a.value = !1) : (t.value = u, a.value = !1);
|
|
26
|
+
}, toggleOption: (u) => {
|
|
27
|
+
var h, m, w;
|
|
28
|
+
let n;
|
|
29
|
+
t.value === void 0 && a.value ? n = [u] : t.value === void 0 && !a.value ? n = (h = f.value.map((p) => p.value)) == null ? void 0 : h.filter((p) => p !== u) : (m = t.value) != null && m.includes(u) ? n = (w = t.value) == null ? void 0 : w.filter((p) => p !== u) : n = [...t.value || [], u], n.length === 0 ? (t.value = void 0, a.value = !0) : n.length === f.value.length ? (t.value = void 0, a.value = !1) : t.value = n;
|
|
30
|
+
} };
|
|
31
|
+
}
|
|
32
|
+
const ge = { class: "w-full flex flex-col gap-8" }, he = { class: "flex items-center gap-8" }, be = { class: "inline-flex items-center" }, ye = { class: "flex flex-col w-[360px] min-h-0 gap-8" }, _e = { class: "flex gap-4 px-[6px]" }, ke = { class: "flex-1" }, Ce = { class: "flex-1 overflow-y-auto min-h-0" }, Se = { key: 0 }, Me = /* @__PURE__ */ ae({
|
|
33
|
+
__name: "RestaurantSelector",
|
|
34
|
+
props: /* @__PURE__ */ ne({
|
|
35
|
+
multiple: { type: Boolean, default: !1 },
|
|
36
|
+
excludeRestaurants: {},
|
|
37
|
+
managableOnly: { type: Boolean, default: !0 },
|
|
38
|
+
disabled: { type: Boolean, default: !1 },
|
|
39
|
+
variant: { default: "default" },
|
|
40
|
+
autoSelectFirst: { type: Boolean, default: !1 }
|
|
41
|
+
}, {
|
|
42
|
+
modelValue: {},
|
|
43
|
+
modelModifiers: {}
|
|
44
|
+
}),
|
|
45
|
+
emits: ["update:modelValue"],
|
|
46
|
+
setup(f) {
|
|
47
|
+
const t = f, { t: c } = ve(), a = ue(f, "modelValue"), { restaurants: v, restaurantAttributeSettings: x } = de(), R = o(() => v.value.length === 0);
|
|
48
|
+
function P(e) {
|
|
49
|
+
const l = v.value.map((_) => {
|
|
50
|
+
var A;
|
|
51
|
+
return (A = _.customAttributes) == null ? void 0 : A[e];
|
|
52
|
+
}).filter((_) => typeof _ == "string" && !!_);
|
|
53
|
+
return [...new Set(l)];
|
|
54
|
+
}
|
|
55
|
+
const u = o(() => x.value.map((e) => {
|
|
56
|
+
const l = P(e.key);
|
|
57
|
+
return {
|
|
58
|
+
...e,
|
|
59
|
+
values: l
|
|
60
|
+
};
|
|
61
|
+
})), { searchKey: n, filter: h } = fe(), m = S(null);
|
|
62
|
+
function w(e) {
|
|
63
|
+
var l;
|
|
64
|
+
if (t.multiple)
|
|
65
|
+
throw new Error("Single selection is not supported for multiple selection");
|
|
66
|
+
a.value = e, (l = m.value) == null || l.toggleMenu(!1);
|
|
67
|
+
}
|
|
68
|
+
const p = (e) => {
|
|
69
|
+
const { name: l, code: r } = e.profile;
|
|
70
|
+
return {
|
|
71
|
+
label: `${l} (${r ?? "--"})`,
|
|
72
|
+
value: e._id
|
|
73
|
+
};
|
|
74
|
+
}, M = o(() => v.value.map(p)), F = o(
|
|
75
|
+
() => v.value.filter((e) => t.managableOnly ? e.managable : !0).filter((e) => t.multiple ? !0 : E(e.customAttributes || {}, d.value)).map(p).filter(({ label: e }) => h([e])).filter((e) => {
|
|
76
|
+
var l;
|
|
77
|
+
return !((l = t.excludeRestaurants) != null && l.includes(e.value));
|
|
78
|
+
})
|
|
79
|
+
), W = o(() => {
|
|
80
|
+
var e;
|
|
81
|
+
return a.value ? a.value.length === 1 ? (e = M.value.find((l) => {
|
|
82
|
+
var r;
|
|
83
|
+
return l.value === ((r = a.value) == null ? void 0 : r[0]);
|
|
84
|
+
})) == null ? void 0 : e.label : c("portalshell.components.restaurantSelector.restaurantCount", {
|
|
85
|
+
count: a.value.length
|
|
86
|
+
}) : c("portalshell.components.restaurantSelector.allRestaurants");
|
|
87
|
+
}), q = o(() => {
|
|
88
|
+
var e;
|
|
89
|
+
return a.value ? ((e = M.value.find((l) => l.value === a.value)) == null ? void 0 : e.label) || c("portalshell.components.restaurantSelector.unknownRestaurant") : c("portalshell.components.restaurantSelector.selectRestaurant");
|
|
90
|
+
}), D = o(() => t.multiple ? W.value : q.value), B = o(() => t.disabled ? "neutral-gray-200" : t.variant === "dark" ? "neutral-black" : "neutral-gray-400"), G = o(() => t.disabled ? "text-fm-color-neutral-gray-200" : t.variant === "dark" ? "text-fm-color-neutral-black" : "text-fm-color-neutral-gray-400"), { allSelected: U, toggleAll: H, toggleOption: J, indeterminate: X } = pe(
|
|
91
|
+
M,
|
|
92
|
+
a,
|
|
93
|
+
F
|
|
94
|
+
), V = S(!1), Y = o(() => x.value.length > 0), z = S(null);
|
|
95
|
+
async function Z() {
|
|
96
|
+
t.disabled || (V.value ? V.value = !1 : (V.value = !0, await ce(), z.value && z.value.toggleProperty(!0)));
|
|
97
|
+
}
|
|
98
|
+
const d = S((() => ({
|
|
99
|
+
logic: "AND",
|
|
100
|
+
rules: []
|
|
101
|
+
}))()), ee = o(() => {
|
|
102
|
+
var e, l;
|
|
103
|
+
return ((l = (e = d.value) == null ? void 0 : e.rules) == null ? void 0 : l.length) || 0;
|
|
104
|
+
});
|
|
105
|
+
return j(
|
|
106
|
+
d,
|
|
107
|
+
() => {
|
|
108
|
+
var e;
|
|
109
|
+
if (t.multiple) {
|
|
110
|
+
if (!d.value || d.value.rules.length === 0) {
|
|
111
|
+
a.value = null;
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
const l = v.value.filter((r) => E(r.customAttributes || {}, d.value));
|
|
115
|
+
a.value = l.map((r) => r._id);
|
|
116
|
+
} else {
|
|
117
|
+
const l = v.value.filter((r) => E(r.customAttributes || {}, d.value));
|
|
118
|
+
l.length === 0 ? a.value = null : a.value = (e = l[0]) == null ? void 0 : e._id;
|
|
119
|
+
}
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
deep: !0
|
|
123
|
+
}
|
|
124
|
+
), j(
|
|
125
|
+
[() => t.autoSelectFirst, F],
|
|
126
|
+
([e, l]) => {
|
|
127
|
+
e && l.length > 0 && !a.value && (a.value = l[0].value);
|
|
128
|
+
},
|
|
129
|
+
{ immediate: !0 }
|
|
130
|
+
), (e, l) => {
|
|
131
|
+
const r = k("FmIcon"), _ = k("FmCircularProgress"), A = k("FmChip"), le = k("FmSearch"), $ = k("FmMenuItem"), te = k("FmMenu");
|
|
132
|
+
return i(), b("div", ge, [
|
|
133
|
+
C("div", he, [
|
|
134
|
+
y(te, {
|
|
135
|
+
"close-on-click": !1,
|
|
136
|
+
disabled: e.disabled || R.value,
|
|
137
|
+
ref_key: "menuRef",
|
|
138
|
+
ref: m,
|
|
139
|
+
"z-index": 50,
|
|
140
|
+
"selector-for-dismiss-away-event-exclusion": ".fm-dialog, .fm-select__menu__wrapper"
|
|
141
|
+
}, {
|
|
142
|
+
"menu-button": L(() => [
|
|
143
|
+
C("div", be, [
|
|
144
|
+
y(A, { disabled: e.disabled }, {
|
|
145
|
+
default: L(() => [
|
|
146
|
+
y(r, {
|
|
147
|
+
color: B.value,
|
|
148
|
+
name: "storefront",
|
|
149
|
+
outline: "",
|
|
150
|
+
size: "sm"
|
|
151
|
+
}, null, 8, ["color"]),
|
|
152
|
+
D.value ? (i(), b("div", {
|
|
153
|
+
key: 0,
|
|
154
|
+
class: re([
|
|
155
|
+
"fm-typo-en-body-md-600 select-none text-ellipsis overflow-hidden whitespace-nowrap",
|
|
156
|
+
G.value
|
|
157
|
+
])
|
|
158
|
+
}, oe(D.value), 3)) : N("", !0),
|
|
159
|
+
R.value ? (i(), O(_, {
|
|
160
|
+
key: 1,
|
|
161
|
+
size: "md"
|
|
162
|
+
})) : (i(), O(r, {
|
|
163
|
+
key: 2,
|
|
164
|
+
color: B.value,
|
|
165
|
+
name: "keyboard_arrow_down",
|
|
166
|
+
size: "sm"
|
|
167
|
+
}, null, 8, ["color"])),
|
|
168
|
+
Y.value ? (i(), b("div", {
|
|
169
|
+
key: 3,
|
|
170
|
+
class: "pl-8 flex items-center justify-center border-l border-fm-color-neutral-gray-200",
|
|
171
|
+
onClick: K(Z, ["stop"])
|
|
172
|
+
}, [
|
|
173
|
+
y(r, {
|
|
174
|
+
name: "filter_alt",
|
|
175
|
+
size: "sm",
|
|
176
|
+
outline: ee.value === 0,
|
|
177
|
+
color: B.value,
|
|
178
|
+
onClick: l[0] || (l[0] = K(() => {
|
|
179
|
+
}, ["prevent"]))
|
|
180
|
+
}, null, 8, ["outline", "color"])
|
|
181
|
+
])) : N("", !0)
|
|
182
|
+
]),
|
|
183
|
+
_: 1
|
|
184
|
+
}, 8, ["disabled"])
|
|
185
|
+
])
|
|
186
|
+
]),
|
|
187
|
+
default: L(() => [
|
|
188
|
+
C("div", ye, [
|
|
189
|
+
C("div", _e, [
|
|
190
|
+
C("div", ke, [
|
|
191
|
+
y(le, {
|
|
192
|
+
modelValue: g(n),
|
|
193
|
+
"onUpdate:modelValue": l[1] || (l[1] = (s) => se(n) ? n.value = s : null),
|
|
194
|
+
placeholder: g(c)("common.search")
|
|
195
|
+
}, null, 8, ["modelValue", "placeholder"])
|
|
196
|
+
])
|
|
197
|
+
]),
|
|
198
|
+
C("div", Ce, [
|
|
199
|
+
e.multiple ? (i(), b(Q, { key: 0 }, [
|
|
200
|
+
y($, {
|
|
201
|
+
label: "All",
|
|
202
|
+
"has-checkbox": "",
|
|
203
|
+
"model-value": g(U),
|
|
204
|
+
indeterminate: g(X),
|
|
205
|
+
onClick: g(H)
|
|
206
|
+
}, null, 8, ["model-value", "indeterminate", "onClick"]),
|
|
207
|
+
(i(!0), b(Q, null, T(F.value, (s) => {
|
|
208
|
+
var I;
|
|
209
|
+
return i(), O($, {
|
|
210
|
+
key: s.value,
|
|
211
|
+
label: s.label,
|
|
212
|
+
"has-checkbox": "",
|
|
213
|
+
"model-value": g(U) || ((I = a.value) == null ? void 0 : I.includes(s.value)),
|
|
214
|
+
onClick: (we) => g(J)(s.value)
|
|
215
|
+
}, null, 8, ["label", "model-value", "onClick"]);
|
|
216
|
+
}), 128))
|
|
217
|
+
], 64)) : (i(!0), b(Q, { key: 1 }, T(F.value, (s) => (i(), O($, {
|
|
218
|
+
key: s.value,
|
|
219
|
+
label: s.label,
|
|
220
|
+
onClick: (I) => w(s.value)
|
|
221
|
+
}, null, 8, ["label", "onClick"]))), 128))
|
|
222
|
+
])
|
|
223
|
+
])
|
|
224
|
+
]),
|
|
225
|
+
_: 1
|
|
226
|
+
}, 8, ["disabled"]),
|
|
227
|
+
ie(e.$slots, "append-right")
|
|
228
|
+
]),
|
|
229
|
+
V.value ? (i(), b("div", Se, [
|
|
230
|
+
y(g(me), {
|
|
231
|
+
ref_key: "filterRef",
|
|
232
|
+
ref: z,
|
|
233
|
+
attributes: u.value,
|
|
234
|
+
modelValue: d.value,
|
|
235
|
+
"onUpdate:modelValue": l[2] || (l[2] = (s) => d.value = s)
|
|
236
|
+
}, null, 8, ["attributes", "modelValue"])
|
|
237
|
+
])) : N("", !0)
|
|
238
|
+
]);
|
|
239
|
+
};
|
|
240
|
+
}
|
|
241
|
+
});
|
|
242
|
+
export {
|
|
243
|
+
Me as default
|
|
244
|
+
};
|
|
@@ -49631,10 +49631,10 @@ const kO = /* @__PURE__ */ Ad(SO, [["__scopeId", "data-v-318fbbc5"]]), fO = { cl
|
|
|
49631
49631
|
}, 8, ["dropdown-opened", "apps", "businesses", "countries", "current-app", "current-business", "current-country", "user", "embedded", "hide-app-drawer"]));
|
|
49632
49632
|
}
|
|
49633
49633
|
}), gx = JN(
|
|
49634
|
-
() => import("./CustomAttributesForm-
|
|
49634
|
+
() => import("./CustomAttributesForm-9af4a917.js")
|
|
49635
49635
|
), vx = JN(
|
|
49636
|
-
() => import("./RestaurantSelector-
|
|
49637
|
-
), Yx = JN(() => import("./ItemSelector-
|
|
49636
|
+
() => import("./RestaurantSelector-1d17c411.js")
|
|
49637
|
+
), Yx = JN(() => import("./ItemSelector-7f86b7a1.js")), zO = {
|
|
49638
49638
|
yes: "Yes",
|
|
49639
49639
|
no: "No",
|
|
49640
49640
|
ok: "OK",
|
package/dist/app.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { p as s } from "./app-
|
|
2
|
-
import { C as u, E as m, r as M, H as E, J as P, F as S, z as p, h as c, I as d, P as g, _ as C, R as _, g as h, K as F, B as R, m as A, x as y, A as O, k as I, i as L, n as T, M as b, w as G, s as N, v as Q, o as U, L as f, D as w, N as x, u as B, j as D, q as Y, t as v, G as z, y as V } from "./app-
|
|
1
|
+
import { p as s } from "./app-d45aa4b4.js";
|
|
2
|
+
import { C as u, E as m, r as M, H as E, J as P, F as S, z as p, h as c, I as d, P as g, _ as C, R as _, g as h, K as F, B as R, m as A, x as y, A as O, k as I, i as L, n as T, M as b, w as G, s as N, v as Q, o as U, L as f, D as w, N as x, u as B, j as D, q as Y, t as v, G as z, y as V } from "./app-d45aa4b4.js";
|
|
3
3
|
import "pinia";
|
|
4
4
|
import "vue";
|
|
5
5
|
import "vue-router";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RestaurantSelector.vue.d.ts","sourceRoot":"","sources":["../../../src/components/RestaurantSelector.vue.ts"],"names":[],"mappings":"AAkBA,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAC5B,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"RestaurantSelector.vue.d.ts","sourceRoot":"","sources":["../../../src/components/RestaurantSelector.vue.ts"],"names":[],"mappings":"AAkBA,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAC5B,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmlBD,wBAAwG;AAUxG,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAAE,QAAO;QAClD,MAAM,EAAE,CAAC,CAAC;KACT,CAAA;CAAE,CAAC"}
|