@feedmepos/mf-inventory-portal 1.8.0-dev.0 → 1.8.0-dev.10
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-BjFIh5km.js +1466 -0
- package/dist/{ApprovalView-BK6E_3Cw.js → ApprovalView-CauRuf64.js} +26 -25
- package/dist/{BindingsDialog-BAVPQ_Eq.js → BindingsDialog-U-tzIfGX.js} +2 -2
- package/dist/{BindingsPicker-bAuDX7Af.js → BindingsPicker-CV_oghtz.js} +2 -2
- package/dist/{BindingsTable-LGlvV0lt.js → BindingsTable-TKSQxAxV.js} +4 -4
- package/dist/{BulkReceiveRequestView-CQf7FYos.js → BulkReceiveRequestView-Cyeq26qc.js} +21 -21
- package/dist/ChangeLocationComponent.vue_vue_type_script_setup_true_lang-BpJhboKU.js +151 -0
- package/dist/{ClosingDraftView-DH7iYiE9.js → ClosingDraftView-UqeHsxyJ.js} +748 -746
- package/dist/ClosingHistoryView-Cr6cQq6j.js +769 -0
- package/dist/{ClosingTemplateView-D532GNTn.js → ClosingTemplateView-DZ0Mdc87.js} +303 -291
- package/dist/{CustomPrintTemplatePreview.vue_vue_type_script_setup_true_lang-CvqZGcvX.js → CustomPrintTemplatePreview.vue_vue_type_script_setup_true_lang-C-OsCTxZ.js} +1 -1
- package/dist/{DefaultView-DqqXJVba.js → DefaultView-DQKHG5Jl.js} +2 -2
- package/dist/{DeliveryOrderPrintPreview-DkHNDEKP.js → DeliveryOrderPrintPreview-Z_kBbMMO.js} +2 -2
- package/dist/{EmailDialog.vue_vue_type_script_setup_true_lang-Cyj3ka37.js → EmailDialog.vue_vue_type_script_setup_true_lang-Ce6Ly9pT.js} +6228 -6216
- package/dist/FeatureCapabilityBadge.vue_vue_type_script_setup_true_lang-BUYI8koH.js +47 -0
- package/dist/FeatureCapabilityGate-DOn2IVJb.js +74 -0
- package/dist/{FmDateRangePickerChip.vue_vue_type_script_setup_true_lang-BCuhx2cN.js → FmDateRangePickerChip.vue_vue_type_script_setup_true_lang-BJuo4lEh.js} +1 -1
- package/dist/{FmFilterableMenuOptions.vue_vue_type_script_setup_true_lang-CDNqm_9N.js → FmFilterableMenuOptions.vue_vue_type_script_setup_true_lang-DZxz5hbo.js} +2 -2
- package/dist/FmInventoryTableToolbar.vue_vue_type_script_setup_true_lang-CiBhz5sq.js +120 -0
- package/dist/FmMultiselectDialog-Bx9cLdYs.js +123 -0
- package/dist/{FmMultiselectDialog-eH3nO3P3.js → FmMultiselectDialog-DvaWLGY5.js} +2 -2
- package/dist/{FmUnitInput.vue_vue_type_script_setup_true_lang-BCIkEl75.js → FmUnitInput.vue_vue_type_script_setup_true_lang-D6f1M96D.js} +72 -73
- package/dist/ImportView-1-cjN7ay.js +1290 -0
- package/dist/{IngredientsView-DtDtzaMt.js → IngredientsView-JfKlUU2E.js} +656 -649
- package/dist/{IntegrationExplorerView-C4lYc_LH.js → IntegrationExplorerView-uElgWH8i.js} +602 -614
- package/dist/IntegrationPlatformView-g2dU5SG6.js +13061 -0
- package/dist/{IntegrationView-Bx5VdV5l.js → IntegrationView-B9g888K4.js} +2956 -2922
- package/dist/{InventoryBindingForm-DKa1DwYs.js → InventoryBindingForm-DfGOKZWg.js} +1 -1
- package/dist/InventoryBindingForm.vue_vue_type_script_setup_true_lang-CNjTdNL7.js +472 -0
- package/dist/{InventoryBindingSummary-CNqwcsrX.js → InventoryBindingSummary-CSii8B2X.js} +1 -1
- package/dist/JsonViewer.vue_vue_type_script_setup_true_lang-C_hg75l0.js +25 -0
- package/dist/NumberPrecisionInput.vue_vue_type_script_setup_true_lang-D_Xk4SOH.js +79 -0
- package/dist/PlanTierBadge.vue_vue_type_script_setup_true_lang-DJvfMOND.js +274 -0
- package/dist/PlanUpgradeDialog.vue_vue_type_script_setup_true_lang-Bdjm0Y4w.js +79 -0
- package/dist/ProductionRunDetailView-HgH2Wp99.js +2312 -0
- package/dist/{production-run-prepare-sheet-aQOcxgaC.js → ProductionRunLifecycleDialogs.vue_vue_type_script_setup_true_lang-C88pjV2s.js} +11039 -3661
- package/dist/ProductionRunView-BkvQHeCP.js +931 -0
- package/dist/{PublishView-D0oSoJ5a.js → PublishView-CIei_T5e.js} +3 -3
- package/dist/{PurchaseOrderPrintPreview-CE-l4mvB.js → PurchaseOrderPrintPreview-Wmv7676h.js} +2 -2
- package/dist/{ReceiveRequestView-B2z8Ji0e.js → ReceiveRequestView-MqOIpIDB.js} +15 -15
- package/dist/RecipeView-WzXJX4JU.js +3440 -0
- package/dist/SettingsView-1YlgjyzB.js +1032 -0
- package/dist/StockView-C-dIRXPv.js +2651 -0
- package/dist/{SubsidiaryTreeDialog.vue_vue_type_script_setup_true_lang-BTh5E4Tt.js → SubsidiaryTreeDialog.vue_vue_type_script_setup_true_lang-CewKTZzy.js} +1 -1
- package/dist/{SupplierView-qqhUQ-SY.js → SupplierView-53rHhQ63.js} +577 -571
- package/dist/{SurchargeView-B0TYUfqY.js → SurchargeView-DuJb5EUn.js} +7 -7
- package/dist/{SystemTrailDialog.vue_vue_type_script_setup_true_lang-tfMHi9Yv.js → SystemTrailDialog.vue_vue_type_script_setup_true_lang-C_YmC-ZX.js} +2 -2
- package/dist/TableActionableRow.vue_vue_type_script_setup_true_lang-gJQQKKAC.js +71 -0
- package/dist/{TemplatePublishDialog.vue_vue_type_script_setup_true_lang-Dxc-jNte.js → TemplatePublishDialog.vue_vue_type_script_setup_true_lang-CyQujMzv.js} +1 -1
- package/dist/{TransferDetails.vue_vue_type_script_setup_true_lang-BX36zWMb.js → TransferDetails.vue_vue_type_script_setup_true_lang-CMwqjlb0.js} +1722 -1672
- package/dist/TransferTemplateView-B6OGfKQr.js +2343 -0
- package/dist/{UnitCostHistoryView-xdRSkjD7.js → UnitCostHistoryView-BVlq4BNG.js} +4 -4
- package/dist/{UnitDisplayControl.vue_vue_type_script_setup_true_lang-BT2v1gZv.js → UnitDisplayControl.vue_vue_type_script_setup_true_lang-CULJEeCU.js} +4 -4
- package/dist/{UnitView-p-V_TMMo.js → UnitView-AuIJokVF.js} +84 -84
- package/dist/{WarehouseView-BOGYcUHH.js → WarehouseView-Cjv8S1ov.js} +194 -189
- package/dist/{WastageTemplateView-CiifZMq6.js → WastageTemplateView-mxSTzVSZ.js} +19 -18
- package/dist/api/bill.d.ts +144 -88
- package/dist/api/feature-flags.d.ts +12 -0
- package/dist/api/food-market-hub.d.ts +2 -2
- package/dist/api/integration-sync-log.d.ts +0 -13
- package/dist/api/inventory.d.ts +9 -9
- package/dist/api/license.d.ts +8 -0
- package/dist/{app-CGcDbrt8.js → app-OztWApio.js} +27841 -28064
- package/dist/app.d.ts +36 -150
- package/dist/app.js +1 -1
- package/dist/{closing-template-B4lQetjU.js → closing-template-DIxXDgZQ.js} +1 -1
- package/dist/components/ChangeLocationComponent.vue.d.ts +21 -14
- package/dist/components/DeprecateSoonWarningDialog.vue.d.ts +22 -0
- package/dist/components/FeatureCapabilityBadge.vue.d.ts +29 -0
- package/dist/components/FeatureCapabilityGate.vue.d.ts +29 -0
- package/dist/components/FmUnitInputRules.d.ts +1 -1
- package/dist/components/MultiLocationSelector.vue.d.ts +6 -6
- package/dist/components/{PreviewBadge.vue.d.ts → PlanTierBadge.vue.d.ts} +5 -13
- package/dist/components/PlanUpgradeDialog.vue.d.ts +30 -0
- package/dist/composable/useNavigationMenu.d.ts +2 -1
- package/dist/{date2-CHOcS7LX.js → date2-BTzYzk-x.js} +1 -1
- package/dist/{dayjs.min-DrqpmBJQ.js → dayjs.min-BIg6CfC4.js} +1 -1
- package/dist/{decimal-BJ-B2ZXz.js → decimal-B34w3X7O.js} +2 -2
- package/dist/{defineDeepModel-DLlTW3xL.js → defineDeepModel-CrZAv12u.js} +1 -1
- package/dist/{duplicate-template-Dyz7iXqd.js → duplicate-template-BKVPhi40.js} +1 -1
- package/dist/{inventory-core-dart.default-DGI40oFz.js → feature-BUVZ_ab3.js} +766 -398
- package/dist/feature-flags/core.d.ts +28 -0
- package/dist/feature-flags/navigation-capabilities.d.ts +23 -0
- package/dist/feature-flags/navigation-capabilities.spec.d.ts +1 -0
- package/dist/feature-flags/plan-tier.d.ts +6 -0
- package/dist/feature-flags/plan-tier.spec.d.ts +1 -0
- package/dist/feature-flags/portal-feature-catalog.d.ts +19 -0
- package/dist/feature-flags/portal-feature-catalog.spec.d.ts +1 -0
- package/dist/feature-flags/vue.d.ts +16 -0
- package/dist/feature-flags/vue.spec.d.ts +1 -0
- package/dist/{format-time-from-id-DBFdt14U.js → format-time-from-id-DGLxhRFH.js} +1 -1
- package/dist/{format-unit-display-BXCWhtXb.js → format-unit-display-BhudItCc.js} +118 -119
- package/dist/helper/menu-usage-module.d.ts +1 -1
- package/dist/helper/number.d.ts +5 -1
- package/dist/helper/rules.d.ts +1 -1
- package/dist/id-to-date-BfwadWDS.js +67 -0
- package/dist/{import-export.helper-BgaADwYQ.js → import-export.helper-BdQ_d-fT.js} +16 -17
- package/dist/{index-BT-a2SOP.js → index-BTNI4XZ2.js} +1 -1
- package/dist/{index-BS5wlvV_.js → index-B_hoeQNL.js} +3 -3
- package/dist/{JsonViewer.vue_vue_type_script_setup_true_lang-ig2zSXAB.js → index-C25C1Dg7.js} +1074 -1066
- package/dist/{index-CqgYx0tx.js → index-CCvxPS3E.js} +1 -1
- package/dist/index-eGvSlWMU.js +1892 -0
- package/dist/{lz-string-CRDgHWib.js → lz-string-CVEGZpSC.js} +1 -1
- package/dist/{netsuite-CaILEA4R.js → netsuite-DEhdSyBn.js} +9 -3
- package/dist/{predefined-templates-CTLn4dgR.js → predefined-templates-BTdQl7jj.js} +1 -1
- package/dist/{purchase-order-template-CE4_gQyK.js → purchase-order-template-DfMmpsrJ.js} +1 -1
- package/dist/{recalculationUtils-DoBJhZjA.js → recalculationUtils-Ds9Jcg0l.js} +1 -1
- package/dist/router/name.d.ts +2 -3
- package/dist/{row-action.enum-ncgDYAjP.js → row-action.enum-B2Y5YFbc.js} +2 -2
- package/dist/rules-D01xYhgI.js +238 -0
- package/dist/{stock-WxsPiRKa.js → stock-D3kBNq3e.js} +1 -1
- package/dist/stock-DyTC4Teu.js +74 -0
- package/dist/stores/feature.d.ts +20 -2
- package/dist/stores/integration/codemax.d.ts +2 -2
- package/dist/stores/integration/foodmarkethub.d.ts +2 -2
- package/dist/stores/integration/netsuite.d.ts +2 -2
- package/dist/stores/inventory.d.ts +0 -47
- package/dist/stores/inventory.no-location.spec.d.ts +1 -0
- package/dist/stores/location.d.ts +42 -42
- package/dist/stores/supplier.d.ts +49 -49
- package/dist/stores/warehouse.d.ts +3 -2
- package/dist/style.css +1 -1
- package/dist/{supplier-DbdPWPj7.js → supplier-DaidezrO.js} +2 -2
- package/dist/{surcharge-BsvY29nN.js → surcharge-C-PFvvlU.js} +1 -1
- package/dist/tsconfig.app.tsbuildinfo +1 -1
- package/dist/{uom-rules-dxyRNetA.js → uom-rules-Un5bhcrm.js} +1 -1
- package/dist/{use-ingredient-select-dialog-eYM-6q4s.js → use-ingredient-select-dialog-DV_hkAt9.js} +2 -2
- package/dist/use-inventory-binding-dialog-CTceyFrg.js +113 -0
- package/dist/{use-template-enabled-locations-C0o5r4_0.js → use-template-enabled-locations-DGqw8tvz.js} +2 -2
- package/dist/{use-transfer-locations-CC35SlyA.js → use-transfer-locations-DgtKajec.js} +2 -2
- package/dist/{useHrmPermission-DxzYJX4n.js → useHrmPermission-BMpZlah6.js} +1 -1
- package/dist/useNavigationMenu-D0NtXAnB.js +346 -0
- package/dist/{useSseClient-ml-_A-4u.js → useSseClient-CHZZxy7Z.js} +1 -1
- package/dist/views/adjustment-template/wastage-template/actions.d.ts +36 -36
- package/dist/views/adjustment-template/wastage-template/table.d.ts +36 -36
- package/dist/views/closing-draft/components/closing-draft-dialog/ClosingDraftApprovalDialog.vue.d.ts +6 -6
- package/dist/views/closing-draft/components/closing-draft-dialog/ClosingDraftDialog.vue.d.ts +12 -12
- package/dist/views/closing-draft/components/closing-draft-groups/ClosingGroupDetailSideSheet.vue.d.ts +6 -6
- package/dist/views/closing-draft/composables/use-closing-draft-import.d.ts +3 -3
- package/dist/views/closing-draft/composables/use-closing-draft-table.d.ts +18 -18
- package/dist/views/closing-template/composables/use-closing-template-actions.d.ts +45 -45
- package/dist/views/closing-template/composables/use-closing-template-table.d.ts +36 -36
- package/dist/views/ingredients/components/inventory-binding/InventoryBindingForm.vue.d.ts +0 -1
- package/dist/views/ingredients/components/inventory-binding/composables/use-inventory-binding-dialog.d.ts +0 -1
- package/dist/views/ingredients/components/inventory-binding/recipe-amount-validation.spec.d.ts +1 -0
- package/dist/views/ingredients/components/inventory-binding/v2/InventoryBindingFormV2.vue.d.ts +0 -1
- package/dist/views/ingredients/components/inventory-binding/v2/composables/use-inventory-binding-dialog.d.ts +0 -1
- package/dist/views/ingredients/helper/is-linked-ingredient-error.d.ts +1 -1
- package/dist/{components/PremiumBadge.vue.d.ts → views/integration/IntegrationPlatformView.vue.d.ts} +11 -13
- package/dist/views/integration/components/ApplyProductDialog.vue.d.ts +4 -4
- package/dist/views/integration/components/ApplyProductDialogCodemax.vue.d.ts +4 -4
- package/dist/views/integration/components/ApplyProductDialogV4.vue.d.ts +4 -4
- package/dist/views/integration/components/CodemaxDialog.vue.d.ts +4 -4
- package/dist/views/integration/components/IntegrationCard.vue.d.ts +38 -0
- package/dist/views/integration/components/Synergy/importFn.spec.d.ts +1 -0
- package/dist/views/integration/components/Xilnex/importFn.spec.d.ts +1 -0
- package/dist/views/integration/components/netsuite/business/AddLocationDialog.vue.d.ts +36 -36
- package/dist/views/integration/components/netsuite/business/AddVendorDialog.vue.d.ts +24 -24
- package/dist/views/integration/helper/opening-balance.d.ts +22 -0
- package/dist/views/integration/helper/opening-balance.spec.d.ts +1 -0
- package/dist/views/production-run/features/detail/ProductionRunDetailTabs.spec.d.ts +1 -0
- package/dist/views/production-run/features/detail/{ProductionRunTabs.vue.d.ts → ProductionRunDetailTabs.vue.d.ts} +4 -8
- package/dist/views/production-run/features/detail/ProductionRunOverviewTab.vue.d.ts +2 -2
- package/dist/views/production-run/features/detail/use-production-run-detail.d.ts +4 -4
- package/dist/views/production-run/features/lifecycle/CancelRunDialog.vue.d.ts +2 -2
- package/dist/views/production-run/features/lifecycle/CloseRunDialog.vue.d.ts +2 -2
- package/dist/views/production-run/features/lifecycle/ProductionRunLifecycleDialogs.vue.d.ts +11 -11
- package/dist/views/production-run/features/lifecycle/TargetReachedDialog.vue.d.ts +2 -2
- package/dist/views/production-run/features/planning/ProductionRunFormDialog.vue.d.ts +2 -2
- package/dist/views/production-run/features/planning/use-production-run-duplicate-sources.d.ts +3 -3
- package/dist/views/production-run/features/prepare/production-run-prepare-sheet.d.ts +0 -9
- package/dist/views/production-run/shared/helpers/production-run-navigation.d.ts +0 -2
- package/dist/views/production-run/shared/model/production-run-list.d.ts +0 -1
- package/dist/views/production-run/shared/ui/ProductionRunScrollHint.vue.d.ts +10 -0
- package/dist/views/receive-request/components/transfer-form/TransferFormWithController.vue.d.ts +5 -5
- package/dist/views/receive-request/composables/netsuite-order-label.d.ts +11 -0
- package/dist/views/receive-request/composables/netsuite-order-label.spec.d.ts +1 -0
- package/dist/views/receive-request/composables/use-process-purchase-order.d.ts +6 -6
- package/dist/views/receive-request/composables/use-receive-request-form.d.ts +48 -48
- package/dist/views/receive-request/composables/use-receive-request-table.d.ts +42 -42
- package/dist/views/receive-request/import/export.spec.d.ts +1 -0
- package/dist/views/receive-request-bulk/composables/use-bulk-receive-request-form.d.ts +42 -42
- package/dist/views/receive-request-bulk/composables/use-bulk-receive-request-table.d.ts +8 -8
- package/dist/views/recipe/components/recipe-bulk-editor/components/ModificationCard.spec.d.ts +1 -0
- package/dist/views/recipe/helper/bulk-edit-simulation.helper.d.ts +0 -1
- package/dist/views/recipe/helper/import-recipe.d.ts +2 -2
- package/dist/views/recipe/helper/import-recipe.spec.d.ts +1 -0
- package/dist/views/settings/PlanLicenseDisplay.spec.d.ts +1 -0
- package/dist/views/{integration/components/IntegrationSyncLogTab.vue.d.ts → settings/PlanLicenseDisplay.vue.d.ts} +2 -2
- package/dist/views/stock/components/StockRecordCard.vue.d.ts +72 -44
- package/dist/views/stock/components/dialog/AmendAdjustmentForm.spec.d.ts +1 -0
- package/dist/views/stock/components/dialog/ConvertSkuDialog.spec.d.ts +1 -0
- package/dist/views/supplier/components/SupplierForm.vue.d.ts +4 -4
- package/dist/views/supplier/composables/use-supplier-table.d.ts +2 -2
- package/dist/views/transfer-template/components/transfer-template-dialog/TransferTemplateDialog.vue.d.ts +8 -8
- package/dist/views/transfer-template/components/transfer-template-form/composables/use-transfer-locations.d.ts +4 -4
- package/dist/views/transfer-template/components/transfer-template-form/composables/use-transfer-template-items.spec.d.ts +1 -0
- package/dist/views/transfer-template/composables/use-template-item-bulk-editor.d.ts +24 -24
- package/dist/views/transfer-template/composables/use-transfer-template-actions.d.ts +48 -48
- package/dist/views/transfer-template/composables/use-transfer-template-table.d.ts +48 -48
- package/dist/views/warehouse/components/WarehouseForm.vue.d.ts +6 -4
- package/dist/{vue-i18n-DYapak10.js → vue-i18n-mXrQUZTi.js} +235 -235
- package/dist/{xlsx.util-DrElrKDx.js → xlsx.util-CKx0NYTq.js} +2 -2
- package/package.json +72 -67
- package/dist/App-CBS1Tqpl.js +0 -1476
- package/dist/ClosingHistoryView-3z17ZJzK.js +0 -761
- package/dist/FmInventoryTableToolbar.vue_vue_type_script_setup_true_lang-CB50Gqot.js +0 -243
- package/dist/FmMultiselectDialog-7xh6h5AX.js +0 -77
- package/dist/ImportView-C3Fc0e_X.js +0 -1302
- package/dist/IngredientBindedItem.vue_vue_type_script_setup_true_lang-6naVJEke.js +0 -51
- package/dist/IngredientGroupView-DA1buE1C.js +0 -985
- package/dist/InventoryBindingForm.vue_vue_type_script_setup_true_lang-tEKGPtHZ.js +0 -563
- package/dist/NumberPrecisionInput.vue_vue_type_script_setup_true_lang-Cbg0j7Jz.js +0 -72
- package/dist/PremiumBadge.vue_vue_type_script_setup_true_lang-Btrg9HNc.js +0 -93
- package/dist/PreviewBadge.vue_vue_type_script_setup_true_lang-DX2MJqL4.js +0 -29
- package/dist/ProductionRunDetailView-DYeSPsIY.js +0 -2284
- package/dist/ProductionRunPreparePrintView-DJOejqOC.js +0 -34
- package/dist/ProductionRunTabs.vue_vue_type_script_setup_true_lang-JKMI-vVw.js +0 -7543
- package/dist/ProductionRunView-Cg3aYOg9.js +0 -911
- package/dist/RecipeView-DC0p9RKL.js +0 -3625
- package/dist/SettingsView-DaKfCVY5.js +0 -698
- package/dist/StockView-DdweBRFv.js +0 -2612
- package/dist/TableActionableRow.vue_vue_type_script_setup_true_lang-DAMpuZ1X.js +0 -84
- package/dist/TransferTemplateView-CSXcAB3-.js +0 -2327
- package/dist/feature-DtpSrELx.js +0 -1136
- package/dist/number-DE6ovaTs.js +0 -138
- package/dist/random-CSbEbElR.js +0 -10
- package/dist/rules-CkaU7yFU.js +0 -98
- package/dist/stock-B3Q9e174.js +0 -75
- package/dist/use-inventory-binding-dialog-CCV1iieA.js +0 -152
- package/dist/useNavigationMenu-IKam6CEf.js +0 -172
- package/dist/usePromise-CbVUCxhj.js +0 -29
- package/dist/views/ingredient-group/IngredientGroupView.vue.d.ts +0 -3
- package/dist/views/ingredient-group/components/ingredient-group-dialog/IngredientGroupDialog.vue.d.ts +0 -31
- package/dist/views/ingredient-group/components/ingredient-group-dialog/IngredientGroupDialogProps.d.ts +0 -10
- package/dist/views/ingredient-group/components/ingredient-group-form/IngredientGroupForm.vue.d.ts +0 -21
- package/dist/views/ingredient-group/components/ingredient-group-form/IngredientGroupFormProps.d.ts +0 -12
- package/dist/views/ingredient-group/components/ingredient-group-rule-field/IngredientGroupRuleField.vue.d.ts +0 -37
- package/dist/views/ingredient-group/composables/use-ingredient-group-actions.d.ts +0 -24
- package/dist/views/ingredient-group/composables/use-ingredient-group-rule-item.d.ts +0 -31
- package/dist/views/ingredient-group/composables/use-ingredient-group-table.d.ts +0 -77
- package/dist/views/integration/composables/use-integration-sync-log.d.ts +0 -45
- /package/dist/components/{FmFeatureFlagDialog.vue.d.ts → DeprecateSoonPill.vue.d.ts} +0 -0
- /package/dist/{views/production-run/ProductionRunPreparePrintView.spec.d.ts → components/FeatureCapabilityGate.spec.d.ts} +0 -0
- /package/dist/{views/production-run/features/detail/ProductionRunTabs.spec.d.ts → components/NumberPrecisionInput.spec.d.ts} +0 -0
- /package/dist/{views/production-run/features/prepare/production-run-prepare-sheet-cleanup.spec.d.ts → feature-flags/core.spec.d.ts} +0 -0
- /package/dist/views/{production-run/ProductionRunPreparePrintView.vue.d.ts → settings/FeatureFlagView.vue.d.ts} +0 -0
|
@@ -1,36 +1,36 @@
|
|
|
1
1
|
import { defineComponent as ne, ref as f, computed as B, watch as Oe, onMounted as _e, resolveComponent as se, createElementBlock as a, openBlock as t, createElementVNode as e, createBlock as H, createCommentVNode as r, normalizeClass as j, createTextVNode as re, toDisplayString as o, createVNode as T, Fragment as M, renderList as X, unref as g, withCtx as te, withModifiers as de, withDirectives as Ve, withKeys as we, vModelText as Ue, h as q, watchEffect as Be } from "vue";
|
|
2
|
-
import { d as Se, N as be, C as xe, u as Ce } from "./app-
|
|
3
|
-
import { components as oe, useBreakpoints as
|
|
4
|
-
import { _ as
|
|
5
|
-
import { _ as Ee } from "./FmInventoryTableToolbar.vue_vue_type_script_setup_true_lang-
|
|
6
|
-
import { u as Ie, a as Te, S as ge } from "./netsuite-
|
|
2
|
+
import { d as Se, N as be, C as xe, u as Ce } from "./app-OztWApio.js";
|
|
3
|
+
import { components as oe, useBreakpoints as Ae } from "@feedmepos/ui-library";
|
|
4
|
+
import { _ as Pe } from "./SingleColumnLayout.vue_vue_type_script_setup_true_lang-DpwneGOV.js";
|
|
5
|
+
import { _ as Ee } from "./FmInventoryTableToolbar.vue_vue_type_script_setup_true_lang-CiBhz5sq.js";
|
|
6
|
+
import { u as Ie, a as Te, S as ge } from "./netsuite-DEhdSyBn.js";
|
|
7
7
|
import { P as he, J as ke, D as De } from "./app-C39bYJmq.js";
|
|
8
8
|
import { useCoreStore as Le } from "@feedmepos/mf-common";
|
|
9
|
-
import { _ as ye } from "./JsonViewer.vue_vue_type_script_setup_true_lang-
|
|
10
|
-
import { c as ue } from "./date2-
|
|
11
|
-
const ce = Se((
|
|
9
|
+
import { _ as ye } from "./JsonViewer.vue_vue_type_script_setup_true_lang-C_hg75l0.js";
|
|
10
|
+
import { c as ue } from "./date2-BTzYzk-x.js";
|
|
11
|
+
const ce = Se((Q, A) => {
|
|
12
12
|
const n = Le();
|
|
13
|
-
function
|
|
14
|
-
var
|
|
15
|
-
return ((
|
|
13
|
+
function R() {
|
|
14
|
+
var $;
|
|
15
|
+
return (($ = n.currentBusiness.value) == null ? void 0 : $._id) ?? "";
|
|
16
16
|
}
|
|
17
17
|
return {
|
|
18
18
|
// ============================ Orders ============================
|
|
19
19
|
/**
|
|
20
20
|
* Look up a single NetSuite order by its internal ID.
|
|
21
21
|
*/
|
|
22
|
-
async readOrderById(
|
|
23
|
-
const
|
|
24
|
-
return await
|
|
22
|
+
async readOrderById($, F) {
|
|
23
|
+
const C = R(), x = `${Q.netSuiteBackendUrl}/${C}/v2/explorer/order/${$}/${F}`;
|
|
24
|
+
return await A.get(x);
|
|
25
25
|
},
|
|
26
26
|
/**
|
|
27
27
|
* List NetSuite records by date range, cross-referenced with FM POs.
|
|
28
28
|
* Returns records with purchaseOrderSeqNo (null = unsynced, number = synced).
|
|
29
29
|
*/
|
|
30
|
-
async browseOrdersByDateRange(
|
|
31
|
-
const l =
|
|
32
|
-
return await
|
|
33
|
-
startDate:
|
|
30
|
+
async browseOrdersByDateRange($, F, C, x) {
|
|
31
|
+
const l = R(), w = `${Q.netSuiteBackendUrl}/${l}/v2/explorer/order/${$}/${F}`;
|
|
32
|
+
return await A.post(w, {
|
|
33
|
+
startDate: C,
|
|
34
34
|
endDate: x
|
|
35
35
|
});
|
|
36
36
|
},
|
|
@@ -39,73 +39,61 @@ const ce = Se((W, P) => {
|
|
|
39
39
|
* Supports lookup by recordIds, transactionIds, or date range.
|
|
40
40
|
* Returns standardized NSOrderExplorerResultDto[] format with sync status.
|
|
41
41
|
*/
|
|
42
|
-
async browseOrdersByFilter(
|
|
43
|
-
const x =
|
|
44
|
-
return await
|
|
42
|
+
async browseOrdersByFilter($, F, C) {
|
|
43
|
+
const x = R(), l = `${Q.netSuiteBackendUrl}/${x}/v2/explorer/order/query/${$}/${F}`;
|
|
44
|
+
return await A.post(l, C);
|
|
45
45
|
},
|
|
46
46
|
// ============================ Items ============================
|
|
47
47
|
/**
|
|
48
48
|
* List NetSuite items from the `item` table.
|
|
49
49
|
* Pass an optional filter object to narrow results (e.g. { itemtype: 'InvtPart' }).
|
|
50
50
|
*/
|
|
51
|
-
async browseItemsByFilter(
|
|
52
|
-
const F =
|
|
53
|
-
return await
|
|
51
|
+
async browseItemsByFilter($) {
|
|
52
|
+
const F = R(), C = `${Q.netSuiteBackendUrl}/${F}/v2/explorer/item/query`;
|
|
53
|
+
return await A.post(C, $ ? { where: $ } : {});
|
|
54
54
|
},
|
|
55
55
|
/**
|
|
56
56
|
* Look up a single NetSuite item by its internal ID.
|
|
57
57
|
*/
|
|
58
|
-
async readItemById(
|
|
59
|
-
const
|
|
60
|
-
return await
|
|
58
|
+
async readItemById($, F) {
|
|
59
|
+
const C = R(), x = `${Q.netSuiteBackendUrl}/${C}/v2/explorer/item/${$}/${F}`;
|
|
60
|
+
return await A.get(x);
|
|
61
61
|
},
|
|
62
62
|
// ============================ Vendors ============================
|
|
63
63
|
/**
|
|
64
64
|
* List NetSuite vendors from the `vendor` table.
|
|
65
65
|
* Pass an optional raw SuiteQL WHERE clause to narrow results.
|
|
66
66
|
*/
|
|
67
|
-
async browseVendorsByFilter(
|
|
68
|
-
const F =
|
|
69
|
-
return await
|
|
67
|
+
async browseVendorsByFilter($) {
|
|
68
|
+
const F = R(), C = `${Q.netSuiteBackendUrl}/${F}/v2/explorer/vendor/query`;
|
|
69
|
+
return await A.post(C, $ ? { where: $ } : {});
|
|
70
70
|
},
|
|
71
|
-
async readVendorById(
|
|
72
|
-
const F =
|
|
73
|
-
return await
|
|
71
|
+
async readVendorById($) {
|
|
72
|
+
const F = R(), C = `${Q.netSuiteBackendUrl}/${F}/v2/explorer/vendor/${$}`;
|
|
73
|
+
return await A.get(C);
|
|
74
74
|
},
|
|
75
|
-
async triggerWebHook(
|
|
76
|
-
const F =
|
|
77
|
-
await
|
|
75
|
+
async triggerWebHook($) {
|
|
76
|
+
const F = R(), C = `${Q.netSuiteBackendUrl}/${F}/v2/explorer/trigger-webhook`;
|
|
77
|
+
await A.post(C, $);
|
|
78
78
|
}
|
|
79
79
|
};
|
|
80
80
|
}), Me = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
81
81
|
__proto__: null,
|
|
82
82
|
useNetSuiteExplorerApi: ce
|
|
83
|
-
}, Symbol.toStringTag, { value: "Module" })), je = Se((
|
|
83
|
+
}, Symbol.toStringTag, { value: "Module" })), je = Se((Q, A) => {
|
|
84
84
|
const n = Le();
|
|
85
|
-
function
|
|
86
|
-
var
|
|
87
|
-
return ((
|
|
85
|
+
function R() {
|
|
86
|
+
var $;
|
|
87
|
+
return (($ = n.currentBusiness.value) == null ? void 0 : $._id) ?? "";
|
|
88
88
|
}
|
|
89
89
|
return {
|
|
90
|
-
async querySyncLogs(
|
|
91
|
-
const F =
|
|
92
|
-
Object.entries(
|
|
93
|
-
|
|
90
|
+
async querySyncLogs($ = {}) {
|
|
91
|
+
const F = R(), C = new URLSearchParams();
|
|
92
|
+
Object.entries($).forEach(([l, w]) => {
|
|
93
|
+
w != null && w !== "" && C.set(l, String(w));
|
|
94
94
|
});
|
|
95
|
-
const x = `${
|
|
96
|
-
return await
|
|
97
|
-
},
|
|
98
|
-
async getSyncLogStats(k = {}) {
|
|
99
|
-
const F = N(), S = new URLSearchParams();
|
|
100
|
-
Object.entries(k).forEach(([l, $]) => {
|
|
101
|
-
$ != null && $ !== "" && S.set(l, String($));
|
|
102
|
-
});
|
|
103
|
-
const x = `${W.netSuiteBackendUrl}/${F}/v2/integration/sync-log/stats?${S.toString()}`;
|
|
104
|
-
return await P.get(x);
|
|
105
|
-
},
|
|
106
|
-
async retrySyncLog(k) {
|
|
107
|
-
const F = N(), S = `${W.netSuiteBackendUrl}/${F}/v2/integration/sync-log/${k}/retry`;
|
|
108
|
-
return await P.post(S, {});
|
|
95
|
+
const x = `${Q.netSuiteBackendUrl}/${F}/v2/integration/sync-log?${C.toString()}`;
|
|
96
|
+
return await A.get(x);
|
|
109
97
|
}
|
|
110
98
|
};
|
|
111
99
|
}), qe = { class: "flex flex-col gap-2" }, Je = { class: "flex items-center gap-2 mb-1" }, ze = ["disabled"], We = {
|
|
@@ -139,63 +127,63 @@ const ce = Se((W, P) => {
|
|
|
139
127
|
netsuiteId: {},
|
|
140
128
|
recordType: {}
|
|
141
129
|
},
|
|
142
|
-
setup(
|
|
143
|
-
const
|
|
130
|
+
setup(Q) {
|
|
131
|
+
const A = Q, n = je(), R = f([]), $ = f(!1), F = f(null), C = f(1), x = f(0), l = f(!1), w = f(!1), p = B(() => Math.max(1, Math.ceil(x.value / $e)));
|
|
144
132
|
async function c() {
|
|
145
|
-
|
|
133
|
+
$.value = !0;
|
|
146
134
|
try {
|
|
147
|
-
const
|
|
148
|
-
internalId:
|
|
149
|
-
externalId:
|
|
135
|
+
const N = await n.querySyncLogs({
|
|
136
|
+
internalId: A.purchaseOrderId,
|
|
137
|
+
externalId: A.netsuiteId,
|
|
150
138
|
provider: "netsuite",
|
|
151
|
-
...
|
|
139
|
+
...A.recordType ? { metadataRecordType: A.recordType } : {},
|
|
152
140
|
limit: $e,
|
|
153
|
-
page:
|
|
141
|
+
page: C.value
|
|
154
142
|
});
|
|
155
|
-
|
|
156
|
-
} catch (
|
|
157
|
-
console.error("Failed to fetch sync logs for record:",
|
|
143
|
+
R.value = N.data, x.value = N.total, l.value = !0, w.value = !0, setTimeout(() => w.value = !1, 2e3);
|
|
144
|
+
} catch (N) {
|
|
145
|
+
console.error("Failed to fetch sync logs for record:", N);
|
|
158
146
|
} finally {
|
|
159
|
-
|
|
147
|
+
$.value = !1;
|
|
160
148
|
}
|
|
161
149
|
}
|
|
162
|
-
function _(
|
|
163
|
-
|
|
150
|
+
function _(N) {
|
|
151
|
+
N < 1 || N > p.value || N === C.value || (C.value = N, F.value = null, c());
|
|
164
152
|
}
|
|
165
|
-
function h(
|
|
166
|
-
F.value = F.value ===
|
|
153
|
+
function h(N) {
|
|
154
|
+
F.value = F.value === N ? null : N;
|
|
167
155
|
}
|
|
168
|
-
function
|
|
169
|
-
return new Date(
|
|
156
|
+
function P(N) {
|
|
157
|
+
return new Date(N).toLocaleString();
|
|
170
158
|
}
|
|
171
|
-
function
|
|
172
|
-
const V =
|
|
159
|
+
function k(N) {
|
|
160
|
+
const V = N.level ?? 30;
|
|
173
161
|
return V >= 50 ? "text-red-600" : V >= 40 ? "text-amber-600" : "text-gray-700";
|
|
174
162
|
}
|
|
175
|
-
function b(
|
|
176
|
-
const V =
|
|
163
|
+
function b(N) {
|
|
164
|
+
const V = N.level ?? 30;
|
|
177
165
|
return V >= 50 ? "border-red-200" : V >= 40 ? "border-amber-200" : "border-gray-100";
|
|
178
166
|
}
|
|
179
167
|
return Oe(
|
|
180
|
-
() =>
|
|
168
|
+
() => A.netsuiteId,
|
|
181
169
|
() => {
|
|
182
|
-
|
|
170
|
+
C.value = 1, l.value = !1, R.value = [], x.value = 0, F.value = null;
|
|
183
171
|
}
|
|
184
|
-
), _e(c), (
|
|
185
|
-
const J = se("FmChip"),
|
|
172
|
+
), _e(c), (N, V) => {
|
|
173
|
+
const J = se("FmChip"), W = se("FmCircularProgress"), K = se("FmIcon");
|
|
186
174
|
return t(), a("div", qe, [
|
|
187
175
|
e("div", Je, [
|
|
188
|
-
l.value &&
|
|
176
|
+
l.value && !$.value ? (t(), H(J, {
|
|
189
177
|
key: 0,
|
|
190
178
|
label: `${x.value} entries`,
|
|
191
179
|
compact: ""
|
|
192
180
|
}, null, 8, ["label"])) : r("", !0),
|
|
193
181
|
e("button", {
|
|
194
|
-
class: j(["ml-auto text-xs flex items-center gap-1 transition-colors disabled:opacity-40",
|
|
195
|
-
disabled:
|
|
182
|
+
class: j(["ml-auto text-xs flex items-center gap-1 transition-colors disabled:opacity-40", w.value ? "text-green-600" : "text-gray-400 hover:text-gray-700"]),
|
|
183
|
+
disabled: $.value,
|
|
196
184
|
onClick: c
|
|
197
185
|
}, [
|
|
198
|
-
|
|
186
|
+
w.value ? (t(), a("svg", We, V[2] || (V[2] = [
|
|
199
187
|
e("path", {
|
|
200
188
|
"stroke-linecap": "round",
|
|
201
189
|
"stroke-linejoin": "round",
|
|
@@ -204,7 +192,7 @@ const ce = Se((W, P) => {
|
|
|
204
192
|
}, null, -1)
|
|
205
193
|
]))) : (t(), a("svg", {
|
|
206
194
|
key: 1,
|
|
207
|
-
class: j(["w-3.5 h-3.5",
|
|
195
|
+
class: j(["w-3.5 h-3.5", $.value ? "animate-spin" : ""]),
|
|
208
196
|
fill: "none",
|
|
209
197
|
stroke: "currentColor",
|
|
210
198
|
viewBox: "0 0 24 24"
|
|
@@ -216,14 +204,14 @@ const ce = Se((W, P) => {
|
|
|
216
204
|
d: "M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"
|
|
217
205
|
}, null, -1)
|
|
218
206
|
]), 2)),
|
|
219
|
-
re(" " + o(
|
|
207
|
+
re(" " + o(w.value ? "Refreshed!" : "Refresh"), 1)
|
|
220
208
|
], 10, ze)
|
|
221
209
|
]),
|
|
222
|
-
|
|
223
|
-
T(
|
|
210
|
+
$.value ? (t(), a("div", Qe, [
|
|
211
|
+
T(W, { size: "md" }),
|
|
224
212
|
V[4] || (V[4] = e("span", { class: "text-xs text-gray-400" }, "Loading sync logs...", -1))
|
|
225
|
-
])) : l.value ?
|
|
226
|
-
(t(!0), a(M, null, X(
|
|
213
|
+
])) : l.value ? R.value.length === 0 ? (t(), a("div", Ke, " No sync logs found for this record ")) : (t(), a("div", Ye, [
|
|
214
|
+
(t(!0), a(M, null, X(R.value, (v) => (t(), a("div", {
|
|
227
215
|
key: v._id,
|
|
228
216
|
class: j(["border rounded-lg overflow-hidden", b(v)])
|
|
229
217
|
}, [
|
|
@@ -231,7 +219,7 @@ const ce = Se((W, P) => {
|
|
|
231
219
|
class: "flex items-center gap-3 px-3 py-2 cursor-pointer hover:bg-gray-50 text-xs",
|
|
232
220
|
onClick: (s) => h(v._id)
|
|
233
221
|
}, [
|
|
234
|
-
e("span", Xe, o(
|
|
222
|
+
e("span", Xe, o(P(v.createdAt)), 1),
|
|
235
223
|
e("span", {
|
|
236
224
|
class: j(["shrink-0 px-1.5 py-0.5 rounded text-[10px] font-semibold uppercase tracking-wide", {
|
|
237
225
|
"bg-red-100 text-red-700": (v.level ?? 30) >= 50,
|
|
@@ -241,7 +229,7 @@ const ce = Se((W, P) => {
|
|
|
241
229
|
}])
|
|
242
230
|
}, o((v.level ?? 30) >= 60 ? "fatal" : (v.level ?? 30) >= 50 ? "error" : (v.level ?? 30) >= 40 ? "warn" : (v.level ?? 30) >= 30 ? "info" : (v.level ?? 30) >= 20 ? "debug" : "trace"), 3),
|
|
243
231
|
e("span", {
|
|
244
|
-
class: j(["flex-1 truncate",
|
|
232
|
+
class: j(["flex-1 truncate", k(v)])
|
|
245
233
|
}, o(v.message || "—"), 3),
|
|
246
234
|
T(K, {
|
|
247
235
|
name: F.value === v._id ? "expand_less" : "expand_more",
|
|
@@ -257,7 +245,7 @@ const ce = Se((W, P) => {
|
|
|
257
245
|
v.level != null ? (t(), a("div", et, [
|
|
258
246
|
V[6] || (V[6] = e("strong", null, "Level: ", -1)),
|
|
259
247
|
e("span", {
|
|
260
|
-
class: j(
|
|
248
|
+
class: j(k(v))
|
|
261
249
|
}, [
|
|
262
250
|
re(o(v.level) + " ", 1),
|
|
263
251
|
e("span", tt, "(" + o(v.level >= 60 ? "fatal" : v.level >= 50 ? "error" : v.level >= 40 ? "warn" : v.level >= 30 ? "info" : v.level >= 20 ? "debug" : "trace") + ")", 1)
|
|
@@ -270,17 +258,17 @@ const ce = Se((W, P) => {
|
|
|
270
258
|
])) : r("", !0)
|
|
271
259
|
], 2))), 128)),
|
|
272
260
|
p.value > 1 ? (t(), a("div", st, [
|
|
273
|
-
e("span", null, "Page " + o(
|
|
261
|
+
e("span", null, "Page " + o(C.value) + " of " + o(p.value), 1),
|
|
274
262
|
e("div", at, [
|
|
275
263
|
e("button", {
|
|
276
264
|
class: "px-2 py-1 rounded border border-gray-200 hover:bg-gray-100 disabled:opacity-40 disabled:cursor-not-allowed transition-colors",
|
|
277
|
-
disabled:
|
|
278
|
-
onClick: V[0] || (V[0] = (v) => _(
|
|
265
|
+
disabled: C.value <= 1,
|
|
266
|
+
onClick: V[0] || (V[0] = (v) => _(C.value - 1))
|
|
279
267
|
}, " ‹ Prev ", 8, ot),
|
|
280
268
|
e("button", {
|
|
281
269
|
class: "px-2 py-1 rounded border border-gray-200 hover:bg-gray-100 disabled:opacity-40 disabled:cursor-not-allowed transition-colors",
|
|
282
|
-
disabled:
|
|
283
|
-
onClick: V[1] || (V[1] = (v) => _(
|
|
270
|
+
disabled: C.value >= p.value,
|
|
271
|
+
onClick: V[1] || (V[1] = (v) => _(C.value + 1))
|
|
284
272
|
}, " Next › ", 8, lt)
|
|
285
273
|
])
|
|
286
274
|
])) : r("", !0)
|
|
@@ -294,10 +282,10 @@ const ce = Se((W, P) => {
|
|
|
294
282
|
}, dt = {
|
|
295
283
|
key: 1,
|
|
296
284
|
class: "space-y-6"
|
|
297
|
-
}, ut = { class: "grid grid-cols-2 gap-x-8 gap-y-4 text-sm" }, ct = { class: "col-span-2" }, vt = { class: "font-semibold text-base" }, pt = { class: "font-mono font-medium" }, yt = { class: "font-mono font-medium" }, xt = { class: "font-medium" }, mt = { key: 0 }, gt = { class: "font-mono text-xs" }, ft = { class: "text-xs text-gray-500" }, bt = { class: "font-medium" }, _t = { class: "font-medium" }, ht = { class: "font-medium" }, kt = { class: "p-3 bg-gray-50 border border-gray-200 rounded-lg" }, $t = { class: "grid grid-cols-2 gap-x-8 gap-y-3 text-sm" }, wt = { class: "font-mono font-medium" }, St = { class: "font-mono font-medium" }, Ct = { class: "font-medium" }, It = { class: "p-3 bg-gray-50 border border-gray-200 rounded-lg" }, Tt = { class: "grid grid-cols-2 gap-x-8 gap-y-3 text-sm" }, Dt = { key: 0 }, Lt = { class: "font-medium" }, Ft = { class: "font-mono text-xs text-gray-400" },
|
|
285
|
+
}, ut = { class: "grid grid-cols-2 gap-x-8 gap-y-4 text-sm" }, ct = { class: "col-span-2" }, vt = { class: "font-semibold text-base" }, pt = { class: "font-mono font-medium" }, yt = { class: "font-mono font-medium" }, xt = { class: "font-medium" }, mt = { key: 0 }, gt = { class: "font-mono text-xs" }, ft = { class: "text-xs text-gray-500" }, bt = { class: "font-medium" }, _t = { class: "font-medium" }, ht = { class: "font-medium" }, kt = { class: "p-3 bg-gray-50 border border-gray-200 rounded-lg" }, $t = { class: "grid grid-cols-2 gap-x-8 gap-y-3 text-sm" }, wt = { class: "font-mono font-medium" }, St = { class: "font-mono font-medium" }, Ct = { class: "font-medium" }, It = { class: "p-3 bg-gray-50 border border-gray-200 rounded-lg" }, Tt = { class: "grid grid-cols-2 gap-x-8 gap-y-3 text-sm" }, Dt = { key: 0 }, Lt = { class: "font-medium" }, Ft = { class: "font-mono text-xs text-gray-400" }, Nt = { class: "font-mono text-xs" }, Rt = { class: "font-mono text-xs" }, Ot = { class: "font-mono text-xs" }, Vt = {
|
|
298
286
|
key: 0,
|
|
299
287
|
class: "p-3 bg-gray-50 border border-gray-200 rounded-lg"
|
|
300
|
-
}, Ut = { class: "grid grid-cols-2 gap-x-8 gap-y-3 text-sm" }, Bt = { class: "font-mono text-xs" },
|
|
288
|
+
}, Ut = { class: "grid grid-cols-2 gap-x-8 gap-y-3 text-sm" }, Bt = { class: "font-mono text-xs" }, At = { class: "font-medium" }, Pt = { key: 1 }, Et = { class: "text-xs font-semibold text-gray-500 uppercase tracking-wide mb-2" }, Mt = { class: "mb-2 text-sm" }, jt = { class: "font-medium" }, qt = { class: "flex flex-wrap gap-1.5" }, Jt = ["title"], zt = { key: 2 }, Wt = { class: "text-xs font-semibold text-gray-500 uppercase tracking-wide mb-2" }, Qt = { class: "border border-gray-200 rounded-lg overflow-hidden" }, Ht = { class: "w-full text-sm" }, Kt = { class: "px-3 py-2 font-mono text-xs text-gray-400" }, Yt = { class: "px-3 py-2" }, Gt = { class: "font-medium" }, Xt = {
|
|
301
289
|
key: 0,
|
|
302
290
|
class: "text-xs text-gray-400 font-mono"
|
|
303
291
|
}, Zt = {
|
|
@@ -329,14 +317,14 @@ const ce = Se((W, P) => {
|
|
|
329
317
|
class: "text-red-500"
|
|
330
318
|
}, gs = { class: "flex gap-2" }, fs = /* @__PURE__ */ ne({
|
|
331
319
|
__name: "InventoryItemSideSheet",
|
|
332
|
-
setup(
|
|
333
|
-
const { FmSideSheet: n, FmButton:
|
|
334
|
-
async function
|
|
335
|
-
if (l.value = null,
|
|
320
|
+
setup(Q, { expose: A }) {
|
|
321
|
+
const { FmSideSheet: n, FmButton: R, FmChip: $, FmCircularProgress: F } = oe, C = ce(), x = f(!1), l = f(null), w = f(null), p = f(!1), c = f(!1), _ = f(!1), h = f(!1);
|
|
322
|
+
async function P(v) {
|
|
323
|
+
if (l.value = null, w.value = null, p.value = !1, c.value = !1, x.value = !0, v) {
|
|
336
324
|
p.value = !0;
|
|
337
325
|
try {
|
|
338
326
|
const s = await v();
|
|
339
|
-
l.value = (s == null ? void 0 : s.nsRecord) ?? null,
|
|
327
|
+
l.value = (s == null ? void 0 : s.nsRecord) ?? null, w.value = (s == null ? void 0 : s.replica) ?? null;
|
|
340
328
|
} catch (s) {
|
|
341
329
|
l.value = { error: (s == null ? void 0 : s.message) ?? "Failed to fetch" };
|
|
342
330
|
} finally {
|
|
@@ -344,26 +332,26 @@ const ce = Se((W, P) => {
|
|
|
344
332
|
}
|
|
345
333
|
}
|
|
346
334
|
}
|
|
347
|
-
function
|
|
348
|
-
x.value = !1, l.value = null,
|
|
335
|
+
function k() {
|
|
336
|
+
x.value = !1, l.value = null, w.value = null, h.value = !1;
|
|
349
337
|
}
|
|
350
338
|
function b() {
|
|
351
339
|
var v;
|
|
352
340
|
(v = window.navigator.clipboard) == null || v.writeText(JSON.stringify(l.value, null, 2)), _.value = !0, setTimeout(() => _.value = !1, 2e3);
|
|
353
341
|
}
|
|
354
|
-
const
|
|
342
|
+
const N = B(() => l.value ? Object.entries(l.value).filter(
|
|
355
343
|
([v, s]) => /^cust[^_]+_/.test(v) && s !== null && s !== void 0 && s !== ""
|
|
356
|
-
).map(([v, s]) => ({ key: v, val: s })) : []), V = f(!1), J = f(null),
|
|
344
|
+
).map(([v, s]) => ({ key: v, val: s })) : []), V = f(!1), J = f(null), W = f(!1);
|
|
357
345
|
async function K() {
|
|
358
346
|
var v;
|
|
359
347
|
if ((v = l.value) != null && v.id) {
|
|
360
|
-
V.value = !0, J.value = null,
|
|
348
|
+
V.value = !0, J.value = null, W.value = !1;
|
|
361
349
|
try {
|
|
362
|
-
await
|
|
350
|
+
await C.triggerWebHook({
|
|
363
351
|
event: "edit",
|
|
364
352
|
recordId: l.value.id,
|
|
365
353
|
recordType: "inventoryitem"
|
|
366
|
-
}),
|
|
354
|
+
}), W.value = !0, setTimeout(() => W.value = !1, 3e3);
|
|
367
355
|
} catch (s) {
|
|
368
356
|
J.value = (s == null ? void 0 : s.message) ?? "Failed to trigger webhook";
|
|
369
357
|
} finally {
|
|
@@ -371,7 +359,7 @@ const ce = Se((W, P) => {
|
|
|
371
359
|
}
|
|
372
360
|
}
|
|
373
361
|
}
|
|
374
|
-
return
|
|
362
|
+
return A({ open: P, close: k }), (v, s) => {
|
|
375
363
|
var D;
|
|
376
364
|
return t(), H(g(n), {
|
|
377
365
|
modelValue: x.value,
|
|
@@ -384,20 +372,20 @@ const ce = Se((W, P) => {
|
|
|
384
372
|
return [
|
|
385
373
|
e("div", ps, [
|
|
386
374
|
e("div", ys, [
|
|
387
|
-
|
|
375
|
+
W.value ? (t(), a("span", xs, "Webhook triggered!")) : J.value ? (t(), a("span", ms, o(J.value), 1)) : r("", !0)
|
|
388
376
|
]),
|
|
389
377
|
e("div", gs, [
|
|
390
|
-
(d = l.value) != null && d.id ? (t(), H(g(
|
|
378
|
+
(d = l.value) != null && d.id ? (t(), H(g(R), {
|
|
391
379
|
key: 0,
|
|
392
380
|
variant: "secondary",
|
|
393
381
|
disabled: V.value || p.value,
|
|
394
382
|
label: V.value ? "Triggering…" : "Trigger Webhook",
|
|
395
383
|
onClick: K
|
|
396
384
|
}, null, 8, ["disabled", "label"])) : r("", !0),
|
|
397
|
-
T(g(
|
|
385
|
+
T(g(R), {
|
|
398
386
|
variant: "tertiary",
|
|
399
387
|
label: "Close",
|
|
400
|
-
onClick:
|
|
388
|
+
onClick: k
|
|
401
389
|
})
|
|
402
390
|
])
|
|
403
391
|
])
|
|
@@ -408,30 +396,30 @@ const ce = Se((W, P) => {
|
|
|
408
396
|
return [
|
|
409
397
|
e("div", rt, [
|
|
410
398
|
e("div", nt, [
|
|
411
|
-
T(g(
|
|
399
|
+
T(g($), {
|
|
412
400
|
label: "Inventory Part",
|
|
413
401
|
compact: ""
|
|
414
402
|
}),
|
|
415
|
-
(d = l.value) != null && d.isInactive ? (t(), H(g(
|
|
403
|
+
(d = l.value) != null && d.isInactive ? (t(), H(g($), {
|
|
416
404
|
key: 0,
|
|
417
405
|
label: "Inactive",
|
|
418
406
|
compact: ""
|
|
419
407
|
})) : r("", !0),
|
|
420
|
-
(y = l.value) != null && y.parent ? (t(), H(g(
|
|
408
|
+
(y = l.value) != null && y.parent ? (t(), H(g($), {
|
|
421
409
|
key: 1,
|
|
422
410
|
label: `Child of ${l.value.parent.refName}`,
|
|
423
411
|
compact: ""
|
|
424
412
|
}, null, 8, ["label"])) : r("", !0),
|
|
425
|
-
p.value ? (t(), H(g(
|
|
413
|
+
p.value ? (t(), H(g($), {
|
|
426
414
|
key: 2,
|
|
427
415
|
label: "Loading…",
|
|
428
416
|
compact: ""
|
|
429
417
|
})) : r("", !0),
|
|
430
|
-
(L =
|
|
418
|
+
(L = w.value) != null && L.syncedAt ? (t(), H(g($), {
|
|
431
419
|
key: 3,
|
|
432
|
-
label: `Last Synced: ${new Date(
|
|
420
|
+
label: `Last Synced: ${new Date(w.value.syncedAt).toLocaleString()}`,
|
|
433
421
|
compact: ""
|
|
434
|
-
}, null, 8, ["label"])) : !p.value && l.value ? (t(), H(g(
|
|
422
|
+
}, null, 8, ["label"])) : !p.value && l.value ? (t(), H(g($), {
|
|
435
423
|
key: 4,
|
|
436
424
|
label: "Not synced",
|
|
437
425
|
compact: ""
|
|
@@ -502,11 +490,11 @@ const ce = Se((W, P) => {
|
|
|
502
490
|
])) : r("", !0),
|
|
503
491
|
e("div", null, [
|
|
504
492
|
s[16] || (s[16] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Base Unit ID", -1)),
|
|
505
|
-
e("div",
|
|
493
|
+
e("div", Nt, o(l.value.baseUnit), 1)
|
|
506
494
|
]),
|
|
507
495
|
e("div", null, [
|
|
508
496
|
s[17] || (s[17] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, " Purchase Unit ID ", -1)),
|
|
509
|
-
e("div",
|
|
497
|
+
e("div", Rt, o(l.value.purchaseUnit), 1)
|
|
510
498
|
]),
|
|
511
499
|
e("div", null, [
|
|
512
500
|
s[18] || (s[18] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Stock Unit ID", -1)),
|
|
@@ -523,22 +511,22 @@ const ce = Se((W, P) => {
|
|
|
523
511
|
]),
|
|
524
512
|
e("div", null, [
|
|
525
513
|
s[21] || (s[21] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Name", -1)),
|
|
526
|
-
e("div",
|
|
514
|
+
e("div", At, o(l.value.cogsAccount.refName), 1)
|
|
527
515
|
])
|
|
528
516
|
])
|
|
529
517
|
])) : r("", !0),
|
|
530
|
-
l.value.subsidiary.items.length > 0 ? (t(), a("div",
|
|
518
|
+
l.value.subsidiary.items.length > 0 ? (t(), a("div", Pt, [
|
|
531
519
|
e("div", Et, " Subsidiaries (" + o(l.value.subsidiary.totalResults) + ") ", 1),
|
|
532
520
|
e("div", Mt, [
|
|
533
521
|
s[23] || (s[23] = e("span", { class: "text-xs text-gray-500 uppercase tracking-wide" }, "Include Children: ", -1)),
|
|
534
522
|
e("span", jt, o(l.value.includeChildren ? "Yes" : "No"), 1)
|
|
535
523
|
]),
|
|
536
524
|
e("div", qt, [
|
|
537
|
-
(t(!0), a(M, null, X(l.value.subsidiary.items, (
|
|
538
|
-
key:
|
|
525
|
+
(t(!0), a(M, null, X(l.value.subsidiary.items, (S) => (t(), a("span", {
|
|
526
|
+
key: S.id,
|
|
539
527
|
class: "px-2 py-0.5 rounded-full text-xs border bg-gray-50 border-gray-200 text-gray-700",
|
|
540
|
-
title:
|
|
541
|
-
}, o(
|
|
528
|
+
title: S.id
|
|
529
|
+
}, o(S.refName), 9, Jt))), 128))
|
|
542
530
|
])
|
|
543
531
|
])) : r("", !0),
|
|
544
532
|
((E = l.value.itemVendor) == null ? void 0 : E.totalResults) > 0 ? (t(), a("div", zt, [
|
|
@@ -555,7 +543,7 @@ const ce = Se((W, P) => {
|
|
|
555
543
|
])
|
|
556
544
|
], -1)),
|
|
557
545
|
e("tbody", null, [
|
|
558
|
-
(t(!0), a(M, null, X(l.value.itemVendor.items, (
|
|
546
|
+
(t(!0), a(M, null, X(l.value.itemVendor.items, (S, Y) => {
|
|
559
547
|
var Z, O, u;
|
|
560
548
|
return t(), a("tr", {
|
|
561
549
|
key: Y,
|
|
@@ -563,30 +551,30 @@ const ce = Se((W, P) => {
|
|
|
563
551
|
}, [
|
|
564
552
|
e("td", Kt, o(Y + 1), 1),
|
|
565
553
|
e("td", Yt, [
|
|
566
|
-
e("div", Gt, o(((Z =
|
|
567
|
-
(O =
|
|
568
|
-
|
|
554
|
+
e("div", Gt, o(((Z = S.vendor) == null ? void 0 : Z.refName) ?? "—"), 1),
|
|
555
|
+
(O = S.vendor) != null && O.id ? (t(), a("div", Xt, " ID: " + o(S.vendor.id), 1)) : r("", !0),
|
|
556
|
+
S.vendorCode ? (t(), a("div", Zt, " Code: " + o(S.vendorCode), 1)) : r("", !0)
|
|
569
557
|
]),
|
|
570
|
-
e("td", es, o(((u =
|
|
571
|
-
e("td", ts, o(
|
|
572
|
-
e("td", ss, o(
|
|
558
|
+
e("td", es, o(((u = S.subsidiary) == null ? void 0 : u.refName) ?? "—"), 1),
|
|
559
|
+
e("td", ts, o(S.vendorCurrencyName ?? "—"), 1),
|
|
560
|
+
e("td", ss, o(S.purchasePrice ?? "—"), 1)
|
|
573
561
|
]);
|
|
574
562
|
}), 128))
|
|
575
563
|
])
|
|
576
564
|
])
|
|
577
565
|
])
|
|
578
566
|
])) : r("", !0),
|
|
579
|
-
|
|
567
|
+
N.value.length > 0 ? (t(), a("div", as, [
|
|
580
568
|
s[25] || (s[25] = e("div", { class: "text-xs font-semibold text-amber-700 uppercase tracking-wide mb-3" }, " Custom Fields ", -1)),
|
|
581
569
|
e("div", os, [
|
|
582
|
-
(t(!0), a(M, null, X(
|
|
583
|
-
key:
|
|
570
|
+
(t(!0), a(M, null, X(N.value, (S) => (t(), a("div", {
|
|
571
|
+
key: S.key
|
|
584
572
|
}, [
|
|
585
|
-
e("div", ls, o(
|
|
586
|
-
|
|
587
|
-
e("div", rs, o(
|
|
588
|
-
|
|
589
|
-
], 64)) : (t(), a("div", is, o(
|
|
573
|
+
e("div", ls, o(S.key), 1),
|
|
574
|
+
S.val && typeof S.val == "object" && "refName" in S.val ? (t(), a(M, { key: 0 }, [
|
|
575
|
+
e("div", rs, o(S.val.refName), 1),
|
|
576
|
+
S.val.id ? (t(), a("div", ns, " ID: " + o(S.val.id), 1)) : r("", !0)
|
|
577
|
+
], 64)) : (t(), a("div", is, o(S.val), 1))
|
|
590
578
|
]))), 128))
|
|
591
579
|
])
|
|
592
580
|
])) : r("", !0)
|
|
@@ -594,7 +582,7 @@ const ce = Se((W, P) => {
|
|
|
594
582
|
l.value ? (t(), a("div", ds, [
|
|
595
583
|
e("div", {
|
|
596
584
|
class: j(["flex items-center gap-1.5 px-3 py-2 bg-gray-50 cursor-pointer select-none hover:bg-gray-100 transition-colors", c.value ? "border-b border-gray-200" : ""]),
|
|
597
|
-
onClick: s[0] || (s[0] = (
|
|
585
|
+
onClick: s[0] || (s[0] = (S) => c.value = !c.value)
|
|
598
586
|
}, [
|
|
599
587
|
(t(), a("svg", {
|
|
600
588
|
class: j(["w-3.5 h-3.5 transition-transform text-gray-500", c.value ? "rotate-90" : ""]),
|
|
@@ -623,7 +611,7 @@ const ce = Se((W, P) => {
|
|
|
623
611
|
(I = l.value) != null && I.id ? (t(), a("div", cs, [
|
|
624
612
|
e("div", {
|
|
625
613
|
class: j(["flex items-center gap-1.5 px-3 py-2 bg-gray-50 cursor-pointer select-none hover:bg-gray-100 transition-colors", h.value ? "border-b border-gray-200" : ""]),
|
|
626
|
-
onClick: s[1] || (s[1] = (
|
|
614
|
+
onClick: s[1] || (s[1] = (S) => h.value = !h.value)
|
|
627
615
|
}, [
|
|
628
616
|
(t(), a("svg", {
|
|
629
617
|
class: j(["w-3.5 h-3.5 transition-transform text-gray-500", h.value ? "rotate-90" : ""]),
|
|
@@ -660,7 +648,7 @@ const ce = Se((W, P) => {
|
|
|
660
648
|
}, ks = {
|
|
661
649
|
key: 1,
|
|
662
650
|
class: "space-y-6"
|
|
663
|
-
}, $s = { class: "grid grid-cols-2 gap-x-8 gap-y-4 text-sm" }, ws = { class: "col-span-2" }, Ss = { class: "font-semibold text-base" }, Cs = { class: "font-mono font-medium" }, Is = { class: "font-mono font-medium" }, Ts = { class: "font-medium" }, Ds = { key: 0 }, Ls = { class: "font-mono text-xs" }, Fs = { class: "text-xs text-gray-500" },
|
|
651
|
+
}, $s = { class: "grid grid-cols-2 gap-x-8 gap-y-4 text-sm" }, ws = { class: "col-span-2" }, Ss = { class: "font-semibold text-base" }, Cs = { class: "font-mono font-medium" }, Is = { class: "font-mono font-medium" }, Ts = { class: "font-medium" }, Ds = { key: 0 }, Ls = { class: "font-mono text-xs" }, Fs = { class: "text-xs text-gray-500" }, Ns = { class: "font-medium" }, Rs = { class: "font-medium" }, Os = { class: "font-medium" }, Vs = { class: "p-3 bg-gray-50 border border-gray-200 rounded-lg" }, Us = { class: "grid grid-cols-2 gap-x-8 gap-y-3 text-sm" }, Bs = { class: "font-mono font-medium" }, As = { class: "font-mono font-medium" }, Ps = { class: "font-medium" }, Es = { class: "p-3 bg-gray-50 border border-gray-200 rounded-lg" }, Ms = { class: "grid grid-cols-2 gap-x-8 gap-y-3 text-sm" }, js = { key: 0 }, qs = { class: "font-medium" }, Js = { class: "font-mono text-xs text-gray-400" }, zs = { class: "font-mono text-xs" }, Ws = { class: "font-mono text-xs" }, Qs = { class: "font-mono text-xs" }, Hs = {
|
|
664
652
|
key: 0,
|
|
665
653
|
class: "p-3 bg-gray-50 border border-gray-200 rounded-lg"
|
|
666
654
|
}, Ks = { class: "grid grid-cols-2 gap-x-8 gap-y-3 text-sm" }, Ys = { class: "font-mono text-xs" }, Gs = { class: "font-medium" }, Xs = { key: 1 }, Zs = { class: "text-xs font-semibold text-gray-500 uppercase tracking-wide mb-2" }, ea = { class: "mb-2 text-sm" }, ta = { class: "font-medium" }, sa = { class: "flex flex-wrap gap-1.5" }, aa = ["title"], oa = { key: 2 }, la = { class: "text-xs font-semibold text-gray-500 uppercase tracking-wide mb-2" }, ra = { class: "border border-gray-200 rounded-lg overflow-hidden" }, na = { class: "w-full text-sm" }, ia = { class: "px-3 py-2 font-mono text-xs text-gray-400" }, da = { class: "px-3 py-2" }, ua = { class: "font-medium" }, ca = {
|
|
@@ -695,14 +683,14 @@ const ce = Se((W, P) => {
|
|
|
695
683
|
class: "text-red-500"
|
|
696
684
|
}, La = { class: "flex gap-2" }, Fa = /* @__PURE__ */ ne({
|
|
697
685
|
__name: "AssemblyItemSideSheet",
|
|
698
|
-
setup(
|
|
699
|
-
const { FmSideSheet: n, FmButton:
|
|
700
|
-
async function
|
|
701
|
-
if (l.value = null,
|
|
686
|
+
setup(Q, { expose: A }) {
|
|
687
|
+
const { FmSideSheet: n, FmButton: R, FmChip: $, FmCircularProgress: F } = oe, C = ce(), x = f(!1), l = f(null), w = f(null), p = f(!1), c = f(!1), _ = f(!1), h = f(!1);
|
|
688
|
+
async function P(v) {
|
|
689
|
+
if (l.value = null, w.value = null, p.value = !1, c.value = !1, x.value = !0, v) {
|
|
702
690
|
p.value = !0;
|
|
703
691
|
try {
|
|
704
692
|
const s = await v();
|
|
705
|
-
l.value = (s == null ? void 0 : s.nsRecord) ?? null,
|
|
693
|
+
l.value = (s == null ? void 0 : s.nsRecord) ?? null, w.value = (s == null ? void 0 : s.replica) ?? null;
|
|
706
694
|
} catch (s) {
|
|
707
695
|
l.value = { error: (s == null ? void 0 : s.message) ?? "Failed to fetch" };
|
|
708
696
|
} finally {
|
|
@@ -710,26 +698,26 @@ const ce = Se((W, P) => {
|
|
|
710
698
|
}
|
|
711
699
|
}
|
|
712
700
|
}
|
|
713
|
-
function
|
|
714
|
-
x.value = !1, l.value = null,
|
|
701
|
+
function k() {
|
|
702
|
+
x.value = !1, l.value = null, w.value = null, h.value = !1;
|
|
715
703
|
}
|
|
716
704
|
function b() {
|
|
717
705
|
var v;
|
|
718
706
|
(v = window.navigator.clipboard) == null || v.writeText(JSON.stringify(l.value, null, 2)), _.value = !0, setTimeout(() => _.value = !1, 2e3);
|
|
719
707
|
}
|
|
720
|
-
const
|
|
708
|
+
const N = B(() => l.value ? Object.entries(l.value).filter(
|
|
721
709
|
([v, s]) => /^cust[^_]+_/.test(v) && s !== null && s !== void 0 && s !== ""
|
|
722
|
-
).map(([v, s]) => ({ key: v, val: s })) : []), V = f(!1), J = f(null),
|
|
710
|
+
).map(([v, s]) => ({ key: v, val: s })) : []), V = f(!1), J = f(null), W = f(!1);
|
|
723
711
|
async function K() {
|
|
724
712
|
var v;
|
|
725
713
|
if ((v = l.value) != null && v.id) {
|
|
726
|
-
V.value = !0, J.value = null,
|
|
714
|
+
V.value = !0, J.value = null, W.value = !1;
|
|
727
715
|
try {
|
|
728
|
-
await
|
|
716
|
+
await C.triggerWebHook({
|
|
729
717
|
event: "edit",
|
|
730
718
|
recordId: l.value.id,
|
|
731
719
|
recordType: "assemblyitem"
|
|
732
|
-
}),
|
|
720
|
+
}), W.value = !0, setTimeout(() => W.value = !1, 3e3);
|
|
733
721
|
} catch (s) {
|
|
734
722
|
J.value = (s == null ? void 0 : s.message) ?? "Failed to trigger webhook";
|
|
735
723
|
} finally {
|
|
@@ -737,7 +725,7 @@ const ce = Se((W, P) => {
|
|
|
737
725
|
}
|
|
738
726
|
}
|
|
739
727
|
}
|
|
740
|
-
return
|
|
728
|
+
return A({ open: P, close: k }), (v, s) => {
|
|
741
729
|
var D;
|
|
742
730
|
return t(), H(g(n), {
|
|
743
731
|
modelValue: x.value,
|
|
@@ -750,20 +738,20 @@ const ce = Se((W, P) => {
|
|
|
750
738
|
return [
|
|
751
739
|
e("div", Ca, [
|
|
752
740
|
e("div", Ia, [
|
|
753
|
-
|
|
741
|
+
W.value ? (t(), a("span", Ta, "Webhook triggered!")) : J.value ? (t(), a("span", Da, o(J.value), 1)) : r("", !0)
|
|
754
742
|
]),
|
|
755
743
|
e("div", La, [
|
|
756
|
-
(d = l.value) != null && d.id ? (t(), H(g(
|
|
744
|
+
(d = l.value) != null && d.id ? (t(), H(g(R), {
|
|
757
745
|
key: 0,
|
|
758
746
|
variant: "secondary",
|
|
759
747
|
disabled: V.value || p.value,
|
|
760
748
|
label: V.value ? "Triggering…" : "Trigger Webhook",
|
|
761
749
|
onClick: K
|
|
762
750
|
}, null, 8, ["disabled", "label"])) : r("", !0),
|
|
763
|
-
T(g(
|
|
751
|
+
T(g(R), {
|
|
764
752
|
variant: "tertiary",
|
|
765
753
|
label: "Close",
|
|
766
|
-
onClick:
|
|
754
|
+
onClick: k
|
|
767
755
|
})
|
|
768
756
|
])
|
|
769
757
|
])
|
|
@@ -774,30 +762,30 @@ const ce = Se((W, P) => {
|
|
|
774
762
|
return [
|
|
775
763
|
e("div", bs, [
|
|
776
764
|
e("div", _s, [
|
|
777
|
-
T(g(
|
|
765
|
+
T(g($), {
|
|
778
766
|
label: "Assembly / BOM",
|
|
779
767
|
compact: ""
|
|
780
768
|
}),
|
|
781
|
-
(d = l.value) != null && d.isInactive ? (t(), H(g(
|
|
769
|
+
(d = l.value) != null && d.isInactive ? (t(), H(g($), {
|
|
782
770
|
key: 0,
|
|
783
771
|
label: "Inactive",
|
|
784
772
|
compact: ""
|
|
785
773
|
})) : r("", !0),
|
|
786
|
-
(y = l.value) != null && y.parent ? (t(), H(g(
|
|
774
|
+
(y = l.value) != null && y.parent ? (t(), H(g($), {
|
|
787
775
|
key: 1,
|
|
788
776
|
label: `Child of ${l.value.parent.refName}`,
|
|
789
777
|
compact: ""
|
|
790
778
|
}, null, 8, ["label"])) : r("", !0),
|
|
791
|
-
p.value ? (t(), H(g(
|
|
779
|
+
p.value ? (t(), H(g($), {
|
|
792
780
|
key: 2,
|
|
793
781
|
label: "Loading…",
|
|
794
782
|
compact: ""
|
|
795
783
|
})) : r("", !0),
|
|
796
|
-
(L =
|
|
784
|
+
(L = w.value) != null && L.syncedAt ? (t(), H(g($), {
|
|
797
785
|
key: 3,
|
|
798
|
-
label: `Last Synced: ${new Date(
|
|
786
|
+
label: `Last Synced: ${new Date(w.value.syncedAt).toLocaleString()}`,
|
|
799
787
|
compact: ""
|
|
800
|
-
}, null, 8, ["label"])) : !p.value && l.value ? (t(), H(g(
|
|
788
|
+
}, null, 8, ["label"])) : !p.value && l.value ? (t(), H(g($), {
|
|
801
789
|
key: 4,
|
|
802
790
|
label: "Not synced",
|
|
803
791
|
compact: ""
|
|
@@ -830,11 +818,11 @@ const ce = Se((W, P) => {
|
|
|
830
818
|
])) : r("", !0),
|
|
831
819
|
e("div", null, [
|
|
832
820
|
s[8] || (s[8] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Currency", -1)),
|
|
833
|
-
e("div",
|
|
821
|
+
e("div", Ns, o(l.value.currency.refName), 1)
|
|
834
822
|
]),
|
|
835
823
|
e("div", null, [
|
|
836
824
|
s[9] || (s[9] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Created", -1)),
|
|
837
|
-
e("div",
|
|
825
|
+
e("div", Rs, o(l.value.createdDate), 1)
|
|
838
826
|
]),
|
|
839
827
|
e("div", null, [
|
|
840
828
|
s[10] || (s[10] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Last Modified", -1)),
|
|
@@ -850,11 +838,11 @@ const ce = Se((W, P) => {
|
|
|
850
838
|
]),
|
|
851
839
|
e("div", null, [
|
|
852
840
|
s[12] || (s[12] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Average Cost", -1)),
|
|
853
|
-
e("div",
|
|
841
|
+
e("div", As, o(l.value.averageCost ?? "—"), 1)
|
|
854
842
|
]),
|
|
855
843
|
e("div", null, [
|
|
856
844
|
s[13] || (s[13] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Costing Method", -1)),
|
|
857
|
-
e("div",
|
|
845
|
+
e("div", Ps, o(l.value.costingMethod.refName), 1)
|
|
858
846
|
])
|
|
859
847
|
])
|
|
860
848
|
]),
|
|
@@ -900,11 +888,11 @@ const ce = Se((W, P) => {
|
|
|
900
888
|
e("span", ta, o(l.value.includeChildren ? "Yes" : "No"), 1)
|
|
901
889
|
]),
|
|
902
890
|
e("div", sa, [
|
|
903
|
-
(t(!0), a(M, null, X(l.value.subsidiary.items, (
|
|
904
|
-
key:
|
|
891
|
+
(t(!0), a(M, null, X(l.value.subsidiary.items, (S) => (t(), a("span", {
|
|
892
|
+
key: S.id,
|
|
905
893
|
class: "px-2 py-0.5 rounded-full text-xs border bg-gray-50 border-gray-200 text-gray-700",
|
|
906
|
-
title:
|
|
907
|
-
}, o(
|
|
894
|
+
title: S.id
|
|
895
|
+
}, o(S.refName), 9, aa))), 128))
|
|
908
896
|
])
|
|
909
897
|
])) : r("", !0),
|
|
910
898
|
((E = l.value.itemVendor) == null ? void 0 : E.totalResults) > 0 ? (t(), a("div", oa, [
|
|
@@ -921,7 +909,7 @@ const ce = Se((W, P) => {
|
|
|
921
909
|
])
|
|
922
910
|
], -1)),
|
|
923
911
|
e("tbody", null, [
|
|
924
|
-
(t(!0), a(M, null, X(l.value.itemVendor.items, (
|
|
912
|
+
(t(!0), a(M, null, X(l.value.itemVendor.items, (S, Y) => {
|
|
925
913
|
var Z, O, u;
|
|
926
914
|
return t(), a("tr", {
|
|
927
915
|
key: Y,
|
|
@@ -929,30 +917,30 @@ const ce = Se((W, P) => {
|
|
|
929
917
|
}, [
|
|
930
918
|
e("td", ia, o(Y + 1), 1),
|
|
931
919
|
e("td", da, [
|
|
932
|
-
e("div", ua, o(((Z =
|
|
933
|
-
(O =
|
|
934
|
-
|
|
920
|
+
e("div", ua, o(((Z = S.vendor) == null ? void 0 : Z.refName) ?? "—"), 1),
|
|
921
|
+
(O = S.vendor) != null && O.id ? (t(), a("div", ca, " ID: " + o(S.vendor.id), 1)) : r("", !0),
|
|
922
|
+
S.vendorCode ? (t(), a("div", va, " Code: " + o(S.vendorCode), 1)) : r("", !0)
|
|
935
923
|
]),
|
|
936
|
-
e("td", pa, o(((u =
|
|
937
|
-
e("td", ya, o(
|
|
938
|
-
e("td", xa, o(
|
|
924
|
+
e("td", pa, o(((u = S.subsidiary) == null ? void 0 : u.refName) ?? "—"), 1),
|
|
925
|
+
e("td", ya, o(S.vendorCurrencyName ?? "—"), 1),
|
|
926
|
+
e("td", xa, o(S.purchasePrice ?? "—"), 1)
|
|
939
927
|
]);
|
|
940
928
|
}), 128))
|
|
941
929
|
])
|
|
942
930
|
])
|
|
943
931
|
])
|
|
944
932
|
])) : r("", !0),
|
|
945
|
-
|
|
933
|
+
N.value.length > 0 ? (t(), a("div", ma, [
|
|
946
934
|
s[25] || (s[25] = e("div", { class: "text-xs font-semibold text-amber-700 uppercase tracking-wide mb-3" }, " Custom Fields ", -1)),
|
|
947
935
|
e("div", ga, [
|
|
948
|
-
(t(!0), a(M, null, X(
|
|
949
|
-
key:
|
|
936
|
+
(t(!0), a(M, null, X(N.value, (S) => (t(), a("div", {
|
|
937
|
+
key: S.key
|
|
950
938
|
}, [
|
|
951
|
-
e("div", fa, o(
|
|
952
|
-
|
|
953
|
-
e("div", ba, o(
|
|
954
|
-
|
|
955
|
-
], 64)) : (t(), a("div", ha, o(
|
|
939
|
+
e("div", fa, o(S.key), 1),
|
|
940
|
+
S.val && typeof S.val == "object" && "refName" in S.val ? (t(), a(M, { key: 0 }, [
|
|
941
|
+
e("div", ba, o(S.val.refName), 1),
|
|
942
|
+
S.val.id ? (t(), a("div", _a, " ID: " + o(S.val.id), 1)) : r("", !0)
|
|
943
|
+
], 64)) : (t(), a("div", ha, o(S.val), 1))
|
|
956
944
|
]))), 128))
|
|
957
945
|
])
|
|
958
946
|
])) : r("", !0)
|
|
@@ -960,7 +948,7 @@ const ce = Se((W, P) => {
|
|
|
960
948
|
l.value ? (t(), a("div", ka, [
|
|
961
949
|
e("div", {
|
|
962
950
|
class: j(["flex items-center gap-1.5 px-3 py-2 bg-gray-50 cursor-pointer select-none hover:bg-gray-100 transition-colors", c.value ? "border-b border-gray-200" : ""]),
|
|
963
|
-
onClick: s[0] || (s[0] = (
|
|
951
|
+
onClick: s[0] || (s[0] = (S) => c.value = !c.value)
|
|
964
952
|
}, [
|
|
965
953
|
(t(), a("svg", {
|
|
966
954
|
class: j(["w-3.5 h-3.5 transition-transform text-gray-500", c.value ? "rotate-90" : ""]),
|
|
@@ -989,7 +977,7 @@ const ce = Se((W, P) => {
|
|
|
989
977
|
(I = l.value) != null && I.id ? (t(), a("div", wa, [
|
|
990
978
|
e("div", {
|
|
991
979
|
class: j(["flex items-center gap-1.5 px-3 py-2 bg-gray-50 cursor-pointer select-none hover:bg-gray-100 transition-colors", h.value ? "border-b border-gray-200" : ""]),
|
|
992
|
-
onClick: s[1] || (s[1] = (
|
|
980
|
+
onClick: s[1] || (s[1] = (S) => h.value = !h.value)
|
|
993
981
|
}, [
|
|
994
982
|
(t(), a("svg", {
|
|
995
983
|
class: j(["w-3.5 h-3.5 transition-transform text-gray-500", h.value ? "rotate-90" : ""]),
|
|
@@ -1020,13 +1008,13 @@ const ce = Se((W, P) => {
|
|
|
1020
1008
|
}, 8, ["modelValue", "header"]);
|
|
1021
1009
|
};
|
|
1022
1010
|
}
|
|
1023
|
-
}),
|
|
1011
|
+
}), Na = { class: "p-6 space-y-6" }, Ra = { class: "flex flex-wrap gap-2" }, Oa = {
|
|
1024
1012
|
key: 0,
|
|
1025
1013
|
class: "flex justify-center py-8"
|
|
1026
1014
|
}, Va = {
|
|
1027
1015
|
key: 1,
|
|
1028
1016
|
class: "space-y-6"
|
|
1029
|
-
}, Ua = { class: "grid grid-cols-2 gap-x-8 gap-y-4 text-sm" }, Ba = { class: "col-span-2" },
|
|
1017
|
+
}, Ua = { class: "grid grid-cols-2 gap-x-8 gap-y-4 text-sm" }, Ba = { class: "col-span-2" }, Aa = { class: "font-semibold text-base" }, Pa = { class: "font-mono font-medium" }, Ea = { class: "font-mono font-medium" }, Ma = { class: "font-medium" }, ja = { class: "font-medium" }, qa = { class: "font-medium" }, Ja = { class: "font-medium" }, za = { class: "font-medium" }, Wa = { class: "p-3 bg-gray-50 border border-gray-200 rounded-lg" }, Qa = { class: "grid grid-cols-2 gap-x-8 gap-y-3 text-sm" }, Ha = { class: "font-medium" }, Ka = { class: "font-mono text-xs text-gray-400" }, Ya = { class: "font-mono text-xs" }, Ga = { class: "font-mono text-xs" }, Xa = { class: "font-mono text-xs" }, Za = { key: 0 }, eo = { class: "text-xs font-semibold text-gray-500 uppercase tracking-wide mb-2" }, to = { class: "mb-2 text-sm" }, so = { class: "font-medium" }, ao = { class: "flex flex-wrap gap-1.5" }, oo = ["title"], lo = { key: 1 }, ro = { class: "text-xs font-semibold text-gray-500 uppercase tracking-wide mb-2" }, no = { class: "border border-gray-200 rounded-lg overflow-hidden" }, io = { class: "w-full text-sm" }, uo = { class: "px-3 py-2 font-mono text-xs text-gray-400" }, co = { class: "px-3 py-2" }, vo = { class: "font-medium" }, po = {
|
|
1030
1018
|
key: 0,
|
|
1031
1019
|
class: "text-xs text-gray-400 font-mono"
|
|
1032
1020
|
}, yo = {
|
|
@@ -1056,16 +1044,16 @@ const ce = Se((W, P) => {
|
|
|
1056
1044
|
}, Fo = {
|
|
1057
1045
|
key: 1,
|
|
1058
1046
|
class: "text-red-500"
|
|
1059
|
-
},
|
|
1047
|
+
}, No = { class: "flex gap-2" }, Ro = /* @__PURE__ */ ne({
|
|
1060
1048
|
__name: "ServiceItemSideSheet",
|
|
1061
|
-
setup(
|
|
1062
|
-
const { FmSideSheet: n, FmButton:
|
|
1063
|
-
async function
|
|
1064
|
-
if (l.value = null,
|
|
1049
|
+
setup(Q, { expose: A }) {
|
|
1050
|
+
const { FmSideSheet: n, FmButton: R, FmChip: $, FmCircularProgress: F } = oe, C = ce(), x = f(!1), l = f(null), w = f(null), p = f(!1), c = f(!1), _ = f(!1), h = f(!1);
|
|
1051
|
+
async function P(v) {
|
|
1052
|
+
if (l.value = null, w.value = null, p.value = !1, c.value = !1, x.value = !0, v) {
|
|
1065
1053
|
p.value = !0;
|
|
1066
1054
|
try {
|
|
1067
1055
|
const s = await v();
|
|
1068
|
-
l.value = (s == null ? void 0 : s.nsRecord) ?? null,
|
|
1056
|
+
l.value = (s == null ? void 0 : s.nsRecord) ?? null, w.value = (s == null ? void 0 : s.replica) ?? null;
|
|
1069
1057
|
} catch (s) {
|
|
1070
1058
|
l.value = { error: (s == null ? void 0 : s.message) ?? "Failed to fetch" };
|
|
1071
1059
|
} finally {
|
|
@@ -1073,26 +1061,26 @@ const ce = Se((W, P) => {
|
|
|
1073
1061
|
}
|
|
1074
1062
|
}
|
|
1075
1063
|
}
|
|
1076
|
-
function
|
|
1077
|
-
x.value = !1, l.value = null,
|
|
1064
|
+
function k() {
|
|
1065
|
+
x.value = !1, l.value = null, w.value = null, h.value = !1;
|
|
1078
1066
|
}
|
|
1079
1067
|
function b() {
|
|
1080
1068
|
var v;
|
|
1081
1069
|
(v = window.navigator.clipboard) == null || v.writeText(JSON.stringify(l.value, null, 2)), _.value = !0, setTimeout(() => _.value = !1, 2e3);
|
|
1082
1070
|
}
|
|
1083
|
-
const
|
|
1071
|
+
const N = B(() => l.value ? Object.entries(l.value).filter(
|
|
1084
1072
|
([v, s]) => /^cust[^_]+_/.test(v) && s !== null && s !== void 0 && s !== ""
|
|
1085
|
-
).map(([v, s]) => ({ key: v, val: s })) : []), V = f(!1), J = f(null),
|
|
1073
|
+
).map(([v, s]) => ({ key: v, val: s })) : []), V = f(!1), J = f(null), W = f(!1);
|
|
1086
1074
|
async function K() {
|
|
1087
1075
|
var v;
|
|
1088
1076
|
if ((v = l.value) != null && v.id) {
|
|
1089
|
-
V.value = !0, J.value = null,
|
|
1077
|
+
V.value = !0, J.value = null, W.value = !1;
|
|
1090
1078
|
try {
|
|
1091
|
-
await
|
|
1079
|
+
await C.triggerWebHook({
|
|
1092
1080
|
event: "edit",
|
|
1093
1081
|
recordId: l.value.id,
|
|
1094
1082
|
recordType: "serviceitem"
|
|
1095
|
-
}),
|
|
1083
|
+
}), W.value = !0, setTimeout(() => W.value = !1, 3e3);
|
|
1096
1084
|
} catch (s) {
|
|
1097
1085
|
J.value = (s == null ? void 0 : s.message) ?? "Failed to trigger webhook";
|
|
1098
1086
|
} finally {
|
|
@@ -1100,7 +1088,7 @@ const ce = Se((W, P) => {
|
|
|
1100
1088
|
}
|
|
1101
1089
|
}
|
|
1102
1090
|
}
|
|
1103
|
-
return
|
|
1091
|
+
return A({ open: P, close: k }), (v, s) => {
|
|
1104
1092
|
var D;
|
|
1105
1093
|
return t(), H(g(n), {
|
|
1106
1094
|
modelValue: x.value,
|
|
@@ -1113,54 +1101,54 @@ const ce = Se((W, P) => {
|
|
|
1113
1101
|
return [
|
|
1114
1102
|
e("div", To, [
|
|
1115
1103
|
e("div", Do, [
|
|
1116
|
-
|
|
1104
|
+
W.value ? (t(), a("span", Lo, "Webhook triggered!")) : J.value ? (t(), a("span", Fo, o(J.value), 1)) : r("", !0)
|
|
1117
1105
|
]),
|
|
1118
|
-
e("div",
|
|
1119
|
-
(d = l.value) != null && d.id ? (t(), H(g(
|
|
1106
|
+
e("div", No, [
|
|
1107
|
+
(d = l.value) != null && d.id ? (t(), H(g(R), {
|
|
1120
1108
|
key: 0,
|
|
1121
1109
|
variant: "secondary",
|
|
1122
1110
|
disabled: V.value || p.value,
|
|
1123
1111
|
label: V.value ? "Triggering…" : "Trigger Webhook",
|
|
1124
1112
|
onClick: K
|
|
1125
1113
|
}, null, 8, ["disabled", "label"])) : r("", !0),
|
|
1126
|
-
T(g(
|
|
1114
|
+
T(g(R), {
|
|
1127
1115
|
variant: "tertiary",
|
|
1128
1116
|
label: "Close",
|
|
1129
|
-
onClick:
|
|
1117
|
+
onClick: k
|
|
1130
1118
|
})
|
|
1131
1119
|
])
|
|
1132
1120
|
])
|
|
1133
1121
|
];
|
|
1134
1122
|
}),
|
|
1135
1123
|
default: te(() => {
|
|
1136
|
-
var d, y, L, E, I,
|
|
1124
|
+
var d, y, L, E, I, S, Y, Z, O, u, i, m;
|
|
1137
1125
|
return [
|
|
1138
|
-
e("div",
|
|
1139
|
-
e("div",
|
|
1140
|
-
T(g(
|
|
1126
|
+
e("div", Na, [
|
|
1127
|
+
e("div", Ra, [
|
|
1128
|
+
T(g($), {
|
|
1141
1129
|
label: "Service",
|
|
1142
1130
|
compact: ""
|
|
1143
1131
|
}),
|
|
1144
|
-
(d = l.value) != null && d.subtype ? (t(), H(g(
|
|
1132
|
+
(d = l.value) != null && d.subtype ? (t(), H(g($), {
|
|
1145
1133
|
key: 0,
|
|
1146
1134
|
label: l.value.subtype.refName,
|
|
1147
1135
|
compact: ""
|
|
1148
1136
|
}, null, 8, ["label"])) : r("", !0),
|
|
1149
|
-
(y = l.value) != null && y.isInactive ? (t(), H(g(
|
|
1137
|
+
(y = l.value) != null && y.isInactive ? (t(), H(g($), {
|
|
1150
1138
|
key: 1,
|
|
1151
1139
|
label: "Inactive",
|
|
1152
1140
|
compact: ""
|
|
1153
1141
|
})) : r("", !0),
|
|
1154
|
-
p.value ? (t(), H(g(
|
|
1142
|
+
p.value ? (t(), H(g($), {
|
|
1155
1143
|
key: 2,
|
|
1156
1144
|
label: "Loading…",
|
|
1157
1145
|
compact: ""
|
|
1158
1146
|
})) : r("", !0),
|
|
1159
|
-
(L =
|
|
1147
|
+
(L = w.value) != null && L.syncedAt ? (t(), H(g($), {
|
|
1160
1148
|
key: 3,
|
|
1161
|
-
label: `Last Synced: ${new Date(
|
|
1149
|
+
label: `Last Synced: ${new Date(w.value.syncedAt).toLocaleString()}`,
|
|
1162
1150
|
compact: ""
|
|
1163
|
-
}, null, 8, ["label"])) : !p.value && l.value ? (t(), H(g(
|
|
1151
|
+
}, null, 8, ["label"])) : !p.value && l.value ? (t(), H(g($), {
|
|
1164
1152
|
key: 4,
|
|
1165
1153
|
label: "Not synced",
|
|
1166
1154
|
compact: ""
|
|
@@ -1172,11 +1160,11 @@ const ce = Se((W, P) => {
|
|
|
1172
1160
|
e("div", Ua, [
|
|
1173
1161
|
e("div", Ba, [
|
|
1174
1162
|
s[3] || (s[3] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Item ID", -1)),
|
|
1175
|
-
e("div",
|
|
1163
|
+
e("div", Aa, o(l.value.itemId), 1)
|
|
1176
1164
|
]),
|
|
1177
1165
|
e("div", null, [
|
|
1178
1166
|
s[4] || (s[4] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "External ID", -1)),
|
|
1179
|
-
e("div",
|
|
1167
|
+
e("div", Pa, o(l.value.externalId), 1)
|
|
1180
1168
|
]),
|
|
1181
1169
|
e("div", null, [
|
|
1182
1170
|
s[5] || (s[5] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Internal ID", -1)),
|
|
@@ -1192,7 +1180,7 @@ const ce = Se((W, P) => {
|
|
|
1192
1180
|
]),
|
|
1193
1181
|
e("div", null, [
|
|
1194
1182
|
s[8] || (s[8] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Currency", -1)),
|
|
1195
|
-
e("div", qa, o(((
|
|
1183
|
+
e("div", qa, o(((S = l.value.currency) == null ? void 0 : S.refName) ?? "—"), 1)
|
|
1196
1184
|
]),
|
|
1197
1185
|
e("div", null, [
|
|
1198
1186
|
s[9] || (s[9] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Created", -1)),
|
|
@@ -1275,10 +1263,10 @@ const ce = Se((W, P) => {
|
|
|
1275
1263
|
])
|
|
1276
1264
|
])) : r("", !0)
|
|
1277
1265
|
])) : r("", !0),
|
|
1278
|
-
|
|
1266
|
+
N.value.length > 0 ? (t(), a("div", fo, [
|
|
1279
1267
|
s[18] || (s[18] = e("div", { class: "text-xs font-semibold text-amber-700 uppercase tracking-wide mb-3" }, " Custom Fields ", -1)),
|
|
1280
1268
|
e("div", bo, [
|
|
1281
|
-
(t(!0), a(M, null, X(
|
|
1269
|
+
(t(!0), a(M, null, X(N.value, (U) => (t(), a("div", {
|
|
1282
1270
|
key: U.key
|
|
1283
1271
|
}, [
|
|
1284
1272
|
e("div", _o, o(U.key), 1),
|
|
@@ -1352,10 +1340,10 @@ const ce = Se((W, P) => {
|
|
|
1352
1340
|
}, 8, ["modelValue", "header"]);
|
|
1353
1341
|
};
|
|
1354
1342
|
}
|
|
1355
|
-
}), Oo = { class: "flex flex-col gap-4" }, Vo = { class: "flex gap-1 p-1 bg-gray-100 rounded-lg w-fit" }, Uo = ["onClick"], Bo = { class: "flex flex-wrap gap-3 items-end" },
|
|
1343
|
+
}), Oo = { class: "flex flex-col gap-4" }, Vo = { class: "flex gap-1 p-1 bg-gray-100 rounded-lg w-fit" }, Uo = ["onClick"], Bo = { class: "flex flex-wrap gap-3 items-end" }, Ao = {
|
|
1356
1344
|
key: 0,
|
|
1357
1345
|
class: "flex flex-col gap-2"
|
|
1358
|
-
},
|
|
1346
|
+
}, Po = { class: "flex items-center gap-2" }, Eo = ["value"], Mo = { class: "flex flex-col gap-1" }, jo = { class: "text-xs text-gray-500 font-medium" }, qo = {
|
|
1359
1347
|
key: 0,
|
|
1360
1348
|
class: "text-gray-400 font-normal"
|
|
1361
1349
|
}, Jo = {
|
|
@@ -1375,34 +1363,34 @@ const ce = Se((W, P) => {
|
|
|
1375
1363
|
class: "text-center py-8 text-gray-400"
|
|
1376
1364
|
}, Go = /* @__PURE__ */ ne({
|
|
1377
1365
|
__name: "ItemsView",
|
|
1378
|
-
setup(
|
|
1379
|
-
const
|
|
1366
|
+
setup(Q) {
|
|
1367
|
+
const A = ce(), n = Ie();
|
|
1380
1368
|
_e(async () => {
|
|
1381
1369
|
n.state.itemReplicas.length === 0 && await n.getAllItemReplicas();
|
|
1382
1370
|
});
|
|
1383
|
-
const
|
|
1384
|
-
if (x.value === "custom") return
|
|
1371
|
+
const R = f(), $ = f(), F = f(), C = f("lookup"), x = f("id"), l = f(""), w = f(""), p = B(() => {
|
|
1372
|
+
if (x.value === "custom") return w.value;
|
|
1385
1373
|
const v = l.value.split(",").map((s) => s.trim()).filter(Boolean);
|
|
1386
1374
|
return v.length === 0 ? "" : x.value === "id" ? `item.id IN (${v.join(", ")})` : `UPPER(item.itemid) LIKE '%${l.value.toUpperCase()}%'`;
|
|
1387
1375
|
});
|
|
1388
1376
|
function c(v) {
|
|
1389
|
-
v === "custom" && (
|
|
1377
|
+
v === "custom" && (w.value = p.value), x.value = v;
|
|
1390
1378
|
}
|
|
1391
|
-
const _ = f(""), h = f(!1),
|
|
1392
|
-
async function
|
|
1393
|
-
h.value = !0,
|
|
1379
|
+
const _ = f(""), h = f(!1), P = f(null), k = f([]), b = f(null);
|
|
1380
|
+
async function N() {
|
|
1381
|
+
h.value = !0, P.value = null, k.value = [];
|
|
1394
1382
|
try {
|
|
1395
|
-
if (
|
|
1383
|
+
if (C.value === "lookup") {
|
|
1396
1384
|
const v = p.value.trim();
|
|
1397
1385
|
if (!v) {
|
|
1398
|
-
|
|
1386
|
+
P.value = "Build or enter a WHERE clause";
|
|
1399
1387
|
return;
|
|
1400
1388
|
}
|
|
1401
|
-
|
|
1389
|
+
k.value = await A.browseItemsByFilter(v);
|
|
1402
1390
|
} else
|
|
1403
|
-
|
|
1391
|
+
k.value = await A.browseItemsByFilter();
|
|
1404
1392
|
} catch (v) {
|
|
1405
|
-
|
|
1393
|
+
P.value = (v == null ? void 0 : v.message) || "Failed to fetch items";
|
|
1406
1394
|
} finally {
|
|
1407
1395
|
h.value = !1;
|
|
1408
1396
|
}
|
|
@@ -1416,7 +1404,7 @@ const ce = Se((W, P) => {
|
|
|
1416
1404
|
}
|
|
1417
1405
|
], J = B(() => {
|
|
1418
1406
|
var s;
|
|
1419
|
-
let v =
|
|
1407
|
+
let v = k.value;
|
|
1420
1408
|
if (b.value) {
|
|
1421
1409
|
const D = he.build(b.value);
|
|
1422
1410
|
v = v.filter((d) => ke({ itemType: d.itemType }, D));
|
|
@@ -1432,10 +1420,10 @@ const ce = Se((W, P) => {
|
|
|
1432
1420
|
}
|
|
1433
1421
|
return v;
|
|
1434
1422
|
});
|
|
1435
|
-
function
|
|
1423
|
+
function W(v) {
|
|
1436
1424
|
var d, y, L;
|
|
1437
|
-
const s = v.original, D = () =>
|
|
1438
|
-
s.itemType === be.Enum.InvtPart ? (d =
|
|
1425
|
+
const s = v.original, D = () => A.readItemById(s.itemType, s.recordId);
|
|
1426
|
+
s.itemType === be.Enum.InvtPart ? (d = R.value) == null || d.open(D) : s.itemType === be.Enum.Assembly ? (y = $.value) == null || y.open(D) : (L = F.value) == null || L.open(D);
|
|
1439
1427
|
}
|
|
1440
1428
|
const K = [
|
|
1441
1429
|
{
|
|
@@ -1513,14 +1501,14 @@ const ce = Se((W, P) => {
|
|
|
1513
1501
|
key: L.key,
|
|
1514
1502
|
class: j([
|
|
1515
1503
|
"px-3 py-1.5 text-sm rounded-md transition-colors",
|
|
1516
|
-
|
|
1504
|
+
C.value === L.key ? "bg-white text-gray-900 font-medium shadow-sm" : "text-gray-500 hover:text-gray-700"
|
|
1517
1505
|
]),
|
|
1518
|
-
onClick: (E) =>
|
|
1506
|
+
onClick: (E) => C.value = L.key
|
|
1519
1507
|
}, o(L.label), 11, Uo)), 64))
|
|
1520
1508
|
]),
|
|
1521
1509
|
e("div", Bo, [
|
|
1522
|
-
|
|
1523
|
-
e("div",
|
|
1510
|
+
C.value === "lookup" ? (t(), a("div", Ao, [
|
|
1511
|
+
e("div", Po, [
|
|
1524
1512
|
e("select", {
|
|
1525
1513
|
value: x.value,
|
|
1526
1514
|
class: "h-9 px-2 text-sm border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500",
|
|
@@ -1536,7 +1524,7 @@ const ce = Se((W, P) => {
|
|
|
1536
1524
|
type: "text",
|
|
1537
1525
|
placeholder: "e.g. 1234, 5678",
|
|
1538
1526
|
class: "h-9 px-3 text-sm border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 min-w-64",
|
|
1539
|
-
onKeydown: we(
|
|
1527
|
+
onKeydown: we(N, ["enter"])
|
|
1540
1528
|
}, null, 544)), [
|
|
1541
1529
|
[Ue, l.value]
|
|
1542
1530
|
]) : r("", !0)
|
|
@@ -1548,8 +1536,8 @@ const ce = Se((W, P) => {
|
|
|
1548
1536
|
]),
|
|
1549
1537
|
x.value === "custom" ? (t(), a(M, { key: 0 }, [
|
|
1550
1538
|
T(D, {
|
|
1551
|
-
modelValue:
|
|
1552
|
-
"onUpdate:modelValue": s[2] || (s[2] = (L) =>
|
|
1539
|
+
modelValue: w.value,
|
|
1540
|
+
"onUpdate:modelValue": s[2] || (s[2] = (L) => w.value = L),
|
|
1553
1541
|
rows: "3",
|
|
1554
1542
|
placeholder: "e.g. itemid LIKE '%latte%' OR custitem_brand = 'xyz'",
|
|
1555
1543
|
class: "text-sm font-mono rounded-lg focus:outline-none min-w-[28rem] resize-y"
|
|
@@ -1570,7 +1558,7 @@ const ce = Se((W, P) => {
|
|
|
1570
1558
|
disabled: h.value,
|
|
1571
1559
|
icon: "play_arrow",
|
|
1572
1560
|
label: "Fetch",
|
|
1573
|
-
onClick:
|
|
1561
|
+
onClick: N
|
|
1574
1562
|
}, null, 8, ["loading", "disabled"])
|
|
1575
1563
|
]),
|
|
1576
1564
|
e("div", zo, [
|
|
@@ -1590,7 +1578,7 @@ const ce = Se((W, P) => {
|
|
|
1590
1578
|
}, null, 8, ["modelValue"])
|
|
1591
1579
|
])
|
|
1592
1580
|
]),
|
|
1593
|
-
|
|
1581
|
+
P.value ? (t(), a("div", Qo, o(P.value), 1)) : r("", !0),
|
|
1594
1582
|
h.value ? (t(), a("div", Ho, [
|
|
1595
1583
|
T(g(oe).FmCircularProgress, { size: "md" })
|
|
1596
1584
|
])) : J.value.length > 0 ? (t(), H(g(oe).FmTable, {
|
|
@@ -1598,17 +1586,17 @@ const ce = Se((W, P) => {
|
|
|
1598
1586
|
"column-defs": K,
|
|
1599
1587
|
"row-data": J.value,
|
|
1600
1588
|
class: "cursor-pointer",
|
|
1601
|
-
onRowClick:
|
|
1602
|
-
}, null, 8, ["row-data"])) : !h.value && !
|
|
1589
|
+
onRowClick: W
|
|
1590
|
+
}, null, 8, ["row-data"])) : !h.value && !P.value && k.value.length === 0 ? (t(), a("div", Ko, o(C.value === "lookup" ? 'Enter a NetSuite ID and click "Run" to lookup items' : 'Click "Run" to load all items directly from NetSuite'), 1)) : !h.value && J.value.length === 0 ? (t(), a("div", Yo, " No items match the current filters ")) : r("", !0),
|
|
1603
1591
|
T(fs, {
|
|
1604
1592
|
ref_key: "inventoryItemSideSheetRef",
|
|
1605
|
-
ref:
|
|
1593
|
+
ref: R
|
|
1606
1594
|
}, null, 512),
|
|
1607
1595
|
T(Fa, {
|
|
1608
1596
|
ref_key: "assemblyItemSideSheetRef",
|
|
1609
|
-
ref:
|
|
1597
|
+
ref: $
|
|
1610
1598
|
}, null, 512),
|
|
1611
|
-
T(
|
|
1599
|
+
T(Ro, {
|
|
1612
1600
|
ref_key: "serviceItemSideSheetRef",
|
|
1613
1601
|
ref: F
|
|
1614
1602
|
}, null, 512)
|
|
@@ -1654,24 +1642,24 @@ const ce = Se((W, P) => {
|
|
|
1654
1642
|
orderTypeFilter: { default: "all" }
|
|
1655
1643
|
},
|
|
1656
1644
|
emits: ["update:activeUseCase", "update:netsuiteIdInput", "update:lookupRecordType", "update:queryField", "update:dateRange", "update:syncFilter", "update:filterRule", "update:searchValue", "update:direction", "update:orderTypeFilter", "execute"],
|
|
1657
|
-
setup(
|
|
1658
|
-
const n =
|
|
1645
|
+
setup(Q, { emit: A }) {
|
|
1646
|
+
const n = Q, R = A, $ = [
|
|
1659
1647
|
{ value: "lookup", label: "Lookup by Query" },
|
|
1660
1648
|
{ value: "listByDate", label: "List by Date Range" }
|
|
1661
1649
|
], F = [
|
|
1662
1650
|
{ value: "in", label: "Transfer In" },
|
|
1663
1651
|
{ value: "out", label: "Transfer Out" }
|
|
1664
|
-
],
|
|
1652
|
+
], C = [
|
|
1665
1653
|
{ value: "purchaseOrder", label: "Purchase Order" },
|
|
1666
1654
|
{ value: "transferOrder", label: "Transfer Order" },
|
|
1667
1655
|
{ value: "inventoryTransfer", label: "Inventory Transfer" }
|
|
1668
1656
|
], x = B(
|
|
1669
|
-
() => n.lookupRecordTypeOptions ??
|
|
1657
|
+
() => n.lookupRecordTypeOptions ?? C
|
|
1670
1658
|
), l = [
|
|
1671
1659
|
{ value: "all", label: "All Orders" },
|
|
1672
1660
|
{ value: "purchaseOrder", label: "Purchase Order" },
|
|
1673
1661
|
{ value: "transferOrder", label: "Transfer Order" }
|
|
1674
|
-
],
|
|
1662
|
+
], w = [
|
|
1675
1663
|
{ value: "id", label: "NetSuite ID" },
|
|
1676
1664
|
{ value: "tranid", label: "Tran ID" }
|
|
1677
1665
|
], p = [
|
|
@@ -1688,47 +1676,47 @@ const ce = Se((W, P) => {
|
|
|
1688
1676
|
values: ["PurchOrd", "TrnfrOrd", "InvTrnfr"]
|
|
1689
1677
|
}
|
|
1690
1678
|
];
|
|
1691
|
-
function c(
|
|
1692
|
-
|
|
1679
|
+
function c(k) {
|
|
1680
|
+
R("update:activeUseCase", k);
|
|
1693
1681
|
}
|
|
1694
1682
|
const _ = B(() => ({
|
|
1695
1683
|
startDate: ue(n.dateRange.startDate),
|
|
1696
1684
|
endDate: ue(n.dateRange.endDate)
|
|
1697
1685
|
}));
|
|
1698
|
-
function h(
|
|
1699
|
-
|
|
1700
|
-
startDate: new Date(
|
|
1701
|
-
endDate: new Date(
|
|
1686
|
+
function h(k) {
|
|
1687
|
+
R("update:dateRange", {
|
|
1688
|
+
startDate: new Date(k.startDate),
|
|
1689
|
+
endDate: new Date(k.endDate)
|
|
1702
1690
|
});
|
|
1703
1691
|
}
|
|
1704
|
-
function
|
|
1705
|
-
|
|
1692
|
+
function P() {
|
|
1693
|
+
R("execute");
|
|
1706
1694
|
}
|
|
1707
|
-
return (
|
|
1708
|
-
const
|
|
1695
|
+
return (k, b) => {
|
|
1696
|
+
const N = se("FmTabs"), V = se("FmSelect"), J = se("FmTextField"), W = se("FmIcon"), K = se("FmButton"), v = se("FmDateRangePicker"), s = se("FmSearch");
|
|
1709
1697
|
return t(), a("div", Xo, [
|
|
1710
|
-
T(
|
|
1711
|
-
"model-value":
|
|
1712
|
-
items:
|
|
1698
|
+
T(N, {
|
|
1699
|
+
"model-value": k.activeUseCase,
|
|
1700
|
+
items: $,
|
|
1713
1701
|
"onUpdate:modelValue": c
|
|
1714
1702
|
}, null, 8, ["model-value"]),
|
|
1715
|
-
|
|
1703
|
+
k.activeUseCase === "lookup" ? (t(), a("div", Zo, [
|
|
1716
1704
|
e("div", el, [
|
|
1717
1705
|
e("div", tl, [
|
|
1718
1706
|
b[7] || (b[7] = e("label", { class: "text-xs text-gray-500 font-medium" }, "Record Type", -1)),
|
|
1719
1707
|
T(V, {
|
|
1720
|
-
"model-value":
|
|
1708
|
+
"model-value": k.lookupRecordType,
|
|
1721
1709
|
items: x.value,
|
|
1722
|
-
"onUpdate:modelValue": b[0] || (b[0] = (D) =>
|
|
1710
|
+
"onUpdate:modelValue": b[0] || (b[0] = (D) => R("update:lookupRecordType", D)),
|
|
1723
1711
|
style: { width: "200px" }
|
|
1724
1712
|
}, null, 8, ["model-value", "items"])
|
|
1725
1713
|
]),
|
|
1726
1714
|
e("div", sl, [
|
|
1727
1715
|
b[8] || (b[8] = e("label", { class: "text-xs text-gray-500 font-medium" }, "Query Field", -1)),
|
|
1728
1716
|
T(V, {
|
|
1729
|
-
"model-value":
|
|
1730
|
-
items:
|
|
1731
|
-
"onUpdate:modelValue": b[1] || (b[1] = (D) =>
|
|
1717
|
+
"model-value": k.queryField,
|
|
1718
|
+
items: w,
|
|
1719
|
+
"onUpdate:modelValue": b[1] || (b[1] = (D) => R("update:queryField", D)),
|
|
1732
1720
|
style: { width: "150px" }
|
|
1733
1721
|
}, null, 8, ["model-value"])
|
|
1734
1722
|
]),
|
|
@@ -1739,20 +1727,20 @@ const ce = Se((W, P) => {
|
|
|
1739
1727
|
], -1)),
|
|
1740
1728
|
e("div", ol, [
|
|
1741
1729
|
T(J, {
|
|
1742
|
-
"model-value":
|
|
1743
|
-
placeholder:
|
|
1744
|
-
"onUpdate:modelValue": b[2] || (b[2] = (D) =>
|
|
1745
|
-
onKeyup: we(
|
|
1730
|
+
"model-value": k.netsuiteIdInput,
|
|
1731
|
+
placeholder: k.queryField === "id" ? "e.g. 12345, 12346" : "e.g. PO123, PO124",
|
|
1732
|
+
"onUpdate:modelValue": b[2] || (b[2] = (D) => R("update:netsuiteIdInput", D)),
|
|
1733
|
+
onKeyup: we(P, ["enter"])
|
|
1746
1734
|
}, null, 8, ["model-value", "placeholder"]),
|
|
1747
1735
|
T(K, {
|
|
1748
1736
|
label: "Run",
|
|
1749
1737
|
variant: "primary",
|
|
1750
|
-
loading:
|
|
1751
|
-
disabled:
|
|
1752
|
-
onClick:
|
|
1738
|
+
loading: k.loading,
|
|
1739
|
+
disabled: k.loading || !k.netsuiteIdInput.trim(),
|
|
1740
|
+
onClick: P
|
|
1753
1741
|
}, {
|
|
1754
1742
|
prepend: te(() => [
|
|
1755
|
-
T(
|
|
1743
|
+
T(W, {
|
|
1756
1744
|
name: "play_arrow",
|
|
1757
1745
|
size: "sm"
|
|
1758
1746
|
})
|
|
@@ -1764,21 +1752,21 @@ const ce = Se((W, P) => {
|
|
|
1764
1752
|
])
|
|
1765
1753
|
])) : (t(), a("div", ll, [
|
|
1766
1754
|
e("div", rl, [
|
|
1767
|
-
|
|
1755
|
+
k.showOrderTypeFilter ? (t(), a("div", nl, [
|
|
1768
1756
|
b[10] || (b[10] = e("label", { class: "text-xs text-gray-500 font-medium" }, "Order Type", -1)),
|
|
1769
1757
|
T(V, {
|
|
1770
|
-
"model-value":
|
|
1758
|
+
"model-value": k.orderTypeFilter,
|
|
1771
1759
|
items: l,
|
|
1772
|
-
"onUpdate:modelValue": b[3] || (b[3] = (D) =>
|
|
1760
|
+
"onUpdate:modelValue": b[3] || (b[3] = (D) => R("update:orderTypeFilter", D)),
|
|
1773
1761
|
style: { width: "180px" }
|
|
1774
1762
|
}, null, 8, ["model-value"])
|
|
1775
1763
|
])) : r("", !0),
|
|
1776
|
-
|
|
1764
|
+
k.showDirection ? (t(), a("div", il, [
|
|
1777
1765
|
b[11] || (b[11] = e("label", { class: "text-xs text-gray-500 font-medium" }, "Direction", -1)),
|
|
1778
1766
|
T(V, {
|
|
1779
|
-
"model-value":
|
|
1767
|
+
"model-value": k.direction,
|
|
1780
1768
|
items: F,
|
|
1781
|
-
"onUpdate:modelValue": b[4] || (b[4] = (D) =>
|
|
1769
|
+
"onUpdate:modelValue": b[4] || (b[4] = (D) => R("update:direction", D)),
|
|
1782
1770
|
style: { width: "150px" }
|
|
1783
1771
|
}, null, 8, ["model-value"])
|
|
1784
1772
|
])) : r("", !0),
|
|
@@ -1792,12 +1780,12 @@ const ce = Se((W, P) => {
|
|
|
1792
1780
|
T(K, {
|
|
1793
1781
|
label: "Run",
|
|
1794
1782
|
variant: "primary",
|
|
1795
|
-
loading:
|
|
1796
|
-
disabled:
|
|
1797
|
-
onClick:
|
|
1783
|
+
loading: k.loading,
|
|
1784
|
+
disabled: k.loading || !!k.dateRangeError,
|
|
1785
|
+
onClick: P
|
|
1798
1786
|
}, {
|
|
1799
1787
|
prepend: te(() => [
|
|
1800
|
-
T(
|
|
1788
|
+
T(W, {
|
|
1801
1789
|
name: "play_arrow",
|
|
1802
1790
|
size: "sm"
|
|
1803
1791
|
})
|
|
@@ -1805,21 +1793,21 @@ const ce = Se((W, P) => {
|
|
|
1805
1793
|
_: 1
|
|
1806
1794
|
}, 8, ["loading", "disabled"])
|
|
1807
1795
|
]),
|
|
1808
|
-
|
|
1809
|
-
|
|
1796
|
+
k.dateRangeError ? (t(), a("div", ul, o(k.dateRangeError), 1)) : r("", !0),
|
|
1797
|
+
k.stats.total > 0 ? (t(), a("div", cl, [
|
|
1810
1798
|
T(s, {
|
|
1811
|
-
"model-value":
|
|
1812
|
-
"onUpdate:modelValue": b[5] || (b[5] = (D) =>
|
|
1799
|
+
"model-value": k.searchValue,
|
|
1800
|
+
"onUpdate:modelValue": b[5] || (b[5] = (D) => R("update:searchValue", D)),
|
|
1813
1801
|
placeholder: "Search records...",
|
|
1814
1802
|
class: "w-[300px]"
|
|
1815
1803
|
}, null, 8, ["model-value"]),
|
|
1816
1804
|
T(g(De), {
|
|
1817
|
-
"model-value":
|
|
1818
|
-
"onUpdate:modelValue": b[6] || (b[6] = (D) =>
|
|
1805
|
+
"model-value": k.filterRule,
|
|
1806
|
+
"onUpdate:modelValue": b[6] || (b[6] = (D) => R("update:filterRule", D)),
|
|
1819
1807
|
attributes: p
|
|
1820
1808
|
}, null, 8, ["model-value"]),
|
|
1821
1809
|
e("div", vl, [
|
|
1822
|
-
e("span", pl, " Total: " + o(
|
|
1810
|
+
e("span", pl, " Total: " + o(k.stats.total) + " | Synced: " + o(k.stats.synced) + " | Unsynced: " + o(k.stats.unsynced), 1)
|
|
1823
1811
|
])
|
|
1824
1812
|
])) : r("", !0)
|
|
1825
1813
|
]))
|
|
@@ -1841,26 +1829,26 @@ const ce = Se((W, P) => {
|
|
|
1841
1829
|
}, bl = {
|
|
1842
1830
|
key: 3,
|
|
1843
1831
|
class: "overflow-x-auto"
|
|
1844
|
-
}, _l = { class: "w-full text-xs" }, hl = { class: "px-2 py-1.5 font-mono whitespace-nowrap text-gray-500" }, kl = { class: "px-2 py-1.5 text-gray-500" }, $l = { class: "px-2 py-1.5 text-gray-500" }, wl = { class: "px-2 py-1.5 text-gray-500" }, Sl = { class: "px-2 py-1.5" }, Cl = { class: "px-2 py-1.5 font-mono text-gray-400" }, Il = { class: "px-2 py-1.5 text-gray-600" }, Tl = { class: "px-2 py-1.5 text-gray-400" }, Dl = { class: "px-2 py-1.5 font-medium text-gray-700" },
|
|
1832
|
+
}, _l = { class: "w-full text-xs" }, hl = { class: "px-2 py-1.5 font-mono whitespace-nowrap text-gray-500" }, kl = { class: "px-2 py-1.5 text-gray-500" }, $l = { class: "px-2 py-1.5 text-gray-500" }, wl = { class: "px-2 py-1.5 text-gray-500" }, Sl = { class: "px-2 py-1.5" }, Cl = { class: "px-2 py-1.5 font-mono text-gray-400" }, Il = { class: "px-2 py-1.5 text-gray-600" }, Tl = { class: "px-2 py-1.5 text-gray-400" }, Dl = { class: "px-2 py-1.5 font-medium text-gray-700" }, Ne = /* @__PURE__ */ ne({
|
|
1845
1833
|
__name: "ExplorerSystemNote",
|
|
1846
1834
|
props: {
|
|
1847
1835
|
netsuiteId: {}
|
|
1848
1836
|
},
|
|
1849
|
-
setup(
|
|
1850
|
-
const { FmCircularProgress:
|
|
1837
|
+
setup(Q) {
|
|
1838
|
+
const { FmCircularProgress: A } = oe, n = Q, R = Te(), $ = f(!1), F = f([]), C = f(!1), x = f(!1);
|
|
1851
1839
|
async function l() {
|
|
1852
|
-
if (!(F.value.length > 0 ||
|
|
1853
|
-
|
|
1840
|
+
if (!(F.value.length > 0 || C.value)) {
|
|
1841
|
+
C.value = !0, x.value = !1;
|
|
1854
1842
|
try {
|
|
1855
|
-
F.value = await
|
|
1843
|
+
F.value = await R.getChangeLogs(n.netsuiteId);
|
|
1856
1844
|
} catch {
|
|
1857
1845
|
x.value = !0;
|
|
1858
1846
|
} finally {
|
|
1859
|
-
|
|
1847
|
+
C.value = !1;
|
|
1860
1848
|
}
|
|
1861
1849
|
}
|
|
1862
1850
|
}
|
|
1863
|
-
function
|
|
1851
|
+
function w(c) {
|
|
1864
1852
|
switch (Number(c) - 1) {
|
|
1865
1853
|
case ge.Create:
|
|
1866
1854
|
return "bg-green-100 text-green-700";
|
|
@@ -1879,13 +1867,13 @@ const ce = Se((W, P) => {
|
|
|
1879
1867
|
}
|
|
1880
1868
|
return (c, _) => (t(), a("div", yl, [
|
|
1881
1869
|
e("div", {
|
|
1882
|
-
class: j(["flex items-center gap-1.5 px-3 py-2 bg-gray-50 cursor-pointer select-none hover:bg-gray-100 transition-colors",
|
|
1870
|
+
class: j(["flex items-center gap-1.5 px-3 py-2 bg-gray-50 cursor-pointer select-none hover:bg-gray-100 transition-colors", $.value ? "border-b border-gray-200" : ""]),
|
|
1883
1871
|
onClick: _[0] || (_[0] = () => {
|
|
1884
|
-
|
|
1872
|
+
$.value = !$.value, l();
|
|
1885
1873
|
})
|
|
1886
1874
|
}, [
|
|
1887
1875
|
(t(), a("svg", {
|
|
1888
|
-
class: j(["w-3.5 h-3.5 transition-transform text-gray-500",
|
|
1876
|
+
class: j(["w-3.5 h-3.5 transition-transform text-gray-500", $.value ? "rotate-90" : ""]),
|
|
1889
1877
|
fill: "none",
|
|
1890
1878
|
stroke: "currentColor",
|
|
1891
1879
|
viewBox: "0 0 24 24"
|
|
@@ -1899,9 +1887,9 @@ const ce = Se((W, P) => {
|
|
|
1899
1887
|
]), 2)),
|
|
1900
1888
|
_[2] || (_[2] = e("span", { class: "text-xs font-medium text-gray-600" }, "(NetSuite) System Note", -1))
|
|
1901
1889
|
], 2),
|
|
1902
|
-
|
|
1903
|
-
|
|
1904
|
-
T(g(
|
|
1890
|
+
$.value ? (t(), a("div", xl, [
|
|
1891
|
+
C.value ? (t(), a("div", ml, [
|
|
1892
|
+
T(g(A), { size: "md" }),
|
|
1905
1893
|
_[3] || (_[3] = re(" Loading... "))
|
|
1906
1894
|
])) : x.value ? (t(), a("div", gl, " Failed to load system note. ")) : F.value.length === 0 ? (t(), a("div", fl, " No system notes found. ")) : (t(), a("div", bl, [
|
|
1907
1895
|
e("table", _l, [
|
|
@@ -1919,8 +1907,8 @@ const ce = Se((W, P) => {
|
|
|
1919
1907
|
])
|
|
1920
1908
|
], -1)),
|
|
1921
1909
|
e("tbody", null, [
|
|
1922
|
-
(t(!0), a(M, null, X(F.value, (h,
|
|
1923
|
-
key:
|
|
1910
|
+
(t(!0), a(M, null, X(F.value, (h, P) => (t(), a("tr", {
|
|
1911
|
+
key: P,
|
|
1924
1912
|
class: "border-b border-gray-100 last:border-b-0 hover:bg-gray-50"
|
|
1925
1913
|
}, [
|
|
1926
1914
|
e("td", hl, o(p(h._dateiso8601)), 1),
|
|
@@ -1931,7 +1919,7 @@ const ce = Se((W, P) => {
|
|
|
1931
1919
|
e("span", {
|
|
1932
1920
|
class: j([
|
|
1933
1921
|
"inline-block px-1.5 py-0.5 rounded font-medium",
|
|
1934
|
-
|
|
1922
|
+
w(h.type)
|
|
1935
1923
|
])
|
|
1936
1924
|
}, o(g(ge)[Number(h.type) - 1]), 3)
|
|
1937
1925
|
]),
|
|
@@ -1956,8 +1944,8 @@ const ce = Se((W, P) => {
|
|
|
1956
1944
|
compact: { type: Boolean }
|
|
1957
1945
|
},
|
|
1958
1946
|
emits: ["synced", "error"],
|
|
1959
|
-
setup(
|
|
1960
|
-
const { FmButton: n, FmDialog:
|
|
1947
|
+
setup(Q, { emit: A }) {
|
|
1948
|
+
const { FmButton: n, FmDialog: R, FmRadioGroup: $, FmRadio: F } = oe, C = Q, x = A, l = Te(), w = f(!1), p = f(!1), c = f(xe.enum[1]), _ = [
|
|
1961
1949
|
{ value: xe.enum[1], label: "Version 1" },
|
|
1962
1950
|
{
|
|
1963
1951
|
value: xe.enum[2],
|
|
@@ -1966,19 +1954,19 @@ const ce = Se((W, P) => {
|
|
|
1966
1954
|
}
|
|
1967
1955
|
];
|
|
1968
1956
|
function h() {
|
|
1969
|
-
|
|
1957
|
+
C.netsuiteIds.length && (c.value = xe.enum[1], w.value = !0);
|
|
1970
1958
|
}
|
|
1971
|
-
async function
|
|
1972
|
-
|
|
1973
|
-
const
|
|
1959
|
+
async function P() {
|
|
1960
|
+
w.value = !1;
|
|
1961
|
+
const k = c.value === xe.enum[2] ? xe.enum[2] : void 0;
|
|
1974
1962
|
p.value = !0;
|
|
1975
1963
|
try {
|
|
1976
|
-
|
|
1977
|
-
netsuiteIds:
|
|
1978
|
-
version:
|
|
1964
|
+
C.recordType === "purchaseOrder" ? await l.manualSyncMultiplePurchaseOrders({
|
|
1965
|
+
netsuiteIds: C.netsuiteIds,
|
|
1966
|
+
version: k
|
|
1979
1967
|
}) : await l.manualSyncMultipleTransferInOrders({
|
|
1980
|
-
netsuiteIds:
|
|
1981
|
-
version:
|
|
1968
|
+
netsuiteIds: C.netsuiteIds,
|
|
1969
|
+
version: k
|
|
1982
1970
|
}), x("synced");
|
|
1983
1971
|
} catch (b) {
|
|
1984
1972
|
x("error", (b == null ? void 0 : b.message) || "Sync failed");
|
|
@@ -1986,19 +1974,19 @@ const ce = Se((W, P) => {
|
|
|
1986
1974
|
p.value = !1;
|
|
1987
1975
|
}
|
|
1988
1976
|
}
|
|
1989
|
-
return (
|
|
1977
|
+
return (k, b) => (t(), a(M, null, [
|
|
1990
1978
|
T(g(n), {
|
|
1991
1979
|
variant: "secondary",
|
|
1992
1980
|
"prepend-icon": "sync",
|
|
1993
|
-
label:
|
|
1981
|
+
label: k.label ?? `Sync${k.netsuiteIds.length > 1 ? ` (${k.netsuiteIds.length})` : ""}`,
|
|
1994
1982
|
loading: p.value,
|
|
1995
|
-
disabled:
|
|
1996
|
-
compact:
|
|
1983
|
+
disabled: k.disabled || !k.netsuiteIds.length || p.value,
|
|
1984
|
+
compact: k.compact,
|
|
1997
1985
|
onClick: h
|
|
1998
1986
|
}, null, 8, ["label", "loading", "disabled", "compact"]),
|
|
1999
|
-
T(g(
|
|
2000
|
-
modelValue:
|
|
2001
|
-
"onUpdate:modelValue": b[2] || (b[2] = (
|
|
1987
|
+
T(g(R), {
|
|
1988
|
+
modelValue: w.value,
|
|
1989
|
+
"onUpdate:modelValue": b[2] || (b[2] = (N) => w.value = N),
|
|
2002
1990
|
overlay: !0
|
|
2003
1991
|
}, {
|
|
2004
1992
|
"dialog-header": te(() => b[3] || (b[3] = [
|
|
@@ -2009,28 +1997,28 @@ const ce = Se((W, P) => {
|
|
|
2009
1997
|
T(g(n), {
|
|
2010
1998
|
label: "Not now",
|
|
2011
1999
|
variant: "secondary",
|
|
2012
|
-
onClick: b[1] || (b[1] = (
|
|
2000
|
+
onClick: b[1] || (b[1] = (N) => w.value = !1)
|
|
2013
2001
|
}),
|
|
2014
2002
|
T(g(n), {
|
|
2015
2003
|
label: "Confirm",
|
|
2016
2004
|
variant: "primary",
|
|
2017
|
-
onClick:
|
|
2005
|
+
onClick: P
|
|
2018
2006
|
})
|
|
2019
2007
|
])
|
|
2020
2008
|
]),
|
|
2021
2009
|
default: te(() => [
|
|
2022
2010
|
e("div", Ll, [
|
|
2023
|
-
e("p", null, " Choose the version to use for syncing " + o(
|
|
2024
|
-
T(g(
|
|
2011
|
+
e("p", null, " Choose the version to use for syncing " + o(C.recordType === "purchaseOrder" ? "purchase orders" : "transfer orders") + " " + o(k.netsuiteIds.length === 1 ? `record ${k.netsuiteIds[0]}` : `${k.netsuiteIds.length} records`) + ": ", 1),
|
|
2012
|
+
T(g($), {
|
|
2025
2013
|
modelValue: c.value,
|
|
2026
|
-
"onUpdate:modelValue": b[0] || (b[0] = (
|
|
2014
|
+
"onUpdate:modelValue": b[0] || (b[0] = (N) => c.value = N)
|
|
2027
2015
|
}, {
|
|
2028
2016
|
default: te(() => [
|
|
2029
|
-
(t(), a(M, null, X(_, (
|
|
2030
|
-
key:
|
|
2031
|
-
value:
|
|
2032
|
-
label:
|
|
2033
|
-
sublabel:
|
|
2017
|
+
(t(), a(M, null, X(_, (N) => T(g(F), {
|
|
2018
|
+
key: N.value,
|
|
2019
|
+
value: N.value,
|
|
2020
|
+
label: N.label,
|
|
2021
|
+
sublabel: N.subLabel
|
|
2034
2022
|
}, null, 8, ["value", "label", "sublabel"])), 64))
|
|
2035
2023
|
]),
|
|
2036
2024
|
_: 1
|
|
@@ -2041,10 +2029,10 @@ const ce = Se((W, P) => {
|
|
|
2041
2029
|
}, 8, ["modelValue"])
|
|
2042
2030
|
], 64));
|
|
2043
2031
|
}
|
|
2044
|
-
}),
|
|
2032
|
+
}), Nl = { class: "p-6 space-y-6" }, Rl = {
|
|
2045
2033
|
key: 0,
|
|
2046
2034
|
class: "flex items-center justify-center py-16"
|
|
2047
|
-
}, Ol = { class: "grid grid-cols-2 gap-x-8 gap-y-3 text-sm" }, Vl = { key: 0 }, Ul = { class: "font-medium" }, Bl = { key: 1 },
|
|
2035
|
+
}, Ol = { class: "grid grid-cols-2 gap-x-8 gap-y-3 text-sm" }, Vl = { key: 0 }, Ul = { class: "font-medium" }, Bl = { key: 1 }, Al = { class: "font-medium" }, Pl = { key: 2 }, El = { class: "font-medium" }, Ml = { key: 3 }, jl = { class: "font-medium" }, ql = { key: 4 }, Jl = { class: "font-medium" }, zl = { key: 5 }, Wl = { class: "font-medium" }, Ql = { key: 6 }, Hl = { class: "font-medium" }, Kl = { key: 7 }, Yl = { class: "font-medium font-mono" }, Gl = { key: 8 }, Xl = { class: "font-medium font-mono text-xs" }, Zl = {
|
|
2048
2036
|
key: 9,
|
|
2049
2037
|
class: "col-span-2"
|
|
2050
2038
|
}, er = { class: "text-gray-700 italic" }, tr = { key: 0 }, sr = { class: "text-xs font-semibold text-gray-500 uppercase tracking-wide mb-2" }, ar = { class: "border border-gray-200 rounded-lg overflow-hidden" }, or = { class: "w-full text-sm" }, lr = ["onClick"], rr = { class: "w-8 pl-2 py-2 text-gray-400" }, nr = { class: "px-3 py-2 font-mono text-xs text-gray-400" }, ir = { class: "px-3 py-2" }, dr = { class: "font-medium" }, ur = {
|
|
@@ -2065,7 +2053,7 @@ const ce = Se((W, P) => {
|
|
|
2065
2053
|
fill: "none",
|
|
2066
2054
|
stroke: "currentColor",
|
|
2067
2055
|
viewBox: "0 0 24 24"
|
|
2068
|
-
}, Tr = { class: "space-y-1 text-xs font-mono" }, Dr = { class: "text-gray-400 shrink-0" }, Lr = { class: "text-gray-700 break-all" }, Fr = { class: "text-amber-700 font-semibold shrink-0" },
|
|
2056
|
+
}, Tr = { class: "space-y-1 text-xs font-mono" }, Dr = { class: "text-gray-400 shrink-0" }, Lr = { class: "text-gray-700 break-all" }, Fr = { class: "text-amber-700 font-semibold shrink-0" }, Nr = { class: "text-amber-900 break-all" }, Rr = { class: "border border-gray-200 rounded-lg overflow-hidden" }, Or = {
|
|
2069
2057
|
key: 0,
|
|
2070
2058
|
class: "w-3.5 h-3.5",
|
|
2071
2059
|
fill: "none",
|
|
@@ -2080,10 +2068,10 @@ const ce = Se((W, P) => {
|
|
|
2080
2068
|
}, Ur = { key: 0 }, Br = {
|
|
2081
2069
|
key: 2,
|
|
2082
2070
|
class: "p-3 bg-red-50 border border-red-200 rounded-lg text-sm text-red-700"
|
|
2083
|
-
},
|
|
2071
|
+
}, Ar = {
|
|
2084
2072
|
key: 3,
|
|
2085
2073
|
class: "border border-gray-200 rounded-lg overflow-hidden"
|
|
2086
|
-
},
|
|
2074
|
+
}, Pr = {
|
|
2087
2075
|
key: 0,
|
|
2088
2076
|
class: "p-4"
|
|
2089
2077
|
}, Er = { class: "flex items-center justify-between gap-2 w-full" }, Mr = { class: "flex items-center gap-2" }, jr = {
|
|
@@ -2094,26 +2082,26 @@ const ce = Se((W, P) => {
|
|
|
2094
2082
|
class: "text-xs text-red-600"
|
|
2095
2083
|
}, Jr = { class: "flex gap-2" }, zr = 14, Wr = /* @__PURE__ */ ne({
|
|
2096
2084
|
__name: "PurchaseOrderSideSheet",
|
|
2097
|
-
setup(
|
|
2098
|
-
const { FmSideSheet: n, FmButton:
|
|
2099
|
-
function
|
|
2085
|
+
setup(Q, { expose: A }) {
|
|
2086
|
+
const { FmSideSheet: n, FmButton: R, FmCircularProgress: $ } = oe, F = f(!1), C = f(!1), x = f(null), l = f(null), w = f(!1), p = f(!1), c = f(!1), _ = f(null), h = f(!1);
|
|
2087
|
+
function P() {
|
|
2100
2088
|
h.value = !0, _.value = null;
|
|
2101
2089
|
}
|
|
2102
|
-
function
|
|
2090
|
+
function k(i) {
|
|
2103
2091
|
_.value = i, h.value = !1;
|
|
2104
2092
|
}
|
|
2105
2093
|
async function b(i, m) {
|
|
2106
|
-
l.value = i, F.value = !0,
|
|
2094
|
+
l.value = i, F.value = !0, C.value = !0, x.value = null, w.value = !1;
|
|
2107
2095
|
try {
|
|
2108
2096
|
x.value = await m();
|
|
2109
2097
|
} catch (U) {
|
|
2110
2098
|
x.value = { error: (U == null ? void 0 : U.message) || "Failed to fetch raw data" };
|
|
2111
2099
|
} finally {
|
|
2112
|
-
|
|
2100
|
+
C.value = !1;
|
|
2113
2101
|
}
|
|
2114
2102
|
}
|
|
2115
|
-
function
|
|
2116
|
-
F.value = !1, x.value = null, l.value = null,
|
|
2103
|
+
function N() {
|
|
2104
|
+
F.value = !1, x.value = null, l.value = null, w.value = !1, p.value = !1, _.value = null, h.value = !1;
|
|
2117
2105
|
}
|
|
2118
2106
|
function V() {
|
|
2119
2107
|
var i;
|
|
@@ -2122,7 +2110,7 @@ const ce = Se((W, P) => {
|
|
|
2122
2110
|
const J = B(() => {
|
|
2123
2111
|
var i;
|
|
2124
2112
|
return ((i = x.value) == null ? void 0 : i.tranId) ?? null;
|
|
2125
|
-
}),
|
|
2113
|
+
}), W = B(() => {
|
|
2126
2114
|
var i, m;
|
|
2127
2115
|
return ((m = (i = x.value) == null ? void 0 : i.status) == null ? void 0 : m.refName) ?? null;
|
|
2128
2116
|
}), K = B(() => {
|
|
@@ -2152,9 +2140,9 @@ const ce = Se((W, P) => {
|
|
|
2152
2140
|
}), I = B(() => {
|
|
2153
2141
|
var i, m;
|
|
2154
2142
|
return ((m = (i = x.value) == null ? void 0 : i.item) == null ? void 0 : m.items) ?? [];
|
|
2155
|
-
}),
|
|
2143
|
+
}), S = f(/* @__PURE__ */ new Set());
|
|
2156
2144
|
function Y(i) {
|
|
2157
|
-
|
|
2145
|
+
S.value.has(i) ? S.value.delete(i) : S.value.add(i), S.value = new Set(S.value);
|
|
2158
2146
|
}
|
|
2159
2147
|
function Z(i) {
|
|
2160
2148
|
const m = [], U = [];
|
|
@@ -2167,7 +2155,7 @@ const ce = Se((W, P) => {
|
|
|
2167
2155
|
var U;
|
|
2168
2156
|
(U = window.navigator.clipboard) == null || U.writeText(JSON.stringify(i, null, 2)), O.value = m, setTimeout(() => O.value = null, 2e3);
|
|
2169
2157
|
}
|
|
2170
|
-
return
|
|
2158
|
+
return A({ open: b, close: N }), (i, m) => (t(), H(g(n), {
|
|
2171
2159
|
modelValue: F.value,
|
|
2172
2160
|
"onUpdate:modelValue": m[2] || (m[2] = (U) => F.value = U),
|
|
2173
2161
|
header: `Purchase Order · ${l.value ?? "-"}`,
|
|
@@ -2184,12 +2172,12 @@ const ce = Se((W, P) => {
|
|
|
2184
2172
|
"netsuite-ids": l.value ? [l.value] : [],
|
|
2185
2173
|
"record-type": "purchaseOrder",
|
|
2186
2174
|
label: "Sync Now",
|
|
2187
|
-
onSynced:
|
|
2188
|
-
onError:
|
|
2175
|
+
onSynced: P,
|
|
2176
|
+
onError: k
|
|
2189
2177
|
}, null, 8, ["netsuite-ids"]),
|
|
2190
|
-
T(g(
|
|
2178
|
+
T(g(R), {
|
|
2191
2179
|
variant: "tertiary",
|
|
2192
|
-
onClick:
|
|
2180
|
+
onClick: N
|
|
2193
2181
|
}, {
|
|
2194
2182
|
default: te(() => m[24] || (m[24] = [
|
|
2195
2183
|
re("Close")
|
|
@@ -2202,20 +2190,20 @@ const ce = Se((W, P) => {
|
|
|
2202
2190
|
default: te(() => {
|
|
2203
2191
|
var U;
|
|
2204
2192
|
return [
|
|
2205
|
-
e("div",
|
|
2206
|
-
|
|
2207
|
-
T(g(
|
|
2193
|
+
e("div", Nl, [
|
|
2194
|
+
C.value ? (t(), a("div", Rl, [
|
|
2195
|
+
T(g($), { size: "md" })
|
|
2208
2196
|
])) : x.value && !x.value.error ? (t(), a(M, { key: 1 }, [
|
|
2209
2197
|
e("div", Ol, [
|
|
2210
2198
|
J.value ? (t(), a("div", Vl, [
|
|
2211
2199
|
m[3] || (m[3] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Transaction ID", -1)),
|
|
2212
2200
|
e("div", Ul, o(J.value), 1)
|
|
2213
2201
|
])) : r("", !0),
|
|
2214
|
-
|
|
2202
|
+
W.value ? (t(), a("div", Bl, [
|
|
2215
2203
|
m[4] || (m[4] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Status", -1)),
|
|
2216
|
-
e("div",
|
|
2204
|
+
e("div", Al, o(W.value), 1)
|
|
2217
2205
|
])) : r("", !0),
|
|
2218
|
-
K.value ? (t(), a("div",
|
|
2206
|
+
K.value ? (t(), a("div", Pl, [
|
|
2219
2207
|
m[5] || (m[5] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Tran Date", -1)),
|
|
2220
2208
|
e("div", El, o(new Date(K.value).toLocaleDateString()), 1)
|
|
2221
2209
|
])) : r("", !0),
|
|
@@ -2279,13 +2267,13 @@ const ce = Se((W, P) => {
|
|
|
2279
2267
|
e("tr", {
|
|
2280
2268
|
class: j(["border-b border-gray-100 cursor-pointer select-none", [
|
|
2281
2269
|
z.isClosed ? "bg-gray-50 text-gray-400" : "hover:bg-blue-50/40",
|
|
2282
|
-
|
|
2270
|
+
S.value.has(ae) ? "bg-blue-50/60" : ""
|
|
2283
2271
|
]]),
|
|
2284
2272
|
onClick: (le) => Y(ae)
|
|
2285
2273
|
}, [
|
|
2286
2274
|
e("td", rr, [
|
|
2287
2275
|
(t(), a("svg", {
|
|
2288
|
-
class: j(["w-3.5 h-3.5 transition-transform",
|
|
2276
|
+
class: j(["w-3.5 h-3.5 transition-transform", S.value.has(ae) ? "rotate-90" : ""]),
|
|
2289
2277
|
fill: "none",
|
|
2290
2278
|
stroke: "currentColor",
|
|
2291
2279
|
viewBox: "0 0 24 24"
|
|
@@ -2317,7 +2305,7 @@ const ce = Se((W, P) => {
|
|
|
2317
2305
|
z.isClosed ? (t(), a("span", kr, "Closed")) : (t(), a("span", $r, "—"))
|
|
2318
2306
|
])
|
|
2319
2307
|
], 10, lr),
|
|
2320
|
-
|
|
2308
|
+
S.value.has(ae) ? (t(), a("tr", wr, [
|
|
2321
2309
|
e("td", {
|
|
2322
2310
|
colspan: zr,
|
|
2323
2311
|
class: "px-4 py-3"
|
|
@@ -2357,7 +2345,7 @@ const ce = Se((W, P) => {
|
|
|
2357
2345
|
class: "flex gap-2 rounded px-1.5 py-0.5 bg-amber-50 border border-amber-200"
|
|
2358
2346
|
}, [
|
|
2359
2347
|
e("span", Fr, o(le) + ":", 1),
|
|
2360
|
-
e("span",
|
|
2348
|
+
e("span", Nr, o(JSON.stringify(pe)), 1)
|
|
2361
2349
|
]))), 128))
|
|
2362
2350
|
], 64)) : r("", !0)
|
|
2363
2351
|
])
|
|
@@ -2369,17 +2357,17 @@ const ce = Se((W, P) => {
|
|
|
2369
2357
|
])
|
|
2370
2358
|
])
|
|
2371
2359
|
])) : r("", !0),
|
|
2372
|
-
l.value ? (t(), H(
|
|
2360
|
+
l.value ? (t(), H(Ne, {
|
|
2373
2361
|
key: l.value,
|
|
2374
2362
|
"netsuite-id": l.value
|
|
2375
2363
|
}, null, 8, ["netsuite-id"])) : r("", !0),
|
|
2376
|
-
e("div",
|
|
2364
|
+
e("div", Rr, [
|
|
2377
2365
|
e("div", {
|
|
2378
|
-
class: j(["flex items-center gap-1.5 px-3 py-2 bg-gray-50 cursor-pointer select-none hover:bg-gray-100 transition-colors",
|
|
2379
|
-
onClick: m[0] || (m[0] = (z) =>
|
|
2366
|
+
class: j(["flex items-center gap-1.5 px-3 py-2 bg-gray-50 cursor-pointer select-none hover:bg-gray-100 transition-colors", w.value ? "border-b border-gray-200" : ""]),
|
|
2367
|
+
onClick: m[0] || (m[0] = (z) => w.value = !w.value)
|
|
2380
2368
|
}, [
|
|
2381
2369
|
(t(), a("svg", {
|
|
2382
|
-
class: j(["w-3.5 h-3.5 transition-transform text-gray-500",
|
|
2370
|
+
class: j(["w-3.5 h-3.5 transition-transform text-gray-500", w.value ? "rotate-90" : ""]),
|
|
2383
2371
|
fill: "none",
|
|
2384
2372
|
stroke: "currentColor",
|
|
2385
2373
|
viewBox: "0 0 24 24"
|
|
@@ -2392,7 +2380,7 @@ const ce = Se((W, P) => {
|
|
|
2392
2380
|
}, null, -1)
|
|
2393
2381
|
]), 2)),
|
|
2394
2382
|
m[21] || (m[21] = e("span", { class: "text-xs font-medium text-gray-600" }, "(NetSuite) Raw JSON", -1)),
|
|
2395
|
-
|
|
2383
|
+
w.value ? (t(), a("button", {
|
|
2396
2384
|
key: 0,
|
|
2397
2385
|
class: j(["ml-auto text-xs flex items-center gap-1 transition-colors", c.value ? "text-green-600" : "text-gray-400 hover:text-gray-700"]),
|
|
2398
2386
|
onClick: de(V, ["stop"])
|
|
@@ -2415,7 +2403,7 @@ const ce = Se((W, P) => {
|
|
|
2415
2403
|
re(" " + o(c.value ? "Copied!" : "Copy JSON"), 1)
|
|
2416
2404
|
], 2)) : r("", !0)
|
|
2417
2405
|
], 2),
|
|
2418
|
-
|
|
2406
|
+
w.value ? (t(), a("div", Ur, [
|
|
2419
2407
|
T(ye, {
|
|
2420
2408
|
value: x.value,
|
|
2421
2409
|
"max-height": "50vh"
|
|
@@ -2423,7 +2411,7 @@ const ce = Se((W, P) => {
|
|
|
2423
2411
|
])) : r("", !0)
|
|
2424
2412
|
])
|
|
2425
2413
|
], 64)) : (U = x.value) != null && U.error ? (t(), a("div", Br, o(x.value.error), 1)) : r("", !0),
|
|
2426
|
-
l.value ? (t(), a("div",
|
|
2414
|
+
l.value ? (t(), a("div", Ar, [
|
|
2427
2415
|
e("div", {
|
|
2428
2416
|
class: j(["flex items-center gap-1.5 px-3 py-2 bg-gray-50 cursor-pointer select-none hover:bg-gray-100 transition-colors", p.value ? "border-b border-gray-200" : ""]),
|
|
2429
2417
|
onClick: m[1] || (m[1] = (z) => p.value = !p.value)
|
|
@@ -2443,7 +2431,7 @@ const ce = Se((W, P) => {
|
|
|
2443
2431
|
]), 2)),
|
|
2444
2432
|
m[23] || (m[23] = e("span", { class: "text-xs font-medium text-gray-600" }, "Sync Logs", -1))
|
|
2445
2433
|
], 2),
|
|
2446
|
-
p.value ? (t(), a("div",
|
|
2434
|
+
p.value ? (t(), a("div", Pr, [
|
|
2447
2435
|
T(ve, {
|
|
2448
2436
|
"purchase-order-id": x.value.custbody_fm_po_id,
|
|
2449
2437
|
"netsuite-id": l.value,
|
|
@@ -2466,7 +2454,7 @@ const ce = Se((W, P) => {
|
|
|
2466
2454
|
}, yn = { class: "text-gray-700 italic" }, xn = { key: 0 }, mn = { class: "text-xs font-semibold text-gray-500 uppercase tracking-wide mb-2" }, gn = { class: "border border-gray-200 rounded-lg overflow-hidden" }, fn = { class: "w-full text-sm" }, bn = ["onClick"], _n = { class: "w-8 pl-2 py-2 text-gray-400" }, hn = { class: "px-3 py-2 font-mono text-xs text-gray-400" }, kn = { class: "px-3 py-2" }, $n = { class: "font-medium" }, wn = {
|
|
2467
2455
|
key: 0,
|
|
2468
2456
|
class: "text-xs text-gray-400 font-mono"
|
|
2469
|
-
}, Sn = { class: "px-3 py-2 text-xs text-gray-500" }, Cn = { class: "px-3 py-2 text-right font-medium" }, In = { class: "px-3 py-2 text-gray-500 font-mono text-xs" }, Tn = { class: "px-3 py-2 text-right text-gray-500 text-xs" }, Dn = { class: "px-3 py-2 text-right text-gray-500 text-xs" }, Ln = { class: "px-3 py-2 text-right text-gray-500 text-xs" }, Fn = { class: "px-3 py-2 text-right text-gray-500 text-xs" },
|
|
2457
|
+
}, Sn = { class: "px-3 py-2 text-xs text-gray-500" }, Cn = { class: "px-3 py-2 text-right font-medium" }, In = { class: "px-3 py-2 text-gray-500 font-mono text-xs" }, Tn = { class: "px-3 py-2 text-right text-gray-500 text-xs" }, Dn = { class: "px-3 py-2 text-right text-gray-500 text-xs" }, Ln = { class: "px-3 py-2 text-right text-gray-500 text-xs" }, Fn = { class: "px-3 py-2 text-right text-gray-500 text-xs" }, Nn = { class: "px-3 py-2 text-center" }, Rn = {
|
|
2470
2458
|
key: 0,
|
|
2471
2459
|
class: "inline-block px-1.5 py-0.5 rounded text-xs bg-gray-200 text-gray-500"
|
|
2472
2460
|
}, On = {
|
|
@@ -2475,13 +2463,13 @@ const ce = Se((W, P) => {
|
|
|
2475
2463
|
}, Vn = {
|
|
2476
2464
|
key: 0,
|
|
2477
2465
|
class: "border-b border-gray-100 bg-gray-50"
|
|
2478
|
-
}, Un = { class: "flex items-center justify-between mb-2" }, Bn = ["onClick"],
|
|
2466
|
+
}, Un = { class: "flex items-center justify-between mb-2" }, Bn = ["onClick"], An = {
|
|
2479
2467
|
key: 0,
|
|
2480
2468
|
class: "w-3.5 h-3.5",
|
|
2481
2469
|
fill: "none",
|
|
2482
2470
|
stroke: "currentColor",
|
|
2483
2471
|
viewBox: "0 0 24 24"
|
|
2484
|
-
},
|
|
2472
|
+
}, Pn = { class: "space-y-1 text-xs font-mono" }, En = { class: "text-gray-400 shrink-0" }, Mn = { class: "text-gray-700 break-all" }, jn = { class: "text-amber-700 font-semibold shrink-0" }, qn = { class: "text-amber-900 break-all" }, Jn = { class: "border border-gray-200 rounded-lg overflow-hidden" }, zn = {
|
|
2485
2473
|
key: 0,
|
|
2486
2474
|
class: "w-3.5 h-3.5",
|
|
2487
2475
|
fill: "none",
|
|
@@ -2510,26 +2498,26 @@ const ce = Se((W, P) => {
|
|
|
2510
2498
|
class: "text-xs text-red-600"
|
|
2511
2499
|
}, ti = { class: "flex gap-2" }, si = 11, ai = /* @__PURE__ */ ne({
|
|
2512
2500
|
__name: "TransferOrderSideSheet",
|
|
2513
|
-
setup(
|
|
2514
|
-
const { FmSideSheet: n, FmButton:
|
|
2515
|
-
function
|
|
2501
|
+
setup(Q, { expose: A }) {
|
|
2502
|
+
const { FmSideSheet: n, FmButton: R, FmCircularProgress: $ } = oe, F = f(!1), C = f(!1), x = f(null), l = f(""), w = f(!1), p = f(!1), c = f(!1), _ = f(null), h = f(!1);
|
|
2503
|
+
function P() {
|
|
2516
2504
|
h.value = !0, _.value = null;
|
|
2517
2505
|
}
|
|
2518
|
-
function
|
|
2506
|
+
function k(O) {
|
|
2519
2507
|
_.value = O, h.value = !1;
|
|
2520
2508
|
}
|
|
2521
2509
|
async function b(O, u) {
|
|
2522
|
-
l.value = O, F.value = !0,
|
|
2510
|
+
l.value = O, F.value = !0, C.value = !0, x.value = null, w.value = !1;
|
|
2523
2511
|
try {
|
|
2524
2512
|
x.value = await u();
|
|
2525
2513
|
} catch (i) {
|
|
2526
2514
|
x.value = { error: (i == null ? void 0 : i.message) || "Failed to fetch raw data" };
|
|
2527
2515
|
} finally {
|
|
2528
|
-
|
|
2516
|
+
C.value = !1;
|
|
2529
2517
|
}
|
|
2530
2518
|
}
|
|
2531
|
-
function
|
|
2532
|
-
F.value = !1, x.value = null, l.value = "",
|
|
2519
|
+
function N() {
|
|
2520
|
+
F.value = !1, x.value = null, l.value = "", w.value = !1, p.value = !1, _.value = null, h.value = !1;
|
|
2533
2521
|
}
|
|
2534
2522
|
function V() {
|
|
2535
2523
|
var O;
|
|
@@ -2538,7 +2526,7 @@ const ce = Se((W, P) => {
|
|
|
2538
2526
|
const J = B(() => {
|
|
2539
2527
|
var O, u;
|
|
2540
2528
|
return ((u = (O = x.value) == null ? void 0 : O.status) == null ? void 0 : u.refName) ?? null;
|
|
2541
|
-
}),
|
|
2529
|
+
}), W = B(() => {
|
|
2542
2530
|
var O;
|
|
2543
2531
|
return ((O = x.value) == null ? void 0 : O.tranId) ?? null;
|
|
2544
2532
|
}), K = B(() => {
|
|
@@ -2566,7 +2554,7 @@ const ce = Se((W, P) => {
|
|
|
2566
2554
|
function I(O) {
|
|
2567
2555
|
E.value.has(O) ? E.value.delete(O) : E.value.add(O), E.value = new Set(E.value);
|
|
2568
2556
|
}
|
|
2569
|
-
function
|
|
2557
|
+
function S(O) {
|
|
2570
2558
|
const u = [], i = [];
|
|
2571
2559
|
for (const [m, U] of Object.entries(O))
|
|
2572
2560
|
m.startsWith("custcol") ? i.push([m, U]) : u.push([m, U]);
|
|
@@ -2577,7 +2565,7 @@ const ce = Se((W, P) => {
|
|
|
2577
2565
|
var i;
|
|
2578
2566
|
(i = window.navigator.clipboard) == null || i.writeText(JSON.stringify(O, null, 2)), Y.value = u, setTimeout(() => Y.value = null, 2e3);
|
|
2579
2567
|
}
|
|
2580
|
-
return
|
|
2568
|
+
return A({ open: b, close: N }), (O, u) => (t(), H(g(n), {
|
|
2581
2569
|
modelValue: F.value,
|
|
2582
2570
|
"onUpdate:modelValue": u[2] || (u[2] = (i) => F.value = i),
|
|
2583
2571
|
header: `Transfer Order · ${l.value}`,
|
|
@@ -2594,12 +2582,12 @@ const ce = Se((W, P) => {
|
|
|
2594
2582
|
"netsuite-ids": l.value ? [l.value] : [],
|
|
2595
2583
|
"record-type": "transferOrder",
|
|
2596
2584
|
label: "Sync Now",
|
|
2597
|
-
onSynced:
|
|
2598
|
-
onError:
|
|
2585
|
+
onSynced: P,
|
|
2586
|
+
onError: k
|
|
2599
2587
|
}, null, 8, ["netsuite-ids"]),
|
|
2600
|
-
T(g(
|
|
2588
|
+
T(g(R), {
|
|
2601
2589
|
variant: "tertiary",
|
|
2602
|
-
onClick:
|
|
2590
|
+
onClick: N
|
|
2603
2591
|
}, {
|
|
2604
2592
|
default: te(() => u[23] || (u[23] = [
|
|
2605
2593
|
re("Close")
|
|
@@ -2613,17 +2601,17 @@ const ce = Se((W, P) => {
|
|
|
2613
2601
|
var i;
|
|
2614
2602
|
return [
|
|
2615
2603
|
e("div", Qr, [
|
|
2616
|
-
|
|
2617
|
-
T(g(
|
|
2604
|
+
C.value ? (t(), a("div", Hr, [
|
|
2605
|
+
T(g($), { size: "md" })
|
|
2618
2606
|
])) : x.value && !x.value.error ? (t(), a(M, { key: 1 }, [
|
|
2619
2607
|
e("div", Kr, [
|
|
2620
2608
|
J.value ? (t(), a("div", Yr, [
|
|
2621
2609
|
u[3] || (u[3] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Status", -1)),
|
|
2622
2610
|
e("div", Gr, o(J.value), 1)
|
|
2623
2611
|
])) : r("", !0),
|
|
2624
|
-
|
|
2612
|
+
W.value ? (t(), a("div", Xr, [
|
|
2625
2613
|
u[4] || (u[4] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Transaction ID", -1)),
|
|
2626
|
-
e("div", Zr, o(
|
|
2614
|
+
e("div", Zr, o(W.value), 1)
|
|
2627
2615
|
])) : r("", !0),
|
|
2628
2616
|
J.value ? (t(), a("div", en, [
|
|
2629
2617
|
u[5] || (u[5] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Status", -1)),
|
|
@@ -2713,8 +2701,8 @@ const ce = Se((W, P) => {
|
|
|
2713
2701
|
e("td", Dn, o(m.quantityCommitted ?? "—"), 1),
|
|
2714
2702
|
e("td", Ln, o(m.quantityFulfilled ?? "—"), 1),
|
|
2715
2703
|
e("td", Fn, o(m.quantityReceived ?? "—"), 1),
|
|
2716
|
-
e("td",
|
|
2717
|
-
m.isClosed ? (t(), a("span",
|
|
2704
|
+
e("td", Nn, [
|
|
2705
|
+
m.isClosed ? (t(), a("span", Rn, "Closed")) : (t(), a("span", On, "—"))
|
|
2718
2706
|
])
|
|
2719
2707
|
], 10, bn),
|
|
2720
2708
|
E.value.has(U) ? (t(), a("tr", Vn, [
|
|
@@ -2731,7 +2719,7 @@ const ce = Se((W, P) => {
|
|
|
2731
2719
|
]),
|
|
2732
2720
|
onClick: de((ee) => Z(m, U), ["stop"])
|
|
2733
2721
|
}, [
|
|
2734
|
-
Y.value === U ? (t(), a("svg",
|
|
2722
|
+
Y.value === U ? (t(), a("svg", An, u[13] || (u[13] = [
|
|
2735
2723
|
e("path", {
|
|
2736
2724
|
"stroke-linecap": "round",
|
|
2737
2725
|
"stroke-linejoin": "round",
|
|
@@ -2742,17 +2730,17 @@ const ce = Se((W, P) => {
|
|
|
2742
2730
|
re(" " + o(Y.value === U ? "Copied!" : "Copy"), 1)
|
|
2743
2731
|
], 10, Bn)
|
|
2744
2732
|
]),
|
|
2745
|
-
e("div",
|
|
2746
|
-
(t(!0), a(M, null, X(
|
|
2733
|
+
e("div", Pn, [
|
|
2734
|
+
(t(!0), a(M, null, X(S(m).normal, ([ee, ie]) => (t(), a("div", {
|
|
2747
2735
|
key: ee,
|
|
2748
2736
|
class: "flex gap-2"
|
|
2749
2737
|
}, [
|
|
2750
2738
|
e("span", En, o(ee) + ":", 1),
|
|
2751
2739
|
e("span", Mn, o(JSON.stringify(ie)), 1)
|
|
2752
2740
|
]))), 128)),
|
|
2753
|
-
|
|
2741
|
+
S(m).custcol.length > 0 ? (t(), a(M, { key: 0 }, [
|
|
2754
2742
|
u[15] || (u[15] = e("div", { class: "mt-2 mb-1 text-xs font-semibold text-amber-600 uppercase tracking-wide" }, " Custom Columns ", -1)),
|
|
2755
|
-
(t(!0), a(M, null, X(
|
|
2743
|
+
(t(!0), a(M, null, X(S(m).custcol, ([ee, ie]) => (t(), a("div", {
|
|
2756
2744
|
key: ee,
|
|
2757
2745
|
class: "flex gap-2 rounded px-1.5 py-0.5 bg-amber-50 border border-amber-200"
|
|
2758
2746
|
}, [
|
|
@@ -2769,17 +2757,17 @@ const ce = Se((W, P) => {
|
|
|
2769
2757
|
])
|
|
2770
2758
|
])
|
|
2771
2759
|
])) : r("", !0),
|
|
2772
|
-
l.value ? (t(), H(
|
|
2760
|
+
l.value ? (t(), H(Ne, {
|
|
2773
2761
|
key: l.value,
|
|
2774
2762
|
"netsuite-id": l.value
|
|
2775
2763
|
}, null, 8, ["netsuite-id"])) : r("", !0),
|
|
2776
2764
|
e("div", Jn, [
|
|
2777
2765
|
e("div", {
|
|
2778
|
-
class: j(["flex items-center gap-1.5 px-3 py-2 bg-gray-50 cursor-pointer select-none hover:bg-gray-100 transition-colors",
|
|
2779
|
-
onClick: u[0] || (u[0] = (m) =>
|
|
2766
|
+
class: j(["flex items-center gap-1.5 px-3 py-2 bg-gray-50 cursor-pointer select-none hover:bg-gray-100 transition-colors", w.value ? "border-b border-gray-200" : ""]),
|
|
2767
|
+
onClick: u[0] || (u[0] = (m) => w.value = !w.value)
|
|
2780
2768
|
}, [
|
|
2781
2769
|
(t(), a("svg", {
|
|
2782
|
-
class: j(["w-3.5 h-3.5 transition-transform text-gray-500",
|
|
2770
|
+
class: j(["w-3.5 h-3.5 transition-transform text-gray-500", w.value ? "rotate-90" : ""]),
|
|
2783
2771
|
fill: "none",
|
|
2784
2772
|
stroke: "currentColor",
|
|
2785
2773
|
viewBox: "0 0 24 24"
|
|
@@ -2792,7 +2780,7 @@ const ce = Se((W, P) => {
|
|
|
2792
2780
|
}, null, -1)
|
|
2793
2781
|
]), 2)),
|
|
2794
2782
|
u[20] || (u[20] = e("span", { class: "text-xs font-medium text-gray-600" }, "(NetSuite) Raw JSON", -1)),
|
|
2795
|
-
|
|
2783
|
+
w.value ? (t(), a("button", {
|
|
2796
2784
|
key: 0,
|
|
2797
2785
|
class: j(["ml-auto text-xs flex items-center gap-1 transition-colors", c.value ? "text-green-600" : "text-gray-400 hover:text-gray-700"]),
|
|
2798
2786
|
onClick: de(V, ["stop"])
|
|
@@ -2815,7 +2803,7 @@ const ce = Se((W, P) => {
|
|
|
2815
2803
|
re(" " + o(c.value ? "Copied!" : "Copy JSON"), 1)
|
|
2816
2804
|
], 2)) : r("", !0)
|
|
2817
2805
|
], 2),
|
|
2818
|
-
|
|
2806
|
+
w.value ? (t(), a("div", Qn, [
|
|
2819
2807
|
T(ye, {
|
|
2820
2808
|
value: x.value,
|
|
2821
2809
|
"max-height": "50vh"
|
|
@@ -2858,48 +2846,48 @@ const ce = Se((W, P) => {
|
|
|
2858
2846
|
}, 8, ["modelValue", "header"]));
|
|
2859
2847
|
}
|
|
2860
2848
|
}), oi = 180;
|
|
2861
|
-
function li(
|
|
2862
|
-
const
|
|
2863
|
-
return
|
|
2849
|
+
function li(Q = 30) {
|
|
2850
|
+
const A = /* @__PURE__ */ new Date();
|
|
2851
|
+
return A.setDate(A.getDate() - Q), { startDate: A, endDate: /* @__PURE__ */ new Date() };
|
|
2864
2852
|
}
|
|
2865
|
-
function
|
|
2866
|
-
const
|
|
2853
|
+
function Re() {
|
|
2854
|
+
const Q = ce(), A = f("listByDate"), n = f(""), R = f("purchaseOrder"), $ = f("id"), F = f([]), C = f(null), x = f(li()), l = f("all"), w = f("in"), p = f(null), c = f(""), _ = f([]), h = f(!1), P = f(null), k = f(/* @__PURE__ */ new Set()), b = B(() => {
|
|
2867
2855
|
const D = _.value.length, d = _.value.filter((L) => L.syncedAt != null).length, y = D - d;
|
|
2868
2856
|
return { total: D, synced: d, unsynced: y };
|
|
2869
|
-
}),
|
|
2857
|
+
}), N = B(() => {
|
|
2870
2858
|
const { startDate: D, endDate: d } = x.value;
|
|
2871
2859
|
return !D || !d ? "Start date and end date are required" : D > d ? "Start date must be before end date" : (d.getTime() - D.getTime()) / (1e3 * 60 * 60 * 24) > oi ? "Date range must not exceed 6 months" : null;
|
|
2872
2860
|
});
|
|
2873
2861
|
function V(D) {
|
|
2874
|
-
const d = new Set(
|
|
2875
|
-
d.has(D) ? d.delete(D) : d.add(D),
|
|
2862
|
+
const d = new Set(k.value);
|
|
2863
|
+
d.has(D) ? d.delete(D) : d.add(D), k.value = d;
|
|
2876
2864
|
}
|
|
2877
2865
|
function J(D) {
|
|
2878
|
-
return
|
|
2866
|
+
return k.value.has(D);
|
|
2879
2867
|
}
|
|
2880
|
-
async function
|
|
2868
|
+
async function W(D, d, y, L) {
|
|
2881
2869
|
if (!y.trim()) {
|
|
2882
|
-
|
|
2870
|
+
P.value = "Query value is required";
|
|
2883
2871
|
return;
|
|
2884
2872
|
}
|
|
2885
2873
|
if (!d) {
|
|
2886
|
-
|
|
2874
|
+
P.value = "Location ID is required";
|
|
2887
2875
|
return;
|
|
2888
2876
|
}
|
|
2889
|
-
h.value = !0,
|
|
2877
|
+
h.value = !0, P.value = null, C.value = null, F.value = [], _.value = [], k.value = /* @__PURE__ */ new Set();
|
|
2890
2878
|
try {
|
|
2891
2879
|
const E = y.split(",").map((I) => I.trim()).filter((I) => I.length > 0);
|
|
2892
2880
|
if (E.length === 0) {
|
|
2893
|
-
|
|
2881
|
+
P.value = "Please enter at least one query value";
|
|
2894
2882
|
return;
|
|
2895
2883
|
}
|
|
2896
|
-
if (L === "id" ? _.value = await
|
|
2884
|
+
if (L === "id" ? _.value = await Q.browseOrdersByFilter(D, d, {
|
|
2897
2885
|
recordIds: E
|
|
2898
|
-
}) : _.value = await
|
|
2886
|
+
}) : _.value = await Q.browseOrdersByFilter(D, d, {
|
|
2899
2887
|
transactionIds: E
|
|
2900
2888
|
}), _.value.length > 0) {
|
|
2901
2889
|
const I = _.value[0];
|
|
2902
|
-
|
|
2890
|
+
C.value = {
|
|
2903
2891
|
netsuiteRecord: I,
|
|
2904
2892
|
additionalInfo: {
|
|
2905
2893
|
id: I.recordId,
|
|
@@ -2909,64 +2897,64 @@ function Ne() {
|
|
|
2909
2897
|
};
|
|
2910
2898
|
}
|
|
2911
2899
|
} catch (E) {
|
|
2912
|
-
|
|
2900
|
+
P.value = (E == null ? void 0 : E.message) || "Failed to look up records";
|
|
2913
2901
|
} finally {
|
|
2914
2902
|
h.value = !1;
|
|
2915
2903
|
}
|
|
2916
2904
|
}
|
|
2917
2905
|
async function K(D, d) {
|
|
2918
|
-
if (
|
|
2919
|
-
|
|
2906
|
+
if (N.value) {
|
|
2907
|
+
P.value = N.value;
|
|
2920
2908
|
return;
|
|
2921
2909
|
}
|
|
2922
|
-
h.value = !0,
|
|
2910
|
+
h.value = !0, P.value = null, _.value = [], k.value = /* @__PURE__ */ new Set();
|
|
2923
2911
|
try {
|
|
2924
|
-
_.value = await
|
|
2912
|
+
_.value = await Q.browseOrdersByDateRange(
|
|
2925
2913
|
D,
|
|
2926
2914
|
d,
|
|
2927
2915
|
ue(x.value.startDate),
|
|
2928
2916
|
ue(x.value.endDate)
|
|
2929
2917
|
);
|
|
2930
2918
|
} catch (y) {
|
|
2931
|
-
|
|
2919
|
+
P.value = (y == null ? void 0 : y.message) || "Failed to fetch records";
|
|
2932
2920
|
} finally {
|
|
2933
2921
|
h.value = !1;
|
|
2934
2922
|
}
|
|
2935
2923
|
}
|
|
2936
2924
|
async function v(D, d) {
|
|
2937
|
-
|
|
2938
|
-
|
|
2925
|
+
A.value === "lookup" ? await W(
|
|
2926
|
+
R.value,
|
|
2939
2927
|
d,
|
|
2940
2928
|
n.value,
|
|
2941
|
-
|
|
2929
|
+
$.value
|
|
2942
2930
|
) : await K(D, d);
|
|
2943
2931
|
}
|
|
2944
2932
|
function s() {
|
|
2945
|
-
_.value = [],
|
|
2933
|
+
_.value = [], C.value = null, F.value = [], P.value = null, h.value = !1, k.value = /* @__PURE__ */ new Set();
|
|
2946
2934
|
}
|
|
2947
2935
|
return {
|
|
2948
2936
|
// State
|
|
2949
|
-
activeUseCase:
|
|
2937
|
+
activeUseCase: A,
|
|
2950
2938
|
netsuiteIdInput: n,
|
|
2951
|
-
lookupRecordType:
|
|
2952
|
-
queryField:
|
|
2953
|
-
lookupResult:
|
|
2939
|
+
lookupRecordType: R,
|
|
2940
|
+
queryField: $,
|
|
2941
|
+
lookupResult: C,
|
|
2954
2942
|
lookupResults: F,
|
|
2955
2943
|
dateRange: x,
|
|
2956
2944
|
syncFilter: l,
|
|
2957
|
-
direction:
|
|
2945
|
+
direction: w,
|
|
2958
2946
|
filterRule: p,
|
|
2959
2947
|
searchValue: c,
|
|
2960
2948
|
records: _,
|
|
2961
2949
|
loading: h,
|
|
2962
|
-
error:
|
|
2963
|
-
expandedRowIds:
|
|
2950
|
+
error: P,
|
|
2951
|
+
expandedRowIds: k,
|
|
2964
2952
|
// Computed
|
|
2965
2953
|
stats: b,
|
|
2966
|
-
dateRangeError:
|
|
2954
|
+
dateRangeError: N,
|
|
2967
2955
|
// Actions
|
|
2968
2956
|
execute: v,
|
|
2969
|
-
executeLookup:
|
|
2957
|
+
executeLookup: W,
|
|
2970
2958
|
executeListByDateRange: K,
|
|
2971
2959
|
toggleRowExpand: V,
|
|
2972
2960
|
isRowExpanded: J,
|
|
@@ -3001,14 +2989,14 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3001
2989
|
nsLocations: {},
|
|
3002
2990
|
currentLocationSubsidiary: {}
|
|
3003
2991
|
},
|
|
3004
|
-
setup(
|
|
3005
|
-
const
|
|
2992
|
+
setup(Q) {
|
|
2993
|
+
const A = Q, n = Re(), R = ce(), $ = f(), F = f(), C = f("all"), x = B(
|
|
3006
2994
|
() => !1
|
|
3007
2995
|
// Direction no longer needed for Transfer Orders
|
|
3008
2996
|
), l = f([]);
|
|
3009
|
-
async function
|
|
2997
|
+
async function w() {
|
|
3010
2998
|
var y;
|
|
3011
|
-
const d = ((y =
|
|
2999
|
+
const d = ((y = A.currentLocationSetting) == null ? void 0 : y.id) || "";
|
|
3012
3000
|
if (!d) {
|
|
3013
3001
|
n.error.value = "Location ID is required";
|
|
3014
3002
|
return;
|
|
@@ -3024,12 +3012,12 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3024
3012
|
}
|
|
3025
3013
|
n.loading.value = !0, n.error.value = null, l.value = [], n.records.value = [];
|
|
3026
3014
|
try {
|
|
3027
|
-
if (
|
|
3015
|
+
if (C.value === "purchaseOrder")
|
|
3028
3016
|
await n.executeListByDateRange("purchaseOrder", d), l.value = n.records.value;
|
|
3029
|
-
else if (
|
|
3017
|
+
else if (C.value === "transferOrder")
|
|
3030
3018
|
await n.executeListByDateRange("transferOrder", d), l.value = n.records.value;
|
|
3031
3019
|
else {
|
|
3032
|
-
const { useNetSuiteExplorerApi: L } = await Promise.resolve().then(() => Me), E = L(), [I,
|
|
3020
|
+
const { useNetSuiteExplorerApi: L } = await Promise.resolve().then(() => Me), E = L(), [I, S] = await Promise.all([
|
|
3033
3021
|
E.browseOrdersByDateRange(
|
|
3034
3022
|
"purchaseOrder",
|
|
3035
3023
|
d,
|
|
@@ -3047,7 +3035,7 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3047
3035
|
const [O, u, i] = Z.split("/");
|
|
3048
3036
|
return new Date(Number(i), Number(u) - 1, Number(O)).getTime();
|
|
3049
3037
|
};
|
|
3050
|
-
l.value = [...I, ...
|
|
3038
|
+
l.value = [...I, ...S].sort((Z, O) => {
|
|
3051
3039
|
const u = Y(Z.transactionDate);
|
|
3052
3040
|
return Y(O.transactionDate) - u;
|
|
3053
3041
|
}), n.records.value = l.value;
|
|
@@ -3076,8 +3064,8 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3076
3064
|
const y = n.searchValue.value.toLowerCase();
|
|
3077
3065
|
d = d.filter(
|
|
3078
3066
|
(L) => {
|
|
3079
|
-
var E, I,
|
|
3080
|
-
return ((E = L.recordId) == null ? void 0 : E.toLowerCase().includes(y)) || ((I = L.transactionId) == null ? void 0 : I.toLowerCase().includes(y)) || ((
|
|
3067
|
+
var E, I, S, Y;
|
|
3068
|
+
return ((E = L.recordId) == null ? void 0 : E.toLowerCase().includes(y)) || ((I = L.transactionId) == null ? void 0 : I.toLowerCase().includes(y)) || ((S = L.sourceLocationName) == null ? void 0 : S.toLowerCase().includes(y)) || ((Y = L.destinationLocationName) == null ? void 0 : Y.toLowerCase().includes(y));
|
|
3081
3069
|
}
|
|
3082
3070
|
);
|
|
3083
3071
|
}
|
|
@@ -3089,15 +3077,15 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3089
3077
|
function _(d) {
|
|
3090
3078
|
return d === "PurchOrd" ? "purchaseOrder" : d === "TrnfrOrd" ? "transferOrder" : "purchaseOrder";
|
|
3091
3079
|
}
|
|
3092
|
-
const h = f(/* @__PURE__ */ new Set()),
|
|
3080
|
+
const h = f(/* @__PURE__ */ new Set()), P = B(
|
|
3093
3081
|
() => p.value.length > 0 && h.value.size === p.value.length
|
|
3094
|
-
),
|
|
3082
|
+
), k = B(
|
|
3095
3083
|
() => h.value.size > 0 && h.value.size < p.value.length
|
|
3096
3084
|
);
|
|
3097
3085
|
function b(d) {
|
|
3098
3086
|
return h.value.has(d);
|
|
3099
3087
|
}
|
|
3100
|
-
function
|
|
3088
|
+
function N(d) {
|
|
3101
3089
|
d ? h.value = new Set(p.value.map((y) => y.recordId)) : h.value = /* @__PURE__ */ new Set();
|
|
3102
3090
|
}
|
|
3103
3091
|
function V(d, y) {
|
|
@@ -3107,28 +3095,28 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3107
3095
|
() => p.value.filter(
|
|
3108
3096
|
(d) => h.value.has(d.recordId) && d.recordType === "PurchOrd"
|
|
3109
3097
|
)
|
|
3110
|
-
),
|
|
3098
|
+
), W = B(
|
|
3111
3099
|
() => p.value.filter(
|
|
3112
3100
|
(d) => h.value.has(d.recordId) && d.recordType === "TrnfrOrd"
|
|
3113
3101
|
)
|
|
3114
3102
|
), K = B(
|
|
3115
3103
|
() => J.value.map((d) => d.recordId)
|
|
3116
3104
|
), v = B(
|
|
3117
|
-
() =>
|
|
3105
|
+
() => W.value.map((d) => d.recordId)
|
|
3118
3106
|
);
|
|
3119
3107
|
async function s(d) {
|
|
3120
3108
|
var E, I;
|
|
3121
3109
|
const y = d.original, L = _(y.recordType);
|
|
3122
|
-
L === "purchaseOrder" ? (E =
|
|
3110
|
+
L === "purchaseOrder" ? (E = $.value) == null || E.open(y.recordId, async () => (await R.readOrderById(L, y.recordId)).netsuiteRecord) : (I = F.value) == null || I.open(y.recordId, async () => (await R.readOrderById(L, y.recordId)).netsuiteRecord);
|
|
3123
3111
|
}
|
|
3124
3112
|
const D = [
|
|
3125
3113
|
{
|
|
3126
3114
|
id: "select",
|
|
3127
3115
|
header: () => q(oe.FmCheckbox, {
|
|
3128
|
-
modelValue:
|
|
3129
|
-
indeterminate:
|
|
3116
|
+
modelValue: P.value,
|
|
3117
|
+
indeterminate: k.value,
|
|
3130
3118
|
value: "all",
|
|
3131
|
-
"onUpdate:modelValue": (d) =>
|
|
3119
|
+
"onUpdate:modelValue": (d) => N(d)
|
|
3132
3120
|
}),
|
|
3133
3121
|
cell: ({ row: d }) => {
|
|
3134
3122
|
const y = d.original.recordId;
|
|
@@ -3189,8 +3177,8 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3189
3177
|
header: () => "Source Location",
|
|
3190
3178
|
accessorFn: (d) => d.sourceLocationName || "N/A",
|
|
3191
3179
|
cell: (d) => {
|
|
3192
|
-
var
|
|
3193
|
-
const y = d.row.original, L = y.sourceLocationName || "N/A", E = y.sourceLocationId || "", I = E && E === ((
|
|
3180
|
+
var S;
|
|
3181
|
+
const y = d.row.original, L = y.sourceLocationName || "N/A", E = y.sourceLocationId || "", I = E && E === ((S = A.currentLocationSetting) == null ? void 0 : S.netSuiteId);
|
|
3194
3182
|
return q("div", { class: "flex flex-col" }, [
|
|
3195
3183
|
q(
|
|
3196
3184
|
"span",
|
|
@@ -3208,8 +3196,8 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3208
3196
|
header: () => "Destination Location",
|
|
3209
3197
|
accessorFn: (d) => d.destinationLocationName || "N/A",
|
|
3210
3198
|
cell: (d) => {
|
|
3211
|
-
var
|
|
3212
|
-
const y = d.row.original, L = y.destinationLocationName || "N/A", E = y.destinationLocationId || "", I = E && E === ((
|
|
3199
|
+
var S;
|
|
3200
|
+
const y = d.row.original, L = y.destinationLocationName || "N/A", E = y.destinationLocationId || "", I = E && E === ((S = A.currentLocationSetting) == null ? void 0 : S.netSuiteId);
|
|
3213
3201
|
return q("div", { class: "flex flex-col" }, [
|
|
3214
3202
|
q(
|
|
3215
3203
|
"span",
|
|
@@ -3273,7 +3261,7 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3273
3261
|
loading: g(n).loading.value,
|
|
3274
3262
|
stats: g(n).stats.value,
|
|
3275
3263
|
"show-order-type-filter": g(n).activeUseCase.value === "listByDate",
|
|
3276
|
-
"order-type-filter":
|
|
3264
|
+
"order-type-filter": C.value,
|
|
3277
3265
|
"show-direction": x.value,
|
|
3278
3266
|
direction: g(n).direction.value,
|
|
3279
3267
|
"onUpdate:activeUseCase": y[0] || (y[0] = (I) => g(n).activeUseCase.value = I),
|
|
@@ -3285,8 +3273,8 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3285
3273
|
"onUpdate:filterRule": y[6] || (y[6] = (I) => g(n).filterRule.value = I),
|
|
3286
3274
|
"onUpdate:searchValue": y[7] || (y[7] = (I) => g(n).searchValue.value = I),
|
|
3287
3275
|
"onUpdate:direction": y[8] || (y[8] = (I) => g(n).direction.value = I),
|
|
3288
|
-
"onUpdate:orderTypeFilter": y[9] || (y[9] = (I) =>
|
|
3289
|
-
onExecute:
|
|
3276
|
+
"onUpdate:orderTypeFilter": y[9] || (y[9] = (I) => C.value = I),
|
|
3277
|
+
onExecute: w
|
|
3290
3278
|
}, null, 8, ["active-use-case", "netsuite-id-input", "lookup-record-type", "query-field", "date-range", "sync-filter", "filter-rule", "search-value", "date-range-error", "loading", "stats", "show-order-type-filter", "order-type-filter", "show-direction", "direction"]),
|
|
3291
3279
|
g(n).error.value ? (t(), a("div", ni, o(g(n).error.value), 1)) : r("", !0),
|
|
3292
3280
|
g(n).loading.value ? (t(), a("div", ii, [
|
|
@@ -3302,7 +3290,7 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3302
3290
|
"record-type": "purchaseOrder",
|
|
3303
3291
|
label: "Sync PO",
|
|
3304
3292
|
compact: !0,
|
|
3305
|
-
onSynced: y[10] || (y[10] = (I) => K.value.forEach((
|
|
3293
|
+
onSynced: y[10] || (y[10] = (I) => K.value.forEach((S) => V(S, !1)))
|
|
3306
3294
|
}, null, 8, ["netsuite-ids"])
|
|
3307
3295
|
]),
|
|
3308
3296
|
e("div", yi, [
|
|
@@ -3315,24 +3303,24 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3315
3303
|
e("span", mi, o(I.transactionId || "—"), 1),
|
|
3316
3304
|
e("button", {
|
|
3317
3305
|
class: "ml-0.5 opacity-50 hover:opacity-100 leading-none",
|
|
3318
|
-
onClick: (
|
|
3306
|
+
onClick: (S) => V(I.recordId, !1)
|
|
3319
3307
|
}, " × ", 8, gi)
|
|
3320
3308
|
]))), 128))
|
|
3321
3309
|
])
|
|
3322
3310
|
])) : r("", !0),
|
|
3323
|
-
|
|
3311
|
+
W.value.length > 0 ? (t(), a("div", fi, [
|
|
3324
3312
|
e("div", bi, [
|
|
3325
|
-
e("span", _i, "Transfer Orders (" + o(
|
|
3313
|
+
e("span", _i, "Transfer Orders (" + o(W.value.length) + ")", 1),
|
|
3326
3314
|
T(fe, {
|
|
3327
3315
|
"netsuite-ids": v.value,
|
|
3328
3316
|
"record-type": "transferOrder",
|
|
3329
3317
|
label: "Sync TO",
|
|
3330
3318
|
compact: !0,
|
|
3331
|
-
onSynced: y[11] || (y[11] = (I) => v.value.forEach((
|
|
3319
|
+
onSynced: y[11] || (y[11] = (I) => v.value.forEach((S) => V(S, !1)))
|
|
3332
3320
|
}, null, 8, ["netsuite-ids"])
|
|
3333
3321
|
]),
|
|
3334
3322
|
e("div", hi, [
|
|
3335
|
-
(t(!0), a(M, null, X(
|
|
3323
|
+
(t(!0), a(M, null, X(W.value, (I) => (t(), a("span", {
|
|
3336
3324
|
key: I.recordId,
|
|
3337
3325
|
class: "inline-flex items-center gap-1.5 px-2 py-0.5 rounded-full text-xs border bg-sky-50 border-sky-200 text-sky-700"
|
|
3338
3326
|
}, [
|
|
@@ -3341,7 +3329,7 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3341
3329
|
e("span", $i, o(I.transactionId || "—"), 1),
|
|
3342
3330
|
e("button", {
|
|
3343
3331
|
class: "ml-0.5 opacity-50 hover:opacity-100 leading-none",
|
|
3344
|
-
onClick: (
|
|
3332
|
+
onClick: (S) => V(I.recordId, !1)
|
|
3345
3333
|
}, " × ", 8, wi)
|
|
3346
3334
|
]))), 128))
|
|
3347
3335
|
])
|
|
@@ -3365,7 +3353,7 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3365
3353
|
], 64)) : !g(n).loading.value && !g(n).error.value ? (t(), a("div", Ci, o(g(n).activeUseCase.value === "lookup" ? 'Enter a query and click "Run" to lookup records' : 'Click "Run" to query NetSuite records'), 1)) : r("", !0),
|
|
3366
3354
|
T(Wr, {
|
|
3367
3355
|
ref_key: "poSideSheetRef",
|
|
3368
|
-
ref:
|
|
3356
|
+
ref: $
|
|
3369
3357
|
}, null, 512),
|
|
3370
3358
|
T(ai, {
|
|
3371
3359
|
ref_key: "toSideSheetRef",
|
|
@@ -3380,10 +3368,10 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3380
3368
|
}, Li = {
|
|
3381
3369
|
key: 0,
|
|
3382
3370
|
class: "flex flex-col gap-3 p-4 bg-blue-50 border border-blue-200 rounded-lg"
|
|
3383
|
-
}, Fi = { class: "flex items-center gap-2" },
|
|
3371
|
+
}, Fi = { class: "flex items-center gap-2" }, Ni = {
|
|
3384
3372
|
key: 0,
|
|
3385
3373
|
class: "flex flex-col gap-0.5"
|
|
3386
|
-
},
|
|
3374
|
+
}, Ri = { class: "font-mono text-sm font-medium" }, Oi = {
|
|
3387
3375
|
key: 1,
|
|
3388
3376
|
class: "text-sm text-gray-400 italic"
|
|
3389
3377
|
}, Vi = {
|
|
@@ -3392,7 +3380,7 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3392
3380
|
}, Ui = { class: "font-mono text-sm font-medium" }, Bi = {
|
|
3393
3381
|
key: 1,
|
|
3394
3382
|
class: "text-sm text-gray-400 italic"
|
|
3395
|
-
},
|
|
3383
|
+
}, Ai = { class: "grid grid-cols-2 gap-4" }, Pi = {
|
|
3396
3384
|
key: 0,
|
|
3397
3385
|
class: "flex flex-col gap-0.5"
|
|
3398
3386
|
}, Ei = { class: "font-mono text-sm font-medium" }, Mi = {
|
|
@@ -3422,7 +3410,7 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3422
3410
|
fill: "none",
|
|
3423
3411
|
stroke: "currentColor",
|
|
3424
3412
|
viewBox: "0 0 24 24"
|
|
3425
|
-
}, Td = { class: "space-y-1 text-xs font-mono" }, Dd = { class: "text-gray-400 shrink-0" }, Ld = { class: "text-gray-700 break-all" }, Fd = { class: "text-amber-700 font-semibold shrink-0" },
|
|
3413
|
+
}, Td = { class: "space-y-1 text-xs font-mono" }, Dd = { class: "text-gray-400 shrink-0" }, Ld = { class: "text-gray-700 break-all" }, Fd = { class: "text-amber-700 font-semibold shrink-0" }, Nd = { class: "text-amber-900 break-all" }, Rd = { class: "border border-gray-200 rounded-lg overflow-hidden" }, Od = { key: 0 }, Vd = {
|
|
3426
3414
|
key: 2,
|
|
3427
3415
|
class: "p-3 bg-red-50 border border-red-200 rounded-lg text-sm text-red-700"
|
|
3428
3416
|
}, Ud = {
|
|
@@ -3431,12 +3419,12 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3431
3419
|
}, Bd = {
|
|
3432
3420
|
key: 0,
|
|
3433
3421
|
class: "p-2"
|
|
3434
|
-
},
|
|
3422
|
+
}, Ad = { class: "flex justify-end gap-2" }, Pd = 8, Ed = /* @__PURE__ */ ne({
|
|
3435
3423
|
__name: "InventoryTransferSideSheet",
|
|
3436
|
-
setup(
|
|
3437
|
-
const { FmSideSheet: n, FmButton:
|
|
3424
|
+
setup(Q, { expose: A }) {
|
|
3425
|
+
const { FmSideSheet: n, FmButton: R, FmCircularProgress: $, FmChip: F } = oe, C = f(!1), x = f(!1), l = f(null), w = f(null), p = f(!1), c = f(!1), _ = f(!1);
|
|
3438
3426
|
async function h(u, i) {
|
|
3439
|
-
|
|
3427
|
+
w.value = u, C.value = !0, x.value = !0, l.value = null, p.value = !1;
|
|
3440
3428
|
try {
|
|
3441
3429
|
l.value = await i();
|
|
3442
3430
|
} catch (m) {
|
|
@@ -3445,26 +3433,26 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3445
3433
|
x.value = !1;
|
|
3446
3434
|
}
|
|
3447
3435
|
}
|
|
3448
|
-
function
|
|
3449
|
-
|
|
3436
|
+
function P() {
|
|
3437
|
+
C.value = !1, l.value = null, w.value = null, p.value = !1, c.value = !1;
|
|
3450
3438
|
}
|
|
3451
|
-
function
|
|
3439
|
+
function k() {
|
|
3452
3440
|
var u;
|
|
3453
3441
|
(u = window.navigator.clipboard) == null || u.writeText(JSON.stringify(l.value, null, 2)), _.value = !0, setTimeout(() => _.value = !1, 2e3);
|
|
3454
3442
|
}
|
|
3455
3443
|
const b = B(() => {
|
|
3456
3444
|
var u, i;
|
|
3457
3445
|
return ((i = (u = l.value) == null ? void 0 : u.status) == null ? void 0 : i.refName) ?? null;
|
|
3458
|
-
}),
|
|
3446
|
+
}), N = B(() => {
|
|
3459
3447
|
var u, i;
|
|
3460
|
-
return ((u = l.value) == null ? void 0 : u.tranId) ?? ((i =
|
|
3448
|
+
return ((u = l.value) == null ? void 0 : u.tranId) ?? ((i = w.value) == null ? void 0 : i.transactionId) ?? null;
|
|
3461
3449
|
}), V = B(() => {
|
|
3462
3450
|
var u;
|
|
3463
3451
|
return ((u = l.value) == null ? void 0 : u.tranDate) ?? null;
|
|
3464
3452
|
}), J = B(() => {
|
|
3465
3453
|
var u;
|
|
3466
3454
|
return ((u = l.value) == null ? void 0 : u.createdDate) ?? null;
|
|
3467
|
-
}),
|
|
3455
|
+
}), W = B(() => {
|
|
3468
3456
|
var u;
|
|
3469
3457
|
return ((u = l.value) == null ? void 0 : u.lastModifiedDate) ?? null;
|
|
3470
3458
|
}), K = B(() => {
|
|
@@ -3473,26 +3461,26 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3473
3461
|
}), v = B(
|
|
3474
3462
|
() => {
|
|
3475
3463
|
var u, i, m;
|
|
3476
|
-
return ((i = (u = l.value) == null ? void 0 : u.location) == null ? void 0 : i.refName) ?? ((m =
|
|
3464
|
+
return ((i = (u = l.value) == null ? void 0 : u.location) == null ? void 0 : i.refName) ?? ((m = w.value) == null ? void 0 : m.sourceLocationName) ?? null;
|
|
3477
3465
|
}
|
|
3478
3466
|
), s = B(
|
|
3479
3467
|
() => {
|
|
3480
3468
|
var u, i, m;
|
|
3481
|
-
return ((i = (u = l.value) == null ? void 0 : u.transferLocation) == null ? void 0 : i.refName) ?? ((m =
|
|
3469
|
+
return ((i = (u = l.value) == null ? void 0 : u.transferLocation) == null ? void 0 : i.refName) ?? ((m = w.value) == null ? void 0 : m.destinationLocationName) ?? null;
|
|
3482
3470
|
}
|
|
3483
3471
|
), D = B(() => {
|
|
3484
3472
|
var u, i;
|
|
3485
3473
|
return l.value ? (u = l.value.inventory) != null && u.items ? l.value.inventory.items : (i = l.value.item) != null && i.items ? l.value.item.items : [] : [];
|
|
3486
3474
|
}), d = B(() => {
|
|
3487
3475
|
var u, i;
|
|
3488
|
-
return (i = (u =
|
|
3476
|
+
return (i = (u = w.value) == null ? void 0 : u.meta) == null ? void 0 : i.itReplicaType;
|
|
3489
3477
|
}), y = B(() => {
|
|
3490
3478
|
var u, i;
|
|
3491
|
-
return (i = (u =
|
|
3479
|
+
return (i = (u = w.value) == null ? void 0 : u.meta) == null ? void 0 : i.fmLinkedId;
|
|
3492
3480
|
}), L = B(
|
|
3493
3481
|
() => {
|
|
3494
3482
|
var u, i;
|
|
3495
|
-
return (i = (u =
|
|
3483
|
+
return (i = (u = w.value) == null ? void 0 : u.meta) == null ? void 0 : i.fmDeliveryOrderId;
|
|
3496
3484
|
}
|
|
3497
3485
|
), E = B(() => {
|
|
3498
3486
|
switch (d.value) {
|
|
@@ -3506,7 +3494,7 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3506
3494
|
return null;
|
|
3507
3495
|
}
|
|
3508
3496
|
}), I = f(/* @__PURE__ */ new Set());
|
|
3509
|
-
function
|
|
3497
|
+
function S(u) {
|
|
3510
3498
|
I.value.has(u) ? I.value.delete(u) : I.value.add(u), I.value = new Set(I.value);
|
|
3511
3499
|
}
|
|
3512
3500
|
function Y(u) {
|
|
@@ -3520,19 +3508,19 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3520
3508
|
var m;
|
|
3521
3509
|
(m = window.navigator.clipboard) == null || m.writeText(JSON.stringify(u, null, 2)), Z.value = i, setTimeout(() => Z.value = null, 2e3);
|
|
3522
3510
|
}
|
|
3523
|
-
return
|
|
3511
|
+
return A({ open: h, close: P }), (u, i) => {
|
|
3524
3512
|
var m;
|
|
3525
3513
|
return t(), H(g(n), {
|
|
3526
|
-
modelValue:
|
|
3527
|
-
"onUpdate:modelValue": i[2] || (i[2] = (U) =>
|
|
3528
|
-
header: `Inventory Transfer · ${((m =
|
|
3514
|
+
modelValue: C.value,
|
|
3515
|
+
"onUpdate:modelValue": i[2] || (i[2] = (U) => C.value = U),
|
|
3516
|
+
header: `Inventory Transfer · ${((m = w.value) == null ? void 0 : m.recordId) ?? "-"}`,
|
|
3529
3517
|
"max-width": 1200
|
|
3530
3518
|
}, {
|
|
3531
3519
|
"side-sheet-footer": te(() => [
|
|
3532
|
-
e("div",
|
|
3533
|
-
T(g(
|
|
3520
|
+
e("div", Ad, [
|
|
3521
|
+
T(g(R), {
|
|
3534
3522
|
variant: "tertiary",
|
|
3535
|
-
onClick:
|
|
3523
|
+
onClick: P
|
|
3536
3524
|
}, {
|
|
3537
3525
|
default: te(() => i[26] || (i[26] = [
|
|
3538
3526
|
re("Close")
|
|
@@ -3546,7 +3534,7 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3546
3534
|
return [
|
|
3547
3535
|
e("div", Ti, [
|
|
3548
3536
|
x.value ? (t(), a("div", Di, [
|
|
3549
|
-
T(g(
|
|
3537
|
+
T(g($), { size: "md" })
|
|
3550
3538
|
])) : x.value ? r("", !0) : (t(), a(M, { key: 1 }, [
|
|
3551
3539
|
d.value ? (t(), a("div", Li, [
|
|
3552
3540
|
e("div", Fi, [
|
|
@@ -3558,9 +3546,9 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3558
3546
|
}, null, 8, ["label"])) : r("", !0)
|
|
3559
3547
|
]),
|
|
3560
3548
|
d.value === "externalTransferOut" ? (t(), a(M, { key: 0 }, [
|
|
3561
|
-
y.value ? (t(), a("div",
|
|
3549
|
+
y.value ? (t(), a("div", Ni, [
|
|
3562
3550
|
i[4] || (i[4] = e("span", { class: "text-xs text-gray-500 uppercase tracking-wide" }, "Adjustment ID", -1)),
|
|
3563
|
-
e("span",
|
|
3551
|
+
e("span", Ri, o(y.value), 1)
|
|
3564
3552
|
])) : (t(), a("div", Oi, "No adjustment linked"))
|
|
3565
3553
|
], 64)) : d.value === "externalTransferIn" ? (t(), a(M, { key: 1 }, [
|
|
3566
3554
|
y.value ? (t(), a("div", Vi, [
|
|
@@ -3568,8 +3556,8 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3568
3556
|
e("span", Ui, o(y.value), 1)
|
|
3569
3557
|
])) : (t(), a("div", Bi, "No purchase order linked"))
|
|
3570
3558
|
], 64)) : d.value === "internalTransfer" ? (t(), a(M, { key: 2 }, [
|
|
3571
|
-
e("div",
|
|
3572
|
-
y.value ? (t(), a("div",
|
|
3559
|
+
e("div", Ai, [
|
|
3560
|
+
y.value ? (t(), a("div", Pi, [
|
|
3573
3561
|
i[6] || (i[6] = e("span", { class: "text-xs text-gray-500 uppercase tracking-wide" }, "Purchase Order ID", -1)),
|
|
3574
3562
|
e("span", Ei, o(y.value), 1)
|
|
3575
3563
|
])) : r("", !0),
|
|
@@ -3580,16 +3568,16 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3580
3568
|
]),
|
|
3581
3569
|
!y.value && !L.value ? (t(), a("div", qi, " No purchase order or delivery order linked ")) : r("", !0)
|
|
3582
3570
|
], 64)) : r("", !0),
|
|
3583
|
-
(U =
|
|
3571
|
+
(U = w.value) != null && U.syncedAt ? (t(), a("div", Ji, [
|
|
3584
3572
|
i[8] || (i[8] = e("span", { class: "text-xs text-gray-500 uppercase tracking-wide" }, "Last Synced", -1)),
|
|
3585
|
-
e("span", zi, o(new Date(
|
|
3573
|
+
e("span", zi, o(new Date(w.value.syncedAt).toLocaleString()), 1)
|
|
3586
3574
|
])) : r("", !0)
|
|
3587
3575
|
])) : r("", !0),
|
|
3588
3576
|
l.value && !l.value.error ? (t(), a(M, { key: 1 }, [
|
|
3589
3577
|
e("div", Wi, [
|
|
3590
|
-
|
|
3578
|
+
N.value ? (t(), a("div", Qi, [
|
|
3591
3579
|
i[9] || (i[9] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Transaction ID", -1)),
|
|
3592
|
-
e("div", Hi, o(
|
|
3580
|
+
e("div", Hi, o(N.value), 1)
|
|
3593
3581
|
])) : r("", !0),
|
|
3594
3582
|
b.value ? (t(), a("div", Ki, [
|
|
3595
3583
|
i[10] || (i[10] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Status", -1)),
|
|
@@ -3603,9 +3591,9 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3603
3591
|
i[12] || (i[12] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Created", -1)),
|
|
3604
3592
|
e("div", ed, o(new Date(J.value).toLocaleString()), 1)
|
|
3605
3593
|
])) : r("", !0),
|
|
3606
|
-
|
|
3594
|
+
W.value ? (t(), a("div", td, [
|
|
3607
3595
|
i[13] || (i[13] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, "Last Modified", -1)),
|
|
3608
|
-
e("div", sd, o(new Date(
|
|
3596
|
+
e("div", sd, o(new Date(W.value).toLocaleString()), 1)
|
|
3609
3597
|
])) : r("", !0),
|
|
3610
3598
|
v.value ? (t(), a("div", ad, [
|
|
3611
3599
|
i[14] || (i[14] = e("div", { class: "text-xs text-gray-500 uppercase tracking-wide mb-0.5" }, " Source Location ", -1)),
|
|
@@ -3644,7 +3632,7 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3644
3632
|
}, [
|
|
3645
3633
|
e("tr", {
|
|
3646
3634
|
class: j(["border-b border-gray-100 cursor-pointer select-none hover:bg-blue-50/40", I.value.has(ee) ? "bg-blue-50/60" : ""]),
|
|
3647
|
-
onClick: (le) =>
|
|
3635
|
+
onClick: (le) => S(ee)
|
|
3648
3636
|
}, [
|
|
3649
3637
|
e("td", yd, [
|
|
3650
3638
|
(t(), a("svg", {
|
|
@@ -3674,7 +3662,7 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3674
3662
|
], 10, pd),
|
|
3675
3663
|
I.value.has(ee) ? (t(), a("tr", wd, [
|
|
3676
3664
|
e("td", {
|
|
3677
|
-
colspan:
|
|
3665
|
+
colspan: Pd,
|
|
3678
3666
|
class: "px-4 py-3"
|
|
3679
3667
|
}, [
|
|
3680
3668
|
e("div", Sd, [
|
|
@@ -3712,7 +3700,7 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3712
3700
|
class: "flex gap-2 rounded px-1.5 py-0.5 bg-amber-50 border border-amber-200"
|
|
3713
3701
|
}, [
|
|
3714
3702
|
e("span", Fd, o(le) + ":", 1),
|
|
3715
|
-
e("span",
|
|
3703
|
+
e("span", Nd, o(JSON.stringify(pe)), 1)
|
|
3716
3704
|
]))), 128))
|
|
3717
3705
|
], 64)) : r("", !0)
|
|
3718
3706
|
])
|
|
@@ -3724,7 +3712,7 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3724
3712
|
])
|
|
3725
3713
|
])
|
|
3726
3714
|
])) : r("", !0),
|
|
3727
|
-
e("div",
|
|
3715
|
+
e("div", Rd, [
|
|
3728
3716
|
e("div", {
|
|
3729
3717
|
class: j(["flex items-center gap-1.5 px-3 py-2 bg-gray-50 cursor-pointer select-none hover:bg-gray-100 transition-colors", p.value ? "border-b border-gray-200" : ""]),
|
|
3730
3718
|
onClick: i[0] || (i[0] = (G) => p.value = !p.value)
|
|
@@ -3746,7 +3734,7 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3746
3734
|
p.value ? (t(), a("button", {
|
|
3747
3735
|
key: 0,
|
|
3748
3736
|
class: j(["ml-auto text-xs flex items-center gap-1 transition-colors", _.value ? "text-green-600" : "text-gray-400 hover:text-gray-700"]),
|
|
3749
|
-
onClick: de(
|
|
3737
|
+
onClick: de(k, ["stop"])
|
|
3750
3738
|
}, o(_.value ? "Copied!" : "Copy JSON"), 3)) : r("", !0)
|
|
3751
3739
|
], 2),
|
|
3752
3740
|
p.value ? (t(), a("div", Od, [
|
|
@@ -3756,7 +3744,7 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3756
3744
|
], 64)) : r("", !0),
|
|
3757
3745
|
(z = l.value) != null && z.error ? (t(), a("div", Vd, o(l.value.error), 1)) : r("", !0)
|
|
3758
3746
|
], 64)),
|
|
3759
|
-
(ae =
|
|
3747
|
+
(ae = w.value) != null && ae.recordId ? (t(), a("div", Ud, [
|
|
3760
3748
|
e("div", {
|
|
3761
3749
|
class: j(["flex items-center gap-1.5 px-3 py-2 bg-gray-50 cursor-pointer select-none hover:bg-gray-100 transition-colors", c.value ? "border-b border-gray-200" : ""]),
|
|
3762
3750
|
onClick: i[1] || (i[1] = (G) => c.value = !c.value)
|
|
@@ -3778,7 +3766,7 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3778
3766
|
], 2),
|
|
3779
3767
|
c.value ? (t(), a("div", Bd, [
|
|
3780
3768
|
T(ve, {
|
|
3781
|
-
"netsuite-id":
|
|
3769
|
+
"netsuite-id": w.value.recordId,
|
|
3782
3770
|
"record-type": "inventoryTransfer"
|
|
3783
3771
|
}, null, 8, ["netsuite-id"])
|
|
3784
3772
|
])) : r("", !0)
|
|
@@ -3812,11 +3800,11 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3812
3800
|
nsLocations: {},
|
|
3813
3801
|
currentLocationSubsidiary: {}
|
|
3814
3802
|
},
|
|
3815
|
-
setup(
|
|
3816
|
-
const
|
|
3817
|
-
async function
|
|
3803
|
+
setup(Q) {
|
|
3804
|
+
const A = Q, n = Re(), R = ce(), $ = f(), F = [{ value: "inventoryTransfer", label: "Inventory Transfer" }];
|
|
3805
|
+
async function C() {
|
|
3818
3806
|
var c;
|
|
3819
|
-
const p = ((c =
|
|
3807
|
+
const p = ((c = A.currentLocationSetting) == null ? void 0 : c.id) || "";
|
|
3820
3808
|
if (!p) {
|
|
3821
3809
|
n.error.value = "Location ID is required";
|
|
3822
3810
|
return;
|
|
@@ -3849,8 +3837,8 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3849
3837
|
const c = n.searchValue.value.toLowerCase();
|
|
3850
3838
|
p = p.filter(
|
|
3851
3839
|
(_) => {
|
|
3852
|
-
var h,
|
|
3853
|
-
return ((h = _.recordId) == null ? void 0 : h.toLowerCase().includes(c)) || ((
|
|
3840
|
+
var h, P, k, b;
|
|
3841
|
+
return ((h = _.recordId) == null ? void 0 : h.toLowerCase().includes(c)) || ((P = _.transactionId) == null ? void 0 : P.toLowerCase().includes(c)) || ((k = _.sourceLocationName) == null ? void 0 : k.toLowerCase().includes(c)) || ((b = _.destinationLocationName) == null ? void 0 : b.toLowerCase().includes(c));
|
|
3854
3842
|
}
|
|
3855
3843
|
);
|
|
3856
3844
|
}
|
|
@@ -3859,9 +3847,9 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3859
3847
|
async function l(p) {
|
|
3860
3848
|
var _;
|
|
3861
3849
|
const c = p.original;
|
|
3862
|
-
(_ =
|
|
3850
|
+
(_ = $.value) == null || _.open(c, async () => (await R.readOrderById("inventoryTransfer", c.recordId)).netsuiteRecord);
|
|
3863
3851
|
}
|
|
3864
|
-
const
|
|
3852
|
+
const w = [
|
|
3865
3853
|
{
|
|
3866
3854
|
id: "id",
|
|
3867
3855
|
header: () => "NS ID",
|
|
@@ -3881,8 +3869,8 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3881
3869
|
accessorFn: (p) => {
|
|
3882
3870
|
const c = p.transactionDate;
|
|
3883
3871
|
if (!c) return 0;
|
|
3884
|
-
const [_, h,
|
|
3885
|
-
return new Date(Number(
|
|
3872
|
+
const [_, h, P] = c.split("/");
|
|
3873
|
+
return new Date(Number(P), Number(h) - 1, Number(_)).getTime();
|
|
3886
3874
|
},
|
|
3887
3875
|
cell: (p) => {
|
|
3888
3876
|
const c = p.getValue();
|
|
@@ -3894,12 +3882,12 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3894
3882
|
header: () => "From Location",
|
|
3895
3883
|
accessorFn: (p) => p.sourceLocationName || "N/A",
|
|
3896
3884
|
cell: (p) => {
|
|
3897
|
-
var
|
|
3898
|
-
const c = p.row.original, _ = c.sourceLocationId || "", h = c.sourceLocationName || "N/A",
|
|
3885
|
+
var k;
|
|
3886
|
+
const c = p.row.original, _ = c.sourceLocationId || "", h = c.sourceLocationName || "N/A", P = _ && _ === ((k = A.currentLocationSetting) == null ? void 0 : k.netSuiteId);
|
|
3899
3887
|
return q("div", { class: "flex flex-col" }, [
|
|
3900
3888
|
q(
|
|
3901
3889
|
"span",
|
|
3902
|
-
{ class:
|
|
3890
|
+
{ class: P ? "text-sm font-semibold text-blue-700" : "text-sm" },
|
|
3903
3891
|
h
|
|
3904
3892
|
),
|
|
3905
3893
|
q("span", { class: "text-xs text-gray-400" }, `ID: ${_ || "N/A"}`)
|
|
@@ -3911,12 +3899,12 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3911
3899
|
header: () => "To Location",
|
|
3912
3900
|
accessorFn: (p) => p.destinationLocationName || "N/A",
|
|
3913
3901
|
cell: (p) => {
|
|
3914
|
-
var
|
|
3915
|
-
const c = p.row.original, _ = c.destinationLocationId || "", h = c.destinationLocationName || "N/A",
|
|
3902
|
+
var k;
|
|
3903
|
+
const c = p.row.original, _ = c.destinationLocationId || "", h = c.destinationLocationName || "N/A", P = _ && _ === ((k = A.currentLocationSetting) == null ? void 0 : k.netSuiteId);
|
|
3916
3904
|
return q("div", { class: "flex flex-col" }, [
|
|
3917
3905
|
q(
|
|
3918
3906
|
"span",
|
|
3919
|
-
{ class:
|
|
3907
|
+
{ class: P ? "text-sm font-semibold text-blue-700" : "text-sm" },
|
|
3920
3908
|
h
|
|
3921
3909
|
),
|
|
3922
3910
|
q("span", { class: "text-xs text-gray-400" }, `ID: ${_ || "N/A"}`)
|
|
@@ -3954,7 +3942,7 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3954
3942
|
}
|
|
3955
3943
|
];
|
|
3956
3944
|
return (p, c) => {
|
|
3957
|
-
const _ = se("FmCircularProgress"), h = se("FmCardSection"),
|
|
3945
|
+
const _ = se("FmCircularProgress"), h = se("FmCardSection"), P = se("FmCard"), k = se("FmTable");
|
|
3958
3946
|
return t(), a("div", Md, [
|
|
3959
3947
|
c[11] || (c[11] = e("div", { class: "text-sm text-gray-600" }, " Query Inventory Transfers from NetSuite. Results are cross-referenced with FeedMe to show sync status. DO-linked records are annotated. ", -1)),
|
|
3960
3948
|
T(Fe, {
|
|
@@ -3981,24 +3969,24 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
3981
3969
|
"onUpdate:filterRule": c[6] || (c[6] = (b) => g(n).filterRule.value = b),
|
|
3982
3970
|
"onUpdate:searchValue": c[7] || (c[7] = (b) => g(n).searchValue.value = b),
|
|
3983
3971
|
"onUpdate:direction": c[8] || (c[8] = (b) => g(n).direction.value = b),
|
|
3984
|
-
onExecute:
|
|
3972
|
+
onExecute: C
|
|
3985
3973
|
}, null, 8, ["active-use-case", "netsuite-id-input", "query-field", "date-range", "sync-filter", "filter-rule", "search-value", "date-range-error", "loading", "stats", "direction"]),
|
|
3986
3974
|
g(n).error.value ? (t(), a("div", jd, o(g(n).error.value), 1)) : r("", !0),
|
|
3987
3975
|
g(n).loading.value ? (t(), a("div", qd, [
|
|
3988
3976
|
T(_, { size: "md" })
|
|
3989
3977
|
])) : g(n).activeUseCase.value === "lookup" && g(n).lookupResult.value ? (t(), a("div", Jd, [
|
|
3990
|
-
T(
|
|
3978
|
+
T(P, null, {
|
|
3991
3979
|
default: te(() => [
|
|
3992
3980
|
T(h, null, {
|
|
3993
3981
|
default: te(() => {
|
|
3994
|
-
var b,
|
|
3982
|
+
var b, N, V;
|
|
3995
3983
|
return [
|
|
3996
3984
|
e("div", zd, [
|
|
3997
3985
|
e("div", Wd, o(((b = g(n).lookupResult.value.additionalInfo) == null ? void 0 : b.tranid) || "Inventory Transfer"), 1),
|
|
3998
3986
|
e("div", Qd, [
|
|
3999
3987
|
e("div", null, [
|
|
4000
3988
|
c[9] || (c[9] = e("span", { class: "text-gray-500" }, "NetSuite ID:", -1)),
|
|
4001
|
-
e("span", Hd, o((
|
|
3989
|
+
e("span", Hd, o((N = g(n).lookupResult.value.additionalInfo) == null ? void 0 : N.id), 1)
|
|
4002
3990
|
]),
|
|
4003
3991
|
e("div", null, [
|
|
4004
3992
|
c[10] || (c[10] = e("span", { class: "text-gray-500" }, "Transaction #:", -1)),
|
|
@@ -4014,8 +4002,8 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
4014
4002
|
_: 1
|
|
4015
4003
|
})
|
|
4016
4004
|
])) : x.value.length > 0 ? (t(), a(M, { key: 3 }, [
|
|
4017
|
-
T(
|
|
4018
|
-
"column-defs":
|
|
4005
|
+
T(k, {
|
|
4006
|
+
"column-defs": w,
|
|
4019
4007
|
"row-data": x.value,
|
|
4020
4008
|
onRowClick: l,
|
|
4021
4009
|
class: "cursor-pointer"
|
|
@@ -4032,7 +4020,7 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
4032
4020
|
], 64)) : !g(n).loading.value && !g(n).error.value ? (t(), a("div", Gd, o(g(n).activeUseCase.value === "lookup" ? 'Enter a query and click "Run" to lookup records' : 'Click "Run" to query NetSuite inventory transfers'), 1)) : r("", !0),
|
|
4033
4021
|
T(Ed, {
|
|
4034
4022
|
ref_key: "itSideSheetRef",
|
|
4035
|
-
ref:
|
|
4023
|
+
ref: $
|
|
4036
4024
|
}, null, 512)
|
|
4037
4025
|
]);
|
|
4038
4026
|
};
|
|
@@ -4048,44 +4036,44 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
4048
4036
|
class: "flex flex-col items-center my-10 gap-5"
|
|
4049
4037
|
}, au = { key: 1 }, ou = /* @__PURE__ */ ne({
|
|
4050
4038
|
__name: "NetSuiteExplorerView",
|
|
4051
|
-
setup(
|
|
4052
|
-
const
|
|
4039
|
+
setup(Q) {
|
|
4040
|
+
const A = Ce(), n = Ie(), R = f(!1), $ = B(() => n.isBusinessLocation), F = B(() => n.isEnabled), C = B(() => n.isCurrentLocationBindedToNetSuite), x = [
|
|
4053
4041
|
{ value: "explorer-items", label: "Items" },
|
|
4054
4042
|
{ value: "explorer-unitTypes", label: "Unit Types" }
|
|
4055
4043
|
], l = [
|
|
4056
4044
|
{ value: "explorer-orders", label: "Orders (PO / TO)" },
|
|
4057
4045
|
{ value: "explorer-inventoryTransfer", label: "Inventory Transfer" }
|
|
4058
|
-
],
|
|
4046
|
+
], w = B(() => $.value ? x : l), p = f(
|
|
4059
4047
|
"explorer-items"
|
|
4060
4048
|
/* ITEMS */
|
|
4061
4049
|
);
|
|
4062
4050
|
Be(() => {
|
|
4063
|
-
const
|
|
4064
|
-
|
|
4051
|
+
const k = w.value[0];
|
|
4052
|
+
k && !w.value.find((b) => b.value === p.value) && (p.value = k.value);
|
|
4065
4053
|
});
|
|
4066
|
-
const c = f([]), _ = B(() => n.currentLocationSubsidiary()), h = B(() => n.currentLocationSetting),
|
|
4054
|
+
const c = f([]), _ = B(() => n.currentLocationSubsidiary()), h = B(() => n.currentLocationSetting), P = B(
|
|
4067
4055
|
() => c.value.filter(
|
|
4068
|
-
(
|
|
4069
|
-
var b,
|
|
4070
|
-
return
|
|
4056
|
+
(k) => {
|
|
4057
|
+
var b, N;
|
|
4058
|
+
return k.subsidiaryId === ((b = _.value) == null ? void 0 : b.id) || k.netsuiteId === ((N = _.value) == null ? void 0 : N.id);
|
|
4071
4059
|
}
|
|
4072
4060
|
)
|
|
4073
4061
|
);
|
|
4074
4062
|
return _e(async () => {
|
|
4075
|
-
if (
|
|
4076
|
-
|
|
4063
|
+
if (A._currentLocation) {
|
|
4064
|
+
R.value = !0;
|
|
4077
4065
|
try {
|
|
4078
4066
|
await n.readSetting();
|
|
4079
4067
|
} finally {
|
|
4080
|
-
|
|
4068
|
+
R.value = !1;
|
|
4081
4069
|
}
|
|
4082
4070
|
}
|
|
4083
|
-
}), (
|
|
4084
|
-
const
|
|
4071
|
+
}), (k, b) => {
|
|
4072
|
+
const N = se("FmCircularProgress"), V = se("FmTabs");
|
|
4085
4073
|
return t(), a("div", Zd, [
|
|
4086
|
-
|
|
4087
|
-
T(
|
|
4088
|
-
])) : F.value ?
|
|
4074
|
+
R.value ? (t(), a("div", eu, [
|
|
4075
|
+
T(N, { size: "lg" })
|
|
4076
|
+
])) : F.value ? !$.value && !C.value ? (t(), a("div", su, b[2] || (b[2] = [
|
|
4089
4077
|
e("div", { class: "font-bold text-lg" }, "NetSuite not configured", -1),
|
|
4090
4078
|
e("div", {
|
|
4091
4079
|
class: "text-xs text-neutral-400 text-center",
|
|
@@ -4095,23 +4083,23 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
4095
4083
|
T(V, {
|
|
4096
4084
|
"model-value": p.value,
|
|
4097
4085
|
"onUpdate:modelValue": b[0] || (b[0] = (J) => p.value = J),
|
|
4098
|
-
items:
|
|
4086
|
+
items: w.value,
|
|
4099
4087
|
key: "netsuite-explorer-tabs"
|
|
4100
4088
|
}, null, 8, ["model-value", "items"]),
|
|
4101
|
-
|
|
4089
|
+
$.value ? (t(), a(M, { key: 0 }, [
|
|
4102
4090
|
p.value === "explorer-items" ? (t(), H(Go, { key: 0 })) : r("", !0),
|
|
4103
4091
|
p.value === "explorer-unitTypes" ? (t(), a("div", au, "Coming Soon")) : r("", !0)
|
|
4104
|
-
], 64)) :
|
|
4092
|
+
], 64)) : C.value ? (t(), a(M, { key: 1 }, [
|
|
4105
4093
|
p.value === "explorer-orders" ? (t(), H(Ii, {
|
|
4106
4094
|
key: 0,
|
|
4107
4095
|
currentLocationSetting: h.value,
|
|
4108
|
-
nsLocations:
|
|
4096
|
+
nsLocations: P.value,
|
|
4109
4097
|
currentLocationSubsidiary: _.value
|
|
4110
4098
|
}, null, 8, ["currentLocationSetting", "nsLocations", "currentLocationSubsidiary"])) : r("", !0),
|
|
4111
4099
|
p.value === "explorer-inventoryTransfer" ? (t(), H(Xd, {
|
|
4112
4100
|
key: 1,
|
|
4113
4101
|
currentLocationSetting: h.value,
|
|
4114
|
-
nsLocations:
|
|
4102
|
+
nsLocations: P.value,
|
|
4115
4103
|
currentLocationSubsidiary: _.value
|
|
4116
4104
|
}, null, 8, ["currentLocationSetting", "nsLocations", "currentLocationSubsidiary"])) : r("", !0)
|
|
4117
4105
|
], 64)) : r("", !0)
|
|
@@ -4133,24 +4121,24 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
4133
4121
|
class: "flex flex-col items-center my-10 gap-5"
|
|
4134
4122
|
}, fu = /* @__PURE__ */ ne({
|
|
4135
4123
|
__name: "IntegrationExplorerView",
|
|
4136
|
-
setup(
|
|
4137
|
-
const
|
|
4124
|
+
setup(Q) {
|
|
4125
|
+
const A = Ce(), { breakpoints: n } = Ae(), R = B(() => n.value.xs || n.value.sm), $ = f(
|
|
4138
4126
|
"netsuite"
|
|
4139
4127
|
/* NETSUITE */
|
|
4140
4128
|
), F = [{ value: "netsuite", label: "NetSuite" }];
|
|
4141
|
-
return (
|
|
4142
|
-
const l = se("FmCircularProgress"),
|
|
4143
|
-
return t(), H(
|
|
4129
|
+
return (C, x) => {
|
|
4130
|
+
const l = se("FmCircularProgress"), w = se("FmSelect");
|
|
4131
|
+
return t(), H(Pe, { title: "Integration Explorer" }, {
|
|
4144
4132
|
default: te(() => [
|
|
4145
4133
|
e("div", {
|
|
4146
|
-
class: j(["flex flex-col gap-8 max-h-full", { "p-0":
|
|
4134
|
+
class: j(["flex flex-col gap-8 max-h-full", { "p-0": R.value, "px-24": !R.value }])
|
|
4147
4135
|
}, [
|
|
4148
|
-
g(
|
|
4136
|
+
g(A)._currentLocation ? (t(), a(M, { key: 1 }, [
|
|
4149
4137
|
e("div", ru, [
|
|
4150
4138
|
x[1] || (x[1] = e("label", { class: "text-sm font-medium text-gray-700" }, "Integration Platform", -1)),
|
|
4151
|
-
T(
|
|
4152
|
-
modelValue:
|
|
4153
|
-
"onUpdate:modelValue": x[0] || (x[0] = (p) =>
|
|
4139
|
+
T(w, {
|
|
4140
|
+
modelValue: $.value,
|
|
4141
|
+
"onUpdate:modelValue": x[0] || (x[0] = (p) => $.value = p),
|
|
4154
4142
|
items: F,
|
|
4155
4143
|
placeholder: "Select integration platform",
|
|
4156
4144
|
style: { "max-width": "300px" }
|
|
@@ -4161,8 +4149,8 @@ const ri = { class: "flex flex-col gap-4" }, ni = {
|
|
|
4161
4149
|
showBusiness: ""
|
|
4162
4150
|
}),
|
|
4163
4151
|
x[3] || (x[3] = e("hr", { class: "my-2" }, null, -1)),
|
|
4164
|
-
|
|
4165
|
-
|
|
4152
|
+
$.value === "netsuite" ? (t(), H(ou, { key: 0 })) : r("", !0),
|
|
4153
|
+
$.value ? r("", !0) : (t(), a("div", nu, x[2] || (x[2] = [
|
|
4166
4154
|
e("div", { class: "font-bold text-lg" }, "Select an Integration Platform", -1),
|
|
4167
4155
|
e("div", {
|
|
4168
4156
|
class: "text-xs text-neutral-400 text-center",
|