@feedmepos/mf-inventory-portal 0.0.22-dev.4 → 0.0.22-dev.40

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 (106) hide show
  1. package/dist/{ApprovalView-xF73Z1jN.js → ApprovalView-JOsQBu1z.js} +25 -26
  2. package/dist/{BindingsDialog-CCSAxGT4.js → BindingsDialog-DG2ZolH1.js} +9 -9
  3. package/dist/{BindingsPicker-ErFH0uEQ.js → BindingsPicker-B7h_iST8.js} +22 -22
  4. package/dist/{BindingsTable-D8ffJgIJ.js → BindingsTable-BToh6gcG.js} +1 -1
  5. package/dist/ClosingTemplateView-BwMJAxuz.js +1688 -0
  6. package/dist/FmDroppableField-CJNAT3h2.js +152 -0
  7. package/dist/FmFilterableMenuOptions.vue_vue_type_script_setup_true_lang-4NHQdjz7.js +266 -0
  8. package/dist/FmInventoryTableToolbar.vue_vue_type_script_setup_true_lang-Cc_P0kss.js +364 -0
  9. package/dist/IngredientBindedItem.vue_vue_type_script_setup_true_lang-DMOalXUS.js +51 -0
  10. package/dist/IngredientsView-ChnCqdWi.js +1611 -0
  11. package/dist/{IntegrationView-54yz2EqS.js → IntegrationView-NWkc9PLW.js} +71 -71
  12. package/dist/{NumberPrecisionInput.vue_vue_type_script_setup_true_lang-CKvKlCk-.js → NumberPrecisionInput.vue_vue_type_script_setup_true_lang-BQW6HYyD.js} +1 -1
  13. package/dist/PremiumBadge.vue_vue_type_script_setup_true_lang-BQqcpZIJ.js +116 -0
  14. package/dist/{PurchaseOrderPrintPreview-pcpWSfl4.js → PurchaseOrderPrintPreview-BvED8ZbQ.js} +7 -7
  15. package/dist/ReceiveRequestView-DdxBaqmU.js +4069 -0
  16. package/dist/RecipeView-YdSRy_yP.js +591 -0
  17. package/dist/Standalone.vue.d.ts +2 -0
  18. package/dist/StockView-WF5z4dTF.js +7762 -0
  19. package/dist/{SupplierView-TYCkPXan.js → SupplierView-H2Vi5lSs.js} +111 -111
  20. package/dist/TransferDetails.vue_vue_type_script_setup_true_lang-D48gSqHW.js +1137 -0
  21. package/dist/TransferTemplateView-DeT32cat.js +2054 -0
  22. package/dist/{UnitView-B9yE4-rc.js → UnitView-qD9JSdHT.js} +18 -18
  23. package/dist/{WarehouseView-DUtVLTjb.js → WarehouseView-C19Dd53y.js} +176 -177
  24. package/dist/api/bill.d.ts +84 -238
  25. package/dist/api/closing-template.d.ts +6 -4
  26. package/dist/api/inventory.d.ts +72 -85
  27. package/dist/api/netsuite.d.ts +47 -0
  28. package/dist/api/purchase-order-template.d.ts +4 -6
  29. package/dist/{app-w8TOQVZc.js → app-DKE_n9Mo.js} +24520 -23671
  30. package/dist/app.d.ts +7 -0
  31. package/dist/app.js +3 -3
  32. package/dist/components/FmFilterableMenuOptions.vue.d.ts +54 -0
  33. package/dist/components/FmMinMaxInputRules.d.ts +2 -0
  34. package/dist/components/FmUnitInputRules.d.ts +2 -0
  35. package/dist/components/map/GoogleMap.vue.d.ts +4 -4
  36. package/dist/{decimal-C4q7UMfr.js → decimal-veoPLYim.js} +1 -1
  37. package/dist/defineDeepModel-u6t3hXU9.js +13 -0
  38. package/dist/format-time-from-id-8gjg5B98.js +15 -0
  39. package/dist/helper/rules.d.ts +7 -0
  40. package/dist/helper/rules.spec.d.ts +1 -0
  41. package/dist/helper/xlsx.util.d.ts +7 -0
  42. package/dist/purchase-order-transaction-type-CIDEpjJB.js +348 -0
  43. package/dist/stores/api.d.ts +1 -0
  44. package/dist/stores/feature.d.ts +0 -1
  45. package/dist/stores/helper/core-store-proxy.d.ts +3 -0
  46. package/dist/stores/helper/generate-backend-urls.d.ts +1 -0
  47. package/dist/stores/inventory.d.ts +85 -0
  48. package/dist/stores/location.d.ts +508 -503
  49. package/dist/stores/netsuite.d.ts +69 -0
  50. package/dist/stores/route.d.ts +0 -5
  51. package/dist/stores/supplier.d.ts +120 -3
  52. package/dist/style.css +1 -1
  53. package/dist/supplier-DLcmVScz.js +70 -0
  54. package/dist/tsconfig.app.tsbuildinfo +1 -1
  55. package/dist/use-template-enabled-locations-2-CdJVJikY.js +85 -0
  56. package/dist/views/closing-template/closing-template-import/ClosingTemplateImportItem.vue.d.ts +12 -0
  57. package/dist/views/closing-template/closing-template-import/ClosingTemplateImportItemProps.d.ts +7 -0
  58. package/dist/views/closing-template/composables/use-closing-template-actions.d.ts +1093 -1026
  59. package/dist/views/closing-template/composables/use-closing-template-table.d.ts +1098 -1037
  60. package/dist/views/closing-template/helpers/import-export.helper.d.ts +58 -0
  61. package/dist/views/ingredients/composables/use-ingredient-form.d.ts +2 -2
  62. package/dist/views/receive-request/components/transfer-details/TransferDetailsProps.d.ts +1 -0
  63. package/dist/views/receive-request/components/transfer-form/NetSuiteField.vue.d.ts +45 -0
  64. package/dist/views/receive-request/components/transfer-form/TransferForm.vue.d.ts +1944 -82
  65. package/dist/views/receive-request/components/transfer-form/TransferFormProps.d.ts +1 -0
  66. package/dist/views/receive-request/composables/use-receive-request-form.d.ts +2351 -284
  67. package/dist/views/receive-request/composables/use-receive-request-table.d.ts +2300 -233
  68. package/dist/views/recipe/composables/use-recipe-form.d.ts +2 -2
  69. package/dist/views/stock/components/StockRecordCard.vue.d.ts +42 -119
  70. package/dist/views/stock/composables/use-stock-action.d.ts +2 -2
  71. package/dist/views/transfer-template/components/transfer-template-details/TransferTemplateDetails.vue.d.ts +0 -2
  72. package/dist/views/transfer-template/components/transfer-template-details/TransferTemplateDetailsProps.d.ts +0 -1
  73. package/dist/views/transfer-template/components/transfer-template-form/composables/use-template-enabled-locations-2.d.ts +13 -0
  74. package/dist/views/transfer-template/components/transfer-template-form/composables/use-template-enabled-locations.d.ts +71 -85
  75. package/dist/views/transfer-template/components/transfer-template-form/composables/use-transfer-locations.d.ts +39 -2
  76. package/dist/views/transfer-template/components/transfer-template-import/TransferTemplateImport.vue.d.ts +2 -0
  77. package/dist/views/transfer-template/components/transfer-template-import/TransferTemplateImportItem.vue.d.ts +12 -0
  78. package/dist/views/transfer-template/components/transfer-template-import/TransferTemplateImportItemProps.d.ts +9 -0
  79. package/dist/views/transfer-template/composables/use-transfer-template-actions.d.ts +1263 -1466
  80. package/dist/views/transfer-template/composables/use-transfer-template-table.d.ts +1688 -897
  81. package/dist/views/transfer-template/helpers/import-export.helper.d.ts +76 -0
  82. package/dist/views/transfer-template/helpers/remove-deleted-skus.helper.d.ts +1 -0
  83. package/dist/views/transfer-template/helpers/template-item.error.helper.d.ts +1 -0
  84. package/dist/views/unit/composables/use-unit-form.d.ts +2 -2
  85. package/dist/{xlsx-BggStaH1.js → xlsx-CrKrCGZz.js} +1525 -1525
  86. package/dist/xlsx.util-Bcpkvw1Z.js +78 -0
  87. package/package.json +5 -5
  88. package/dist/ClosingTemplateView-DdZlX1ug.js +0 -1030
  89. package/dist/FmInventoryTableToolbar.vue_vue_type_script_setup_true_lang-ZYtBNoaE.js +0 -372
  90. package/dist/IngredientsView-DnwwQJTN.js +0 -1758
  91. package/dist/PremiumBadge.vue_vue_type_script_setup_true_lang-Bom_KvXW.js +0 -88
  92. package/dist/ReceiveRequestView-D5HXMY4Z.js +0 -215
  93. package/dist/RecipeView-BHkTgm5H.js +0 -581
  94. package/dist/StockView-iczCFYxn.js +0 -1892
  95. package/dist/TransferDetails.vue_vue_type_script_setup_true_lang-EN3JgHKF.js +0 -740
  96. package/dist/TransferDialog.vue_vue_type_script_setup_true_lang-DC0Ss5hi.js +0 -1409
  97. package/dist/TransferTemplateView-Bbvpuys7.js +0 -1230
  98. package/dist/defineDeepModel-BOApqV24.js +0 -13
  99. package/dist/format-time-from-id-Cafjo8fn.js +0 -15
  100. package/dist/id-to-date-CtSHSVJF.js +0 -30
  101. package/dist/layout/layout-routes.d.ts +0 -6
  102. package/dist/purchase-order-transaction-type-CIC5h-6x.js +0 -712
  103. package/dist/supplier-CM-vZ4bQ.js +0 -69
  104. package/dist/use-template-enabled-locations-Bm00vEzC.js +0 -57
  105. package/dist/xlsx.util-CqlYZLKW.js +0 -109
  106. /package/dist/{layout/InventoryLayout.vue.d.ts → views/closing-template/closing-template-import/ClosingTemplateImport.vue.d.ts} +0 -0
@@ -0,0 +1,364 @@
1
+ import { reactive as q, onUnmounted as G, defineComponent as T, computed as g, resolveComponent as y, openBlock as a, createElementBlock as b, Fragment as M, createElementVNode as m, unref as r, normalizeClass as D, toDisplayString as R, createCommentVNode as h, renderList as I, createBlock as k, createVNode as _, renderSlot as J, Teleport as K, ref as O, withCtx as S, watch as X, mergeModels as Z, useModel as U } from "vue";
2
+ import { FmButtonVariant as ee, useBreakpoints as A } from "@feedmepos/ui-library";
3
+ import { i as Y, V as z } from "./app-DKE_n9Mo.js";
4
+ import { useCoreStore as ne, useI18n as j } from "@feedmepos/mf-common";
5
+ const H = q({});
6
+ function Q() {
7
+ const i = `${Math.random()}`, t = new ResizeObserver((o) => {
8
+ const l = o.map((n) => n.target.scrollHeight).reduce((n, s) => n + s);
9
+ H[i] = l;
10
+ }), d = (o) => {
11
+ const l = o.el;
12
+ l && t.observe(l);
13
+ }, u = (o) => {
14
+ const l = o.el;
15
+ l && t.unobserve(l);
16
+ };
17
+ return G(() => {
18
+ t.disconnect(), delete H[i];
19
+ }), {
20
+ get tableHeight() {
21
+ return {
22
+ height: `calc(100dvh - ${Object.values(H).reduce((n, s) => n + s, 0) + 64}px)`
23
+ };
24
+ },
25
+ onMounted: d,
26
+ onUnmounted: u
27
+ };
28
+ }
29
+ const te = { class: "flex flex-col w-full bg-white h-full" }, oe = {
30
+ key: 0,
31
+ class: /* @__PURE__ */ D(["text-fm-color-typo-secondary fm-typo-en-body-sm-400"])
32
+ }, le = { key: 0 }, ae = { key: 1 }, se = { class: "bg-white flex-1" }, ue = { class: "fixed bottom-96 right-16" }, Be = /* @__PURE__ */ T({
33
+ __name: "SingleColumnLayout",
34
+ props: {
35
+ actions: { default: () => [] },
36
+ title: { default: "Title" },
37
+ description: {},
38
+ showBackButton: { type: Boolean },
39
+ defaultPadding: { type: Boolean },
40
+ breadcrumbs: { default: () => [] },
41
+ usingBusinessHelperText: {}
42
+ },
43
+ emits: ["click:action"],
44
+ setup(i, { emit: t }) {
45
+ const d = i, u = t, o = g(() => d.actions.find((e) => e.isPrimary)), l = g(
46
+ () => d.actions.filter((e) => !e.isPrimary).map((e) => ({ ...e, variant: e.variant ?? ee.Tertiary }))
47
+ ), { breakpoints: n } = A(), s = g(() => n.value.xs || n.value.sm), v = Y(), w = g(() => v.businessLevel), x = Q();
48
+ return (e, p) => {
49
+ const B = y("FmButton");
50
+ return a(), b(M, null, [
51
+ m("div", te, [
52
+ m("div", {
53
+ onVnodeMounted: p[1] || (p[1] = //@ts-ignore
54
+ (...f) => r(x).onMounted && r(x).onMounted(...f)),
55
+ class: D([
56
+ "flex gap-4",
57
+ {
58
+ "p-12": s.value,
59
+ "px-24 py-16": !s.value
60
+ }
61
+ ])
62
+ }, [
63
+ m("div", {
64
+ class: D([
65
+ "flex-1 flex flex-col gap-4 fm-typo-en-title-md-600 bg-white",
66
+ {
67
+ "py-12": s.value
68
+ }
69
+ ])
70
+ }, [
71
+ m("div", null, R(e.title), 1),
72
+ e.usingBusinessHelperText && w.value ? (a(), b("div", oe, R(e.usingBusinessHelperText), 1)) : h("", !0)
73
+ ], 2),
74
+ l.value.length ? (a(), b("div", le, [
75
+ (a(!0), b(M, null, I(l.value, (f) => (a(), k(B, {
76
+ key: f.value,
77
+ label: f.label,
78
+ "prepend-icon": f.prependIcon,
79
+ variant: f.variant,
80
+ onClick: (N) => u("click:action", f.value)
81
+ }, null, 8, ["label", "prepend-icon", "variant", "onClick"]))), 128))
82
+ ])) : h("", !0),
83
+ o.value && (r(n).lg || r(n).md) ? (a(), b("div", ae, [
84
+ _(B, {
85
+ label: o.value.label,
86
+ "prepend-icon": o.value.prependIcon,
87
+ onClick: p[0] || (p[0] = (f) => u("click:action", o.value.value))
88
+ }, null, 8, ["label", "prepend-icon"])
89
+ ])) : h("", !0)
90
+ ], 2),
91
+ m("div", se, [
92
+ J(e.$slots, "default")
93
+ ])
94
+ ]),
95
+ o.value && s.value ? (a(), k(K, {
96
+ key: 0,
97
+ to: "body"
98
+ }, [
99
+ m("div", ue, [
100
+ _(B, {
101
+ label: o.value.label,
102
+ "prepend-icon": o.value.prependIcon,
103
+ onClick: p[2] || (p[2] = (f) => u("click:action", o.value.value)),
104
+ variant: "fab"
105
+ }, null, 8, ["label", "prepend-icon"])
106
+ ])
107
+ ])) : h("", !0)
108
+ ], 64);
109
+ };
110
+ }
111
+ }), re = { class: "inline-flex" }, ie = { class: "inline-flex rounded-md items-center gap-4 justify-center h-[30px] px-8 py-4 bg-fm-color-neutral-gray-100 cursor-pointer text-fm-color-neutral-gray-400" }, ce = { class: "fm-typo-en-body-md-600 select-none text-ellipsis overflow-hidden whitespace-nowrap" }, de = { class: "relative" }, me = { class: "sticky top-0 py-8 bg-white translate-y-[-12px]" }, ve = /* @__PURE__ */ T({
112
+ __name: "ChangeLocationComponent",
113
+ props: {
114
+ showBusiness: { type: Boolean }
115
+ },
116
+ setup(i) {
117
+ const t = Y(), d = ne(), u = g(() => {
118
+ var e;
119
+ return (e = d.currentBusiness.value) == null ? void 0 : e.name;
120
+ }), { t: o } = j(), l = O(""), n = g({
121
+ get() {
122
+ return t.businessLevel;
123
+ },
124
+ set(e) {
125
+ t.businessLevel = e;
126
+ }
127
+ }), s = g(
128
+ () => t.locations.map((e) => ({ label: e.name, value: e.dbName, type: e.type })).filter(
129
+ (e) => l.value ? e.label.toLocaleLowerCase().includes(l.value.toLocaleLowerCase()) : !0
130
+ )
131
+ ), v = g(
132
+ () => s.value.filter((e) => e.type === "restaurant")
133
+ ), w = g(
134
+ () => s.value.filter((e) => e.type === "warehouse")
135
+ );
136
+ function x({ value: e }) {
137
+ n.value = !1, t.selectLocation(t.locations.find((p) => p.dbName === e));
138
+ }
139
+ return (e, p) => {
140
+ const B = y("FmIcon"), f = y("FmSearch"), N = y("FmMenuHeader"), E = y("FmMenuDivider"), L = y("FmMenuItem"), W = y("FmMenu");
141
+ return a(), b("div", re, [
142
+ _(W, { "close-on-click": !0 }, {
143
+ "menu-button": S(() => {
144
+ var c;
145
+ return [
146
+ m("div", ie, [
147
+ _(B, {
148
+ name: e.showBusiness && n.value ? "store" : "storefront",
149
+ size: "sm"
150
+ }, null, 8, ["name"]),
151
+ m("div", ce, R(e.showBusiness && n.value ? u.value : ((c = r(t)._currentLocation) == null ? void 0 : c.name) ?? r(o)("inventory.common.noLocationSelected")), 1),
152
+ _(B, {
153
+ name: "expand_more",
154
+ size: "sm"
155
+ })
156
+ ])
157
+ ];
158
+ }),
159
+ default: S(() => [
160
+ m("div", de, [
161
+ m("div", me, [
162
+ _(f, {
163
+ "model-value": l.value,
164
+ "onUpdate:modelValue": p[0] || (p[0] = (c) => l.value = c),
165
+ placeholder: r(o)("inventory.common.table.toolbar.filterItems")
166
+ }, null, 8, ["model-value", "placeholder"])
167
+ ]),
168
+ m("div", null, [
169
+ e.showBusiness ? (a(), b(M, { key: 0 }, [
170
+ _(N, {
171
+ label: r(o)("inventory.common.business")
172
+ }, null, 8, ["label"]),
173
+ _(E),
174
+ _(L, {
175
+ "model-value": n.value,
176
+ label: u.value,
177
+ sublabel: "Business",
178
+ onClick: p[1] || (p[1] = (c) => n.value = !0)
179
+ }, null, 8, ["model-value", "label"])
180
+ ], 64)) : h("", !0),
181
+ (a(!0), b(M, null, I(v.value, (c) => {
182
+ var F;
183
+ return a(), k(L, {
184
+ key: c.value,
185
+ "model-value": !n.value && ((F = r(t)._currentLocation) == null ? void 0 : F.dbName) === c.value,
186
+ label: c.label,
187
+ sublabel: "Restaurant",
188
+ onClick: ($) => x(c),
189
+ onVnodeMounted: ($) => {
190
+ var V, C;
191
+ return !n.value && ((V = r(t)._currentLocation) == null ? void 0 : V.dbName) === c.value && ((C = $.el) == null || C.scrollIntoView({ behavior: "smooth", block: "center" })), void 0;
192
+ }
193
+ }, null, 8, ["model-value", "label", "onClick", "onVnodeMounted"]);
194
+ }), 128)),
195
+ (a(!0), b(M, null, I(w.value, (c) => {
196
+ var F;
197
+ return a(), k(L, {
198
+ key: c.value,
199
+ "model-value": !n.value && ((F = r(t)._currentLocation) == null ? void 0 : F.dbName) === c.value,
200
+ label: c.label,
201
+ sublabel: "Warehouse",
202
+ onClick: ($) => x(c),
203
+ onVnodeMounted: ($) => {
204
+ var V, C;
205
+ return !n.value && ((V = r(t)._currentLocation) == null ? void 0 : V.dbName) === c.value && ((C = $.el) == null || C.scrollIntoView({ behavior: "smooth", block: "center" })), void 0;
206
+ }
207
+ }, null, 8, ["model-value", "label", "onClick", "onVnodeMounted"]);
208
+ }), 128)),
209
+ !e.showBusiness && !v.value.length && !w.value.length ? (a(), k(L, {
210
+ key: 1,
211
+ disabled: "",
212
+ label: r(o)("inventory.common.noResultFound")
213
+ }, null, 8, ["label"])) : h("", !0)
214
+ ])
215
+ ])
216
+ ]),
217
+ _: 1
218
+ })
219
+ ]);
220
+ };
221
+ }
222
+ });
223
+ function Me() {
224
+ const i = /* @__PURE__ */ new Date();
225
+ return i.setDate(i.getDate() - 15), {
226
+ start: i,
227
+ end: /* @__PURE__ */ new Date()
228
+ };
229
+ }
230
+ function P(i = 15) {
231
+ const t = /* @__PURE__ */ new Date();
232
+ t.setDate(t.getDate() - i);
233
+ const d = t, u = /* @__PURE__ */ new Date();
234
+ return {
235
+ startDate: `${z(d)}`,
236
+ endDate: `${z(u)}`
237
+ };
238
+ }
239
+ const pe = { class: "inline-flex rounded-md items-center gap-4 justify-center h-[30px] px-8 py-4 bg-fm-color-neutral-gray-100 cursor-pointer text-fm-color-neutral-gray-400" }, be = { class: "fm-typo-en-body-md-600 select-none text-ellipsis overflow-hidden whitespace-nowrap" }, fe = /* @__PURE__ */ T({
240
+ __name: "FmDateRangePickerChip",
241
+ props: {
242
+ modelValue: { default: (i) => i.modelValue ?? P() }
243
+ },
244
+ emits: ["update:modelValue"],
245
+ setup(i, { emit: t }) {
246
+ const d = t, u = O(P());
247
+ X(u, (l) => {
248
+ d("update:modelValue", l);
249
+ });
250
+ const o = g(() => {
251
+ const { startDate: l, endDate: n } = u.value;
252
+ return !l && !n ? "" : `${l} - ${n}`;
253
+ });
254
+ return (l, n) => {
255
+ const s = y("FmIcon"), v = y("FmDateRangePicker");
256
+ return a(), k(v, {
257
+ "show-predefined-range": "",
258
+ modelValue: u.value,
259
+ "onUpdate:modelValue": n[0] || (n[0] = (w) => u.value = w),
260
+ "start-label": "",
261
+ "end-label": ""
262
+ }, {
263
+ "trigger-button": S(() => [
264
+ m("div", pe, [
265
+ _(s, {
266
+ name: "calendar_month",
267
+ size: "sm"
268
+ }),
269
+ m("div", be, R(o.value), 1)
270
+ ])
271
+ ]),
272
+ _: 1
273
+ }, 8, ["modelValue"]);
274
+ };
275
+ }
276
+ }), ye = { class: "flex-1 w-full flex items-center gap-4" }, ge = {
277
+ key: 0,
278
+ class: "flex-1"
279
+ }, he = { class: "w-full max-w-[343px] xs:max-w-[unset] sm:max-w-[unset]" }, Fe = /* @__PURE__ */ T({
280
+ __name: "FmInventoryTableToolbar",
281
+ props: /* @__PURE__ */ Z({
282
+ dateRangeQuery: { type: Boolean },
283
+ changeLocation: { type: Boolean },
284
+ searchable: { type: Boolean },
285
+ actions: {},
286
+ usingBusinessHelperText: {},
287
+ showBusiness: { type: Boolean }
288
+ }, {
289
+ search: {},
290
+ searchModifiers: {},
291
+ dateRange: {},
292
+ dateRangeModifiers: {}
293
+ }),
294
+ emits: ["update:search", "update:dateRange"],
295
+ setup(i) {
296
+ const { breakpoints: t } = A(), d = g(() => t.value.xs || t.value.sm), u = U(i, "search"), o = U(i, "dateRange"), { t: l } = j(), n = Q();
297
+ return (s, v) => {
298
+ const w = y("FmTextField"), x = y("FmButton");
299
+ return a(), b("div", {
300
+ class: "flex flex-col gap-8",
301
+ onVnodeMounted: v[2] || (v[2] = //@ts-ignore
302
+ (...e) => r(n).onMounted && r(n).onMounted(...e)),
303
+ onVnodeUnmounted: v[3] || (v[3] = //@ts-ignore
304
+ (...e) => r(n).onUnmounted && r(n).onUnmounted(...e))
305
+ }, [
306
+ m("div", {
307
+ class: D([
308
+ "flex gap-8 items-center",
309
+ {
310
+ "px-8 flex-col-reverse h-[unset]": d.value,
311
+ "h-48": !d.value
312
+ }
313
+ ])
314
+ }, [
315
+ s.changeLocation || s.dateRangeQuery ? (a(), b("div", {
316
+ key: 0,
317
+ class: D([
318
+ "flex gap-8 items-center",
319
+ {
320
+ "w-full overflow-x-auto": d.value
321
+ }
322
+ ])
323
+ }, [
324
+ s.changeLocation ? (a(), k(ve, {
325
+ key: 0,
326
+ "show-business": s.showBusiness
327
+ }, null, 8, ["show-business"])) : h("", !0),
328
+ s.dateRangeQuery ? (a(), k(fe, {
329
+ key: 1,
330
+ "model-value": o.value,
331
+ "onUpdate:modelValue": v[0] || (v[0] = (e) => o.value = e)
332
+ }, null, 8, ["model-value"])) : h("", !0)
333
+ ], 2)) : h("", !0),
334
+ m("div", ye, [
335
+ d.value ? h("", !0) : (a(), b("div", ge)),
336
+ m("div", he, [
337
+ s.searchable ? (a(), k(w, {
338
+ key: 0,
339
+ "model-value": u.value,
340
+ "onUpdate:modelValue": v[1] || (v[1] = (e) => u.value = e),
341
+ "prepend-icon": "search",
342
+ placeholder: r(l)("inventory.common.table.toolbar.filterItems"),
343
+ class: "w-full"
344
+ }, null, 8, ["model-value", "placeholder"])) : h("", !0)
345
+ ]),
346
+ (a(!0), b(M, null, I(s.actions, (e, p) => (a(), k(x, {
347
+ key: p,
348
+ variant: "tertiary",
349
+ "prepend-icon": e.icon,
350
+ onClick: e.onClick
351
+ }, null, 8, ["prepend-icon", "onClick"]))), 128))
352
+ ])
353
+ ], 2)
354
+ ], 512);
355
+ };
356
+ }
357
+ });
358
+ export {
359
+ Be as _,
360
+ Fe as a,
361
+ Me as b,
362
+ P as i,
363
+ Q as u
364
+ };
@@ -0,0 +1,51 @@
1
+ import { defineComponent as p, openBlock as s, createElementBlock as n, createElementVNode as r, toDisplayString as o, unref as l, Fragment as d, renderList as x } from "vue";
2
+ import { a, k as y } from "./app-DKE_n9Mo.js";
3
+ import { useI18n as _ } from "@feedmepos/mf-common";
4
+ const v = { class: "flex flex-col" }, g = { class: "flex flex-row fm-typo-en-body-md-600 bg-fm-color-neutral-gray-100 text-fm-color-typo-secondary h-48 items-center" }, h = { class: "flex-1 py-8 px-16" }, b = {
5
+ class: "flex-0 py-8 px-16",
6
+ style: { "flex-basis": "120px" }
7
+ }, k = { class: "flex-1 py-8 px-16" }, B = {
8
+ key: 0,
9
+ class: "flex-0 py-8 px-16",
10
+ style: { "flex-basis": "120px" }
11
+ }, I = {
12
+ key: 1,
13
+ class: "flex-0 py-8 px-16",
14
+ style: { "flex-basis": "120px" }
15
+ }, A = /* @__PURE__ */ p({
16
+ __name: "IngredientBindedItem",
17
+ props: {
18
+ name: {},
19
+ bindings: {}
20
+ },
21
+ setup($) {
22
+ const { t: m } = _();
23
+ function c(e, i) {
24
+ var t;
25
+ if (e.measurement) {
26
+ const u = y(e.amount, e.measurement.conversion);
27
+ return `${a(u, !1)} ${(t = e.measurement) == null ? void 0 : t.abbrev}`;
28
+ }
29
+ return `${a(e.amount, !1)} ${i.abbrev}`;
30
+ }
31
+ function f(e) {
32
+ return e.unit !== void 0;
33
+ }
34
+ return (e, i) => (s(), n("div", v, [
35
+ r("div", g, [
36
+ r("div", h, o(e.name), 1),
37
+ r("div", b, o(l(m)("inventory.ingredient.bindedItems.amount")), 1)
38
+ ]),
39
+ (s(!0), n(d, null, x(e.bindings, (t) => (s(), n("div", {
40
+ key: t.id,
41
+ class: "flex flex-row fm-typo-en-body-md-400 h-48 items-center border-b border-b-fm-color-neutral-gray-100"
42
+ }, [
43
+ r("div", k, o(t.name), 1),
44
+ f(t) ? (s(), n("div", B, o(c(t, t.unit)), 1)) : (s(), n("div", I, o(l(a)(t.amount, !1)), 1))
45
+ ]))), 128))
46
+ ]));
47
+ }
48
+ });
49
+ export {
50
+ A as _
51
+ };