@feedmepos/mf-inventory-portal 1.7.9-dev.0 → 1.7.9-dev.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. package/dist/App-BYCW0L94.js +1403 -0
  2. package/dist/{ApprovalView-Bc6xo-gg.js → ApprovalView-pmI_SFo7.js} +9 -9
  3. package/dist/{BindingsDialog-BbTkoM05.js → BindingsDialog-D902flPr.js} +2 -2
  4. package/dist/{BindingsPicker-CkK79U9V.js → BindingsPicker-JEKsY59b.js} +2 -2
  5. package/dist/{BindingsTable-CmdCc1mG.js → BindingsTable-DqlzOIxF.js} +4 -4
  6. package/dist/{BulkReceiveRequestView-BOt07CYr.js → BulkReceiveRequestView-Chw7ma2k.js} +19 -19
  7. package/dist/{ChangeLocationComponent.vue_vue_type_script_setup_true_lang-YMRGpkS4.js → ChangeLocationComponent.vue_vue_type_script_setup_true_lang-Cct8Ko19.js} +1 -1
  8. package/dist/{ClosingDraftView-Dec1xuFQ.js → ClosingDraftView-D1ymRsd2.js} +19 -19
  9. package/dist/{ClosingHistoryView-DuX0UpLC.js → ClosingHistoryView-5yr_itIV.js} +5 -5
  10. package/dist/{ClosingTemplateView-DBPGxWt2.js → ClosingTemplateView-MDl5Zq-g.js} +16 -16
  11. package/dist/{CustomPrintTemplatePreview.vue_vue_type_script_setup_true_lang-DWfblvtV.js → CustomPrintTemplatePreview.vue_vue_type_script_setup_true_lang-BcG0gWV4.js} +1 -1
  12. package/dist/{DefaultView-D_XfvHrs.js → DefaultView-dOfbL3iF.js} +2 -2
  13. package/dist/{DeliveryOrderPrintPreview-DfAAAfCJ.js → DeliveryOrderPrintPreview-BfVgQOx8.js} +2 -2
  14. package/dist/{EmailDialog.vue_vue_type_script_setup_true_lang-CdcBrUHW.js → EmailDialog.vue_vue_type_script_setup_true_lang-DHspOJQW.js} +2250 -2250
  15. package/dist/{FmDateRangePickerChip.vue_vue_type_script_setup_true_lang-lge1DZ4v.js → FmDateRangePickerChip.vue_vue_type_script_setup_true_lang-B7NLu0us.js} +1 -1
  16. package/dist/{FmFilterableMenuOptions.vue_vue_type_script_setup_true_lang-DjYAwlg9.js → FmFilterableMenuOptions.vue_vue_type_script_setup_true_lang-C0nunKjx.js} +2 -2
  17. package/dist/{FmInventoryTableToolbar.vue_vue_type_script_setup_true_lang-vwp2n9KL.js → FmInventoryTableToolbar.vue_vue_type_script_setup_true_lang-CMst9tkA.js} +2 -2
  18. package/dist/{FmMultiselectDialog-BTVaIESZ.js → FmMultiselectDialog-BjBx94pY.js} +1 -1
  19. package/dist/{FmMultiselectDialog-C-kDJtv_.js → FmMultiselectDialog-Dt54hvqw.js} +2 -2
  20. package/dist/{FmUnitInput.vue_vue_type_script_setup_true_lang-Mo-hF_cA.js → FmUnitInput.vue_vue_type_script_setup_true_lang-DtG9Ieo_.js} +6 -6
  21. package/dist/{ImportView-CRAFZVSk.js → ImportView-CdZN8k_Y.js} +6 -6
  22. package/dist/{IngredientBindedItem.vue_vue_type_script_setup_true_lang-CuEDzJ0s.js → IngredientBindedItem.vue_vue_type_script_setup_true_lang-iCpYEneM.js} +1 -1
  23. package/dist/{IngredientGroupView-OeeBfJau.js → IngredientGroupView-BBVS1mKn.js} +5 -5
  24. package/dist/{IngredientsView-BHX3xUDm.js → IngredientsView-BGOaAUzR.js} +17 -16
  25. package/dist/{IntegrationExplorerView-BwxSGD2N.js → IntegrationExplorerView-UUBCmqdR.js} +4 -4
  26. package/dist/{IntegrationView-CevJNVqG.js → IntegrationView-B2YowH-i.js} +14 -14
  27. package/dist/{InventoryBindingForm-wE--IP2D.js → InventoryBindingForm-kDx6Mvhn.js} +1 -1
  28. package/dist/InventoryBindingForm.vue_vue_type_script_setup_true_lang-C8bktmYH.js +563 -0
  29. package/dist/{InventoryBindingSummary-BQ-U7tHs.js → InventoryBindingSummary-DJrBTa8_.js} +1 -1
  30. package/dist/{NumberPrecisionInput.vue_vue_type_script_setup_true_lang-jnXbX2lS.js → NumberPrecisionInput.vue_vue_type_script_setup_true_lang-DHk9uEAP.js} +1 -1
  31. package/dist/{PremiumBadge.vue_vue_type_script_setup_true_lang-BNMCbrIo.js → PremiumBadge.vue_vue_type_script_setup_true_lang-Dx1VktdW.js} +1 -1
  32. package/dist/{ProductionView-CvU9N_mb.js → ProductionView-CxUcsRBP.js} +7 -7
  33. package/dist/{PublishView-BNnxGtEQ.js → PublishView-DtP-Ms7q.js} +3 -3
  34. package/dist/{PurchaseOrderPrintPreview-Bq9kMWdx.js → PurchaseOrderPrintPreview-C_qC2KF5.js} +2 -2
  35. package/dist/{ReceiveRequestView-zUSU0Uvq.js → ReceiveRequestView-Dy3BpqsP.js} +14 -14
  36. package/dist/RecipeView-DeR7pqj8.js +3625 -0
  37. package/dist/{SettingsView-CPgsU8Kr.js → SettingsView-C7ZXmatO.js} +4 -4
  38. package/dist/{StockView-D-TJzHhP.js → StockView-wFLnNSRr.js} +21 -21
  39. package/dist/{SubsidiaryTreeDialog.vue_vue_type_script_setup_true_lang-B6ez4H3Z.js → SubsidiaryTreeDialog.vue_vue_type_script_setup_true_lang-Fxh3-Nqi.js} +1 -1
  40. package/dist/{SupplierView-D-rODe-B.js → SupplierView-CeTDNDDK.js} +12 -12
  41. package/dist/{SurchargeView-C88KTCML.js → SurchargeView-BQJnCdPA.js} +6 -6
  42. package/dist/{SystemTrailDialog.vue_vue_type_script_setup_true_lang-CFIK8eEl.js → SystemTrailDialog.vue_vue_type_script_setup_true_lang-D1zxuH66.js} +2 -2
  43. package/dist/{TemplatePublishDialog.vue_vue_type_script_setup_true_lang-BNjjTYtk.js → TemplatePublishDialog.vue_vue_type_script_setup_true_lang-BFkh3Ubb.js} +1 -1
  44. package/dist/{TransferDetails.vue_vue_type_script_setup_true_lang-E0FeDPFB.js → TransferDetails.vue_vue_type_script_setup_true_lang-CZVDhXNz.js} +20 -20
  45. package/dist/{TransferTemplateView-f9A4-wEL.js → TransferTemplateView-XaI2T5fa.js} +20 -20
  46. package/dist/{UnitCostHistoryView-D26St5yl.js → UnitCostHistoryView-DTNW7-mk.js} +4 -4
  47. package/dist/{UnitDisplayControl.vue_vue_type_script_setup_true_lang-D2z5vabu.js → UnitDisplayControl.vue_vue_type_script_setup_true_lang-vRsEjVJc.js} +4 -4
  48. package/dist/{UnitView-algS_4rD.js → UnitView-DXnyzkj3.js} +7 -7
  49. package/dist/{WarehouseView-BRM-euG4.js → WarehouseView-iEHFgIqh.js} +5 -5
  50. package/dist/{WastageTemplateView-BWPYvTMC.js → WastageTemplateView-CGDUCPbr.js} +14 -14
  51. package/dist/api/changelog.d.ts +69 -1
  52. package/dist/{app-BI1fLJ8H.js → app-BIXJtvvD.js} +35 -23
  53. package/dist/app.d.ts +26 -8
  54. package/dist/app.js +1 -1
  55. package/dist/{closing-template-DRQ-A04S.js → closing-template-CLY-r6Cf.js} +1 -1
  56. package/dist/{date2-paxg81i_.js → date2-DbYQycSa.js} +1 -1
  57. package/dist/{dayjs.min-CqWwbKI1.js → dayjs.min-Dv7-fEed.js} +1 -1
  58. package/dist/{decimal-tY0JrFld.js → decimal-B8YR17QC.js} +2 -2
  59. package/dist/{defineDeepModel-CaP78Goh.js → defineDeepModel-C5ncgNxj.js} +1 -1
  60. package/dist/{duplicate-template-pTXXQ0VS.js → duplicate-template-CAlG1nzV.js} +1 -1
  61. package/dist/{feature-B2r32qOO.js → feature-BLSNLI5y.js} +2 -2
  62. package/dist/{format-time-from-id-DXMYus4N.js → format-time-from-id-D5DcWpHS.js} +1 -1
  63. package/dist/{format-unit-display-5hlsZBY2.js → format-unit-display-Ch97dVXx.js} +12 -12
  64. package/dist/{import-export.helper-BiC2Ghbl.js → import-export.helper-CvUFSOa1.js} +6 -6
  65. package/dist/{index-rqdAWR69.js → index-Bk8DOv4n.js} +3306 -3232
  66. package/dist/{index-KP2-U9x_.js → index-CXzVUrJS.js} +3 -3
  67. package/dist/{index-B7eouqPa.js → index-rRPErzP4.js} +1 -1
  68. package/dist/{inventory-core-dart.default-ClRRaGtG.js → inventory-core-dart.default-Cj7CxnpK.js} +1 -1
  69. package/dist/{lz-string-CAl-OrXa.js → lz-string-DWkGPESZ.js} +1 -1
  70. package/dist/{netsuite-cH4OybGV.js → netsuite-Cn0y1rH3.js} +2 -2
  71. package/dist/{number-BzmDQm_s.js → number-CxbQxQwj.js} +3 -3
  72. package/dist/{predefined-templates-Baz8GEGx.js → predefined-templates-CrSoG3R9.js} +1 -1
  73. package/dist/{purchase-order-template-0So3c2iS.js → purchase-order-template-BmQQnrEl.js} +1 -1
  74. package/dist/{recalculationUtils-DJlz5mJL.js → recalculationUtils-CSnowXma.js} +1 -1
  75. package/dist/{rules-BKdtla9-.js → rules-CurdOAcA.js} +2 -2
  76. package/dist/{stock-D8M5e53w.js → stock-BdDR_L8p.js} +1 -1
  77. package/dist/{stock-HCSCwSH0.js → stock-BiqEgcgU.js} +3 -3
  78. package/dist/style.css +1 -1
  79. package/dist/{supplier-1mbcQSiQ.js → supplier-CsjbmP_P.js} +2 -2
  80. package/dist/{surcharge-DuxYBaWV.js → surcharge--kBjIIst.js} +1 -1
  81. package/dist/tsconfig.app.tsbuildinfo +1 -1
  82. package/dist/{uom-rules-Dkbgtow8.js → uom-rules-D8UPS06O.js} +1 -1
  83. package/dist/{use-ingredient-select-dialog-BXvBvELI.js → use-ingredient-select-dialog-BZdrpLOE.js} +2 -2
  84. package/dist/{use-inventory-binding-dialog-2lrzHWdQ.js → use-inventory-binding-dialog-CkNxixT2.js} +2 -2
  85. package/dist/{use-template-enabled-locations-CrDuAaCj.js → use-template-enabled-locations-Dkl1_1F-.js} +2 -2
  86. package/dist/{use-transfer-locations-C4oTuW_f.js → use-transfer-locations-Bmj4zTJj.js} +2 -2
  87. package/dist/{useHrmPermission-CxeYlUgA.js → useHrmPermission-DcBe_-Q6.js} +1 -1
  88. package/dist/{useNavigationMenu-BWgwgA4U.js → useNavigationMenu-CsRbtAc7.js} +2 -2
  89. package/dist/{useSseClient-DPA1zg96.js → useSseClient-hl2SQF5b.js} +1 -1
  90. package/dist/views/changelog/components/ChangelogPanel.spec.d.ts +1 -0
  91. package/dist/views/changelog/components/ChangelogPanel.vue.d.ts +2 -0
  92. package/dist/views/changelog/composables/use-changelog.d.ts +54 -2
  93. package/dist/views/changelog/composables/use-inventory-record-commits.d.ts +97 -0
  94. package/dist/views/changelog/composables/use-inventory-record-commits.spec.d.ts +1 -0
  95. package/dist/views/changelog/composables/use-snapshot-diff.d.ts +29 -0
  96. package/dist/views/changelog/composables/use-snapshot-diff.spec.d.ts +1 -0
  97. package/dist/views/changelog/composables/value-tree.d.ts +14 -0
  98. package/dist/views/changelog/composables/value-tree.spec.d.ts +1 -0
  99. package/dist/views/ingredients/components/inventory-binding/InventoryBindingForm.vue.d.ts +2 -0
  100. package/dist/views/ingredients/components/inventory-binding/RecipeBindingBreakdown.vue.d.ts +25 -0
  101. package/dist/views/ingredients/components/inventory-binding/composables/recipe-breakdown.d.ts +34 -0
  102. package/dist/views/ingredients/components/inventory-binding/composables/recipe-breakdown.spec.d.ts +1 -0
  103. package/dist/views/ingredients/components/inventory-binding/v2/InventoryBindingFormV2.vue.d.ts +2 -0
  104. package/dist/views/ingredients/components/inventory-binding/v2/components/InventoryRecipeBindingV2Field.vue.d.ts +4 -0
  105. package/dist/views/recipe/composables/use-recipe-table.d.ts +11 -0
  106. package/dist/{vue-i18n-BSfpVmaF.js → vue-i18n-yL99yI4f.js} +169 -169
  107. package/dist/{xlsx.util-DSA9o0Zu.js → xlsx.util-B8azJxkS.js} +2 -2
  108. package/package.json +2 -2
  109. package/dist/App-DvBMEcuJ.js +0 -1155
  110. package/dist/InventoryBindingForm.vue_vue_type_script_setup_true_lang-O5IbSGWu.js +0 -441
  111. package/dist/RecipeView-DkXOK1Iy.js +0 -3584
@@ -1,441 +0,0 @@
1
- import { defineComponent as oe, computed as x, reactive as te, resolveComponent as B, createElementBlock as c, openBlock as d, createVNode as u, createElementVNode as n, createCommentVNode as v, withCtx as I, createBlock as w, toDisplayString as p, unref as i, Fragment as U, renderList as G, nextTick as le } from "vue";
2
- import { a as ie, t as se, v as de, F as re } from "./app-BI1fLJ8H.js";
3
- import { a as h, c as ae } from "./number-BzmDQm_s.js";
4
- import { u as ue } from "./use-inventory-binding-dialog-2lrzHWdQ.js";
5
- import { b as $, c as A } from "./rules-BKdtla9-.js";
6
- import { _ as me, c as ce, d as pe } from "./FmUnitInput.vue_vue_type_script_setup_true_lang-Mo-hF_cA.js";
7
- import { useI18n as ye } from "@feedmepos/mf-common";
8
- const fe = { class: "flex flex-col gap-24" }, ve = { class: "flex flex-col gap-16" }, be = { class: "flex items-center" }, _e = { class: "flex-1 fm-typo-en-title-sm-600" }, xe = { class: "flex flex-col" }, ge = { class: "flex py-8 px-12 border-b border-fm-color-neutral-gray-200 bg-fm-color-neutral-gray-100 h-[44px] items-center" }, he = { class: "fm-typo-en-body-md-600 text-fm-color-typo-secondary" }, Ve = { class: "flex flex-col w-full border-b border-fm-color-neutral-gray-100" }, ke = {
9
- class: "flex items-center",
10
- style: { "min-height": "48px" }
11
- }, Be = { class: "flex-1 fm-typo-en-body-md-400 py-8 px-12" }, Ie = { class: "flex flex-col" }, we = { class: "line-clamp-1" }, Fe = { class: "w-[200px]" }, Ue = {
12
- key: 0,
13
- class: "w-[52px]"
14
- }, Ce = {
15
- key: 0,
16
- class: "flex gap-4 text-fm-color-system-error-400 fm-typo-en-body-sm-400 px-8"
17
- }, Ee = {
18
- key: 0,
19
- class: "flex flex-col gap-16"
20
- }, Ge = { class: "flex items-center" }, Ae = { class: "flex-1 fm-typo-en-title-sm-600" }, Re = { class: "flex flex-col" }, Se = { class: "flex py-8 px-12 border-b border-fm-color-neutral-gray-200 bg-fm-color-neutral-gray-100 h-[44px] items-center" }, Pe = { class: "fm-typo-en-body-md-600 text-fm-color-typo-secondary" }, Te = { class: "flex flex-col w-full border-b border-fm-color-neutral-gray-100" }, Me = {
21
- key: 0,
22
- class: "flex gap-4 text-fm-color-system-error-400 fm-typo-en-body-sm-400"
23
- }, Ne = {
24
- class: "flex items-center",
25
- style: { "min-height": "48px" }
26
- }, $e = { class: "flex-1 fm-typo-en-body-md-400 py-8 px-12" }, ze = { class: "flex flex-col" }, De = { class: "w-[200px]" }, Ke = {
27
- key: 0,
28
- class: "w-[52px]"
29
- }, je = { class: "flex flex-col gap-16" }, Le = { class: "flex items-center" }, Oe = { class: "flex-1 fm-typo-en-title-sm-600" }, Ye = { class: "flex flex-col" }, We = { class: "flex py-8 px-12 border-b border-fm-color-neutral-gray-200 bg-fm-color-neutral-gray-100 h-[44px] items-center" }, qe = { class: "flex-1 fm-typo-en-body-md-600 text-fm-color-typo-secondary" }, He = { class: "fm-typo-en-body-md-600 text-fm-color-typo-secondary w-[150px] px-16" }, Je = {
30
- key: 0,
31
- class: "flex flex-col border-b border-fm-color-neutral-gray-100"
32
- }, Qe = {
33
- class: "flex items-center w-full",
34
- style: { "min-height": "48px" }
35
- }, Xe = { class: "flex-1 fm-typo-en-body-md-400 py-8 px-12 text-fm-color-typo-secondary line-clamp-1" }, Ze = {
36
- key: 0,
37
- class: "w-[52px]"
38
- }, en = { class: "flex gap-4 text-fm-color-system-error-400 fm-typo-en-body-sm-400 px-12 pb-4" }, nn = {
39
- key: 1,
40
- class: "flex flex-col border-b border-fm-color-neutral-gray-100"
41
- }, on = {
42
- class: "flex items-center w-full",
43
- style: { "min-height": "48px" }
44
- }, tn = { class: "flex-1 fm-typo-en-body-md-400 py-8 px-12" }, ln = { class: "line-clamp-1 w-full" }, sn = { class: "w-[150px]" }, dn = {
45
- key: 0,
46
- class: "w-[52px]"
47
- }, rn = { class: "flex flex-col px-12 pb-4" }, vn = /* @__PURE__ */ oe({
48
- __name: "InventoryBindingForm",
49
- props: {
50
- id: {},
51
- modelValue: { default: () => [] },
52
- excludeBindingId: {},
53
- rules: { default: () => [] },
54
- iframeMode: { type: Boolean },
55
- disabled: { type: Boolean },
56
- readonly: { type: Boolean },
57
- enableIngredientGroup: { type: Boolean }
58
- },
59
- emits: ["update:modelValue", "click:pick-inventory-bindings"],
60
- setup(z, { emit: D }) {
61
- const { t: m } = ye(), g = ie(), R = x(() => g.recipeById), V = x(() => g.skuById), K = x(() => g.skuGroupById), s = z, b = D, S = x(() => se({
62
- parentId: s.id,
63
- bindings: s.modelValue,
64
- recipes: g.recipes.map((t) => t._id === s.id ? {
65
- ...t,
66
- contains: s.modelValue
67
- } : t),
68
- skus: g.skus.map((t) => t._id === s.id ? {
69
- ...t,
70
- convert: {
71
- inventoryBindings: s.modelValue
72
- }
73
- } : t),
74
- skuGroups: g.skuGroups
75
- }).inventoryBindings.filter((t) => "error" in t && t.error).map((t) => t).filter((t) => t.reason === de.enum.circularDependency)), C = x(
76
- () => new Set(S.value.map((e) => {
77
- var l;
78
- return (l = e.bindingPaths[0]) == null ? void 0 : l.id;
79
- }))
80
- ), j = x(() => s.modelValue.filter((e) => e.type === "RECIPE")), { promptIngredientsBinding: L, promptRecipesBinding: O, promptIngredientGroupsBinding: Y } = ue();
81
- async function W() {
82
- if (s.iframeMode) {
83
- b("click:pick-inventory-bindings", "RECIPE");
84
- return;
85
- }
86
- O(
87
- s.modelValue,
88
- (e) => b("update:modelValue", e),
89
- s.id ? [s.id] : []
90
- );
91
- }
92
- const q = x(() => s.modelValue.filter((e) => e.type === "SKU_GROUP"));
93
- async function H() {
94
- Y(
95
- s.modelValue,
96
- (e) => b("update:modelValue", e),
97
- s.id ? [s.id] : []
98
- );
99
- }
100
- const P = x(() => s.modelValue.filter((e) => e.type === "SKU") ?? []);
101
- async function J() {
102
- if (s.iframeMode) {
103
- b("click:pick-inventory-bindings", "SKU");
104
- return;
105
- }
106
- L(
107
- s.modelValue,
108
- (e) => b("update:modelValue", e),
109
- s.excludeBindingId,
110
- s.id ? [s.id] : []
111
- );
112
- }
113
- function T(e, l, t) {
114
- const a = +l;
115
- let f = t;
116
- l.length > 0 && isFinite(a) ? f = t.map((y) => (y.id !== e || (y.amount = ae(a)), y)) : f = t.map((y) => (y.id !== e || (y.amount = { amount: 0, precision: 0 }), y)), b("update:modelValue", f);
117
- }
118
- function F(e, l) {
119
- const t = l.filter((a) => a.id !== e);
120
- b("update:modelValue", t);
121
- }
122
- function M(e) {
123
- var t, a;
124
- if (e.type !== re.enum.SKU)
125
- throw new Error("Non-SKU binding does not have unit");
126
- if (!((t = V.value[e.id]) == null ? void 0 : t.unit))
127
- throw new Error(`Cannot find ingredient: ${e.id}`);
128
- return (a = V.value[e.id]) == null ? void 0 : a.unit;
129
- }
130
- function Q(e) {
131
- return !V.value[e.id];
132
- }
133
- function X(e) {
134
- return { amount: e.amount, measurement: e.measurement };
135
- }
136
- function Z(e, l, t) {
137
- const a = t.map((f) => f.id !== e ? f : {
138
- ...f,
139
- amount: l.amount,
140
- measurement: l.measurement
141
- });
142
- b("update:modelValue", a);
143
- }
144
- const N = te({});
145
- function ee(e) {
146
- return N[e.id] ?? {
147
- modelValue: {
148
- amount: e.amount,
149
- measurement: e.measurement
150
- },
151
- amountAsString: h(e.amount)
152
- };
153
- }
154
- function ne(e, l) {
155
- le(() => {
156
- N[e.id] = {
157
- modelValue: {
158
- amount: e.amount,
159
- measurement: e.measurement
160
- },
161
- amountAsString: l
162
- };
163
- });
164
- }
165
- return (e, l) => {
166
- const t = B("FmFormGroup"), a = B("FmButton"), f = B("FmTooltip"), y = B("FmTextField"), E = B("FmIcon");
167
- return d(), c("div", fe, [
168
- u(t, {
169
- disabled: e.disabled,
170
- "model-value": e.modelValue,
171
- rules: [
172
- ...e.rules,
173
- () => S.value.length ? "There is a binding error in your configuration" : !0
174
- ]
175
- }, {
176
- label: I(() => l[0] || (l[0] = [
177
- n("div", { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, " Define the inventory bindings for this recipe or ingredient. ", -1)
178
- ])),
179
- _: 1
180
- }, 8, ["disabled", "model-value", "rules"]),
181
- n("div", ve, [
182
- n("div", be, [
183
- n("div", _e, p(i(m)("inventory.inventoryBindings.recipe")), 1),
184
- e.readonly ? v("", !0) : (d(), w(a, {
185
- key: 0,
186
- variant: "secondary",
187
- "text-color": "primary",
188
- "border-color": "primary",
189
- label: i(m)("inventory.inventoryBindings.linkRecipe"),
190
- "prepend-icon": "link",
191
- onClick: W
192
- }, null, 8, ["label"]))
193
- ]),
194
- n("div", xe, [
195
- n("div", ge, [
196
- n("div", he, p(i(m)("inventory.inventoryBindings.recipe")), 1),
197
- l[1] || (l[1] = n("div", { class: "w-[200px]" }, null, -1)),
198
- l[2] || (l[2] = n("div", { class: "w-[52px]" }, null, -1))
199
- ]),
200
- (d(!0), c(U, null, G(j.value, (o) => (d(), w(t, {
201
- key: o.id,
202
- disabled: e.disabled,
203
- modelValue: +i(h)(o.amount ?? { amount: 1, precision: 0 }),
204
- rules: [i($)(0), i(A)(-1)]
205
- }, {
206
- default: I(({ invalid: k }) => {
207
- var _;
208
- return [
209
- n("div", Ve, [
210
- n("div", ke, [
211
- n("div", Be, [
212
- n("div", Ie, [
213
- u(f, {
214
- zIndex: 51,
215
- variant: "plain",
216
- placement: "top",
217
- content: (_ = R.value[o.id]) == null ? void 0 : _.name
218
- }, {
219
- default: I(() => {
220
- var r;
221
- return [
222
- n("span", we, p((r = R.value[o.id]) == null ? void 0 : r.name), 1)
223
- ];
224
- }),
225
- _: 2
226
- }, 1032, ["content"])
227
- ])
228
- ]),
229
- n("div", Fe, [
230
- u(y, {
231
- class: "w-full",
232
- disabled: e.disabled,
233
- modelValue: +i(h)(o.amount ?? { amount: 1, precision: 0 }),
234
- "onUpdate:modelValue": (r) => T(o.id, r, e.modelValue),
235
- invalid: k
236
- }, null, 8, ["disabled", "modelValue", "onUpdate:modelValue", "invalid"])
237
- ]),
238
- e.readonly ? v("", !0) : (d(), c("div", Ue, [
239
- u(a, {
240
- disabled: e.disabled,
241
- type: "button",
242
- variant: "plain",
243
- icon: "delete",
244
- "icon-color": "#000000",
245
- onClick: (r) => F(o.id, e.modelValue)
246
- }, null, 8, ["disabled", "onClick"])
247
- ]))
248
- ]),
249
- C.value.has(o.id) ? (d(), c("div", Ce, [
250
- u(E, {
251
- name: "error",
252
- color: "system-error-300",
253
- size: "sm"
254
- }),
255
- n("div", null, p(i(m)("inventory.inventoryBindings.circularError")), 1)
256
- ])) : v("", !0)
257
- ])
258
- ];
259
- }),
260
- _: 2
261
- }, 1032, ["disabled", "modelValue", "rules"]))), 128))
262
- ])
263
- ]),
264
- e.enableIngredientGroup ? (d(), c("div", Ee, [
265
- n("div", Ge, [
266
- n("div", Ae, p(i(m)("inventory.inventoryBindings.ingredientGroup")), 1),
267
- e.readonly ? v("", !0) : (d(), w(a, {
268
- key: 0,
269
- variant: "secondary",
270
- "text-color": "primary",
271
- "border-color": "primary",
272
- label: i(m)("inventory.inventoryBindings.linkIngredientGroup"),
273
- "prepend-icon": "link",
274
- onClick: H
275
- }, null, 8, ["label"]))
276
- ]),
277
- n("div", Re, [
278
- n("div", Se, [
279
- n("div", Pe, p(i(m)("inventory.inventoryBindings.ingredientGroup")), 1),
280
- l[3] || (l[3] = n("div", { class: "w-[200px]" }, null, -1)),
281
- l[4] || (l[4] = n("div", { class: "w-[52px]" }, null, -1))
282
- ]),
283
- (d(!0), c(U, null, G(q.value, (o) => (d(), w(t, {
284
- key: o.id,
285
- disabled: e.disabled,
286
- modelValue: +i(h)(o.amount ?? { amount: 1, precision: 0 }),
287
- rules: [i($)(0), i(A)(0)]
288
- }, {
289
- default: I(({ invalid: k }) => {
290
- var _;
291
- return [
292
- n("div", Te, [
293
- C.value.has(o.id) ? (d(), c("div", Me, [
294
- u(E, {
295
- name: "error",
296
- color: "system-error-300",
297
- size: "sm"
298
- }),
299
- n("div", null, p(i(m)("inventory.inventoryBindings.circularError")), 1)
300
- ])) : v("", !0),
301
- n("div", Ne, [
302
- n("div", $e, [
303
- n("div", ze, p((_ = K.value[o.id]) == null ? void 0 : _.name), 1)
304
- ]),
305
- n("div", De, [
306
- u(y, {
307
- class: "w-full",
308
- disabled: e.disabled,
309
- modelValue: +i(h)(o.amount ?? { amount: 1, precision: 0 }),
310
- "onUpdate:modelValue": (r) => T(o.id, r, e.modelValue),
311
- invalid: k
312
- }, null, 8, ["disabled", "modelValue", "onUpdate:modelValue", "invalid"])
313
- ]),
314
- e.readonly ? v("", !0) : (d(), c("div", Ke, [
315
- u(a, {
316
- disabled: e.disabled,
317
- type: "button",
318
- variant: "plain",
319
- icon: "delete",
320
- "icon-color": "#000000",
321
- onClick: (r) => F(o.id, e.modelValue)
322
- }, null, 8, ["disabled", "onClick"])
323
- ]))
324
- ])
325
- ])
326
- ];
327
- }),
328
- _: 2
329
- }, 1032, ["disabled", "modelValue", "rules"]))), 128))
330
- ])
331
- ])) : v("", !0),
332
- n("div", je, [
333
- n("div", Le, [
334
- n("div", Oe, p(i(m)("inventory.inventoryBindings.ingredient")), 1),
335
- e.readonly ? v("", !0) : (d(), w(a, {
336
- key: 0,
337
- variant: "secondary",
338
- "text-color": "primary",
339
- "border-color": "primary",
340
- label: i(m)("inventory.inventoryBindings.linkIngredient"),
341
- "prepend-icon": "link",
342
- onClick: J
343
- }, null, 8, ["label"]))
344
- ]),
345
- n("div", Ye, [
346
- n("div", We, [
347
- n("div", qe, p(i(m)("inventory.inventoryBindings.ingredient")), 1),
348
- n("div", He, p(i(m)("inventory.inventoryBindings.amount")), 1),
349
- l[5] || (l[5] = n("div", { class: "w-[52px]" }, null, -1))
350
- ]),
351
- (d(!0), c(U, null, G(P.value, (o, k) => {
352
- var _;
353
- return d(), c(U, {
354
- key: o.id
355
- }, [
356
- Q(o) ? (d(), c("div", Je, [
357
- n("div", Qe, [
358
- n("div", Xe, p(o.id), 1),
359
- e.readonly ? v("", !0) : (d(), c("div", Ze, [
360
- u(a, {
361
- disabled: e.disabled,
362
- type: "button",
363
- variant: "tertiary",
364
- icon: "delete",
365
- onClick: (r) => F(o.id, e.modelValue)
366
- }, null, 8, ["disabled", "onClick"])
367
- ]))
368
- ]),
369
- n("div", en, [
370
- u(E, {
371
- name: "error",
372
- color: "system-error-300",
373
- size: "sm"
374
- }),
375
- n("div", null, p(i(m)("inventory.inventoryBindings.missingIngredient")), 1)
376
- ])
377
- ])) : (d(), c("div", nn, [
378
- n("div", on, [
379
- n("div", tn, [
380
- u(f, {
381
- zIndex: 51,
382
- variant: "plain",
383
- placement: "top",
384
- content: (_ = V.value[o.id]) == null ? void 0 : _.name
385
- }, {
386
- default: I(() => {
387
- var r;
388
- return [
389
- n("span", ln, p((r = V.value[o.id]) == null ? void 0 : r.name), 1)
390
- ];
391
- }),
392
- _: 2
393
- }, 1032, ["content"])
394
- ]),
395
- n("div", sn, [
396
- u(me, {
397
- "model-value": X(o),
398
- "onUpdate:modelValue": (r) => r && Z(o.id, r, e.modelValue),
399
- "onUpdate:amount": (r) => ne(o, r),
400
- unit: M(o),
401
- placement: k === P.value.length - 1 ? "top" : "bottom",
402
- "convert-amount-on-change-unit": "",
403
- disabled: e.readonly
404
- }, null, 8, ["model-value", "onUpdate:modelValue", "onUpdate:amount", "unit", "placement", "disabled"])
405
- ]),
406
- e.readonly ? v("", !0) : (d(), c("div", dn, [
407
- u(a, {
408
- disabled: e.disabled,
409
- type: "button",
410
- variant: "tertiary",
411
- icon: "delete",
412
- onClick: (r) => F(o.id, e.modelValue)
413
- }, null, 8, ["disabled", "onClick"])
414
- ]))
415
- ]),
416
- n("div", rn, [
417
- u(t, {
418
- modelValue: +i(h)(o.amount ?? { amount: 1, precision: 0 }),
419
- rules: [i(A)(0)]
420
- }, null, 8, ["modelValue", "rules"]),
421
- u(t, {
422
- modelValue: ee(o),
423
- rules: [
424
- i(ce)(),
425
- i(pe)(M(o)),
426
- () => C.value.has(o.id) ? i(m)("inventory.inventoryBindings.invalidWarning") : !0
427
- ]
428
- }, null, 8, ["modelValue", "rules"])
429
- ])
430
- ]))
431
- ], 64);
432
- }), 128))
433
- ])
434
- ])
435
- ]);
436
- };
437
- }
438
- });
439
- export {
440
- vn as _
441
- };