@feedmepos/mf-menu 0.31.33-beta.6 → 0.31.33-beta.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/dist/{App-Dt6RQiUh.js → App-BAMi-a9P.js} +6 -6
  2. package/dist/{ApplyProduct.vue_vue_type_script_setup_true_lang-B_SQpWg7.js → ApplyProduct.vue_vue_type_script_setup_true_lang-BWgnvXjy.js} +20 -20
  3. package/dist/{Catalog-CFx7t_Nu.js → Catalog-DiPY42vz.js} +6 -6
  4. package/dist/{Category-CPMx86rY.js → Category-B9jnFDvG.js} +14 -14
  5. package/dist/{Category-OjK-v--G.js → Category-ClrACB2e.js} +19 -19
  6. package/dist/{CookingGuide-ANnXKBjc.js → CookingGuide-1553FWRH.js} +4 -4
  7. package/dist/{CustomAttributeChip.vue_vue_type_script_setup_true_lang-D-1OzZ-i.js → CustomAttributeChip.vue_vue_type_script_setup_true_lang-DWNx15iJ.js} +1 -1
  8. package/dist/{Group-K4925_bP.js → Group-DLahX8qi.js} +3 -3
  9. package/dist/{Group--DJjkGab.js → Group-l_-qZSyF.js} +1 -1
  10. package/dist/{Group.vue_vue_type_script_setup_true_lang-36O78xv0.js → Group.vue_vue_type_script_setup_true_lang-PNpEgEGB.js} +9 -9
  11. package/dist/GroupMarkupPriceDialog.vue_vue_type_script_setup_true_lang-DoVyIdTN.js +364 -0
  12. package/dist/{ImportProductDialog.vue_vue_type_script_setup_true_lang-C-z1m3jh.js → ImportProductDialog.vue_vue_type_script_setup_true_lang-DSspLK4i.js} +12597 -12946
  13. package/dist/{Ingredient-G4Txx6_0.js → Ingredient-SsBtwYjB.js} +3 -3
  14. package/dist/{InventoryBinding.vue_vue_type_script_setup_true_lang-HgHBlflo.js → InventoryBinding.vue_vue_type_script_setup_true_lang-DqnVkfjW.js} +2 -2
  15. package/dist/LinkProductSideSheet-CncbzDh3.js +335 -0
  16. package/dist/{MenuSetting-Cx-EHG-6.js → MenuSetting-D28a3uD4.js} +4 -4
  17. package/dist/{PrintRoute-IxHGvGzF.js → PrintRoute-BdlT0DDr.js} +89 -88
  18. package/dist/{Product-D1gqn5J6.js → Product-s5Q4wV8i.js} +1 -1
  19. package/dist/Product.vue_vue_type_script_setup_true_lang-C6iDgQEU.js +1575 -0
  20. package/dist/{ProductInternalTools-GJ2OE5gU.js → ProductInternalTools-DjSkvzw2.js} +5 -5
  21. package/dist/Products-B3tF_gCa.js +283 -0
  22. package/dist/{Publish-C86rd413.js → Publish-G4bwUpme.js} +3 -3
  23. package/dist/{Recipe-BbQKou9p.js → Recipe-BxgHUzb5.js} +4 -4
  24. package/dist/{Scheduler-DUeTkyGQ.js → Scheduler-DJSKWS-9.js} +3 -3
  25. package/dist/{ServingSequence-BROo5rC_.js → ServingSequence-_cmuGKlV.js} +3 -3
  26. package/dist/{Setting-D-ueTlwO.js → Setting-Dx7ycxAn.js} +5 -5
  27. package/dist/{Subcategory-DVewA8HX.js → Subcategory-25AzJQYt.js} +4 -4
  28. package/dist/{Takeaway-DyPjHuCl.js → Takeaway-Bmm9d5PO.js} +1 -1
  29. package/dist/{Takeaway-B4lDGQDh.js → Takeaway-CcFK-Y2z.js} +4 -4
  30. package/dist/{Takeaway.vue_vue_type_script_setup_true_lang-BTDlzYuX.js → Takeaway.vue_vue_type_script_setup_true_lang-Bl5OAG3c.js} +5 -5
  31. package/dist/Thumbnail.vue_vue_type_script_setup_true_lang-B3-ypwE7.js +431 -0
  32. package/dist/TreeEditorOpenner.vue_vue_type_script_setup_true_lang-D2gzS8Q_.js +5990 -0
  33. package/dist/{Unit-CVF0dom4.js → Unit-Cs1EOuyg.js} +2 -2
  34. package/dist/{Variant-DmccAgFU.js → Variant-BTCkw4RC.js} +3 -3
  35. package/dist/_id_-C9b2WHzy.js +202 -0
  36. package/dist/{app-ClinzawZ.js → app-BhI1mPRh.js} +1 -1
  37. package/dist/{app-CV_q8OdE.js → app-CU2frfPB.js} +24 -24
  38. package/dist/app.js +1 -1
  39. package/dist/apps/mf-menu/src/components/feature/RestaurantAttributesSelector.vue.d.ts +33 -0
  40. package/dist/apps/mf-menu/src/components/feature/TreeEditor/composable/catalog.d.ts +2 -0
  41. package/dist/apps/mf-menu/src/components/feature/TreeEditor/store/menuV2.d.ts +3 -1
  42. package/dist/apps/mf-menu/src/composable/customAttributes.d.ts +8 -0
  43. package/dist/apps/mf-menu/src/composable/linkProducts.d.ts +1276 -0
  44. package/dist/apps/mf-menu/src/types/linkProducts.d.ts +21 -0
  45. package/dist/apps/mf-menu/src/views/PrintRoute/PrintDepartmentDialog.vue.d.ts +5 -3
  46. package/dist/apps/mf-menu/tsconfig.app.tsbuildinfo +1 -1
  47. package/dist/assets/{linked-status-fZD691Js.js → linked-status-r8YcmOs7.js} +12 -12
  48. package/dist/assets/{override-menu-Cjy1BJuz.js → override-menu-CDLCS1zK.js} +12 -12
  49. package/dist/assets/{validate-menu-uwysUwDP.js → validate-menu-B-FxrVmM.js} +12 -12
  50. package/dist/{catalog-Wx88K6iI.js → catalog-BudDGPc1.js} +1 -1
  51. package/dist/{catalogSetting-DTEHDSAd.js → catalogSetting-Bk1QEBg5.js} +1 -1
  52. package/dist/{category-BRTw76Vf.js → category-UDpJb7Yh.js} +1 -1
  53. package/dist/{currency-562bPc2l.js → currency-BQIQArxm.js} +1 -1
  54. package/dist/{dayjs.min-Cnfm8bQm.js → dayjs.min-D0EjAkx4.js} +1 -1
  55. package/dist/{index-Crs_eZ0i.js → index-B_V5s58T.js} +1 -1
  56. package/dist/{index-DJXrJdeQ.js → index-CirrSmpA.js} +3 -3
  57. package/dist/index-DRuDRGm-.js +213 -0
  58. package/dist/{index-4hf9vONw.js → index-Dy-u7imh.js} +3 -3
  59. package/dist/{item-CuIxc9FT.js → item-C45Oe5Un.js} +196 -194
  60. package/dist/{jszip.min-C9xLIvo4.js → jszip.min-BR_8QNuk.js} +545 -545
  61. package/dist/{menu-Mkzv9c8C.js → menu-D52oU1sw.js} +1 -1
  62. package/dist/{menu-ILWxqJQe.js → menu-DTlhFcnq.js} +6882 -6858
  63. package/dist/menuV2-DQtEtGVV.js +707 -0
  64. package/dist/mf-menu.css +1 -1
  65. package/dist/{priceTier-D4joq_kN.js → priceTier-CDyccedV.js} +1 -1
  66. package/dist/{scheduler-DuxWoNVb.js → scheduler-DHjrtU8G.js} +16 -17
  67. package/dist/subcategory-0ajMWsb2.js +148 -0
  68. package/dist/{toExcel-hGfpS_Uo.js → toExcel-BNKDwOzQ.js} +2 -2
  69. package/dist/{unit-9fycj1fu.js → unit-CBe6cpyB.js} +5 -4
  70. package/package.json +3 -3
  71. package/dist/FormItem.vue_vue_type_script_setup_true_lang-BmPAVphe.js +0 -26
  72. package/dist/GroupMarkupPriceDialog.vue_vue_type_script_setup_true_lang-BIX-gPUO.js +0 -372
  73. package/dist/LinkProductSideSheet-CWNarCEs.js +0 -112
  74. package/dist/Product.vue_vue_type_script_setup_true_lang-BCQd-ks4.js +0 -1641
  75. package/dist/Products-DJqgSe-Y.js +0 -270
  76. package/dist/Thumbnail.vue_vue_type_script_setup_true_lang-DzQ8_6Bi.js +0 -71
  77. package/dist/TreeEditorOpenner.vue_vue_type_script_setup_true_lang-B5BAKDRP.js +0 -6149
  78. package/dist/_id_-CWtK62Fy.js +0 -178
  79. package/dist/apps/mf-menu/src/components/feature/AttributesSelector.vue.d.ts +0 -2
  80. package/dist/apps/mf-menu/src/components/feature/LinkProduct/LinkProductSideSheet.vue.d.ts +0 -70
  81. package/dist/apps/mf-menu/src/components/feature/LinkProduct/LinkProductUnifiedSideSheet.vue.d.ts +0 -12
  82. package/dist/customAttributes-CXzd5ud1.js +0 -33
  83. package/dist/index-Ce4v8o7D.js +0 -106
  84. package/dist/subcategory-CLLMagXY.js +0 -817
  85. /package/dist/{app-DvG3mOom.js → LinkProductSideSheet.vue_vue_type_style_index_0_scoped_7d7fe73f_lang-DvG3mOom.js} +0 -0
@@ -2,10 +2,10 @@ import { defineComponent as L, computed as d, ref as g, h as k, withModifiers as
2
2
  import { useI18n as D } from "@feedmepos/mf-common";
3
3
  import { useSnackbar as E, components as K, useBreakpoints as R, FmButtonVariant as I } from "@feedmepos/ui-library";
4
4
  import { _ as q } from "./ResponsiveFabButton.vue_vue_type_script_setup_true_lang-Cn-3MRBO.js";
5
- import { D as A, u as G } from "./menu-ILWxqJQe.js";
5
+ import { D as A, u as G } from "./menu-DTlhFcnq.js";
6
6
  import { _ as H } from "./PageLayout.vue_vue_type_script_setup_true_lang-2f0QfweQ.js";
7
7
  import { _ as J } from "./index.vue_vue_type_script_setup_true_lang-BgqsTzLI.js";
8
- import { u as O, U as P } from "./unit-9fycj1fu.js";
8
+ import { u as O, U as P } from "./unit-CBe6cpyB.js";
9
9
  const Q = {
10
10
  key: 0,
11
11
  class: "h-[600px]"
@@ -2,10 +2,10 @@ import { getCurrentInstance as U, defineComponent as $, computed as g, onMounted
2
2
  import { useI18n as D } from "@feedmepos/mf-common";
3
3
  import { useDialog as Y, useSnackbar as N, FmButtonVariant as M, components as J, useBreakpoints as q } from "@feedmepos/ui-library";
4
4
  import { _ as H } from "./ResponsiveFabButton.vue_vue_type_script_setup_true_lang-Cn-3MRBO.js";
5
- import { _ as Q } from "./app-CV_q8OdE.js";
6
- import { D as K, u as P, O as j, J as W, G as X } from "./menu-ILWxqJQe.js";
5
+ import { _ as Q } from "./app-CU2frfPB.js";
6
+ import { D as K, u as P, O as j, J as W, G as X } from "./menu-DTlhFcnq.js";
7
7
  import { _ as Z } from "./index.vue_vue_type_script_setup_true_lang-BgqsTzLI.js";
8
- import { V as S } from "./index-4hf9vONw.js";
8
+ import { V as S } from "./index-Dy-u7imh.js";
9
9
  import { _ as ee } from "./PageLayout.vue_vue_type_script_setup_true_lang-2f0QfweQ.js";
10
10
  import { u as te } from "./search-BAPEUu1R.js";
11
11
  import { defineStore as ae } from "pinia";
@@ -0,0 +1,202 @@
1
+ import { defineComponent as q, computed as g, ref as d, watch as I, onMounted as H, resolveComponent as i, createElementBlock as F, openBlock as b, Fragment as K, createVNode as n, withCtx as u, createElementVNode as m, toDisplayString as A, unref as e, createBlock as M } from "vue";
2
+ import { D as W } from "./dayjs.min-D0EjAkx4.js";
3
+ import { useRoute as j, useRouter as J } from "vue-router";
4
+ import { _ as Q, w as X } from "./ImportProductDialog.vue_vue_type_script_setup_true_lang-DSspLK4i.js";
5
+ import { D as Z, u as ee, B as te, H as ae, O as oe } from "./menu-DTlhFcnq.js";
6
+ import { useI18n as ne } from "@feedmepos/mf-common";
7
+ import { useSnackbar as le } from "@feedmepos/ui-library";
8
+ import { _ as D } from "./ResponsiveFabButton.vue_vue_type_script_setup_true_lang-Cn-3MRBO.js";
9
+ import { L as R } from "./LinkProductSideSheet-CncbzDh3.js";
10
+ import { _ as se } from "./index-B_V5s58T.js";
11
+ import { _ as ue } from "./PageLayout.vue_vue_type_script_setup_true_lang-2f0QfweQ.js";
12
+ import { u as re } from "./Thumbnail.vue_vue_type_script_setup_true_lang-B3-ypwE7.js";
13
+ import { a as me } from "./menu-D52oU1sw.js";
14
+ import { m as ie } from "./toExcel-BNKDwOzQ.js";
15
+ import { _ as ce, u as de, c as pe } from "./scheduler-DHjrtU8G.js";
16
+ import { R as r } from "./app-CU2frfPB.js";
17
+ const _e = { class: "px-12 py-8" }, fe = { class: "px-12 py-8" }, ve = { class: "flex ml-auto space-x-8" }, ge = { class: "flex-1 flex flex-col overflow-hidden" }, Oe = /* @__PURE__ */ q({
18
+ __name: "[id]",
19
+ setup(be) {
20
+ const V = j(), p = J(), k = Z(le()), E = oe(k), a = ee(), { t: l } = ne(), L = g(() => a.categorizedRawMenuItems), _ = g(() => !a.state.currentSchedulerId), O = d();
21
+ async function G(o) {
22
+ const t = o._id ? de(o) : pe(o);
23
+ await E.updateMenu(t, o.name);
24
+ }
25
+ const h = [
26
+ {
27
+ label: l("menu.catalog.edit.tabs.product"),
28
+ value: r.EDIT_CATALOG_PRODUCT
29
+ },
30
+ {
31
+ label: l("menu.catalog.edit.tabs.category"),
32
+ value: r.EDIT_CATALOG_CATEGORY
33
+ },
34
+ {
35
+ label: l("menu.catalog.edit.tabs.group"),
36
+ value: r.EDIT_CATALOG_GROUP
37
+ },
38
+ {
39
+ label: l("menu.catalog.edit.tabs.takeaway"),
40
+ value: r.EDIT_CATALOG_TAKEAWAY
41
+ },
42
+ {
43
+ label: l("menu.catalog.edit.tabs.setting"),
44
+ value: r.EDIT_CATALOG_SETTING
45
+ }
46
+ ], c = d(h[0].value);
47
+ I(c, (o) => {
48
+ p.replace({
49
+ name: o
50
+ });
51
+ }), H(() => {
52
+ p.currentRoute.value.name !== r.EDIT_CATALOG && (c.value = p.currentRoute.value.name);
53
+ }), I(
54
+ () => a.state.menu._id,
55
+ (o) => {
56
+ const t = V.params.id;
57
+ o && t !== "main" && a.selectCatalog(t);
58
+ }
59
+ );
60
+ const z = g(() => ({
61
+ ...te.menuV4ToV3(ae(a.state.menu)),
62
+ _id: a.state.menu._id,
63
+ _rev: a.state.menu._rev
64
+ }));
65
+ async function $() {
66
+ await k.minor(
67
+ async () => {
68
+ await a.readMenu();
69
+ const o = await ie(z.value), t = `menu_${W().format("DD-MM-YYYY_HH-mm")}`;
70
+ await X(o, `${t}.xlsx`, {
71
+ bookType: "xlsx",
72
+ bookSST: !1,
73
+ type: "array"
74
+ });
75
+ },
76
+ { successMessage: "Menu exported", customId: a.state.menu._id }
77
+ );
78
+ }
79
+ const f = d(!1), v = d(!1), {
80
+ menuItems: x,
81
+ linkItemRules: S,
82
+ handleSubmit: T,
83
+ catalogManager: y,
84
+ schedulerManager: C
85
+ } = re(!1);
86
+ return me().resetOnUnmount(), (o, t) => {
87
+ var w;
88
+ const U = i("fm-bottom-sheet"), Y = i("fm-button"), N = i("router-link"), B = i("fm-tabs"), P = i("router-view");
89
+ return b(), F(K, null, [
90
+ n(ce, {
91
+ ref_key: "schedulerDialogRef",
92
+ ref: O,
93
+ "categorized-items": L.value,
94
+ onOnComplete: G
95
+ }, null, 8, ["categorized-items"]),
96
+ n(Q, {
97
+ modelValue: f.value,
98
+ "onUpdate:modelValue": t[0] || (t[0] = (s) => f.value = s)
99
+ }, null, 8, ["modelValue"]),
100
+ n(U, {
101
+ modelValue: v.value,
102
+ "onUpdate:modelValue": t[2] || (t[2] = (s) => v.value = s),
103
+ "no-header": ""
104
+ }, {
105
+ default: u(() => [
106
+ m("div", _e, [
107
+ m("p", {
108
+ class: "fm-typo-en-body-md-400",
109
+ onClick: $
110
+ }, A(e(l)("menu.catalog.edit.export")), 1)
111
+ ]),
112
+ m("div", fe, [
113
+ m("p", {
114
+ class: "fm-typo-en-body-md-400",
115
+ onClick: t[1] || (t[1] = () => {
116
+ f.value = !0, v.value = !1;
117
+ })
118
+ }, A(e(l)("menu.catalog.edit.import")), 1)
119
+ ])
120
+ ]),
121
+ _: 1
122
+ }, 8, ["modelValue"]),
123
+ n(ue, {
124
+ heading: ((w = e(a).currentCatalog) == null ? void 0 : w.name) ?? "Main",
125
+ class: "flex flex-col max-h-[calc(100vh-56px)] overflow-hidden"
126
+ }, {
127
+ "prepend-heading": u(() => [
128
+ n(N, {
129
+ to: { name: e(r).CATALOG },
130
+ class: "mr-8",
131
+ title: e(l)("menu.catalog.edit.back")
132
+ }, {
133
+ default: u(() => [
134
+ n(Y, {
135
+ "prepend-icon": "arrow_back",
136
+ variant: "tertiary"
137
+ })
138
+ ]),
139
+ _: 1
140
+ }, 8, ["to", "title"])
141
+ ]),
142
+ "append-heading": u(() => [
143
+ m("div", ve, [
144
+ _.value ? (b(), M(R, {
145
+ key: 0,
146
+ "categorized-items": e(y).linkableItems.value,
147
+ "initial-value": e(y).currentItems.value,
148
+ "show-variant": !1,
149
+ "menu-items": e(x),
150
+ "link-item-rules": e(S),
151
+ "no-scheduler": _.value,
152
+ onSubmit: e(T)
153
+ }, {
154
+ default: u(({ trigger: s }) => [
155
+ n(D, {
156
+ label: e(l)("menu.catalog.edit.link_product"),
157
+ "prepend-icon": "link",
158
+ onClick: s
159
+ }, null, 8, ["label", "onClick"])
160
+ ]),
161
+ _: 1
162
+ }, 8, ["categorized-items", "initial-value", "menu-items", "link-item-rules", "no-scheduler", "onSubmit"])) : (b(), M(R, {
163
+ key: 1,
164
+ "categorized-items": e(C).linkableItems.value,
165
+ "initial-value": e(C).currentItems.value,
166
+ "show-variant": !1,
167
+ "menu-items": e(x),
168
+ "link-item-rules": e(S),
169
+ "no-scheduler": _.value,
170
+ onSubmit: e(T)
171
+ }, {
172
+ default: u(({ trigger: s }) => [
173
+ n(D, {
174
+ label: e(l)("menu.catalog.edit.apply_scheduler"),
175
+ onClick: s
176
+ }, null, 8, ["label", "onClick"])
177
+ ]),
178
+ _: 1
179
+ }, 8, ["categorized-items", "initial-value", "menu-items", "link-item-rules", "no-scheduler", "onSubmit"]))
180
+ ])
181
+ ]),
182
+ default: u(() => [
183
+ n(B, {
184
+ modelValue: c.value,
185
+ "onUpdate:modelValue": t[3] || (t[3] = (s) => c.value = s),
186
+ items: h,
187
+ class: "mb-7 xs:mb-0 xs:px-32"
188
+ }, null, 8, ["modelValue"]),
189
+ m("div", ge, [
190
+ n(se, { "menu-store": e(a) }, null, 8, ["menu-store"]),
191
+ n(P)
192
+ ])
193
+ ]),
194
+ _: 1
195
+ }, 8, ["heading"])
196
+ ], 64);
197
+ };
198
+ }
199
+ });
200
+ export {
201
+ Oe as default
202
+ };
@@ -1,5 +1,5 @@
1
1
  import { defineStore as r } from "pinia";
2
- import { aq as a, ar as s, as as l } from "./menu-ILWxqJQe.js";
2
+ import { ak as a, al as s, am as l } from "./menu-DTlhFcnq.js";
3
3
  const u = {
4
4
  async read() {
5
5
  return a(await s().get("/public-setting"));
@@ -1826,7 +1826,7 @@ const gi = [
1826
1826
  {
1827
1827
  path: "/product",
1828
1828
  name: "$menu-products",
1829
- component: b(() => import("./Products-DJqgSe-Y.js")),
1829
+ component: b(() => import("./Products-B3tF_gCa.js")),
1830
1830
  meta: {
1831
1831
  isNavItem: !0,
1832
1832
  i18nId: "menu.products.title"
@@ -1836,7 +1836,7 @@ const gi = [
1836
1836
  path: "/product-internal-tools",
1837
1837
  name: "$menu-product-internal-tools",
1838
1838
  component: pt(
1839
- b(() => import("./ProductInternalTools-GJ2OE5gU.js"))
1839
+ b(() => import("./ProductInternalTools-DjSkvzw2.js"))
1840
1840
  ),
1841
1841
  meta: {
1842
1842
  i18nId: "menu.productInternalTools.title",
@@ -1849,7 +1849,7 @@ const gi = [
1849
1849
  {
1850
1850
  path: "/category",
1851
1851
  name: "$menu-category",
1852
- component: b(() => import("./Category-OjK-v--G.js")),
1852
+ component: b(() => import("./Category-ClrACB2e.js")),
1853
1853
  meta: {
1854
1854
  isNavItem: !0,
1855
1855
  i18nId: "menu.category.title"
@@ -1858,7 +1858,7 @@ const gi = [
1858
1858
  {
1859
1859
  path: "/subcategory",
1860
1860
  name: "$menu-subcategory",
1861
- component: b(() => import("./Subcategory-DVewA8HX.js")),
1861
+ component: b(() => import("./Subcategory-25AzJQYt.js")),
1862
1862
  meta: {
1863
1863
  isNavItem: () => E.value,
1864
1864
  i18nId: "menu.subcategory.title"
@@ -1867,7 +1867,7 @@ const gi = [
1867
1867
  {
1868
1868
  path: "/group",
1869
1869
  name: "$menu-group",
1870
- component: b(() => import("./Group-K4925_bP.js")),
1870
+ component: b(() => import("./Group-DLahX8qi.js")),
1871
1871
  meta: {
1872
1872
  isNavItem: !0,
1873
1873
  i18nId: "menu.group.title"
@@ -1876,7 +1876,7 @@ const gi = [
1876
1876
  {
1877
1877
  path: "/takeaway",
1878
1878
  name: "$menu-takeaway",
1879
- component: b(() => import("./Takeaway-B4lDGQDh.js")),
1879
+ component: b(() => import("./Takeaway-CcFK-Y2z.js")),
1880
1880
  meta: {
1881
1881
  isNavItem: !0,
1882
1882
  i18nId: "menu.takeaway.title"
@@ -1885,7 +1885,7 @@ const gi = [
1885
1885
  {
1886
1886
  path: "/scheduler",
1887
1887
  name: "$menu-scheduler",
1888
- component: b(() => import("./Scheduler-DUeTkyGQ.js")),
1888
+ component: b(() => import("./Scheduler-DJSKWS-9.js")),
1889
1889
  meta: {
1890
1890
  isNavItem: !0,
1891
1891
  i18nId: "menu.scheduler.title"
@@ -1894,7 +1894,7 @@ const gi = [
1894
1894
  {
1895
1895
  path: "/variant",
1896
1896
  name: "$menu-variant",
1897
- component: b(() => import("./Variant-DmccAgFU.js")),
1897
+ component: b(() => import("./Variant-BTCkw4RC.js")),
1898
1898
  meta: {
1899
1899
  isNavItem: !0,
1900
1900
  i18nId: "menu.variant.title"
@@ -1903,7 +1903,7 @@ const gi = [
1903
1903
  {
1904
1904
  path: "/recipe",
1905
1905
  name: "$menu-recipe",
1906
- component: b(() => import("./Recipe-BbQKou9p.js")),
1906
+ component: b(() => import("./Recipe-BxgHUzb5.js")),
1907
1907
  meta: {
1908
1908
  isNavItem: () => !E.value,
1909
1909
  i18nId: "menu.recipe.title"
@@ -1912,7 +1912,7 @@ const gi = [
1912
1912
  {
1913
1913
  path: "/ingredient",
1914
1914
  name: "$menu-ingredient",
1915
- component: b(() => import("./Ingredient-G4Txx6_0.js")),
1915
+ component: b(() => import("./Ingredient-SsBtwYjB.js")),
1916
1916
  meta: {
1917
1917
  isNavItem: () => !E.value,
1918
1918
  i18nId: "menu.ingredient.title"
@@ -1921,7 +1921,7 @@ const gi = [
1921
1921
  {
1922
1922
  path: "/unit",
1923
1923
  name: "$menu-unit",
1924
- component: b(() => import("./Unit-CVF0dom4.js")),
1924
+ component: b(() => import("./Unit-Cs1EOuyg.js")),
1925
1925
  meta: {
1926
1926
  isNavItem: () => !E.value,
1927
1927
  i18nId: "menu.unit.title"
@@ -1930,7 +1930,7 @@ const gi = [
1930
1930
  {
1931
1931
  path: "/cooking-guide",
1932
1932
  name: "$menu-cooking-guide",
1933
- component: b(() => import("./CookingGuide-ANnXKBjc.js")),
1933
+ component: b(() => import("./CookingGuide-1553FWRH.js")),
1934
1934
  meta: {
1935
1935
  isNavItem: !0,
1936
1936
  i18nId: "menu.cooking_guide.title"
@@ -1939,7 +1939,7 @@ const gi = [
1939
1939
  {
1940
1940
  path: "/print-route",
1941
1941
  name: "$menu-print-route",
1942
- component: b(() => import("./PrintRoute-IxHGvGzF.js")),
1942
+ component: b(() => import("./PrintRoute-BdlT0DDr.js")),
1943
1943
  meta: {
1944
1944
  isNavItem: !0,
1945
1945
  i18nId: "menu.print_route.title"
@@ -1948,7 +1948,7 @@ const gi = [
1948
1948
  {
1949
1949
  path: "/serving-sequence",
1950
1950
  name: "$menu-serving-sequence",
1951
- component: b(() => import("./ServingSequence-BROo5rC_.js")),
1951
+ component: b(() => import("./ServingSequence-_cmuGKlV.js")),
1952
1952
  meta: {
1953
1953
  isNavItem: () => E.value,
1954
1954
  i18nId: "menu.serving_sequence.title"
@@ -1957,7 +1957,7 @@ const gi = [
1957
1957
  {
1958
1958
  path: "/publish",
1959
1959
  name: "$menu-publish",
1960
- component: b(() => import("./Publish-C86rd413.js")),
1960
+ component: b(() => import("./Publish-G4bwUpme.js")),
1961
1961
  meta: {
1962
1962
  isNavItem: !0,
1963
1963
  i18nId: "menu.publish.title"
@@ -1970,7 +1970,7 @@ const gi = [
1970
1970
  {
1971
1971
  path: "/setting",
1972
1972
  name: "$menu-menu-setting",
1973
- component: b(() => import("./MenuSetting-Cx-EHG-6.js")),
1973
+ component: b(() => import("./MenuSetting-D28a3uD4.js")),
1974
1974
  meta: {
1975
1975
  isNavItem: !0,
1976
1976
  i18nId: "menu.menu_setting.title"
@@ -1985,7 +1985,7 @@ const gi = [
1985
1985
  {
1986
1986
  path: "/catalog",
1987
1987
  name: "$menu-catalog",
1988
- component: b(() => import("./Catalog-CFx7t_Nu.js")),
1988
+ component: b(() => import("./Catalog-DiPY42vz.js")),
1989
1989
  meta: {
1990
1990
  isNavItem: !0,
1991
1991
  i18nId: "menu.catalog.title"
@@ -1993,7 +1993,7 @@ const gi = [
1993
1993
  },
1994
1994
  {
1995
1995
  path: "/catalog/edit/:id",
1996
- component: b(() => import("./_id_-CWtK62Fy.js")),
1996
+ component: b(() => import("./_id_-C9b2WHzy.js")),
1997
1997
  name: "$menu-catalog-edit",
1998
1998
  children: [
1999
1999
  {
@@ -2005,31 +2005,31 @@ const gi = [
2005
2005
  },
2006
2006
  {
2007
2007
  path: "/catalog/edit/:id/product",
2008
- component: b(() => import("./Product-D1gqn5J6.js")),
2008
+ component: b(() => import("./Product-s5Q4wV8i.js")),
2009
2009
  name: "$menu-catalog-edit-product"
2010
2010
  /* EDIT_CATALOG_PRODUCT */
2011
2011
  },
2012
2012
  {
2013
2013
  path: "/catalog/edit/:id/category",
2014
- component: b(() => import("./Category-CPMx86rY.js")),
2014
+ component: b(() => import("./Category-B9jnFDvG.js")),
2015
2015
  name: "$menu-catalog-edit-category"
2016
2016
  /* EDIT_CATALOG_CATEGORY */
2017
2017
  },
2018
2018
  {
2019
2019
  path: "/catalog/edit/:id/group",
2020
- component: b(() => import("./Group--DJjkGab.js")),
2020
+ component: b(() => import("./Group-l_-qZSyF.js")),
2021
2021
  name: "$menu-catalog-edit-group"
2022
2022
  /* EDIT_CATALOG_GROUP */
2023
2023
  },
2024
2024
  {
2025
2025
  path: "/catalog/edit/:id/takeaway",
2026
- component: b(() => import("./Takeaway-DyPjHuCl.js")),
2026
+ component: b(() => import("./Takeaway-Bmm9d5PO.js")),
2027
2027
  name: "$menu-catalog-edit-takeaway"
2028
2028
  /* EDIT_CATALOG_TAKEAWAY */
2029
2029
  },
2030
2030
  {
2031
2031
  path: "/catalog/edit/:id/setting",
2032
- component: b(() => import("./Setting-D-ueTlwO.js")),
2032
+ component: b(() => import("./Setting-Dx7ycxAn.js")),
2033
2033
  name: "$menu-catalog-edit-setting"
2034
2034
  /* EDIT_CATALOG_SETTING */
2035
2035
  }
@@ -2037,7 +2037,7 @@ const gi = [
2037
2037
  }
2038
2038
  ], si = "treeEditorOpen", bi = () => {
2039
2039
  window.postMessage({ type: si }, "*");
2040
- }, yi = b(() => import("./App-Dt6RQiUh.js"));
2040
+ }, yi = b(() => import("./App-BAMi-a9P.js"));
2041
2041
  function hi(e, t) {
2042
2042
  e.use(Wa);
2043
2043
  }
package/dist/app.js CHANGED
@@ -1,4 +1,4 @@
1
- import { F as e, c as o, i as t, a as r, o as i, r as p, b as u } from "./app-CV_q8OdE.js";
1
+ import { F as e, c as o, i as t, a as r, o as i, r as p, b as u } from "./app-CU2frfPB.js";
2
2
  export {
3
3
  e as FmApp,
4
4
  o as catalogRoutes,
@@ -0,0 +1,33 @@
1
+ interface Props {
2
+ fullWidth?: boolean;
3
+ currentRestaurantCustomAttributes: Record<string, any>;
4
+ }
5
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
6
+ fullWidth: boolean;
7
+ }>>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
8
+ confirm: (payload: Record<string, string>) => void;
9
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
10
+ fullWidth: boolean;
11
+ }>>> & Readonly<{
12
+ onConfirm?: ((payload: Record<string, string>) => any) | undefined;
13
+ }>, {
14
+ fullWidth: boolean;
15
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
16
+ export default _default;
17
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
18
+ type __VLS_TypePropsToRuntimeProps<T> = {
19
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
20
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
21
+ } : {
22
+ type: import('vue').PropType<T[K]>;
23
+ required: true;
24
+ };
25
+ };
26
+ type __VLS_WithDefaults<P, D> = {
27
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
28
+ default: D[K];
29
+ }> : P[K];
30
+ };
31
+ type __VLS_Prettify<T> = {
32
+ [K in keyof T]: T[K];
33
+ } & {};
@@ -1,3 +1,4 @@
1
+ import { FdoCatalogLinkItemRule } from "@feedmepos/menu/entity";
1
2
  export default function useCatalogManager(): {
2
3
  linkableItems: import("vue").ComputedRef<import("../../../../helper/menu").CategorizedItem[]>;
3
4
  currentItems: import("vue").ComputedRef<{
@@ -6,4 +7,5 @@ export default function useCatalogManager(): {
6
7
  setProduct: (productIds: string[]) => Promise<void>;
7
8
  applyProduct: (newProductIds: string[]) => Promise<void>;
8
9
  removeProduct: (newProductIds: string[]) => Promise<void>;
10
+ saveLinkItemRules: (linkItemRules: FdoCatalogLinkItemRule[] | null | undefined) => Promise<void>;
9
11
  };
@@ -13,6 +13,7 @@ interface MenuState {
13
13
  currentCategoryIds: (string | null)[] | null;
14
14
  currentCatalogId: string | null;
15
15
  currentSchedulerId: string | null;
16
+ currentRestaurantCustomAttributes: any;
16
17
  }
17
18
  interface ITaxSetting {
18
19
  systemCode: string;
@@ -7505,6 +7506,7 @@ interface MenuStoreType {
7505
7506
  selectCatalog: (id: string | null) => void;
7506
7507
  selectScheduler: (id: string | null) => void;
7507
7508
  selectCategory: (id: (string | null)[] | null) => void;
7509
+ setRestaurantCustomAttributes: (attr?: any) => void;
7508
7510
  updateMenu: (data: UpdateMenuModuleRequest | UpdateMenuModuleRequest[], performValidate?: boolean) => Promise<FdtoUpdateMenuRes | void>;
7509
7511
  updateMenuSetting: (data: UpdateMenuSettingReq) => Promise<MenuV4Doc>;
7510
7512
  computeMergedMenu: () => Promise<FdoMenuV4>;
@@ -7523,5 +7525,5 @@ interface MenuStoreType {
7523
7525
  redoHistory: () => void;
7524
7526
  clearHistory: () => void;
7525
7527
  }
7526
- export declare const useMenuStore: import("pinia").StoreDefinition<"mf-menu-store-v2", Pick<MenuStoreType, "state" | "mergedMenu" | "workerIsComputing" | "mergedMenuChangeId">, Pick<MenuStoreType, "groups" | "items" | "version" | "isV4" | "serveSequence" | "catalogs" | "currentCatalog" | "schedulers" | "currentScheduler" | "catalogOptions" | "categories" | "subcategories" | "sortedItems" | "categorizedItems" | "categorizedRawMenuItems" | "variants" | "takeaways" | "printDepartments" | "units" | "recipes" | "cookingGuide" | "skus" | "rules" | "taxSetting" | "canUndoHistory" | "canRedoHistory">, Pick<MenuStoreType, "readMenu" | "readRestaurants" | "selectCatalog" | "selectScheduler" | "selectCategory" | "updateMenu" | "updateMenuSetting" | "encodeTax" | "decodeTax" | "getSelectedTax" | "mapVariant" | "setMenu" | "computeMergedMenu" | "undoHistory" | "redoHistory" | "clearHistory">>;
7528
+ export declare const useMenuStore: import("pinia").StoreDefinition<"mf-menu-store-v2", Pick<MenuStoreType, "state" | "mergedMenu" | "workerIsComputing" | "mergedMenuChangeId">, Pick<MenuStoreType, "groups" | "items" | "version" | "isV4" | "serveSequence" | "catalogs" | "currentCatalog" | "schedulers" | "currentScheduler" | "catalogOptions" | "categories" | "subcategories" | "sortedItems" | "categorizedItems" | "categorizedRawMenuItems" | "variants" | "takeaways" | "printDepartments" | "units" | "recipes" | "cookingGuide" | "skus" | "rules" | "taxSetting" | "canUndoHistory" | "canRedoHistory">, Pick<MenuStoreType, "readMenu" | "readRestaurants" | "selectCatalog" | "selectScheduler" | "selectCategory" | "setRestaurantCustomAttributes" | "updateMenu" | "updateMenuSetting" | "encodeTax" | "decodeTax" | "getSelectedTax" | "mapVariant" | "setMenu" | "computeMergedMenu" | "undoHistory" | "redoHistory" | "clearHistory">>;
7527
7529
  export {};
@@ -84,5 +84,13 @@ export declare function useCustomAttributes(source: Ref<any[]> | ComputedRef<any
84
84
  } | any)[];
85
85
  }>;
86
86
  };
87
+ export declare const EMPTY_MONGO_QUERY: {
88
+ $and: never[];
89
+ };
90
+ export declare const EMPTY_RULE: {
91
+ logic: string;
92
+ rules: never[];
93
+ };
87
94
  export declare function isEmptyMongoQuery(query: MongoQuery<any>): boolean;
95
+ export declare function isEmptyRule(rule: any): boolean;
88
96
  export {};