@feedmepos/mf-inventory-portal 1.7.8-dev.7 → 1.7.8-dev.8
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-w9kEd5sh.js → App-aMQCfWKR.js} +6 -6
- package/dist/{ApprovalView-Dkl1XnF-.js → ApprovalView-B1t2_NkK.js} +9 -9
- package/dist/{BindingsDialog-BcWMz6b9.js → BindingsDialog-BFA2RafQ.js} +2 -2
- package/dist/{BindingsPicker-BO9UySti.js → BindingsPicker-BV_SnCmE.js} +2 -2
- package/dist/{BindingsTable-Dtk6EpBc.js → BindingsTable-CYd_d_D4.js} +3 -3
- package/dist/{BulkReceiveRequestView-DGj6KfTv.js → BulkReceiveRequestView-Dm7GDzob.js} +19 -19
- package/dist/{ChangeLocationComponent.vue_vue_type_script_setup_true_lang-C4W1mBZw.js → ChangeLocationComponent.vue_vue_type_script_setup_true_lang-Da3qd3Mg.js} +1 -1
- package/dist/{ClosingDraftView-BwB42at0.js → ClosingDraftView-DtLqgzdV.js} +19 -19
- package/dist/{ClosingHistoryView-K_mJsfTC.js → ClosingHistoryView-BpCkeve0.js} +5 -5
- package/dist/{ClosingTemplateView-BrP26-X1.js → ClosingTemplateView-BQf2L7LP.js} +16 -16
- package/dist/{CustomPrintTemplatePreview.vue_vue_type_script_setup_true_lang-B5-2818K.js → CustomPrintTemplatePreview.vue_vue_type_script_setup_true_lang-DHxAsci8.js} +1 -1
- package/dist/{DefaultView-BcTNVg5s.js → DefaultView-uwOYX5aq.js} +2 -2
- package/dist/{DeliveryOrderPrintPreview-U8e_C_P0.js → DeliveryOrderPrintPreview-D97kXDvT.js} +2 -2
- package/dist/{EmailDialog.vue_vue_type_script_setup_true_lang-FxZ8iDds.js → EmailDialog.vue_vue_type_script_setup_true_lang-CWFtwJvC.js} +23 -23
- package/dist/{FmDateRangePickerChip.vue_vue_type_script_setup_true_lang-D4PHBh7h.js → FmDateRangePickerChip.vue_vue_type_script_setup_true_lang-B3F7ojJ3.js} +1 -1
- package/dist/{FmFilterableMenuOptions.vue_vue_type_script_setup_true_lang-Dovi_Una.js → FmFilterableMenuOptions.vue_vue_type_script_setup_true_lang-BK3hRIb-.js} +2 -2
- package/dist/{FmInventoryTableToolbar.vue_vue_type_script_setup_true_lang-D_lsFbze.js → FmInventoryTableToolbar.vue_vue_type_script_setup_true_lang-j6vOr4ES.js} +2 -2
- package/dist/{FmMultiselectDialog-DCiJI37S.js → FmMultiselectDialog-BYAPKCvZ.js} +1 -1
- package/dist/{FmMultiselectDialog-DpUmYiuC.js → FmMultiselectDialog-CiVamfs5.js} +2 -2
- package/dist/{FmUnitInput.vue_vue_type_script_setup_true_lang-C4DlbPgZ.js → FmUnitInput.vue_vue_type_script_setup_true_lang-Dit8lDme.js} +5 -5
- package/dist/{ImportView-JtlDYX-u.js → ImportView-CMoXu7Ic.js} +6 -6
- package/dist/{IngredientBindedItem.vue_vue_type_script_setup_true_lang-BWSSovJ3.js → IngredientBindedItem.vue_vue_type_script_setup_true_lang-BbhP6oIX.js} +1 -1
- package/dist/{IngredientGroupView-DoK1rUWq.js → IngredientGroupView-CPc5iduF.js} +5 -5
- package/dist/{IngredientsView-a7VWON0L.js → IngredientsView-By7RYiux.js} +15 -15
- package/dist/{IntegrationExplorerView-qUl5_424.js → IntegrationExplorerView-TSdhcRCM.js} +4 -4
- package/dist/{IntegrationView-Dm5n6q4h.js → IntegrationView-DKWDVi3O.js} +265 -265
- package/dist/{InventoryBindingForm-CQ2ttm0C.js → InventoryBindingForm-B3mDDZzR.js} +1 -1
- package/dist/{InventoryBindingForm.vue_vue_type_script_setup_true_lang-B36ECy66.js → InventoryBindingForm.vue_vue_type_script_setup_true_lang-FXXt8H01.js} +5 -5
- package/dist/{InventoryBindingSummary-A0lpe0Ox.js → InventoryBindingSummary-mYeNiAU1.js} +1 -1
- package/dist/{NumberPrecisionInput.vue_vue_type_script_setup_true_lang-tmSIc2WG.js → NumberPrecisionInput.vue_vue_type_script_setup_true_lang-CSyumpeA.js} +1 -1
- package/dist/{PremiumBadge.vue_vue_type_script_setup_true_lang-DofYEmtX.js → PremiumBadge.vue_vue_type_script_setup_true_lang-DWTAr8Ks.js} +1 -1
- package/dist/{ProductionView-CexTO7Mo.js → ProductionView-DOivpabT.js} +7 -7
- package/dist/{PublishView-DD6usqeJ.js → PublishView-eWRwVBrc.js} +3 -3
- package/dist/{PurchaseOrderPrintPreview-CHv4Ot3C.js → PurchaseOrderPrintPreview-DgTNrRu1.js} +2 -2
- package/dist/{ReceiveRequestView-CKgD2fxd.js → ReceiveRequestView-STEGp7V3.js} +14 -14
- package/dist/{RecipeView-C6I3J_US.js → RecipeView-D8UHkwaM.js} +17 -17
- package/dist/{SettingsView-DmezLN9w.js → SettingsView-p3_U_mjT.js} +4 -4
- package/dist/{StockView-DSzgTgE6.js → StockView-BU_S5A-W.js} +21 -21
- package/dist/{SubsidiaryTreeDialog.vue_vue_type_script_setup_true_lang-DI4rLJNG.js → SubsidiaryTreeDialog.vue_vue_type_script_setup_true_lang-B1tsNRFw.js} +1 -1
- package/dist/{SupplierView-CybNbifU.js → SupplierView-ByebUoTR.js} +12 -12
- package/dist/{SurchargeView-C1vZMCZj.js → SurchargeView-BMHvKZfh.js} +6 -6
- package/dist/{SystemTrailDialog.vue_vue_type_script_setup_true_lang-BUlPwCHM.js → SystemTrailDialog.vue_vue_type_script_setup_true_lang-CG4WEFSQ.js} +2 -2
- package/dist/{TemplatePublishDialog.vue_vue_type_script_setup_true_lang-DIH2mqFV.js → TemplatePublishDialog.vue_vue_type_script_setup_true_lang-DrAKLQsx.js} +1 -1
- package/dist/{TransferDetails.vue_vue_type_script_setup_true_lang-agTjQvGQ.js → TransferDetails.vue_vue_type_script_setup_true_lang-Dus9Hlmj.js} +20 -20
- package/dist/{TransferTemplateView-DO-Naizr.js → TransferTemplateView-BTDN5pJa.js} +20 -20
- package/dist/{UnitCostHistoryView-BGxwkZpr.js → UnitCostHistoryView-CrDiemoY.js} +4 -4
- package/dist/{UnitDisplayControl.vue_vue_type_script_setup_true_lang-B9YRgxtj.js → UnitDisplayControl.vue_vue_type_script_setup_true_lang-j4fGBGkZ.js} +4 -4
- package/dist/{UnitView-Cjp6D914.js → UnitView-t_k78fpJ.js} +7 -7
- package/dist/{WarehouseView-ByabMtmC.js → WarehouseView-DTsJW1VV.js} +5 -5
- package/dist/{WastageTemplateView-CaCGfNUn.js → WastageTemplateView-BrvH0FOu.js} +14 -14
- package/dist/{app-D_IALemA.js → app-D5TdnsEW.js} +15 -15
- package/dist/app.js +1 -1
- package/dist/{closing-template-B2k3Z0Vl.js → closing-template-BC_hPFGT.js} +1 -1
- package/dist/{date2-BhrYSCrE.js → date2-C3oPUnsb.js} +1 -1
- package/dist/{dayjs.min-LY6o7vzc.js → dayjs.min-CK9vGb71.js} +1 -1
- package/dist/{decimal-Deu0bQh8.js → decimal-DJvvQMY3.js} +2 -2
- package/dist/{defineDeepModel-Bw-YlrU6.js → defineDeepModel-CJIMbFrz.js} +1 -1
- package/dist/{duplicate-template-Dax1vjyN.js → duplicate-template-nN1KH3h4.js} +1 -1
- package/dist/{feature-C_v97r4I.js → feature-Bx4IGgfx.js} +2 -2
- package/dist/{format-time-from-id-Cvw2rKUL.js → format-time-from-id-Dq4MUBFl.js} +1 -1
- package/dist/{format-unit-display-CM55K7uV.js → format-unit-display-CuML_j6N.js} +12 -12
- package/dist/{import-export.helper-CvcM4OiS.js → import-export.helper-D9FgXOo6.js} +6 -6
- package/dist/{index-CxZltcV2.js → index-4eKUiHmk.js} +1 -1
- package/dist/{index-BBbfb0Xd.js → index-CCEGdCt2.js} +1 -1
- package/dist/{index-M2lzZe3a.js → index-DSdepBMC.js} +3 -3
- package/dist/{inventory-core-dart.default-BTt0uCvm.js → inventory-core-dart.default-DT6CkVBc.js} +1 -1
- package/dist/{lz-string-BZ8bWilo.js → lz-string-B1_qJywy.js} +1 -1
- package/dist/{netsuite-Bwdydjwk.js → netsuite-Dm6ZLRri.js} +2 -2
- package/dist/{number-Yer8zXk1.js → number-NNdtwo3T.js} +3 -3
- package/dist/{predefined-templates-Mx-a4hi7.js → predefined-templates-AkMvFtyz.js} +1 -1
- package/dist/{purchase-order-template-BJ-MoPOk.js → purchase-order-template-B6I8J4qj.js} +1 -1
- package/dist/{recalculationUtils-Cq6BZ_gg.js → recalculationUtils-DyVu7MVt.js} +1 -1
- package/dist/{rules-PvO5N8ov.js → rules-CNM4JWFJ.js} +2 -2
- package/dist/{stock-gCeqW7tq.js → stock-50QhYOxh.js} +3 -3
- package/dist/{stock-VT4ItDfc.js → stock-DdT-WBUh.js} +1 -1
- package/dist/{supplier-BJbZJvKz.js → supplier-BC5pgoXt.js} +2 -2
- package/dist/{surcharge-D7JVZ04l.js → surcharge-B4Uyv7IW.js} +1 -1
- package/dist/{uom-rules-jVUv7-NR.js → uom-rules-ulLFsZjD.js} +1 -1
- package/dist/{use-ingredient-select-dialog-CDvasJ1D.js → use-ingredient-select-dialog-BbgUsBBi.js} +2 -2
- package/dist/{use-inventory-binding-dialog-DDjsLX1S.js → use-inventory-binding-dialog-SWpjvOT5.js} +2 -2
- package/dist/{use-template-enabled-locations-Dfl4MGlq.js → use-template-enabled-locations-DxGTD4AM.js} +2 -2
- package/dist/{use-transfer-locations-CS2d3l5v.js → use-transfer-locations-BJ0-MC0N.js} +2 -2
- package/dist/{useHrmPermission-DPxeCoTG.js → useHrmPermission-whkt-WPi.js} +1 -1
- package/dist/{useNavigationMenu-BudvKAFZ.js → useNavigationMenu-BR8YsnAO.js} +2 -2
- package/dist/{useSseClient-DijMHGZ9.js → useSseClient-BtMs3GNe.js} +1 -1
- package/dist/{vue-i18n-D8So5Vau.js → vue-i18n-BBoYtwYo.js} +251 -251
- package/dist/{xlsx.util-B7XuU6s8.js → xlsx.util-D_Tt9yIV.js} +2 -2
- package/package.json +5 -5
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
import { defineComponent as W, mergeModels as mn, useModel as Et, onMounted as
|
|
1
|
+
import { defineComponent as W, mergeModels as mn, useModel as Et, onMounted as Te, ref as O, computed as z, resolveComponent as L, createElementBlock as V, openBlock as A, createElementVNode as n, createBlock as H, toDisplayString as B, unref as F, createVNode as I, withCtx as M, Fragment as Z, renderList as ae, normalizeClass as se, normalizeStyle as Bt, createSlots as Se, createCommentVNode as j, withModifiers as pn, reactive as lt, watch as Fe, isRef as Ee, h as N, Teleport as Re, createTextVNode as le, watchEffect as fn, withDirectives as nt, vShow as ot, onUnmounted as vn } from "vue";
|
|
2
2
|
import { _ as Vt } from "./empty-placeholder-B0QU467o.js";
|
|
3
|
-
import { y as gn, z as yn, c as fe, u as ye, A as bn, a as
|
|
4
|
-
import { useDialogChild as Lt, useDialog as
|
|
3
|
+
import { y as gn, z as yn, c as fe, u as ye, A as bn, a as ze, N as Je, B as it, C as ve, D, w as Ae, E as Nt, G as Dt, s as qe } from "./app-D5TdnsEW.js";
|
|
4
|
+
import { useDialogChild as Lt, useDialog as Me, useProxiedModel as Be, useSnackbar as ue, useBreakpoints as rt, components as ne } from "@feedmepos/ui-library";
|
|
5
5
|
import { _ as xn } from "./SingleColumnLayout.vue_vue_type_script_setup_true_lang-DwrLsWX_.js";
|
|
6
6
|
import { useI18n as ie, useCoreStore as be } from "@feedmepos/mf-common";
|
|
7
|
-
import { _ as An } from "./FmInventoryTableToolbar.vue_vue_type_script_setup_true_lang-
|
|
8
|
-
import { u as hn, a as In, b as Sn, c as wn, d as Cn, e as kn } from "./index-
|
|
9
|
-
import { b as _n, d as Fn, s as En, r as Bn, c as Tt, u as Rt } from "./xlsx.util-
|
|
10
|
-
import { F as
|
|
11
|
-
import { f as
|
|
12
|
-
import { u as xe, a as
|
|
13
|
-
import { b as Vn, a as Nn } from "./FmMultiselectDialog-
|
|
14
|
-
import { R as Dn } from "./rules-
|
|
7
|
+
import { _ as An } from "./FmInventoryTableToolbar.vue_vue_type_script_setup_true_lang-j6vOr4ES.js";
|
|
8
|
+
import { u as hn, a as In, b as Sn, c as wn, d as Cn, e as kn } from "./index-DSdepBMC.js";
|
|
9
|
+
import { b as _n, d as Fn, s as En, r as Bn, c as Tt, u as Rt } from "./xlsx.util-D_Tt9yIV.js";
|
|
10
|
+
import { F as ut } from "./FmDroppableField-J0tG_U3w.js";
|
|
11
|
+
import { f as dt, b as ct } from "./date2-C3oPUnsb.js";
|
|
12
|
+
import { u as xe, a as je } from "./netsuite-Dm6ZLRri.js";
|
|
13
|
+
import { b as Vn, a as Nn } from "./FmMultiselectDialog-CiVamfs5.js";
|
|
14
|
+
import { R as Dn } from "./rules-CNM4JWFJ.js";
|
|
15
15
|
import { P as Mt, J as Ot, D as Ut } from "./app-C39bYJmq.js";
|
|
16
|
-
import { u as Ln } from "./supplier-
|
|
17
|
-
import { u as
|
|
18
|
-
import { _ as Tn, a as Rn } from "./FmUnitInput.vue_vue_type_script_setup_true_lang-
|
|
19
|
-
import { a as Mn } from "./number-
|
|
20
|
-
import { F as
|
|
21
|
-
import { i as St, _ as On } from "./FmDateRangePickerChip.vue_vue_type_script_setup_true_lang-
|
|
22
|
-
import { _ as
|
|
16
|
+
import { u as Ln } from "./supplier-BC5pgoXt.js";
|
|
17
|
+
import { u as Xe } from "./vue-i18n-BBoYtwYo.js";
|
|
18
|
+
import { _ as Tn, a as Rn } from "./FmUnitInput.vue_vue_type_script_setup_true_lang-Dit8lDme.js";
|
|
19
|
+
import { a as Mn } from "./number-NNdtwo3T.js";
|
|
20
|
+
import { F as mt } from "./FmAdminBadge-DlplQOHb.js";
|
|
21
|
+
import { i as St, _ as On } from "./FmDateRangePickerChip.vue_vue_type_script_setup_true_lang-B3F7ojJ3.js";
|
|
22
|
+
import { _ as Ze } from "./JsonViewer.vue_vue_type_script_setup_true_lang-ig2zSXAB.js";
|
|
23
23
|
import "./dinero-DMLEtkS9.js";
|
|
24
|
-
import { u as zt } from "./feature-
|
|
24
|
+
import { u as zt } from "./feature-Bx4IGgfx.js";
|
|
25
25
|
const Un = "data:image/svg+xml,%3csvg%20width='200'%20height='101'%20viewBox='0%200%20200%20101'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M98.9161%2038.4456V24.1772H108.527V27.1988H102.12V30.2202H107.347V32.7382H102.12V38.4456H98.9161Z'%20fill='%235D5359'/%3e%3cpath%20d='M110.382%2031.2276C110.382%2027.5345%20113.249%2024.1772%20117.127%2024.1772C121.174%2024.1772%20123.872%2027.7024%20123.872%2031.3953C123.872%2035.0884%20121.005%2038.6133%20117.127%2038.6133C113.08%2038.4456%20110.382%2034.9204%20110.382%2031.2276ZM117.127%2035.5919C119.487%2035.5919%20120.499%2033.4096%20120.499%2031.2276C120.499%2029.0452%20119.319%2027.0309%20117.127%2027.0309C114.935%2027.0309%20113.754%2029.213%20113.754%2031.2276C113.754%2033.5776%20114.935%2035.5919%20117.127%2035.5919Z'%20fill='%235D5359'/%3e%3cpath%20d='M126.232%2031.2276C126.232%2027.5345%20129.099%2024.1772%20132.977%2024.1772C137.024%2024.1772%20139.722%2027.7024%20139.722%2031.3953C139.722%2035.0884%20136.855%2038.6133%20132.977%2038.6133C128.93%2038.4456%20126.232%2034.9204%20126.232%2031.2276ZM132.977%2035.5919C135.337%2035.5919%20136.349%2033.4096%20136.349%2031.2276C136.349%2029.0452%20135.169%2027.0309%20132.977%2027.0309C130.785%2027.0309%20129.604%2029.213%20129.604%2031.2276C129.604%2033.5776%20130.785%2035.5919%20132.977%2035.5919Z'%20fill='%235D5359'/%3e%3cpath%20d='M142.926%2038.4455V24.345H148.153C152.874%2024.345%20155.235%2027.5343%20155.235%2031.3952C155.235%2035.5918%20152.368%2038.4455%20148.153%2038.4455H142.926ZM148.153%2027.0308H146.129V35.4238H148.153C150.513%2035.4238%20151.862%2033.5775%20151.862%2031.2272C151.862%2028.8773%20150.513%2027.0308%20148.153%2027.0308Z'%20fill='%235D5359'/%3e%3cpath%20d='M110.045%2057.5607V49.1676L107.009%2055.2107H105.324L102.12%2049.1676V57.5607H98.9161V43.4604H102.457L106.167%2050.8465L109.876%2043.4604H113.417V57.5607H110.045Z'%20fill='%235D5359'/%3e%3cpath%20d='M115.947%2057.5607L121.342%2043.4604H124.04L129.436%2057.5607H125.895L124.715%2054.3716H120.331L119.319%2057.5607H115.947ZM122.691%2046.9856L121.005%2052.1893H124.378L122.691%2046.9856Z'%20fill='%235D5359'/%3e%3cpath%20d='M131.965%2057.5607V43.4604H138.373C141.07%2043.4604%20142.925%2045.8105%20142.925%2048.1605C142.925%2049.8393%20142.082%2051.5179%20140.565%2052.1893L143.768%2057.393H140.059L137.192%2052.8607H135V57.393H131.965V57.5607ZM135.169%2050.175H138.204C139.047%2050.175%20139.553%2049.3356%20139.553%2048.1605C139.553%2046.9856%20138.71%2046.3142%20138.035%2046.3142H135.169V50.175Z'%20fill='%235D5359'/%3e%3cpath%20d='M146.635%2057.5607V43.4604H150.007V49.8393L155.403%2043.4604H158.776L153.548%2049.6713L159.281%2057.5607H155.74L151.693%2051.5179L150.007%2053.3642V57.5607H146.635Z'%20fill='%235D5359'/%3e%3cpath%20d='M171.422%2054.7073V57.5607H161.474V43.4604H171.253V46.3142H164.677V48.9999H170.242V51.6856H164.677V54.7073H171.422Z'%20fill='%235D5359'/%3e%3cpath%20d='M185.417%2046.3142H181.202V57.5607H177.829V46.3142H173.614V43.4604H185.417V46.3142Z'%20fill='%235D5359'/%3e%3cpath%20d='M111.057%2062.5967V76.6973H107.853V70.9898H102.12V76.6973H98.9161V62.5967H102.12V68.1361H107.853V62.5967H111.057Z'%20fill='%235D5359'/%3e%3cpath%20d='M124.04%2069.815V62.5967H127.244V69.815C127.244%2073.6758%20125.389%2076.865%20121.005%2076.865C116.453%2076.865%20114.766%2073.5078%20114.766%2069.815V62.5967H117.97V69.815C117.97%2071.997%20118.813%2074.0115%20121.005%2074.0115C123.366%2074.0115%20124.04%2071.997%20124.04%2069.815Z'%20fill='%235D5359'/%3e%3cpath%20d='M138.036%2076.6973H131.122V62.5967H139.047C141.071%2062.5967%20142.251%2064.4433%20142.251%2066.2898C142.251%2067.6327%20141.576%2068.9755%20140.228%2069.4793C141.914%2069.9827%20142.926%2071.1578%20142.926%2073.1721C142.757%2075.5221%20140.733%2076.6973%20138.036%2076.6973ZM134.326%2065.4504V68.3041H137.53C138.204%2068.3041%20138.879%2067.8004%20138.879%2066.7933C138.879%2065.7861%20138.373%2065.2827%20137.698%2065.2827H134.326V65.4504ZM138.204%2070.8221H134.494V73.8435H138.204C139.047%2073.8435%20139.722%2073.1721%20139.722%2072.3327C139.553%2071.6613%20138.879%2070.8221%20138.204%2070.8221Z'%20fill='%235D5359'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M73.4753%2051.4994C78.7281%2050.5396%2082.8911%2046.4891%2083.9954%2041.3137L84.1232%2040.7134L83.9445%2040.1256C80.5804%2029.066%2071.9945%2020.2704%2061.0373%2016.5726C57.4%2015.3451%2053.5046%2014.6804%2049.458%2014.6804C45.4112%2014.6804%2041.5158%2015.3451%2037.8784%2016.5726C26.9214%2020.2704%2018.3354%2029.066%2014.9712%2040.1256L14.7924%2040.7134L14.9206%2041.3137C16.0247%2046.4891%2020.1875%2050.5396%2025.4405%2051.4994V58.8839H14.4183C14.6758%2059.9557%2014.9818%2061.0088%2015.3337%2062.0411C20.1553%2076.1811%2033.6083%2086.3619%2049.458%2086.3619C65.3074%2086.3619%2078.7606%2076.1811%2083.5822%2062.0411C83.9342%2061.0088%2084.2399%2059.9557%2084.4974%2058.8839H73.4753V51.4994ZM41.0517%2020.5973V38.5742C41.0517%2043.1931%2044.8155%2046.9371%2049.458%2046.9371C54.1005%2046.9371%2057.8641%2043.1931%2057.8641%2038.5742V20.5973C55.1919%2019.856%2052.3732%2019.4592%2049.458%2019.4592C46.5428%2019.4592%2043.7241%2019.856%2041.0517%2020.5973ZM62.6675%2022.3673V38.5742C62.6675%2043.1931%2066.431%2046.9371%2071.0735%2046.9371C74.9051%2046.9371%2078.1425%2044.3848%2079.1528%2040.8942C76.4672%2032.6902%2070.4379%2025.9824%2062.6675%2022.3673ZM60.2658%2046.1322C57.8753%2049.5094%2053.9255%2051.7159%2049.458%2051.7159C44.9902%2051.7159%2041.0408%2049.5094%2038.65%2046.1322C36.6982%2048.8894%2033.7074%2050.8662%2030.2439%2051.4994V58.8839H68.6718V51.4994C65.2083%2050.8662%2062.2175%2048.8894%2060.2658%2046.1322ZM21.1583%2063.6628C26.1349%2074.2514%2036.9382%2081.5834%2049.458%2081.5834C61.9776%2081.5834%2072.781%2074.2514%2077.7574%2063.6628H21.1583ZM36.2482%2038.5742V22.3673C28.4779%2025.9824%2022.4486%2032.6902%2019.7631%2040.8942C20.7733%2044.3848%2024.0106%2046.9371%2027.8422%2046.9371C32.4847%2046.9371%2036.2482%2043.1931%2036.2482%2038.5742Z'%20fill='%23FFC35D'/%3e%3c/svg%3e";
|
|
26
26
|
var jt = { exports: {} };
|
|
27
27
|
(function(S, c) {
|
|
@@ -108,7 +108,7 @@ const Pn = { class: "flex flex-col gap-12 h-[350px]" }, $n = { class: "flex item
|
|
|
108
108
|
}, qn = ["data-cy"], Xn = { class: "flex flex-col" }, Yn = { class: "fm-typo-en-body-md-400" }, Qn = {
|
|
109
109
|
key: 1,
|
|
110
110
|
class: "w-full py-16 text-fm-color-typo-disabled fm-typo-en-body-md-400 text-center"
|
|
111
|
-
},
|
|
111
|
+
}, pt = /* @__PURE__ */ W({
|
|
112
112
|
__name: "FmNestedMultiselectDialog",
|
|
113
113
|
props: /* @__PURE__ */ mn({
|
|
114
114
|
modelValue: {}
|
|
@@ -119,7 +119,7 @@ const Pn = { class: "flex flex-col gap-12 h-[350px]" }, $n = { class: "flex item
|
|
|
119
119
|
emits: ["update:modelValue"],
|
|
120
120
|
setup(S) {
|
|
121
121
|
const c = Et(S, "modelValue"), e = Lt();
|
|
122
|
-
|
|
122
|
+
Te(() => {
|
|
123
123
|
e.emitData(c.value);
|
|
124
124
|
});
|
|
125
125
|
const f = O(""), { t } = ie();
|
|
@@ -291,7 +291,7 @@ const Pn = { class: "flex flex-col gap-12 h-[350px]" }, $n = { class: "flex item
|
|
|
291
291
|
paddingBottom: "4px"
|
|
292
292
|
}),
|
|
293
293
|
disabled: P.selectable !== !1 && P.disabled
|
|
294
|
-
},
|
|
294
|
+
}, Se({
|
|
295
295
|
default: M(() => [
|
|
296
296
|
n("div", Xn, [
|
|
297
297
|
n("div", Yn, [
|
|
@@ -372,7 +372,7 @@ const Pn = { class: "flex flex-col gap-12 h-[350px]" }, $n = { class: "flex item
|
|
|
372
372
|
},
|
|
373
373
|
emits: ["update:modifiers"],
|
|
374
374
|
setup(S, { emit: c }) {
|
|
375
|
-
const e = S, f = c, t =
|
|
375
|
+
const e = S, f = c, t = Me(), u = z(() => {
|
|
376
376
|
const v = e.groups.flatMap((h) => h.items.map((g) => {
|
|
377
377
|
const C = e.items.find((E) => E._id === g._id);
|
|
378
378
|
return {
|
|
@@ -431,7 +431,7 @@ const Pn = { class: "flex flex-col gap-12 h-[350px]" }, $n = { class: "flex item
|
|
|
431
431
|
};
|
|
432
432
|
t.open({
|
|
433
433
|
title: "Select Addons",
|
|
434
|
-
contentComponent:
|
|
434
|
+
contentComponent: pt,
|
|
435
435
|
contentComponentProps: h,
|
|
436
436
|
primaryActions: {
|
|
437
437
|
text: "Confirm",
|
|
@@ -521,14 +521,14 @@ const Pn = { class: "flex flex-col gap-12 h-[350px]" }, $n = { class: "flex item
|
|
|
521
521
|
};
|
|
522
522
|
}
|
|
523
523
|
});
|
|
524
|
-
function
|
|
524
|
+
function ft(S, c = []) {
|
|
525
525
|
const e = c.map((t) => S.find((u) => u._id === t)).filter((t) => !!t);
|
|
526
526
|
return io(e).reduce((t, u) => (t[u.combinationKey] = u.selectionName.join(", "), t), {});
|
|
527
527
|
}
|
|
528
528
|
function $t(S, c, e) {
|
|
529
529
|
const f = e.reduce((u, l) => {
|
|
530
530
|
var m, v, h;
|
|
531
|
-
const a = l.category || "", p =
|
|
531
|
+
const a = l.category || "", p = ft(c, (m = l.variant) == null ? void 0 : m.variantGroupIds), y = {
|
|
532
532
|
...l,
|
|
533
533
|
codeName: [l.code, l.name].filter((g) => !!g).join(" "),
|
|
534
534
|
variant: {
|
|
@@ -588,7 +588,7 @@ const ro = { class: "flex flex-col rounded border border-fm-color-neutral-gray-1
|
|
|
588
588
|
}, po = { class: "text-left" }, fo = { class: "min-w-64" }, vo = { class: "flex flex-col" }, go = { class: "fm-typo-en-body-md-400" }, yo = {
|
|
589
589
|
key: 0,
|
|
590
590
|
class: "fm-typo-en-body-sm-400 text-fm-color-neutral-gray-400"
|
|
591
|
-
}, bo = { class: "w-1" },
|
|
591
|
+
}, bo = { class: "w-1" }, st = /* @__PURE__ */ W({
|
|
592
592
|
__name: "ApplyProduct",
|
|
593
593
|
props: {
|
|
594
594
|
isAddon: {
|
|
@@ -614,7 +614,7 @@ const ro = { class: "flex flex-col rounded border border-fm-color-neutral-gray-1
|
|
|
614
614
|
},
|
|
615
615
|
emits: ["update:bindings"],
|
|
616
616
|
setup(S, { emit: c }) {
|
|
617
|
-
const e = S, f = c, t =
|
|
617
|
+
const e = S, f = c, t = Me(), u = z(() => e.isAddon ? "Addons" : "Products"), l = z(() => e.isAddon ? [] : e.categories), a = z(
|
|
618
618
|
() => $t(l.value, e.variants, e.menus)
|
|
619
619
|
), p = z(() => {
|
|
620
620
|
if (e.isAddon)
|
|
@@ -765,7 +765,7 @@ const ro = { class: "flex flex-col rounded border border-fm-color-neutral-gray-1
|
|
|
765
765
|
};
|
|
766
766
|
t.open({
|
|
767
767
|
title: `Select ${u.value}`,
|
|
768
|
-
contentComponent:
|
|
768
|
+
contentComponent: pt,
|
|
769
769
|
contentComponentProps: r,
|
|
770
770
|
primaryActions: {
|
|
771
771
|
text: "Confirm",
|
|
@@ -852,13 +852,13 @@ const ro = { class: "flex flex-col rounded border border-fm-color-neutral-gray-1
|
|
|
852
852
|
},
|
|
853
853
|
emits: ["update:setting", "update:show", "submit"],
|
|
854
854
|
setup(S, { emit: c }) {
|
|
855
|
-
const e = S, f = c, t =
|
|
856
|
-
|
|
855
|
+
const e = S, f = c, t = lt(fe(e.setting));
|
|
856
|
+
Fe([() => e.show], ([m]) => {
|
|
857
857
|
if (m)
|
|
858
858
|
for (const v of Object.keys(e.setting))
|
|
859
859
|
t[v] = e.setting[v];
|
|
860
860
|
});
|
|
861
|
-
const u = O(), l =
|
|
861
|
+
const u = O(), l = Be(e, "show");
|
|
862
862
|
function a() {
|
|
863
863
|
var m, v;
|
|
864
864
|
(v = (m = u.value) == null ? void 0 : m.validateInputs) == null || v.call(m);
|
|
@@ -871,7 +871,7 @@ const ro = { class: "flex flex-col rounded border border-fm-color-neutral-gray-1
|
|
|
871
871
|
const h = L("FmChip"), g = L("FmForm"), C = L("FmButton"), E = L("FmSideSheet");
|
|
872
872
|
return A(), H(E, {
|
|
873
873
|
modelValue: F(l),
|
|
874
|
-
"onUpdate:modelValue": v[4] || (v[4] = (k) =>
|
|
874
|
+
"onUpdate:modelValue": v[4] || (v[4] = (k) => Ee(l) ? l.value = k : null),
|
|
875
875
|
header: F(y)("inventory.integration.apply.title"),
|
|
876
876
|
"dismiss-away": "",
|
|
877
877
|
"close-button": "",
|
|
@@ -888,7 +888,7 @@ const ro = { class: "flex flex-col rounded border border-fm-color-neutral-gray-1
|
|
|
888
888
|
onValidationSuccess: v[2] || (v[2] = (k) => p())
|
|
889
889
|
}, {
|
|
890
890
|
default: M(() => [
|
|
891
|
-
I(
|
|
891
|
+
I(st, {
|
|
892
892
|
bindings: t.bindings,
|
|
893
893
|
categories: m.categories,
|
|
894
894
|
variants: m.variants,
|
|
@@ -919,7 +919,7 @@ const ro = { class: "flex flex-col rounded border border-fm-color-neutral-gray-1
|
|
|
919
919
|
}, 8, ["modelValue", "header"]);
|
|
920
920
|
};
|
|
921
921
|
}
|
|
922
|
-
}), ho = ["Product ID", "Menu Item Code", "Name", "Category"], Io = ["Variant Name", "Variant Key"],
|
|
922
|
+
}), ho = ["Product ID", "Menu Item Code", "Name", "Category"], Io = ["Variant Name", "Variant Key"], he = {
|
|
923
923
|
productId: ["productid"],
|
|
924
924
|
menuItemCode: ["menuitemcode", "ordercode"],
|
|
925
925
|
// header is now "Name"; keep "menuitemname" for older sheets
|
|
@@ -931,10 +931,10 @@ const ro = { class: "flex flex-col rounded border border-fm-color-neutral-gray-1
|
|
|
931
931
|
function Ct(S) {
|
|
932
932
|
return (S ?? "").replace(/^\uFEFF/, "").toLowerCase().replace(/[^a-z0-9]/g, "");
|
|
933
933
|
}
|
|
934
|
-
function
|
|
934
|
+
function at(S) {
|
|
935
935
|
return (S ?? "").replace(/^\uFEFF/, "").trim().replace(/\s+/g, " ");
|
|
936
936
|
}
|
|
937
|
-
function
|
|
937
|
+
function De(S, c) {
|
|
938
938
|
return `${S}::${c ?? ""}`;
|
|
939
939
|
}
|
|
940
940
|
function So(S, c) {
|
|
@@ -942,9 +942,9 @@ function So(S, c) {
|
|
|
942
942
|
if (!e.length)
|
|
943
943
|
throw new Error("The file is empty.");
|
|
944
944
|
const f = [
|
|
945
|
-
...
|
|
946
|
-
...
|
|
947
|
-
...
|
|
945
|
+
...he.productId,
|
|
946
|
+
...he.menuItemCode,
|
|
947
|
+
...he.menuItemName
|
|
948
948
|
], t = e.findIndex(
|
|
949
949
|
(v) => v.some((h) => f.includes(Ct(h)))
|
|
950
950
|
);
|
|
@@ -953,12 +953,12 @@ function So(S, c) {
|
|
|
953
953
|
'Missing required headers. Could not find a "Product ID", "Menu Item Code" or "Name" column.'
|
|
954
954
|
);
|
|
955
955
|
const u = e[t].map(Ct), l = (v) => u.findIndex((h) => v.includes(h)), a = {
|
|
956
|
-
productId: l(
|
|
957
|
-
menuItemCode: l(
|
|
958
|
-
menuItemName: l(
|
|
959
|
-
category: l(
|
|
960
|
-
variantName: l(
|
|
961
|
-
variantKey: l(
|
|
956
|
+
productId: l(he.productId),
|
|
957
|
+
menuItemCode: l(he.menuItemCode),
|
|
958
|
+
menuItemName: l(he.menuItemName),
|
|
959
|
+
category: l(he.category),
|
|
960
|
+
variantName: l(he.variantName),
|
|
961
|
+
variantKey: l(he.variantKey)
|
|
962
962
|
}, p = c.valueColumns.map((v) => ({
|
|
963
963
|
col: v,
|
|
964
964
|
index: l(v.aliases)
|
|
@@ -996,7 +996,7 @@ function wo(S, c = []) {
|
|
|
996
996
|
v && u(f, v, m);
|
|
997
997
|
};
|
|
998
998
|
for (const y of S) {
|
|
999
|
-
const m = !y.category, v = ((a = y.variant) == null ? void 0 : a.variantCombinations) ?? [], h =
|
|
999
|
+
const m = !y.category, v = ((a = y.variant) == null ? void 0 : a.variantCombinations) ?? [], h = ft(c, (p = y.variant) == null ? void 0 : p.variantGroupIds), g = /* @__PURE__ */ new Set(), C = /* @__PURE__ */ new Map();
|
|
1000
1000
|
for (const s of v) {
|
|
1001
1001
|
const r = s.combinationKey ?? "";
|
|
1002
1002
|
r && (g.add(r), C.set(r, (s.name || h[r] || "").trim()));
|
|
@@ -1009,17 +1009,17 @@ function wo(S, c = []) {
|
|
|
1009
1009
|
combinationNames: C
|
|
1010
1010
|
};
|
|
1011
1011
|
e.set(y._id, E), l(y.code, E);
|
|
1012
|
-
const k =
|
|
1012
|
+
const k = at(y.name);
|
|
1013
1013
|
k && u(t, k, E);
|
|
1014
1014
|
}
|
|
1015
1015
|
return { byProductId: e, byCode: f, byName: t };
|
|
1016
1016
|
}
|
|
1017
1017
|
function Co(S, c, e, f) {
|
|
1018
|
-
const t = (m) => m.productId || m.menuItemCode ||
|
|
1018
|
+
const t = (m) => m.productId || m.menuItemCode || at(m.menuItemName), u = (m) => `${t(m)}::${m.variantKey}`, l = /* @__PURE__ */ new Map();
|
|
1019
1019
|
for (const m of S)
|
|
1020
1020
|
t(m) && l.set(u(m), (l.get(u(m)) ?? 0) + 1);
|
|
1021
1021
|
const a = new Set(
|
|
1022
|
-
e.map((m) =>
|
|
1022
|
+
e.map((m) => De(m.productId, m.combinationKey))
|
|
1023
1023
|
), p = f.valueColumns.filter((m) => m.required);
|
|
1024
1024
|
return { invalidExcel: !1, rows: S.map((m, v) => {
|
|
1025
1025
|
var i, w;
|
|
@@ -1047,7 +1047,7 @@ function Co(S, c, e, f) {
|
|
|
1047
1047
|
if (m.productId) {
|
|
1048
1048
|
const R = c.byProductId.get(m.productId);
|
|
1049
1049
|
g = R ? [R] : [], C = `Product ID "${m.productId}"`;
|
|
1050
|
-
} else m.menuItemCode ? (g = c.byCode.get(m.menuItemCode) ?? [], C = `code "${m.menuItemCode}"`) : (g = c.byName.get(
|
|
1050
|
+
} else m.menuItemCode ? (g = c.byCode.get(m.menuItemCode) ?? [], C = `code "${m.menuItemCode}"`) : (g = c.byName.get(at(m.menuItemName)) ?? [], C = `name "${m.menuItemName}"`);
|
|
1051
1051
|
if (g.length === 0)
|
|
1052
1052
|
return { ...h, status: "NOT_FOUND", errors: [`No menu item found for ${C}.`] };
|
|
1053
1053
|
let E, k;
|
|
@@ -1080,7 +1080,7 @@ function Co(S, c, e, f) {
|
|
|
1080
1080
|
productId: s.productId,
|
|
1081
1081
|
combinationKey: E,
|
|
1082
1082
|
values: m.values
|
|
1083
|
-
}), o = a.has(
|
|
1083
|
+
}), o = a.has(De(s.productId, E)) ? "OVERRIDE" : "NEW";
|
|
1084
1084
|
return { ...h, status: o, binding: d, ...b };
|
|
1085
1085
|
}) };
|
|
1086
1086
|
}
|
|
@@ -1093,7 +1093,7 @@ function ko(S, c, e, f, t) {
|
|
|
1093
1093
|
}
|
|
1094
1094
|
return Co(u, wo(c, f), e, t);
|
|
1095
1095
|
}
|
|
1096
|
-
function
|
|
1096
|
+
function Ue(S) {
|
|
1097
1097
|
return S.rows.filter(
|
|
1098
1098
|
(c) => (c.status === "NEW" || c.status === "OVERRIDE") && !c.errors.length && !!c.binding
|
|
1099
1099
|
).map((c) => c.binding);
|
|
@@ -1111,8 +1111,8 @@ function Ht(S) {
|
|
|
1111
1111
|
};
|
|
1112
1112
|
}
|
|
1113
1113
|
function qt(S, c) {
|
|
1114
|
-
const e = new Set(c.map((t) =>
|
|
1115
|
-
return [...S.filter((t) => !e.has(
|
|
1114
|
+
const e = new Set(c.map((t) => De(t.productId, t.combinationKey)));
|
|
1115
|
+
return [...S.filter((t) => !e.has(De(t.productId, t.combinationKey))), ...c];
|
|
1116
1116
|
}
|
|
1117
1117
|
function _o(S) {
|
|
1118
1118
|
return [...ho, ...S.valueColumns.map((c) => c.header), ...Io];
|
|
@@ -1124,9 +1124,9 @@ function Fo(S, c, e, f, t) {
|
|
|
1124
1124
|
g._id && u.set(g._id, g.name ?? "");
|
|
1125
1125
|
const l = /* @__PURE__ */ new Map();
|
|
1126
1126
|
for (const g of e)
|
|
1127
|
-
l.set(
|
|
1127
|
+
l.set(De(g.productId, g.combinationKey), g);
|
|
1128
1128
|
const a = /* @__PURE__ */ new Set(), p = [], y = (g) => {
|
|
1129
|
-
const C =
|
|
1129
|
+
const C = De(g.productId, g.combinationKey);
|
|
1130
1130
|
if (a.has(C)) return;
|
|
1131
1131
|
a.add(C);
|
|
1132
1132
|
const E = l.get(C), k = E ? t.readValues(E) : {};
|
|
@@ -1153,7 +1153,7 @@ function Fo(S, c, e, f, t) {
|
|
|
1153
1153
|
categoryLabel: E,
|
|
1154
1154
|
variantName: ""
|
|
1155
1155
|
});
|
|
1156
|
-
const s =
|
|
1156
|
+
const s = ft(f, (h = g.variant) == null ? void 0 : h.variantGroupIds);
|
|
1157
1157
|
for (const r of k) {
|
|
1158
1158
|
const b = (r.name || s[r.combinationKey ?? ""] || "").trim();
|
|
1159
1159
|
y({
|
|
@@ -1179,7 +1179,7 @@ function Fo(S, c, e, f, t) {
|
|
|
1179
1179
|
function Xt(S, c, e, f, t, u) {
|
|
1180
1180
|
const { rows: l } = Fo(S, c, e, f, t), [a, ...p] = l, y = _n(p, a, `${t.key} Bindings`), m = y.Sheets[y.SheetNames[0]];
|
|
1181
1181
|
delete m["!cols"];
|
|
1182
|
-
const h = `${u ? `${u} ` : ""}${t.key}-bindings-template (${
|
|
1182
|
+
const h = `${u ? `${u} ` : ""}${t.key}-bindings-template (${dt(/* @__PURE__ */ new Date())}).xlsx`;
|
|
1183
1183
|
return Fn(y, h), { filename: h, itemCount: p.length };
|
|
1184
1184
|
}
|
|
1185
1185
|
const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-400 text-fm-color-typo-secondary" }, Vo = { class: "flex flex-col flex-1 gap-4" }, No = { class: "fm-typo-en-body-md-600" }, Do = {
|
|
@@ -1206,7 +1206,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
1206
1206
|
}
|
|
1207
1207
|
},
|
|
1208
1208
|
setup(S) {
|
|
1209
|
-
const c = S, e = Lt(), { t: f } = ie(), t = O(null), u = O(!1), l = O(null), a = O(null), p = z(() => a.value ? Ht(a.value) : null), y = z(() => a.value ?
|
|
1209
|
+
const c = S, e = Lt(), { t: f } = ie(), t = O(null), u = O(!1), l = O(null), a = O(null), p = z(() => a.value ? Ht(a.value) : null), y = z(() => a.value ? Ue(a.value).length : 0), m = z(() => !l.value && y.value > 0);
|
|
1210
1210
|
function v() {
|
|
1211
1211
|
e.emitData(m.value ? a.value : null);
|
|
1212
1212
|
}
|
|
@@ -1236,19 +1236,19 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
1236
1236
|
u.value = !1;
|
|
1237
1237
|
}
|
|
1238
1238
|
}
|
|
1239
|
-
return
|
|
1239
|
+
return Fe(t, (g) => {
|
|
1240
1240
|
g && h(g);
|
|
1241
1241
|
}), (g, C) => {
|
|
1242
1242
|
const E = L("FmCircularProgress"), k = L("FmIcon"), s = L("FmButton");
|
|
1243
1243
|
return A(), V("div", Eo, [
|
|
1244
1244
|
n("div", Bo, B(F(f)("inventory.integration.bindingImport.description")), 1),
|
|
1245
|
-
I(
|
|
1245
|
+
I(ut, {
|
|
1246
1246
|
class: se({ "w-full": !0, "h-[200px]": !t.value }),
|
|
1247
1247
|
accept: ".xlsx,.xls,.csv",
|
|
1248
1248
|
label: "Drop the Excel/CSV file here",
|
|
1249
1249
|
"button-label": "Select file",
|
|
1250
1250
|
onFileUpload: C[0] || (C[0] = (r) => t.value = r)
|
|
1251
|
-
},
|
|
1251
|
+
}, Se({ _: 2 }, [
|
|
1252
1252
|
t.value ? {
|
|
1253
1253
|
name: "default",
|
|
1254
1254
|
fn: M(({ openFileDialog: r }) => [
|
|
@@ -1416,7 +1416,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
1416
1416
|
]);
|
|
1417
1417
|
};
|
|
1418
1418
|
}
|
|
1419
|
-
}),
|
|
1419
|
+
}), We = {
|
|
1420
1420
|
key: "foodMarketHub",
|
|
1421
1421
|
valueColumns: [{ field: "code", header: "FMH Code", aliases: ["fmhcode", "code"], required: !0 }],
|
|
1422
1422
|
buildBinding: ({ productId: S, combinationKey: c, values: e }) => ({
|
|
@@ -1438,8 +1438,8 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
1438
1438
|
},
|
|
1439
1439
|
emits: ["update:setting", "update:show", "submit"],
|
|
1440
1440
|
setup(S, { emit: c }) {
|
|
1441
|
-
const e = S, f = c, t =
|
|
1442
|
-
|
|
1441
|
+
const e = S, f = c, t = lt(fe(e.setting));
|
|
1442
|
+
Fe([() => e.show], ([o]) => {
|
|
1443
1443
|
if (o)
|
|
1444
1444
|
for (const i of Object.keys(e.setting))
|
|
1445
1445
|
t[i] = e.setting[i];
|
|
@@ -1457,7 +1457,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
1457
1457
|
function m(o) {
|
|
1458
1458
|
t.bindings = [...p.value, ...o];
|
|
1459
1459
|
}
|
|
1460
|
-
const v = O(), h =
|
|
1460
|
+
const v = O(), h = Me(), g = ue(), C = be();
|
|
1461
1461
|
function E() {
|
|
1462
1462
|
var i;
|
|
1463
1463
|
const { filename: o } = Xt(
|
|
@@ -1465,7 +1465,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
1465
1465
|
e.categories,
|
|
1466
1466
|
t.bindings,
|
|
1467
1467
|
e.variants,
|
|
1468
|
-
|
|
1468
|
+
We,
|
|
1469
1469
|
(i = C.currentBusiness.value) == null ? void 0 : i.name
|
|
1470
1470
|
);
|
|
1471
1471
|
g.open({
|
|
@@ -1479,7 +1479,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
1479
1479
|
title: d("inventory.integration.bindingImport.dialogTitle"),
|
|
1480
1480
|
contentComponent: Yt,
|
|
1481
1481
|
contentComponentProps: {
|
|
1482
|
-
config:
|
|
1482
|
+
config: We,
|
|
1483
1483
|
menus: e.menus,
|
|
1484
1484
|
variants: e.variants,
|
|
1485
1485
|
bindings: fe(t.bindings)
|
|
@@ -1500,7 +1500,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
1500
1500
|
variant: "plain"
|
|
1501
1501
|
}
|
|
1502
1502
|
}).onPrimary((o) => {
|
|
1503
|
-
if (!o || !
|
|
1503
|
+
if (!o || !Ue(o).length) {
|
|
1504
1504
|
g.open({
|
|
1505
1505
|
title: d("inventory.integration.bindingImport.nothingToImport.title"),
|
|
1506
1506
|
message: d("inventory.integration.bindingImport.nothingToImport.message"),
|
|
@@ -1515,7 +1515,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
1515
1515
|
h.open({
|
|
1516
1516
|
title: d("inventory.integration.bindingImport.previewTitle"),
|
|
1517
1517
|
contentComponent: Qt,
|
|
1518
|
-
contentComponentProps: { config:
|
|
1518
|
+
contentComponentProps: { config: We, result: o },
|
|
1519
1519
|
overlay: !0,
|
|
1520
1520
|
closeButton: !0,
|
|
1521
1521
|
minWidth: 900,
|
|
@@ -1529,7 +1529,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
1529
1529
|
close: !0
|
|
1530
1530
|
}
|
|
1531
1531
|
}).onPrimary(() => {
|
|
1532
|
-
const i =
|
|
1532
|
+
const i = Ue(o);
|
|
1533
1533
|
t.bindings = qt(t.bindings, i), g.open({
|
|
1534
1534
|
title: d("inventory.integration.bindingImport.importSuccess.title"),
|
|
1535
1535
|
message: d("inventory.integration.bindingImport.importSuccess.message", { count: i.length }),
|
|
@@ -1537,7 +1537,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
1537
1537
|
});
|
|
1538
1538
|
});
|
|
1539
1539
|
}
|
|
1540
|
-
const r =
|
|
1540
|
+
const r = Be(e, "show");
|
|
1541
1541
|
function b() {
|
|
1542
1542
|
var o, i;
|
|
1543
1543
|
(i = (o = v.value) == null ? void 0 : o.validateInputs) == null || i.call(o);
|
|
@@ -1550,7 +1550,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
1550
1550
|
const w = L("FmChip"), R = L("FmButton"), $ = L("FmForm"), X = L("FmSideSheet");
|
|
1551
1551
|
return A(), H(X, {
|
|
1552
1552
|
modelValue: F(r),
|
|
1553
|
-
"onUpdate:modelValue": i[5] || (i[5] = (U) =>
|
|
1553
|
+
"onUpdate:modelValue": i[5] || (i[5] = (U) => Ee(r) ? r.value = U : null),
|
|
1554
1554
|
header: F(d)("inventory.integration.apply.title"),
|
|
1555
1555
|
"dismiss-away": "",
|
|
1556
1556
|
"close-button": "",
|
|
@@ -1576,14 +1576,14 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
1576
1576
|
onValidationSuccess: i[3] || (i[3] = (U) => x())
|
|
1577
1577
|
}, {
|
|
1578
1578
|
default: M(() => [
|
|
1579
|
-
I(
|
|
1579
|
+
I(st, {
|
|
1580
1580
|
categories: o.categories,
|
|
1581
1581
|
variants: o.variants,
|
|
1582
1582
|
bindings: p.value,
|
|
1583
1583
|
menus: a.value,
|
|
1584
1584
|
"onUpdate:bindings": i[1] || (i[1] = (U) => y(U))
|
|
1585
1585
|
}, null, 8, ["categories", "variants", "bindings", "menus"]),
|
|
1586
|
-
I(
|
|
1586
|
+
I(st, {
|
|
1587
1587
|
"is-addon": !0,
|
|
1588
1588
|
categories: [],
|
|
1589
1589
|
variants: o.variants,
|
|
@@ -1620,7 +1620,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
1620
1620
|
async function g() {
|
|
1621
1621
|
h.value = !0;
|
|
1622
1622
|
}
|
|
1623
|
-
const { breakpoints: C } =
|
|
1623
|
+
const { breakpoints: C } = rt(), E = z(() => C.value.xs || C.value.sm), k = z(() => E.value);
|
|
1624
1624
|
async function s() {
|
|
1625
1625
|
const b = u.state.setting;
|
|
1626
1626
|
if (b) {
|
|
@@ -1678,7 +1678,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
1678
1678
|
_: 1
|
|
1679
1679
|
}, 8, ["class"]),
|
|
1680
1680
|
F(u).state.setting ? (A(), V("div", os, [
|
|
1681
|
-
(A(), H(
|
|
1681
|
+
(A(), H(Re, { to: "body" }, [
|
|
1682
1682
|
v.value === "v3" ? (A(), H(Ao, {
|
|
1683
1683
|
key: 0,
|
|
1684
1684
|
menus: l.value,
|
|
@@ -1739,7 +1739,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
1739
1739
|
"model-value": a.modelValue,
|
|
1740
1740
|
rules: [F(Dn)()],
|
|
1741
1741
|
"label-mark": "required"
|
|
1742
|
-
},
|
|
1742
|
+
}, Se({
|
|
1743
1743
|
default: M(({ invalid: k }) => [
|
|
1744
1744
|
I(C, null, {
|
|
1745
1745
|
"menu-button": M(() => [
|
|
@@ -1766,7 +1766,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
1766
1766
|
modelValue: t.value,
|
|
1767
1767
|
"onUpdate:modelValue": p[1] || (p[1] = (s) => t.value = s),
|
|
1768
1768
|
placeholder: "Filter options"
|
|
1769
|
-
},
|
|
1769
|
+
}, Se({
|
|
1770
1770
|
prepend: M(() => [
|
|
1771
1771
|
I(v, { name: "search" })
|
|
1772
1772
|
]),
|
|
@@ -2024,7 +2024,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
2024
2024
|
values: ["warehouse", "restaurant"]
|
|
2025
2025
|
}
|
|
2026
2026
|
];
|
|
2027
|
-
|
|
2027
|
+
Te(async () => {
|
|
2028
2028
|
if (e.isReady && e.isEnabled)
|
|
2029
2029
|
try {
|
|
2030
2030
|
p.value = await e.getNetSuiteLocationOptions();
|
|
@@ -2382,7 +2382,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
2382
2382
|
__name: "VendorsTab",
|
|
2383
2383
|
setup(S) {
|
|
2384
2384
|
const c = Ln(), e = xe(), f = ue(), t = O(""), u = O(!1), l = O([]), a = O(!1), p = O(null), y = O(null);
|
|
2385
|
-
|
|
2385
|
+
Te(async () => {
|
|
2386
2386
|
if (c.suppliers.length === 0)
|
|
2387
2387
|
try {
|
|
2388
2388
|
await c.readSuppliers();
|
|
@@ -2513,8 +2513,8 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
2513
2513
|
}), zs = { class: "p-8 flex flex-col gap-4" }, js = { class: "flex gap-4 items-center" }, Ps = /* @__PURE__ */ W({
|
|
2514
2514
|
__name: "ItemsTab",
|
|
2515
2515
|
setup(S) {
|
|
2516
|
-
const c =
|
|
2517
|
-
|
|
2516
|
+
const c = ze(), e = xe(), f = je(), t = ue(), { t: u } = ie();
|
|
2517
|
+
Te(async () => {
|
|
2518
2518
|
e.state.isReady && e.state.itemReplicas.length === 0 && await e.getAllItemReplicas();
|
|
2519
2519
|
});
|
|
2520
2520
|
const l = (s) => {
|
|
@@ -2549,7 +2549,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
2549
2549
|
key: "itemType",
|
|
2550
2550
|
type: "string",
|
|
2551
2551
|
entity: "item",
|
|
2552
|
-
values: Object.values(
|
|
2552
|
+
values: Object.values(Je.Values)
|
|
2553
2553
|
},
|
|
2554
2554
|
{
|
|
2555
2555
|
key: "isParent",
|
|
@@ -2565,7 +2565,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
2565
2565
|
return s.filter(
|
|
2566
2566
|
(b) => Ot(
|
|
2567
2567
|
{
|
|
2568
|
-
itemType: b.itemType ||
|
|
2568
|
+
itemType: b.itemType || Je.Enum.InvtPart,
|
|
2569
2569
|
isParent: b.parentNetSuiteId ? "false" : "true"
|
|
2570
2570
|
},
|
|
2571
2571
|
r
|
|
@@ -2659,7 +2659,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
2659
2659
|
N(
|
|
2660
2660
|
"span",
|
|
2661
2661
|
{ class: "text-xs text-gray-400" },
|
|
2662
|
-
`Type: ${r.itemType ||
|
|
2662
|
+
`Type: ${r.itemType || Je.Enum.InvtPart}`
|
|
2663
2663
|
)
|
|
2664
2664
|
])
|
|
2665
2665
|
]);
|
|
@@ -2721,7 +2721,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
2721
2721
|
}), $s = { class: "p-8" }, Ks = /* @__PURE__ */ W({
|
|
2722
2722
|
__name: "UnitTypesTab",
|
|
2723
2723
|
setup(S) {
|
|
2724
|
-
const c =
|
|
2724
|
+
const c = ze(), e = xe(), f = O(), t = O(""), u = z(() => e.state.setting.units), l = [
|
|
2725
2725
|
{
|
|
2726
2726
|
id: "unit",
|
|
2727
2727
|
header: () => "FeedMe Unit",
|
|
@@ -2821,7 +2821,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
2821
2821
|
},
|
|
2822
2822
|
emits: ["update:show", "update:loading"],
|
|
2823
2823
|
setup(S, { emit: c }) {
|
|
2824
|
-
const e = be(), f = xe(), t = S, u = c, l =
|
|
2824
|
+
const e = be(), f = xe(), t = S, u = c, l = Be(t, "show"), a = O(
|
|
2825
2825
|
"locations"
|
|
2826
2826
|
/* LOCATIONS */
|
|
2827
2827
|
), p = [
|
|
@@ -2846,7 +2846,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
2846
2846
|
const C = L("FmChip"), E = L("FmTabs"), k = L("FmButton"), s = L("FmSideSheet");
|
|
2847
2847
|
return A(), H(s, {
|
|
2848
2848
|
modelValue: F(l),
|
|
2849
|
-
"onUpdate:modelValue": g[2] || (g[2] = (r) =>
|
|
2849
|
+
"onUpdate:modelValue": g[2] || (g[2] = (r) => Ee(l) ? l.value = r : null),
|
|
2850
2850
|
header: F(y)("inventory.integration.netsuite.title"),
|
|
2851
2851
|
"dismiss-away": "",
|
|
2852
2852
|
"close-button": "",
|
|
@@ -2903,7 +2903,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
2903
2903
|
},
|
|
2904
2904
|
emits: ["update:modelValue"],
|
|
2905
2905
|
setup(S) {
|
|
2906
|
-
const { t: c } =
|
|
2906
|
+
const { t: c } = Xe(), e = Et(S, "modelValue"), f = [
|
|
2907
2907
|
{
|
|
2908
2908
|
id: "Code",
|
|
2909
2909
|
header: () => c("inventory.transfer.form.items.table.Code"),
|
|
@@ -3032,8 +3032,8 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
3032
3032
|
}), Ws = { class: "flex items-center gap-8 mb-8" }, ea = /* @__PURE__ */ W({
|
|
3033
3033
|
__name: "InventoryTransferOutTable",
|
|
3034
3034
|
setup(S) {
|
|
3035
|
-
const c = O([]), e =
|
|
3036
|
-
|
|
3035
|
+
const c = O([]), e = je(), f = O(!1), t = O(!1), u = ue(), l = ye();
|
|
3036
|
+
Te(async () => {
|
|
3037
3037
|
const m = /* @__PURE__ */ new Date(), v = /* @__PURE__ */ new Date();
|
|
3038
3038
|
v.setDate(v.getDate() - 30), f.value = !0;
|
|
3039
3039
|
try {
|
|
@@ -3126,7 +3126,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
3126
3126
|
N(
|
|
3127
3127
|
"span",
|
|
3128
3128
|
{ class: "fm-typo-en-body-sm-400" },
|
|
3129
|
-
`Date: ${v ?
|
|
3129
|
+
`Date: ${v ? ct(it(v)) : "N/A"}`
|
|
3130
3130
|
)
|
|
3131
3131
|
]);
|
|
3132
3132
|
}
|
|
@@ -3199,7 +3199,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
3199
3199
|
currentLocationSubsidiary: {}
|
|
3200
3200
|
},
|
|
3201
3201
|
setup(S) {
|
|
3202
|
-
const c =
|
|
3202
|
+
const c = Me(), e = xe(), f = ze(), t = je(), u = ue(), { t: l } = Xe(), a = O([]), p = [{ label: "Transfer Out" }, { label: "History" }], y = O(p[0]), m = O(!1), v = O(null), h = O(null), g = S, C = z(() => {
|
|
3203
3203
|
const x = e.currentLocationSetting, d = e.configuredLocations;
|
|
3204
3204
|
return g.nsLocations.map((o) => ({
|
|
3205
3205
|
label: o.name,
|
|
@@ -3454,7 +3454,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
3454
3454
|
currentLocationSetting: {}
|
|
3455
3455
|
},
|
|
3456
3456
|
setup(S) {
|
|
3457
|
-
const c = be(), e =
|
|
3457
|
+
const c = be(), e = je(), f = ue(), t = O(!1), u = S, l = O([]), a = O(/* @__PURE__ */ new Set()), p = O(!1), y = O(ve.enum[1]), m = [
|
|
3458
3458
|
{ value: ve.enum[1], label: "Version 1" },
|
|
3459
3459
|
{
|
|
3460
3460
|
value: ve.enum[2],
|
|
@@ -3565,7 +3565,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
3565
3565
|
])
|
|
3566
3566
|
]),
|
|
3567
3567
|
n("div", xa, [
|
|
3568
|
-
I(
|
|
3568
|
+
I(mt, null, {
|
|
3569
3569
|
default: M(() => [
|
|
3570
3570
|
l.value.length > 0 ? (A(), H(o, {
|
|
3571
3571
|
key: 0,
|
|
@@ -3635,7 +3635,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
3635
3635
|
currentLocationSetting: {}
|
|
3636
3636
|
},
|
|
3637
3637
|
setup(S) {
|
|
3638
|
-
const c = be(), e =
|
|
3638
|
+
const c = be(), e = je(), f = ue(), t = O(!1), u = S, l = O([]), a = O(/* @__PURE__ */ new Set()), p = O(!1), y = O(ve.enum[1]), m = [
|
|
3639
3639
|
{ value: ve.enum[1], label: "Version 1" },
|
|
3640
3640
|
{
|
|
3641
3641
|
value: ve.enum[2],
|
|
@@ -3748,7 +3748,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
3748
3748
|
])
|
|
3749
3749
|
]),
|
|
3750
3750
|
n("div", Fa, [
|
|
3751
|
-
I(
|
|
3751
|
+
I(mt, null, {
|
|
3752
3752
|
default: M(() => [
|
|
3753
3753
|
l.value.length > 0 ? (A(), H(o, {
|
|
3754
3754
|
key: 0,
|
|
@@ -3819,7 +3819,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
3819
3819
|
emits: ["update:show"],
|
|
3820
3820
|
setup(S, { emit: c }) {
|
|
3821
3821
|
var E;
|
|
3822
|
-
const e = be(), f = xe(), t = S, u =
|
|
3822
|
+
const e = be(), f = xe(), t = S, u = Be(t, "show"), { t: l } = ie(), a = c, p = ye(), y = ((E = p._currentLocation) == null ? void 0 : E.type) || "", m = [
|
|
3823
3823
|
{
|
|
3824
3824
|
label: "Inventory Transfer (Out)",
|
|
3825
3825
|
value: "inventoryTransfer"
|
|
@@ -3843,12 +3843,12 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
3843
3843
|
const r = L("FmIcon"), b = L("FmTabs"), x = L("FmButton"), d = L("FmSideSheet");
|
|
3844
3844
|
return A(), H(d, {
|
|
3845
3845
|
modelValue: F(u),
|
|
3846
|
-
"onUpdate:modelValue": s[2] || (s[2] = (i) =>
|
|
3846
|
+
"onUpdate:modelValue": s[2] || (s[2] = (i) => Ee(u) ? u.value = i : null),
|
|
3847
3847
|
header: "Data migration (Xilnex)",
|
|
3848
3848
|
"dismiss-away": "",
|
|
3849
3849
|
"close-button": "",
|
|
3850
3850
|
"max-width": 800
|
|
3851
|
-
},
|
|
3851
|
+
}, Se({
|
|
3852
3852
|
default: M(() => [
|
|
3853
3853
|
F(f).isCurrentLocationBindedToNetSuite ? (A(), V(Z, { key: 1 }, [
|
|
3854
3854
|
v.value === "inventoryTransfer" ? (A(), H(pa, {
|
|
@@ -3964,7 +3964,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
3964
3964
|
]),
|
|
3965
3965
|
_: 1
|
|
3966
3966
|
}),
|
|
3967
|
-
F(c).state.setting ? (A(), H(
|
|
3967
|
+
F(c).state.setting ? (A(), H(Re, {
|
|
3968
3968
|
key: 0,
|
|
3969
3969
|
to: "body"
|
|
3970
3970
|
}, [
|
|
@@ -4027,7 +4027,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
4027
4027
|
},
|
|
4028
4028
|
emits: ["update:bindings"],
|
|
4029
4029
|
setup(S, { emit: c }) {
|
|
4030
|
-
const e = S, f = c, t =
|
|
4030
|
+
const e = S, f = c, t = Me(), u = z(() => e.isAddon ? "Addons" : "Products"), l = z(() => e.isAddon ? [] : e.categories), a = z(
|
|
4031
4031
|
() => $t(l.value, e.variants, e.menus)
|
|
4032
4032
|
), p = z(() => {
|
|
4033
4033
|
if (e.isAddon)
|
|
@@ -4195,7 +4195,7 @@ const Eo = { class: "flex flex-col gap-24" }, Bo = { class: "fm-typo-en-body-md-
|
|
|
4195
4195
|
};
|
|
4196
4196
|
t.open({
|
|
4197
4197
|
title: `Select ${u.value}`,
|
|
4198
|
-
contentComponent:
|
|
4198
|
+
contentComponent: pt,
|
|
4199
4199
|
contentComponentProps: b,
|
|
4200
4200
|
primaryActions: {
|
|
4201
4201
|
text: "Confirm",
|
|
@@ -4286,10 +4286,10 @@ function de(S) {
|
|
|
4286
4286
|
const c = typeof S == "number" ? S : Number(S);
|
|
4287
4287
|
return Number.isFinite(c) ? c : 0;
|
|
4288
4288
|
}
|
|
4289
|
-
function
|
|
4289
|
+
function Ie(S) {
|
|
4290
4290
|
return typeof S == "string" ? S : S == null ? "" : String(S);
|
|
4291
4291
|
}
|
|
4292
|
-
function
|
|
4292
|
+
function Oe(S) {
|
|
4293
4293
|
return Array.isArray(S) ? S.filter((c) => c !== null && typeof c == "object") : [];
|
|
4294
4294
|
}
|
|
4295
4295
|
function Jt(S, c) {
|
|
@@ -4297,31 +4297,31 @@ function Jt(S, c) {
|
|
|
4297
4297
|
return e ? `${S} (${Number(e.toFixed(2))}%)` : S;
|
|
4298
4298
|
}
|
|
4299
4299
|
function Zt(S, c) {
|
|
4300
|
-
const e =
|
|
4300
|
+
const e = Ie(c.taxCode), f = Ie(c.taxName), t = `${e}|${f}`, u = S.get(t);
|
|
4301
4301
|
u ? u.amount += de(c.taxAmount) : S.set(t, {
|
|
4302
4302
|
label: Jt(f, de(c.taxPercentage)),
|
|
4303
4303
|
amount: de(c.taxAmount)
|
|
4304
4304
|
});
|
|
4305
4305
|
}
|
|
4306
4306
|
function Wt(S, c, e, f, t, u) {
|
|
4307
|
-
const l =
|
|
4307
|
+
const l = Oe(S.taxDetails), a = de(S.totalNetPrice), p = l.reduce((y, m) => y + de(m.taxAmount), 0);
|
|
4308
4308
|
e.push({
|
|
4309
4309
|
depth: c,
|
|
4310
|
-
code:
|
|
4311
|
-
name:
|
|
4310
|
+
code: Ie(c === 0 ? S.itemCode : S.modifierCode),
|
|
4311
|
+
name: Ie(c === 0 ? S.itemName : S.modifierName),
|
|
4312
4312
|
quantity: de(S.quantity),
|
|
4313
4313
|
amount: a,
|
|
4314
4314
|
tax: p,
|
|
4315
4315
|
total: Number((a + p).toFixed(2)),
|
|
4316
4316
|
taxDetails: l.map((y) => ({
|
|
4317
|
-
label: Jt(
|
|
4317
|
+
label: Jt(Ie(y.taxName), de(y.taxPercentage)),
|
|
4318
4318
|
amount: de(y.taxAmount),
|
|
4319
4319
|
percentage: de(y.taxPercentage)
|
|
4320
4320
|
}))
|
|
4321
4321
|
}), t.value += de(S.totalPrice), u.value += de(S.discountAmount);
|
|
4322
4322
|
for (const y of l)
|
|
4323
4323
|
Zt(f, y);
|
|
4324
|
-
for (const y of
|
|
4324
|
+
for (const y of Oe(S.invoiceModifiers))
|
|
4325
4325
|
Wt(y, c + 1, e, f, t, u);
|
|
4326
4326
|
}
|
|
4327
4327
|
function tl(S) {
|
|
@@ -4337,10 +4337,10 @@ function ol(S, c) {
|
|
|
4337
4337
|
if (S === null || typeof S != "object" || !Array.isArray(S.invoiceItems))
|
|
4338
4338
|
return null;
|
|
4339
4339
|
const e = S, f = [], t = /* @__PURE__ */ new Map(), u = { value: 0 }, l = { value: 0 };
|
|
4340
|
-
for (const C of
|
|
4340
|
+
for (const C of Oe(e.invoiceItems))
|
|
4341
4341
|
Wt(C, 0, f, t, u, l);
|
|
4342
4342
|
l.value += de(e.invoiceDiscountAmount);
|
|
4343
|
-
for (const C of
|
|
4343
|
+
for (const C of Oe(e.taxDetails))
|
|
4344
4344
|
Zt(t, C);
|
|
4345
4345
|
const a = [...t.values()], p = de(e.roundingAdj), y = de(e.grandTotal), m = c == null ? 0 : tl(p - c), v = c != null && m !== 0 ? [
|
|
4346
4346
|
{ label: "Rounding (bill)", amount: c },
|
|
@@ -4352,8 +4352,8 @@ function ol(S, c) {
|
|
|
4352
4352
|
...a,
|
|
4353
4353
|
...v,
|
|
4354
4354
|
{ label: "Total", amount: y, strong: !0 }
|
|
4355
|
-
], g =
|
|
4356
|
-
label: `${
|
|
4355
|
+
], g = Oe(e.invoicePayments).map((C) => ({
|
|
4356
|
+
label: `${Ie(C.paymentName)} (${Ie(C.paymentCode)})`,
|
|
4357
4357
|
amount: de(C.AmountPaid)
|
|
4358
4358
|
}));
|
|
4359
4359
|
return { lines: f, totals: h, payments: g, taxes: a };
|
|
@@ -4539,7 +4539,7 @@ var bl = {
|
|
|
4539
4539
|
"VOID",
|
|
4540
4540
|
"SUPERSEDE",
|
|
4541
4541
|
"REFUND"
|
|
4542
|
-
]),
|
|
4542
|
+
]), vt = D.nativeEnum(bl), en = D.nativeEnum(xl), gt = D.object({
|
|
4543
4543
|
/** M, string(100) — Tax Code */
|
|
4544
4544
|
taxCode: D.string(),
|
|
4545
4545
|
/** M, string(200) — Tax Name */
|
|
@@ -4558,14 +4558,14 @@ var bl = {
|
|
|
4558
4558
|
unitPrice: D.number(),
|
|
4559
4559
|
totalPrice: D.number(),
|
|
4560
4560
|
discountAmount: D.number(),
|
|
4561
|
-
discountType:
|
|
4561
|
+
discountType: vt,
|
|
4562
4562
|
discountValue: D.number(),
|
|
4563
4563
|
unitNetPrice: D.number(),
|
|
4564
4564
|
totalNetPrice: D.number(),
|
|
4565
4565
|
orderLine: D.number(),
|
|
4566
4566
|
parentLine: D.number(),
|
|
4567
4567
|
lineMode: en,
|
|
4568
|
-
taxDetails: D.array(
|
|
4568
|
+
taxDetails: D.array(gt),
|
|
4569
4569
|
invoiceModifiers: D.array(tn)
|
|
4570
4570
|
})
|
|
4571
4571
|
), hl = D.object({
|
|
@@ -4586,7 +4586,7 @@ var bl = {
|
|
|
4586
4586
|
/** M, decimal(10,2) — Item discount amount */
|
|
4587
4587
|
discountAmount: D.number(),
|
|
4588
4588
|
/** M, int(1) — '0' for percentage discount, '1' for monetary discount */
|
|
4589
|
-
discountType:
|
|
4589
|
+
discountType: vt,
|
|
4590
4590
|
/** M, decimal(10,2) — Item discount value. Either in percentage or monetary based on DiscountType */
|
|
4591
4591
|
discountValue: D.number(),
|
|
4592
4592
|
/** M, decimal(10,2) — Unit net price (after discount) */
|
|
@@ -4600,7 +4600,7 @@ var bl = {
|
|
|
4600
4600
|
/** M, int(5) — Item type indicator: 0 = Item, 1 = Combo Header, 2 = Combo Item, 3 = Modifier */
|
|
4601
4601
|
lineMode: en,
|
|
4602
4602
|
/** M, List — Tax/Service Charge */
|
|
4603
|
-
taxDetails: D.array(
|
|
4603
|
+
taxDetails: D.array(gt),
|
|
4604
4604
|
/** M, List — Tier 1 Modifier(s) of item */
|
|
4605
4605
|
invoiceModifiers: D.array(tn)
|
|
4606
4606
|
}), Il = D.object({
|
|
@@ -4635,7 +4635,7 @@ D.object({
|
|
|
4635
4635
|
/** M, decimal(10,2) — Bill Discount Amount (always 0 here: bill-level discounts are allocated onto item lines) */
|
|
4636
4636
|
invoiceDiscountAmount: D.number(),
|
|
4637
4637
|
/** M, int(1) — '0' for percentage discount, '1' for monetary discount */
|
|
4638
|
-
invoiceDiscountType:
|
|
4638
|
+
invoiceDiscountType: vt,
|
|
4639
4639
|
/** M, decimal(10,2) — The value of the discount. Either in percentage or monetary based on InvoiceDiscountType */
|
|
4640
4640
|
invoiceDiscountValue: D.number(),
|
|
4641
4641
|
/** M, decimal(10,2) — Rounding adjustment */
|
|
@@ -4643,7 +4643,7 @@ D.object({
|
|
|
4643
4643
|
/** M, decimal(10,2) — Grand total */
|
|
4644
4644
|
grandTotal: D.number(),
|
|
4645
4645
|
/** M, List — Tax/Service Charge */
|
|
4646
|
-
taxDetails: D.array(
|
|
4646
|
+
taxDetails: D.array(gt),
|
|
4647
4647
|
/** M, List — Item(s) of invoice */
|
|
4648
4648
|
invoiceItems: D.array(hl),
|
|
4649
4649
|
/** M, List — Payment(s) of invoice */
|
|
@@ -4706,16 +4706,16 @@ D.enum([
|
|
|
4706
4706
|
"status_not_syncable",
|
|
4707
4707
|
"no_active_items"
|
|
4708
4708
|
]);
|
|
4709
|
-
var
|
|
4709
|
+
var Le = D.object({
|
|
4710
4710
|
amount: D.number(),
|
|
4711
4711
|
precision: D.number()
|
|
4712
4712
|
});
|
|
4713
4713
|
D.object({
|
|
4714
4714
|
reason: D.string().nullable().optional(),
|
|
4715
|
-
total:
|
|
4715
|
+
total: Le.nullable().optional(),
|
|
4716
4716
|
adjustment: D.object({
|
|
4717
4717
|
type: D.string().nullable().optional(),
|
|
4718
|
-
amount:
|
|
4718
|
+
amount: Le.nullable().optional()
|
|
4719
4719
|
}).nullable().optional()
|
|
4720
4720
|
});
|
|
4721
4721
|
var nn = D.lazy(
|
|
@@ -4725,14 +4725,14 @@ var nn = D.lazy(
|
|
|
4725
4725
|
product: D.object({
|
|
4726
4726
|
name: D.string(),
|
|
4727
4727
|
categoryName: D.string().nullable().optional(),
|
|
4728
|
-
price:
|
|
4728
|
+
price: Le.nullable().optional()
|
|
4729
4729
|
}).nullable().optional(),
|
|
4730
4730
|
// a sold line always has a positive quantity — 0 makes no sense on a bill
|
|
4731
4731
|
quantity: D.number().positive(),
|
|
4732
4732
|
subItems: D.array(nn).nullable().optional(),
|
|
4733
4733
|
name: D.string().nullable().optional(),
|
|
4734
4734
|
selection: D.string().nullable().optional(),
|
|
4735
|
-
price:
|
|
4735
|
+
price: Le.nullable().optional()
|
|
4736
4736
|
})
|
|
4737
4737
|
);
|
|
4738
4738
|
D.array(nn).nullable().optional();
|
|
@@ -4740,7 +4740,7 @@ D.object({
|
|
|
4740
4740
|
/** Optional on the entity; the invoice line sends "" when absent. */
|
|
4741
4741
|
taxCode: D.string().nullable().optional(),
|
|
4742
4742
|
name: D.string(),
|
|
4743
|
-
total:
|
|
4743
|
+
total: Le.nullable().optional(),
|
|
4744
4744
|
/** true = the item price already contains this tax. POS writes it HERE, on
|
|
4745
4745
|
* the tax entry — `adjustment.inclusive` is a different (discount) notion
|
|
4746
4746
|
* and is null on real bills, so never read it for tax inclusivity. */
|
|
@@ -4751,7 +4751,7 @@ D.object({
|
|
|
4751
4751
|
level: D.number().nullable().optional(),
|
|
4752
4752
|
adjustment: D.object({
|
|
4753
4753
|
type: D.string().nullable().optional(),
|
|
4754
|
-
amount:
|
|
4754
|
+
amount: Le.nullable().optional()
|
|
4755
4755
|
}).nullable().optional()
|
|
4756
4756
|
});
|
|
4757
4757
|
const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
@@ -4781,7 +4781,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
4781
4781
|
}, Wl = {
|
|
4782
4782
|
key: 1,
|
|
4783
4783
|
class: "text-xs text-fm-color-neutral-gray-300"
|
|
4784
|
-
}, ei = { class: "border border-fm-color-neutral-gray-100 rounded-md" }, ti = { class: "px-12 pb-12" },
|
|
4784
|
+
}, ei = { class: "border border-fm-color-neutral-gray-100 rounded-md" }, ti = { class: "px-12 pb-12" }, et = 3, ni = /* @__PURE__ */ W({
|
|
4785
4785
|
__name: "CodemaxSyncStatusDialog",
|
|
4786
4786
|
props: {
|
|
4787
4787
|
show: { type: Boolean }
|
|
@@ -4792,9 +4792,9 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
4792
4792
|
var T;
|
|
4793
4793
|
return ((T = l.sessionUser.value) == null ? void 0 : T.role.isAdmin) ?? !1;
|
|
4794
4794
|
}), p = O(!1), y = O([]), m = O([]), v = O(!1), h = z(
|
|
4795
|
-
() => v.value ? m.value : m.value.slice(0,
|
|
4795
|
+
() => v.value ? m.value : m.value.slice(0, et)
|
|
4796
4796
|
), g = z(
|
|
4797
|
-
() => v.value ? 0 : m.value.slice(
|
|
4797
|
+
() => v.value ? 0 : m.value.slice(et).filter((T) => T.status === "failed").length
|
|
4798
4798
|
), C = O(""), E = O(St()), k = O(/* @__PURE__ */ new Set());
|
|
4799
4799
|
async function s() {
|
|
4800
4800
|
p.value = !0;
|
|
@@ -4826,7 +4826,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
4826
4826
|
p.value = !1;
|
|
4827
4827
|
}
|
|
4828
4828
|
}
|
|
4829
|
-
|
|
4829
|
+
Fe(E, s), Fe(
|
|
4830
4830
|
() => e.show,
|
|
4831
4831
|
(T) => {
|
|
4832
4832
|
T && (C.value = "", k.value = /* @__PURE__ */ new Set(), v.value = !1, E.value = St());
|
|
@@ -4844,8 +4844,8 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
4844
4844
|
failed: "critical",
|
|
4845
4845
|
skipped: "neutral",
|
|
4846
4846
|
partial: "warning",
|
|
4847
|
-
// Bill content moved after Codemax accepted the invoice —
|
|
4848
|
-
//
|
|
4847
|
+
// Bill content moved after Codemax accepted the invoice — nothing was sent
|
|
4848
|
+
// (a NEW would only earn 9101), so the change only lands via Supersede
|
|
4849
4849
|
changed: "warning"
|
|
4850
4850
|
};
|
|
4851
4851
|
function d(T) {
|
|
@@ -4886,7 +4886,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
4886
4886
|
function Ce(T, _) {
|
|
4887
4887
|
_ ? k.value.add(T) : k.value.delete(T), k.value = new Set(k.value);
|
|
4888
4888
|
}
|
|
4889
|
-
const
|
|
4889
|
+
const Pe = [
|
|
4890
4890
|
{
|
|
4891
4891
|
id: "select",
|
|
4892
4892
|
header: ({ table: T }) => {
|
|
@@ -4939,7 +4939,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
4939
4939
|
const _ = T.original, q = _.logs[0];
|
|
4940
4940
|
if (!q)
|
|
4941
4941
|
return N("div", { class: "text-fm-color-neutral-gray-300" }, "Not synced");
|
|
4942
|
-
const { code: Q, message: G, detail: te } = b(q), re = q.status === "failed" ? "text-red-500" : "text-fm-color-neutral-gray-300", me = o(q),
|
|
4942
|
+
const { code: Q, message: G, detail: te } = b(q), re = q.status === "failed" ? "text-red-500" : "text-fm-color-neutral-gray-300", me = o(q), we = w(_), _e = we === q ? void 0 : we;
|
|
4943
4943
|
return N("div", { class: "flex flex-col gap-4 py-8" }, [
|
|
4944
4944
|
N("div", { class: "text-xs" }, new Date(q.createdAt).toLocaleString()),
|
|
4945
4945
|
N("div", { class: "flex items-center gap-4" }, [
|
|
@@ -4954,7 +4954,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
4954
4954
|
icon: "receipt_long",
|
|
4955
4955
|
compact: !0
|
|
4956
4956
|
}) : null,
|
|
4957
|
-
|
|
4957
|
+
_e ? N(ne.FmChip, {
|
|
4958
4958
|
label: "changed",
|
|
4959
4959
|
variant: "warning",
|
|
4960
4960
|
icon: "edit_note",
|
|
@@ -4963,10 +4963,10 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
4963
4963
|
]),
|
|
4964
4964
|
G ? N("div", { class: `text-xs ${re}` }, Q ? `${Q} — ${G}` : G) : null,
|
|
4965
4965
|
te ? N("div", { class: `text-xs ${re}` }, te) : null,
|
|
4966
|
-
|
|
4966
|
+
_e ? N(
|
|
4967
4967
|
"div",
|
|
4968
4968
|
{ class: "text-xs text-amber-700" },
|
|
4969
|
-
`Changed after sync${R(
|
|
4969
|
+
`Changed after sync${R(_e) ? ` (${R(_e)})` : ""} — Codemax still holds the old invoice, supersede to overwrite`
|
|
4970
4970
|
) : null
|
|
4971
4971
|
]);
|
|
4972
4972
|
}
|
|
@@ -4983,7 +4983,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
4983
4983
|
variant: "plain",
|
|
4984
4984
|
icon: "sync",
|
|
4985
4985
|
disabled: ke.value,
|
|
4986
|
-
onClick: () =>
|
|
4986
|
+
onClick: () => Ge([_.billId])
|
|
4987
4987
|
}) : null,
|
|
4988
4988
|
X(_) ? N(ne.FmButton, {
|
|
4989
4989
|
label: "Supersede",
|
|
@@ -5004,24 +5004,24 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5004
5004
|
},
|
|
5005
5005
|
size: 300
|
|
5006
5006
|
}
|
|
5007
|
-
], ee = O(null),
|
|
5007
|
+
], ee = O(null), Ve = O([]), Ye = O(!1);
|
|
5008
5008
|
async function on(T) {
|
|
5009
|
-
ee.value = T,
|
|
5009
|
+
ee.value = T, Ve.value = [], Ne.value = /* @__PURE__ */ new Set(), Ye.value = !0;
|
|
5010
5010
|
try {
|
|
5011
5011
|
const _ = await u.readSyncLog({
|
|
5012
5012
|
billId: T.billId,
|
|
5013
5013
|
includePayload: a.value
|
|
5014
5014
|
});
|
|
5015
|
-
|
|
5015
|
+
Ve.value = _.reverse();
|
|
5016
5016
|
} catch (_) {
|
|
5017
5017
|
t.open({ title: "Something went wrong", message: "Failed to load sync history.", type: "error" }), console.error("Error at fetching Codemax sync history", _);
|
|
5018
5018
|
} finally {
|
|
5019
|
-
|
|
5019
|
+
Ye.value = !1;
|
|
5020
5020
|
}
|
|
5021
5021
|
}
|
|
5022
|
-
const
|
|
5022
|
+
const Ne = O(/* @__PURE__ */ new Set()), sn = z(() => {
|
|
5023
5023
|
const T = [], _ = /* @__PURE__ */ new Map();
|
|
5024
|
-
for (const q of
|
|
5024
|
+
for (const q of Ve.value) {
|
|
5025
5025
|
if (!q.runId) {
|
|
5026
5026
|
T.push({ key: `row-${T.length}`, logs: [q] });
|
|
5027
5027
|
continue;
|
|
@@ -5037,29 +5037,29 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5037
5037
|
return T;
|
|
5038
5038
|
});
|
|
5039
5039
|
function an(T) {
|
|
5040
|
-
const _ = new Set(
|
|
5041
|
-
_.has(T) ? _.delete(T) : _.add(T),
|
|
5040
|
+
const _ = new Set(Ne.value);
|
|
5041
|
+
_.has(T) ? _.delete(T) : _.add(T), Ne.value = _;
|
|
5042
5042
|
}
|
|
5043
|
-
const ge = O(null),
|
|
5043
|
+
const ge = O(null), $e = z(
|
|
5044
5044
|
() => {
|
|
5045
5045
|
var T, _;
|
|
5046
5046
|
return ((_ = (T = ge.value) == null ? void 0 : T.metadata) == null ? void 0 : _.bills) ?? [];
|
|
5047
5047
|
}
|
|
5048
|
-
),
|
|
5048
|
+
), yt = z(
|
|
5049
5049
|
() => {
|
|
5050
5050
|
var T, _;
|
|
5051
|
-
return Number(((_ = (T = ge.value) == null ? void 0 : T.metadata) == null ? void 0 : _.billsTotal) ??
|
|
5051
|
+
return Number(((_ = (T = ge.value) == null ? void 0 : T.metadata) == null ? void 0 : _.billsTotal) ?? $e.value.length);
|
|
5052
5052
|
}
|
|
5053
5053
|
);
|
|
5054
5054
|
function ln(T) {
|
|
5055
5055
|
var _;
|
|
5056
5056
|
return Number(((_ = T.metadata) == null ? void 0 : _.billsTotal) ?? 0);
|
|
5057
5057
|
}
|
|
5058
|
-
function
|
|
5058
|
+
function Ke(T) {
|
|
5059
5059
|
var _;
|
|
5060
5060
|
return ((_ = T == null ? void 0 : T.metadata) == null ? void 0 : _.triggeredBy) ?? null;
|
|
5061
5061
|
}
|
|
5062
|
-
function
|
|
5062
|
+
function bt(T) {
|
|
5063
5063
|
const { code: _, message: q } = b({
|
|
5064
5064
|
resultCode: T.resultCode,
|
|
5065
5065
|
errorMessage: T.detail,
|
|
@@ -5068,44 +5068,44 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5068
5068
|
return q ? _ ? `${_} — ${q}` : q : null;
|
|
5069
5069
|
}
|
|
5070
5070
|
const oe = O(null);
|
|
5071
|
-
|
|
5071
|
+
Fe(oe, () => {
|
|
5072
5072
|
i.value = { exchange: !0, log: !1 };
|
|
5073
5073
|
});
|
|
5074
5074
|
const ce = O(null);
|
|
5075
|
-
function
|
|
5076
|
-
const _ =
|
|
5075
|
+
function xt(T) {
|
|
5076
|
+
const _ = Ve.value.indexOf(T);
|
|
5077
5077
|
if (!(_ < 0))
|
|
5078
|
-
return
|
|
5078
|
+
return Ve.value.slice(_ + 1).find((q) => q.payload != null);
|
|
5079
5079
|
}
|
|
5080
5080
|
function rn(T) {
|
|
5081
|
-
const _ =
|
|
5081
|
+
const _ = xt(T);
|
|
5082
5082
|
_ && (ce.value = { current: T, previous: _ });
|
|
5083
5083
|
}
|
|
5084
|
-
function
|
|
5084
|
+
function At(T, _, q = "") {
|
|
5085
5085
|
if (T === _)
|
|
5086
5086
|
return [];
|
|
5087
5087
|
const Q = (G) => G !== null && typeof G == "object";
|
|
5088
5088
|
return Q(T) && Q(_) && Array.isArray(T) === Array.isArray(_) ? [.../* @__PURE__ */ new Set([...Object.keys(T), ...Object.keys(_)])].flatMap(
|
|
5089
|
-
(te) =>
|
|
5089
|
+
(te) => At(T[te], _[te], q ? `${q}.${te}` : te)
|
|
5090
5090
|
) : [{ path: q, previous: T, current: _ }];
|
|
5091
5091
|
}
|
|
5092
|
-
const
|
|
5093
|
-
() => ce.value ?
|
|
5092
|
+
const Qe = z(
|
|
5093
|
+
() => ce.value ? At(ce.value.previous.payload, ce.value.current.payload) : []
|
|
5094
5094
|
);
|
|
5095
|
-
function
|
|
5095
|
+
function ht(T) {
|
|
5096
5096
|
const _ = (q) => q === "NEW" || q === "SUPERSEDE";
|
|
5097
5097
|
return T.path === "invoiceStatus" && _(T.previous) && _(T.current);
|
|
5098
5098
|
}
|
|
5099
|
-
const un = z(() =>
|
|
5100
|
-
function
|
|
5099
|
+
const un = z(() => Qe.value.filter((T) => !ht(T)));
|
|
5100
|
+
function It(T) {
|
|
5101
5101
|
return T === void 0 ? "(absent)" : JSON.stringify(T);
|
|
5102
5102
|
}
|
|
5103
5103
|
const ke = O(!1);
|
|
5104
5104
|
async function dn() {
|
|
5105
5105
|
const T = U.value;
|
|
5106
|
-
U.value = null, T != null && T.length && await
|
|
5106
|
+
U.value = null, T != null && T.length && await Ge(T, { supersede: !0 });
|
|
5107
5107
|
}
|
|
5108
|
-
async function
|
|
5108
|
+
async function Ge(T, _ = {}) {
|
|
5109
5109
|
const q = _.supersede ? "Supersede" : "Resync", Q = _.supersede ? "superseded" : "resynced";
|
|
5110
5110
|
ke.value = !0;
|
|
5111
5111
|
try {
|
|
@@ -5122,7 +5122,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5122
5122
|
}
|
|
5123
5123
|
}
|
|
5124
5124
|
return (T, _) => {
|
|
5125
|
-
const q = L("FmSearch"), Q = L("FmButton"), G = L("FmTable"), te = L("FmSpacer"), re = L("FmDialog"), me = L("FmCircularProgress"),
|
|
5125
|
+
const q = L("FmSearch"), Q = L("FmButton"), G = L("FmTable"), te = L("FmSpacer"), re = L("FmDialog"), me = L("FmCircularProgress"), we = L("FmChip"), _e = L("FmIcon");
|
|
5126
5126
|
return A(), V(Z, null, [
|
|
5127
5127
|
I(re, {
|
|
5128
5128
|
modelValue: e.show,
|
|
@@ -5166,7 +5166,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5166
5166
|
label: `Resync selected (${k.value.size})`,
|
|
5167
5167
|
size: "md",
|
|
5168
5168
|
loading: ke.value,
|
|
5169
|
-
onClick: _[2] || (_[2] = (K) =>
|
|
5169
|
+
onClick: _[2] || (_[2] = (K) => Ge(Array.from(k.value)))
|
|
5170
5170
|
}, null, 8, ["label", "loading"])) : j("", !0),
|
|
5171
5171
|
P.value.length > 0 ? (A(), H(Q, {
|
|
5172
5172
|
key: 1,
|
|
@@ -5187,7 +5187,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5187
5187
|
n("div", {
|
|
5188
5188
|
class: se(K.status === "failed" ? "text-red-500" : "text-fm-color-neutral-gray-300")
|
|
5189
5189
|
}, B(K.message), 3),
|
|
5190
|
-
|
|
5190
|
+
Ke(K) ? (A(), V("div", _l, " by " + B(Ke(K)), 1)) : j("", !0),
|
|
5191
5191
|
ln(K) > 0 ? (A(), H(Q, {
|
|
5192
5192
|
key: 1,
|
|
5193
5193
|
label: "Details",
|
|
@@ -5197,7 +5197,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5197
5197
|
}, null, 8, ["onClick"])) : j("", !0)
|
|
5198
5198
|
]))), 128))
|
|
5199
5199
|
]),
|
|
5200
|
-
m.value.length >
|
|
5200
|
+
m.value.length > et ? (A(), H(Q, {
|
|
5201
5201
|
key: 0,
|
|
5202
5202
|
label: v.value ? "Show less" : `Show all ${m.value.length} runs${g.value > 0 ? ` (${g.value} failed)` : ""}`,
|
|
5203
5203
|
size: "md",
|
|
@@ -5207,7 +5207,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5207
5207
|
}, null, 8, ["label", "icon"])) : j("", !0)
|
|
5208
5208
|
])) : j("", !0),
|
|
5209
5209
|
I(G, {
|
|
5210
|
-
"column-defs":
|
|
5210
|
+
"column-defs": Pe,
|
|
5211
5211
|
"row-data": y.value,
|
|
5212
5212
|
"search-value": C.value,
|
|
5213
5213
|
loading: p.value
|
|
@@ -5272,27 +5272,27 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5272
5272
|
]),
|
|
5273
5273
|
default: M(() => [
|
|
5274
5274
|
n("div", El, [
|
|
5275
|
-
|
|
5275
|
+
Ye.value ? (A(), H(me, {
|
|
5276
5276
|
key: 0,
|
|
5277
5277
|
size: "md"
|
|
5278
|
-
})) :
|
|
5278
|
+
})) : Ve.value.length === 0 ? (A(), V("div", Bl, " No sync logs for this bill. ")) : j("", !0),
|
|
5279
5279
|
(A(!0), V(Z, null, ae(sn.value, (K) => (A(), V("div", {
|
|
5280
5280
|
key: K.key,
|
|
5281
5281
|
class: "border-b border-fm-color-neutral-gray-100"
|
|
5282
5282
|
}, [
|
|
5283
|
-
(A(!0), V(Z, null, ae(
|
|
5284
|
-
key:
|
|
5285
|
-
class: se(["flex items-start justify-between gap-8 py-8",
|
|
5283
|
+
(A(!0), V(Z, null, ae(Ne.value.has(K.key) ? K.logs : K.logs.slice(0, 1), (J, He) => (A(), V("div", {
|
|
5284
|
+
key: He,
|
|
5285
|
+
class: se(["flex items-start justify-between gap-8 py-8", He > 0 ? "pl-16" : ""])
|
|
5286
5286
|
}, [
|
|
5287
5287
|
n("div", Vl, [
|
|
5288
5288
|
n("div", null, B(new Date(J.createdAt).toLocaleString()), 1),
|
|
5289
5289
|
n("div", Nl, [
|
|
5290
|
-
I(
|
|
5290
|
+
I(we, {
|
|
5291
5291
|
label: J.status,
|
|
5292
5292
|
variant: d(J.status),
|
|
5293
5293
|
compact: ""
|
|
5294
5294
|
}, null, 8, ["label", "variant"]),
|
|
5295
|
-
o(J) ? (A(), H(
|
|
5295
|
+
o(J) ? (A(), H(we, {
|
|
5296
5296
|
key: 0,
|
|
5297
5297
|
label: o(J),
|
|
5298
5298
|
variant: "plain",
|
|
@@ -5309,10 +5309,10 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5309
5309
|
class: se(`text-xs ${J.status === "failed" ? "text-red-500" : "text-fm-color-neutral-gray-300"}`)
|
|
5310
5310
|
}, B(b(J).detail), 3)) : j("", !0)
|
|
5311
5311
|
]),
|
|
5312
|
-
I(
|
|
5312
|
+
I(mt, null, {
|
|
5313
5313
|
default: M(() => [
|
|
5314
5314
|
n("div", Dl, [
|
|
5315
|
-
J.payload &&
|
|
5315
|
+
J.payload && xt(J) ? (A(), H(Q, {
|
|
5316
5316
|
key: 0,
|
|
5317
5317
|
label: "Compare",
|
|
5318
5318
|
size: "md",
|
|
@@ -5334,10 +5334,10 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5334
5334
|
], 2))), 128)),
|
|
5335
5335
|
K.logs.length > 1 ? (A(), H(Q, {
|
|
5336
5336
|
key: 0,
|
|
5337
|
-
label:
|
|
5337
|
+
label: Ne.value.has(K.key) ? "Show less" : `${K.logs.length - 1} more attempt${K.logs.length > 2 ? "s" : ""}`,
|
|
5338
5338
|
size: "md",
|
|
5339
5339
|
variant: "plain",
|
|
5340
|
-
icon:
|
|
5340
|
+
icon: Ne.value.has(K.key) ? "expand_less" : "expand_more",
|
|
5341
5341
|
class: "mb-8",
|
|
5342
5342
|
onClick: (J) => an(K.key)
|
|
5343
5343
|
}, null, 8, ["label", "icon", "onClick"])) : j("", !0)
|
|
@@ -5369,28 +5369,28 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5369
5369
|
n("div", Ll, [
|
|
5370
5370
|
n("div", Tl, [
|
|
5371
5371
|
le(B((K = ge.value) == null ? void 0 : K.message) + " ", 1),
|
|
5372
|
-
|
|
5373
|
-
le(" · Triggered by " + B(
|
|
5372
|
+
Ke(ge.value) ? (A(), V(Z, { key: 0 }, [
|
|
5373
|
+
le(" · Triggered by " + B(Ke(ge.value)), 1)
|
|
5374
5374
|
], 64)) : j("", !0)
|
|
5375
5375
|
]),
|
|
5376
|
-
(A(!0), V(Z, null, ae(
|
|
5377
|
-
key:
|
|
5376
|
+
(A(!0), V(Z, null, ae($e.value, (J, He) => (A(), V("div", {
|
|
5377
|
+
key: He,
|
|
5378
5378
|
class: "flex flex-col gap-4 py-8 border-b border-fm-color-neutral-gray-100"
|
|
5379
5379
|
}, [
|
|
5380
5380
|
n("div", Rl, [
|
|
5381
5381
|
n("div", null, B(J.billSeq ?? "-"), 1),
|
|
5382
|
-
I(
|
|
5382
|
+
I(we, {
|
|
5383
5383
|
label: J.status,
|
|
5384
5384
|
compact: ""
|
|
5385
5385
|
}, null, 8, ["label"])
|
|
5386
5386
|
]),
|
|
5387
5387
|
n("div", Ml, B(J.billId), 1),
|
|
5388
|
-
|
|
5388
|
+
bt(J) ? (A(), V("div", {
|
|
5389
5389
|
key: 0,
|
|
5390
5390
|
class: se(`text-xs ${J.status === "failed" ? "text-red-500" : "text-fm-color-neutral-gray-300"}`)
|
|
5391
|
-
}, B(
|
|
5391
|
+
}, B(bt(J)), 3)) : j("", !0)
|
|
5392
5392
|
]))), 128)),
|
|
5393
|
-
|
|
5393
|
+
yt.value > $e.value.length ? (A(), V("div", Ol, " Showing " + B($e.value.length) + " of " + B(yt.value) + " bills. ", 1)) : j("", !0)
|
|
5394
5394
|
])
|
|
5395
5395
|
];
|
|
5396
5396
|
}),
|
|
@@ -5419,17 +5419,17 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5419
5419
|
default: M(() => [
|
|
5420
5420
|
n("div", Ul, [
|
|
5421
5421
|
ce.value ? (A(), V("div", zl, B(new Date(ce.value.previous.createdAt).toLocaleString()) + " (" + B(o(ce.value.previous) ?? ce.value.previous.status) + ") → " + B(new Date(ce.value.current.createdAt).toLocaleString()) + " (" + B(o(ce.value.current) ?? ce.value.current.status) + ") ", 1)) : j("", !0),
|
|
5422
|
-
|
|
5423
|
-
(A(!0), V(Z, null, ae(
|
|
5422
|
+
Qe.value.length === 0 ? (A(), V("div", jl, " Payloads are identical — dedup skips a re-sync of this content. ")) : un.value.length === 0 ? (A(), V("div", Pl, " Only invoiceStatus differs (NEW ↔ SUPERSEDE) — dedup treats these as the same sale, so this content would not re-sync. ")) : j("", !0),
|
|
5423
|
+
(A(!0), V(Z, null, ae(Qe.value, (K, J) => (A(), V("div", {
|
|
5424
5424
|
key: J,
|
|
5425
5425
|
class: "flex flex-col gap-4 py-8 border-b border-fm-color-neutral-gray-100"
|
|
5426
5426
|
}, [
|
|
5427
5427
|
n("div", $l, [
|
|
5428
5428
|
le(B(K.path) + " ", 1),
|
|
5429
|
-
|
|
5429
|
+
ht(K) ? (A(), V("span", Kl, " (ignored by dedup) ")) : j("", !0)
|
|
5430
5430
|
]),
|
|
5431
|
-
n("div", Hl, " - " + B(
|
|
5432
|
-
n("div", ql, " + " + B(
|
|
5431
|
+
n("div", Hl, " - " + B(It(K.previous)), 1),
|
|
5432
|
+
n("div", ql, " + " + B(It(K.current)), 1)
|
|
5433
5433
|
]))), 128))
|
|
5434
5434
|
])
|
|
5435
5435
|
]),
|
|
@@ -5466,23 +5466,23 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5466
5466
|
onClick: _[15] || (_[15] = (J) => i.value.exchange = !i.value.exchange)
|
|
5467
5467
|
}, [
|
|
5468
5468
|
n("div", Ql, [
|
|
5469
|
-
I(
|
|
5469
|
+
I(we, {
|
|
5470
5470
|
label: o(oe.value) ?? oe.value.stage,
|
|
5471
5471
|
compact: ""
|
|
5472
5472
|
}, null, 8, ["label"]),
|
|
5473
5473
|
n("div", Gl, B(oe.value.invoiceNo), 1),
|
|
5474
|
-
oe.value.resultCode ? (A(), H(
|
|
5474
|
+
oe.value.resultCode ? (A(), H(we, {
|
|
5475
5475
|
key: 0,
|
|
5476
5476
|
label: oe.value.resultCode,
|
|
5477
5477
|
variant: d(oe.value.status),
|
|
5478
5478
|
compact: ""
|
|
5479
5479
|
}, null, 8, ["label", "variant"])) : j("", !0)
|
|
5480
5480
|
]),
|
|
5481
|
-
I(
|
|
5481
|
+
I(_e, {
|
|
5482
5482
|
name: i.value.exchange ? "expand_less" : "expand_more"
|
|
5483
5483
|
}, null, 8, ["name"])
|
|
5484
5484
|
]),
|
|
5485
|
-
|
|
5485
|
+
nt(n("div", Jl, [
|
|
5486
5486
|
n("div", null, [
|
|
5487
5487
|
_[23] || (_[23] = n("div", { class: "font-bold mb-4" }, "Request payload", -1)),
|
|
5488
5488
|
oe.value.payload ? (A(), V(Z, { key: 0 }, [
|
|
@@ -5491,7 +5491,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5491
5491
|
"bill-rounding": (K = ee.value) == null ? void 0 : K.rounding,
|
|
5492
5492
|
class: "mb-8"
|
|
5493
5493
|
}, null, 8, ["payload", "bill-rounding"]),
|
|
5494
|
-
(A(), H(
|
|
5494
|
+
(A(), H(Ze, {
|
|
5495
5495
|
key: `${oe.value.createdAt}-${oe.value.stage}-payload`,
|
|
5496
5496
|
value: oe.value.payload
|
|
5497
5497
|
}, null, 8, ["value"]))
|
|
@@ -5499,13 +5499,13 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5499
5499
|
]),
|
|
5500
5500
|
n("div", null, [
|
|
5501
5501
|
_[24] || (_[24] = n("div", { class: "font-bold mb-4" }, "Response", -1)),
|
|
5502
|
-
oe.value.response ? (A(), H(
|
|
5502
|
+
oe.value.response ? (A(), H(Ze, {
|
|
5503
5503
|
key: `${oe.value.createdAt}-${oe.value.stage}-response`,
|
|
5504
5504
|
value: oe.value.response
|
|
5505
5505
|
}, null, 8, ["value"])) : (A(), V("div", Wl, "No response recorded."))
|
|
5506
5506
|
])
|
|
5507
5507
|
], 512), [
|
|
5508
|
-
[
|
|
5508
|
+
[ot, i.value.exchange]
|
|
5509
5509
|
])
|
|
5510
5510
|
]),
|
|
5511
5511
|
n("div", ei, [
|
|
@@ -5515,17 +5515,17 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5515
5515
|
onClick: _[16] || (_[16] = (J) => i.value.log = !i.value.log)
|
|
5516
5516
|
}, [
|
|
5517
5517
|
_[25] || (_[25] = n("div", { class: "font-bold" }, "Log entry", -1)),
|
|
5518
|
-
I(
|
|
5518
|
+
I(_e, {
|
|
5519
5519
|
name: i.value.log ? "expand_less" : "expand_more"
|
|
5520
5520
|
}, null, 8, ["name"])
|
|
5521
5521
|
]),
|
|
5522
|
-
|
|
5523
|
-
(A(), H(
|
|
5522
|
+
nt(n("div", ti, [
|
|
5523
|
+
(A(), H(Ze, {
|
|
5524
5524
|
key: `${oe.value.createdAt}-${oe.value.stage}-log`,
|
|
5525
5525
|
value: oe.value
|
|
5526
5526
|
}, null, 8, ["value"]))
|
|
5527
5527
|
], 512), [
|
|
5528
|
-
[
|
|
5528
|
+
[ot, i.value.log]
|
|
5529
5529
|
])
|
|
5530
5530
|
])
|
|
5531
5531
|
])) : j("", !0)
|
|
@@ -5536,7 +5536,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5536
5536
|
], 64);
|
|
5537
5537
|
};
|
|
5538
5538
|
}
|
|
5539
|
-
}),
|
|
5539
|
+
}), tt = {
|
|
5540
5540
|
key: "codemax",
|
|
5541
5541
|
valueColumns: [
|
|
5542
5542
|
{ field: "itemCode", header: "CodeMax Code", aliases: ["codemaxcode"], required: !0 },
|
|
@@ -5562,8 +5562,8 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5562
5562
|
},
|
|
5563
5563
|
emits: ["update:setting", "update:show", "submit"],
|
|
5564
5564
|
setup(S, { emit: c }) {
|
|
5565
|
-
const e = S, f = c, t =
|
|
5566
|
-
|
|
5565
|
+
const e = S, f = c, t = lt(fe(e.setting));
|
|
5566
|
+
Fe([() => e.show], ([i]) => {
|
|
5567
5567
|
if (i)
|
|
5568
5568
|
for (const w of Object.keys(e.setting))
|
|
5569
5569
|
t[w] = e.setting[w];
|
|
@@ -5581,7 +5581,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5581
5581
|
function m(i) {
|
|
5582
5582
|
t.bindings = [...p.value, ...i];
|
|
5583
5583
|
}
|
|
5584
|
-
const v = O(), h =
|
|
5584
|
+
const v = O(), h = Me(), g = ue(), C = be();
|
|
5585
5585
|
function E() {
|
|
5586
5586
|
var w;
|
|
5587
5587
|
const { filename: i } = Xt(
|
|
@@ -5589,7 +5589,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5589
5589
|
e.categories,
|
|
5590
5590
|
t.bindings,
|
|
5591
5591
|
e.variants,
|
|
5592
|
-
|
|
5592
|
+
tt,
|
|
5593
5593
|
(w = C.currentBusiness.value) == null ? void 0 : w.name
|
|
5594
5594
|
);
|
|
5595
5595
|
g.open({
|
|
@@ -5603,7 +5603,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5603
5603
|
title: o("inventory.integration.bindingImport.dialogTitle"),
|
|
5604
5604
|
contentComponent: Yt,
|
|
5605
5605
|
contentComponentProps: {
|
|
5606
|
-
config:
|
|
5606
|
+
config: tt,
|
|
5607
5607
|
menus: e.menus,
|
|
5608
5608
|
variants: e.variants,
|
|
5609
5609
|
bindings: fe(t.bindings)
|
|
@@ -5624,7 +5624,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5624
5624
|
variant: "plain"
|
|
5625
5625
|
}
|
|
5626
5626
|
}).onPrimary((i) => {
|
|
5627
|
-
if (!i || !
|
|
5627
|
+
if (!i || !Ue(i).length) {
|
|
5628
5628
|
g.open({
|
|
5629
5629
|
title: o("inventory.integration.bindingImport.nothingToImport.title"),
|
|
5630
5630
|
message: o("inventory.integration.bindingImport.nothingToImport.message"),
|
|
@@ -5639,7 +5639,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5639
5639
|
h.open({
|
|
5640
5640
|
title: o("inventory.integration.bindingImport.previewTitle"),
|
|
5641
5641
|
contentComponent: Qt,
|
|
5642
|
-
contentComponentProps: { config:
|
|
5642
|
+
contentComponentProps: { config: tt, result: i },
|
|
5643
5643
|
overlay: !0,
|
|
5644
5644
|
closeButton: !0,
|
|
5645
5645
|
minWidth: 900,
|
|
@@ -5653,7 +5653,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5653
5653
|
close: !0
|
|
5654
5654
|
}
|
|
5655
5655
|
}).onPrimary(() => {
|
|
5656
|
-
const w =
|
|
5656
|
+
const w = Ue(i);
|
|
5657
5657
|
t.bindings = qt(t.bindings, w), g.open({
|
|
5658
5658
|
title: o("inventory.integration.bindingImport.importSuccess.title"),
|
|
5659
5659
|
message: o("inventory.integration.bindingImport.importSuccess.message", { count: w.length }),
|
|
@@ -5661,7 +5661,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5661
5661
|
});
|
|
5662
5662
|
});
|
|
5663
5663
|
}
|
|
5664
|
-
const r =
|
|
5664
|
+
const r = Be(e, "show"), b = O(!1);
|
|
5665
5665
|
function x() {
|
|
5666
5666
|
var i, w;
|
|
5667
5667
|
(w = (i = v.value) == null ? void 0 : i.validateInputs) == null || w.call(i);
|
|
@@ -5675,7 +5675,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5675
5675
|
return A(), V(Z, null, [
|
|
5676
5676
|
I(U, {
|
|
5677
5677
|
modelValue: F(r),
|
|
5678
|
-
"onUpdate:modelValue": w[6] || (w[6] = (P) =>
|
|
5678
|
+
"onUpdate:modelValue": w[6] || (w[6] = (P) => Ee(r) ? r.value = P : null),
|
|
5679
5679
|
header: F(o)("inventory.integration.apply.title"),
|
|
5680
5680
|
"dismiss-away": "",
|
|
5681
5681
|
"close-button": "",
|
|
@@ -5739,7 +5739,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5739
5739
|
]),
|
|
5740
5740
|
_: 1
|
|
5741
5741
|
}, 8, ["modelValue", "header"]),
|
|
5742
|
-
(A(), H(
|
|
5742
|
+
(A(), H(Re, { to: "body" }, [
|
|
5743
5743
|
I(ni, {
|
|
5744
5744
|
show: b.value,
|
|
5745
5745
|
"onUpdate:show": w[7] || (w[7] = (P) => b.value = P)
|
|
@@ -5781,7 +5781,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5781
5781
|
}, fi = /* @__PURE__ */ W({
|
|
5782
5782
|
__name: "Codemax",
|
|
5783
5783
|
setup(S) {
|
|
5784
|
-
const c = ye(), e = Sn(), f = be(), t = ue(), u = O(!1), l = O(!1), { breakpoints: a } =
|
|
5784
|
+
const c = ye(), e = Sn(), f = be(), t = ue(), u = O(!1), l = O(!1), { breakpoints: a } = rt(), p = z(() => a.value.xs || a.value.sm), y = z(() => {
|
|
5785
5785
|
var g;
|
|
5786
5786
|
return (g = f.currentBusiness.value) == null ? void 0 : g.menuVersion;
|
|
5787
5787
|
}), m = z(() => y.value !== "v3");
|
|
@@ -5851,8 +5851,8 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5851
5851
|
]),
|
|
5852
5852
|
_: 1
|
|
5853
5853
|
}, 8, ["class"]),
|
|
5854
|
-
(A(), H(
|
|
5855
|
-
F(e).state.setting ?
|
|
5854
|
+
(A(), H(Re, { to: "body" }, [
|
|
5855
|
+
F(e).state.setting ? nt((A(), H(li, {
|
|
5856
5856
|
key: 0,
|
|
5857
5857
|
menus: F(e).state.menu,
|
|
5858
5858
|
variants: F(e).state.variants,
|
|
@@ -5865,7 +5865,7 @@ const Sl = { class: "flex items-center gap-2 mb-3" }, wl = {
|
|
|
5865
5865
|
loading: u.value,
|
|
5866
5866
|
onSubmit: C[3] || (C[3] = (s) => v())
|
|
5867
5867
|
}, null, 8, ["menus", "variants", "categories", "groups", "setting", "show", "loading"])), [
|
|
5868
|
-
[
|
|
5868
|
+
[ot, m.value]
|
|
5869
5869
|
]) : j("", !0)
|
|
5870
5870
|
]))
|
|
5871
5871
|
])) : j("", !0);
|
|
@@ -5918,17 +5918,17 @@ async function vi(S, c, e) {
|
|
|
5918
5918
|
let k = Number(m.totalPhysicalCustomCost);
|
|
5919
5919
|
const s = S[E._id];
|
|
5920
5920
|
s && (k = s * Number(g));
|
|
5921
|
-
const r =
|
|
5921
|
+
const r = Ae.fromNumber(Number(g)), b = {
|
|
5922
5922
|
amount: r,
|
|
5923
5923
|
cost: {
|
|
5924
|
-
...
|
|
5924
|
+
...Ae.fromNumber(Number(k)),
|
|
5925
5925
|
currency: "MYR"
|
|
5926
5926
|
}
|
|
5927
5927
|
};
|
|
5928
5928
|
g != "0" && C == "0" && console.warn(`Item ${v} ${h} has 0 cost.`), u[l = E._id] ?? (u[l] = {
|
|
5929
5929
|
skuAdjustment: {
|
|
5930
5930
|
sku: E,
|
|
5931
|
-
fromBalance:
|
|
5931
|
+
fromBalance: Ae.fromNumber(0),
|
|
5932
5932
|
amounts: [
|
|
5933
5933
|
{
|
|
5934
5934
|
_id: null,
|
|
@@ -6000,7 +6000,7 @@ const bi = { class: "flex flex-col gap-4" }, xi = { class: "flex flex-col" }, Ai
|
|
|
6000
6000
|
}, Mi = /* @__PURE__ */ W({
|
|
6001
6001
|
__name: "XilnexOpeningImport",
|
|
6002
6002
|
setup(S) {
|
|
6003
|
-
const c = wn(), e = xe(), f =
|
|
6003
|
+
const c = wn(), e = xe(), f = ze(), t = Dt(), u = ue(), l = ye(), a = z(() => [
|
|
6004
6004
|
{
|
|
6005
6005
|
value: "xilnex",
|
|
6006
6006
|
label: "Xilnex",
|
|
@@ -6015,7 +6015,7 @@ const bi = { class: "flex flex-col gap-4" }, xi = { class: "flex flex-col" }, Ai
|
|
|
6015
6015
|
disabledReason: "Current location is not binded to NetSuite"
|
|
6016
6016
|
}
|
|
6017
6017
|
] : []
|
|
6018
|
-
]), p = O(a.value[0].value), { t: y } =
|
|
6018
|
+
]), p = O(a.value[0].value), { t: y } = Xe(), m = O(null), v = O(), h = O(""), g = O([]), C = O([]), E = [
|
|
6019
6019
|
{
|
|
6020
6020
|
id: "ingredient",
|
|
6021
6021
|
header: () => "Ingredient",
|
|
@@ -6038,7 +6038,7 @@ const bi = { class: "flex flex-col gap-4" }, xi = { class: "flex flex-col" }, Ai
|
|
|
6038
6038
|
N(
|
|
6039
6039
|
"span",
|
|
6040
6040
|
{ class: "font-medium" },
|
|
6041
|
-
|
|
6041
|
+
Ae.toFormatString({
|
|
6042
6042
|
value: w.skuAdjustment.amounts[0].amount
|
|
6043
6043
|
})
|
|
6044
6044
|
)
|
|
@@ -6078,7 +6078,7 @@ const bi = { class: "flex flex-col gap-4" }, xi = { class: "flex flex-col" }, Ai
|
|
|
6078
6078
|
N(
|
|
6079
6079
|
"span",
|
|
6080
6080
|
{ class: "font-medium" },
|
|
6081
|
-
|
|
6081
|
+
Ae.toFormatString({
|
|
6082
6082
|
value: $
|
|
6083
6083
|
})
|
|
6084
6084
|
)
|
|
@@ -6168,10 +6168,10 @@ const bi = { class: "flex flex-col gap-4" }, xi = { class: "flex flex-col" }, Ai
|
|
|
6168
6168
|
}), o = z(() => {
|
|
6169
6169
|
if (!x.value) return null;
|
|
6170
6170
|
const i = new Date(x.value);
|
|
6171
|
-
return isNaN(i.getTime()) ? null :
|
|
6171
|
+
return isNaN(i.getTime()) ? null : ct(i);
|
|
6172
6172
|
});
|
|
6173
6173
|
return (i, w) => {
|
|
6174
|
-
const R = L("FmLabel"), $ = L("FmField"), X = L("FmSimpleDatePicker"), U = L("FmButton"), P = L("FmIcon"), Y = L("FmRadio"), Ce = L("FmRadioGroup"),
|
|
6174
|
+
const R = L("FmLabel"), $ = L("FmField"), X = L("FmSimpleDatePicker"), U = L("FmButton"), P = L("FmIcon"), Y = L("FmRadio"), Ce = L("FmRadioGroup"), Pe = L("FmTable");
|
|
6175
6175
|
return A(), V("div", bi, [
|
|
6176
6176
|
n("div", xi, [
|
|
6177
6177
|
I(R, { label: "Latest closing" })
|
|
@@ -6181,7 +6181,7 @@ const bi = { class: "flex flex-col gap-4" }, xi = { class: "flex flex-col" }, Ai
|
|
|
6181
6181
|
disabled: ""
|
|
6182
6182
|
}, {
|
|
6183
6183
|
default: M(() => [
|
|
6184
|
-
le(B(F(c).state.closingDocumentId ? `${F(
|
|
6184
|
+
le(B(F(c).state.closingDocumentId ? `${F(dt)(new Date(F(it)(F(c).state.closingDocumentId)))}` : "No closing found"), 1)
|
|
6185
6185
|
]),
|
|
6186
6186
|
_: 1
|
|
6187
6187
|
}),
|
|
@@ -6222,12 +6222,12 @@ const bi = { class: "flex flex-col gap-4" }, xi = { class: "flex flex-col" }, Ai
|
|
|
6222
6222
|
n("div", hi, [
|
|
6223
6223
|
I(R, { label: "Stock take file" })
|
|
6224
6224
|
]),
|
|
6225
|
-
I(
|
|
6225
|
+
I(ut, {
|
|
6226
6226
|
onFileUpload: w[1] || (w[1] = (ee) => {
|
|
6227
6227
|
ee && (m.value = ee);
|
|
6228
6228
|
}),
|
|
6229
6229
|
accept: ".xlsx, .xls, .csv"
|
|
6230
|
-
},
|
|
6230
|
+
}, Se({ _: 2 }, [
|
|
6231
6231
|
m.value ? {
|
|
6232
6232
|
name: "default",
|
|
6233
6233
|
fn: M(({ openFileDialog: ee }) => [
|
|
@@ -6302,7 +6302,7 @@ const bi = { class: "flex flex-col gap-4" }, xi = { class: "flex flex-col" }, Ai
|
|
|
6302
6302
|
]),
|
|
6303
6303
|
m.value && C.value.length > 0 ? (A(), V(Z, { key: 0 }, [
|
|
6304
6304
|
w[4] || (w[4] = n("h2", { class: "fm-typo-en-title-md-800 mt-8 mb-4" }, "Results", -1)),
|
|
6305
|
-
I(
|
|
6305
|
+
I(Pe, {
|
|
6306
6306
|
modelValue: v.value,
|
|
6307
6307
|
"onUpdate:modelValue": w[3] || (w[3] = (ee) => v.value = ee),
|
|
6308
6308
|
"row-data": C.value,
|
|
@@ -6313,7 +6313,7 @@ const bi = { class: "flex flex-col gap-4" }, xi = { class: "flex flex-col" }, Ai
|
|
|
6313
6313
|
], 64)) : j("", !0),
|
|
6314
6314
|
g.value.length > 0 ? (A(), V(Z, { key: 1 }, [
|
|
6315
6315
|
w[5] || (w[5] = n("h2", { class: "fm-typo-en-title-md-800 mt-8 mb-4 text-red-600" }, "Errors", -1)),
|
|
6316
|
-
I(
|
|
6316
|
+
I(Pe, {
|
|
6317
6317
|
"row-data": g.value,
|
|
6318
6318
|
"column-defs": k
|
|
6319
6319
|
}, null, 8, ["row-data"])
|
|
@@ -6345,12 +6345,12 @@ const bi = { class: "flex flex-col gap-4" }, xi = { class: "flex flex-col" }, Ai
|
|
|
6345
6345
|
emits: ["update:show"],
|
|
6346
6346
|
setup(S, { emit: c }) {
|
|
6347
6347
|
var v;
|
|
6348
|
-
const e = be(), t =
|
|
6349
|
-
{ label:
|
|
6348
|
+
const e = be(), t = Be(S, "show"), { t: u } = ie(), l = c, a = ye(), p = ((v = a._currentLocation) == null ? void 0 : v.type) || "", y = [
|
|
6349
|
+
{ label: qe(
|
|
6350
6350
|
"openingBalance"
|
|
6351
6351
|
/* OPENING_BALANCE */
|
|
6352
6352
|
) },
|
|
6353
|
-
{ label:
|
|
6353
|
+
{ label: qe(
|
|
6354
6354
|
"transferNote"
|
|
6355
6355
|
/* TRANSFER_NOTE */
|
|
6356
6356
|
) }
|
|
@@ -6360,21 +6360,21 @@ const bi = { class: "flex flex-col gap-4" }, xi = { class: "flex flex-col" }, Ai
|
|
|
6360
6360
|
const C = L("FmIcon"), E = L("FmButtonGroup"), k = L("FmButton"), s = L("FmSideSheet");
|
|
6361
6361
|
return A(), H(s, {
|
|
6362
6362
|
modelValue: F(t),
|
|
6363
|
-
"onUpdate:modelValue": g[2] || (g[2] = (b) =>
|
|
6363
|
+
"onUpdate:modelValue": g[2] || (g[2] = (b) => Ee(t) ? t.value = b : null),
|
|
6364
6364
|
header: "Data migration (Xilnex)",
|
|
6365
6365
|
"dismiss-away": "",
|
|
6366
6366
|
"close-button": "",
|
|
6367
6367
|
"max-width": 800
|
|
6368
|
-
},
|
|
6368
|
+
}, Se({
|
|
6369
6369
|
default: M(() => {
|
|
6370
6370
|
var b;
|
|
6371
6371
|
return [
|
|
6372
6372
|
(b = F(e).sessionUser.value) != null && b.role.isAdmin ? (A(), V("div", $i, [
|
|
6373
|
-
m.value.label === F(
|
|
6373
|
+
m.value.label === F(qe)(
|
|
6374
6374
|
"openingBalance"
|
|
6375
6375
|
/* OPENING_BALANCE */
|
|
6376
6376
|
) ? (A(), H(Mi, { key: 0 })) : j("", !0),
|
|
6377
|
-
m.value.label === F(
|
|
6377
|
+
m.value.label === F(qe)(
|
|
6378
6378
|
"transferNote"
|
|
6379
6379
|
/* TRANSFER_NOTE */
|
|
6380
6380
|
) ? (A(), V("div", Ki, " Not available yet. ")) : j("", !0)
|
|
@@ -6459,7 +6459,7 @@ const bi = { class: "flex flex-col gap-4" }, xi = { class: "flex flex-col" }, Ai
|
|
|
6459
6459
|
]),
|
|
6460
6460
|
_: 1
|
|
6461
6461
|
}),
|
|
6462
|
-
(A(), H(
|
|
6462
|
+
(A(), H(Re, { to: "body" }, [
|
|
6463
6463
|
I(qi, {
|
|
6464
6464
|
show: f.value,
|
|
6465
6465
|
"onUpdate:show": l[1] || (l[1] = (y) => f.value = y)
|
|
@@ -6506,17 +6506,17 @@ async function Yi(S, c, e) {
|
|
|
6506
6506
|
let k = Number(m.total);
|
|
6507
6507
|
const s = S[E._id];
|
|
6508
6508
|
s && (k = s * Number(g));
|
|
6509
|
-
const r =
|
|
6509
|
+
const r = Ae.fromNumber(Number(g)), b = {
|
|
6510
6510
|
amount: r,
|
|
6511
6511
|
cost: {
|
|
6512
|
-
...
|
|
6512
|
+
...Ae.fromNumber(Number(k)),
|
|
6513
6513
|
currency: "MYR"
|
|
6514
6514
|
}
|
|
6515
6515
|
};
|
|
6516
6516
|
g != "0" && C == "0" && console.warn(`Item ${v} ${h} has 0 cost.`), u[p = E._id] ?? (u[p] = {
|
|
6517
6517
|
skuAdjustment: {
|
|
6518
6518
|
sku: E,
|
|
6519
|
-
fromBalance:
|
|
6519
|
+
fromBalance: Ae.fromNumber(0),
|
|
6520
6520
|
amounts: [
|
|
6521
6521
|
{
|
|
6522
6522
|
_id: null,
|
|
@@ -6581,13 +6581,13 @@ const Ji = { class: "flex flex-col gap-4" }, Zi = { class: "flex flex-col" }, Wi
|
|
|
6581
6581
|
}, sr = { class: "line-clamp-2 text-ellipsis break-all" }, ar = { class: "flex flex-col" }, lr = { class: "font-medium" }, ir = { class: "text-fm-color-typo-secondary fm-typo-en-body-md-400" }, rr = { class: "flex" }, ur = { class: "flex" }, dr = { key: 1 }, cr = /* @__PURE__ */ W({
|
|
6582
6582
|
__name: "SynergyOpeningImport",
|
|
6583
6583
|
setup(S) {
|
|
6584
|
-
const c = Cn(), e =
|
|
6584
|
+
const c = Cn(), e = ze(), f = Dt(), t = ue(), u = z(() => [
|
|
6585
6585
|
{
|
|
6586
6586
|
value: "synergy",
|
|
6587
6587
|
label: "Synergy",
|
|
6588
6588
|
subLabel: "Based on Synergy's item cost from excel file"
|
|
6589
6589
|
}
|
|
6590
|
-
]), l = O(u.value[0].value), { t: a } =
|
|
6590
|
+
]), l = O(u.value[0].value), { t: a } = Xe(), p = O(null), y = O(), m = O(""), v = O([]), h = O([]), g = [
|
|
6591
6591
|
{
|
|
6592
6592
|
id: "ingredient",
|
|
6593
6593
|
header: () => "Ingredient",
|
|
@@ -6610,7 +6610,7 @@ const Ji = { class: "flex flex-col gap-4" }, Zi = { class: "flex flex-col" }, Wi
|
|
|
6610
6610
|
N(
|
|
6611
6611
|
"span",
|
|
6612
6612
|
{ class: "font-medium" },
|
|
6613
|
-
|
|
6613
|
+
Ae.toFormatString({
|
|
6614
6614
|
value: o.skuAdjustment.amounts[0].amount
|
|
6615
6615
|
})
|
|
6616
6616
|
)
|
|
@@ -6650,7 +6650,7 @@ const Ji = { class: "flex flex-col gap-4" }, Zi = { class: "flex flex-col" }, Wi
|
|
|
6650
6650
|
N(
|
|
6651
6651
|
"span",
|
|
6652
6652
|
{ class: "font-medium" },
|
|
6653
|
-
|
|
6653
|
+
Ae.toFormatString({
|
|
6654
6654
|
value: w
|
|
6655
6655
|
})
|
|
6656
6656
|
)
|
|
@@ -6739,7 +6739,7 @@ const Ji = { class: "flex flex-col gap-4" }, Zi = { class: "flex flex-col" }, Wi
|
|
|
6739
6739
|
}), x = z(() => {
|
|
6740
6740
|
if (!r.value) return null;
|
|
6741
6741
|
const d = new Date(r.value);
|
|
6742
|
-
return isNaN(d.getTime()) ? null :
|
|
6742
|
+
return isNaN(d.getTime()) ? null : ct(d);
|
|
6743
6743
|
});
|
|
6744
6744
|
return (d, o) => {
|
|
6745
6745
|
const i = L("FmLabel"), w = L("FmField"), R = L("FmSimpleDatePicker"), $ = L("FmButton"), X = L("FmRadio"), U = L("FmRadioGroup"), P = L("FmTable");
|
|
@@ -6752,7 +6752,7 @@ const Ji = { class: "flex flex-col gap-4" }, Zi = { class: "flex flex-col" }, Wi
|
|
|
6752
6752
|
disabled: ""
|
|
6753
6753
|
}, {
|
|
6754
6754
|
default: M(() => [
|
|
6755
|
-
le(B(F(c).state.closingDocumentId ? `${F(
|
|
6755
|
+
le(B(F(c).state.closingDocumentId ? `${F(dt)(new Date(F(it)(F(c).state.closingDocumentId)))}` : "No closing found"), 1)
|
|
6756
6756
|
]),
|
|
6757
6757
|
_: 1
|
|
6758
6758
|
}),
|
|
@@ -6781,12 +6781,12 @@ const Ji = { class: "flex flex-col gap-4" }, Zi = { class: "flex flex-col" }, Wi
|
|
|
6781
6781
|
n("div", er, [
|
|
6782
6782
|
I(i, { label: "Stock take file" })
|
|
6783
6783
|
]),
|
|
6784
|
-
I(
|
|
6784
|
+
I(ut, {
|
|
6785
6785
|
onFileUpload: o[1] || (o[1] = (Y) => {
|
|
6786
6786
|
Y && (p.value = Y);
|
|
6787
6787
|
}),
|
|
6788
6788
|
accept: ".xlsx, .xls, .csv"
|
|
6789
|
-
},
|
|
6789
|
+
}, Se({ _: 2 }, [
|
|
6790
6790
|
p.value ? {
|
|
6791
6791
|
name: "default",
|
|
6792
6792
|
fn: M(({ openFileDialog: Y }) => [
|
|
@@ -6888,18 +6888,18 @@ const Ji = { class: "flex flex-col gap-4" }, Zi = { class: "flex flex-col" }, Wi
|
|
|
6888
6888
|
emits: ["update:show"],
|
|
6889
6889
|
setup(S, { emit: c }) {
|
|
6890
6890
|
var y;
|
|
6891
|
-
const e = be(), t =
|
|
6891
|
+
const e = be(), t = Be(S, "show"), { t: u } = ie(), l = c, a = ye(), p = ((y = a._currentLocation) == null ? void 0 : y.type) || "";
|
|
6892
6892
|
return (m, v) => {
|
|
6893
6893
|
var E;
|
|
6894
6894
|
const h = L("FmIcon"), g = L("FmButton"), C = L("FmSideSheet");
|
|
6895
6895
|
return A(), H(C, {
|
|
6896
6896
|
modelValue: F(t),
|
|
6897
|
-
"onUpdate:modelValue": v[1] || (v[1] = (k) =>
|
|
6897
|
+
"onUpdate:modelValue": v[1] || (v[1] = (k) => Ee(t) ? t.value = k : null),
|
|
6898
6898
|
header: "Data migration (Synergy)",
|
|
6899
6899
|
"dismiss-away": "",
|
|
6900
6900
|
"close-button": "",
|
|
6901
6901
|
"max-width": 800
|
|
6902
|
-
},
|
|
6902
|
+
}, Se({
|
|
6903
6903
|
default: M(() => {
|
|
6904
6904
|
var k;
|
|
6905
6905
|
return [
|
|
@@ -6981,7 +6981,7 @@ const Ji = { class: "flex flex-col gap-4" }, Zi = { class: "flex flex-col" }, Wi
|
|
|
6981
6981
|
]),
|
|
6982
6982
|
_: 1
|
|
6983
6983
|
}),
|
|
6984
|
-
(A(), H(
|
|
6984
|
+
(A(), H(Re, { to: "body" }, [
|
|
6985
6985
|
I(xr, {
|
|
6986
6986
|
show: f.value,
|
|
6987
6987
|
"onUpdate:show": l[1] || (l[1] = (y) => f.value = y)
|
|
@@ -7002,7 +7002,7 @@ const Ji = { class: "flex flex-col gap-4" }, Zi = { class: "flex flex-col" }, Wi
|
|
|
7002
7002
|
}, Gr = /* @__PURE__ */ W({
|
|
7003
7003
|
__name: "IntegrationView",
|
|
7004
7004
|
setup(S) {
|
|
7005
|
-
const c = ye(), e = O(!1), f = kn(), { breakpoints: t } =
|
|
7005
|
+
const c = ye(), e = O(!1), f = kn(), { breakpoints: t } = rt(), u = z(() => t.value.xs || t.value.sm), { t: l } = ie();
|
|
7006
7006
|
async function a() {
|
|
7007
7007
|
e.value = !0;
|
|
7008
7008
|
try {
|
|
@@ -7013,7 +7013,7 @@ const Ji = { class: "flex flex-col gap-4" }, Zi = { class: "flex flex-col" }, Wi
|
|
|
7013
7013
|
}
|
|
7014
7014
|
return c.watchLocation(async (p) => {
|
|
7015
7015
|
p && await a();
|
|
7016
|
-
}, "integration-view"), vn(() => c.unwatchLocation("integration-view")),
|
|
7016
|
+
}, "integration-view"), vn(() => c.unwatchLocation("integration-view")), Te(async () => {
|
|
7017
7017
|
c._currentLocation && await a();
|
|
7018
7018
|
}), (p, y) => {
|
|
7019
7019
|
const m = L("FmCircularProgress");
|