@feedmepos/mf-inventory-portal 1.8.0-dev.4 → 1.8.0-dev.5
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-FeJnwZme.js → App-DEbWEOwe.js} +609 -558
- package/dist/{ApprovalView-Eo-cGWyA.js → ApprovalView-BEnYHIlU.js} +9 -9
- package/dist/{BindingsDialog-DkjuXydb.js → BindingsDialog-CJVkMoBS.js} +2 -2
- package/dist/{BindingsPicker-DUOQcOlj.js → BindingsPicker-CX9o-xdQ.js} +2 -2
- package/dist/{BindingsTable-CoDdU5xh.js → BindingsTable-Cil4LJ7l.js} +4 -4
- package/dist/{BulkReceiveRequestView-BGh8fbEX.js → BulkReceiveRequestView-DYEc2jPw.js} +19 -19
- package/dist/{ChangeLocationComponent.vue_vue_type_script_setup_true_lang-CStISRqy.js → ChangeLocationComponent.vue_vue_type_script_setup_true_lang-DoAv2mHA.js} +1 -1
- package/dist/{ClosingDraftView-Cwnhrv5P.js → ClosingDraftView-Bz94Iejf.js} +20 -20
- package/dist/{ClosingHistoryView-oHf77Lal.js → ClosingHistoryView-B479Y-mH.js} +5 -5
- package/dist/{ClosingTemplateView-1P8J1vAn.js → ClosingTemplateView-F_nx43n6.js} +18 -18
- package/dist/{CustomPrintTemplatePreview.vue_vue_type_script_setup_true_lang-BuEPaqQK.js → CustomPrintTemplatePreview.vue_vue_type_script_setup_true_lang-DddYGHxQ.js} +1 -1
- package/dist/{DefaultView-3Z8aVFSU.js → DefaultView-CkZOl0ov.js} +2 -2
- package/dist/{DeliveryOrderPrintPreview-uT_e3Suw.js → DeliveryOrderPrintPreview-BJEpwAX6.js} +2 -2
- package/dist/{EmailDialog.vue_vue_type_script_setup_true_lang-BCgnXxEi.js → EmailDialog.vue_vue_type_script_setup_true_lang-BW988AoC.js} +23 -23
- package/dist/FeatureCapabilityBadge.vue_vue_type_script_setup_true_lang-Izn-hTjK.js +297 -0
- package/dist/{FmDateRangePickerChip.vue_vue_type_script_setup_true_lang-BlKpGdCx.js → FmDateRangePickerChip.vue_vue_type_script_setup_true_lang-CoUWxHlj.js} +1 -1
- package/dist/{FmFilterableMenuOptions.vue_vue_type_script_setup_true_lang-DKkxn1J-.js → FmFilterableMenuOptions.vue_vue_type_script_setup_true_lang-Ci81xTbl.js} +2 -2
- package/dist/{FmInventoryTableToolbar.vue_vue_type_script_setup_true_lang-dOXDST-E.js → FmInventoryTableToolbar.vue_vue_type_script_setup_true_lang-CnaHTAUZ.js} +2 -2
- package/dist/{FmMultiselectDialog-DRxZAkcu.js → FmMultiselectDialog-BE8BlO6_.js} +2 -2
- package/dist/FmMultiselectDialog-COKgBmPZ.js +123 -0
- package/dist/{FmUnitInput.vue_vue_type_script_setup_true_lang-DRSzQqVJ.js → FmUnitInput.vue_vue_type_script_setup_true_lang-BQHd3NjM.js} +6 -6
- package/dist/ImportView-Crb_yrNb.js +1291 -0
- package/dist/{IngredientsView-N9U7tdI_.js → IngredientsView-lDypeR4c.js} +34 -35
- package/dist/{IntegrationExplorerView-CjmeGQ14.js → IntegrationExplorerView-DgOFGj7H.js} +4 -4
- package/dist/{IntegrationView-DAdpmuxx.js → IntegrationView-0sbjINo5.js} +973 -974
- package/dist/{InventoryBindingForm-CAj3MurI.js → InventoryBindingForm-BhyrjIXJ.js} +1 -1
- package/dist/InventoryBindingForm.vue_vue_type_script_setup_true_lang-KCz_BQ6T.js +472 -0
- package/dist/{InventoryBindingSummary-B-1OBUdw.js → InventoryBindingSummary-CsfNKd1r.js} +1 -1
- package/dist/{NumberPrecisionInput.vue_vue_type_script_setup_true_lang-CUYYEuW3.js → NumberPrecisionInput.vue_vue_type_script_setup_true_lang-C32OoIBz.js} +1 -1
- package/dist/{ProductionRunDetailView-eFvl8-By.js → ProductionRunDetailView-BxbDtGMo.js} +4 -4
- package/dist/{ProductionRunLifecycleDialogs.vue_vue_type_script_setup_true_lang-DaC7e4qS.js → ProductionRunLifecycleDialogs.vue_vue_type_script_setup_true_lang-BdJVvwSP.js} +9 -9
- package/dist/{ProductionRunView-C_NJJKLr.js → ProductionRunView-CJhNEIzT.js} +3 -3
- package/dist/{PublishView-BglAEkzU.js → PublishView-vkt6-D6P.js} +3 -3
- package/dist/{PurchaseOrderPrintPreview-BTF9ikpQ.js → PurchaseOrderPrintPreview-25dHfVKp.js} +2 -2
- package/dist/{ReceiveRequestView-BUvehG10.js → ReceiveRequestView-BO4Z2dZu.js} +13 -13
- package/dist/RecipeView-B_AE7QQv.js +3428 -0
- package/dist/{SettingsView-DRR86cHo.js → SettingsView-qTUvQCuu.js} +164 -168
- package/dist/{StockView-D1oEnbZp.js → StockView-yh6qkYUS.js} +267 -267
- package/dist/{SubsidiaryTreeDialog.vue_vue_type_script_setup_true_lang-CxU92-io.js → SubsidiaryTreeDialog.vue_vue_type_script_setup_true_lang-Cn_fx9qG.js} +1 -1
- package/dist/{SupplierView-D68wz0-g.js → SupplierView-Dqzu1Bvh.js} +14 -14
- package/dist/{SurchargeView-Cw9rTw2h.js → SurchargeView-CDosn36c.js} +7 -7
- package/dist/{SystemTrailDialog.vue_vue_type_script_setup_true_lang-Az-a1Dsp.js → SystemTrailDialog.vue_vue_type_script_setup_true_lang-DZ3Gdlp9.js} +2 -2
- package/dist/{TemplatePublishDialog.vue_vue_type_script_setup_true_lang-C-sxbacO.js → TemplatePublishDialog.vue_vue_type_script_setup_true_lang-CWoh2FqQ.js} +1 -1
- package/dist/{TransferDetails.vue_vue_type_script_setup_true_lang-CsHfLaCv.js → TransferDetails.vue_vue_type_script_setup_true_lang-BtjKnIwf.js} +690 -666
- package/dist/{TransferTemplateView-CHPJMjYC.js → TransferTemplateView-fDZcC9i4.js} +20 -20
- package/dist/{UnitCostHistoryView-DM8OzWhe.js → UnitCostHistoryView-CmTTIXAp.js} +4 -4
- package/dist/{UnitDisplayControl.vue_vue_type_script_setup_true_lang-DpwK5mFH.js → UnitDisplayControl.vue_vue_type_script_setup_true_lang-DZihCM0T.js} +4 -4
- package/dist/{UnitView-90uR-ZzQ.js → UnitView-BTx59sFK.js} +8 -8
- package/dist/{WarehouseView-Bulg6Vac.js → WarehouseView-BIFe08FJ.js} +8 -8
- package/dist/{WastageTemplateView-BmAHnnwm.js → WastageTemplateView-B_oJqm0_.js} +15 -15
- package/dist/api/feature-flags.d.ts +2 -0
- package/dist/api/license.d.ts +0 -2
- package/dist/{app-Ccdgbe4f.js → app-DyEvx3Em.js} +1628 -1817
- package/dist/app.d.ts +0 -150
- package/dist/app.js +1 -1
- package/dist/{closing-template-DuBZxoXx.js → closing-template-FgcLy4RT.js} +1 -1
- package/dist/{date2-IBrLdtni.js → date2-Rv4IwT9a.js} +1 -1
- package/dist/{dayjs.min-DEkq-Hpp.js → dayjs.min-DOq1QM_M.js} +1 -1
- package/dist/{decimal-g6jRdlSk.js → decimal-7vA05AaD.js} +2 -2
- package/dist/{defineDeepModel-P5a5Ffpn.js → defineDeepModel-22Md2SKY.js} +1 -1
- package/dist/{duplicate-template-Do8s80ei.js → duplicate-template-D2tjCY7C.js} +1 -1
- package/dist/{feature-ChVm5JED.js → feature-BMTKl6PK.js} +1999 -3092
- package/dist/feature-flags/portal-feature-catalog.d.ts +0 -2
- package/dist/{format-time-from-id-BgbBOII7.js → format-time-from-id-DXhm_Ji1.js} +1 -1
- package/dist/{format-unit-display-hSXy2iu6.js → format-unit-display-DxWLjFPz.js} +13 -13
- package/dist/helper/menu-usage-module.d.ts +1 -1
- package/dist/{id-to-date-DlGYysU8.js → id-to-date-VKlOL3mN.js} +1 -1
- package/dist/{import-export.helper-LrZhiz2W.js → import-export.helper-BiF5aKUp.js} +6 -6
- package/dist/{index-BTNJ1fk2.js → index-DEl_gZn0.js} +3 -3
- package/dist/{index-DsOmtywr.js → index-DdtsVAcv.js} +1 -1
- package/dist/{index-DCiNwlw2.js → index-DoBWE4Ci.js} +1 -1
- package/dist/{lz-string-DRuyjE9G.js → lz-string-BwQj8QRN.js} +1 -1
- package/dist/{netsuite-B6y8GZCP.js → netsuite-s1S33-lP.js} +2 -2
- package/dist/{number-Besn-1-5.js → number-BmKjsNrc.js} +3 -3
- package/dist/{predefined-templates-D92mN_2S.js → predefined-templates-BZ2KqNix.js} +1 -1
- package/dist/{purchase-order-template-hvq2pfWx.js → purchase-order-template-CINU4my1.js} +1 -1
- package/dist/{recalculationUtils-BlZR5O2G.js → recalculationUtils-R5tFu_ts.js} +1 -1
- package/dist/router/name.d.ts +0 -1
- package/dist/{row-action.enum-R2bi3eAv.js → row-action.enum-ePO-Py0V.js} +1 -1
- package/dist/{rules-DzwoRKUS.js → rules-BZrZVzw7.js} +2 -2
- package/dist/{stock-Cq37EARQ.js → stock-C2HOKq0k.js} +8 -8
- package/dist/{stock-oJqnUrtt.js → stock-Ce1UvAZ3.js} +1 -1
- package/dist/stores/feature.d.ts +9 -9
- package/dist/stores/inventory.d.ts +0 -47
- package/dist/stores/supplier.d.ts +1 -1
- package/dist/style.css +1 -1
- package/dist/{supplier-DtdwvcPr.js → supplier-DgT66emI.js} +2 -2
- package/dist/{surcharge-CjdJGIsM.js → surcharge-CsVMuzPM.js} +1 -1
- package/dist/tsconfig.app.tsbuildinfo +1 -1
- package/dist/{uom-rules-BqPn_GoZ.js → uom-rules-CR1XukyM.js} +1 -1
- package/dist/{use-ingredient-select-dialog-0hRCj6Fu.js → use-ingredient-select-dialog-CJkG4hEX.js} +2 -2
- package/dist/use-inventory-binding-dialog-B36kPj4V.js +113 -0
- package/dist/{use-template-enabled-locations-8ZfTj4YB.js → use-template-enabled-locations-Boa9QLPV.js} +2 -2
- package/dist/{use-transfer-locations-BGS1EBEt.js → use-transfer-locations-BxOygSUg.js} +2 -2
- package/dist/{useHrmPermission-BcQ2KPD-.js → useHrmPermission-DLHAqbLV.js} +1 -1
- package/dist/{useNavigationMenu-DImtns81.js → useNavigationMenu-D6abZMGz.js} +65 -74
- package/dist/{useSseClient-DPSFFVci.js → useSseClient-C7pff-EW.js} +1 -1
- package/dist/views/ingredients/components/inventory-binding/InventoryBindingForm.vue.d.ts +0 -1
- package/dist/views/ingredients/components/inventory-binding/composables/use-inventory-binding-dialog.d.ts +0 -1
- package/dist/views/ingredients/components/inventory-binding/v2/InventoryBindingFormV2.vue.d.ts +0 -1
- package/dist/views/ingredients/components/inventory-binding/v2/composables/use-inventory-binding-dialog.d.ts +0 -1
- package/dist/views/ingredients/helper/is-linked-ingredient-error.d.ts +1 -1
- package/dist/views/integration/components/IntegrationCard.vue.d.ts +3 -3
- package/dist/views/recipe/helper/bulk-edit-simulation.helper.d.ts +0 -1
- package/dist/views/recipe/helper/import-recipe.d.ts +2 -2
- package/dist/{vue-i18n-DTyGIjTI.js → vue-i18n-CpOOFhVU.js} +219 -219
- package/dist/{xlsx.util-CK9Lnq3Q.js → xlsx.util-xwI5tVz6.js} +2 -2
- package/package.json +4 -4
- package/dist/DeprecateSoonWarningDialog.vue_vue_type_script_setup_true_lang-D_vmtZDZ.js +0 -58
- package/dist/FeatureCapabilityBadge.vue_vue_type_script_setup_true_lang-D-RzUmqA.js +0 -81
- package/dist/FmMultiselectDialog-C8uYx8rr.js +0 -77
- package/dist/ImportView-Qigtf3ik.js +0 -1302
- package/dist/IngredientBindedItem.vue_vue_type_script_setup_true_lang-B8PJeYrP.js +0 -51
- package/dist/IngredientGroupView-RNYZLkQu.js +0 -1000
- package/dist/InventoryBindingForm.vue_vue_type_script_setup_true_lang-3pYuu62C.js +0 -563
- package/dist/RecipeView-DO5-jgwh.js +0 -3624
- package/dist/feature-flags/premium-flags.spec.d.ts +0 -1
- package/dist/random-CSbEbElR.js +0 -10
- package/dist/use-inventory-binding-dialog-BLRcIC1u.js +0 -152
- package/dist/usePromise-CbVUCxhj.js +0 -29
- package/dist/views/ingredient-group/IngredientGroupView.vue.d.ts +0 -3
- package/dist/views/ingredient-group/components/ingredient-group-dialog/IngredientGroupDialog.vue.d.ts +0 -31
- package/dist/views/ingredient-group/components/ingredient-group-dialog/IngredientGroupDialogProps.d.ts +0 -10
- package/dist/views/ingredient-group/components/ingredient-group-form/IngredientGroupForm.vue.d.ts +0 -21
- package/dist/views/ingredient-group/components/ingredient-group-form/IngredientGroupFormProps.d.ts +0 -12
- package/dist/views/ingredient-group/components/ingredient-group-rule-field/IngredientGroupRuleField.vue.d.ts +0 -37
- package/dist/views/ingredient-group/composables/use-ingredient-group-actions.d.ts +0 -24
- package/dist/views/ingredient-group/composables/use-ingredient-group-rule-item.d.ts +0 -31
- package/dist/views/ingredient-group/composables/use-ingredient-group-table.d.ts +0 -77
package/dist/{use-ingredient-select-dialog-0hRCj6Fu.js → use-ingredient-select-dialog-CJkG4hEX.js}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineStore as S } from "pinia";
|
|
2
|
-
import { a as b } from "./app-
|
|
3
|
-
import { a as A } from "./FmMultiselectDialog-
|
|
2
|
+
import { a as b } from "./app-DyEvx3Em.js";
|
|
3
|
+
import { a as A } from "./FmMultiselectDialog-BE8BlO6_.js";
|
|
4
4
|
import { useDialog as I } from "@feedmepos/ui-library";
|
|
5
5
|
import { useI18n as D } from "@feedmepos/mf-common";
|
|
6
6
|
const w = S(
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { a as y } from "./FmMultiselectDialog-BE8BlO6_.js";
|
|
2
|
+
import { a as S } from "./app-DyEvx3Em.js";
|
|
3
|
+
import { useDialog as E } from "@feedmepos/ui-library";
|
|
4
|
+
function w() {
|
|
5
|
+
const c = S(), g = E();
|
|
6
|
+
async function _(s, p, d, f = []) {
|
|
7
|
+
var n, a;
|
|
8
|
+
const b = s.filter((i) => i.type === "SKU"), l = s.filter((i) => i.type !== "SKU"), r = /* @__PURE__ */ new Set();
|
|
9
|
+
if (d)
|
|
10
|
+
for (const i of c.skus)
|
|
11
|
+
!f.some((o) => o === i._id) && i._id !== d && !((a = (n = i.convert) == null ? void 0 : n.inventoryBindings) != null && a.some((o) => o.id === d)) || r.add(i._id);
|
|
12
|
+
const m = c.skus.map((i) => ({
|
|
13
|
+
label: i.name,
|
|
14
|
+
sublabel: `${i.code}${r.has(i._id) ? " (Cannot bind, will cause recursive binding)" : ""}`,
|
|
15
|
+
value: i,
|
|
16
|
+
disabled: r.has(i._id)
|
|
17
|
+
})), u = m.filter(
|
|
18
|
+
(i) => b.find((t) => t.id === i.value._id) && !r.has(i.value._id)
|
|
19
|
+
).map((i) => i.value);
|
|
20
|
+
g.open({
|
|
21
|
+
title: "Select ingredients",
|
|
22
|
+
contentComponent: y,
|
|
23
|
+
contentComponentProps: {
|
|
24
|
+
items: m,
|
|
25
|
+
modelValue: u,
|
|
26
|
+
virtualScroll: !0
|
|
27
|
+
},
|
|
28
|
+
primaryActions: {
|
|
29
|
+
text: "Confirm",
|
|
30
|
+
close: !0
|
|
31
|
+
},
|
|
32
|
+
secondaryActions: {
|
|
33
|
+
text: "Close",
|
|
34
|
+
close: !0,
|
|
35
|
+
variant: "tertiary"
|
|
36
|
+
}
|
|
37
|
+
}).onPrimary((i) => {
|
|
38
|
+
const t = [
|
|
39
|
+
...l,
|
|
40
|
+
...s.filter((o) => i.find((e) => e._id === o.id)),
|
|
41
|
+
...i.filter((o) => !s.find((e) => e.id === o._id)).map((o) => ({
|
|
42
|
+
type: "SKU",
|
|
43
|
+
id: o._id,
|
|
44
|
+
amount: {
|
|
45
|
+
amount: 1,
|
|
46
|
+
precision: 0
|
|
47
|
+
}
|
|
48
|
+
}))
|
|
49
|
+
];
|
|
50
|
+
p(t);
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
async function v(s, p, d = []) {
|
|
54
|
+
var u;
|
|
55
|
+
const f = s.filter((n) => n.type === "RECIPE"), b = s.filter((n) => n.type !== "RECIPE"), l = /* @__PURE__ */ new Set();
|
|
56
|
+
if (d.length)
|
|
57
|
+
for (const n of c.recipes) {
|
|
58
|
+
const a = ((u = c.recipeBindingFlattenCache[n._id]) == null ? void 0 : u.inventoryBindings) ?? [], i = a.some(
|
|
59
|
+
(e) => e.bindingPaths.some((C) => d.some((h) => h === C.id))
|
|
60
|
+
), t = a.some(
|
|
61
|
+
(e) => "success" in e && d.includes(e.ingredient._id)
|
|
62
|
+
);
|
|
63
|
+
(d.some((e) => e === n._id) || i || t) && l.add(n._id);
|
|
64
|
+
}
|
|
65
|
+
const r = c.recipes.filter((n) => !d.includes(n._id)).map((n) => ({
|
|
66
|
+
label: n.name,
|
|
67
|
+
sublabel: l.has(n._id) ? "(Cannot bind, will cause recursive binding)" : `${n.contains.length} inventory bindings`,
|
|
68
|
+
value: n,
|
|
69
|
+
disabled: l.has(n._id)
|
|
70
|
+
})), m = r.filter(
|
|
71
|
+
(n) => f.find((a) => a.id === n.value._id) && !l.has(n.value._id)
|
|
72
|
+
).map((n) => n.value);
|
|
73
|
+
g.open({
|
|
74
|
+
title: "Select recipes",
|
|
75
|
+
contentComponent: y,
|
|
76
|
+
contentComponentProps: {
|
|
77
|
+
items: r,
|
|
78
|
+
modelValue: m,
|
|
79
|
+
virtualScroll: !0
|
|
80
|
+
},
|
|
81
|
+
primaryActions: {
|
|
82
|
+
text: "Confirm",
|
|
83
|
+
close: !0
|
|
84
|
+
},
|
|
85
|
+
secondaryActions: {
|
|
86
|
+
text: "Close",
|
|
87
|
+
close: !0,
|
|
88
|
+
variant: "tertiary"
|
|
89
|
+
}
|
|
90
|
+
}).onPrimary((n) => {
|
|
91
|
+
const a = [
|
|
92
|
+
...s.filter((i) => n.find((t) => t._id === i.id)),
|
|
93
|
+
...n.filter((i) => !s.find((t) => t.id === i._id)).map((i) => ({
|
|
94
|
+
type: "RECIPE",
|
|
95
|
+
id: i._id,
|
|
96
|
+
amount: {
|
|
97
|
+
amount: 1,
|
|
98
|
+
precision: 0
|
|
99
|
+
}
|
|
100
|
+
})),
|
|
101
|
+
...b
|
|
102
|
+
];
|
|
103
|
+
p(a);
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
return {
|
|
107
|
+
promptIngredientsBinding: _,
|
|
108
|
+
promptRecipesBinding: v
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
export {
|
|
112
|
+
w as u
|
|
113
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { a as A } from "./FmMultiselectDialog-
|
|
2
|
-
import { u as S } from "./app-
|
|
1
|
+
import { a as A } from "./FmMultiselectDialog-BE8BlO6_.js";
|
|
2
|
+
import { u as S } from "./app-DyEvx3Em.js";
|
|
3
3
|
import { useI18n as w, useCoreStore as i, useCustomAttributes as _ } from "@feedmepos/mf-common";
|
|
4
4
|
import { useDialog as C, components as p } from "@feedmepos/ui-library";
|
|
5
5
|
import { computed as r, h as c } from "vue";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { u as g, r as l, $ as w, a2 as R } from "./app-
|
|
2
|
-
import { u as E } from "./supplier-
|
|
1
|
+
import { u as g, r as l, $ as w, a2 as R } from "./app-DyEvx3Em.js";
|
|
2
|
+
import { u as E } from "./supplier-DgT66emI.js";
|
|
3
3
|
import { computed as u } from "vue";
|
|
4
4
|
function d(n) {
|
|
5
5
|
const c = R.safeParse(n);
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { computed as
|
|
2
|
-
import { R as e, ac as
|
|
3
|
-
import { useCoreStore as
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
const
|
|
1
|
+
import { computed as R, h as C } from "vue";
|
|
2
|
+
import { R as e, ac as P, ad as O, ab as A } from "./app-DyEvx3Em.js";
|
|
3
|
+
import { useCoreStore as U, useI18n as b } from "@feedmepos/mf-common";
|
|
4
|
+
import { I as E, u as L } from "./feature-BMTKl6PK.js";
|
|
5
|
+
import { e as y, g as v, d as G, a as H } from "./FeatureCapabilityBadge.vue_vue_type_script_setup_true_lang-Izn-hTjK.js";
|
|
6
|
+
const _ = [
|
|
7
7
|
{
|
|
8
8
|
route: e.STOCK,
|
|
9
9
|
module: "Stock",
|
|
@@ -57,13 +57,6 @@ const p = [
|
|
|
57
57
|
tier: "standard",
|
|
58
58
|
description: "Manage ingredients and SKUs."
|
|
59
59
|
},
|
|
60
|
-
{
|
|
61
|
-
route: e.INGREDIENT_GROUP,
|
|
62
|
-
module: "Catalogue",
|
|
63
|
-
tier: "standard",
|
|
64
|
-
description: "Organize ingredients into reusable groups.",
|
|
65
|
-
featureKey: "ingredient-group"
|
|
66
|
-
},
|
|
67
60
|
{
|
|
68
61
|
route: e.RECIPE,
|
|
69
62
|
module: "Catalogue",
|
|
@@ -146,65 +139,68 @@ const p = [
|
|
|
146
139
|
tier: "standard",
|
|
147
140
|
description: "Inspect and manage integration records and synchronization."
|
|
148
141
|
}
|
|
149
|
-
],
|
|
150
|
-
|
|
142
|
+
], K = Object.fromEntries(
|
|
143
|
+
_.map((o) => {
|
|
151
144
|
var u;
|
|
152
|
-
const
|
|
145
|
+
const s = v(o.featureKey ?? "");
|
|
153
146
|
return [
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
key:
|
|
157
|
-
minimumTier:
|
|
158
|
-
release:
|
|
159
|
-
flagKeys:
|
|
147
|
+
o.route,
|
|
148
|
+
G({
|
|
149
|
+
key: o.route,
|
|
150
|
+
minimumTier: o.tier,
|
|
151
|
+
release: o.release ?? ((u = s == null ? void 0 : s.definition) == null ? void 0 : u.release),
|
|
152
|
+
flagKeys: s == null ? void 0 : s.flagKeys
|
|
160
153
|
})
|
|
161
154
|
];
|
|
162
155
|
})
|
|
163
156
|
);
|
|
164
|
-
function
|
|
165
|
-
return
|
|
157
|
+
function M(o) {
|
|
158
|
+
return _.find((s) => s.route === o) ?? null;
|
|
166
159
|
}
|
|
167
|
-
function
|
|
168
|
-
return
|
|
160
|
+
function F(o) {
|
|
161
|
+
return o ? K[o] ?? null : null;
|
|
169
162
|
}
|
|
170
|
-
function
|
|
171
|
-
const u =
|
|
172
|
-
return u ?
|
|
163
|
+
function Q(o, s) {
|
|
164
|
+
const u = F(o);
|
|
165
|
+
return u ? y(u, s) : { enabled: !0, disabled: !1, stage: "ga", eligible: !0 };
|
|
173
166
|
}
|
|
174
|
-
const
|
|
175
|
-
(
|
|
167
|
+
const k = O.reduce(
|
|
168
|
+
(o, s) => {
|
|
176
169
|
var u;
|
|
177
|
-
return
|
|
170
|
+
return s.name && (o[s.name] = (u = s.meta) == null ? void 0 : u.validationManifest), o;
|
|
178
171
|
},
|
|
179
172
|
{}
|
|
180
173
|
);
|
|
181
|
-
function
|
|
182
|
-
const
|
|
174
|
+
function Y() {
|
|
175
|
+
const o = U(), s = L(), { t: u } = b(), a = (r) => P(r, u), g = R(
|
|
183
176
|
() => {
|
|
184
|
-
var
|
|
185
|
-
return ((
|
|
177
|
+
var r;
|
|
178
|
+
return ((r = o.sessionUser.value) == null ? void 0 : r.permissions) ?? [];
|
|
186
179
|
}
|
|
187
|
-
), h = (
|
|
188
|
-
const t =
|
|
180
|
+
), h = (r = []) => r.length === 0 ? !0 : A(r, g.value).granted, n = (r) => {
|
|
181
|
+
const t = k[r];
|
|
189
182
|
return h(t == null ? void 0 : t.requiredCaslPermissions);
|
|
190
|
-
},
|
|
191
|
-
|
|
192
|
-
return
|
|
193
|
-
}), I = (
|
|
194
|
-
const
|
|
183
|
+
}, d = (r) => {
|
|
184
|
+
var t;
|
|
185
|
+
return ((t = s.flags.find((c) => c.name === r)) == null ? void 0 : t.beta) !== !1 && !s.isFlagOn(r);
|
|
186
|
+
}, m = (r) => r.filter((t) => !t.hide).map((t) => t.children ? { ...t, children: m(t.children) } : t).filter((t) => !t.children || t.children.length > 0), I = (r) => r.map((t) => {
|
|
187
|
+
const { hide: c, children: i, ...l } = t, T = { ...l };
|
|
188
|
+
return i && (T.children = I(i)), T;
|
|
189
|
+
}), p = (r) => r.map((t) => {
|
|
190
|
+
const c = t.value, i = M(c), l = v((i == null ? void 0 : i.featureKey) ?? ""), T = l == null ? void 0 : l.category, f = i && (i.tier === "premium" || T === "beta" || l != null && l.deprecateSoon) ? () => C(H, {
|
|
195
191
|
tier: i.tier,
|
|
196
|
-
category:
|
|
192
|
+
category: T,
|
|
197
193
|
deprecateSoon: l == null ? void 0 : l.deprecateSoon,
|
|
198
194
|
featureKey: i.featureKey
|
|
199
195
|
}) : void 0;
|
|
200
196
|
return {
|
|
201
197
|
...t,
|
|
202
|
-
badge:
|
|
203
|
-
children: t.children ?
|
|
198
|
+
badge: f,
|
|
199
|
+
children: t.children ? p(t.children) : void 0
|
|
204
200
|
};
|
|
205
|
-
}),
|
|
206
|
-
var
|
|
207
|
-
const
|
|
201
|
+
}), S = R(() => {
|
|
202
|
+
var c;
|
|
203
|
+
const r = [
|
|
208
204
|
{
|
|
209
205
|
label: a(e.STOCK),
|
|
210
206
|
children: [
|
|
@@ -216,17 +212,17 @@ function w() {
|
|
|
216
212
|
{
|
|
217
213
|
label: a(e.PRODUCTION_RUN),
|
|
218
214
|
value: e.PRODUCTION_RUN,
|
|
219
|
-
hide: !n(e.PRODUCTION_RUN) ||
|
|
215
|
+
hide: !n(e.PRODUCTION_RUN) || d(E.inventory_portal_production_item)
|
|
220
216
|
},
|
|
221
217
|
{
|
|
222
218
|
label: a(e.UNIT_COST_HISTORY),
|
|
223
219
|
value: e.UNIT_COST_HISTORY,
|
|
224
|
-
hide: !n(e.UNIT_COST_HISTORY) ||
|
|
220
|
+
hide: !n(e.UNIT_COST_HISTORY) || d(E.inventory_pos_costing)
|
|
225
221
|
},
|
|
226
222
|
{
|
|
227
223
|
label: a(e.WASTAGE_TEMPLATE),
|
|
228
224
|
value: e.WASTAGE_TEMPLATE,
|
|
229
|
-
hide: !n(e.WASTAGE_TEMPLATE) ||
|
|
225
|
+
hide: !n(e.WASTAGE_TEMPLATE) || d(E.inventory_pos_adjust_v2_wastage)
|
|
230
226
|
}
|
|
231
227
|
]
|
|
232
228
|
},
|
|
@@ -241,12 +237,12 @@ function w() {
|
|
|
241
237
|
{
|
|
242
238
|
label: a(e.CLOSING_TEMPLATE),
|
|
243
239
|
value: e.CLOSING_TEMPLATE,
|
|
244
|
-
hide: !n(e.CLOSING_TEMPLATE) ||
|
|
240
|
+
hide: !n(e.CLOSING_TEMPLATE) || d(E.inventory_pos_closing_v2)
|
|
245
241
|
},
|
|
246
242
|
{
|
|
247
243
|
label: a(e.CLOSING_DRAFT),
|
|
248
244
|
value: e.CLOSING_DRAFT,
|
|
249
|
-
hide: !n(e.CLOSING_DRAFT) ||
|
|
245
|
+
hide: !n(e.CLOSING_DRAFT) || d(E.inventory_pos_closing_v2)
|
|
250
246
|
}
|
|
251
247
|
]
|
|
252
248
|
},
|
|
@@ -255,11 +251,6 @@ function w() {
|
|
|
255
251
|
value: e.INGREDIENTS,
|
|
256
252
|
hide: !n(e.INGREDIENTS)
|
|
257
253
|
},
|
|
258
|
-
{
|
|
259
|
-
label: a(e.INGREDIENT_GROUP),
|
|
260
|
-
value: e.INGREDIENT_GROUP,
|
|
261
|
-
hide: !n(e.INGREDIENT_GROUP) || !r.enableIngredientGroup
|
|
262
|
-
},
|
|
263
254
|
{
|
|
264
255
|
label: a(e.RECIPE),
|
|
265
256
|
value: e.RECIPE,
|
|
@@ -281,7 +272,7 @@ function w() {
|
|
|
281
272
|
{
|
|
282
273
|
label: a(e.RECEIVE_REQUEST_BULK),
|
|
283
274
|
value: e.RECEIVE_REQUEST_BULK,
|
|
284
|
-
hide: !n(e.RECEIVE_REQUEST_BULK) ||
|
|
275
|
+
hide: !n(e.RECEIVE_REQUEST_BULK) || d(E.inventory_receive_request_beta)
|
|
285
276
|
},
|
|
286
277
|
{
|
|
287
278
|
label: a(e.APPROVAL),
|
|
@@ -291,12 +282,12 @@ function w() {
|
|
|
291
282
|
{
|
|
292
283
|
label: a(e.SURCHARGE),
|
|
293
284
|
value: e.SURCHARGE,
|
|
294
|
-
hide: !n(e.SURCHARGE) ||
|
|
285
|
+
hide: !n(e.SURCHARGE) || d(E.inventory_portal_surcharge)
|
|
295
286
|
},
|
|
296
287
|
{
|
|
297
288
|
label: a(e.TRANSFER_TEMPLATE),
|
|
298
289
|
value: e.TRANSFER_TEMPLATE,
|
|
299
|
-
hide: !n(e.TRANSFER_TEMPLATE) ||
|
|
290
|
+
hide: !n(e.TRANSFER_TEMPLATE) || d(E.inventory_portal_must_use_transfer_template)
|
|
300
291
|
}
|
|
301
292
|
]
|
|
302
293
|
},
|
|
@@ -318,7 +309,7 @@ function w() {
|
|
|
318
309
|
{
|
|
319
310
|
label: a(e.IMPORT),
|
|
320
311
|
value: e.IMPORT,
|
|
321
|
-
hide: !n(e.IMPORT) ||
|
|
312
|
+
hide: !n(e.IMPORT) || d(E.inventory_bulk_import)
|
|
322
313
|
},
|
|
323
314
|
{
|
|
324
315
|
label: a(e.INTEGRATION),
|
|
@@ -330,25 +321,25 @@ function w() {
|
|
|
330
321
|
value: e.SETTINGS,
|
|
331
322
|
hide: !n(e.SETTINGS)
|
|
332
323
|
}
|
|
333
|
-
], t = I(
|
|
334
|
-
return ((
|
|
324
|
+
], t = p(I(m(r)));
|
|
325
|
+
return ((c = o.currentBusiness.value) == null ? void 0 : c.menuVersion) === "v3" ? t.filter(
|
|
335
326
|
(i) => i.value !== e.INGREDIENTS && i.value !== e.RECIPE && i.value !== e.UNIT && i.value !== e.PUBLISH
|
|
336
327
|
) : t;
|
|
337
|
-
}), N =
|
|
338
|
-
function
|
|
339
|
-
for (const i of
|
|
328
|
+
}), N = R(() => {
|
|
329
|
+
function r(c) {
|
|
330
|
+
for (const i of c)
|
|
340
331
|
if (i.children && i.children.length > 0) {
|
|
341
|
-
const l =
|
|
332
|
+
const l = r(i.children);
|
|
342
333
|
if (l) return l;
|
|
343
334
|
} else if (i.value)
|
|
344
335
|
return i.value;
|
|
345
336
|
}
|
|
346
|
-
return
|
|
337
|
+
return r(S.value) ?? null;
|
|
347
338
|
});
|
|
348
|
-
return { menuItems:
|
|
339
|
+
return { menuItems: S, firstAccessibleRouteName: N };
|
|
349
340
|
}
|
|
350
341
|
export {
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
342
|
+
Q as e,
|
|
343
|
+
_ as n,
|
|
344
|
+
Y as u
|
|
354
345
|
};
|
|
@@ -7,7 +7,6 @@ export interface InventoryBindingFormProps {
|
|
|
7
7
|
iframeMode?: boolean;
|
|
8
8
|
disabled?: boolean;
|
|
9
9
|
readonly?: boolean;
|
|
10
|
-
enableIngredientGroup?: boolean;
|
|
11
10
|
/** recipe amounts may be keyed in with decimals — off keeps them whole numbers */
|
|
12
11
|
allowRecipeDecimal?: boolean;
|
|
13
12
|
}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
export declare function useInventoryBindingDialog(): {
|
|
2
2
|
promptIngredientsBinding: (currentBindings: FdoInventoryBinding[], onUpdateInventoryBindings: (bindings: FdoInventoryBinding[]) => void, excludeBindingId?: string, excludeIds?: string[]) => Promise<void>;
|
|
3
3
|
promptRecipesBinding: (currentBindings: FdoInventoryBinding[], onUpdateInventoryBindings: (mv: FdoInventoryBinding[]) => void, excludeIds?: string[]) => Promise<void>;
|
|
4
|
-
promptIngredientGroupsBinding: (currentBindings: FdoInventoryBinding[], onUpdateInventoryBindings: (mv: FdoInventoryBinding[]) => void, excludeIds?: string[]) => Promise<void>;
|
|
5
4
|
};
|
package/dist/views/ingredients/components/inventory-binding/v2/InventoryBindingFormV2.vue.d.ts
CHANGED
|
@@ -18,7 +18,6 @@ export interface InventoryBindingFormProps {
|
|
|
18
18
|
readonly?: boolean;
|
|
19
19
|
recipeBindingConfig?: InventoryRecipeBindingFormConfig;
|
|
20
20
|
skuBindingConfig?: InventorySkuBindingFormConfig;
|
|
21
|
-
enableIngredientGroup?: boolean;
|
|
22
21
|
/** recipe amounts may be keyed in with decimals — off keeps them whole numbers */
|
|
23
22
|
allowRecipeDecimal?: boolean;
|
|
24
23
|
}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
export declare function useInventoryBindingDialogV2(): {
|
|
2
2
|
promptIngredientsBinding: (currentBindings: FdoInventoryBinding[], onUpdateInventoryBindings: (bindings: FdoInventoryBinding[]) => void, excludeBindingId?: string, excludeIds?: string[]) => Promise<void>;
|
|
3
3
|
promptRecipesBinding: (currentBindings: FdoInventoryBinding[], onUpdateInventoryBindings: (mv: FdoInventoryBinding[]) => void, excludeIds?: string[]) => Promise<void>;
|
|
4
|
-
promptIngredientGroupsBinding: (currentBindings: FdoInventoryBinding[], onUpdateInventoryBindings: (mv: FdoInventoryBinding[]) => void, excludeIds?: string[]) => Promise<void>;
|
|
5
4
|
};
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
|
|
2
|
-
capability?: "
|
|
2
|
+
capability?: "beta" | "premium" | undefined;
|
|
3
3
|
}>, {
|
|
4
4
|
capability: undefined;
|
|
5
5
|
}>>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
|
|
6
|
-
capability?: "
|
|
6
|
+
capability?: "beta" | "premium" | undefined;
|
|
7
7
|
}>, {
|
|
8
8
|
capability: undefined;
|
|
9
9
|
}>>> & Readonly<{}>, {
|
|
10
|
-
capability: "
|
|
10
|
+
capability: "beta" | "premium";
|
|
11
11
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, Readonly<{
|
|
12
12
|
default(): unknown;
|
|
13
13
|
}> & {
|
|
@@ -49,7 +49,6 @@ export interface RecipeBulkEditEntry {
|
|
|
49
49
|
}
|
|
50
50
|
export type FlatBinding = FdoInventoryBinding & {
|
|
51
51
|
recipeIds: string[];
|
|
52
|
-
isGroup?: boolean;
|
|
53
52
|
};
|
|
54
53
|
export declare function flattenBindings(bindings: FdoInventoryBinding[], visitedIds: Set<string>, recipeById: Record<string, FdoInventoryRecipe>): FlatBinding[];
|
|
55
54
|
export declare function decimalsEqual(a: FdoDecimal, b: FdoDecimal): boolean;
|
|
@@ -5,7 +5,7 @@ export type ObjectWithIndex<T> = {
|
|
|
5
5
|
};
|
|
6
6
|
export interface RecipeRow {
|
|
7
7
|
recipeName: string;
|
|
8
|
-
type: 'RECIPE' | 'INGREDIENT'
|
|
8
|
+
type: 'RECIPE' | 'INGREDIENT';
|
|
9
9
|
code: string;
|
|
10
10
|
name: string;
|
|
11
11
|
amount: string;
|
|
@@ -15,7 +15,7 @@ export interface RecipeRow {
|
|
|
15
15
|
customAttributes?: string;
|
|
16
16
|
}
|
|
17
17
|
export interface RecipeContainsRow {
|
|
18
|
-
type: 'RECIPE' | 'SKU'
|
|
18
|
+
type: 'RECIPE' | 'SKU';
|
|
19
19
|
id: string;
|
|
20
20
|
amount: {
|
|
21
21
|
amount: number;
|