@feedmepos/mf-inventory-portal 1.2.19 → 1.2.20-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-Dhgx7rrQ.js → App-B5BIloxc.js} +1 -1
- package/dist/{ApprovalView-BrXrU7td.js → ApprovalView-BUP9Ol7x.js} +2 -2
- package/dist/{BindingsDialog-D-4th4Wv.js → BindingsDialog-D8IeB1YM.js} +2 -2
- package/dist/{BindingsPicker-OZ2oXC9f.js → BindingsPicker-_-Ixxe9G.js} +1 -1
- package/dist/{BindingsTable-D8GYWCmf.js → BindingsTable-BTCusvjz.js} +1 -1
- package/dist/{ClosingDraftView-s8x2c2nr.js → ClosingDraftView-tCM9Zdx1.js} +2 -2
- package/dist/{ClosingTemplateView-C31q0m8r.js → ClosingTemplateView-CYuMwKNs.js} +3 -3
- package/dist/{DeliveryOrderPrintPreview-Ba1kMUkZ.js → DeliveryOrderPrintPreview-BReapKV9.js} +1 -1
- package/dist/{FmFilterableMenuOptions.vue_vue_type_script_setup_true_lang-BSbH9guj.js → FmFilterableMenuOptions.vue_vue_type_script_setup_true_lang-wvVXg89M.js} +3 -3
- package/dist/{FmMultiselectDialog-Ct6hmHG_.js → FmMultiselectDialog-CJuzOMdl.js} +1 -1
- package/dist/{FmUnitInput.vue_vue_type_script_setup_true_lang-BvH4jEs4.js → FmUnitInput.vue_vue_type_script_setup_true_lang-C3eLdkK3.js} +1 -1
- package/dist/{ImportView-BSGSSm53.js → ImportView-Bjz1VcEa.js} +2 -2
- package/dist/{IngredientBindedItem.vue_vue_type_script_setup_true_lang-BZTaw7SF.js → IngredientBindedItem.vue_vue_type_script_setup_true_lang-DkOE4lzJ.js} +1 -1
- package/dist/{IngredientGroupView-DTkMPiSZ.js → IngredientGroupView-J7YDHuhH.js} +2 -2
- package/dist/{IngredientsView-CcHZgOrI.js → IngredientsView-BxwlvkQA.js} +497 -482
- package/dist/{IntegrationView-DmRECDHP.js → IntegrationView-DCLqYJkS.js} +3 -3
- package/dist/{InventoryBindingForm-CIpxfX3b.js → InventoryBindingForm-Dla3xBG0.js} +1 -1
- package/dist/{InventoryBindingForm.vue_vue_type_script_setup_true_lang-BuZXOBId.js → InventoryBindingForm.vue_vue_type_script_setup_true_lang-BSYpdGuC.js} +3 -3
- package/dist/{InventoryBindingSummary-BQ_E25cU.js → InventoryBindingSummary-Bi4SppDe.js} +1 -1
- package/dist/{NumberPrecisionInput.vue_vue_type_script_setup_true_lang-N-pD1zaw.js → NumberPrecisionInput.vue_vue_type_script_setup_true_lang-ClYvUONw.js} +1 -1
- package/dist/{PremiumBadge.vue_vue_type_script_setup_true_lang-DN6RNqGG.js → PremiumBadge.vue_vue_type_script_setup_true_lang-CU0SmCbP.js} +1 -1
- package/dist/{PublishView-CzyD-kX6.js → PublishView-C2K7WaAd.js} +1 -1
- package/dist/{PurchaseOrderPrintPreview-Gsv5_VRS.js → PurchaseOrderPrintPreview-DMNrCh0s.js} +1 -1
- package/dist/{ReceiveRequestView-nYf3RhYt.js → ReceiveRequestView-CEeEUMVX.js} +193 -185
- package/dist/{RecipeView-CUPc7FL_.js → RecipeView-BxhzCnzy.js} +3 -3
- package/dist/StockView-9YUD3m_c.js +2384 -0
- package/dist/{SubsidiaryTreeDialog.vue_vue_type_script_setup_true_lang-HRRCXy1F.js → SubsidiaryTreeDialog.vue_vue_type_script_setup_true_lang-CEavqW1k.js} +1 -1
- package/dist/{SupplierView-DbNV6wBz.js → SupplierView-BlBEKe2O.js} +4 -4
- package/dist/{TransferDetails.vue_vue_type_script_setup_true_lang-Td4cUzwp.js → TransferDetails.vue_vue_type_script_setup_true_lang-DdqM3dGO.js} +5 -5
- package/dist/{TransferTemplateView-BnFKuI1M.js → TransferTemplateView-D8EePaDw.js} +7 -7
- package/dist/{UnitView-BBsLnc3y.js → UnitView-Dy3MiRGl.js} +3 -3
- package/dist/{WarehouseView-BvHckwu3.js → WarehouseView-DijZkykP.js} +1 -1
- package/dist/{app-DLWtkyIk.js → app-C64sJzLv.js} +12699 -12586
- package/dist/app.d.ts +21 -0
- package/dist/app.js +1 -1
- package/dist/{closing-template-BVGsZA5Q.js → closing-template-BEjIJ2tY.js} +1 -1
- package/dist/components/FmLockableField.vue.d.ts +3 -0
- package/dist/{decimal-C_fA5VTE.js → decimal-CkfdNVrr.js} +1 -1
- package/dist/{format-unit-display-CIadAESY.js → format-unit-display-CldjWHO8.js} +3 -3
- package/dist/{import-export.helper-CGvZQkvF.js → import-export.helper-DNdTJYLZ.js} +1 -1
- package/dist/{index-cdGBnn3K.js → index-Cid-zsPr.js} +2 -2
- package/dist/{index-DOGCbX7z.js → index-vSxmfAnk.js} +1 -1
- package/dist/layout/SingleColumnLayout.vue.d.ts +6 -3
- package/dist/{purchase-order-template-BBnGvesc.js → purchase-order-template-wK371TAH.js} +1 -1
- package/dist/{stock-BKkz6GYk.js → stock-DtGy2YeN.js} +1 -1
- package/dist/style.css +1 -1
- package/dist/{supplier-CIOzcvBf.js → supplier-CfWMxJX1.js} +1 -1
- package/dist/tsconfig.app.tsbuildinfo +1 -1
- package/dist/{use-ingredient-select-dialog-8VdP7aHB.js → use-ingredient-select-dialog-wVvSnlm8.js} +1 -1
- package/dist/{use-inventory-binding-dialog-CniGmXxR.js → use-inventory-binding-dialog-B6f3xRuV.js} +1 -1
- package/dist/views/receive-request/components/transfer-form/TransferForm.vue.d.ts +2 -2
- package/dist/views/receive-request/composables/use-receive-request-form.d.ts +3 -3
- package/dist/views/receive-request/composables/use-receive-request-table.d.ts +3 -3
- package/dist/views/stock/components/dialog/StockAdjustmentSideSheet.vue.d.ts +20 -0
- package/package.json +2 -2
- package/dist/StockView-DbWduR8-.js +0 -2160
|
@@ -1,74 +1,74 @@
|
|
|
1
|
-
import { ref as B, defineComponent as pe, computed as
|
|
2
|
-
import { a as
|
|
3
|
-
import { useDialog as Re, useSnackbar as
|
|
1
|
+
import { ref as B, defineComponent as pe, computed as g, resolveComponent as F, openBlock as u, createElementBlock as w, Fragment as X, unref as o, createVNode as a, withModifiers as Bt, createCommentVNode as L, withCtx as y, createElementVNode as l, toDisplayString as A, normalizeClass as te, renderList as ue, createBlock as O, h as Q, renderSlot as xe, createSlots as Ye, createTextVNode as Ge, mergeModels as it, onMounted as Dt, watch as kt, useModel as Ot, isRef as dt, normalizeStyle as Nt, Teleport as ut, normalizeProps as zt, guardReactiveProps as Lt } from "vue";
|
|
2
|
+
import { a as Ce, e as H, f as Tt, S as jt, b as Fe, h as He, i as Wt, D as ct, j as Me, A as Pe, k as wt, l as Ht, n as mt, t as qt, o as Yt, p as pt, q as Oe, U as Gt, r as Kt, M as Jt, s as vt, v as ft, c as Vt, w as Ne, _ as Zt, x as yt, y as Qt, z as gt, B as Xt, C as en, N as tn, H as nn, u as ln, E as on, G as an, I as sn, J as rn, K as bt, L as dn } from "./app-C64sJzLv.js";
|
|
3
|
+
import { useDialog as Re, useSnackbar as Ae, components as ze, useProxiedModel as ht, useDialogChild as un, useBreakpoints as cn } from "@feedmepos/ui-library";
|
|
4
4
|
import { i as mn, _ as pn } from "./is-linked-ingredient-error-fJ2TJb3z.js";
|
|
5
5
|
import { useI18n as ve, useCoreStore as It } from "@feedmepos/mf-common";
|
|
6
6
|
import { defineStore as vn, storeToRefs as fn } from "pinia";
|
|
7
|
-
import { g as yn, _ as
|
|
8
|
-
import { _ as bn } from "./InventoryBindingForm.vue_vue_type_script_setup_true_lang-
|
|
9
|
-
import { _ as
|
|
7
|
+
import { g as yn, _ as Le, S as je, a as gn } from "./SubsidiaryTreeDialog.vue_vue_type_script_setup_true_lang-CEavqW1k.js";
|
|
8
|
+
import { _ as bn } from "./InventoryBindingForm.vue_vue_type_script_setup_true_lang-BSYpdGuC.js";
|
|
9
|
+
import { _ as We } from "./IngredientBindedItem.vue_vue_type_script_setup_true_lang-DkOE4lzJ.js";
|
|
10
10
|
import { _ as he } from "./PreviewBadge.vue_vue_type_script_setup_true_lang-CRZiQHjx.js";
|
|
11
|
-
import { d as Ue, g as hn, e as _n, a as xn } from "./import-export.helper-
|
|
11
|
+
import { d as Ue, g as hn, e as _n, a as xn } from "./import-export.helper-DNdTJYLZ.js";
|
|
12
12
|
import { _ as kn } from "./FmCustomAttribute.vue_vue_type_script_setup_true_lang-D-IWRjRD.js";
|
|
13
|
-
import { u as St } from "./purchase-order-template-
|
|
14
|
-
import { u as Ct } from "./closing-template-
|
|
15
|
-
import { u as Tn } from "./FmMultiselectDialog-
|
|
16
|
-
const
|
|
17
|
-
const
|
|
13
|
+
import { u as St } from "./purchase-order-template-wK371TAH.js";
|
|
14
|
+
import { u as Ct } from "./closing-template-BEjIJ2tY.js";
|
|
15
|
+
import { u as Tn } from "./FmMultiselectDialog-CJuzOMdl.js";
|
|
16
|
+
const qe = vn("ingredientForm", function() {
|
|
17
|
+
const s = Re(), T = Ae(), r = Ce(), b = B(!1), { t: S } = ve(), U = B();
|
|
18
18
|
function k() {
|
|
19
|
-
const
|
|
19
|
+
const i = {
|
|
20
20
|
sku: {},
|
|
21
21
|
mode: H.CREATE,
|
|
22
22
|
show: !0,
|
|
23
|
-
"onUpdate:show"(
|
|
24
|
-
U.value.show =
|
|
23
|
+
"onUpdate:show"(d) {
|
|
24
|
+
U.value.show = d;
|
|
25
25
|
}
|
|
26
26
|
};
|
|
27
|
-
U.value =
|
|
27
|
+
U.value = i;
|
|
28
28
|
}
|
|
29
|
-
async function n(
|
|
30
|
-
const
|
|
31
|
-
sku: Tt(
|
|
29
|
+
async function n(i) {
|
|
30
|
+
const d = {
|
|
31
|
+
sku: Tt(i),
|
|
32
32
|
mode: H.UPDATE,
|
|
33
33
|
show: !0,
|
|
34
34
|
"onUpdate:show"(m) {
|
|
35
35
|
U.value.show = m;
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
|
-
U.value =
|
|
38
|
+
U.value = d;
|
|
39
39
|
}
|
|
40
|
-
async function c(
|
|
40
|
+
async function c(i) {
|
|
41
41
|
b.value = !0;
|
|
42
42
|
try {
|
|
43
|
-
await
|
|
43
|
+
await r.deleteSku(i), T.open({
|
|
44
44
|
title: "Success",
|
|
45
|
-
message: `Deleted ${
|
|
45
|
+
message: `Deleted ${i.name}`,
|
|
46
46
|
type: "success"
|
|
47
47
|
});
|
|
48
|
-
} catch (
|
|
49
|
-
|
|
48
|
+
} catch (d) {
|
|
49
|
+
d instanceof jt && mn(d) ? s.open({
|
|
50
50
|
title: "Cannot delete ingredient",
|
|
51
51
|
contentComponent: pn,
|
|
52
52
|
contentComponentProps: {
|
|
53
|
-
subject: (
|
|
54
|
-
items:
|
|
53
|
+
subject: (i == null ? void 0 : i.name) ?? "",
|
|
54
|
+
items: d.errorResponse.message
|
|
55
55
|
},
|
|
56
56
|
secondaryActions: {
|
|
57
57
|
text: "Close",
|
|
58
58
|
close: !0
|
|
59
59
|
}
|
|
60
|
-
}) : console.log("unable to delete ingredient",
|
|
61
|
-
title: `Cannot delete ${
|
|
60
|
+
}) : console.log("unable to delete ingredient", d), T.open({
|
|
61
|
+
title: `Cannot delete ${i.name}`,
|
|
62
62
|
message: "Please try again.",
|
|
63
63
|
type: "error"
|
|
64
|
-
}), console.error("failed to delete ingredient",
|
|
64
|
+
}), console.error("failed to delete ingredient", d);
|
|
65
65
|
} finally {
|
|
66
66
|
b.value = !1;
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
|
-
function _(
|
|
70
|
-
|
|
71
|
-
title: S("inventory.ingredient.delete.title", [(
|
|
69
|
+
function _(i) {
|
|
70
|
+
s.open({
|
|
71
|
+
title: S("inventory.ingredient.delete.title", [(i == null ? void 0 : i.name) ?? ""]),
|
|
72
72
|
closeButton: !1,
|
|
73
73
|
message: S("inventory.ingredient.delete.message"),
|
|
74
74
|
primaryActions: {
|
|
@@ -80,7 +80,7 @@ const Ye = vn("ingredientForm", function() {
|
|
|
80
80
|
text: S("common.cancel"),
|
|
81
81
|
close: !0
|
|
82
82
|
}
|
|
83
|
-
}).onPrimary(() => c(
|
|
83
|
+
}).onPrimary(() => c(i));
|
|
84
84
|
}
|
|
85
85
|
return {
|
|
86
86
|
createIngredient: k,
|
|
@@ -95,10 +95,10 @@ const Ye = vn("ingredientForm", function() {
|
|
|
95
95
|
}, Vn = { class: "flex flex-col gap-1" }, In = { class: "fm-typo-en-heading-lg-600" }, Sn = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, Cn = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, Fn = {
|
|
96
96
|
key: 0,
|
|
97
97
|
class: "fm-typo-en-body-md-400 text-fm-color-system-warning-300"
|
|
98
|
-
},
|
|
98
|
+
}, An = {
|
|
99
99
|
key: 1,
|
|
100
100
|
class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary"
|
|
101
|
-
},
|
|
101
|
+
}, En = { class: "flex flex-col gap-2 mt-4" }, $n = { class: "flex items-center gap-2 fm-typo-en-body-md-400" }, Mn = { class: "flex flex-wrap gap-2" }, Un = { class: "flex flex-col" }, Pn = { class: "flex flex-col bg-fm-color-bg-secondary font-mono p-4 rounded-md" }, Rn = { class: "text-fm-color-typo-tertiary flex-shrink-0 fm-typo-en-body-md-400 whitespace-pre flex items-center" }, Bn = { class: "px-2 py-1 rounded-md bg-blue-200 border-2 border-blue-400" }, Dn = { class: "fm-typo-en-body-md-600 text-fm-color-typo-primary" }, On = /* @__PURE__ */ pe({
|
|
102
102
|
__name: "ItemSubsidiaryTreeDialog",
|
|
103
103
|
props: {
|
|
104
104
|
skuId: {},
|
|
@@ -106,10 +106,10 @@ const Ye = vn("ingredientForm", function() {
|
|
|
106
106
|
itemCode: {}
|
|
107
107
|
},
|
|
108
108
|
setup(W) {
|
|
109
|
-
const
|
|
109
|
+
const s = W, { t: T } = ve(), r = It(), b = Fe(), S = B(!1), U = g(() => {
|
|
110
110
|
var m;
|
|
111
|
-
return ((m =
|
|
112
|
-
}), k =
|
|
111
|
+
return ((m = r.sessionUser.value) == null ? void 0 : m.role.isAdmin) ?? !1;
|
|
112
|
+
}), k = g(() => b.getSkuSubsidiaries(s.skuId)), n = g(() => {
|
|
113
113
|
const m = /* @__PURE__ */ new Set();
|
|
114
114
|
function v(E) {
|
|
115
115
|
for (const p of E)
|
|
@@ -125,11 +125,11 @@ const Ye = vn("ingredientForm", function() {
|
|
|
125
125
|
function c(m, v = [], V = !1) {
|
|
126
126
|
const E = [];
|
|
127
127
|
return m.forEach((p, N) => {
|
|
128
|
-
const
|
|
128
|
+
const D = N === m.length - 1, fe = [...v, D];
|
|
129
129
|
let ne = "";
|
|
130
130
|
for (let ee = 0; ee < v.length; ee++)
|
|
131
131
|
ne += v[ee] ? " " : "│ ";
|
|
132
|
-
ne +=
|
|
132
|
+
ne += D ? "└── " : "├── ";
|
|
133
133
|
const ce = n.value.has(p.id), le = p.isAssigned === !0, oe = V && !le;
|
|
134
134
|
if (E.push({
|
|
135
135
|
id: p.id,
|
|
@@ -149,29 +149,29 @@ const Ye = vn("ingredientForm", function() {
|
|
|
149
149
|
const V = /* @__PURE__ */ new Set();
|
|
150
150
|
for (const E of m) {
|
|
151
151
|
const p = [...v, E.id];
|
|
152
|
-
E.isAssigned === !0 && p.forEach((N) => V.add(N)), E.children && E.children.length > 0 && _(E.children, p).forEach((
|
|
152
|
+
E.isAssigned === !0 && p.forEach((N) => V.add(N)), E.children && E.children.length > 0 && _(E.children, p).forEach((D) => V.add(D));
|
|
153
153
|
}
|
|
154
154
|
return V;
|
|
155
155
|
}
|
|
156
|
-
function
|
|
156
|
+
function i(m, v) {
|
|
157
157
|
return m.map((V) => v.has(V.id) || V.isAssigned === !0 ? {
|
|
158
158
|
...V,
|
|
159
159
|
// Recursively filter children
|
|
160
|
-
children: V.children ?
|
|
160
|
+
children: V.children ? i(V.children, v) : []
|
|
161
161
|
} : null).filter(Boolean);
|
|
162
162
|
}
|
|
163
|
-
const
|
|
163
|
+
const d = g(() => {
|
|
164
164
|
let m = k.value.subsidiaryTree;
|
|
165
165
|
if ((!m || m.length === 0) && (m = b.getBusinessSubsidiaryTree()), !U.value) {
|
|
166
166
|
const v = _(m);
|
|
167
|
-
m =
|
|
167
|
+
m = i(m, v);
|
|
168
168
|
}
|
|
169
169
|
return c(m, []);
|
|
170
170
|
});
|
|
171
171
|
return (m, v) => {
|
|
172
172
|
const V = F("FmButton"), E = F("FmDialog");
|
|
173
|
-
return
|
|
174
|
-
o(b).isEnabled ? (
|
|
173
|
+
return u(), w(X, null, [
|
|
174
|
+
o(b).isEnabled ? (u(), w("div", wn, [
|
|
175
175
|
a(V, {
|
|
176
176
|
"prepend-icon": "info",
|
|
177
177
|
variant: "tertiary",
|
|
@@ -184,13 +184,13 @@ const Ye = vn("ingredientForm", function() {
|
|
|
184
184
|
"close-button": "",
|
|
185
185
|
dismissAway: ""
|
|
186
186
|
}, {
|
|
187
|
-
"dialog-header":
|
|
187
|
+
"dialog-header": y(() => [
|
|
188
188
|
l("div", Vn, [
|
|
189
189
|
l("div", In, A(o(T)("inventory.integration.netsuite.subsidiaryHierarchy.title")), 1),
|
|
190
|
-
l("p", Sn, " Name: " + A(
|
|
191
|
-
l("p", Cn, " Code: " + A(
|
|
192
|
-
U.value ? (
|
|
193
|
-
l("div",
|
|
190
|
+
l("p", Sn, " Name: " + A(s.itemName), 1),
|
|
191
|
+
l("p", Cn, " Code: " + A(s.itemCode), 1),
|
|
192
|
+
U.value ? (u(), w("p", Fn, " All subsidiaries are shown since you are an admin. ")) : (u(), w("p", An, " Only showing subsidiaries in your business path and bound subsidiaries. ")),
|
|
193
|
+
l("div", En, [
|
|
194
194
|
l("div", $n, [
|
|
195
195
|
v[2] || (v[2] = l("span", { class: "font-semibold" }, "Include Children Subsidiaries:", -1)),
|
|
196
196
|
l("span", {
|
|
@@ -204,8 +204,8 @@ const Ye = vn("ingredientForm", function() {
|
|
|
204
204
|
l("span", { class: "w-3 h-3 rounded-sm bg-green-400" }),
|
|
205
205
|
l("span", { class: "fm-typo-en-body-sm-400" }, "Directly Bound")
|
|
206
206
|
], -1)),
|
|
207
|
-
a(
|
|
208
|
-
default:
|
|
207
|
+
a(He, null, {
|
|
208
|
+
default: y(() => v[3] || (v[3] = [
|
|
209
209
|
l("div", { class: "flex items-center gap-2 px-2 py-1 rounded-md" }, [
|
|
210
210
|
l("span", { class: "w-3 h-3 rounded-sm bg-blue-400" }),
|
|
211
211
|
l("span", { class: "fm-typo-en-body-sm-400" }, "Included as Child")
|
|
@@ -217,25 +217,25 @@ const Ye = vn("ingredientForm", function() {
|
|
|
217
217
|
])
|
|
218
218
|
])
|
|
219
219
|
]),
|
|
220
|
-
default:
|
|
220
|
+
default: y(() => [
|
|
221
221
|
l("div", Un, [
|
|
222
222
|
l("div", Pn, [
|
|
223
|
-
(
|
|
223
|
+
(u(!0), w(X, null, ue(d.value, (p) => (u(), w("div", {
|
|
224
224
|
key: p.id,
|
|
225
225
|
class: "flex items-stretch"
|
|
226
226
|
}, [
|
|
227
227
|
l("span", Rn, A(p.prefix), 1),
|
|
228
|
-
p.isParentIncludedChild ? (
|
|
228
|
+
p.isParentIncludedChild ? (u(), O(He, {
|
|
229
229
|
key: 0,
|
|
230
230
|
class: "flex-1"
|
|
231
231
|
}, {
|
|
232
|
-
default:
|
|
232
|
+
default: y(() => [
|
|
233
233
|
l("div", Bn, [
|
|
234
|
-
l("span",
|
|
234
|
+
l("span", Dn, A(p.name), 1)
|
|
235
235
|
])
|
|
236
236
|
]),
|
|
237
237
|
_: 2
|
|
238
|
-
}, 1024)) : (
|
|
238
|
+
}, 1024)) : (u(), w("div", {
|
|
239
239
|
key: 1,
|
|
240
240
|
class: te([
|
|
241
241
|
"px-2 py-1 rounded-md flex-1",
|
|
@@ -259,7 +259,7 @@ const Ye = vn("ingredientForm", function() {
|
|
|
259
259
|
}
|
|
260
260
|
});
|
|
261
261
|
function Nn() {
|
|
262
|
-
const { updateIngredient: W, deleteIngredient:
|
|
262
|
+
const { updateIngredient: W, deleteIngredient: s } = qe(), T = Ce(), r = Fe();
|
|
263
263
|
Re();
|
|
264
264
|
const { t: b } = ve();
|
|
265
265
|
async function S(k, n) {
|
|
@@ -269,7 +269,7 @@ function Nn() {
|
|
|
269
269
|
return;
|
|
270
270
|
}
|
|
271
271
|
if (k === Me.Delete) {
|
|
272
|
-
await
|
|
272
|
+
await s(c);
|
|
273
273
|
return;
|
|
274
274
|
}
|
|
275
275
|
}
|
|
@@ -287,15 +287,15 @@ function Nn() {
|
|
|
287
287
|
size: 300,
|
|
288
288
|
cell(k) {
|
|
289
289
|
const n = k.row.original, c = T.skuBindingFlattenCache[n._id], _ = c == null ? void 0 : c.inventoryBindings.some(
|
|
290
|
-
(
|
|
290
|
+
(i) => "error" in i && i.reason === "circularDependency"
|
|
291
291
|
);
|
|
292
292
|
return Q("div", { class: "flex items-center w-full gap-4" }, [
|
|
293
293
|
_ ? Q(
|
|
294
|
-
|
|
294
|
+
ze.FmTooltip,
|
|
295
295
|
{ class: "text-left" },
|
|
296
296
|
{
|
|
297
297
|
default() {
|
|
298
|
-
return Q(
|
|
298
|
+
return Q(ze.FmIcon, {
|
|
299
299
|
name: "info",
|
|
300
300
|
color: "system-error-300",
|
|
301
301
|
size: "sm"
|
|
@@ -313,11 +313,11 @@ function Nn() {
|
|
|
313
313
|
{
|
|
314
314
|
id: "unit",
|
|
315
315
|
header: () => b("inventory.ingredient.unit"),
|
|
316
|
-
accessorFn: (k) =>
|
|
316
|
+
accessorFn: (k) => _t(k),
|
|
317
317
|
cell(k) {
|
|
318
|
-
const n = k.row.original, c =
|
|
318
|
+
const n = k.row.original, c = _t(n);
|
|
319
319
|
return Q(
|
|
320
|
-
|
|
320
|
+
ze.FmTooltip,
|
|
321
321
|
{ zIndex: 51, content: c },
|
|
322
322
|
Q(
|
|
323
323
|
"span",
|
|
@@ -351,10 +351,10 @@ function Nn() {
|
|
|
351
351
|
},
|
|
352
352
|
{
|
|
353
353
|
id: "netsuiteSubsidiary",
|
|
354
|
-
accessorFn: (k) =>
|
|
354
|
+
accessorFn: (k) => r.getSkuSubsidiaries(k._id),
|
|
355
355
|
header: () => "NetSuite Subsidiary",
|
|
356
356
|
cell(k) {
|
|
357
|
-
const n = k.row.original, { flattenedSubsidiaryNames: c } =
|
|
357
|
+
const n = k.row.original, { flattenedSubsidiaryNames: c } = r.getSkuSubsidiaries(n._id);
|
|
358
358
|
return Q("div", { class: "flex gap-2 items-start" }, [
|
|
359
359
|
Q(
|
|
360
360
|
"span",
|
|
@@ -363,7 +363,7 @@ function Nn() {
|
|
|
363
363
|
},
|
|
364
364
|
c.join(", ")
|
|
365
365
|
),
|
|
366
|
-
Q(
|
|
366
|
+
Q(On, { skuId: n._id, itemName: n.name, itemCode: n.code })
|
|
367
367
|
]);
|
|
368
368
|
},
|
|
369
369
|
enableSorting: !1,
|
|
@@ -389,10 +389,10 @@ function Nn() {
|
|
|
389
389
|
}
|
|
390
390
|
] };
|
|
391
391
|
}
|
|
392
|
-
function
|
|
393
|
-
var
|
|
392
|
+
function _t(W) {
|
|
393
|
+
var s;
|
|
394
394
|
if (W.trackingMeasurement) {
|
|
395
|
-
const T = (
|
|
395
|
+
const T = (s = W.unit.measurements) == null ? void 0 : s.find((r) => r.id === W.trackingMeasurement);
|
|
396
396
|
if (T)
|
|
397
397
|
return `${T.name} (${T.abbrev})`;
|
|
398
398
|
}
|
|
@@ -407,72 +407,72 @@ const zn = /* @__PURE__ */ pe({
|
|
|
407
407
|
readonly: { type: Boolean }
|
|
408
408
|
},
|
|
409
409
|
emits: ["update:modelValue"],
|
|
410
|
-
setup(W, { emit:
|
|
411
|
-
const T = W,
|
|
412
|
-
var
|
|
413
|
-
return (
|
|
414
|
-
}), b =
|
|
415
|
-
var
|
|
416
|
-
return (
|
|
417
|
-
}), S =
|
|
410
|
+
setup(W, { emit: s }) {
|
|
411
|
+
const T = W, r = g(() => {
|
|
412
|
+
var d;
|
|
413
|
+
return (d = T.rootValue) == null ? void 0 : d.unit;
|
|
414
|
+
}), b = g(() => {
|
|
415
|
+
var d;
|
|
416
|
+
return (d = T.rootValue) == null ? void 0 : d._id;
|
|
417
|
+
}), S = s, { t: U } = ve(), k = g({
|
|
418
418
|
get() {
|
|
419
419
|
return !!T.modelValue;
|
|
420
420
|
},
|
|
421
|
-
set(
|
|
422
|
-
|
|
421
|
+
set(d) {
|
|
422
|
+
d ? S("update:modelValue", {
|
|
423
423
|
measurement: null,
|
|
424
424
|
inventoryBindings: []
|
|
425
425
|
}) : S("update:modelValue", null);
|
|
426
426
|
}
|
|
427
|
-
}), n =
|
|
428
|
-
function c(
|
|
427
|
+
}), n = g(() => yn(r.value));
|
|
428
|
+
function c(d) {
|
|
429
429
|
const m = T.modelValue ?? {};
|
|
430
|
-
m.measurement =
|
|
430
|
+
m.measurement = d ? `${d}` : null, S("update:modelValue", m);
|
|
431
431
|
}
|
|
432
|
-
function _(
|
|
432
|
+
function _(d) {
|
|
433
433
|
const m = T.modelValue ?? {};
|
|
434
|
-
m.inventoryBindings =
|
|
434
|
+
m.inventoryBindings = d, S("update:modelValue", m);
|
|
435
435
|
}
|
|
436
|
-
const
|
|
436
|
+
const i = g(() => {
|
|
437
437
|
if (!T.modelValue) return null;
|
|
438
|
-
const
|
|
439
|
-
return
|
|
438
|
+
const d = T.modelValue;
|
|
439
|
+
return d.measurement ? n.value.find((m) => m.value === d.measurement) ?? null : n.value.find((m) => m.value === null) ?? null;
|
|
440
440
|
});
|
|
441
|
-
return (
|
|
441
|
+
return (d, m) => {
|
|
442
442
|
const v = F("FmSwitch"), V = F("FmSelect"), E = F("FmCard");
|
|
443
|
-
return
|
|
443
|
+
return u(), O(E, {
|
|
444
444
|
variant: "outlined",
|
|
445
445
|
class: "p-16 flex flex-col gap-16"
|
|
446
446
|
}, {
|
|
447
|
-
default:
|
|
447
|
+
default: y(() => {
|
|
448
448
|
var p, N;
|
|
449
449
|
return [
|
|
450
450
|
a(v, {
|
|
451
451
|
value: "",
|
|
452
452
|
"model-value": k.value,
|
|
453
|
-
"onUpdate:modelValue": m[0] || (m[0] = (
|
|
453
|
+
"onUpdate:modelValue": m[0] || (m[0] = (D) => k.value = D),
|
|
454
454
|
label: o(U)("inventory.ingredient.convertible.title"),
|
|
455
455
|
sublabel: o(U)("inventory.ingredient.convertible.subtitle"),
|
|
456
456
|
labelPlacement: "right",
|
|
457
|
-
disabled:
|
|
457
|
+
disabled: d.readonly
|
|
458
458
|
}, null, 8, ["model-value", "label", "sublabel", "disabled"]),
|
|
459
|
-
k.value ? (
|
|
459
|
+
k.value ? (u(), w(X, { key: 0 }, [
|
|
460
460
|
l("div", null, [
|
|
461
461
|
a(V, {
|
|
462
462
|
label: o(U)("inventory.ingredient.convertible.convertTo"),
|
|
463
|
-
modelValue: (p =
|
|
463
|
+
modelValue: (p = i.value) == null ? void 0 : p.value,
|
|
464
464
|
"onUpdate:modelValue": c,
|
|
465
465
|
items: n.value,
|
|
466
|
-
disabled:
|
|
466
|
+
disabled: d.readonly
|
|
467
467
|
}, null, 8, ["label", "modelValue", "items", "disabled"])
|
|
468
468
|
]),
|
|
469
469
|
a(bn, {
|
|
470
470
|
id: b.value,
|
|
471
|
-
"model-value": ((N =
|
|
471
|
+
"model-value": ((N = d.modelValue) == null ? void 0 : N.inventoryBindings) ?? [],
|
|
472
472
|
"onUpdate:modelValue": _,
|
|
473
473
|
"exclude-binding-id": b.value,
|
|
474
474
|
rules: [o(Pe)(1)],
|
|
475
|
-
readonly:
|
|
475
|
+
readonly: d.readonly
|
|
476
476
|
}, null, 8, ["id", "model-value", "exclude-binding-id", "rules", "readonly"])
|
|
477
477
|
], 64)) : L("", !0)
|
|
478
478
|
];
|
|
@@ -484,7 +484,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
484
484
|
}), Ln = {
|
|
485
485
|
key: 0,
|
|
486
486
|
class: "flex flex-col gap-4"
|
|
487
|
-
},
|
|
487
|
+
}, jn = { class: "text-fm-color-typo-secondary whitespace-nowrap" }, Se = /* @__PURE__ */ pe({
|
|
488
488
|
__name: "FmLockableField",
|
|
489
489
|
props: {
|
|
490
490
|
locked: { type: Boolean },
|
|
@@ -494,91 +494,102 @@ const zn = /* @__PURE__ */ pe({
|
|
|
494
494
|
modelValue: {},
|
|
495
495
|
tooltipMessage: {},
|
|
496
496
|
tooltipPlacement: {},
|
|
497
|
-
tooltipZIndex: {}
|
|
497
|
+
tooltipZIndex: {},
|
|
498
|
+
appendText: {}
|
|
498
499
|
},
|
|
499
500
|
setup(W) {
|
|
500
|
-
return (
|
|
501
|
-
const
|
|
502
|
-
return
|
|
503
|
-
|
|
504
|
-
a(
|
|
505
|
-
label:
|
|
506
|
-
disabled:
|
|
501
|
+
return (s, T) => {
|
|
502
|
+
const r = F("FmLabel"), b = F("FmIcon"), S = F("FmTooltip"), U = F("FmField");
|
|
503
|
+
return s.locked ? (u(), w("div", Ln, [
|
|
504
|
+
xe(s.$slots, "label", {}, () => [
|
|
505
|
+
a(r, {
|
|
506
|
+
label: s.label,
|
|
507
|
+
disabled: s.disabled
|
|
507
508
|
}, null, 8, ["label", "disabled"])
|
|
508
509
|
]),
|
|
509
|
-
|
|
510
|
-
a(U, { disabled:
|
|
511
|
-
prepend:
|
|
512
|
-
|
|
510
|
+
xe(s.$slots, "field", {}, () => [
|
|
511
|
+
a(U, { disabled: s.disabled }, Ye({
|
|
512
|
+
prepend: y(() => [
|
|
513
|
+
s.tooltipMessage ? (u(), O(S, {
|
|
513
514
|
key: 0,
|
|
514
|
-
placement:
|
|
515
|
-
"z-index":
|
|
515
|
+
placement: s.tooltipPlacement,
|
|
516
|
+
"z-index": s.tooltipZIndex
|
|
516
517
|
}, {
|
|
517
|
-
content:
|
|
518
|
-
Ge(A(
|
|
518
|
+
content: y(() => [
|
|
519
|
+
Ge(A(s.tooltipMessage), 1)
|
|
519
520
|
]),
|
|
520
|
-
default:
|
|
521
|
+
default: y(() => [
|
|
521
522
|
a(b, {
|
|
522
523
|
name: "lock",
|
|
523
524
|
color: "neutral-gray-400"
|
|
524
525
|
})
|
|
525
526
|
]),
|
|
526
527
|
_: 1
|
|
527
|
-
}, 8, ["placement", "z-index"])) : (
|
|
528
|
+
}, 8, ["placement", "z-index"])) : (u(), O(b, {
|
|
528
529
|
key: 1,
|
|
529
530
|
name: "lock",
|
|
530
531
|
color: "neutral-gray-400"
|
|
531
532
|
}))
|
|
532
533
|
]),
|
|
533
|
-
default:
|
|
534
|
-
|
|
534
|
+
default: y(() => [
|
|
535
|
+
xe(s.$slots, "modelValue", {}, () => [
|
|
535
536
|
l("div", {
|
|
536
537
|
class: te([
|
|
537
|
-
|
|
538
|
+
s.disabled ? "text-fm-color-typo-disabled" : "text-fm-color-typo-primary",
|
|
538
539
|
"line-clamp-1 text-ellipsis break-all"
|
|
539
540
|
])
|
|
540
|
-
}, A(
|
|
541
|
+
}, A(s.modelValue), 3)
|
|
541
542
|
])
|
|
542
543
|
]),
|
|
543
|
-
_:
|
|
544
|
-
},
|
|
544
|
+
_: 2
|
|
545
|
+
}, [
|
|
546
|
+
s.appendText || s.$slots.fieldAppend ? {
|
|
547
|
+
name: "append",
|
|
548
|
+
fn: y(() => [
|
|
549
|
+
xe(s.$slots, "fieldAppend", {}, () => [
|
|
550
|
+
l("div", jn, A(s.appendText), 1)
|
|
551
|
+
])
|
|
552
|
+
]),
|
|
553
|
+
key: "0"
|
|
554
|
+
} : void 0
|
|
555
|
+
]), 1032, ["disabled"])
|
|
545
556
|
]),
|
|
546
|
-
|
|
557
|
+
xe(s.$slots, "helper-text", {}, () => [
|
|
547
558
|
l("div", {
|
|
548
559
|
class: te([
|
|
549
560
|
"fm-typo-en-body-sm-400 line-clamp-1",
|
|
550
|
-
|
|
561
|
+
s.disabled ? "text-fm-color-typo-disabled" : "text-fm-color-typo-secondary"
|
|
551
562
|
])
|
|
552
|
-
}, A(
|
|
563
|
+
}, A(s.helperText), 3)
|
|
553
564
|
])
|
|
554
|
-
])) :
|
|
565
|
+
])) : xe(s.$slots, "default", { key: 1 });
|
|
555
566
|
};
|
|
556
567
|
}
|
|
557
|
-
}),
|
|
568
|
+
}), Wn = { class: "flex gap-8" }, Hn = { class: "flex-1" }, qn = { class: "flex-1" }, Yn = { class: "flex flex-col gap-5" }, Gn = { class: "text-fm-color-typo-secondary" }, Kn = { class: "text-fm-color-typo-secondary whitespace-nowrap" }, Jn = {
|
|
558
569
|
key: 3,
|
|
559
570
|
class: "border-1 border-fm-color-neutral-gray-200 fm-corner-radius-lg flex flex-col p-16 gap-16"
|
|
560
|
-
},
|
|
571
|
+
}, Zn = { class: "flex flex-col" }, Qn = { class: "fm-typo-en-body-sm-400 text-fm-color-typo-secondary" }, Xn = {
|
|
561
572
|
key: 4,
|
|
562
573
|
class: "border-1 border-fm-color-neutral-gray-200 fm-corner-radius-lg flex flex-col p-16 gap-16"
|
|
563
|
-
},
|
|
574
|
+
}, el = { class: "flex flex-col gap-12" }, tl = { class: "flex flex-col gap-4" }, nl = { class: "fm-typo-en-title-sm-600" }, ll = { class: "fm-typo-en-body-sm-400 text-fm-color-typo-secondary" }, ol = { class: "flex flex-col gap-4" }, al = { class: "flex fm-corner-radius-md border-1 border-fm-color-neutral-gray-200" }, sl = { class: "flex-1 p-12 flex flex-col gap-8" }, rl = { class: "mx-auto" }, il = { class: "flex flex-col" }, dl = { class: "fm-typo-en-body-sm-600 translate-y-4" }, ul = { class: "flex-1 p-12 flex flex-col gap-8" }, cl = { class: "mx-auto" }, ml = { class: "flex flex-col" }, pl = { class: "fm-typo-en-body-sm-600 translate-y-4" }, vl = { class: "flex-1 p-12 flex flex-col gap-8" }, fl = { class: "mx-auto" }, yl = { class: "flex flex-col" }, gl = { class: "fm-typo-en-body-sm-600 translate-y-4" }, bl = {
|
|
564
575
|
key: 5,
|
|
565
576
|
class: "flex flex-col gap-12"
|
|
566
|
-
},
|
|
577
|
+
}, hl = { class: "flex flex-col" }, _l = { class: "flex items-center justify-between" }, xl = { class: "fm-typo-en-title-sm-600" }, kl = { class: "fm-typo-en-body-sm-400 text-fm-color-typo-secondary" }, Tl = {
|
|
567
578
|
key: 0,
|
|
568
579
|
class: "flex flex-col gap-8"
|
|
569
|
-
},
|
|
580
|
+
}, wl = { class: "flex flex-wrap gap-8" }, Vl = {
|
|
570
581
|
key: 6,
|
|
571
582
|
class: "flex flex-col gap-12"
|
|
572
|
-
},
|
|
583
|
+
}, Il = { class: "flex flex-col" }, Sl = { class: "flex items-center justify-between" }, Cl = { class: "fm-typo-en-title-sm-600" }, Fl = { class: "fm-typo-en-body-sm-400 text-fm-color-typo-secondary" }, Al = {
|
|
573
584
|
key: 0,
|
|
574
585
|
class: "flex flex-col gap-8"
|
|
575
|
-
}, El = { class: "flex flex-wrap gap-8" },
|
|
586
|
+
}, El = { class: "flex flex-wrap gap-8" }, $l = {
|
|
576
587
|
key: 7,
|
|
577
588
|
class: "flex flex-col gap-12"
|
|
578
|
-
},
|
|
589
|
+
}, Ml = { class: "flex flex-col" }, Ul = { class: "flex items-center justify-between" }, Pl = { class: "fm-typo-en-title-sm-600" }, Rl = { class: "fm-typo-en-body-sm-400 text-fm-color-typo-secondary" }, Bl = {
|
|
579
590
|
key: 0,
|
|
580
591
|
class: "flex flex-col gap-8"
|
|
581
|
-
},
|
|
592
|
+
}, Dl = { class: "flex flex-wrap gap-8" }, Ol = /* @__PURE__ */ pe({
|
|
582
593
|
__name: "IngredientForm",
|
|
583
594
|
props: /* @__PURE__ */ it({
|
|
584
595
|
mode: {},
|
|
@@ -592,24 +603,24 @@ const zn = /* @__PURE__ */ pe({
|
|
|
592
603
|
searchModifiers: {}
|
|
593
604
|
}),
|
|
594
605
|
emits: /* @__PURE__ */ it(["update:modelValue", "click:submit", "update:purchaseOrderTemplateIds", "update:wastageTemplateIds", "update:closingTemplateIds"], ["update:search"]),
|
|
595
|
-
setup(W, { expose:
|
|
606
|
+
setup(W, { expose: s, emit: T }) {
|
|
596
607
|
var et;
|
|
597
|
-
const { t:
|
|
598
|
-
|
|
599
|
-
const S = St(), U = wt(), k = Ct(), n = W, c = T, _ =
|
|
608
|
+
const { t: r } = ve(), b = Re();
|
|
609
|
+
Ae();
|
|
610
|
+
const S = St(), U = wt(), k = Ct(), n = W, c = T, _ = Ce(), i = It(), d = Vt(), m = Fe(), v = g(() => m.isEnabled);
|
|
600
611
|
B(void 0);
|
|
601
612
|
const V = B([]), E = B([]), p = B([]), N = B(!1);
|
|
602
|
-
function
|
|
613
|
+
function D(e) {
|
|
603
614
|
if (e.length === 0) return;
|
|
604
615
|
const t = e[0], x = n.modelValue ?? {
|
|
605
616
|
unit: _.units.find((C) => C)
|
|
606
617
|
};
|
|
607
618
|
x.unit || (x.unit = t, c("update:modelValue", x));
|
|
608
619
|
}
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
}),
|
|
612
|
-
|
|
620
|
+
Dt(() => {
|
|
621
|
+
D(_.units), n.mode === H.CREATE && (d.mustUsePoTemplate && ne(), d.enableWastageTemplate && ce(), d.enableClosingTemplate && le());
|
|
622
|
+
}), kt([() => _.units], ([e]) => {
|
|
623
|
+
D(e);
|
|
613
624
|
});
|
|
614
625
|
function fe() {
|
|
615
626
|
c("click:submit");
|
|
@@ -651,7 +662,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
651
662
|
N.value = !1;
|
|
652
663
|
}
|
|
653
664
|
}
|
|
654
|
-
const oe =
|
|
665
|
+
const oe = g({
|
|
655
666
|
get() {
|
|
656
667
|
var e;
|
|
657
668
|
return ((e = n.modelValue) == null ? void 0 : e.code) ?? "";
|
|
@@ -662,7 +673,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
662
673
|
} : {};
|
|
663
674
|
t.code = e, c("update:modelValue", t);
|
|
664
675
|
}
|
|
665
|
-
}), ee =
|
|
676
|
+
}), ee = g({
|
|
666
677
|
get() {
|
|
667
678
|
var e;
|
|
668
679
|
return ((e = n.modelValue) == null ? void 0 : e.isInactive) ?? !1;
|
|
@@ -673,7 +684,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
673
684
|
} : {};
|
|
674
685
|
t.isInactive = e, c("update:modelValue", t);
|
|
675
686
|
}
|
|
676
|
-
}), ae =
|
|
687
|
+
}), ae = g({
|
|
677
688
|
get() {
|
|
678
689
|
var e;
|
|
679
690
|
return ((e = n.modelValue) == null ? void 0 : e.name) ?? "";
|
|
@@ -684,7 +695,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
684
695
|
} : {};
|
|
685
696
|
t.name = e, c("update:modelValue", t);
|
|
686
697
|
}
|
|
687
|
-
}), ye =
|
|
698
|
+
}), ye = g({
|
|
688
699
|
get() {
|
|
689
700
|
var t, x;
|
|
690
701
|
const e = (x = (t = n.modelValue) == null ? void 0 : t.defaultCost) == null ? void 0 : x.costPerUnit;
|
|
@@ -699,7 +710,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
699
710
|
costPerUnit: {
|
|
700
711
|
amount: 0,
|
|
701
712
|
precision: 2,
|
|
702
|
-
currency: ((x = mt(
|
|
713
|
+
currency: ((x = mt(i.currentCountry.value)) == null ? void 0 : x.currency) ?? "MYR"
|
|
703
714
|
},
|
|
704
715
|
measurement: (z = (Y = (C = n.modelValue) == null ? void 0 : C.unit) == null ? void 0 : Y.measurements) == null ? void 0 : z.find(
|
|
705
716
|
(re) => {
|
|
@@ -712,7 +723,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
712
723
|
...qt(+e, 4)
|
|
713
724
|
}, c("update:modelValue", t);
|
|
714
725
|
}
|
|
715
|
-
}), ge =
|
|
726
|
+
}), ge = g(() => {
|
|
716
727
|
var t, x, C;
|
|
717
728
|
const e = ((t = n.modelValue) == null ? void 0 : t.unit) ?? _.units.find((Y) => Y);
|
|
718
729
|
return e ? {
|
|
@@ -723,7 +734,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
723
734
|
return Y.id === ((z = n.modelValue) == null ? void 0 : z.trackingMeasurement);
|
|
724
735
|
})) == null ? void 0 : C.name) ?? e.name
|
|
725
736
|
} : null;
|
|
726
|
-
}),
|
|
737
|
+
}), ke = g(
|
|
727
738
|
() => _.units.flatMap(({ name: e, _id: t, abbrev: x, measurements: C }) => [
|
|
728
739
|
{
|
|
729
740
|
label: `${e}`,
|
|
@@ -741,12 +752,12 @@ const zn = /* @__PURE__ */ pe({
|
|
|
741
752
|
displayAsSection: !1
|
|
742
753
|
}))
|
|
743
754
|
])
|
|
744
|
-
), h =
|
|
745
|
-
() => new Yt(
|
|
755
|
+
), h = Ot(W, "search"), P = g(
|
|
756
|
+
() => new Yt(ke.value, ["label", "value"], {
|
|
746
757
|
caseSensitive: !1,
|
|
747
758
|
sort: !0
|
|
748
759
|
})
|
|
749
|
-
), G =
|
|
760
|
+
), G = g(() => P.value.search(h.value));
|
|
750
761
|
function $(e) {
|
|
751
762
|
var t, x, C, Y, z;
|
|
752
763
|
return ((x = (t = n.modelValue) == null ? void 0 : t.unit) == null ? void 0 : x._id) === ((C = e.value) == null ? void 0 : C._id) && ((Y = n.modelValue) == null ? void 0 : Y.trackingMeasurement) === ((z = e.value) == null ? void 0 : z.measurement);
|
|
@@ -754,22 +765,22 @@ const zn = /* @__PURE__ */ pe({
|
|
|
754
765
|
function f(e) {
|
|
755
766
|
var re, ie;
|
|
756
767
|
if (!e) return;
|
|
757
|
-
const { _id: t, measurement: x } = e, C = x || void 0, Y = _.units.find((
|
|
768
|
+
const { _id: t, measurement: x } = e, C = x || void 0, Y = _.units.find((Ie) => Ie._id === t);
|
|
758
769
|
if (!Y)
|
|
759
770
|
return;
|
|
760
771
|
const z = n.modelValue ?? {};
|
|
761
|
-
z.unit = Y, z.trackingMeasurement = C, z.convert && (z.convert.measurement = C || null),
|
|
762
|
-
measurement: Y.measurements.find((
|
|
772
|
+
z.unit = Y, z.trackingMeasurement = C, z.convert && (z.convert.measurement = C || null), d.enableTotalCost && (z.defaultCost = {
|
|
773
|
+
measurement: Y.measurements.find((Ie) => Ie.id === C),
|
|
763
774
|
costPerUnit: {
|
|
764
775
|
...((re = z.defaultCost) == null ? void 0 : re.costPerUnit) ?? {
|
|
765
776
|
amount: 0,
|
|
766
777
|
precision: 2,
|
|
767
|
-
currency: ((ie = mt(
|
|
778
|
+
currency: ((ie = mt(i.currentCountry.value)) == null ? void 0 : ie.currency) ?? "MYR"
|
|
768
779
|
}
|
|
769
780
|
}
|
|
770
781
|
}), c("update:modelValue", z);
|
|
771
782
|
}
|
|
772
|
-
const j =
|
|
783
|
+
const j = g({
|
|
773
784
|
get() {
|
|
774
785
|
var e;
|
|
775
786
|
return ((e = n.modelValue) == null ? void 0 : e.convert) ?? null;
|
|
@@ -780,12 +791,15 @@ const zn = /* @__PURE__ */ pe({
|
|
|
780
791
|
} : {};
|
|
781
792
|
e ? t.convert = e : t.convert = null, c("update:modelValue", t);
|
|
782
793
|
}
|
|
783
|
-
}), K =
|
|
784
|
-
(e) =>
|
|
794
|
+
}), K = g(() => pt.options.filter(
|
|
795
|
+
(e) => (
|
|
796
|
+
// e === F_INVENTORY_VALUATION_METHODS.enum.FIFO ||
|
|
797
|
+
e === pt.enum.WAVG
|
|
798
|
+
)
|
|
785
799
|
).map((e) => ({
|
|
786
|
-
label:
|
|
800
|
+
label: r(`inventory.ingredient.valuationMethod.${e}`),
|
|
787
801
|
value: e
|
|
788
|
-
}))), me =
|
|
802
|
+
}))), me = g({
|
|
789
803
|
get() {
|
|
790
804
|
var e;
|
|
791
805
|
return ((e = n.modelValue) == null ? void 0 : e.valuation) ?? "WAVG";
|
|
@@ -796,7 +810,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
796
810
|
} : {};
|
|
797
811
|
t.valuation = e, c("update:modelValue", t);
|
|
798
812
|
}
|
|
799
|
-
}), J =
|
|
813
|
+
}), J = g({
|
|
800
814
|
get() {
|
|
801
815
|
var e;
|
|
802
816
|
return ((e = n.modelValue) == null ? void 0 : e.customAttributes) ?? {};
|
|
@@ -808,7 +822,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
808
822
|
t.customAttributes = e, c("update:modelValue", t);
|
|
809
823
|
}
|
|
810
824
|
}), M = B();
|
|
811
|
-
|
|
825
|
+
s({
|
|
812
826
|
validateInputs: () => {
|
|
813
827
|
var e, t;
|
|
814
828
|
(t = (e = M.value) == null ? void 0 : e.validateInputs) == null || t.call(e);
|
|
@@ -822,34 +836,34 @@ const zn = /* @__PURE__ */ pe({
|
|
|
822
836
|
(t = (e = M.value) == null ? void 0 : e.resetInputs) == null || t.call(e);
|
|
823
837
|
}
|
|
824
838
|
});
|
|
825
|
-
const R = B(!1), q =
|
|
839
|
+
const R = B(!1), q = g(
|
|
826
840
|
() => {
|
|
827
841
|
var e, t, x;
|
|
828
842
|
return (e = n.modelValue) != null && e._id ? ((x = _.menu.bindedBySkuId[(t = n.modelValue) == null ? void 0 : t._id]) == null ? void 0 : x.filter(
|
|
829
843
|
(C) => C.from === "INGREDIENT"
|
|
830
844
|
)) ?? [] : [];
|
|
831
845
|
}
|
|
832
|
-
), de =
|
|
846
|
+
), de = g(
|
|
833
847
|
() => {
|
|
834
848
|
var e, t, x;
|
|
835
849
|
return (e = n.modelValue) != null && e._id ? ((x = _.menu.bindedBySkuId[(t = n.modelValue) == null ? void 0 : t._id]) == null ? void 0 : x.filter(
|
|
836
850
|
(C) => C.from === "RECIPE"
|
|
837
851
|
)) ?? [] : [];
|
|
838
852
|
}
|
|
839
|
-
),
|
|
853
|
+
), Te = g(
|
|
840
854
|
() => {
|
|
841
855
|
var e, t, x;
|
|
842
856
|
return (e = n.modelValue) != null && e._id ? ((x = _.menu.bindedBySkuId[(t = n.modelValue) == null ? void 0 : t._id]) == null ? void 0 : x.filter((C) => C.from === "MENU")) ?? [] : [];
|
|
843
857
|
}
|
|
844
|
-
), _e =
|
|
858
|
+
), _e = g(
|
|
845
859
|
() => _.skus.map((e) => ({ label: e.name, value: e.code }))
|
|
846
860
|
), Ee = B((et = n.modelValue) == null ? void 0 : et.code);
|
|
847
|
-
function
|
|
861
|
+
function $e(e) {
|
|
848
862
|
var x;
|
|
849
863
|
const t = e.el;
|
|
850
864
|
t && ((x = t.querySelector("[x-should-scroll-into=true]")) == null || x.scrollIntoView());
|
|
851
865
|
}
|
|
852
|
-
const
|
|
866
|
+
const we = g(
|
|
853
867
|
() => {
|
|
854
868
|
var e, t, x, C, Y, z;
|
|
855
869
|
return ((C = (x = (t = (e = n.modelValue) == null ? void 0 : e.unit) == null ? void 0 : t.measurements) == null ? void 0 : x.find(
|
|
@@ -859,7 +873,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
859
873
|
}
|
|
860
874
|
)) == null ? void 0 : C.abbrev) ?? ((z = (Y = n.modelValue) == null ? void 0 : Y.unit) == null ? void 0 : z.abbrev);
|
|
861
875
|
}
|
|
862
|
-
), be =
|
|
876
|
+
), be = g({
|
|
863
877
|
get() {
|
|
864
878
|
var e, t;
|
|
865
879
|
return ((t = (e = n.modelValue) == null ? void 0 : e.thresholds) == null ? void 0 : t.low) ?? Ue().low;
|
|
@@ -873,7 +887,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
873
887
|
} : {};
|
|
874
888
|
x.thresholds = t, c("update:modelValue", x);
|
|
875
889
|
}
|
|
876
|
-
}), se =
|
|
890
|
+
}), se = g({
|
|
877
891
|
get() {
|
|
878
892
|
var e, t;
|
|
879
893
|
return ((t = (e = n.modelValue) == null ? void 0 : e.thresholds) == null ? void 0 : t.mid) ?? Ue().mid;
|
|
@@ -887,37 +901,37 @@ const zn = /* @__PURE__ */ pe({
|
|
|
887
901
|
} : {};
|
|
888
902
|
x.thresholds = t, c("update:modelValue", x);
|
|
889
903
|
}
|
|
890
|
-
}),
|
|
904
|
+
}), Ve = g(() => d.mustUsePoTemplate && n.mode === H.CREATE && V.value.length > 0 ? V.value.map((e) => ({
|
|
891
905
|
label: e.name || "Template",
|
|
892
906
|
value: e._id || "template_" + e.name
|
|
893
|
-
})) : []), Ke =
|
|
907
|
+
})) : []), Ke = g(() => Ve.value.filter(
|
|
894
908
|
(e) => (n.purchaseOrderTemplateIds ?? []).includes(e.value)
|
|
895
|
-
)), Je =
|
|
909
|
+
)), Je = g(() => d.enableWastageTemplate && n.mode === H.CREATE && E.value.length > 0 ? E.value.map((e) => ({
|
|
896
910
|
label: e.name || "Template",
|
|
897
911
|
value: e._id || "template_" + e.name
|
|
898
|
-
})) : []), Ze =
|
|
912
|
+
})) : []), Ze = g(() => Je.value.filter(
|
|
899
913
|
(e) => (n.wastageTemplateIds ?? []).includes(e.value)
|
|
900
|
-
)), Qe =
|
|
914
|
+
)), Qe = g(() => d.enableClosingTemplate && n.mode === H.CREATE && p.value.length > 0 ? p.value.map((e) => ({
|
|
901
915
|
label: e.name || "Template",
|
|
902
916
|
value: e._id || "template_" + e.name
|
|
903
|
-
})) : []), Xe =
|
|
917
|
+
})) : []), Xe = g(() => Qe.value.filter(
|
|
904
918
|
(e) => (n.closingTemplateIds ?? []).includes(e.value)
|
|
905
919
|
));
|
|
906
920
|
function Ft() {
|
|
907
921
|
b.open({
|
|
908
|
-
title:
|
|
922
|
+
title: r("inventory.ingredient.purchaseOrderTemplates.selectTitle"),
|
|
909
923
|
closeButton: !0,
|
|
910
|
-
contentComponent:
|
|
924
|
+
contentComponent: Ne,
|
|
911
925
|
contentComponentProps: {
|
|
912
926
|
modelValue: n.purchaseOrderTemplateIds ?? [],
|
|
913
|
-
items:
|
|
927
|
+
items: Ve.value
|
|
914
928
|
},
|
|
915
929
|
primaryActions: {
|
|
916
|
-
text:
|
|
930
|
+
text: r("common.confirm"),
|
|
917
931
|
close: !0
|
|
918
932
|
},
|
|
919
933
|
secondaryActions: {
|
|
920
|
-
text:
|
|
934
|
+
text: r("common.cancel"),
|
|
921
935
|
close: !0,
|
|
922
936
|
variant: "tertiary"
|
|
923
937
|
}
|
|
@@ -925,21 +939,21 @@ const zn = /* @__PURE__ */ pe({
|
|
|
925
939
|
c("update:purchaseOrderTemplateIds", e);
|
|
926
940
|
});
|
|
927
941
|
}
|
|
928
|
-
function
|
|
942
|
+
function At() {
|
|
929
943
|
b.open({
|
|
930
|
-
title:
|
|
944
|
+
title: r("inventory.ingredient.wastageTemplates.selectTitle"),
|
|
931
945
|
closeButton: !0,
|
|
932
|
-
contentComponent:
|
|
946
|
+
contentComponent: Ne,
|
|
933
947
|
contentComponentProps: {
|
|
934
948
|
modelValue: n.wastageTemplateIds ?? [],
|
|
935
949
|
items: Je.value
|
|
936
950
|
},
|
|
937
951
|
primaryActions: {
|
|
938
|
-
text:
|
|
952
|
+
text: r("common.confirm"),
|
|
939
953
|
close: !0
|
|
940
954
|
},
|
|
941
955
|
secondaryActions: {
|
|
942
|
-
text:
|
|
956
|
+
text: r("common.cancel"),
|
|
943
957
|
close: !0,
|
|
944
958
|
variant: "tertiary"
|
|
945
959
|
}
|
|
@@ -947,21 +961,21 @@ const zn = /* @__PURE__ */ pe({
|
|
|
947
961
|
c("update:wastageTemplateIds", e);
|
|
948
962
|
});
|
|
949
963
|
}
|
|
950
|
-
function
|
|
964
|
+
function Et() {
|
|
951
965
|
b.open({
|
|
952
|
-
title:
|
|
966
|
+
title: r("inventory.ingredient.closingTemplates.selectTitle"),
|
|
953
967
|
closeButton: !0,
|
|
954
|
-
contentComponent:
|
|
968
|
+
contentComponent: Ne,
|
|
955
969
|
contentComponentProps: {
|
|
956
970
|
modelValue: n.closingTemplateIds ?? [],
|
|
957
971
|
items: Qe.value
|
|
958
972
|
},
|
|
959
973
|
primaryActions: {
|
|
960
|
-
text:
|
|
974
|
+
text: r("common.confirm"),
|
|
961
975
|
close: !0
|
|
962
976
|
},
|
|
963
977
|
secondaryActions: {
|
|
964
|
-
text:
|
|
978
|
+
text: r("common.cancel"),
|
|
965
979
|
close: !0,
|
|
966
980
|
variant: "tertiary"
|
|
967
981
|
}
|
|
@@ -975,56 +989,56 @@ const zn = /* @__PURE__ */ pe({
|
|
|
975
989
|
};
|
|
976
990
|
}
|
|
977
991
|
return (e, t) => {
|
|
978
|
-
const x = F("FmTextField"), C = F("FmLabel"), Y = F("FmField"), z = F("FmIcon"), re = F("FmMenuHeader"), ie = F("FmMenuDivider"),
|
|
979
|
-
return
|
|
992
|
+
const x = F("FmTextField"), C = F("FmLabel"), Y = F("FmField"), z = F("FmIcon"), re = F("FmMenuHeader"), ie = F("FmMenuDivider"), Ie = F("FmMenuItem"), Mt = F("FmMenu"), tt = F("FmFormGroup"), Ut = F("FmSelect"), nt = F("FmSwitch"), lt = F("FmStepperField"), Be = F("FmButton"), De = F("FmChip"), Pt = F("FmForm");
|
|
993
|
+
return u(), O(Pt, {
|
|
980
994
|
disabled: e.disabled,
|
|
981
995
|
ref_key: "formRef",
|
|
982
996
|
ref: M,
|
|
983
997
|
class: "flex flex-col gap-32",
|
|
984
998
|
onValidationSuccess: fe
|
|
985
999
|
}, {
|
|
986
|
-
default:
|
|
1000
|
+
default: y(() => {
|
|
987
1001
|
var ot, at, st, rt;
|
|
988
1002
|
return [
|
|
989
|
-
l("div",
|
|
990
|
-
l("div",
|
|
991
|
-
a(
|
|
1003
|
+
l("div", Wn, [
|
|
1004
|
+
l("div", Hn, [
|
|
1005
|
+
a(Se, {
|
|
992
1006
|
"tooltip-message": "This field is managed by NetSuite",
|
|
993
1007
|
"tooltip-z-index": 50,
|
|
994
|
-
label: o(
|
|
1008
|
+
label: o(r)("inventory.ingredient.code"),
|
|
995
1009
|
"model-value": oe.value,
|
|
996
1010
|
"onUpdate:modelValue": t[1] || (t[1] = (I) => oe.value = I),
|
|
997
1011
|
locked: v.value,
|
|
998
1012
|
disabled: e.disabled
|
|
999
1013
|
}, {
|
|
1000
|
-
default:
|
|
1014
|
+
default: y(() => [
|
|
1001
1015
|
a(x, {
|
|
1002
|
-
label: o(
|
|
1016
|
+
label: o(r)("inventory.ingredient.code"),
|
|
1003
1017
|
"model-value": oe.value,
|
|
1004
1018
|
"onUpdate:modelValue": t[0] || (t[0] = (I) => oe.value = I),
|
|
1005
|
-
rules: [o(
|
|
1019
|
+
rules: [o(Oe)(), o(Gt)(_e.value, Ee.value)],
|
|
1006
1020
|
"label-mark": "required"
|
|
1007
1021
|
}, null, 8, ["label", "model-value", "rules"])
|
|
1008
1022
|
]),
|
|
1009
1023
|
_: 1
|
|
1010
1024
|
}, 8, ["label", "model-value", "locked", "disabled"])
|
|
1011
1025
|
]),
|
|
1012
|
-
l("div",
|
|
1013
|
-
a(
|
|
1026
|
+
l("div", qn, [
|
|
1027
|
+
a(Se, {
|
|
1014
1028
|
"tooltip-message": "This field is managed by NetSuite",
|
|
1015
1029
|
"tooltip-z-index": 50,
|
|
1016
|
-
label: o(
|
|
1030
|
+
label: o(r)("inventory.ingredient.name"),
|
|
1017
1031
|
"model-value": ae.value,
|
|
1018
1032
|
"onUpdate:modelValue": t[3] || (t[3] = (I) => ae.value = I),
|
|
1019
1033
|
locked: v.value,
|
|
1020
1034
|
disabled: e.disabled
|
|
1021
1035
|
}, {
|
|
1022
|
-
default:
|
|
1036
|
+
default: y(() => [
|
|
1023
1037
|
a(x, {
|
|
1024
|
-
label: o(
|
|
1038
|
+
label: o(r)("inventory.ingredient.name"),
|
|
1025
1039
|
"model-value": ae.value,
|
|
1026
1040
|
"onUpdate:modelValue": t[2] || (t[2] = (I) => ae.value = I),
|
|
1027
|
-
rules: [o(
|
|
1041
|
+
rules: [o(Oe)()],
|
|
1028
1042
|
"label-mark": "required"
|
|
1029
1043
|
}, null, 8, ["label", "model-value", "rules"])
|
|
1030
1044
|
]),
|
|
@@ -1032,29 +1046,29 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1032
1046
|
}, 8, ["label", "model-value", "locked", "disabled"])
|
|
1033
1047
|
])
|
|
1034
1048
|
]),
|
|
1035
|
-
a(
|
|
1049
|
+
a(Se, {
|
|
1036
1050
|
"tooltip-message": "This field is managed by NetSuite",
|
|
1037
1051
|
"tooltip-z-index": 50,
|
|
1038
|
-
label: o(
|
|
1052
|
+
label: o(r)("inventory.ingredient.unit"),
|
|
1039
1053
|
"helper-text": (ot = e.modelValue) != null && ot.trackingMeasurement ? `Base unit: ${(st = (at = e.modelValue) == null ? void 0 : at.unit) == null ? void 0 : st.name}` : void 0,
|
|
1040
1054
|
"model-value": (rt = ge.value) == null ? void 0 : rt.name,
|
|
1041
1055
|
locked: v.value,
|
|
1042
1056
|
disabled: e.disabled
|
|
1043
1057
|
}, {
|
|
1044
|
-
default:
|
|
1058
|
+
default: y(() => [
|
|
1045
1059
|
a(tt, {
|
|
1046
1060
|
"model-value": ge.value,
|
|
1047
|
-
rules: [o(
|
|
1061
|
+
rules: [o(Oe)()],
|
|
1048
1062
|
"label-mark": "required"
|
|
1049
1063
|
}, {
|
|
1050
|
-
label:
|
|
1064
|
+
label: y(() => [
|
|
1051
1065
|
a(C, {
|
|
1052
|
-
label: o(
|
|
1066
|
+
label: o(r)("inventory.ingredient.unit")
|
|
1053
1067
|
}, null, 8, ["label"])
|
|
1054
1068
|
]),
|
|
1055
|
-
default:
|
|
1069
|
+
default: y(({ invalid: I }) => [
|
|
1056
1070
|
a(Mt, null, {
|
|
1057
|
-
"menu-button":
|
|
1071
|
+
"menu-button": y(() => [
|
|
1058
1072
|
a(Y, {
|
|
1059
1073
|
class: te([
|
|
1060
1074
|
"fm-typo-en-body-lg-400",
|
|
@@ -1066,7 +1080,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1066
1080
|
invalid: I,
|
|
1067
1081
|
"append-icon": "expand_more"
|
|
1068
1082
|
}, {
|
|
1069
|
-
default:
|
|
1083
|
+
default: y(() => {
|
|
1070
1084
|
var Z;
|
|
1071
1085
|
return [
|
|
1072
1086
|
Ge(A((Z = ge.value) == null ? void 0 : Z.name), 1)
|
|
@@ -1075,33 +1089,33 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1075
1089
|
_: 2
|
|
1076
1090
|
}, 1032, ["class", "invalid"])
|
|
1077
1091
|
]),
|
|
1078
|
-
default:
|
|
1079
|
-
l("div",
|
|
1092
|
+
default: y(() => [
|
|
1093
|
+
l("div", Yn, [
|
|
1080
1094
|
a(x, {
|
|
1081
1095
|
modelValue: h.value,
|
|
1082
1096
|
"onUpdate:modelValue": t[4] || (t[4] = (Z) => h.value = Z),
|
|
1083
1097
|
placeholder: "Filter options"
|
|
1084
1098
|
}, {
|
|
1085
|
-
prepend:
|
|
1099
|
+
prepend: y(() => [
|
|
1086
1100
|
a(z, { name: "search" })
|
|
1087
1101
|
]),
|
|
1088
1102
|
_: 1
|
|
1089
1103
|
}, 8, ["modelValue"]),
|
|
1090
1104
|
l("div", {
|
|
1091
1105
|
class: "overflow-x-hidden overflow-y-auto max-h-[300px]",
|
|
1092
|
-
onVnodeMounted:
|
|
1106
|
+
onVnodeMounted: $e
|
|
1093
1107
|
}, [
|
|
1094
|
-
(
|
|
1095
|
-
Z.displayAsSection ? (
|
|
1108
|
+
(u(!0), w(X, null, ue(G.value, (Z, Rt) => (u(), w(X, { key: Rt }, [
|
|
1109
|
+
Z.displayAsSection ? (u(), w(X, { key: 0 }, [
|
|
1096
1110
|
a(re, {
|
|
1097
1111
|
label: Z.label
|
|
1098
1112
|
}, null, 8, ["label"]),
|
|
1099
1113
|
a(ie)
|
|
1100
|
-
], 64)) : (
|
|
1114
|
+
], 64)) : (u(), O(Ie, {
|
|
1101
1115
|
key: 1,
|
|
1102
1116
|
label: Z.label,
|
|
1103
1117
|
"model-value": $(Z),
|
|
1104
|
-
onClick: (
|
|
1118
|
+
onClick: (co) => f(Z.value),
|
|
1105
1119
|
"x-should-scroll-into": `${$(Z)}`
|
|
1106
1120
|
}, null, 8, ["label", "model-value", "onClick", "x-should-scroll-into"]))
|
|
1107
1121
|
], 64))), 128))
|
|
@@ -1116,29 +1130,29 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1116
1130
|
]),
|
|
1117
1131
|
_: 1
|
|
1118
1132
|
}, 8, ["label", "helper-text", "model-value", "locked", "disabled"]),
|
|
1119
|
-
o(
|
|
1133
|
+
o(d).enableTotalCost ? (u(), O(Se, {
|
|
1120
1134
|
key: 0,
|
|
1121
1135
|
"tooltip-message": "This field is managed by NetSuite",
|
|
1122
1136
|
"tooltip-z-index": 50,
|
|
1123
|
-
label: o(
|
|
1124
|
-
"model-value": o(
|
|
1137
|
+
label: o(r)("inventory.ingredient.valuationMethod.title"),
|
|
1138
|
+
"model-value": o(r)("inventory.ingredient.valuationMethod." + me.value),
|
|
1125
1139
|
locked: v.value,
|
|
1126
1140
|
disabled: e.disabled
|
|
1127
1141
|
}, {
|
|
1128
|
-
label:
|
|
1142
|
+
label: y(() => [
|
|
1129
1143
|
a(he, { "z-index": 50 }, {
|
|
1130
|
-
default:
|
|
1144
|
+
default: y(() => [
|
|
1131
1145
|
a(C, {
|
|
1132
|
-
label: o(
|
|
1146
|
+
label: o(r)("inventory.ingredient.valuationMethod.title")
|
|
1133
1147
|
}, null, 8, ["label"])
|
|
1134
1148
|
]),
|
|
1135
1149
|
_: 1
|
|
1136
1150
|
})
|
|
1137
1151
|
]),
|
|
1138
|
-
default:
|
|
1152
|
+
default: y(() => [
|
|
1139
1153
|
a(Ut, {
|
|
1140
1154
|
class: "col-span-2",
|
|
1141
|
-
label: o(
|
|
1155
|
+
label: o(r)("inventory.ingredient.valuationMethod.title"),
|
|
1142
1156
|
"model-value": me.value,
|
|
1143
1157
|
"onUpdate:modelValue": t[5] || (t[5] = (I) => me.value = I),
|
|
1144
1158
|
items: K.value
|
|
@@ -1146,129 +1160,130 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1146
1160
|
]),
|
|
1147
1161
|
_: 1
|
|
1148
1162
|
}, 8, ["label", "model-value", "locked", "disabled"])) : L("", !0),
|
|
1149
|
-
o(
|
|
1163
|
+
o(d).enableTotalCost ? (u(), O(Se, {
|
|
1150
1164
|
key: 1,
|
|
1151
1165
|
"tooltip-message": "This field is managed by NetSuite",
|
|
1152
1166
|
"tooltip-z-index": 50,
|
|
1153
1167
|
"model-value": `${o(Kt)()} ${ye.value}`,
|
|
1154
1168
|
locked: v.value,
|
|
1169
|
+
"append-text": `/ ${we.value}`,
|
|
1155
1170
|
disabled: e.disabled
|
|
1156
1171
|
}, {
|
|
1157
|
-
label:
|
|
1172
|
+
label: y(() => [
|
|
1158
1173
|
a(he, { "z-index": 50 }, {
|
|
1159
|
-
default:
|
|
1174
|
+
default: y(() => [
|
|
1160
1175
|
a(C, {
|
|
1161
|
-
label: o(
|
|
1176
|
+
label: o(r)("inventory.ingredient.pricePerUnit")
|
|
1162
1177
|
}, null, 8, ["label"])
|
|
1163
1178
|
]),
|
|
1164
1179
|
_: 1
|
|
1165
1180
|
})
|
|
1166
1181
|
]),
|
|
1167
|
-
default:
|
|
1182
|
+
default: y(() => [
|
|
1168
1183
|
a(x, {
|
|
1169
1184
|
"model-value": ye.value,
|
|
1170
1185
|
"onUpdate:modelValue": t[6] || (t[6] = (I) => ye.value = I),
|
|
1171
1186
|
rules: [o(Pe)(0), o(Jt)(4)]
|
|
1172
1187
|
}, {
|
|
1173
|
-
label:
|
|
1188
|
+
label: y(() => [
|
|
1174
1189
|
a(he, { "z-index": 50 }, {
|
|
1175
|
-
default:
|
|
1190
|
+
default: y(() => [
|
|
1176
1191
|
a(C, {
|
|
1177
|
-
label: o(
|
|
1192
|
+
label: o(r)("inventory.ingredient.pricePerUnit")
|
|
1178
1193
|
}, null, 8, ["label"])
|
|
1179
1194
|
]),
|
|
1180
1195
|
_: 1
|
|
1181
1196
|
})
|
|
1182
1197
|
]),
|
|
1183
|
-
prepend:
|
|
1198
|
+
prepend: y(() => {
|
|
1184
1199
|
var I, Z;
|
|
1185
1200
|
return [
|
|
1186
|
-
l("div",
|
|
1201
|
+
l("div", Gn, A(o(vt)(((I = o(i).currentCountry) == null ? void 0 : I.value) ?? o(ft)) === "MYR" ? "RM" : o(vt)(((Z = o(i).currentCountry) == null ? void 0 : Z.value) ?? o(ft))), 1)
|
|
1187
1202
|
];
|
|
1188
1203
|
}),
|
|
1189
|
-
append:
|
|
1190
|
-
l("div",
|
|
1204
|
+
append: y(() => [
|
|
1205
|
+
l("div", Kn, " / " + A(we.value), 1)
|
|
1191
1206
|
]),
|
|
1192
1207
|
_: 1
|
|
1193
1208
|
}, 8, ["model-value", "rules"])
|
|
1194
1209
|
]),
|
|
1195
1210
|
_: 1
|
|
1196
|
-
}, 8, ["model-value", "locked", "disabled"])) : L("", !0),
|
|
1197
|
-
!v.value || j.value ? (
|
|
1211
|
+
}, 8, ["model-value", "locked", "append-text", "disabled"])) : L("", !0),
|
|
1212
|
+
!v.value || j.value ? (u(), O(zn, {
|
|
1198
1213
|
key: 2,
|
|
1199
1214
|
"model-value": j.value,
|
|
1200
1215
|
"onUpdate:modelValue": t[7] || (t[7] = (I) => j.value = I),
|
|
1201
1216
|
"root-value": e.modelValue,
|
|
1202
1217
|
readonly: v.value
|
|
1203
1218
|
}, null, 8, ["model-value", "root-value", "readonly"])) : L("", !0),
|
|
1204
|
-
e.mode !== o(H).CREATE ? (
|
|
1219
|
+
e.mode !== o(H).CREATE ? (u(), w("div", Jn, [
|
|
1205
1220
|
a(nt, {
|
|
1206
|
-
label: o(
|
|
1221
|
+
label: o(r)("inventory.ingredient.status.inactive"),
|
|
1207
1222
|
"model-value": ee.value,
|
|
1208
1223
|
"onUpdate:modelValue": t[8] || (t[8] = (I) => ee.value = I),
|
|
1209
1224
|
"label-placement": "right",
|
|
1210
1225
|
disabled: v.value
|
|
1211
1226
|
}, null, 8, ["label", "model-value", "disabled"]),
|
|
1212
|
-
l("div",
|
|
1213
|
-
l("div",
|
|
1227
|
+
l("div", Zn, [
|
|
1228
|
+
l("div", Qn, A(o(r)("inventory.ingredient.status.preventFromOrder")), 1)
|
|
1214
1229
|
])
|
|
1215
1230
|
])) : L("", !0),
|
|
1216
|
-
e.mode !== o(H).CREATE ? (
|
|
1231
|
+
e.mode !== o(H).CREATE ? (u(), w("div", Xn, [
|
|
1217
1232
|
l("div", null, [
|
|
1218
1233
|
a(nt, {
|
|
1219
|
-
label: o(
|
|
1234
|
+
label: o(r)("inventory.ingredient.bindedItems.title"),
|
|
1220
1235
|
modelValue: R.value,
|
|
1221
1236
|
"onUpdate:modelValue": t[9] || (t[9] = (I) => R.value = I),
|
|
1222
1237
|
"label-placement": "right"
|
|
1223
1238
|
}, null, 8, ["label", "modelValue"])
|
|
1224
1239
|
]),
|
|
1225
|
-
R.value && q.value.length ? (
|
|
1240
|
+
R.value && q.value.length ? (u(), O(We, {
|
|
1226
1241
|
key: 0,
|
|
1227
|
-
name: o(
|
|
1242
|
+
name: o(r)("inventory.ingredient.bindedItems.ingredient"),
|
|
1228
1243
|
bindings: q.value
|
|
1229
1244
|
}, null, 8, ["name", "bindings"])) : L("", !0),
|
|
1230
|
-
R.value && de.value.length ? (
|
|
1245
|
+
R.value && de.value.length ? (u(), O(We, {
|
|
1231
1246
|
key: 1,
|
|
1232
|
-
name: o(
|
|
1247
|
+
name: o(r)("inventory.ingredient.bindedItems.recipe"),
|
|
1233
1248
|
bindings: de.value
|
|
1234
1249
|
}, null, 8, ["name", "bindings"])) : L("", !0),
|
|
1235
|
-
R.value &&
|
|
1250
|
+
R.value && Te.value.length ? (u(), O(We, {
|
|
1236
1251
|
key: 2,
|
|
1237
|
-
name: o(
|
|
1238
|
-
bindings:
|
|
1252
|
+
name: o(r)("inventory.ingredient.bindedItems.menu"),
|
|
1253
|
+
bindings: Te.value
|
|
1239
1254
|
}, null, 8, ["name", "bindings"])) : L("", !0)
|
|
1240
1255
|
])) : L("", !0),
|
|
1241
|
-
l("div",
|
|
1242
|
-
l("div",
|
|
1256
|
+
l("div", el, [
|
|
1257
|
+
l("div", tl, [
|
|
1243
1258
|
a(he, null, {
|
|
1244
|
-
default:
|
|
1245
|
-
l("div",
|
|
1259
|
+
default: y(() => [
|
|
1260
|
+
l("div", nl, A(o(r)("inventory.ingredient.threshold.title")), 1)
|
|
1246
1261
|
]),
|
|
1247
1262
|
_: 1
|
|
1248
1263
|
}),
|
|
1249
|
-
l("div",
|
|
1264
|
+
l("div", ll, A(o(r)("inventory.ingredient.threshold.subtitle")), 1)
|
|
1250
1265
|
]),
|
|
1251
|
-
l("div",
|
|
1266
|
+
l("div", ol, [
|
|
1252
1267
|
a(tt, {
|
|
1253
1268
|
"model-value": { low: be.value, mid: se.value },
|
|
1254
1269
|
rules: [$t()]
|
|
1255
1270
|
}, null, 8, ["model-value", "rules"]),
|
|
1256
|
-
l("div",
|
|
1257
|
-
l("div",
|
|
1258
|
-
l("div",
|
|
1259
|
-
a(
|
|
1271
|
+
l("div", al, [
|
|
1272
|
+
l("div", sl, [
|
|
1273
|
+
l("div", rl, [
|
|
1274
|
+
a(Le, {
|
|
1260
1275
|
days: be.value,
|
|
1261
|
-
level: o(
|
|
1276
|
+
level: o(je).low
|
|
1262
1277
|
}, null, 8, ["days", "level"])
|
|
1263
1278
|
]),
|
|
1264
|
-
l("div",
|
|
1265
|
-
l("div",
|
|
1279
|
+
l("div", il, [
|
|
1280
|
+
l("div", dl, A(o(r)("inventory.ingredient.threshold.whenRemaining")), 1),
|
|
1266
1281
|
a(lt, {
|
|
1267
1282
|
modelValue: be.value,
|
|
1268
1283
|
"onUpdate:modelValue": t[10] || (t[10] = (I) => be.value = I),
|
|
1269
1284
|
rules: [o(Pe)(0)]
|
|
1270
1285
|
}, {
|
|
1271
|
-
append:
|
|
1286
|
+
append: y(() => t[13] || (t[13] = [
|
|
1272
1287
|
l("div", {
|
|
1273
1288
|
class: "text-fm-color-typo-secondary",
|
|
1274
1289
|
style: { "padding-right": "32px" }
|
|
@@ -1287,21 +1302,21 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1287
1302
|
style: { transform: "translate(-50%, -50%)", left: "50%", top: "24px" }
|
|
1288
1303
|
}, " < ")
|
|
1289
1304
|
], -1)),
|
|
1290
|
-
l("div",
|
|
1291
|
-
l("div",
|
|
1292
|
-
a(
|
|
1305
|
+
l("div", ul, [
|
|
1306
|
+
l("div", cl, [
|
|
1307
|
+
a(Le, {
|
|
1293
1308
|
days: se.value,
|
|
1294
|
-
level: o(
|
|
1309
|
+
level: o(je).mid
|
|
1295
1310
|
}, null, 8, ["days", "level"])
|
|
1296
1311
|
]),
|
|
1297
|
-
l("div",
|
|
1298
|
-
l("div",
|
|
1312
|
+
l("div", ml, [
|
|
1313
|
+
l("div", pl, A(o(r)("inventory.ingredient.threshold.whenRemaining")), 1),
|
|
1299
1314
|
a(lt, {
|
|
1300
1315
|
modelValue: se.value,
|
|
1301
1316
|
"onUpdate:modelValue": t[11] || (t[11] = (I) => se.value = I),
|
|
1302
1317
|
rules: [o(Pe)(0)]
|
|
1303
1318
|
}, {
|
|
1304
|
-
append:
|
|
1319
|
+
append: y(() => t[14] || (t[14] = [
|
|
1305
1320
|
l("div", {
|
|
1306
1321
|
class: "text-fm-color-typo-secondary",
|
|
1307
1322
|
style: { "padding-right": "32px" }
|
|
@@ -1320,26 +1335,26 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1320
1335
|
style: { transform: "translate(-50%, -50%)", left: "50%", top: "24px" }
|
|
1321
1336
|
}, " < ")
|
|
1322
1337
|
], -1)),
|
|
1323
|
-
l("div",
|
|
1324
|
-
l("div",
|
|
1325
|
-
a(
|
|
1338
|
+
l("div", vl, [
|
|
1339
|
+
l("div", fl, [
|
|
1340
|
+
a(Le, {
|
|
1326
1341
|
days: se.value + 1,
|
|
1327
|
-
level: o(
|
|
1342
|
+
level: o(je).high
|
|
1328
1343
|
}, null, 8, ["days", "level"])
|
|
1329
1344
|
]),
|
|
1330
|
-
l("div",
|
|
1331
|
-
l("div",
|
|
1345
|
+
l("div", yl, [
|
|
1346
|
+
l("div", gl, A(o(r)("inventory.ingredient.threshold.stockIsStaple")), 1)
|
|
1332
1347
|
])
|
|
1333
1348
|
])
|
|
1334
1349
|
])
|
|
1335
1350
|
])
|
|
1336
1351
|
]),
|
|
1337
|
-
o(
|
|
1338
|
-
l("div",
|
|
1339
|
-
l("div",
|
|
1352
|
+
o(d).mustUsePoTemplate && e.mode === o(H).CREATE ? (u(), w("div", bl, [
|
|
1353
|
+
l("div", hl, [
|
|
1354
|
+
l("div", _l, [
|
|
1340
1355
|
a(he, null, {
|
|
1341
|
-
default:
|
|
1342
|
-
l("div",
|
|
1356
|
+
default: y(() => [
|
|
1357
|
+
l("div", xl, A(o(r)("inventory.ingredient.purchaseOrderTemplates.title")), 1)
|
|
1343
1358
|
]),
|
|
1344
1359
|
_: 1
|
|
1345
1360
|
}),
|
|
@@ -1351,11 +1366,11 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1351
1366
|
onClick: Ft
|
|
1352
1367
|
})
|
|
1353
1368
|
]),
|
|
1354
|
-
l("div",
|
|
1369
|
+
l("div", kl, A(o(r)("inventory.ingredient.purchaseOrderTemplates.description")), 1)
|
|
1355
1370
|
]),
|
|
1356
|
-
Ke.value.length > 0 ? (
|
|
1357
|
-
l("div",
|
|
1358
|
-
(
|
|
1371
|
+
Ke.value.length > 0 ? (u(), w("div", Tl, [
|
|
1372
|
+
l("div", wl, [
|
|
1373
|
+
(u(!0), w(X, null, ue(Ke.value, (I) => (u(), O(De, {
|
|
1359
1374
|
key: I.value,
|
|
1360
1375
|
label: I.label,
|
|
1361
1376
|
variant: "info",
|
|
@@ -1364,12 +1379,12 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1364
1379
|
])
|
|
1365
1380
|
])) : L("", !0)
|
|
1366
1381
|
])) : L("", !0),
|
|
1367
|
-
o(
|
|
1368
|
-
l("div",
|
|
1369
|
-
l("div",
|
|
1382
|
+
o(d).enableWastageTemplate && e.mode === o(H).CREATE ? (u(), w("div", Vl, [
|
|
1383
|
+
l("div", Il, [
|
|
1384
|
+
l("div", Sl, [
|
|
1370
1385
|
a(he, null, {
|
|
1371
|
-
default:
|
|
1372
|
-
l("div",
|
|
1386
|
+
default: y(() => [
|
|
1387
|
+
l("div", Cl, A(o(r)("inventory.ingredient.wastageTemplates.title")), 1)
|
|
1373
1388
|
]),
|
|
1374
1389
|
_: 1
|
|
1375
1390
|
}),
|
|
@@ -1378,14 +1393,14 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1378
1393
|
"text-color": "primary",
|
|
1379
1394
|
"border-color": "primary",
|
|
1380
1395
|
"prepend-icon": "add",
|
|
1381
|
-
onClick:
|
|
1396
|
+
onClick: At
|
|
1382
1397
|
})
|
|
1383
1398
|
]),
|
|
1384
|
-
l("div",
|
|
1399
|
+
l("div", Fl, A(o(r)("inventory.ingredient.wastageTemplates.description")), 1)
|
|
1385
1400
|
]),
|
|
1386
|
-
Ze.value.length > 0 ? (
|
|
1401
|
+
Ze.value.length > 0 ? (u(), w("div", Al, [
|
|
1387
1402
|
l("div", El, [
|
|
1388
|
-
(
|
|
1403
|
+
(u(!0), w(X, null, ue(Ze.value, (I) => (u(), O(De, {
|
|
1389
1404
|
key: I.value,
|
|
1390
1405
|
label: I.label,
|
|
1391
1406
|
variant: "info",
|
|
@@ -1394,12 +1409,12 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1394
1409
|
])
|
|
1395
1410
|
])) : L("", !0)
|
|
1396
1411
|
])) : L("", !0),
|
|
1397
|
-
o(
|
|
1398
|
-
l("div",
|
|
1399
|
-
l("div",
|
|
1412
|
+
o(d).enableClosingTemplate && e.mode === o(H).CREATE ? (u(), w("div", $l, [
|
|
1413
|
+
l("div", Ml, [
|
|
1414
|
+
l("div", Ul, [
|
|
1400
1415
|
a(he, null, {
|
|
1401
|
-
default:
|
|
1402
|
-
l("div",
|
|
1416
|
+
default: y(() => [
|
|
1417
|
+
l("div", Pl, A(o(r)("inventory.ingredient.closingTemplates.title")), 1)
|
|
1403
1418
|
]),
|
|
1404
1419
|
_: 1
|
|
1405
1420
|
}),
|
|
@@ -1408,14 +1423,14 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1408
1423
|
"text-color": "primary",
|
|
1409
1424
|
"border-color": "primary",
|
|
1410
1425
|
"prepend-icon": "add",
|
|
1411
|
-
onClick:
|
|
1426
|
+
onClick: Et
|
|
1412
1427
|
})
|
|
1413
1428
|
]),
|
|
1414
|
-
l("div",
|
|
1429
|
+
l("div", Rl, A(o(r)("inventory.ingredient.closingTemplates.description")), 1)
|
|
1415
1430
|
]),
|
|
1416
|
-
Xe.value.length > 0 ? (
|
|
1417
|
-
l("div",
|
|
1418
|
-
(
|
|
1431
|
+
Xe.value.length > 0 ? (u(), w("div", Bl, [
|
|
1432
|
+
l("div", Dl, [
|
|
1433
|
+
(u(!0), w(X, null, ue(Xe.value, (I) => (u(), O(De, {
|
|
1419
1434
|
key: I.value,
|
|
1420
1435
|
label: I.label,
|
|
1421
1436
|
variant: "info",
|
|
@@ -1437,10 +1452,10 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1437
1452
|
}, 8, ["disabled"]);
|
|
1438
1453
|
};
|
|
1439
1454
|
}
|
|
1440
|
-
}),
|
|
1455
|
+
}), Nl = { class: "flex flex-col gap-32" }, zl = {
|
|
1441
1456
|
key: 0,
|
|
1442
1457
|
class: "flex justify-between items-center"
|
|
1443
|
-
},
|
|
1458
|
+
}, Ll = { class: "flex gap-4" }, jl = /* @__PURE__ */ pe({
|
|
1444
1459
|
__name: "IngredientDialog",
|
|
1445
1460
|
props: {
|
|
1446
1461
|
show: { type: Boolean },
|
|
@@ -1449,13 +1464,13 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1449
1464
|
},
|
|
1450
1465
|
emits: ["update:show"],
|
|
1451
1466
|
setup(W) {
|
|
1452
|
-
const
|
|
1467
|
+
const s = W, T = Ce(), r = Vt(), b = Fe(), S = St(), U = wt(), k = Ct(), n = Ae(), { t: c } = ve(), _ = ht(s, "show"), i = ht(s, "sku"), d = B([]), m = B([]), v = B([]), V = g(
|
|
1453
1468
|
() => {
|
|
1454
1469
|
var h;
|
|
1455
|
-
return b.isEnabled && b.netSuiteItemBySkuId.has((h =
|
|
1470
|
+
return b.isEnabled && b.netSuiteItemBySkuId.has((h = s.sku) == null ? void 0 : h._id);
|
|
1456
1471
|
}
|
|
1457
|
-
), E =
|
|
1458
|
-
switch (
|
|
1472
|
+
), E = g(() => {
|
|
1473
|
+
switch (s.mode) {
|
|
1459
1474
|
case H.READ:
|
|
1460
1475
|
return "";
|
|
1461
1476
|
case H.UPDATE:
|
|
@@ -1464,8 +1479,8 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1464
1479
|
return c("inventory.ingredient.create.title");
|
|
1465
1480
|
}
|
|
1466
1481
|
return "";
|
|
1467
|
-
}), p =
|
|
1468
|
-
switch (
|
|
1482
|
+
}), p = g(() => {
|
|
1483
|
+
switch (s.mode) {
|
|
1469
1484
|
case H.READ:
|
|
1470
1485
|
return "";
|
|
1471
1486
|
case H.UPDATE:
|
|
@@ -1474,49 +1489,49 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1474
1489
|
return c("common.add");
|
|
1475
1490
|
}
|
|
1476
1491
|
return "";
|
|
1477
|
-
}), N = B(),
|
|
1492
|
+
}), N = B(), D = B(!1);
|
|
1478
1493
|
async function fe() {
|
|
1479
|
-
|
|
1494
|
+
D.value = !0;
|
|
1480
1495
|
try {
|
|
1481
|
-
await T.createSku(
|
|
1482
|
-
const h = T.skuByCode[
|
|
1483
|
-
|
|
1496
|
+
await T.createSku(i.value);
|
|
1497
|
+
const h = T.skuByCode[i.value.code];
|
|
1498
|
+
r.enablePoTemplate && d.value.length > 0 && await ce(h), r.enableWastageTemplate && m.value.length > 0 && await le(h), r.enableClosingTemplate && v.value.length > 0 && await oe(h), _.value = !1, n.open({
|
|
1484
1499
|
title: c("inventory.common.success"),
|
|
1485
|
-
message: c("inventory.ingredient.create.success", { name:
|
|
1500
|
+
message: c("inventory.ingredient.create.success", { name: i.value.name }),
|
|
1486
1501
|
type: "success"
|
|
1487
1502
|
});
|
|
1488
1503
|
} catch (h) {
|
|
1489
|
-
h instanceof
|
|
1504
|
+
h instanceof yt || n.open({
|
|
1490
1505
|
title: c("inventory.ingredient.create.error.title"),
|
|
1491
1506
|
message: c("inventory.ingredient.create.error.message"),
|
|
1492
1507
|
type: "error"
|
|
1493
1508
|
});
|
|
1494
1509
|
} finally {
|
|
1495
|
-
|
|
1510
|
+
D.value = !1;
|
|
1496
1511
|
}
|
|
1497
1512
|
}
|
|
1498
1513
|
async function ne() {
|
|
1499
|
-
|
|
1514
|
+
D.value = !0;
|
|
1500
1515
|
try {
|
|
1501
|
-
await T.updateSku(
|
|
1516
|
+
await T.updateSku(i.value), D.value = !1, _.value = !1, n.open({
|
|
1502
1517
|
title: c("inventory.common.success"),
|
|
1503
|
-
message: c("inventory.ingredient.update.success", { name:
|
|
1518
|
+
message: c("inventory.ingredient.update.success", { name: i.value.name }),
|
|
1504
1519
|
type: "success"
|
|
1505
1520
|
});
|
|
1506
1521
|
} catch (h) {
|
|
1507
|
-
h instanceof
|
|
1522
|
+
h instanceof yt || n.open({
|
|
1508
1523
|
title: c("inventory.ingredient.update.error.title"),
|
|
1509
1524
|
message: c("inventory.ingredient.update.error.message"),
|
|
1510
1525
|
type: "error"
|
|
1511
1526
|
});
|
|
1512
1527
|
} finally {
|
|
1513
|
-
|
|
1528
|
+
D.value = !1;
|
|
1514
1529
|
}
|
|
1515
1530
|
}
|
|
1516
1531
|
async function ce(h) {
|
|
1517
1532
|
var P, G, $, f;
|
|
1518
1533
|
try {
|
|
1519
|
-
for (const j of
|
|
1534
|
+
for (const j of d.value) {
|
|
1520
1535
|
const K = await S.getTemplate(j);
|
|
1521
1536
|
if (!K) {
|
|
1522
1537
|
console.warn(`Template with ID ${j} not found`);
|
|
@@ -1540,7 +1555,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1540
1555
|
items: [...K.purchaseOrder.items, M]
|
|
1541
1556
|
}
|
|
1542
1557
|
};
|
|
1543
|
-
((($ = R.purchaseOrder.supplier) == null ? void 0 : $.internal) ===
|
|
1558
|
+
((($ = R.purchaseOrder.supplier) == null ? void 0 : $.internal) === gt.enum.warehouse || ((f = R.purchaseOrder.supplier) == null ? void 0 : f.internal) === gt.enum.restaurant) && (R.purchaseOrder.items = R.purchaseOrder.items.map(
|
|
1544
1559
|
({ totalCost: q, ...de }) => de
|
|
1545
1560
|
)), await S.updateTemplate(R), await new Promise((q) => setTimeout(q, 1e3));
|
|
1546
1561
|
}
|
|
@@ -1614,7 +1629,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1614
1629
|
(P = (h = N.value) == null ? void 0 : h.validateInputs) == null || P.call(h);
|
|
1615
1630
|
}
|
|
1616
1631
|
function ae() {
|
|
1617
|
-
switch (
|
|
1632
|
+
switch (s.mode) {
|
|
1618
1633
|
case H.READ:
|
|
1619
1634
|
return;
|
|
1620
1635
|
case H.UPDATE:
|
|
@@ -1624,17 +1639,17 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1624
1639
|
}
|
|
1625
1640
|
}
|
|
1626
1641
|
function ye(h) {
|
|
1627
|
-
|
|
1642
|
+
d.value = h;
|
|
1628
1643
|
}
|
|
1629
1644
|
function ge(h) {
|
|
1630
1645
|
m.value = h;
|
|
1631
1646
|
}
|
|
1632
|
-
function
|
|
1647
|
+
function ke(h) {
|
|
1633
1648
|
v.value = h;
|
|
1634
1649
|
}
|
|
1635
1650
|
return (h, P) => {
|
|
1636
1651
|
const G = F("FmChip"), $ = F("FmButton"), f = F("FmSideSheet");
|
|
1637
|
-
return
|
|
1652
|
+
return u(), O(f, {
|
|
1638
1653
|
"model-value": o(_),
|
|
1639
1654
|
"onUpdate:modelValue": P[3] || (P[3] = (j) => dt(_) ? _.value = j : null),
|
|
1640
1655
|
header: E.value,
|
|
@@ -1642,24 +1657,24 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1642
1657
|
"dismiss-away": "",
|
|
1643
1658
|
"max-width": 500
|
|
1644
1659
|
}, {
|
|
1645
|
-
"side-sheet-footer":
|
|
1646
|
-
l("div",
|
|
1660
|
+
"side-sheet-footer": y(() => [
|
|
1661
|
+
l("div", Ll, [
|
|
1647
1662
|
a($, {
|
|
1648
|
-
loading:
|
|
1663
|
+
loading: D.value,
|
|
1649
1664
|
label: p.value,
|
|
1650
1665
|
onClick: ee
|
|
1651
1666
|
}, null, 8, ["loading", "label"]),
|
|
1652
1667
|
a($, {
|
|
1653
|
-
disabled:
|
|
1668
|
+
disabled: D.value,
|
|
1654
1669
|
label: o(c)("common.close"),
|
|
1655
1670
|
variant: "tertiary",
|
|
1656
1671
|
onClick: P[2] || (P[2] = (j) => _.value = !1)
|
|
1657
1672
|
}, null, 8, ["disabled", "label"])
|
|
1658
1673
|
])
|
|
1659
1674
|
]),
|
|
1660
|
-
default:
|
|
1661
|
-
l("div",
|
|
1662
|
-
V.value ? (
|
|
1675
|
+
default: y(() => [
|
|
1676
|
+
l("div", Nl, [
|
|
1677
|
+
V.value ? (u(), w("div", zl, [
|
|
1663
1678
|
a(G, {
|
|
1664
1679
|
label: "Managed by Netsuite",
|
|
1665
1680
|
compact: ""
|
|
@@ -1674,17 +1689,17 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1674
1689
|
class: "w-full",
|
|
1675
1690
|
ref_key: "hasValidationExpose",
|
|
1676
1691
|
ref: N,
|
|
1677
|
-
modelValue: o(
|
|
1678
|
-
"onUpdate:modelValue": P[0] || (P[0] = (j) => dt(
|
|
1692
|
+
modelValue: o(i),
|
|
1693
|
+
"onUpdate:modelValue": P[0] || (P[0] = (j) => dt(i) ? i.value = j : null),
|
|
1679
1694
|
mode: h.mode,
|
|
1680
|
-
disabled:
|
|
1681
|
-
purchaseOrderTemplateIds:
|
|
1695
|
+
disabled: D.value,
|
|
1696
|
+
purchaseOrderTemplateIds: d.value,
|
|
1682
1697
|
wastageTemplateIds: m.value,
|
|
1683
1698
|
closingTemplateIds: v.value,
|
|
1684
1699
|
"onClick:submit": P[1] || (P[1] = (j) => ae()),
|
|
1685
1700
|
"onUpdate:purchaseOrderTemplateIds": ye,
|
|
1686
1701
|
"onUpdate:wastageTemplateIds": ge,
|
|
1687
|
-
"onUpdate:closingTemplateIds":
|
|
1702
|
+
"onUpdate:closingTemplateIds": ke
|
|
1688
1703
|
}, null, 8, ["modelValue", "mode", "disabled", "purchaseOrderTemplateIds", "wastageTemplateIds", "closingTemplateIds"])
|
|
1689
1704
|
])
|
|
1690
1705
|
]),
|
|
@@ -1692,10 +1707,10 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1692
1707
|
}, 8, ["model-value", "header"]);
|
|
1693
1708
|
};
|
|
1694
1709
|
}
|
|
1695
|
-
}),
|
|
1710
|
+
}), Wl = { class: "flex items-center gap-12 pl-8" }, Hl = { class: "flex flex-col" }, ql = { class: "fm-typo-en-body-md-400 text-fm-color-typo-primary flex items-center gap-4" }, Yl = {
|
|
1696
1711
|
key: 0,
|
|
1697
1712
|
class: "text-fm-color-typo-secondary fm-typo-en-body-sm-400"
|
|
1698
|
-
},
|
|
1713
|
+
}, Gl = { key: 0 }, xt = /* @__PURE__ */ pe({
|
|
1699
1714
|
__name: "ImportIngredientItem",
|
|
1700
1715
|
props: {
|
|
1701
1716
|
type: {},
|
|
@@ -1704,29 +1719,29 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1704
1719
|
errors: {}
|
|
1705
1720
|
},
|
|
1706
1721
|
setup(W) {
|
|
1707
|
-
return (
|
|
1708
|
-
const
|
|
1709
|
-
return
|
|
1722
|
+
return (s, T) => {
|
|
1723
|
+
const r = F("FmIcon"), b = F("FmTooltip");
|
|
1724
|
+
return u(), w("div", Wl, [
|
|
1710
1725
|
T[0] || (T[0] = l("div", null, "•", -1)),
|
|
1711
|
-
l("div",
|
|
1712
|
-
l("div",
|
|
1726
|
+
l("div", Hl, [
|
|
1727
|
+
l("div", ql, [
|
|
1713
1728
|
l("div", {
|
|
1714
1729
|
class: te({
|
|
1715
|
-
"text-fm-color-system-error-300":
|
|
1730
|
+
"text-fm-color-system-error-300": s.errors.length
|
|
1716
1731
|
})
|
|
1717
1732
|
}, [
|
|
1718
|
-
Ge(A(
|
|
1719
|
-
|
|
1733
|
+
Ge(A(s.name) + " ", 1),
|
|
1734
|
+
s.type === "create" ? (u(), w("span", Yl, "(new)")) : L("", !0)
|
|
1720
1735
|
], 2),
|
|
1721
|
-
|
|
1736
|
+
s.errors.length ? (u(), w("div", Gl, [
|
|
1722
1737
|
a(b, { "z-index": 50 }, {
|
|
1723
|
-
content:
|
|
1738
|
+
content: y(() => [
|
|
1724
1739
|
l("ol", null, [
|
|
1725
|
-
(
|
|
1740
|
+
(u(!0), w(X, null, ue(s.errors, (S, U) => (u(), w("li", { key: U }, A(S), 1))), 128))
|
|
1726
1741
|
])
|
|
1727
1742
|
]),
|
|
1728
|
-
default:
|
|
1729
|
-
a(
|
|
1743
|
+
default: y(() => [
|
|
1744
|
+
a(r, {
|
|
1730
1745
|
name: "error",
|
|
1731
1746
|
size: "sm",
|
|
1732
1747
|
color: "system-error-300"
|
|
@@ -1740,38 +1755,38 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1740
1755
|
class: te([
|
|
1741
1756
|
"fm-typo-en-body-sm-400",
|
|
1742
1757
|
{
|
|
1743
|
-
"text-fm-color-system-error-200":
|
|
1744
|
-
"text-fm-color-typo-secondary": !
|
|
1758
|
+
"text-fm-color-system-error-200": s.errors.length,
|
|
1759
|
+
"text-fm-color-typo-secondary": !s.errors.length
|
|
1745
1760
|
}
|
|
1746
1761
|
])
|
|
1747
|
-
}, A(
|
|
1762
|
+
}, A(s.code), 3)
|
|
1748
1763
|
])
|
|
1749
1764
|
]);
|
|
1750
1765
|
};
|
|
1751
1766
|
}
|
|
1752
|
-
}),
|
|
1767
|
+
}), Kl = { class: "flex flex-col gap-24" }, Jl = { class: "fm-typo-en-body-md-400" }, Zl = { class: "flex flex-col gap-8" }, Ql = { class: "line-clamp-2 text-ellipsis break-all" }, Xl = {
|
|
1753
1768
|
key: 2,
|
|
1754
1769
|
class: "shrink-0"
|
|
1755
|
-
},
|
|
1770
|
+
}, eo = {
|
|
1756
1771
|
key: 0,
|
|
1757
1772
|
class: "flex flex-col"
|
|
1758
|
-
},
|
|
1773
|
+
}, to = { class: "text-fm-color-system-error-300 fm-typo-en-body-sm-400" }, no = {
|
|
1759
1774
|
key: 0,
|
|
1760
1775
|
class: "max-h-[200px] overflow-y-auto flex flex-col gap-8"
|
|
1761
|
-
},
|
|
1776
|
+
}, lo = { class: "fm-typo-en-body-lg-600" }, oo = /* @__PURE__ */ pe({
|
|
1762
1777
|
__name: "ImportIngredients",
|
|
1763
1778
|
setup(W) {
|
|
1764
|
-
const
|
|
1765
|
-
() => !!S.value.length || U.value.some((
|
|
1766
|
-
), c =
|
|
1779
|
+
const s = B(null), T = un(), r = Ae(), b = B(!1), S = B(new Array()), U = B([]), k = B([]), n = g(
|
|
1780
|
+
() => !!S.value.length || U.value.some((d) => d.errors.length) || k.value.some((d) => d.errors.length)
|
|
1781
|
+
), c = g(
|
|
1767
1782
|
() => !!U.value.length || !!k.value.length
|
|
1768
1783
|
), { t: _ } = ve();
|
|
1769
|
-
async function
|
|
1784
|
+
async function i(d) {
|
|
1770
1785
|
S.value = [], U.value = [], k.value = [];
|
|
1771
1786
|
try {
|
|
1772
1787
|
b.value = !0;
|
|
1773
1788
|
const [m] = await Promise.all([
|
|
1774
|
-
en(
|
|
1789
|
+
en(d),
|
|
1775
1790
|
// fake buffer
|
|
1776
1791
|
new Promise((E) => setTimeout(E, 1e3))
|
|
1777
1792
|
]), v = m.SheetNames.find((E) => E);
|
|
@@ -1790,38 +1805,38 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1790
1805
|
}
|
|
1791
1806
|
T.emitData(V);
|
|
1792
1807
|
} catch (m) {
|
|
1793
|
-
|
|
1808
|
+
r.open({
|
|
1794
1809
|
title: _("inventory.ingredient.import.fileError.unableToRead"),
|
|
1795
1810
|
message: m == null ? void 0 : m.message,
|
|
1796
1811
|
type: "error"
|
|
1797
1812
|
}), console.error("Error in reading file", m);
|
|
1798
1813
|
} finally {
|
|
1799
|
-
S.value.length &&
|
|
1814
|
+
S.value.length && r.open({
|
|
1800
1815
|
title: _("inventory.ingredient.import.fileError.invalidExcel"),
|
|
1801
1816
|
type: "error"
|
|
1802
1817
|
}), b.value = !1;
|
|
1803
1818
|
}
|
|
1804
1819
|
}
|
|
1805
|
-
return
|
|
1806
|
-
|
|
1807
|
-
}), (
|
|
1820
|
+
return kt(s, (d) => {
|
|
1821
|
+
d && i(d);
|
|
1822
|
+
}), (d, m) => {
|
|
1808
1823
|
const v = F("FmCircularProgress"), V = F("FmIcon"), E = F("FmButton");
|
|
1809
|
-
return
|
|
1810
|
-
l("div",
|
|
1824
|
+
return u(), w("div", Kl, [
|
|
1825
|
+
l("div", Jl, A(o(_)("inventory.ingredient.import.uploadDescription")), 1),
|
|
1811
1826
|
a(Xt, {
|
|
1812
1827
|
class: te({
|
|
1813
1828
|
"w-full": !0,
|
|
1814
|
-
"h-[200px]": !
|
|
1829
|
+
"h-[200px]": !s.value
|
|
1815
1830
|
}),
|
|
1816
1831
|
accept: ".xlsx",
|
|
1817
|
-
onFileUpload: m[0] || (m[0] = (p) =>
|
|
1832
|
+
onFileUpload: m[0] || (m[0] = (p) => s.value = p),
|
|
1818
1833
|
label: o(_)("inventory.ingredient.import.uploadTemplate"),
|
|
1819
1834
|
"button-label": o(_)("inventory.ingredient.import.selectFile")
|
|
1820
|
-
},
|
|
1821
|
-
|
|
1835
|
+
}, Ye({ _: 2 }, [
|
|
1836
|
+
s.value ? {
|
|
1822
1837
|
name: "default",
|
|
1823
|
-
fn:
|
|
1824
|
-
l("div",
|
|
1838
|
+
fn: y(({ openFileDialog: p }) => [
|
|
1839
|
+
l("div", Zl, [
|
|
1825
1840
|
l("div", {
|
|
1826
1841
|
class: te([
|
|
1827
1842
|
"fm-corner-radius-md p-16 flex items-center gap-16",
|
|
@@ -1832,11 +1847,11 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1832
1847
|
}
|
|
1833
1848
|
])
|
|
1834
1849
|
}, [
|
|
1835
|
-
b.value ? (
|
|
1850
|
+
b.value ? (u(), O(v, {
|
|
1836
1851
|
key: 0,
|
|
1837
1852
|
size: "md",
|
|
1838
1853
|
color: "neutral-gray-200"
|
|
1839
|
-
})) : (
|
|
1854
|
+
})) : (u(), O(V, {
|
|
1840
1855
|
key: 1,
|
|
1841
1856
|
name: n.value ? "error" : "attach_file",
|
|
1842
1857
|
outline: "",
|
|
@@ -1851,9 +1866,9 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1851
1866
|
}
|
|
1852
1867
|
])
|
|
1853
1868
|
}, [
|
|
1854
|
-
l("div",
|
|
1869
|
+
l("div", Ql, A(s.value.name), 1)
|
|
1855
1870
|
], 2),
|
|
1856
|
-
b.value ? L("", !0) : (
|
|
1871
|
+
b.value ? L("", !0) : (u(), w("div", Xl, [
|
|
1857
1872
|
a(E, {
|
|
1858
1873
|
label: o(_)("inventory.ingredient.import.replaceFile"),
|
|
1859
1874
|
variant: n.value ? "destructive" : "secondary",
|
|
@@ -1862,9 +1877,9 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1862
1877
|
}, null, 8, ["label", "variant", "prepend-icon", "onClick"])
|
|
1863
1878
|
]))
|
|
1864
1879
|
], 2),
|
|
1865
|
-
S.value.length ? (
|
|
1866
|
-
(
|
|
1867
|
-
key:
|
|
1880
|
+
S.value.length ? (u(), w("div", eo, [
|
|
1881
|
+
(u(!0), w(X, null, ue(S.value, (N, D) => (u(), w("div", {
|
|
1882
|
+
key: D,
|
|
1868
1883
|
class: "flex gap-8 items-center"
|
|
1869
1884
|
}, [
|
|
1870
1885
|
a(V, {
|
|
@@ -1872,7 +1887,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1872
1887
|
size: "sm",
|
|
1873
1888
|
color: "system-error-300"
|
|
1874
1889
|
}),
|
|
1875
|
-
l("div",
|
|
1890
|
+
l("div", to, A(N), 1)
|
|
1876
1891
|
]))), 128))
|
|
1877
1892
|
])) : L("", !0)
|
|
1878
1893
|
])
|
|
@@ -1880,16 +1895,16 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1880
1895
|
key: "0"
|
|
1881
1896
|
} : void 0
|
|
1882
1897
|
]), 1032, ["class", "label", "button-label"]),
|
|
1883
|
-
c.value ? (
|
|
1884
|
-
l("div",
|
|
1885
|
-
(
|
|
1898
|
+
c.value ? (u(), w("div", no, [
|
|
1899
|
+
l("div", lo, A(o(_)("inventory.ingredient.import.summary")), 1),
|
|
1900
|
+
(u(!0), w(X, null, ue(U.value, (p) => (u(), O(xt, {
|
|
1886
1901
|
key: p.sku._id,
|
|
1887
1902
|
code: p.sku.code,
|
|
1888
1903
|
name: p.sku.name,
|
|
1889
1904
|
errors: p.errors,
|
|
1890
1905
|
type: "create"
|
|
1891
1906
|
}, null, 8, ["code", "name", "errors"]))), 128)),
|
|
1892
|
-
(
|
|
1907
|
+
(u(!0), w(X, null, ue(k.value, (p) => (u(), O(xt, {
|
|
1893
1908
|
key: p.sku._id,
|
|
1894
1909
|
code: p.sku.code,
|
|
1895
1910
|
name: p.sku.name,
|
|
@@ -1900,24 +1915,24 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1900
1915
|
]);
|
|
1901
1916
|
};
|
|
1902
1917
|
}
|
|
1903
|
-
}),
|
|
1918
|
+
}), ao = {
|
|
1904
1919
|
key: 0,
|
|
1905
1920
|
class: "flex items-center gap-1"
|
|
1906
|
-
},
|
|
1921
|
+
}, so = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, ro = { class: "flex flex-col py-8" }, io = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, uo = { class: "fm-typo-en-body-lg-600 text-fm-color-typo-primary" }, So = /* @__PURE__ */ pe({
|
|
1907
1922
|
__name: "IngredientsView",
|
|
1908
1923
|
setup(W) {
|
|
1909
|
-
const
|
|
1924
|
+
const s = Ce(), T = Fe(), r = g(() => [
|
|
1910
1925
|
{
|
|
1911
1926
|
type: "string",
|
|
1912
1927
|
key: "skuCode",
|
|
1913
1928
|
entity: "sku",
|
|
1914
|
-
values:
|
|
1929
|
+
values: s.skus.map((f) => f.code)
|
|
1915
1930
|
},
|
|
1916
1931
|
{
|
|
1917
1932
|
type: "string",
|
|
1918
1933
|
key: "skuUnitAbbrev",
|
|
1919
1934
|
entity: "sku",
|
|
1920
|
-
values:
|
|
1935
|
+
values: s.units.map((f) => f.abbrev)
|
|
1921
1936
|
},
|
|
1922
1937
|
{
|
|
1923
1938
|
type: "string",
|
|
@@ -1935,13 +1950,13 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1935
1950
|
type: "string"
|
|
1936
1951
|
}
|
|
1937
1952
|
]
|
|
1938
|
-
}), S =
|
|
1953
|
+
}), S = g(
|
|
1939
1954
|
() => new Set(T.getAvailableItems(T.businessSubsidiaryId))
|
|
1940
|
-
), U =
|
|
1955
|
+
), U = g(() => {
|
|
1941
1956
|
if (!b.value)
|
|
1942
|
-
return
|
|
1957
|
+
return s.skus;
|
|
1943
1958
|
const $ = tn.build(b.value);
|
|
1944
|
-
return
|
|
1959
|
+
return s.skus.filter((f) => T.isEnabled && ne.value && S.value && !S.value.has(f._id) ? !1 : nn(
|
|
1945
1960
|
{
|
|
1946
1961
|
skuCode: f.code,
|
|
1947
1962
|
skuUnitAbbrev: f.unit.abbrev,
|
|
@@ -1949,25 +1964,25 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1949
1964
|
},
|
|
1950
1965
|
$
|
|
1951
1966
|
));
|
|
1952
|
-
}), k = ln(), n = Re(), c = Tn(), _ =
|
|
1967
|
+
}), k = ln(), n = Re(), c = Tn(), _ = Ae(), { t: i } = ve(), { createIngredient: d, updateIngredient: m } = qe(), { ingredientDialogProps: v, ingredientViewLoading: V } = fn(qe()), { columnDefs: E } = Nn();
|
|
1953
1968
|
function p($) {
|
|
1954
1969
|
switch ($) {
|
|
1955
1970
|
case "add":
|
|
1956
|
-
return T.isEnabled ? void 0 :
|
|
1971
|
+
return T.isEnabled ? void 0 : d();
|
|
1957
1972
|
case "import":
|
|
1958
1973
|
return P();
|
|
1959
1974
|
case "export":
|
|
1960
1975
|
return h();
|
|
1961
1976
|
}
|
|
1962
1977
|
}
|
|
1963
|
-
const N = B(""),
|
|
1978
|
+
const N = B(""), D = B(!1), fe = g(() => D.value || V.value), ne = B(!0), { breakpoints: ce } = cn(), le = g(() => ce.value.xs || ce.value.sm), oe = g(() => le.value ? 10 : 20), ee = on(), ae = B(!1), ye = [
|
|
1964
1979
|
{
|
|
1965
1980
|
value: "import",
|
|
1966
|
-
label:
|
|
1981
|
+
label: i("common.import")
|
|
1967
1982
|
},
|
|
1968
1983
|
{
|
|
1969
1984
|
value: "export",
|
|
1970
|
-
label:
|
|
1985
|
+
label: i("common.export")
|
|
1971
1986
|
}
|
|
1972
1987
|
];
|
|
1973
1988
|
function ge($) {
|
|
@@ -1978,65 +1993,65 @@ const zn = /* @__PURE__ */ pe({
|
|
|
1978
1993
|
return h();
|
|
1979
1994
|
}
|
|
1980
1995
|
}
|
|
1981
|
-
const
|
|
1996
|
+
const ke = g(() => [
|
|
1982
1997
|
...T.isEnabled ? [] : [
|
|
1983
1998
|
{
|
|
1984
|
-
label:
|
|
1999
|
+
label: i("inventory.ingredient.create.title"),
|
|
1985
2000
|
value: "add",
|
|
1986
2001
|
isPrimary: !0,
|
|
1987
2002
|
prependIcon: "add"
|
|
1988
2003
|
}
|
|
1989
2004
|
],
|
|
1990
|
-
{ label:
|
|
1991
|
-
{ label:
|
|
2005
|
+
{ label: i("common.import"), value: "import" },
|
|
2006
|
+
{ label: i("common.export"), value: "export" }
|
|
1992
2007
|
]);
|
|
1993
2008
|
function h() {
|
|
1994
2009
|
const $ = _n();
|
|
1995
2010
|
_.open({
|
|
1996
|
-
title:
|
|
1997
|
-
message:
|
|
2011
|
+
title: i("inventory.ingredient.export.success"),
|
|
2012
|
+
message: i("inventory.ingredient.export.filename", [$]),
|
|
1998
2013
|
type: "success"
|
|
1999
2014
|
});
|
|
2000
2015
|
}
|
|
2001
2016
|
function P() {
|
|
2002
2017
|
n.open({
|
|
2003
|
-
title:
|
|
2004
|
-
contentComponent:
|
|
2018
|
+
title: i("inventory.ingredient.import.title"),
|
|
2019
|
+
contentComponent: oo,
|
|
2005
2020
|
overlay: !0,
|
|
2006
2021
|
closeButton: !0,
|
|
2007
2022
|
primaryActions: {
|
|
2008
|
-
text:
|
|
2023
|
+
text: i("common.import"),
|
|
2009
2024
|
close: !1
|
|
2010
2025
|
},
|
|
2011
2026
|
secondaryActions: {
|
|
2012
|
-
text:
|
|
2027
|
+
text: i("common.close"),
|
|
2013
2028
|
close: !0
|
|
2014
2029
|
},
|
|
2015
2030
|
tertiaryActions: {
|
|
2016
|
-
text:
|
|
2031
|
+
text: i("inventory.ingredient.import.actions.downloadTemplate"),
|
|
2017
2032
|
close: !1,
|
|
2018
2033
|
variant: "plain"
|
|
2019
2034
|
}
|
|
2020
2035
|
}).onPrimary(($) => {
|
|
2021
2036
|
if (!$) {
|
|
2022
2037
|
_.open({
|
|
2023
|
-
title:
|
|
2038
|
+
title: i("inventory.ingredient.import.error.noData"),
|
|
2024
2039
|
type: "error"
|
|
2025
2040
|
});
|
|
2026
2041
|
return;
|
|
2027
2042
|
}
|
|
2028
2043
|
if (!$.importCreateResult.length && !$.importUpdateResult.length) {
|
|
2029
2044
|
_.open({
|
|
2030
|
-
title:
|
|
2031
|
-
message:
|
|
2045
|
+
title: i("inventory.ingredient.import.error.invalidContent"),
|
|
2046
|
+
message: i("inventory.ingredient.import.error.noImportData"),
|
|
2032
2047
|
type: "error"
|
|
2033
2048
|
});
|
|
2034
2049
|
return;
|
|
2035
2050
|
}
|
|
2036
2051
|
if ($.importCreateResult.some((f) => f.errors.length) || $.importUpdateResult.some((f) => f.errors.length)) {
|
|
2037
2052
|
_.open({
|
|
2038
|
-
title:
|
|
2039
|
-
message:
|
|
2053
|
+
title: i("inventory.ingredient.import.error.invalidContent"),
|
|
2054
|
+
message: i("inventory.ingredient.import.error.hasErrors"),
|
|
2040
2055
|
type: "error"
|
|
2041
2056
|
});
|
|
2042
2057
|
return;
|
|
@@ -2045,7 +2060,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
2045
2060
|
}).onTertiary(xn);
|
|
2046
2061
|
}
|
|
2047
2062
|
async function G($) {
|
|
2048
|
-
|
|
2063
|
+
D.value = !0;
|
|
2049
2064
|
try {
|
|
2050
2065
|
const f = [
|
|
2051
2066
|
...$.importCreateResult.map(({ sku: M }) => ({ type: "create", sku: M })),
|
|
@@ -2054,7 +2069,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
2054
2069
|
let K = 0;
|
|
2055
2070
|
const me = () => {
|
|
2056
2071
|
K += j, _.open({
|
|
2057
|
-
title:
|
|
2072
|
+
title: i("inventory.ingredient.import.progress", [
|
|
2058
2073
|
Math.min(K, f.length),
|
|
2059
2074
|
f.length
|
|
2060
2075
|
])
|
|
@@ -2063,7 +2078,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
2063
2078
|
for (const M of f.chunk(100)) {
|
|
2064
2079
|
me();
|
|
2065
2080
|
try {
|
|
2066
|
-
const R = await
|
|
2081
|
+
const R = await s.importSkus({
|
|
2067
2082
|
create: M.filter((q) => q.type === "create").map((q) => q.sku),
|
|
2068
2083
|
update: M.filter((q) => q.type === "update").map((q) => q.sku)
|
|
2069
2084
|
});
|
|
@@ -2086,7 +2101,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
2086
2101
|
}
|
|
2087
2102
|
}
|
|
2088
2103
|
_.open({
|
|
2089
|
-
title:
|
|
2104
|
+
title: i("inventory.ingredient.import.success"),
|
|
2090
2105
|
type: "success"
|
|
2091
2106
|
}), J.length && c.alert(
|
|
2092
2107
|
"Some operation failed",
|
|
@@ -2107,22 +2122,22 @@ const zn = /* @__PURE__ */ pe({
|
|
|
2107
2122
|
);
|
|
2108
2123
|
} catch (f) {
|
|
2109
2124
|
_.open({
|
|
2110
|
-
title:
|
|
2111
|
-
message:
|
|
2125
|
+
title: i("inventory.ingredient.import.error.failed"),
|
|
2126
|
+
message: i("inventory.ingredient.import.error.systemMessage", [f == null ? void 0 : f.message]),
|
|
2112
2127
|
type: "error"
|
|
2113
2128
|
}), console.error("Error in importing skus", $, f);
|
|
2114
2129
|
} finally {
|
|
2115
|
-
|
|
2130
|
+
D.value = !1;
|
|
2116
2131
|
}
|
|
2117
2132
|
}
|
|
2118
2133
|
return ($, f) => {
|
|
2119
2134
|
const j = F("FmSwitch"), K = F("FmTable"), me = F("FmCollapsibleTabs"), J = F("FmBottomSheet");
|
|
2120
|
-
return
|
|
2121
|
-
title: o(
|
|
2122
|
-
actions:
|
|
2135
|
+
return u(), O(an, {
|
|
2136
|
+
title: o(i)("inventory.ingredient.title"),
|
|
2137
|
+
actions: ke.value,
|
|
2123
2138
|
"onClick:action": p
|
|
2124
2139
|
}, {
|
|
2125
|
-
default:
|
|
2140
|
+
default: y(() => [
|
|
2126
2141
|
l("div", {
|
|
2127
2142
|
class: te([
|
|
2128
2143
|
"flex flex-col gap-8 max-h-full",
|
|
@@ -2137,16 +2152,16 @@ const zn = /* @__PURE__ */ pe({
|
|
|
2137
2152
|
search: N.value,
|
|
2138
2153
|
"onUpdate:search": f[1] || (f[1] = (M) => N.value = M),
|
|
2139
2154
|
filterable: "",
|
|
2140
|
-
"filter-attributes":
|
|
2155
|
+
"filter-attributes": r.value,
|
|
2141
2156
|
filter: b.value,
|
|
2142
2157
|
"onUpdate:filter": f[2] || (f[2] = (M) => b.value = M)
|
|
2143
2158
|
}, {
|
|
2144
|
-
default:
|
|
2145
|
-
o(T).isEnabled ? (
|
|
2146
|
-
l("span",
|
|
2159
|
+
default: y(() => [
|
|
2160
|
+
o(T).isEnabled ? (u(), w("div", ao, [
|
|
2161
|
+
l("span", so, A(o(i)("inventory.integration.netsuite.subsidiaryHierarchy.filtering")), 1),
|
|
2147
2162
|
a(gn),
|
|
2148
|
-
a(
|
|
2149
|
-
default:
|
|
2163
|
+
a(He, null, {
|
|
2164
|
+
default: y(() => [
|
|
2150
2165
|
a(j, {
|
|
2151
2166
|
modelValue: ne.value,
|
|
2152
2167
|
"onUpdate:modelValue": f[0] || (f[0] = (M) => ne.value = M)
|
|
@@ -2158,7 +2173,7 @@ const zn = /* @__PURE__ */ pe({
|
|
|
2158
2173
|
]),
|
|
2159
2174
|
_: 1
|
|
2160
2175
|
}, 8, ["search", "filter-attributes", "filter"]),
|
|
2161
|
-
(
|
|
2176
|
+
(u(), O(K, {
|
|
2162
2177
|
key: JSON.stringify(b.value),
|
|
2163
2178
|
style: Nt(o(ee).tableHeight),
|
|
2164
2179
|
"column-defs": o(E),
|
|
@@ -2172,25 +2187,25 @@ const zn = /* @__PURE__ */ pe({
|
|
|
2172
2187
|
onRowClick: f[3] || (f[3] = (M) => o(m)(M.original)),
|
|
2173
2188
|
"page-size": oe.value
|
|
2174
2189
|
}, {
|
|
2175
|
-
"list-row":
|
|
2190
|
+
"list-row": y((M) => [
|
|
2176
2191
|
a(rn, {
|
|
2177
2192
|
row: M,
|
|
2178
2193
|
onRowClick: o(m)
|
|
2179
|
-
},
|
|
2180
|
-
default:
|
|
2181
|
-
var q, de,
|
|
2194
|
+
}, Ye({
|
|
2195
|
+
default: y((R) => {
|
|
2196
|
+
var q, de, Te, _e, Ee, $e, we, be, se, Ve;
|
|
2182
2197
|
return [
|
|
2183
|
-
l("div",
|
|
2184
|
-
l("div",
|
|
2185
|
-
a(o(
|
|
2186
|
-
render: (
|
|
2198
|
+
l("div", ro, [
|
|
2199
|
+
l("div", io, [
|
|
2200
|
+
a(o(bt), {
|
|
2201
|
+
render: (Te = (de = (q = R.code) == null ? void 0 : q.column) == null ? void 0 : de.columnDef) == null ? void 0 : Te.cell,
|
|
2187
2202
|
props: (Ee = (_e = R.code) == null ? void 0 : _e.getContext) == null ? void 0 : Ee.call(_e)
|
|
2188
2203
|
}, null, 8, ["render", "props"])
|
|
2189
2204
|
]),
|
|
2190
|
-
l("div",
|
|
2191
|
-
a(o(
|
|
2192
|
-
render: (be = (
|
|
2193
|
-
props: (
|
|
2205
|
+
l("div", uo, [
|
|
2206
|
+
a(o(bt), {
|
|
2207
|
+
render: (be = (we = ($e = R.name) == null ? void 0 : $e.column) == null ? void 0 : we.columnDef) == null ? void 0 : be.cell,
|
|
2208
|
+
props: (Ve = (se = R.name) == null ? void 0 : se.getContext) == null ? void 0 : Ve.call(se)
|
|
2194
2209
|
}, null, 8, ["render", "props"])
|
|
2195
2210
|
])
|
|
2196
2211
|
])
|
|
@@ -2198,10 +2213,10 @@ const zn = /* @__PURE__ */ pe({
|
|
|
2198
2213
|
}),
|
|
2199
2214
|
_: 2
|
|
2200
2215
|
}, [
|
|
2201
|
-
|
|
2216
|
+
D.value ? {
|
|
2202
2217
|
name: "loading-text",
|
|
2203
|
-
fn:
|
|
2204
|
-
l("div", null, A(o(
|
|
2218
|
+
fn: y(() => [
|
|
2219
|
+
l("div", null, A(o(i)("inventory.ingredient.table.importing")), 1)
|
|
2205
2220
|
]),
|
|
2206
2221
|
key: "0"
|
|
2207
2222
|
} : void 0
|
|
@@ -2210,16 +2225,16 @@ const zn = /* @__PURE__ */ pe({
|
|
|
2210
2225
|
_: 1
|
|
2211
2226
|
}, 8, ["style", "column-defs", "row-data", "search-value", "columnVisibility", "loading", "page-size"]))
|
|
2212
2227
|
], 2),
|
|
2213
|
-
(
|
|
2214
|
-
a(
|
|
2228
|
+
(u(), O(ut, { to: "body" }, [
|
|
2229
|
+
a(jl, zt(Lt(o(v))), null, 16)
|
|
2215
2230
|
])),
|
|
2216
|
-
(
|
|
2231
|
+
(u(), O(ut, { to: "body" }, [
|
|
2217
2232
|
a(J, {
|
|
2218
2233
|
"dismiss-away": "",
|
|
2219
2234
|
modelValue: ae.value,
|
|
2220
2235
|
"onUpdate:modelValue": f[5] || (f[5] = (M) => ae.value = M)
|
|
2221
2236
|
}, {
|
|
2222
|
-
default:
|
|
2237
|
+
default: y(() => [
|
|
2223
2238
|
a(me, {
|
|
2224
2239
|
class: "pb-8",
|
|
2225
2240
|
items: ye,
|
|
@@ -2236,5 +2251,5 @@ const zn = /* @__PURE__ */ pe({
|
|
|
2236
2251
|
}
|
|
2237
2252
|
});
|
|
2238
2253
|
export {
|
|
2239
|
-
|
|
2254
|
+
So as default
|
|
2240
2255
|
};
|