@feedmepos/mf-menu 0.31.31-beta.1 → 0.31.31-prod
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-1TX8v7ZA.js → App-Cvgz2kQV.js} +22 -24
- package/dist/{ApplyProduct.vue_vue_type_script_setup_true_lang-CR7QrFUG.js → ApplyProduct.vue_vue_type_script_setup_true_lang-Bq84uuiq.js} +22 -22
- package/dist/{Catalog-DWClc58s.js → Catalog-Ye-KpQ31.js} +74 -75
- package/dist/{Category-BqKFvFam.js → Category-BPChBqVR.js} +60 -60
- package/dist/{Category-IYMtMoT-.js → Category-CHcxix2b.js} +28 -28
- package/dist/{CookingGuide-BayJ6zj4.js → CookingGuide-DgygBSoB.js} +101 -103
- package/dist/{CustomAttributeChip.vue_vue_type_script_setup_true_lang-Ceq86b3d.js → CustomAttributeChip.vue_vue_type_script_setup_true_lang-ClV6LD2-.js} +1 -1
- package/dist/{Group-LqSX7ue6.js → Group-223G1Edd.js} +1 -1
- package/dist/{Group-RujTPTns.js → Group-B7EU1xmY.js} +3 -3
- package/dist/{Group.vue_vue_type_script_setup_true_lang-Dj9ZmkYe.js → Group.vue_vue_type_script_setup_true_lang-CAZuyOPy.js} +137 -138
- package/dist/{GroupMarkupPriceDialog.vue_vue_type_script_setup_true_lang-D5GWkh3G.js → GroupMarkupPriceDialog.vue_vue_type_script_setup_true_lang-CdjRWC9z.js} +13 -13
- package/dist/{ImportProductDialog.vue_vue_type_script_setup_true_lang-C4IrA3es.js → ImportProductDialog.vue_vue_type_script_setup_true_lang-BRQm-UTk.js} +5067 -5049
- package/dist/{Ingredient-_tc8llr1.js → Ingredient-Dl1Z5Qt2.js} +64 -65
- package/dist/{InventoryBinding.vue_vue_type_script_setup_true_lang-DLFDf-VZ.js → InventoryBinding.vue_vue_type_script_setup_true_lang-CxuQTH0k.js} +1061 -1063
- package/dist/{LinkProductSideSheet-C6rF-G1v.js → LinkProductSideSheet-Y-Z9_9Kp.js} +12 -14
- package/dist/{MenuSetting-xDHeeROY.js → MenuSetting-Be44fmVj.js} +26 -27
- package/dist/{PrintRoute-B_TFMn5e.js → PrintRoute-BURAEZ6X.js} +15 -17
- package/dist/{Product-DdEEqrtc.js → Product-DSlVHbgr.js} +1 -1
- package/dist/{Product.vue_vue_type_script_setup_true_lang-zcistmwh.js → Product.vue_vue_type_script_setup_true_lang-DtYarO0L.js} +256 -257
- package/dist/{ProductInternalTools-BcC7BF6W.js → ProductInternalTools-gW57aUAO.js} +45 -45
- package/dist/{Products-Cu0cJshV.js → Products-Czr-70M8.js} +72 -74
- package/dist/{Publish-Bm3Xiks1.js → Publish-XCowNW_z.js} +32 -34
- package/dist/{Recipe-DWK-luIZ.js → Recipe-6oNz21AB.js} +63 -65
- package/dist/{Scheduler-Cb1TeBhW.js → Scheduler-UYFuFk5E.js} +19 -19
- package/dist/{ServingSequence-evSIET_8.js → ServingSequence-w66ujU4D.js} +34 -34
- package/dist/{Setting-Cn3kwC9F.js → Setting-Dgn3lOx7.js} +53 -54
- package/dist/{Subcategory-q4m4qHsU.js → Subcategory-lnzuxCCH.js} +34 -34
- package/dist/{Takeaway-ClepHYGu.js → Takeaway-C5Up5Odr.js} +14 -14
- package/dist/{Takeaway-D-rdUZuh.js → Takeaway-DP1GJUPF.js} +1 -1
- package/dist/{Takeaway.vue_vue_type_script_setup_true_lang-y9Yxstu2.js → Takeaway.vue_vue_type_script_setup_true_lang-B45keXn7.js} +40 -41
- package/dist/{TreeEditorOpenner.vue_vue_type_script_setup_true_lang-BSeLfoOA.js → TreeEditorOpenner.vue_vue_type_script_setup_true_lang-yEIxG4F2.js} +1108 -1109
- package/dist/{Unit-IM8Naj82.js → Unit-Bt8aRidX.js} +12 -12
- package/dist/{Variant-fzGvwaMo.js → Variant-DXoOAa9M.js} +16 -16
- package/dist/{_id_-BsKNG9Qv.js → _id_-D9tvinax.js} +22 -22
- package/dist/{app-BzQRUMTK.js → app-Cnlv4rmj.js} +3 -3
- package/dist/{app-CoVUUCa_.js → app-DiizQWjo.js} +24 -24
- package/dist/app.js +1 -1
- package/dist/apps/mf-menu/src/components/feature/ApplyProduct/ApplyProduct.vue.d.ts +88 -16
- package/dist/apps/mf-menu/src/components/feature/ApplyProduct/ApplyProductDialog.vue.d.ts +44 -8
- package/dist/apps/mf-menu/src/components/feature/ApplyProduct/index.d.ts +360 -184
- package/dist/apps/mf-menu/src/components/feature/GroupManager/OptionTable.vue.d.ts +80 -28
- package/dist/apps/mf-menu/src/components/feature/GroupManager/UpdateForm.vue.d.ts +44 -8
- package/dist/apps/mf-menu/src/components/feature/PriceTier/PriceTierButton.vue.d.ts +216 -148
- package/dist/apps/mf-menu/src/components/feature/PriceTier/PriceTierForm.vue.d.ts +216 -148
- package/dist/apps/mf-menu/src/components/feature/TreeEditor/composable/category.d.ts +4 -4
- package/dist/apps/mf-menu/src/components/feature/TreeEditor/composable/item.d.ts +218 -150
- package/dist/apps/mf-menu/src/components/feature/TreeEditor/composable/scheduler.d.ts +142 -82
- package/dist/apps/mf-menu/src/components/feature/TreeEditor/composable/useItemFormManagement.d.ts +108 -74
- package/dist/apps/mf-menu/src/components/feature/TreeEditor/form/GroupManager/OptionTable.vue.d.ts +80 -28
- package/dist/apps/mf-menu/src/components/feature/TreeEditor/form/GroupManager/UpdateForm.vue.d.ts +44 -8
- package/dist/apps/mf-menu/src/components/feature/TreeEditor/form/GroupManager/index.d.ts +176 -32
- package/dist/apps/mf-menu/src/components/feature/TreeEditor/item/ItemForm.vue.d.ts +324 -222
- package/dist/apps/mf-menu/src/components/feature/TreeEditor/menuUtils.d.ts +108 -74
- package/dist/apps/mf-menu/src/components/feature/TreeEditor/store/menuV2.d.ts +1374 -1040
- package/dist/apps/mf-menu/src/components/import/PreviewAddonContent.vue.d.ts +216 -148
- package/dist/apps/mf-menu/src/helper/import-export.d.ts +1374 -1040
- package/dist/apps/mf-menu/src/helper/itemCategories.d.ts +108 -74
- package/dist/apps/mf-menu/src/helper/menu.d.ts +1523 -1155
- package/dist/apps/mf-menu/src/manager/menu/category.d.ts +4 -4
- package/dist/apps/mf-menu/src/manager/menu/item.d.ts +1374 -1040
- package/dist/apps/mf-menu/src/manager/menu/subcategory.d.ts +4 -4
- package/dist/apps/mf-menu/src/stores/manager/item.d.ts +324 -222
- package/dist/apps/mf-menu/src/stores/manager/recipe.d.ts +12 -12
- package/dist/apps/mf-menu/src/stores/manager/scheduler.d.ts +142 -82
- package/dist/apps/mf-menu/src/stores/manager/sku.d.ts +60 -60
- package/dist/apps/mf-menu/src/stores/manager/takeaway.d.ts +6 -6
- package/dist/apps/mf-menu/src/stores/manager/unit.d.ts +12 -12
- package/dist/apps/mf-menu/src/stores/menu.d.ts +1375 -1041
- package/dist/apps/mf-menu/src/views/Catalog/Edit/AddProductPopup/Form.vue.d.ts +216 -148
- package/dist/apps/mf-menu/src/views/CookingGuide/CookingGuideDialog.vue.d.ts +4 -4
- package/dist/apps/mf-menu/src/views/Publish/UpdateCatalogDialog.vue.d.ts +352 -132
- package/dist/apps/mf-menu/src/views/Scheduler/FilterForm.vue.d.ts +84 -32
- package/dist/apps/mf-menu/src/views/Scheduler/SchedulerDialog.vue.d.ts +84 -32
- package/dist/apps/mf-menu/tsconfig.app.tsbuildinfo +1 -1
- package/dist/assets/linked-status-D7AwcSC5.js +24 -0
- package/dist/assets/override-menu-Y9T4wxEn.js +24 -0
- package/dist/assets/validate-menu-DiAW2jY1.js +24 -0
- package/dist/{catalog-CaXceaA2.js → catalog-DUSCax4J.js} +1 -1
- package/dist/{catalogSetting-BGvckFdh.js → catalogSetting-18FJ5pkA.js} +1 -1
- package/dist/{category-u5eo_Vjd.js → category-B9XvlPFy.js} +3 -5
- package/dist/currency-Sno8fZYc.js +7 -0
- package/dist/{dayjs.min-Bsr3tJCn.js → dayjs.min-BsfKOrNo.js} +1 -1
- package/dist/{index-tRQb7RN_.js → index-BDpkSKDX.js} +1 -1
- package/dist/{index-Bbx4iZ6n.js → index-Eomwf2OO.js} +27 -27
- package/dist/{index-DSAG0yWh.js → index-ltyOwsRO.js} +20 -22
- package/dist/{item-BAqzKh4O.js → item-5Kkzf_eF.js} +1069 -1071
- package/dist/{jszip.min-BKJtvCjM.js → jszip.min-CRfpGjN8.js} +545 -545
- package/dist/menu-Btcr0nsk.js +108040 -0
- package/dist/{menu-CDrsBjmr.js → menu-DYs_VNfB.js} +9 -11
- package/dist/mf-menu.css +1 -1
- package/dist/{priceTier-DfbHonGe.js → priceTier-DvUjWwCM.js} +4 -4
- package/dist/{scheduler-DTWaBudB.js → scheduler-C76blUlS.js} +11 -13
- package/dist/{subcategory-D-R5r1Tr.js → subcategory-C44qN5Vk.js} +133 -135
- package/dist/{toExcel-84VTtSA7.js → toExcel--vNjpF-b.js} +2 -2
- package/dist/{unit-B4zscxzo.js → unit-C4ghZU8x.js} +23 -24
- package/package.json +5 -5
- package/dist/assets/linked-status-eQqjvOq_.js +0 -24
- package/dist/assets/override-menu-C8NTBJgN.js +0 -24
- package/dist/assets/validate-menu-Dn-OO7Ed.js +0 -24
- package/dist/currency-BPHwez-E.js +0 -7
- package/dist/menu-CsIzrBEr.js +0 -74044
|
@@ -1,25 +1,24 @@
|
|
|
1
|
-
import { ref as V, computed as x, defineComponent as
|
|
2
|
-
import { u as ke,
|
|
1
|
+
import { ref as V, computed as x, defineComponent as E, resolveComponent as B, createBlock as P, openBlock as v, withCtx as A, createElementVNode as g, createVNode as m, unref as n, createElementBlock as C, Fragment as ne, renderList as xe, createCommentVNode as D, normalizeClass as re, toDisplayString as j, withModifiers as ie, mergeModels as Qe, useModel as He, renderSlot as ve, watch as ae, createTextVNode as Ye, watchEffect as Ze, nextTick as $e, resolveDynamicComponent as Je, onMounted as Xe, h as q, normalizeStyle as vt } from "vue";
|
|
2
|
+
import { u as ke, Q as ye, A as oe, H as Te, I as me, U as ft, ab as gt, ac as bt, ad as Ie, ae as _t, P as yt, af as Re } from "./menu-Btcr0nsk.js";
|
|
3
3
|
import { useI18n as Se, useCoreStore as Oe } from "@feedmepos/mf-common";
|
|
4
|
-
import { u as Ce } from "./menu-
|
|
4
|
+
import { u as Ce } from "./menu-DYs_VNfB.js";
|
|
5
5
|
import { _ as pe } from "./index.vue_vue_type_script_setup_true_lang-BgqsTzLI.js";
|
|
6
|
-
import { L as Be } from "./LinkProductSideSheet-
|
|
7
|
-
import { _ as Pe, h as je, a as ht, b as
|
|
8
|
-
import { f as xt, o as Ct, b as wt, m as kt } from "./subcategory-
|
|
9
|
-
import { r as St, _ as Ft, a as Vt, u as It } from "./ImportProductDialog.vue_vue_type_script_setup_true_lang-
|
|
10
|
-
import { u as et, C as $t } from "./item-
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import { _ as Me, u as Ot } from "./app-CoVUUCa_.js";
|
|
6
|
+
import { L as Be } from "./LinkProductSideSheet-Y-Z9_9Kp.js";
|
|
7
|
+
import { _ as Pe, h as je, a as ht, b as Ee } from "./CustomAttributeChip.vue_vue_type_script_setup_true_lang-ClV6LD2-.js";
|
|
8
|
+
import { f as xt, o as Ct, b as wt, m as kt } from "./subcategory-C44qN5Vk.js";
|
|
9
|
+
import { r as St, _ as Ft, a as Vt, u as It } from "./ImportProductDialog.vue_vue_type_script_setup_true_lang-BRQm-UTk.js";
|
|
10
|
+
import { u as et, C as $t } from "./item-5Kkzf_eF.js";
|
|
11
|
+
import { useBreakpoints as tt, components as J, useDialog as Tt, FmButtonColorThemeVariant as Q, FmButtonVariant as Z } from "@feedmepos/ui-library";
|
|
12
|
+
import { F as Pt } from "./index-BDpkSKDX.js";
|
|
13
|
+
import { _ as Ue, u as At } from "./app-DiizQWjo.js";
|
|
15
14
|
import { _ as he } from "./TextChip.vue_vue_type_script_setup_true_lang-8frWuZFL.js";
|
|
16
|
-
import { _ as
|
|
15
|
+
import { _ as Ot } from "./index-ltyOwsRO.js";
|
|
17
16
|
import { _ as Ae } from "./Thumbnail.vue_vue_type_script_setup_true_lang-DzQ8_6Bi.js";
|
|
18
17
|
import { c as Ut } from "./check-C9mY6LiX.js";
|
|
19
|
-
import { f as
|
|
20
|
-
import { w as
|
|
21
|
-
import { r as
|
|
22
|
-
function
|
|
18
|
+
import { f as Mt } from "./currency-Sno8fZYc.js";
|
|
19
|
+
import { w as Dt } from "./tooltip-B5BiPMx9.js";
|
|
20
|
+
import { r as zt } from "./index-Ce4v8o7D.js";
|
|
21
|
+
function Nt(w, a) {
|
|
23
22
|
const r = V(!0), u = x(() => {
|
|
24
23
|
var s, f;
|
|
25
24
|
return !r.value && (!a.value || ((s = a.value) == null ? void 0 : s.length) === ((f = w.value) == null ? void 0 : f.length));
|
|
@@ -35,47 +34,47 @@ function Dt(w, a) {
|
|
|
35
34
|
a.value === void 0 && r.value ? f = [s] : a.value === void 0 && !r.value ? f = (p = w.value.map((k) => k.value)) == null ? void 0 : p.filter((k) => k !== s) : (b = a.value) != null && b.includes(s) ? f = (y = a.value) == null ? void 0 : y.filter((k) => k !== s) : f = [...a.value || [], s], f.length === 0 ? (a.value = void 0, r.value = !0) : f.length === w.value.length ? (a.value = void 0, r.value = !1) : a.value = f;
|
|
36
35
|
} };
|
|
37
36
|
}
|
|
38
|
-
const Kt = { class: "inline-flex items-center" },
|
|
37
|
+
const Kt = { class: "inline-flex items-center" }, Rt = {
|
|
39
38
|
key: 0,
|
|
40
|
-
class: /* @__PURE__ */
|
|
39
|
+
class: /* @__PURE__ */ re([
|
|
41
40
|
"fm-typo-en-body-md-600 select-none text-ellipsis overflow-hidden whitespace-nowrap",
|
|
42
41
|
"text-fm-color-neutral-gray-400"
|
|
43
42
|
])
|
|
44
|
-
},
|
|
43
|
+
}, Bt = { class: "p-4" }, jt = { class: "flex-1 overflow-y-auto min-h-0" }, Ge = /* @__PURE__ */ E({
|
|
45
44
|
__name: "CategorySelector",
|
|
46
45
|
emits: ["toggleAttributeFilter"],
|
|
47
46
|
setup(w, { emit: a }) {
|
|
48
47
|
const r = a, u = ke(), { categories: l, selectedCategories: i } = Ce(), o = x(() => u.state.currentCategoryIds), s = x(
|
|
49
|
-
() => l.value.map((
|
|
48
|
+
() => l.value.map((G) => ({ label: G.name, value: G.id }))
|
|
50
49
|
), f = x(() => s.value.filter(
|
|
51
|
-
(
|
|
50
|
+
(G) => G.label.toLowerCase().includes(y.value.toLowerCase())
|
|
52
51
|
)), { t: p } = Se(), b = x(() => {
|
|
53
|
-
var
|
|
54
|
-
return l.value.length === ((
|
|
52
|
+
var G, I, z;
|
|
53
|
+
return l.value.length === ((G = i.value) == null ? void 0 : G.length) ? p("menu.category.selector.all") : ((I = i.value) == null ? void 0 : I.length) === 1 ? i.value[0].name : `${(z = i.value) == null ? void 0 : z.length}`;
|
|
55
54
|
}), y = V(""), k = x({
|
|
56
55
|
get: () => o.value,
|
|
57
|
-
set: (
|
|
58
|
-
u.selectCategory(
|
|
56
|
+
set: (G) => {
|
|
57
|
+
u.selectCategory(G);
|
|
59
58
|
}
|
|
60
|
-
}), { allSelected: L, toggleAll: ee, toggleOption: S, indeterminate: H } =
|
|
59
|
+
}), { allSelected: L, toggleAll: ee, toggleOption: S, indeterminate: H } = Nt(
|
|
61
60
|
s,
|
|
62
61
|
k
|
|
63
62
|
), W = Oe(), te = x(() => W.itemAttributeSettings.value.length > 0);
|
|
64
63
|
function ce() {
|
|
65
64
|
r("toggleAttributeFilter");
|
|
66
65
|
}
|
|
67
|
-
return (
|
|
68
|
-
const
|
|
69
|
-
return v(), P(
|
|
66
|
+
return (G, I) => {
|
|
67
|
+
const z = B("FmIcon"), M = B("FmChip"), T = B("FmSearch"), $ = B("FmMenuItem"), N = B("FmMenu");
|
|
68
|
+
return v(), P(N, {
|
|
70
69
|
"close-on-click": !1,
|
|
71
70
|
width: 220
|
|
72
71
|
}, {
|
|
73
72
|
"menu-button": A(() => [
|
|
74
73
|
g("div", Kt, [
|
|
75
|
-
m(
|
|
74
|
+
m(M, null, {
|
|
76
75
|
default: A(() => [
|
|
77
|
-
b.value ? (v(), C("div",
|
|
78
|
-
m(
|
|
76
|
+
b.value ? (v(), C("div", Rt, j(n(p)("menu.category.selector.title", { label: b.value })), 1)) : D("", !0),
|
|
77
|
+
m(z, {
|
|
79
78
|
color: "neutral-gray-400",
|
|
80
79
|
name: "expand_more",
|
|
81
80
|
size: "sm"
|
|
@@ -83,32 +82,32 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
83
82
|
te.value ? (v(), C("div", {
|
|
84
83
|
key: 1,
|
|
85
84
|
class: "pl-8 flex items-center justify-center border-l border-fm-color-neutral-gray-200",
|
|
86
|
-
onClick:
|
|
85
|
+
onClick: ie(ce, ["stop"])
|
|
87
86
|
}, [
|
|
88
|
-
m(
|
|
87
|
+
m(z, {
|
|
89
88
|
name: "filter_alt",
|
|
90
89
|
outline: "",
|
|
91
90
|
color: "neutral-gray-400",
|
|
92
91
|
size: "sm",
|
|
93
|
-
onClick: I[0] || (I[0] =
|
|
92
|
+
onClick: I[0] || (I[0] = ie(() => {
|
|
94
93
|
}, ["prevent"]))
|
|
95
94
|
})
|
|
96
|
-
])) :
|
|
95
|
+
])) : D("", !0)
|
|
97
96
|
]),
|
|
98
97
|
_: 1
|
|
99
98
|
})
|
|
100
99
|
])
|
|
101
100
|
]),
|
|
102
101
|
default: A(() => [
|
|
103
|
-
g("div",
|
|
102
|
+
g("div", Bt, [
|
|
104
103
|
m(T, {
|
|
105
104
|
autofocus: "",
|
|
106
105
|
modelValue: y.value,
|
|
107
|
-
"onUpdate:modelValue": I[1] || (I[1] = (
|
|
106
|
+
"onUpdate:modelValue": I[1] || (I[1] = (U) => y.value = U),
|
|
108
107
|
placeholder: n(p)("menu.common.actions.search")
|
|
109
108
|
}, null, 8, ["modelValue", "placeholder"])
|
|
110
109
|
]),
|
|
111
|
-
g("div",
|
|
110
|
+
g("div", jt, [
|
|
112
111
|
m($, {
|
|
113
112
|
label: "All",
|
|
114
113
|
"has-checkbox": "",
|
|
@@ -116,14 +115,14 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
116
115
|
indeterminate: n(H),
|
|
117
116
|
onClick: n(ee)
|
|
118
117
|
}, null, 8, ["model-value", "indeterminate", "onClick"]),
|
|
119
|
-
(v(!0), C(
|
|
120
|
-
var
|
|
118
|
+
(v(!0), C(ne, null, xe(f.value, (U) => {
|
|
119
|
+
var K;
|
|
121
120
|
return v(), P($, {
|
|
122
|
-
key:
|
|
123
|
-
label:
|
|
121
|
+
key: U.value || "",
|
|
122
|
+
label: U.label,
|
|
124
123
|
"has-checkbox": "",
|
|
125
|
-
"model-value": n(L) || ((
|
|
126
|
-
onClick: (O) => n(S)(
|
|
124
|
+
"model-value": n(L) || ((K = k.value) == null ? void 0 : K.includes(U.value)),
|
|
125
|
+
onClick: (O) => n(S)(U.value)
|
|
127
126
|
}, null, 8, ["label", "model-value", "onClick"]);
|
|
128
127
|
}), 128))
|
|
129
128
|
])
|
|
@@ -132,13 +131,13 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
132
131
|
});
|
|
133
132
|
};
|
|
134
133
|
}
|
|
135
|
-
}), Et = { class: "flex flex-wrap gap-8" },
|
|
134
|
+
}), Et = { class: "flex flex-wrap gap-8" }, Gt = { class: "py-12 px-16 space-y-12" }, Lt = { class: "fm-typo-en-body-md-600 text-fm-color-neutral-gray-600" }, Wt = { class: "flex flex-wrap gap-8" }, qt = {
|
|
136
135
|
key: 0,
|
|
137
136
|
class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary"
|
|
138
|
-
},
|
|
137
|
+
}, Qt = { key: 0 }, Ht = {
|
|
139
138
|
key: 1,
|
|
140
139
|
class: "inline-block w-8"
|
|
141
|
-
},
|
|
140
|
+
}, Yt = { key: 0 }, Zt = { key: 1 }, Le = /* @__PURE__ */ E({
|
|
142
141
|
__name: "CategoriesChip",
|
|
143
142
|
props: {
|
|
144
143
|
categories: { default: () => [] },
|
|
@@ -154,19 +153,19 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
154
153
|
});
|
|
155
154
|
return (p, b) => {
|
|
156
155
|
const y = B("FmTooltip");
|
|
157
|
-
return l.value ? (v(), C(
|
|
158
|
-
p.categories.length > 0 ? (v(), C("p",
|
|
156
|
+
return l.value ? (v(), C(ne, { key: 1 }, [
|
|
157
|
+
p.categories.length > 0 ? (v(), C("p", qt, [
|
|
159
158
|
g("span", null, j(n(r)("menu.product.table.columns.category")) + ": ", 1),
|
|
160
159
|
g("span", null, j(f.value), 1),
|
|
161
|
-
s.value ? (v(), C("span",
|
|
160
|
+
s.value ? (v(), C("span", Ht)) : (v(), C("br", Qt)),
|
|
162
161
|
p.categories.length > i.value ? (v(), C("span", {
|
|
163
162
|
key: 2,
|
|
164
163
|
class: "fm-typo-en-body-md-400 text-fm-color-primary cursor-pointer",
|
|
165
|
-
onClick: b[0] || (b[0] =
|
|
164
|
+
onClick: b[0] || (b[0] = ie((k) => s.value = !s.value, ["stop", "prevent"]))
|
|
166
165
|
}, [
|
|
167
|
-
s.value ? (v(), C("span",
|
|
168
|
-
])) :
|
|
169
|
-
])) :
|
|
166
|
+
s.value ? (v(), C("span", Yt, j(n(r)("menu.product.table.category.expand", { count: p.categories.length - i.value })), 1)) : (v(), C("span", Zt, j(n(r)("menu.product.table.category.collapse")), 1))
|
|
167
|
+
])) : D("", !0)
|
|
168
|
+
])) : D("", !0)
|
|
170
169
|
], 64)) : (v(), P(y, {
|
|
171
170
|
key: 0,
|
|
172
171
|
class: "flex",
|
|
@@ -175,10 +174,10 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
175
174
|
"z-index": 50
|
|
176
175
|
}, {
|
|
177
176
|
content: A(() => [
|
|
178
|
-
g("div",
|
|
179
|
-
g("p",
|
|
180
|
-
g("div",
|
|
181
|
-
(v(!0), C(
|
|
177
|
+
g("div", Gt, [
|
|
178
|
+
g("p", Lt, j(n(r)("menu.product.table.category.all")), 1),
|
|
179
|
+
g("div", Wt, [
|
|
180
|
+
(v(!0), C(ne, null, xe(a.categories, (k) => (v(), P(he, {
|
|
182
181
|
key: k,
|
|
183
182
|
label: k,
|
|
184
183
|
variant: "neutral"
|
|
@@ -188,7 +187,7 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
188
187
|
]),
|
|
189
188
|
default: A(() => [
|
|
190
189
|
g("div", Et, [
|
|
191
|
-
(v(!0), C(
|
|
190
|
+
(v(!0), C(ne, null, xe(o.value, (k) => (v(), P(he, {
|
|
192
191
|
key: k,
|
|
193
192
|
label: k,
|
|
194
193
|
variant: "neutral"
|
|
@@ -197,14 +196,14 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
197
196
|
key: 0,
|
|
198
197
|
label: "...",
|
|
199
198
|
variant: "neutral"
|
|
200
|
-
})) :
|
|
199
|
+
})) : D("", !0)
|
|
201
200
|
])
|
|
202
201
|
]),
|
|
203
202
|
_: 1
|
|
204
203
|
}));
|
|
205
204
|
};
|
|
206
205
|
}
|
|
207
|
-
}),
|
|
206
|
+
}), Jt = /* @__PURE__ */ E({
|
|
208
207
|
__name: "ProductSearcher",
|
|
209
208
|
props: /* @__PURE__ */ Qe({
|
|
210
209
|
label: {},
|
|
@@ -234,10 +233,10 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
234
233
|
}, null, 8, ["modelValue", "items", "label", "helper-text"]);
|
|
235
234
|
};
|
|
236
235
|
}
|
|
237
|
-
}),
|
|
236
|
+
}), Xt = { class: "flex" }, el = { class: "w-[260px] space-y-16 h-full" }, tl = { class: "flex items-center gap-4 px-8" }, ll = { class: "fm-typo-en-title-sm-600" }, al = {
|
|
238
237
|
key: 0,
|
|
239
238
|
class: "bg-fm-color-neutral-gray-100 rounded-md px-8 py-4"
|
|
240
|
-
},
|
|
239
|
+
}, ol = { class: "fm-typo-en-body-md-600" }, nl = { class: "flex-1" }, lt = /* @__PURE__ */ E({
|
|
241
240
|
__name: "ViewLayout",
|
|
242
241
|
props: /* @__PURE__ */ Qe({
|
|
243
242
|
title: {},
|
|
@@ -252,15 +251,15 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
252
251
|
const a = He(w, "modelValue");
|
|
253
252
|
return (r, u) => {
|
|
254
253
|
const l = B("FmCollapsibleTabs");
|
|
255
|
-
return v(), C("div",
|
|
256
|
-
g("div",
|
|
257
|
-
g("div",
|
|
258
|
-
g("p",
|
|
259
|
-
r.titleBadge !== void 0 ? (v(), C("div",
|
|
260
|
-
g("p",
|
|
261
|
-
])) :
|
|
254
|
+
return v(), C("div", Xt, [
|
|
255
|
+
g("div", el, [
|
|
256
|
+
g("div", tl, [
|
|
257
|
+
g("p", ll, j(r.title), 1),
|
|
258
|
+
r.titleBadge !== void 0 ? (v(), C("div", al, [
|
|
259
|
+
g("p", ol, j(r.titleBadge), 1)
|
|
260
|
+
])) : D("", !0)
|
|
262
261
|
]),
|
|
263
|
-
m(
|
|
262
|
+
m(Ue, null, {
|
|
264
263
|
default: A(() => [
|
|
265
264
|
m(l, {
|
|
266
265
|
modelValue: a.value,
|
|
@@ -272,13 +271,13 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
272
271
|
})
|
|
273
272
|
]),
|
|
274
273
|
u[1] || (u[1] = g("div", { class: "w-[1px] min-h-full ml-4 mr-12 bg-fm-color-neutral-gray-100 self-stretch" }, null, -1)),
|
|
275
|
-
g("div",
|
|
274
|
+
g("div", nl, [
|
|
276
275
|
ve(r.$slots, "default")
|
|
277
276
|
])
|
|
278
277
|
]);
|
|
279
278
|
};
|
|
280
279
|
}
|
|
281
|
-
}), we = /* @__PURE__ */
|
|
280
|
+
}), we = /* @__PURE__ */ E({
|
|
282
281
|
__name: "OrderFromChip",
|
|
283
282
|
props: {
|
|
284
283
|
orderFrom: {}
|
|
@@ -293,7 +292,7 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
293
292
|
}, null, 8, ["label", "variant"]);
|
|
294
293
|
};
|
|
295
294
|
}
|
|
296
|
-
}),
|
|
295
|
+
}), rl = /* @__PURE__ */ E({
|
|
297
296
|
__name: "GroupViewTable",
|
|
298
297
|
props: {
|
|
299
298
|
data: {}
|
|
@@ -361,7 +360,7 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
361
360
|
i();
|
|
362
361
|
}), (o, s) => {
|
|
363
362
|
const f = B("FmTable");
|
|
364
|
-
return v(), P(
|
|
363
|
+
return v(), P(Ue, null, {
|
|
365
364
|
default: A(() => [m(f, {
|
|
366
365
|
"column-defs": r,
|
|
367
366
|
"row-data": o.data,
|
|
@@ -376,7 +375,7 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
376
375
|
});
|
|
377
376
|
};
|
|
378
377
|
}
|
|
379
|
-
}),
|
|
378
|
+
}), sl = /* @__PURE__ */ E({
|
|
380
379
|
__name: "GroupView",
|
|
381
380
|
props: {
|
|
382
381
|
itemId: {},
|
|
@@ -391,7 +390,7 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
391
390
|
// @ts-ignore
|
|
392
391
|
code: k.code || k.fallbackCode,
|
|
393
392
|
productName: k.combinationKey ? "" : k.name ?? "",
|
|
394
|
-
price: k.price ?
|
|
393
|
+
price: k.price ? oe.Dinero.fromFdoDinero(k.price).toFormat() : "--",
|
|
395
394
|
orderFrom: k.orderFrom ?? void 0,
|
|
396
395
|
variant: k.combinationKey ? k.name ?? "" : void 0
|
|
397
396
|
}))
|
|
@@ -443,15 +442,15 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
443
442
|
title: "Catalog",
|
|
444
443
|
"title-badge": u.value
|
|
445
444
|
}, {
|
|
446
|
-
default: A(() => [m(
|
|
445
|
+
default: A(() => [m(rl, {
|
|
447
446
|
data: i.value
|
|
448
447
|
}, null, 8, ["data"])]),
|
|
449
448
|
_: 1
|
|
450
449
|
}, 8, ["modelValue", "items", "title-badge"]));
|
|
451
450
|
}
|
|
452
|
-
}),
|
|
451
|
+
}), ul = {
|
|
453
452
|
class: "scroll-x-auto"
|
|
454
|
-
},
|
|
453
|
+
}, il = /* @__PURE__ */ E({
|
|
455
454
|
__name: "ProductViewTable",
|
|
456
455
|
props: {
|
|
457
456
|
itemId: {},
|
|
@@ -514,13 +513,13 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
514
513
|
const s = (await Ct(Te(a.menu), a.catalogId, i.schedulerId)).modules.item.find((p) => p._id === a.itemId), f = u.value.findIndex((p) => p.schedulerId === i.schedulerId);
|
|
515
514
|
if (s) {
|
|
516
515
|
const p = Te(u.value);
|
|
517
|
-
p[f].loading = !1, p[f].code = s.code || "--", p[f].productName = s.name || "--", p[f].price =
|
|
516
|
+
p[f].loading = !1, p[f].code = s.code || "--", p[f].productName = s.name || "--", p[f].price = oe.Dinero.fromFdoDinero(s.price).toFormat(), p[f].orderFrom = s.orderFrom || "--", u.value = p;
|
|
518
517
|
}
|
|
519
518
|
});
|
|
520
519
|
}), (i, o) => {
|
|
521
520
|
const s = B("FmTable");
|
|
522
|
-
return v(), P(
|
|
523
|
-
default: A(() => [g("div",
|
|
521
|
+
return v(), P(Ue, null, {
|
|
522
|
+
default: A(() => [g("div", ul, [m(s, {
|
|
524
523
|
class: "min-w-[800px]",
|
|
525
524
|
"column-defs": r,
|
|
526
525
|
"row-data": u.value,
|
|
@@ -532,7 +531,7 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
532
531
|
});
|
|
533
532
|
};
|
|
534
533
|
}
|
|
535
|
-
}),
|
|
534
|
+
}), cl = /* @__PURE__ */ E({
|
|
536
535
|
__name: "ProductView",
|
|
537
536
|
props: {
|
|
538
537
|
itemId: {},
|
|
@@ -577,7 +576,7 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
577
576
|
default: A(() => {
|
|
578
577
|
var f, p;
|
|
579
578
|
return [
|
|
580
|
-
m(
|
|
579
|
+
m(il, {
|
|
581
580
|
menu: o.menu,
|
|
582
581
|
"item-id": o.itemId,
|
|
583
582
|
"catalog-id": ((f = i.value) == null ? void 0 : f.catalogId) || null,
|
|
@@ -588,10 +587,10 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
588
587
|
_: 1
|
|
589
588
|
}, 8, ["modelValue", "items", "title-badge"]));
|
|
590
589
|
}
|
|
591
|
-
}),
|
|
590
|
+
}), dl = { class: "flex items-center gap-8" }, ml = { class: "space-y-4" }, pl = { class: "fm-typo-en-title-md-600" }, vl = { key: 0 }, fl = { class: "text-fm-color-typo-secondary" }, gl = {
|
|
592
591
|
key: 0,
|
|
593
592
|
class: "text-fm-color-typo-secondary"
|
|
594
|
-
},
|
|
593
|
+
}, bl = { class: "flex items-center gap-4" }, _l = /* @__PURE__ */ E({
|
|
595
594
|
__name: "ProductBaseInfo",
|
|
596
595
|
props: {
|
|
597
596
|
itemId: {},
|
|
@@ -600,37 +599,37 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
600
599
|
setup(w) {
|
|
601
600
|
const a = w, r = x(() => a.menu.modules.item.find((l) => l._id === a.itemId)), u = x(() => {
|
|
602
601
|
var l;
|
|
603
|
-
return
|
|
602
|
+
return oe.Dinero.fromFdoDinero((l = r.value) == null ? void 0 : l.price).toFormat(!0);
|
|
604
603
|
});
|
|
605
604
|
return (l, i) => {
|
|
606
605
|
var o, s, f, p, b, y, k;
|
|
607
|
-
return v(), C("div",
|
|
606
|
+
return v(), C("div", dl, [
|
|
608
607
|
m(Ae, {
|
|
609
608
|
alt: ((o = r.value) == null ? void 0 : o.name) ?? null,
|
|
610
609
|
size: 72,
|
|
611
610
|
src: (s = r.value) == null ? void 0 : s.thumbnail,
|
|
612
611
|
crossorigin: !1
|
|
613
612
|
}, null, 8, ["alt", "src"]),
|
|
614
|
-
g("div",
|
|
615
|
-
g("p",
|
|
616
|
-
(f = r.value) != null && f.code ? (v(), C("span",
|
|
613
|
+
g("div", ml, [
|
|
614
|
+
g("p", pl, [
|
|
615
|
+
(f = r.value) != null && f.code ? (v(), C("span", vl, j((p = r.value) == null ? void 0 : p.code) + ", ", 1)) : D("", !0),
|
|
617
616
|
g("span", null, j((b = r.value) == null ? void 0 : b.name), 1)
|
|
618
617
|
]),
|
|
619
|
-
g("p",
|
|
620
|
-
(y = r.value) != null && y.customAttributes ? (v(), C("div",
|
|
621
|
-
g("div",
|
|
618
|
+
g("p", fl, "Base price: " + j(u.value), 1),
|
|
619
|
+
(y = r.value) != null && y.customAttributes ? (v(), C("div", gl, [
|
|
620
|
+
g("div", bl, [
|
|
622
621
|
i[0] || (i[0] = g("span", null, "Tagging:", -1)),
|
|
623
622
|
m(Pe, {
|
|
624
623
|
ellipsis: !1,
|
|
625
624
|
"custom-attributes": (k = r.value) == null ? void 0 : k.customAttributes
|
|
626
625
|
}, null, 8, ["custom-attributes"])
|
|
627
626
|
])
|
|
628
|
-
])) :
|
|
627
|
+
])) : D("", !0)
|
|
629
628
|
])
|
|
630
629
|
]);
|
|
631
630
|
};
|
|
632
631
|
}
|
|
633
|
-
}),
|
|
632
|
+
}), yl = { class: "space-y-16" }, hl = /* @__PURE__ */ E({
|
|
634
633
|
__name: "ProductViewer",
|
|
635
634
|
props: {
|
|
636
635
|
itemId: {},
|
|
@@ -641,19 +640,19 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
641
640
|
{
|
|
642
641
|
value: "product",
|
|
643
642
|
label: "Product",
|
|
644
|
-
component:
|
|
643
|
+
component: cl
|
|
645
644
|
},
|
|
646
645
|
{
|
|
647
646
|
value: "group",
|
|
648
647
|
label: "Group",
|
|
649
|
-
component:
|
|
648
|
+
component: sl
|
|
650
649
|
}
|
|
651
650
|
]);
|
|
652
651
|
return (u, l) => {
|
|
653
652
|
var o;
|
|
654
653
|
const i = B("FmTabs");
|
|
655
|
-
return v(), C("div",
|
|
656
|
-
m(
|
|
654
|
+
return v(), C("div", yl, [
|
|
655
|
+
m(_l, {
|
|
657
656
|
"item-id": u.itemId,
|
|
658
657
|
menu: u.menu
|
|
659
658
|
}, null, 8, ["item-id", "menu"]),
|
|
@@ -673,7 +672,7 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
673
672
|
]);
|
|
674
673
|
};
|
|
675
674
|
}
|
|
676
|
-
}),
|
|
675
|
+
}), xl = { class: "space-y-24" }, Cl = { key: 0 }, wl = /* @__PURE__ */ E({
|
|
677
676
|
__name: "ProductOverview",
|
|
678
677
|
props: {
|
|
679
678
|
itemId: {},
|
|
@@ -683,9 +682,9 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
683
682
|
const a = w, r = ke(), u = V(null);
|
|
684
683
|
return Xe(() => {
|
|
685
684
|
u.value = a.itemId;
|
|
686
|
-
}), (l, i) => (v(), C("div",
|
|
687
|
-
l.showSearch ? (v(), C("div",
|
|
688
|
-
m(
|
|
685
|
+
}), (l, i) => (v(), C("div", xl, [
|
|
686
|
+
l.showSearch ? (v(), C("div", Cl, [
|
|
687
|
+
m(Jt, {
|
|
689
688
|
modelValue: u.value,
|
|
690
689
|
"onUpdate:modelValue": i[0] || (i[0] = (o) => u.value = o),
|
|
691
690
|
class: "w-1/2",
|
|
@@ -693,17 +692,17 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
693
692
|
"helper-text": "Quickly find products and view their prices across different catalogs and schedules.",
|
|
694
693
|
menu: n(r).state.menu
|
|
695
694
|
}, null, 8, ["modelValue", "menu"])
|
|
696
|
-
])) :
|
|
695
|
+
])) : D("", !0),
|
|
697
696
|
g("div", null, [
|
|
698
|
-
u.value ? (v(), P(
|
|
697
|
+
u.value ? (v(), P(hl, {
|
|
699
698
|
key: 0,
|
|
700
699
|
"item-id": u.value,
|
|
701
700
|
menu: n(r).state.menu
|
|
702
|
-
}, null, 8, ["item-id", "menu"])) :
|
|
701
|
+
}, null, 8, ["item-id", "menu"])) : D("", !0)
|
|
703
702
|
])
|
|
704
703
|
]));
|
|
705
704
|
}
|
|
706
|
-
}),
|
|
705
|
+
}), kl = /* @__PURE__ */ E({
|
|
707
706
|
__name: "OverviewSheet",
|
|
708
707
|
setup(w) {
|
|
709
708
|
const a = V(null), r = V(!1);
|
|
@@ -712,7 +711,7 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
712
711
|
}
|
|
713
712
|
return (l, i) => {
|
|
714
713
|
const o = B("FmSideSheet");
|
|
715
|
-
return v(), C(
|
|
714
|
+
return v(), C(ne, null, [
|
|
716
715
|
ve(l.$slots, "default", { trigger: u }),
|
|
717
716
|
m(o, {
|
|
718
717
|
id: "product-overview",
|
|
@@ -726,10 +725,10 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
726
725
|
])),
|
|
727
726
|
default: A(() => [
|
|
728
727
|
g("div", null, [
|
|
729
|
-
r.value && a.value ? (v(), P(
|
|
728
|
+
r.value && a.value ? (v(), P(wl, {
|
|
730
729
|
key: 0,
|
|
731
730
|
"item-id": a.value
|
|
732
|
-
}, null, 8, ["item-id"])) :
|
|
731
|
+
}, null, 8, ["item-id"])) : D("", !0)
|
|
733
732
|
])
|
|
734
733
|
]),
|
|
735
734
|
_: 1
|
|
@@ -738,8 +737,8 @@ const Kt = { class: "inline-flex items-center" }, Bt = {
|
|
|
738
737
|
};
|
|
739
738
|
}
|
|
740
739
|
});
|
|
741
|
-
var
|
|
742
|
-
const We = /* @__PURE__ */
|
|
740
|
+
var Sl = St();
|
|
741
|
+
const We = /* @__PURE__ */ E({
|
|
743
742
|
__name: "ImportButton",
|
|
744
743
|
setup(w) {
|
|
745
744
|
const a = V(!1);
|
|
@@ -751,11 +750,11 @@ const We = /* @__PURE__ */ G({
|
|
|
751
750
|
const l = u.currentCountry.value;
|
|
752
751
|
if (l)
|
|
753
752
|
try {
|
|
754
|
-
|
|
753
|
+
Sl.setCountryConfig(l);
|
|
755
754
|
} catch (i) {
|
|
756
755
|
console.log("Unable to set country config", i);
|
|
757
756
|
}
|
|
758
|
-
}), (l, i) => (v(), C(
|
|
757
|
+
}), (l, i) => (v(), C(ne, null, [
|
|
759
758
|
m(Ft, {
|
|
760
759
|
modelValue: a.value,
|
|
761
760
|
"onUpdate:modelValue": i[0] || (i[0] = (o) => a.value = o)
|
|
@@ -765,63 +764,63 @@ const We = /* @__PURE__ */ G({
|
|
|
765
764
|
}
|
|
766
765
|
}), qe = (w) => m("div", {
|
|
767
766
|
class: "flex flex-1 justify-end"
|
|
768
|
-
}, [m("span", null, [w, Ye(" ")])]),
|
|
767
|
+
}, [m("span", null, [w, Ye(" ")])]), Fl = {
|
|
769
768
|
class: "flex justify-between items-center space-x-8"
|
|
770
|
-
},
|
|
769
|
+
}, Vl = {
|
|
771
770
|
class: "flex space-x-8"
|
|
772
|
-
},
|
|
771
|
+
}, Il = {
|
|
773
772
|
class: "w-[320px]"
|
|
774
|
-
},
|
|
773
|
+
}, $l = {
|
|
775
774
|
key: 0
|
|
776
|
-
},
|
|
775
|
+
}, Tl = {
|
|
777
776
|
key: 1,
|
|
778
|
-
class: /* @__PURE__ */
|
|
779
|
-
},
|
|
777
|
+
class: /* @__PURE__ */ re(["flex-1 flex flex-col", "divide-y divide-fm-color-neutral-gray-100", "overflow-hidden"])
|
|
778
|
+
}, Pl = {
|
|
780
779
|
key: 0,
|
|
781
780
|
class: "flex items-center p-4"
|
|
781
|
+
}, Al = {
|
|
782
|
+
class: /* @__PURE__ */ re(["mr-8", "fm-typo-en-body-md-400"])
|
|
782
783
|
}, Ol = {
|
|
783
|
-
class: /* @__PURE__ */ ne(["mr-8", "fm-typo-en-body-md-400"])
|
|
784
|
-
}, Ml = {
|
|
785
784
|
key: 1,
|
|
786
785
|
class: "px-16 py-4 space-x-8 flex justify-end"
|
|
787
786
|
}, Ul = {
|
|
788
787
|
key: 2
|
|
789
|
-
},
|
|
788
|
+
}, Ml = {
|
|
790
789
|
class: "flex space-x-8"
|
|
791
|
-
},
|
|
790
|
+
}, Dl = {
|
|
792
791
|
key: 1,
|
|
793
792
|
class: "pt-8 flex flex-col flex-1 overflow-hidden"
|
|
794
|
-
},
|
|
793
|
+
}, zl = {
|
|
795
794
|
class: "space-y-8 pb-8"
|
|
796
|
-
},
|
|
795
|
+
}, Nl = {
|
|
797
796
|
class: "w-full px-8"
|
|
798
797
|
}, Kl = {
|
|
799
798
|
class: "flex space-x-8 px-8"
|
|
800
|
-
},
|
|
799
|
+
}, Rl = {
|
|
801
800
|
key: 0,
|
|
802
801
|
class: "px-8"
|
|
803
|
-
},
|
|
802
|
+
}, Bl = {
|
|
804
803
|
key: 0,
|
|
805
|
-
class: /* @__PURE__ */
|
|
806
|
-
},
|
|
804
|
+
class: /* @__PURE__ */ re(["flex flex-col flex-1", "overflow-scroll", "divide-y divide-fm-color-neutral-gray-100", "pb-64"])
|
|
805
|
+
}, jl = ["onClick"], El = {
|
|
807
806
|
class: "min-w-0 flex flex-1 items-center justify-start space-x-16"
|
|
808
|
-
},
|
|
807
|
+
}, Gl = {
|
|
809
808
|
class: "flex-1 min-w-0"
|
|
810
|
-
},
|
|
809
|
+
}, Ll = {
|
|
811
810
|
class: "flex justify-between items-center gap-8 pb-4"
|
|
812
|
-
},
|
|
811
|
+
}, Wl = {
|
|
813
812
|
class: "flex-1 min-w-0 fm-typo-en-body-lg-600 line-clamp-2"
|
|
813
|
+
}, ql = {
|
|
814
|
+
class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary"
|
|
814
815
|
}, Ql = {
|
|
815
816
|
class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary"
|
|
816
817
|
}, Hl = {
|
|
817
818
|
class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary"
|
|
818
819
|
}, Yl = {
|
|
819
|
-
class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary"
|
|
820
|
-
}, Zl = {
|
|
821
820
|
key: 1
|
|
822
|
-
},
|
|
821
|
+
}, Zl = {
|
|
823
822
|
class: "flex space-x-8"
|
|
824
|
-
},
|
|
823
|
+
}, Jl = /* @__PURE__ */ E({
|
|
825
824
|
__name: "ProductTable",
|
|
826
825
|
props: {
|
|
827
826
|
modelValue: {},
|
|
@@ -837,7 +836,7 @@ const We = /* @__PURE__ */ G({
|
|
|
837
836
|
}) {
|
|
838
837
|
const u = w, {
|
|
839
838
|
t: l
|
|
840
|
-
} = Se(), i = Oe(), o = ke(), s =
|
|
839
|
+
} = Se(), i = Oe(), o = ke(), s = Tt(), f = et(), p = i.currentCountry, b = x(() => p.value ? oe.Country.getCountry(p.value) : null), y = x(() => o.rules.item), {
|
|
841
840
|
selectedCategories: k
|
|
842
841
|
} = Ce(), L = x(() => {
|
|
843
842
|
const e = me.flatten(k.value.map((t) => t.items));
|
|
@@ -859,28 +858,28 @@ const We = /* @__PURE__ */ G({
|
|
|
859
858
|
logic: "AND",
|
|
860
859
|
rules: []
|
|
861
860
|
});
|
|
862
|
-
function
|
|
861
|
+
function z(e) {
|
|
863
862
|
const t = L.value.map((d) => {
|
|
864
863
|
var h;
|
|
865
864
|
return (h = d.customAttributes) == null ? void 0 : h[e];
|
|
866
865
|
}).filter((d) => typeof d == "string" && !!d);
|
|
867
866
|
return [...new Set(t)];
|
|
868
867
|
}
|
|
869
|
-
const
|
|
870
|
-
const t =
|
|
868
|
+
const M = x(() => i.itemAttributeSettings.value.map((e) => {
|
|
869
|
+
const t = z(e.key);
|
|
871
870
|
return {
|
|
872
871
|
...e,
|
|
873
872
|
values: t
|
|
874
873
|
};
|
|
875
|
-
})), T = V(""), $ =
|
|
874
|
+
})), T = V(""), $ = zt(T, 300), N = x(() => {
|
|
876
875
|
const e = (c) => {
|
|
877
876
|
var h;
|
|
878
|
-
return !$.value || !$.value.trim() ? !0 : [c.code, c.name,
|
|
877
|
+
return !$.value || !$.value.trim() ? !0 : [c.code, c.name, ze(c), ...Ie(U.value, c), (h = ye()[c.orderFrom]) == null ? void 0 : h.label, Object.values(c.customAttributes ?? {}).join(" ")].join(" ").toLowerCase().includes($.value.toLowerCase());
|
|
879
878
|
}, t = (c) => !c.customAttributes && !I.value.rules.length ? !0 : ht(c.customAttributes ?? {}, I.value);
|
|
880
879
|
return L.value.filter((c) => e(c) && t(c));
|
|
881
880
|
}), {
|
|
882
|
-
categories:
|
|
883
|
-
} = Ce(),
|
|
881
|
+
categories: U
|
|
882
|
+
} = Ce(), K = x(() => o.categories.map((e) => ({
|
|
884
883
|
label: e.name,
|
|
885
884
|
value: e._id || null
|
|
886
885
|
}))), O = (e, t, c) => {
|
|
@@ -893,12 +892,12 @@ const We = /* @__PURE__ */ G({
|
|
|
893
892
|
...h,
|
|
894
893
|
[t]: c
|
|
895
894
|
}, ee("update:model-value", d));
|
|
896
|
-
}, Y = gt(() => u.originalValue, () => u.modelValue),
|
|
895
|
+
}, Y = gt(() => u.originalValue, () => u.modelValue), R = me.debounce(O, 300), se = (e) => (t) => !!t || l("menu.product.table.validation.name_required", {
|
|
897
896
|
field: e
|
|
898
|
-
}), de = (e) => e >= 0 || l("menu.product.table.validation.price_min"), fe = [
|
|
897
|
+
}), de = (e) => e >= 0 || l("menu.product.table.validation.price_min"), fe = [se("Name")], ge = () => [(e) => de(typeof e == "number" ? e : Number(e) ?? 0)], at = ye(), ot = x(() => {
|
|
899
898
|
const e = o.isV4;
|
|
900
899
|
return ft.setCoreStore(i).taxSetting(e);
|
|
901
|
-
}),
|
|
900
|
+
}), Me = x(() => [{
|
|
902
901
|
accessorKey: "thumbnail",
|
|
903
902
|
header: "",
|
|
904
903
|
size: 110,
|
|
@@ -933,7 +932,7 @@ const We = /* @__PURE__ */ G({
|
|
|
933
932
|
modelValue: Y(t._id, "code") ?? (d == null ? void 0 : d.code),
|
|
934
933
|
placeholder: u.modelValue[t._id].fallbackCode,
|
|
935
934
|
"onUpdate:modelValue": (h) => {
|
|
936
|
-
|
|
935
|
+
R(t._id, "code", h);
|
|
937
936
|
}
|
|
938
937
|
});
|
|
939
938
|
}
|
|
@@ -948,7 +947,7 @@ const We = /* @__PURE__ */ G({
|
|
|
948
947
|
disabled: !y.value.name,
|
|
949
948
|
modelValue: Y(t._id, "name") ?? t.name,
|
|
950
949
|
"onUpdate:modelValue": (d) => {
|
|
951
|
-
|
|
950
|
+
R(t._id, "name", d);
|
|
952
951
|
},
|
|
953
952
|
rules: fe,
|
|
954
953
|
placeholder: t.fallbackName
|
|
@@ -970,13 +969,13 @@ const We = /* @__PURE__ */ G({
|
|
|
970
969
|
cell: (e) => {
|
|
971
970
|
var h;
|
|
972
971
|
const t = e.getValue();
|
|
973
|
-
if (!S.value) return
|
|
972
|
+
if (!S.value) return oe.Dinero.fromFdoDinero(t).toFormat();
|
|
974
973
|
const c = u.modelValue[e.row.original._id], d = c.fallbackPrice;
|
|
975
|
-
return q(
|
|
974
|
+
return q(Ot, {
|
|
976
975
|
min: 0,
|
|
977
976
|
disabled: !c.editPrice,
|
|
978
977
|
// @ts-ignore
|
|
979
|
-
placeholder: d ?
|
|
978
|
+
placeholder: d ? Mt(d, !1) : void 0,
|
|
980
979
|
modelValue: Y(c._id, "price") ?? ((h = Ve(c._id)) == null ? void 0 : h.price),
|
|
981
980
|
// @ts-ignore
|
|
982
981
|
"onUpdate:modelValue": (F) => {
|
|
@@ -1004,7 +1003,7 @@ const We = /* @__PURE__ */ G({
|
|
|
1004
1003
|
modelValue: _,
|
|
1005
1004
|
"onUpdate:modelValue": async (X) => {
|
|
1006
1005
|
const _e = o.decodeTax(X);
|
|
1007
|
-
|
|
1006
|
+
R(c._id, "taxes", [_e]);
|
|
1008
1007
|
}
|
|
1009
1008
|
});
|
|
1010
1009
|
}
|
|
@@ -1017,22 +1016,22 @@ const We = /* @__PURE__ */ G({
|
|
|
1017
1016
|
const t = e.row.original;
|
|
1018
1017
|
if (!S.value)
|
|
1019
1018
|
return q(Le, {
|
|
1020
|
-
categories: Ie(
|
|
1019
|
+
categories: Ie(U.value, t)
|
|
1021
1020
|
});
|
|
1022
1021
|
const c = _t(u.originalValue, u.modelValue, t._id) ?? yt(t), d = (c == null ? void 0 : c.map((F) => F._id)) ?? [], h = c == null ? void 0 : c.reduce((F, _) => (F[_._id] = _, F), {});
|
|
1023
1022
|
return q($t, {
|
|
1024
1023
|
shouldShowChips: !1,
|
|
1025
1024
|
shouldShowSelectedItemsWithinPlaceholder: !0,
|
|
1026
1025
|
modelValue: d.length > 0 ? d : [null],
|
|
1027
|
-
items:
|
|
1026
|
+
items: K.value,
|
|
1028
1027
|
disabled: !!(o.state.currentCatalogId || o.state.currentSchedulerId),
|
|
1029
1028
|
"onUpdate:modelValue": async (F) => {
|
|
1030
1029
|
const [_, ...X] = F;
|
|
1031
|
-
|
|
1030
|
+
R(t._id, {
|
|
1032
1031
|
category: _,
|
|
1033
1032
|
additionalCategories: X.map((_e) => {
|
|
1034
|
-
const
|
|
1035
|
-
return
|
|
1033
|
+
const Ke = h == null ? void 0 : h[_e];
|
|
1034
|
+
return Ke || {
|
|
1036
1035
|
_id: _e,
|
|
1037
1036
|
position: null
|
|
1038
1037
|
};
|
|
@@ -1085,7 +1084,7 @@ const We = /* @__PURE__ */ G({
|
|
|
1085
1084
|
},
|
|
1086
1085
|
header: () => q("div", {
|
|
1087
1086
|
class: "w-full px-4 flex justify-end"
|
|
1088
|
-
}, [
|
|
1087
|
+
}, [Dt(q(J.FmButton, {
|
|
1089
1088
|
variant: Z.Tertiary,
|
|
1090
1089
|
textColor: Q.NeutralGray400,
|
|
1091
1090
|
prependIcon: "edit",
|
|
@@ -1097,14 +1096,14 @@ const We = /* @__PURE__ */ G({
|
|
|
1097
1096
|
const t = e.row.original;
|
|
1098
1097
|
return m("div", {
|
|
1099
1098
|
class: "px-4 flex justify-end"
|
|
1100
|
-
}, [m(
|
|
1099
|
+
}, [m(kl, null, {
|
|
1101
1100
|
default: ({
|
|
1102
1101
|
trigger: c
|
|
1103
1102
|
}) => m(J.FmButton, {
|
|
1104
1103
|
icon: "overview",
|
|
1105
1104
|
variant: "tertiary",
|
|
1106
1105
|
textColor: Q.NeutralGray400,
|
|
1107
|
-
onClick:
|
|
1106
|
+
onClick: ie(() => {
|
|
1108
1107
|
c(t._id);
|
|
1109
1108
|
}, ["stop", "prevent"])
|
|
1110
1109
|
}, null)
|
|
@@ -1112,7 +1111,7 @@ const We = /* @__PURE__ */ G({
|
|
|
1112
1111
|
icon: "delete",
|
|
1113
1112
|
variant: "tertiary",
|
|
1114
1113
|
textColor: Q.NeutralGray400,
|
|
1115
|
-
onClick:
|
|
1114
|
+
onClick: ie(async () => {
|
|
1116
1115
|
await f.deleteItem([{
|
|
1117
1116
|
_id: t._id,
|
|
1118
1117
|
name: t.name,
|
|
@@ -1122,27 +1121,27 @@ const We = /* @__PURE__ */ G({
|
|
|
1122
1121
|
}, null)]);
|
|
1123
1122
|
}
|
|
1124
1123
|
}]);
|
|
1125
|
-
o.taxSetting.systemCode ||
|
|
1126
|
-
const
|
|
1127
|
-
ae([() =>
|
|
1124
|
+
o.taxSetting.systemCode || Me.value.splice(4, 1);
|
|
1125
|
+
const ue = V({}), le = V([]);
|
|
1126
|
+
ae([() => ue.value, () => N.value], (e) => {
|
|
1128
1127
|
let t = [];
|
|
1129
1128
|
Object.keys(e[0]).forEach((c) => {
|
|
1130
|
-
const d = e[0][c], h =
|
|
1129
|
+
const d = e[0][c], h = N.value[parseInt(c)];
|
|
1131
1130
|
h && (d ? t.push(h) : le.value = t.filter((F) => F !== h));
|
|
1132
1131
|
}), le.value = t;
|
|
1133
1132
|
}), ae(() => L.value, () => {
|
|
1134
|
-
|
|
1133
|
+
ue.value = {}, le.value = [];
|
|
1135
1134
|
}), ae(() => S.value, () => {
|
|
1136
|
-
|
|
1135
|
+
ue.value = {}, le.value = [];
|
|
1137
1136
|
});
|
|
1138
1137
|
const nt = () => {
|
|
1139
|
-
|
|
1138
|
+
ue.value = {};
|
|
1140
1139
|
};
|
|
1141
|
-
async function
|
|
1140
|
+
async function De() {
|
|
1142
1141
|
await $e();
|
|
1143
1142
|
const e = () => !!o.currentCatalog || !!o.state.currentSchedulerId, t = (d) => d === "" || d === null ? e() ? "" : null : d, c = Object.values(u.modelValue).filter((d) => {
|
|
1144
1143
|
const h = Object.values(u.originalValue).find((F) => F._id === d._id);
|
|
1145
|
-
return
|
|
1144
|
+
return Re(h, d);
|
|
1146
1145
|
}).map((d) => ({
|
|
1147
1146
|
_id: d._id,
|
|
1148
1147
|
name: d.name,
|
|
@@ -1164,7 +1163,7 @@ const We = /* @__PURE__ */ G({
|
|
|
1164
1163
|
}, be = () => {
|
|
1165
1164
|
ee("reset:model-value");
|
|
1166
1165
|
}, Fe = () => {
|
|
1167
|
-
Object.entries(u.modelValue).some(([t, c]) =>
|
|
1166
|
+
Object.entries(u.modelValue).some(([t, c]) => Re(c, u.originalValue[t])) ? s.open({
|
|
1168
1167
|
title: "You have unsaved changes!",
|
|
1169
1168
|
message: "Are you sure you want to discard? You will lose all the changes if discard edit.",
|
|
1170
1169
|
primaryActions: {
|
|
@@ -1192,13 +1191,13 @@ const We = /* @__PURE__ */ G({
|
|
|
1192
1191
|
async function it(e) {
|
|
1193
1192
|
await f.update(e.original._id);
|
|
1194
1193
|
}
|
|
1195
|
-
function
|
|
1194
|
+
function ze(e) {
|
|
1196
1195
|
var _;
|
|
1197
1196
|
const t = e.price ?? // TODO: fix type error
|
|
1198
1197
|
// @ts-ignore
|
|
1199
|
-
e.fallbackPrice ??
|
|
1198
|
+
e.fallbackPrice ?? oe.Dinero.fromNumber({
|
|
1200
1199
|
number: 0
|
|
1201
|
-
}).toObject(), c = e.taxes, d = o.taxSetting.countryTaxOptions, h =
|
|
1200
|
+
}).toObject(), c = e.taxes, d = o.taxSetting.countryTaxOptions, h = oe.Dinero.fromFdoDinero(t).toFormat(), F = (_ = b.value) == null ? void 0 : _.currency.symbol;
|
|
1202
1201
|
return o.getSelectedTax(
|
|
1203
1202
|
c,
|
|
1204
1203
|
// TODO: fix type error
|
|
@@ -1215,7 +1214,7 @@ const We = /* @__PURE__ */ G({
|
|
|
1215
1214
|
return F == null ? void 0 : F[0];
|
|
1216
1215
|
} else return t ? t.override.items[e][0] : c ? o.schedulers.find((_) => _._id === c).items.filter((_) => _._id === e)[0] : L.value.find((h) => h._id === e);
|
|
1217
1216
|
}
|
|
1218
|
-
const ct = tt(), dt = x(() => ct.breakpoints.value.xs),
|
|
1217
|
+
const ct = tt(), dt = x(() => ct.breakpoints.value.xs), Ne = V(null), mt = At(Ne, W), pt = x(() => {
|
|
1219
1218
|
var t;
|
|
1220
1219
|
return {
|
|
1221
1220
|
height: `calc(100vh - ${((t = mt.value) == null ? void 0 : t.top) + 24}px)`
|
|
@@ -1223,20 +1222,20 @@ const We = /* @__PURE__ */ G({
|
|
|
1223
1222
|
});
|
|
1224
1223
|
return (e, t) => {
|
|
1225
1224
|
const c = B("fm-search"), d = B("fm-button"), h = B("fm-table"), F = B("fm-form");
|
|
1226
|
-
return dt.value ? (v(), C("div",
|
|
1225
|
+
return dt.value ? (v(), C("div", Dl, [g("div", zl, [g("div", Nl, [m(c, {
|
|
1227
1226
|
"model-value": T.value,
|
|
1228
1227
|
"onUpdate:modelValue": t[5] || (t[5] = (_) => T.value = _),
|
|
1229
1228
|
autofocus: "",
|
|
1230
1229
|
placeholder: n(l)("menu.product.table.search.placeholder")
|
|
1231
1230
|
}, null, 8, ["model-value", "placeholder"])]), t[8] || (t[8] = g("div", {
|
|
1232
1231
|
class: "w-full h-[1px] bg-fm-color-neutral-gray-100"
|
|
1233
|
-
}, null, -1)), g("div", Kl, [ve(e.$slots, "filter")]), W.value ? (v(), C("div",
|
|
1232
|
+
}, null, -1)), g("div", Kl, [ve(e.$slots, "filter")]), W.value ? (v(), C("div", Rl, [m(n(je), {
|
|
1234
1233
|
ref_key: "attributeFilterRef",
|
|
1235
1234
|
ref: te,
|
|
1236
|
-
attributes:
|
|
1235
|
+
attributes: M.value,
|
|
1237
1236
|
modelValue: I.value,
|
|
1238
1237
|
"onUpdate:modelValue": t[6] || (t[6] = (_) => I.value = _)
|
|
1239
|
-
}, null, 8, ["attributes", "modelValue"])])) :
|
|
1238
|
+
}, null, 8, ["attributes", "modelValue"])])) : D("", !0)]), L.value.length ? (v(), C("div", Bl, [(v(!0), C(ne, null, xe(N.value, (_) => {
|
|
1240
1239
|
var X;
|
|
1241
1240
|
return v(), C("div", {
|
|
1242
1241
|
key: _._id,
|
|
@@ -1246,27 +1245,27 @@ const We = /* @__PURE__ */ G({
|
|
|
1246
1245
|
alt: _.name,
|
|
1247
1246
|
size: 72,
|
|
1248
1247
|
src: _.thumbnail
|
|
1249
|
-
}, null, 8, ["alt", "src"]), g("div",
|
|
1248
|
+
}, null, 8, ["alt", "src"]), g("div", Gl, [g("div", Ll, [g("p", Wl, j(_.name), 1), m(we, {
|
|
1250
1249
|
"order-from": _.orderFrom
|
|
1251
|
-
}, null, 8, ["order-from"])]), g("p",
|
|
1252
|
-
categories: n(Ie)(n(
|
|
1250
|
+
}, null, 8, ["order-from"])]), g("p", ql, j(ze(_)), 1), g("p", Ql, j(n(l)("menu.product.table.columns.code")) + ": " + j(((X = Ve(_._id)) == null ? void 0 : X.code) || "--"), 1), g("p", Hl, [m(Le, {
|
|
1251
|
+
categories: n(Ie)(n(U), _)
|
|
1253
1252
|
}, null, 8, ["categories"])]), m(Pe, {
|
|
1254
1253
|
"custom-attributes": _.customAttributes
|
|
1255
1254
|
}, null, 8, ["custom-attributes"])])]), m(d, {
|
|
1256
1255
|
"text-color": n(Q).NeutralGray400,
|
|
1257
1256
|
variant: n(Z).Tertiary,
|
|
1258
1257
|
"prepend-icon": "delete",
|
|
1259
|
-
onClick:
|
|
1258
|
+
onClick: ie(() => n(f).deleteItem([{
|
|
1260
1259
|
_id: _._id,
|
|
1261
1260
|
name: _.name,
|
|
1262
1261
|
thumbnail: _.thumbnail
|
|
1263
1262
|
}]), ["stop"])
|
|
1264
|
-
}, null, 8, ["text-color", "variant", "onClick"])], 8,
|
|
1265
|
-
}), 128))])) : (v(), C("div",
|
|
1263
|
+
}, null, 8, ["text-color", "variant", "onClick"])], 8, jl);
|
|
1264
|
+
}), 128))])) : (v(), C("div", Yl, [m(pe, {
|
|
1266
1265
|
subtitle: n(l)("menu.product.table.empty.subtitle"),
|
|
1267
1266
|
title: n(l)("menu.product.table.empty.title")
|
|
1268
1267
|
}, {
|
|
1269
|
-
action: A(() => [g("div",
|
|
1268
|
+
action: A(() => [g("div", Zl, [m(d, {
|
|
1270
1269
|
variant: n(Z).Primary,
|
|
1271
1270
|
label: n(l)("menu.product.table.empty.actions.add"),
|
|
1272
1271
|
"prepend-icon": "add",
|
|
@@ -1289,20 +1288,20 @@ const We = /* @__PURE__ */ G({
|
|
|
1289
1288
|
key: 0,
|
|
1290
1289
|
"blame-form-child-on-validation-failed": "",
|
|
1291
1290
|
class: "flex flex-col flex-1 space-y-8 overflow-hidden",
|
|
1292
|
-
onValidationSuccess:
|
|
1291
|
+
onValidationSuccess: De
|
|
1293
1292
|
}, {
|
|
1294
|
-
default: A(() => [g("div",
|
|
1293
|
+
default: A(() => [g("div", Fl, [g("div", Vl, [ve(e.$slots, "filter")]), g("div", Il, [m(c, {
|
|
1295
1294
|
"model-value": T.value,
|
|
1296
1295
|
"onUpdate:modelValue": t[0] || (t[0] = (_) => T.value = _),
|
|
1297
1296
|
autofocus: "",
|
|
1298
1297
|
placeholder: n(l)("menu.product.table.search.placeholder")
|
|
1299
|
-
}, null, 8, ["model-value", "placeholder"])])]), W.value ? (v(), C("div",
|
|
1298
|
+
}, null, 8, ["model-value", "placeholder"])])]), W.value ? (v(), C("div", $l, [m(n(je), {
|
|
1300
1299
|
ref_key: "attributeFilterRef",
|
|
1301
1300
|
ref: te,
|
|
1302
|
-
attributes:
|
|
1301
|
+
attributes: M.value,
|
|
1303
1302
|
modelValue: I.value,
|
|
1304
1303
|
"onUpdate:modelValue": t[1] || (t[1] = (_) => I.value = _)
|
|
1305
|
-
}, null, 8, ["attributes", "modelValue"])])) :
|
|
1304
|
+
}, null, 8, ["attributes", "modelValue"])])) : D("", !0), L.value.length ? (v(), C("div", Tl, [le.value.length && !S.value ? (v(), C("div", Pl, [g("p", Al, j(n(l)("menu.product.table.selection.count", {
|
|
1306
1305
|
count: le.value.length
|
|
1307
1306
|
})), 1), m(d, {
|
|
1308
1307
|
label: n(l)("menu.product.table.selection.actions.deselect_all"),
|
|
@@ -1317,7 +1316,7 @@ const We = /* @__PURE__ */ G({
|
|
|
1317
1316
|
"prepend-icon": "delete",
|
|
1318
1317
|
variant: "secondary",
|
|
1319
1318
|
onClick: rt
|
|
1320
|
-
}, null, 8, ["border-color", "text-color", "label"])])) :
|
|
1319
|
+
}, null, 8, ["border-color", "text-color", "label"])])) : D("", !0), S.value ? (v(), C("div", Ol, [m(d, {
|
|
1321
1320
|
variant: n(Z).Tertiary,
|
|
1322
1321
|
label: n(l)("menu.product.table.bulk_edit.actions.reset_all"),
|
|
1323
1322
|
onClick: be
|
|
@@ -1331,10 +1330,10 @@ const We = /* @__PURE__ */ G({
|
|
|
1331
1330
|
variant: n(Z).Secondary,
|
|
1332
1331
|
label: n(l)("menu.product.table.bulk_edit.actions.save"),
|
|
1333
1332
|
type: "submit"
|
|
1334
|
-
}, null, 8, ["borderColor", "textColor", "variant", "label"])])) :
|
|
1333
|
+
}, null, 8, ["borderColor", "textColor", "variant", "label"])])) : D("", !0), g("div", {
|
|
1335
1334
|
ref_key: "tableWrapper",
|
|
1336
|
-
ref:
|
|
1337
|
-
}, [(v(), P(Je(S.value ?
|
|
1335
|
+
ref: Ne
|
|
1336
|
+
}, [(v(), P(Je(S.value ? Pt : "div"), {
|
|
1338
1337
|
ref: "fullWrapper",
|
|
1339
1338
|
title: S.value ? n(l)("menu.product.table.bulk_edit.title") : "",
|
|
1340
1339
|
show: S.value,
|
|
@@ -1350,21 +1349,21 @@ const We = /* @__PURE__ */ G({
|
|
|
1350
1349
|
}],
|
|
1351
1350
|
class: "overflow-x-scroll",
|
|
1352
1351
|
style: vt(pt.value),
|
|
1353
|
-
onOnPrimary:
|
|
1352
|
+
onOnPrimary: De,
|
|
1354
1353
|
onOnCancel: Fe
|
|
1355
1354
|
}, {
|
|
1356
1355
|
default: A(() => [m(h, {
|
|
1357
|
-
class:
|
|
1356
|
+
class: re({
|
|
1358
1357
|
"min-w-[1100px]": !0,
|
|
1359
1358
|
"mt-24": S.value
|
|
1360
1359
|
}),
|
|
1361
|
-
modelValue:
|
|
1362
|
-
"onUpdate:modelValue": t[2] || (t[2] = (_) =>
|
|
1363
|
-
"column-defs":
|
|
1360
|
+
modelValue: ue.value,
|
|
1361
|
+
"onUpdate:modelValue": t[2] || (t[2] = (_) => ue.value = _),
|
|
1362
|
+
"column-defs": Me.value,
|
|
1364
1363
|
"column-visibility": st.value,
|
|
1365
1364
|
loading: e.isCalculating,
|
|
1366
|
-
"page-size":
|
|
1367
|
-
"row-data":
|
|
1365
|
+
"page-size": N.value.length,
|
|
1366
|
+
"row-data": N.value,
|
|
1368
1367
|
"shrink-at": !1,
|
|
1369
1368
|
selection: S.value ? void 0 : "multiple",
|
|
1370
1369
|
virtual: !0,
|
|
@@ -1378,7 +1377,7 @@ const We = /* @__PURE__ */ G({
|
|
|
1378
1377
|
subtitle: n(l)("menu.product.table.empty.subtitle"),
|
|
1379
1378
|
title: n(l)("menu.product.table.empty.title")
|
|
1380
1379
|
}, {
|
|
1381
|
-
action: A(() => [g("div",
|
|
1380
|
+
action: A(() => [g("div", Ml, [m(d, {
|
|
1382
1381
|
variant: n(Z).Primary,
|
|
1383
1382
|
label: n(l)("menu.product.table.empty.actions.add"),
|
|
1384
1383
|
"prepend-icon": "add",
|
|
@@ -1402,57 +1401,57 @@ const We = /* @__PURE__ */ G({
|
|
|
1402
1401
|
}));
|
|
1403
1402
|
};
|
|
1404
1403
|
}
|
|
1405
|
-
}),
|
|
1404
|
+
}), Xl = {
|
|
1406
1405
|
key: 0,
|
|
1407
|
-
class: /* @__PURE__ */
|
|
1408
|
-
},
|
|
1409
|
-
class: /* @__PURE__ */
|
|
1410
|
-
},
|
|
1406
|
+
class: /* @__PURE__ */ re(["flex flex-col", "flex-1", "overflow-hidden"])
|
|
1407
|
+
}, ea = {
|
|
1408
|
+
class: /* @__PURE__ */ re(["pt-16 xs:pt-0", "flex xs:flex-col", "flex-1", "w-full", "overflow-hidden"])
|
|
1409
|
+
}, ta = { class: "flex flex-col flex-1 overflow-hidden" }, la = {
|
|
1411
1410
|
key: 1,
|
|
1412
1411
|
class: "pt-16 xs:pt-8 space-y-24"
|
|
1413
|
-
},
|
|
1412
|
+
}, aa = { class: "flex items-center gap-8 px-16" }, ka = /* @__PURE__ */ E({
|
|
1414
1413
|
__name: "Product",
|
|
1415
1414
|
setup(w) {
|
|
1416
1415
|
const a = ke(), r = x(() => a.rules.item), u = Vt(), l = et(), i = It(), o = x(() => !a.state.currentCatalogId), s = x(() => a.rules.item), f = x(() => !a.state.currentSchedulerId), p = V(!1), b = V(!1), y = x(() => {
|
|
1417
|
-
var
|
|
1416
|
+
var M, T, $, N;
|
|
1418
1417
|
if (o.value && f.value) return;
|
|
1419
1418
|
if (f.value) {
|
|
1420
|
-
const
|
|
1421
|
-
return
|
|
1422
|
-
const
|
|
1423
|
-
return
|
|
1419
|
+
const U = (M = a.currentCatalog) == null ? void 0 : M.override.items;
|
|
1420
|
+
return U ? Object.entries(U).reduce((K, [O, Y]) => {
|
|
1421
|
+
const R = Y.find((se) => !se.combinationKey);
|
|
1422
|
+
return R && (K[O] = R), K;
|
|
1424
1423
|
}, {}) : {};
|
|
1425
1424
|
}
|
|
1426
|
-
return ((o.value ? (T = a.currentScheduler) == null ? void 0 : T.items : (
|
|
1425
|
+
return ((o.value ? (T = a.currentScheduler) == null ? void 0 : T.items : (N = ($ = a.currentCatalog) == null ? void 0 : $.override.scheduler[a.state.currentSchedulerId]) == null ? void 0 : N.items) ?? []).reduce((U, K) => (K.combinationKey || (U[K._id] = K), U), {});
|
|
1427
1426
|
}), k = V({}), L = V({}), ee = async () => {
|
|
1428
|
-
var
|
|
1427
|
+
var N, U;
|
|
1429
1428
|
b.value = !0;
|
|
1430
|
-
const
|
|
1429
|
+
const z = !!y.value, M = me.flatten(H.value.map((K) => K.items)), T = z && p.value ? await kt(
|
|
1431
1430
|
a.mergedMenu,
|
|
1432
|
-
|
|
1431
|
+
M,
|
|
1433
1432
|
a.state.menu,
|
|
1434
|
-
(
|
|
1435
|
-
(
|
|
1433
|
+
(N = a.currentCatalog) == null ? void 0 : N._id,
|
|
1434
|
+
(U = a.currentScheduler) == null ? void 0 : U._id,
|
|
1436
1435
|
!1
|
|
1437
|
-
) : void 0, $ =
|
|
1438
|
-
var
|
|
1439
|
-
const
|
|
1440
|
-
return
|
|
1436
|
+
) : void 0, $ = M.reduce((K, O, Y) => {
|
|
1437
|
+
var se, de, fe, ge;
|
|
1438
|
+
const R = (se = y.value) == null ? void 0 : se[O._id];
|
|
1439
|
+
return K[O._id] = {
|
|
1441
1440
|
_id: O._id,
|
|
1442
1441
|
name: O.name,
|
|
1443
|
-
code:
|
|
1442
|
+
code: z ? R == null ? void 0 : R.code : O == null ? void 0 : O.code,
|
|
1444
1443
|
category: O.category,
|
|
1445
1444
|
additionalCategories: O.additionalCategories,
|
|
1446
|
-
price:
|
|
1447
|
-
orderFrom:
|
|
1448
|
-
taxes:
|
|
1445
|
+
price: z && s.value.editPrice ? R == null ? void 0 : R.price : O.price,
|
|
1446
|
+
orderFrom: z ? R == null ? void 0 : R.orderFrom : O.orderFrom,
|
|
1447
|
+
taxes: z ? null : O.taxes,
|
|
1449
1448
|
thumbnail: O.thumbnail,
|
|
1450
1449
|
fallbackPrice: (de = T == null ? void 0 : T[Y]) == null ? void 0 : de.price,
|
|
1451
|
-
fallbackName:
|
|
1450
|
+
fallbackName: z ? O.name : void 0,
|
|
1452
1451
|
fallbackCode: (fe = T == null ? void 0 : T[Y]) == null ? void 0 : fe.code,
|
|
1453
1452
|
fallbackOrder: (ge = T == null ? void 0 : T[Y]) == null ? void 0 : ge.orderFrom,
|
|
1454
|
-
fallbackTaxes:
|
|
1455
|
-
},
|
|
1453
|
+
fallbackTaxes: z ? O.taxes : null
|
|
1454
|
+
}, K;
|
|
1456
1455
|
}, {});
|
|
1457
1456
|
k.value = $, L.value = { ...$ }, b.value = !1;
|
|
1458
1457
|
}, { categories: S, selectedCategories: H } = Ce(), W = V(null);
|
|
@@ -1465,37 +1464,37 @@ const We = /* @__PURE__ */ G({
|
|
|
1465
1464
|
function ce() {
|
|
1466
1465
|
l.create(null);
|
|
1467
1466
|
}
|
|
1468
|
-
const
|
|
1467
|
+
const G = () => {
|
|
1469
1468
|
H.value && ee();
|
|
1470
1469
|
}, { t: I } = Se();
|
|
1471
|
-
return (
|
|
1470
|
+
return (z, M) => {
|
|
1472
1471
|
const T = B("fm-button");
|
|
1473
|
-
return n(S).length ? (v(), C("div",
|
|
1474
|
-
g("div",
|
|
1475
|
-
g("div",
|
|
1476
|
-
n(H) ? (v(), P(
|
|
1472
|
+
return n(S).length ? (v(), C("div", Xl, [
|
|
1473
|
+
g("div", ea, [
|
|
1474
|
+
g("div", ta, [
|
|
1475
|
+
n(H) ? (v(), P(Jl, {
|
|
1477
1476
|
key: 0,
|
|
1478
1477
|
ref_key: "productTableRef",
|
|
1479
1478
|
ref: W,
|
|
1480
1479
|
"is-calculating": b.value,
|
|
1481
1480
|
"model-value": k.value,
|
|
1482
1481
|
"original-value": L.value,
|
|
1483
|
-
"onUpdate:modelValue":
|
|
1484
|
-
"onReset:modelValue":
|
|
1485
|
-
"onUpdate:editing":
|
|
1482
|
+
"onUpdate:modelValue": M[0] || (M[0] = ($) => k.value = $),
|
|
1483
|
+
"onReset:modelValue": G,
|
|
1484
|
+
"onUpdate:editing": M[1] || (M[1] = ($) => p.value = $)
|
|
1486
1485
|
}, {
|
|
1487
1486
|
filter: A(() => [
|
|
1488
|
-
m(
|
|
1489
|
-
s.value.multiScheduler ? (v(), P(
|
|
1487
|
+
m(Ge, { onToggleAttributeFilter: te }),
|
|
1488
|
+
s.value.multiScheduler ? (v(), P(Ee, { key: 0 })) : D("", !0)
|
|
1490
1489
|
]),
|
|
1491
1490
|
_: 1
|
|
1492
|
-
}, 8, ["is-calculating", "model-value", "original-value"])) :
|
|
1491
|
+
}, 8, ["is-calculating", "model-value", "original-value"])) : D("", !0)
|
|
1493
1492
|
])
|
|
1494
1493
|
])
|
|
1495
|
-
])) : (v(), C("div",
|
|
1496
|
-
g("div",
|
|
1497
|
-
m(
|
|
1498
|
-
s.value.multiScheduler ? (v(), P(
|
|
1494
|
+
])) : (v(), C("div", la, [
|
|
1495
|
+
g("div", aa, [
|
|
1496
|
+
m(Ge),
|
|
1497
|
+
s.value.multiScheduler ? (v(), P(Ee, { key: 0 })) : D("", !0)
|
|
1499
1498
|
]),
|
|
1500
1499
|
r.value.create ? (v(), P(pe, {
|
|
1501
1500
|
key: 0,
|
|
@@ -1515,7 +1514,7 @@ const We = /* @__PURE__ */ G({
|
|
|
1515
1514
|
"categorized-items": n(i).linkableItems.value,
|
|
1516
1515
|
"initial-value": n(i).currentItems.value,
|
|
1517
1516
|
"show-variant": !1,
|
|
1518
|
-
onSubmit:
|
|
1517
|
+
onSubmit: M[2] || (M[2] = ($) => n(i).applyProduct($.map((N) => N._id)))
|
|
1519
1518
|
}, {
|
|
1520
1519
|
default: A(({ trigger: $ }) => [
|
|
1521
1520
|
m(T, {
|
|
@@ -1538,7 +1537,7 @@ const We = /* @__PURE__ */ G({
|
|
|
1538
1537
|
"categorized-items": n(u).linkableItems.value,
|
|
1539
1538
|
"initial-value": n(u).currentItems.value,
|
|
1540
1539
|
"show-variant": !1,
|
|
1541
|
-
onSubmit:
|
|
1540
|
+
onSubmit: M[3] || (M[3] = ($) => n(u).applyProduct($.map((N) => N._id)))
|
|
1542
1541
|
}, {
|
|
1543
1542
|
default: A(({ trigger: $ }) => [
|
|
1544
1543
|
m(T, {
|
|
@@ -1557,5 +1556,5 @@ const We = /* @__PURE__ */ G({
|
|
|
1557
1556
|
});
|
|
1558
1557
|
export {
|
|
1559
1558
|
We as _,
|
|
1560
|
-
|
|
1559
|
+
ka as a
|
|
1561
1560
|
};
|