@feedmepos/mf-menu 0.32.60 → 0.32.61-dev.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{App-qJJD8JDg.js → App-BlPyUGB_.js} +1456 -1331
- package/dist/{ApplyProduct.vue_vue_type_script_setup_true_lang-3IAymj0v.js → ApplyProduct.vue_vue_type_script_setup_true_lang-B4PAatkS.js} +3 -3
- package/dist/{ApplyProductDialog.vue_vue_type_script_setup_true_lang-BCaHfdwI.js → ApplyProductDialog.vue_vue_type_script_setup_true_lang-DwANkY0s.js} +2 -2
- package/dist/{Catalog-BJLVNbtg.js → Catalog-B5MZeM6K.js} +6 -6
- package/dist/{Category-BvSlf9Jr.js → Category-CI_NWg74.js} +4 -4
- package/dist/{Category-CdZbMTjh.js → Category-D9KrU2k8.js} +4 -4
- package/dist/{CookingGuide-DZuBUaAY.js → CookingGuide-Cf1CHQ-X.js} +4 -4
- package/dist/{CustomAttributeChip.vue_vue_type_script_setup_true_lang-D6j6hf94.js → CustomAttributeChip.vue_vue_type_script_setup_true_lang-CCHkXBZD.js} +1 -1
- package/dist/{Group-CHPX3H86.js → Group-CWi-0hkW.js} +3 -3
- package/dist/{Group-DmFHx6jN.js → Group-CuZ7PCKT.js} +1 -1
- package/dist/{Group.vue_vue_type_script_setup_true_lang-DZSl5qcO.js → Group.vue_vue_type_script_setup_true_lang-BfMyMQ_H.js} +6 -6
- package/dist/{GroupMarkupPriceDialog.vue_vue_type_script_setup_true_lang-B2bl86Fv.js → GroupMarkupPriceDialog.vue_vue_type_script_setup_true_lang-1ghoDbrV.js} +5 -5
- package/dist/{ImportProductDialog.vue_vue_type_script_setup_true_lang-DR8QkK1A.js → ImportProductDialog.vue_vue_type_script_setup_true_lang-BEkD_xvB.js} +2696 -2696
- package/dist/{Ingredient-D0KdIrJq.js → Ingredient-rn2OM-W7.js} +3 -3
- package/dist/{InventoryBinding.vue_vue_type_script_setup_true_lang-CgUfMeJA.js → InventoryBinding.vue_vue_type_script_setup_true_lang-BMBNdxYT.js} +2 -2
- package/dist/{LinkProductSideSheet-DekFylFC.js → LinkProductSideSheet-BAVjkhSM.js} +3 -3
- package/dist/{MenuSetting-myHnou7F.js → MenuSetting-B76zY-2b.js} +6 -6
- package/dist/{OrderPacing-MonT1vZe.js → OrderPacing-CJfw_U60.js} +5 -5
- package/dist/{PrintRoute-DN9Brbcf.js → PrintRoute-CDcbOaGr.js} +4 -4
- package/dist/{Product-lPh8v5hj.js → Product-8RzjWAbu.js} +1 -1
- package/dist/{Product.vue_vue_type_script_setup_true_lang-o7PbyjC5.js → Product.vue_vue_type_script_setup_true_lang-CI7XYUGZ.js} +12 -12
- package/dist/{ProductInternalTools-BG6HIIC7.js → ProductInternalTools-wpawK_Db.js} +6 -6
- package/dist/{Products-AqyIFFON.js → Products-B8vYu4il.js} +135 -135
- package/dist/{Publish-2bUhATD1.js → Publish-C5FqsnW3.js} +3 -3
- package/dist/{Recipe-CDguB2NC.js → Recipe-CJKji-0v.js} +4 -4
- package/dist/{RestaurantAttributesSelector.vue_vue_type_script_setup_true_lang-DiDtVQmO.js → RestaurantAttributesSelector.vue_vue_type_script_setup_true_lang-Dv69QGDe.js} +1 -1
- package/dist/{RuleView.vue_vue_type_script_setup_true_lang-DATrEmoz.js → RuleView.vue_vue_type_script_setup_true_lang-CnEkf8GW.js} +449 -449
- package/dist/{Scheduler-DY5kdIr1.js → Scheduler-Bp_4ZoUj.js} +3 -3
- package/dist/{ServingSequence-DV8JSkfn.js → ServingSequence-DchLB7W1.js} +55 -54
- package/dist/{Setting-C2iYE9Nf.js → Setting-DpAnRneC.js} +5 -5
- package/dist/{Subcategory-C3TDDesl.js → Subcategory-Bp_U6b_a.js} +5 -5
- package/dist/{Takeaway-1RTym_29.js → Takeaway-C6Yvjf9C.js} +1 -1
- package/dist/{Takeaway-DeKOn78v.js → Takeaway-eBz0avMT.js} +4 -4
- package/dist/{Takeaway.vue_vue_type_script_setup_true_lang-DCg5EZ-Q.js → Takeaway.vue_vue_type_script_setup_true_lang-s7cuAP0v.js} +5 -5
- package/dist/{Thumbnail.vue_vue_type_script_setup_true_lang-CZmN9QIF.js → Thumbnail.vue_vue_type_script_setup_true_lang-DBYG98Xu.js} +4 -4
- package/dist/{TranslationFieldSection.vue_vue_type_script_setup_true_lang-BzEjweqc.js → TranslationFieldSection.vue_vue_type_script_setup_true_lang-BFwvDgDG.js} +1 -1
- package/dist/{TranslationSideSheet.vue_vue_type_script_setup_true_lang-qp1XGtIS.js → TranslationSideSheet.vue_vue_type_script_setup_true_lang-BVxnZnzd.js} +2 -2
- package/dist/{TreeEditorOpenner.vue_vue_type_script_setup_true_lang-jeDWAfrj.js → TreeEditorOpenner.vue_vue_type_script_setup_true_lang-mEghCiPA.js} +14 -14
- package/dist/{Unit-CWf321-e.js → Unit-B6bKPZIQ.js} +2 -2
- package/dist/{Variant-DPbgLfVh.js → Variant-CJdpBl1K.js} +3 -3
- package/dist/{_id_-BGo_iZ3b.js → _id_-Cf17CNOX.js} +9 -9
- package/dist/{app-CUT-XiX7.js → app-BoMWSx89.js} +33 -33
- package/dist/{app-17c6pvZw.js → app-w1kUpkW5.js} +1 -1
- package/dist/app.js +1 -1
- package/dist/apps/mf-menu/src/api/index.d.ts +1 -0
- package/dist/apps/mf-menu/src/components/MenuHeaderContext.vue.d.ts +2 -0
- package/dist/apps/mf-menu/src/components/MenuRestaurantSelector.vue.d.ts +29 -0
- package/dist/apps/mf-menu/src/stores/menu.d.ts +1 -0
- package/dist/apps/mf-menu/tsconfig.app.tsbuildinfo +1 -1
- package/dist/assets/{linked-status-D1ElNa8U.js → linked-status-BqJWUcVj.js} +2 -2
- package/dist/assets/menu-export-Dnxo90z1.js +186 -0
- package/dist/assets/{override-menu-DIisF_bD.js → override-menu-CYXqVELM.js} +2 -2
- package/dist/assets/{validate-menu-D_7tXxG5.js → validate-menu-C8UamASu.js} +2 -2
- package/dist/{catalog-0cjjJP7-.js → catalog-DBmh4WAG.js} +1 -1
- package/dist/{catalogSetting-D2bHVIkK.js → catalogSetting-DU1xmy0f.js} +1 -1
- package/dist/{currency-X4rTV0SS.js → currency-kg9-zbPt.js} +1 -1
- package/dist/{dayjs.min-BhGX_phM.js → dayjs.min-sFCfvj7o.js} +2 -2
- package/dist/{index-f8bZr7SF.js → index-Dsfx6bUc.js} +5 -5
- package/dist/{index-DbgT8DgR.js → index-y8EZTw6Z.js} +4 -4
- package/dist/{index.vue_vue_type_script_setup_true_lang-Bxs-AkVQ.js → index.vue_vue_type_script_setup_true_lang-BJLNbe5R.js} +49975 -39440
- package/dist/{item-9EebIIoe.js → item-COrHMvzn.js} +18 -18
- package/dist/{jszip.min-DU30B0hI.js → jszip.min-DUDMau14.js} +431 -431
- package/dist/{memberPricing-DPDxnp5u.js → memberPricing-CeRIT6MO.js} +1 -1
- package/dist/{menu-BCV_96fD.js → menu-CHgRB67k.js} +1 -1
- package/dist/{menuV2-DxGiWEWy.js → menuV2-BD8ZEaQH.js} +110 -106
- package/dist/mf-menu.css +1 -1
- package/dist/{order_pacing-DEN-iiUf.js → order_pacing-D1AnXxBm.js} +5 -5
- package/dist/{priceTier-5RWOh5Wn.js → priceTier-CoMN4KMU.js} +1 -1
- package/dist/{rules-Dzzqi10w.js → rules-DMR9hBYD.js} +3 -3
- package/dist/{scheduler-BjhDOBcr.js → scheduler-CKoiMRzw.js} +4 -4
- package/dist/{toExcel-oD9GONEM.js → toExcel-CwIaZ36w.js} +2 -2
- package/dist/{unit-D7C8fM49.js → unit-CQPZOeGq.js} +2 -2
- package/package.json +3 -3
- package/dist/assets/menu-export-BJnF70YD.js +0 -186
|
@@ -1,59 +1,59 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import { D as
|
|
3
|
-
import { J as re, F as ie } from "./jszip.min-
|
|
4
|
-
import { u as K, B as Q, z as
|
|
5
|
-
import { w as me } from "./ImportProductDialog.vue_vue_type_script_setup_true_lang-
|
|
6
|
-
import { h as
|
|
1
|
+
import { defineComponent as B, computed as f, ref as W, resolveComponent as F, createBlock as m, openBlock as l, unref as e, withCtx as _, createElementVNode as d, toDisplayString as Z, createVNode as u, createCommentVNode as w, createElementBlock as P, Fragment as U } from "vue";
|
|
2
|
+
import { D as T } from "./dayjs.min-sFCfvj7o.js";
|
|
3
|
+
import { J as re, F as ie } from "./jszip.min-DUDMau14.js";
|
|
4
|
+
import { u as K, B as Q, z as R, D as j, y as X, A as le, G as ue, H, I as ce } from "./index.vue_vue_type_script_setup_true_lang-BJLNbe5R.js";
|
|
5
|
+
import { w as me } from "./ImportProductDialog.vue_vue_type_script_setup_true_lang-BEkD_xvB.js";
|
|
6
|
+
import { h as V, A as q } from "./app-BoMWSx89.js";
|
|
7
7
|
import { useCoreStore as ee, useI18n as de } from "@feedmepos/mf-common";
|
|
8
|
-
import { useDialog as te, useDialogChild as pe, useSnackbar as ne, useBreakpoints as _e, FmButtonVariant as
|
|
9
|
-
import { _ as
|
|
8
|
+
import { useDialog as te, useDialogChild as pe, useSnackbar as ne, useBreakpoints as _e, FmButtonVariant as D, FmButtonColorThemeVariant as S } from "@feedmepos/ui-library";
|
|
9
|
+
import { _ as I } from "./ResponsiveFabButton.vue_vue_type_script_setup_true_lang-Cn-3MRBO.js";
|
|
10
10
|
import { _ as fe, a as G } from "./BottomSheetMenuItem.vue_vue_type_script_setup_true_lang-DhrXKy3b.js";
|
|
11
|
-
import { _ as
|
|
12
|
-
import { u as
|
|
13
|
-
import { u as ye } from "./item-
|
|
14
|
-
import { _ as O, a as ke } from "./Product.vue_vue_type_script_setup_true_lang-
|
|
15
|
-
import { L as J } from "./LinkProductSideSheet-
|
|
16
|
-
import { _ as xe } from "./TreeEditorOpenner.vue_vue_type_script_setup_true_lang-
|
|
17
|
-
import { u as Se } from "./Thumbnail.vue_vue_type_script_setup_true_lang-
|
|
18
|
-
import { m as he } from "./toExcel-
|
|
19
|
-
const Me = { class: "space-y-24 mb-24" }, Ce = ["innerHTML"],
|
|
11
|
+
import { _ as ve } from "./PageLayout.vue_vue_type_script_setup_true_lang-BVmHMvKD.js";
|
|
12
|
+
import { u as ge, a as be } from "./menu-CHgRB67k.js";
|
|
13
|
+
import { u as ye } from "./item-COrHMvzn.js";
|
|
14
|
+
import { _ as O, a as ke } from "./Product.vue_vue_type_script_setup_true_lang-CI7XYUGZ.js";
|
|
15
|
+
import { L as J } from "./LinkProductSideSheet-BAVjkhSM.js";
|
|
16
|
+
import { _ as xe } from "./TreeEditorOpenner.vue_vue_type_script_setup_true_lang-mEghCiPA.js";
|
|
17
|
+
import { u as Se } from "./Thumbnail.vue_vue_type_script_setup_true_lang-DBYG98Xu.js";
|
|
18
|
+
import { m as he } from "./toExcel-CwIaZ36w.js";
|
|
19
|
+
const Me = { class: "space-y-24 mb-24" }, Ce = ["innerHTML"], we = { class: "flex justify-end gap-8" }, Fe = /* @__PURE__ */ B({
|
|
20
20
|
__name: "ConfirmActionDialog",
|
|
21
21
|
props: {
|
|
22
22
|
description: {},
|
|
23
23
|
value: {},
|
|
24
24
|
message: { default: "To confirm your action, type <b>[[value]]</b> in the text field." }
|
|
25
25
|
},
|
|
26
|
-
setup(
|
|
27
|
-
const n =
|
|
28
|
-
return (
|
|
29
|
-
const
|
|
30
|
-
return l(), m(
|
|
31
|
-
"on-validation-success": () => e(
|
|
26
|
+
setup(A) {
|
|
27
|
+
const n = A, p = f(() => n.message.replace("[[value]]", n.value)), k = W(""), o = te(), { emitAction: h } = pe();
|
|
28
|
+
return (v, r) => {
|
|
29
|
+
const M = F("FmTextField"), g = F("FmButton"), x = F("FmForm");
|
|
30
|
+
return l(), m(x, {
|
|
31
|
+
"on-validation-success": () => e(h)("primary"),
|
|
32
32
|
"blame-form-child-on-validation-failed": ""
|
|
33
33
|
}, {
|
|
34
|
-
default:
|
|
34
|
+
default: _(() => [
|
|
35
35
|
d("div", Me, [
|
|
36
|
-
d("div", null, Z(
|
|
37
|
-
d("div", { innerHTML:
|
|
36
|
+
d("div", null, Z(v.description), 1),
|
|
37
|
+
d("div", { innerHTML: p.value }, null, 8, Ce),
|
|
38
38
|
d("div", null, [
|
|
39
|
-
u(
|
|
40
|
-
modelValue:
|
|
39
|
+
u(M, {
|
|
40
|
+
modelValue: k.value,
|
|
41
41
|
"onUpdate:modelValue": [
|
|
42
|
-
|
|
43
|
-
|
|
42
|
+
r[0] || (r[0] = (c) => k.value = c),
|
|
43
|
+
r[1] || (r[1] = () => {
|
|
44
44
|
})
|
|
45
45
|
],
|
|
46
|
-
placeholder:
|
|
47
|
-
rules: [(c) => c ===
|
|
46
|
+
placeholder: v.value,
|
|
47
|
+
rules: [(c) => c === v.value || "Value does not match"]
|
|
48
48
|
}, null, 8, ["modelValue", "placeholder", "rules"])
|
|
49
49
|
]),
|
|
50
|
-
d("div",
|
|
51
|
-
u(
|
|
50
|
+
d("div", we, [
|
|
51
|
+
u(g, {
|
|
52
52
|
label: "Cancel",
|
|
53
53
|
variant: "secondary",
|
|
54
|
-
onClick:
|
|
54
|
+
onClick: r[2] || (r[2] = (c) => e(o).close())
|
|
55
55
|
}),
|
|
56
|
-
u(
|
|
56
|
+
u(g, {
|
|
57
57
|
label: "Confirm",
|
|
58
58
|
type: "submit"
|
|
59
59
|
})
|
|
@@ -64,27 +64,27 @@ const Me = { class: "space-y-24 mb-24" }, Ce = ["innerHTML"], Fe = { class: "fle
|
|
|
64
64
|
}, 8, ["on-validation-success"]);
|
|
65
65
|
};
|
|
66
66
|
}
|
|
67
|
-
}), $e = /* @__PURE__ */
|
|
67
|
+
}), $e = /* @__PURE__ */ B({
|
|
68
68
|
__name: "Migrate",
|
|
69
|
-
setup(
|
|
70
|
-
const n = K(),
|
|
71
|
-
async function
|
|
72
|
-
|
|
69
|
+
setup(A) {
|
|
70
|
+
const n = K(), p = ee(), { isRestaurantLevelMenu: k } = p, o = ne(), { minor: h } = Q(o), v = W(!1), r = te();
|
|
71
|
+
async function M() {
|
|
72
|
+
g.value || v.value || r.open({
|
|
73
73
|
title: "Migrate to new version",
|
|
74
|
-
contentComponent:
|
|
74
|
+
contentComponent: Fe,
|
|
75
75
|
contentComponentProps: {
|
|
76
76
|
value: "MIGRATE",
|
|
77
77
|
description: "Do you want to migrate to new version? Once migrate it will unable to revert to the older version."
|
|
78
78
|
}
|
|
79
79
|
}).onPrimary(async () => {
|
|
80
|
-
|
|
80
|
+
r.close(), await h(
|
|
81
81
|
async () => {
|
|
82
82
|
await n.migrate(), setTimeout(() => {
|
|
83
83
|
window.location.reload();
|
|
84
84
|
}, 2e3);
|
|
85
85
|
},
|
|
86
86
|
{
|
|
87
|
-
isLoading:
|
|
87
|
+
isLoading: v,
|
|
88
88
|
customId: n.state.menu._id,
|
|
89
89
|
message: "Migrating menu",
|
|
90
90
|
successMessage: "Migration completed"
|
|
@@ -92,18 +92,18 @@ const Me = { class: "space-y-24 mb-24" }, Ce = ["innerHTML"], Fe = { class: "fle
|
|
|
92
92
|
);
|
|
93
93
|
});
|
|
94
94
|
}
|
|
95
|
-
const
|
|
96
|
-
var
|
|
97
|
-
if (((
|
|
95
|
+
const g = f(() => {
|
|
96
|
+
var C;
|
|
97
|
+
if (((C = p.sessionUser.value) == null ? void 0 : C.role.isAdmin) === !0)
|
|
98
98
|
return null;
|
|
99
|
-
const
|
|
100
|
-
if (!
|
|
101
|
-
const
|
|
102
|
-
return
|
|
99
|
+
const c = p.restaurants.value;
|
|
100
|
+
if (!c.length) return "Required at least one restaurant to migrate";
|
|
101
|
+
const b = c.filter((y) => !y.posVersion || !R.Pos.canUse({ feature: j.F_FEATURE.enum.menuV4, posVersion: y.posVersion }));
|
|
102
|
+
return b.length ? `Upgrade POS to V${R.Pos.minVersionToUse(j.F_FEATURE.enum.menuV4)} to use new menu: ${b.map((y) => y.profile.name).join(", ")}` : null;
|
|
103
103
|
});
|
|
104
|
-
return (
|
|
105
|
-
const
|
|
106
|
-
return !
|
|
104
|
+
return (x, c) => {
|
|
105
|
+
const b = F("FmSnackbar");
|
|
106
|
+
return !e(k) && !g.value && e(n).version !== e(X).enum.v4 ? (l(), m(b, {
|
|
107
107
|
key: 0,
|
|
108
108
|
class: "!max-w-full",
|
|
109
109
|
title: "New version of menu is out now!",
|
|
@@ -111,33 +111,33 @@ const Me = { class: "space-y-24 mb-24" }, Ce = ["innerHTML"], Fe = { class: "fle
|
|
|
111
111
|
variant: "info",
|
|
112
112
|
action: "Migrate",
|
|
113
113
|
"z-index": 0,
|
|
114
|
-
onOnAction:
|
|
115
|
-
})) :
|
|
114
|
+
onOnAction: M
|
|
115
|
+
})) : w("", !0);
|
|
116
116
|
};
|
|
117
117
|
}
|
|
118
|
-
}), Ve = "/assets/menu-export-
|
|
118
|
+
}), Ve = "/assets/menu-export-Dnxo90z1.js", Ae = { class: "flex-1 flex justify-between gap-8 pl-8" }, Ee = { class: "flex items-center" }, Te = { class: "bg-fm-color-neutral-gray-100 rounded-md px-8 py-4" }, De = { class: "fm-typo-en-body-md-600 font-semibold" }, Ie = { class: "flex gap-8" }, Xe = /* @__PURE__ */ B({
|
|
119
119
|
__name: "Products",
|
|
120
|
-
setup(
|
|
121
|
-
const { t: n } = de(),
|
|
120
|
+
setup(A) {
|
|
121
|
+
const { t: n } = de(), p = ee(), k = Q(ne()), o = K(), h = f(() => o.rules.item), v = ye(), r = f(() => !o.state.currentSchedulerId), { selectedCategories: M } = ge(), g = f(() => ({
|
|
122
122
|
...le.menuV4ToV3(ue(o.state.menu)),
|
|
123
123
|
_id: o.state.menu._id,
|
|
124
124
|
_rev: o.state.menu._rev
|
|
125
|
-
})),
|
|
126
|
-
const
|
|
127
|
-
return
|
|
125
|
+
})), x = f(() => {
|
|
126
|
+
const i = H.flatten(M.value.map((t) => t.items));
|
|
127
|
+
return H.uniqBy(i, (t) => t._id).length;
|
|
128
128
|
});
|
|
129
|
-
async function c(
|
|
129
|
+
async function c(i, t) {
|
|
130
130
|
const a = new re();
|
|
131
|
-
for (let
|
|
132
|
-
a.file(`${t[
|
|
131
|
+
for (let $ = 0; $ < i.length; $++)
|
|
132
|
+
a.file(`${t[$]}.xlsx`, i[$]);
|
|
133
133
|
const s = await a.generateAsync({ type: "blob" });
|
|
134
|
-
ie.saveAs(s, `books_${
|
|
134
|
+
ie.saveAs(s, `books_${T().format("DD-MM-YYYY_HH-mm")}.zip`);
|
|
135
135
|
}
|
|
136
|
-
async function
|
|
137
|
-
await
|
|
136
|
+
async function b() {
|
|
137
|
+
await k.minor(
|
|
138
138
|
async () => {
|
|
139
139
|
if (await o.readMenu(), o.version === X.enum.v4) {
|
|
140
|
-
const
|
|
140
|
+
const i = o.state.menu, t = T().format("DD-MM-YYYY_HH-mm"), a = [
|
|
141
141
|
`menu_${t}`,
|
|
142
142
|
`addonGroup_${t}`,
|
|
143
143
|
`itemLinkedAddon_${t}`,
|
|
@@ -145,15 +145,15 @@ const Me = { class: "space-y-24 mb-24" }, Ce = ["innerHTML"], Fe = { class: "fle
|
|
|
145
145
|
], s = await ce(
|
|
146
146
|
Ve,
|
|
147
147
|
JSON.stringify({
|
|
148
|
-
menu:
|
|
149
|
-
attributeSettings:
|
|
148
|
+
menu: i,
|
|
149
|
+
attributeSettings: p.itemAttributeSettings.value,
|
|
150
150
|
localizationKeys: o.state.featureFlags.supportedLocales
|
|
151
151
|
})
|
|
152
152
|
);
|
|
153
153
|
await c(s, a);
|
|
154
154
|
} else {
|
|
155
|
-
const
|
|
156
|
-
await me(
|
|
155
|
+
const i = he(g.value), t = `menu_${T().format("DD-MM-YYYY_HH-mm")}`;
|
|
156
|
+
await me(i, `${t}.xlsx`, {
|
|
157
157
|
bookType: "xlsx",
|
|
158
158
|
bookSST: !0,
|
|
159
159
|
type: "array",
|
|
@@ -165,51 +165,51 @@ const Me = { class: "space-y-24 mb-24" }, Ce = ["innerHTML"], Fe = { class: "fle
|
|
|
165
165
|
);
|
|
166
166
|
}
|
|
167
167
|
const {
|
|
168
|
-
menuItems:
|
|
169
|
-
categories:
|
|
170
|
-
linkItemRules:
|
|
168
|
+
menuItems: E,
|
|
169
|
+
categories: C,
|
|
170
|
+
linkItemRules: y,
|
|
171
171
|
handleSubmit: Y,
|
|
172
|
-
catalogManager:
|
|
173
|
-
schedulerManager:
|
|
174
|
-
} = Se(!1), oe = _e(), ae =
|
|
172
|
+
catalogManager: z,
|
|
173
|
+
schedulerManager: N
|
|
174
|
+
} = Se(!1), oe = _e(), ae = f(() => oe.breakpoints.value.xs), se = f(() => {
|
|
175
175
|
var a;
|
|
176
|
-
const
|
|
177
|
-
action:
|
|
178
|
-
subject:
|
|
176
|
+
const i = ((a = p.sessionUser.value) == null ? void 0 : a.permissions) ?? [], t = {
|
|
177
|
+
action: V.Action.manage,
|
|
178
|
+
subject: V.Subject.Business.menu_menuManagement
|
|
179
179
|
};
|
|
180
|
-
return q([t],
|
|
181
|
-
}),
|
|
180
|
+
return q([t], i).granted;
|
|
181
|
+
}), L = f(() => {
|
|
182
182
|
var a;
|
|
183
|
-
const
|
|
184
|
-
action:
|
|
185
|
-
subject:
|
|
183
|
+
const i = ((a = p.sessionUser.value) == null ? void 0 : a.permissions) ?? [], t = {
|
|
184
|
+
action: V.Action.manage,
|
|
185
|
+
subject: V.Subject.Business.menu_importExport
|
|
186
186
|
};
|
|
187
|
-
return q([t],
|
|
187
|
+
return q([t], i).granted;
|
|
188
188
|
});
|
|
189
|
-
return be().resetOnMount(), (
|
|
189
|
+
return be().resetOnMount(), (i, t) => {
|
|
190
190
|
const a = F("fm-button");
|
|
191
|
-
return l(), m(
|
|
191
|
+
return l(), m(ve, {
|
|
192
192
|
heading: e(n)("menu.products.title")
|
|
193
193
|
}, {
|
|
194
|
-
default:
|
|
194
|
+
default: _(() => [
|
|
195
195
|
u($e),
|
|
196
196
|
u(ke)
|
|
197
197
|
]),
|
|
198
|
-
"append-heading":
|
|
198
|
+
"append-heading": _(() => [
|
|
199
199
|
d("div", Ae, [
|
|
200
200
|
d("div", Ee, [
|
|
201
201
|
d("div", Te, [
|
|
202
|
-
d("p", De, Z(
|
|
202
|
+
d("p", De, Z(x.value), 1)
|
|
203
203
|
])
|
|
204
204
|
]),
|
|
205
205
|
d("div", Ie, [
|
|
206
206
|
ae.value ? (l(), m(O, { key: 1 }, {
|
|
207
|
-
default:
|
|
207
|
+
default: _(({ trigger: s }) => [
|
|
208
208
|
u(fe, null, {
|
|
209
|
-
default:
|
|
209
|
+
default: _(() => [
|
|
210
210
|
u(G, {
|
|
211
211
|
label: e(n)("menu.products.actions.export"),
|
|
212
|
-
onClick:
|
|
212
|
+
onClick: b
|
|
213
213
|
}, null, 8, ["label"]),
|
|
214
214
|
u(G, {
|
|
215
215
|
label: e(n)("menu.products.actions.import"),
|
|
@@ -220,59 +220,59 @@ const Me = { class: "space-y-24 mb-24" }, Ce = ["innerHTML"], Fe = { class: "fle
|
|
|
220
220
|
}, 1024)
|
|
221
221
|
]),
|
|
222
222
|
_: 1
|
|
223
|
-
})) : (l(), U
|
|
223
|
+
})) : (l(), P(U, { key: 0 }, [
|
|
224
224
|
se.value ? (l(), m(xe, { key: 0 }, {
|
|
225
|
-
default:
|
|
225
|
+
default: _(({ trigger: s }) => [
|
|
226
226
|
u(a, {
|
|
227
227
|
label: e(n)("menu.tree_editor.title"),
|
|
228
|
-
"bg-color": e(
|
|
229
|
-
"text-color": e(
|
|
230
|
-
variant: e(
|
|
228
|
+
"bg-color": e(S).NeutralGray100,
|
|
229
|
+
"text-color": e(S).TypoSecondary,
|
|
230
|
+
variant: e(D).Primary,
|
|
231
231
|
onClick: s
|
|
232
232
|
}, null, 8, ["label", "bg-color", "text-color", "variant", "onClick"])
|
|
233
233
|
]),
|
|
234
234
|
_: 1
|
|
235
|
-
})) :
|
|
236
|
-
|
|
235
|
+
})) : w("", !0),
|
|
236
|
+
L.value ? (l(), m(a, {
|
|
237
237
|
key: 1,
|
|
238
|
-
"bg-color": e(
|
|
239
|
-
"text-color": e(
|
|
240
|
-
variant: e(
|
|
238
|
+
"bg-color": e(S).NeutralGray100,
|
|
239
|
+
"text-color": e(S).TypoSecondary,
|
|
240
|
+
variant: e(D).Primary,
|
|
241
241
|
label: e(n)("menu.products.actions.export"),
|
|
242
|
-
onClick:
|
|
243
|
-
}, null, 8, ["bg-color", "text-color", "variant", "label"])) :
|
|
244
|
-
|
|
245
|
-
default:
|
|
242
|
+
onClick: b
|
|
243
|
+
}, null, 8, ["bg-color", "text-color", "variant", "label"])) : w("", !0),
|
|
244
|
+
L.value ? (l(), m(O, { key: 2 }, {
|
|
245
|
+
default: _(({ trigger: s }) => [
|
|
246
246
|
u(a, {
|
|
247
|
-
"bg-color": e(
|
|
248
|
-
"text-color": e(
|
|
249
|
-
variant: e(
|
|
247
|
+
"bg-color": e(S).NeutralGray100,
|
|
248
|
+
"text-color": e(S).TypoSecondary,
|
|
249
|
+
variant: e(D).Primary,
|
|
250
250
|
label: e(n)("menu.products.actions.import"),
|
|
251
251
|
onClick: s
|
|
252
252
|
}, null, 8, ["bg-color", "text-color", "variant", "label", "onClick"])
|
|
253
253
|
]),
|
|
254
254
|
_: 1
|
|
255
|
-
})) :
|
|
255
|
+
})) : w("", !0)
|
|
256
256
|
], 64)),
|
|
257
|
-
|
|
258
|
-
|
|
257
|
+
x.value > 0 ? (l(), P(U, { key: 2 }, [
|
|
258
|
+
h.value.create ? (l(), m(I, {
|
|
259
259
|
key: 0,
|
|
260
260
|
label: e(n)("menu.products.actions.add"),
|
|
261
261
|
"prepend-icon": "add",
|
|
262
|
-
onClick: t[0] || (t[0] = (s) => e(
|
|
263
|
-
}, null, 8, ["label"])) :
|
|
262
|
+
onClick: t[0] || (t[0] = (s) => e(v).create(null))
|
|
263
|
+
}, null, 8, ["label"])) : r.value ? (l(), m(J, {
|
|
264
264
|
key: 1,
|
|
265
|
-
"categorized-items": e(
|
|
266
|
-
"initial-value": e(
|
|
265
|
+
"categorized-items": e(z).linkableItems.value,
|
|
266
|
+
"initial-value": e(z).currentItems.value,
|
|
267
267
|
"show-variant": !1,
|
|
268
|
-
"menu-items": e(
|
|
269
|
-
categories: e(
|
|
270
|
-
"link-item-rules": e(
|
|
271
|
-
"no-scheduler":
|
|
268
|
+
"menu-items": e(E),
|
|
269
|
+
categories: e(C),
|
|
270
|
+
"link-item-rules": e(y),
|
|
271
|
+
"no-scheduler": r.value,
|
|
272
272
|
onSubmit: e(Y)
|
|
273
273
|
}, {
|
|
274
|
-
default:
|
|
275
|
-
u(
|
|
274
|
+
default: _(({ trigger: s }) => [
|
|
275
|
+
u(I, {
|
|
276
276
|
label: e(n)("menu.products.actions.link"),
|
|
277
277
|
"prepend-icon": "link",
|
|
278
278
|
onClick: s
|
|
@@ -281,24 +281,24 @@ const Me = { class: "space-y-24 mb-24" }, Ce = ["innerHTML"], Fe = { class: "fle
|
|
|
281
281
|
_: 1
|
|
282
282
|
}, 8, ["categorized-items", "initial-value", "menu-items", "categories", "link-item-rules", "no-scheduler", "onSubmit"])) : (l(), m(J, {
|
|
283
283
|
key: 2,
|
|
284
|
-
"categorized-items": e(
|
|
285
|
-
"initial-value": e(
|
|
284
|
+
"categorized-items": e(N).linkableItems.value,
|
|
285
|
+
"initial-value": e(N).currentItems.value,
|
|
286
286
|
"show-variant": !1,
|
|
287
|
-
"menu-items": e(
|
|
288
|
-
categories: e(
|
|
289
|
-
"link-item-rules": e(
|
|
290
|
-
"no-scheduler":
|
|
287
|
+
"menu-items": e(E),
|
|
288
|
+
categories: e(C),
|
|
289
|
+
"link-item-rules": e(y),
|
|
290
|
+
"no-scheduler": r.value,
|
|
291
291
|
onSubmit: e(Y)
|
|
292
292
|
}, {
|
|
293
|
-
default:
|
|
294
|
-
u(
|
|
293
|
+
default: _(({ trigger: s }) => [
|
|
294
|
+
u(I, {
|
|
295
295
|
label: e(n)("menu.products.actions.apply_scheduler"),
|
|
296
296
|
onClick: s
|
|
297
297
|
}, null, 8, ["label", "onClick"])
|
|
298
298
|
]),
|
|
299
299
|
_: 1
|
|
300
300
|
}, 8, ["categorized-items", "initial-value", "menu-items", "categories", "link-item-rules", "no-scheduler", "onSubmit"]))
|
|
301
|
-
], 64)) :
|
|
301
|
+
], 64)) : w("", !0)
|
|
302
302
|
])
|
|
303
303
|
])
|
|
304
304
|
]),
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { defineComponent as J, ref as P, computed as D, onMounted as me, resolveComponent as $, createElementBlock as F, openBlock as y, createVNode as b, createElementVNode as f, toDisplayString as T, unref as c, Fragment as j, renderList as Q, createBlock as Y, watch as pe, withCtx as z, h as B, normalizeClass as ce, createCommentVNode as X, createTextVNode as _e, mergeProps as Ue, normalizeStyle as Oe, renderSlot as Be, withModifiers as le, onUnmounted as Te } from "vue";
|
|
2
|
-
import { D as E } from "./dayjs.min-
|
|
2
|
+
import { D as E } from "./dayjs.min-sFCfvj7o.js";
|
|
3
3
|
import { useRouter as ze } from "vue-router";
|
|
4
4
|
import { O as Ee, b as Le } from "./app-5fxKLAzS.js";
|
|
5
|
-
import { z as je, D as Ke, B as Ce, ah as Ye, a5 as we, ai as W, u as xe, G as ge, H as He, y as qe } from "./index.vue_vue_type_script_setup_true_lang-
|
|
5
|
+
import { z as je, D as Ke, B as Ce, ah as Ye, a5 as we, ai as W, u as xe, G as ge, H as He, y as qe } from "./index.vue_vue_type_script_setup_true_lang-BJLNbe5R.js";
|
|
6
6
|
import { useI18n as Z, useCoreStore as he, RestaurantSelector as Ve } from "@feedmepos/mf-common";
|
|
7
7
|
import { useSnackbar as fe, useDialogChild as Ge, useProxiedModel as Je, useDialog as Se, components as ee, FmButtonVariant as ye } from "@feedmepos/ui-library";
|
|
8
8
|
import { _ as We } from "./TextChip.vue_vue_type_script_setup_true_lang-8frWuZFL.js";
|
|
9
|
-
import { _ as Qe } from "./app-
|
|
9
|
+
import { _ as Qe } from "./app-BoMWSx89.js";
|
|
10
10
|
import { a as Xe, w as Ze } from "./tooltip-B5BiPMx9.js";
|
|
11
11
|
import { u as Fe } from "./discardConfirm-BHni0LNu.js";
|
|
12
12
|
import { _ as Ie } from "./_plugin-vue_export-helper-CHgC5LLL.js";
|
|
@@ -2,14 +2,14 @@ import { defineComponent as z, computed as h, ref as E, reactive as Q, watch as
|
|
|
2
2
|
import { useI18n as M } from "@feedmepos/mf-common";
|
|
3
3
|
import { useSnackbar as P, components as G, useDialog as ne, FmButtonVariant as K, useBreakpoints as oe } from "@feedmepos/ui-library";
|
|
4
4
|
import { _ as ae } from "./ResponsiveFabButton.vue_vue_type_script_setup_true_lang-Cn-3MRBO.js";
|
|
5
|
-
import { _ as le } from "./app-
|
|
6
|
-
import { P as q, B as $, G as ie, A as D, H as se, D as L, J as A, K as O, u as H, a5 as re } from "./index.vue_vue_type_script_setup_true_lang-
|
|
5
|
+
import { _ as le } from "./app-BoMWSx89.js";
|
|
6
|
+
import { P as q, B as $, G as ie, A as D, H as se, D as L, J as A, K as O, u as H, a5 as re } from "./index.vue_vue_type_script_setup_true_lang-BJLNbe5R.js";
|
|
7
7
|
import { _ as ce } from "./PageLayout.vue_vue_type_script_setup_true_lang-BVmHMvKD.js";
|
|
8
8
|
import { defineStore as ue } from "pinia";
|
|
9
|
-
import { _ as Y, g as me } from "./InventoryBinding.vue_vue_type_script_setup_true_lang-
|
|
9
|
+
import { _ as Y, g as me } from "./InventoryBinding.vue_vue_type_script_setup_true_lang-BMBNdxYT.js";
|
|
10
10
|
import { u as de } from "./discardConfirm-BHni0LNu.js";
|
|
11
11
|
import { c as pe } from "./check-C9mY6LiX.js";
|
|
12
|
-
import "./unit-
|
|
12
|
+
import "./unit-CQPZOeGq.js";
|
|
13
13
|
import { c as fe } from "./createComponentProgrammatically-Bt2rn1IQ.js";
|
|
14
14
|
const _e = { class: "fm-typo-en-title-md-600" }, ve = { class: "pt-8 space-y-40" }, ye = { class: "flex flex-row gap-16" }, ge = { class: "flex gap-8 items-center justify-start" }, be = /* @__PURE__ */ z({
|
|
15
15
|
__name: "Form",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { defineComponent as D, ref as R, resolveComponent as u, createElementBlock as E, openBlock as P, Fragment as B, createElementVNode as d, createVNode as l, normalizeClass as A, withCtx as i, toDisplayString as g, unref as o, h as I } from "vue";
|
|
2
2
|
import { useI18n as T, useCustomAttributes as K, useCoreStore as N } from "@feedmepos/mf-common";
|
|
3
3
|
import { components as U } from "@feedmepos/ui-library";
|
|
4
|
-
import { e as W, _ as y } from "./RuleView.vue_vue_type_script_setup_true_lang-
|
|
4
|
+
import { e as W, _ as y } from "./RuleView.vue_vue_type_script_setup_true_lang-CnEkf8GW.js";
|
|
5
5
|
const j = {
|
|
6
6
|
class: /* @__PURE__ */ A(["fm-typo-en-body-md-600 select-none text-ellipsis overflow-hidden whitespace-nowrap", "text-fm-color-neutral-gray-400"])
|
|
7
7
|
}, O = {
|