@myparcel-dev/pdk-admin 1.13.0
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/CHANGELOG.md +459 -0
- package/dist/__tests__/doComponentTestSetup.d.ts +2 -0
- package/dist/__tests__/doComponentTestTeardown.d.ts +1 -0
- package/dist/__tests__/index.d.ts +3 -0
- package/dist/__tests__/mocks/index.d.ts +14 -0
- package/dist/__tests__/mocks/mockDefaultAccount.d.ts +2 -0
- package/dist/__tests__/mocks/mockDefaultAppConfig.d.ts +2 -0
- package/dist/__tests__/mocks/mockDefaultAppInfo.d.ts +2 -0
- package/dist/__tests__/mocks/mockDefaultCarriers.d.ts +2 -0
- package/dist/__tests__/mocks/mockDefaultConfig.d.ts +2 -0
- package/dist/__tests__/mocks/mockDefaultDynamicContext.d.ts +2 -0
- package/dist/__tests__/mocks/mockDefaultEndpoints.d.ts +2 -0
- package/dist/__tests__/mocks/mockDefaultGlobalContext.d.ts +2 -0
- package/dist/__tests__/mocks/mockDefaultLogger.d.ts +1 -0
- package/dist/__tests__/mocks/mockDefaultPlatform.d.ts +2 -0
- package/dist/__tests__/mocks/mockDefaultPluginSettings.d.ts +2 -0
- package/dist/__tests__/mocks/mockDefaultPrintOptionsView.d.ts +2 -0
- package/dist/__tests__/mocks/mockDefaultShop.d.ts +2 -0
- package/dist/__tests__/mocks/mockDefaultTranslations.d.ts +2 -0
- package/dist/actions/composables/index.d.ts +2 -0
- package/dist/actions/composables/mutations/account/index.d.ts +2 -0
- package/dist/actions/composables/mutations/account/useDeleteAccountMutation.d.ts +3 -0
- package/dist/actions/composables/mutations/account/useUpdateAccountMutation.d.ts +3 -0
- package/dist/actions/composables/mutations/debug/index.d.ts +3 -0
- package/dist/actions/composables/mutations/debug/useDownloadLogsMutation.d.ts +3 -0
- package/dist/actions/composables/mutations/debug/useSwitchToAcceptanceApiMutation.d.ts +3 -0
- package/dist/actions/composables/mutations/debug/useSwitchToProductionApiMutation.d.ts +3 -0
- package/dist/actions/composables/mutations/index.d.ts +7 -0
- package/dist/actions/composables/mutations/orders/index.d.ts +3 -0
- package/dist/actions/composables/mutations/orders/useExportOrdersMutation.d.ts +5 -0
- package/dist/actions/composables/mutations/orders/usePrintOrdersMutation.d.ts +4 -0
- package/dist/actions/composables/mutations/orders/useUpdateOrdersMutation.d.ts +4 -0
- package/dist/actions/composables/mutations/settings/index.d.ts +2 -0
- package/dist/actions/composables/mutations/settings/useUpdatePluginSettingsMutation.d.ts +3 -0
- package/dist/actions/composables/mutations/settings/useUpdateProductSettingsMutation.d.ts +3 -0
- package/dist/actions/composables/mutations/shipments/index.d.ts +4 -0
- package/dist/actions/composables/mutations/shipments/useDeleteShipmentsMutation.d.ts +4 -0
- package/dist/actions/composables/mutations/shipments/useExportReturnMutation.d.ts +4 -0
- package/dist/actions/composables/mutations/shipments/usePrintShipmentsMutation.d.ts +4 -0
- package/dist/actions/composables/mutations/shipments/useUpdateShipmentsMutation.d.ts +4 -0
- package/dist/actions/composables/mutations/usePdkMutation.d.ts +15 -0
- package/dist/actions/composables/mutations/webhooks/index.d.ts +2 -0
- package/dist/actions/composables/mutations/webhooks/useCreateWebhooksMutation.d.ts +1 -0
- package/dist/actions/composables/mutations/webhooks/useDeleteWebhooksMutation.d.ts +3 -0
- package/dist/actions/composables/queries/account/index.d.ts +1 -0
- package/dist/actions/composables/queries/account/useFetchContextQuery.d.ts +3 -0
- package/dist/actions/composables/queries/index.d.ts +6 -0
- package/dist/actions/composables/queries/orders/index.d.ts +1 -0
- package/dist/actions/composables/queries/orders/useFetchOrdersQuery.d.ts +3 -0
- package/dist/actions/composables/queries/products/index.d.ts +1 -0
- package/dist/actions/composables/queries/products/useFetchProductsQuery.d.ts +3 -0
- package/dist/actions/composables/queries/queryKeys.d.ts +2 -0
- package/dist/actions/composables/queries/shipments/index.d.ts +1 -0
- package/dist/actions/composables/queries/shipments/useFetchShipmentsQuery.d.ts +4 -0
- package/dist/actions/composables/queries/webhooks/index.d.ts +1 -0
- package/dist/actions/composables/queries/webhooks/useFetchWebhooksQuery.d.ts +3 -0
- package/dist/actions/defineAction.d.ts +8 -0
- package/dist/actions/definitions/account.d.ts +13 -0
- package/dist/actions/definitions/context.d.ts +6 -0
- package/dist/actions/definitions/debug.d.ts +13 -0
- package/dist/actions/definitions/index.d.ts +8 -0
- package/dist/actions/definitions/modal.d.ts +17 -0
- package/dist/actions/definitions/orders.d.ts +38 -0
- package/dist/actions/definitions/settings.d.ts +2 -0
- package/dist/actions/definitions/shipments.d.ts +15 -0
- package/dist/actions/definitions/webhooks.d.ts +4 -0
- package/dist/actions/executors/createHandlerWithParameters.d.ts +5 -0
- package/dist/actions/executors/createMutationHandler.d.ts +3 -0
- package/dist/actions/executors/createOrdersMutationHandler.d.ts +2 -0
- package/dist/actions/executors/createQueryHandler.d.ts +3 -0
- package/dist/actions/executors/createShipmentsMutationHandler.d.ts +2 -0
- package/dist/actions/executors/doMutate.d.ts +4 -0
- package/dist/actions/executors/executeAction.d.ts +6 -0
- package/dist/actions/executors/executeAfterHandle.d.ts +3 -0
- package/dist/actions/executors/executeBeforeHandle.d.ts +4 -0
- package/dist/actions/executors/executeHandler.d.ts +3 -0
- package/dist/actions/executors/executeNextAction.d.ts +6 -0
- package/dist/actions/executors/index.d.ts +14 -0
- package/dist/actions/executors/resolveOrderParameters.d.ts +3 -0
- package/dist/actions/executors/resolveQuerySuffix.d.ts +3 -0
- package/dist/actions/executors/types.d.ts +19 -0
- package/dist/actions/index.d.ts +6 -0
- package/dist/actions/print/index.d.ts +3 -0
- package/dist/actions/print/openOrPrintPdf.d.ts +3 -0
- package/dist/actions/print/resolvePrintParameters.d.ts +3 -0
- package/dist/actions/print/waitForLabelPrompt.d.ts +3 -0
- package/dist/actions/stopActionHandler.d.ts +2 -0
- package/dist/components/OrderBox/OrderShipmentsTable.vue.d.ts +6 -0
- package/dist/components/OrderBox/OrderShipmentsTableRow.vue.d.ts +21 -0
- package/dist/components/OrderBox/ShipmentOptionsBox.vue.d.ts +2 -0
- package/dist/components/OrderBox/ShipmentTableBox.vue.d.ts +2 -0
- package/dist/components/OrderListItem/OrderModeOrderListItem.vue.d.ts +2 -0
- package/dist/components/OrderListItem/ShipmentLabel.vue.d.ts +15 -0
- package/dist/components/OrderListItem/ShipmentModeOrderListItem.vue.d.ts +2 -0
- package/dist/components/PluginSettings/AccountSettings.vue.d.ts +2 -0
- package/dist/components/PluginSettings/DebugOptions.vue.d.ts +2 -0
- package/dist/components/PluginSettings/EditApiKeyForm.vue.d.ts +7 -0
- package/dist/components/PluginSettings/PluginSettingsForms.vue.d.ts +2 -0
- package/dist/components/PluginSettings/WebhooksStatus.vue.d.ts +2 -0
- package/dist/components/PluginSettings/createUpdateAccountSettingsValidator.d.ts +4 -0
- package/dist/components/common/ActionButton.vue.d.ts +52 -0
- package/dist/components/common/BulkSelectCheckbox.vue.d.ts +22 -0
- package/dist/components/common/CarrierLogo.vue.d.ts +16 -0
- package/dist/components/common/DateRelative.vue.d.ts +16 -0
- package/dist/components/common/DeliveryOptionsDeliveryType.vue.d.ts +16 -0
- package/dist/components/common/DeliveryOptionsExcerpt.vue.d.ts +2 -0
- package/dist/components/common/DeliveryOptionsExcerptCarrierName.vue.d.ts +16 -0
- package/dist/components/common/DeliveryOptionsPackageType.vue.d.ts +16 -0
- package/dist/components/common/DigitalStampWeightRange.vue.d.ts +15 -0
- package/dist/components/common/NotificationContainer.vue.d.ts +19 -0
- package/dist/components/common/PackageType.vue.d.ts +16 -0
- package/dist/components/common/PlainElement.d.ts +2 -0
- package/dist/components/common/ResetButton.vue.d.ts +15 -0
- package/dist/components/common/ReturnsForm.vue.d.ts +14 -0
- package/dist/components/common/ShipmentBarcode.vue.d.ts +15 -0
- package/dist/components/common/ShipmentOptionsForm.vue.d.ts +16 -0
- package/dist/components/common/ShipmentStatus.vue.d.ts +15 -0
- package/dist/components/common/StatusIndicator.vue.d.ts +23 -0
- package/dist/components/common/SubmitButton.vue.d.ts +15 -0
- package/dist/components/common/TabNavigation.vue.d.ts +66 -0
- package/dist/components/common/index.d.ts +20 -0
- package/dist/components/index.d.ts +1 -0
- package/dist/components/modals/PrintOptionsModal.vue.d.ts +2 -0
- package/dist/components/modals/PrintOptionsModalForm.vue.d.ts +2 -0
- package/dist/components/modals/ShipmentOptionsModal.vue.d.ts +2 -0
- package/dist/components/modals/ShipmentOptionsModalForm.vue.d.ts +16 -0
- package/dist/composables/components/index.d.ts +15 -0
- package/dist/composables/components/useBulkSelectCheckbox.d.ts +9 -0
- package/dist/composables/components/useCheckboxGroupContext.d.ts +4 -0
- package/dist/composables/components/useDropOffInputContext.d.ts +13 -0
- package/dist/composables/components/useDropdownButtonContext.d.ts +15 -0
- package/dist/composables/components/useElementContext.d.ts +7 -0
- package/dist/composables/components/useElementOptions.d.ts +6 -0
- package/dist/composables/components/useInputWithOptionsContext.d.ts +10 -0
- package/dist/composables/components/useModalElementContext.d.ts +11 -0
- package/dist/composables/components/useMultiSelectInputContext.d.ts +4 -0
- package/dist/composables/components/useRadioGroupContext.d.ts +10 -0
- package/dist/composables/components/useSelectInputContext.d.ts +4 -0
- package/dist/composables/components/useShippingMethodsInputContext.d.ts +13 -0
- package/dist/composables/components/useTableContext.d.ts +7 -0
- package/dist/composables/components/useToggleInputContext.d.ts +11 -0
- package/dist/composables/components/useTriStateInputContext.d.ts +17 -0
- package/dist/composables/context/index.d.ts +7 -0
- package/dist/composables/context/useAppInfo.d.ts +2 -0
- package/dist/composables/context/useContext.d.ts +3 -0
- package/dist/composables/context/useGlobalContext.d.ts +2 -0
- package/dist/composables/context/useInstanceContext.d.ts +8 -0
- package/dist/composables/context/useModalContext.d.ts +11 -0
- package/dist/composables/context/useModalOrder.d.ts +1 -0
- package/dist/composables/context/usePluginSettings.d.ts +2 -0
- package/dist/composables/formatter/default/createCurrencyFormat.d.ts +1 -0
- package/dist/composables/formatter/default/createLongDateFormat.d.ts +1 -0
- package/dist/composables/formatter/default/createRelativeTimeFormat.d.ts +1 -0
- package/dist/composables/formatter/default/defaultCurrencyFormatters.d.ts +2 -0
- package/dist/composables/formatter/default/defaultDateFormatters.d.ts +4 -0
- package/dist/composables/formatter/default/index.d.ts +6 -0
- package/dist/composables/formatter/default/parseDate.d.ts +1 -0
- package/dist/composables/formatter/formatter.types.d.ts +23 -0
- package/dist/composables/formatter/index.d.ts +4 -0
- package/dist/composables/formatter/useFormatter.d.ts +2 -0
- package/dist/composables/formatter/useLocalizedFormatter.d.ts +2 -0
- package/dist/composables/index.d.ts +17 -0
- package/dist/composables/language/index.d.ts +4 -0
- package/dist/composables/language/resolveTranslatedString.d.ts +3 -0
- package/dist/composables/language/resolveTranslationKey.d.ts +2 -0
- package/dist/composables/language/types.d.ts +1 -0
- package/dist/composables/language/useLanguage.d.ts +23 -0
- package/dist/composables/orders/index.d.ts +3 -0
- package/dist/composables/orders/useOrder.d.ts +3 -0
- package/dist/composables/orders/useOrderData.d.ts +9 -0
- package/dist/composables/orders/useOrdersData.d.ts +3 -0
- package/dist/composables/products/index.d.ts +1 -0
- package/dist/composables/products/useProductData.d.ts +8 -0
- package/dist/composables/shipments/index.d.ts +3 -0
- package/dist/composables/shipments/useShipment.d.ts +3 -0
- package/dist/composables/shipments/useShipmentData.d.ts +12 -0
- package/dist/composables/shipments/useShipmentsData.d.ts +2 -0
- package/dist/composables/useAdminConfig.d.ts +2 -0
- package/dist/composables/useAdminInstance.d.ts +2 -0
- package/dist/composables/useDigitalStampRanges.d.ts +9 -0
- package/dist/composables/useGlobalPdkAdmin.d.ts +2 -0
- package/dist/composables/useLoadMore.d.ts +14 -0
- package/dist/composables/useLoading.d.ts +10 -0
- package/dist/composables/useLogger.d.ts +2 -0
- package/dist/composables/useStoreContextQuery.d.ts +3 -0
- package/dist/composables/useStoreQuery.d.ts +4 -0
- package/dist/composables/useWeekdays.d.ts +9 -0
- package/dist/data/components.d.ts +195 -0
- package/dist/data/constants.d.ts +63 -0
- package/dist/data/endpoints.d.ts +5 -0
- package/dist/data/index.d.ts +4 -0
- package/dist/data/view.d.ts +9 -0
- package/dist/deprecated.d.ts +6 -0
- package/dist/forms/createReturnsForm.d.ts +1 -0
- package/dist/forms/form-builder/builders/buildAfterUpdate.d.ts +3 -0
- package/dist/forms/form-builder/builders/buildFormStateWatcher.d.ts +3 -0
- package/dist/forms/form-builder/builders/index.d.ts +2 -0
- package/dist/forms/form-builder/conditions/index.d.ts +3 -0
- package/dist/forms/form-builder/conditions/validateIfCondition.d.ts +2 -0
- package/dist/forms/form-builder/conditions/validateIfConditions.d.ts +2 -0
- package/dist/forms/form-builder/conditions/validateIsTruthy.d.ts +2 -0
- package/dist/forms/form-builder/index.d.ts +5 -0
- package/dist/forms/form-builder/operations/executeCustomOperationHandlers.d.ts +2 -0
- package/dist/forms/form-builder/operations/executeOperation.d.ts +2 -0
- package/dist/forms/form-builder/operations/executeOperations.d.ts +2 -0
- package/dist/forms/form-builder/operations/executeSetPropOperation.d.ts +2 -0
- package/dist/forms/form-builder/operations/executeSetValueOperation.d.ts +2 -0
- package/dist/forms/form-builder/operations/index.d.ts +5 -0
- package/dist/forms/form-builder/operations/parseBuilders.d.ts +3 -0
- package/dist/forms/form-builder/types/FormCondition.types.d.ts +36 -0
- package/dist/forms/form-builder/types/FormOperations.types.d.ts +16 -0
- package/dist/forms/form-builder/types/SubOperationBuilder.types.d.ts +13 -0
- package/dist/forms/form-builder/types/common.types.d.ts +21 -0
- package/dist/forms/form-builder/types/index.d.ts +4 -0
- package/dist/forms/form-builder/utils/createPropSetter.d.ts +4 -0
- package/dist/forms/form-builder/utils/createValueGetter.d.ts +4 -0
- package/dist/forms/form-builder/utils/createValueSetter.d.ts +4 -0
- package/dist/forms/form-builder/utils/index.d.ts +4 -0
- package/dist/forms/formKeys.d.ts +10 -0
- package/dist/forms/helpers/addBulkEditNotification.d.ts +1 -0
- package/dist/forms/helpers/createDefaultOption.d.ts +3 -0
- package/dist/forms/helpers/createHasShipmentOptionWatcher.d.ts +3 -0
- package/dist/forms/helpers/createLabel.d.ts +1 -0
- package/dist/forms/helpers/defineFormField.d.ts +2 -0
- package/dist/forms/helpers/getCarrier.d.ts +3 -0
- package/dist/forms/helpers/getDeliveryTypes.d.ts +3 -0
- package/dist/forms/helpers/getFieldLabel.d.ts +2 -0
- package/dist/forms/helpers/getFormCarrierName.d.ts +2 -0
- package/dist/forms/helpers/getInsuranceOptions.d.ts +3 -0
- package/dist/forms/helpers/getPackageTypes.d.ts +3 -0
- package/dist/forms/helpers/hasPostNlAgeCheck.d.ts +2 -0
- package/dist/forms/helpers/hasShipmentOption.d.ts +3 -0
- package/dist/forms/helpers/index.d.ts +20 -0
- package/dist/forms/helpers/isPackageTypePackage.d.ts +2 -0
- package/dist/forms/helpers/isPackageTypePackageOrSmall.d.ts +2 -0
- package/dist/forms/helpers/isPackageTypeSmallPackage.d.ts +2 -0
- package/dist/forms/helpers/resolveFormComponent.d.ts +3 -0
- package/dist/forms/helpers/setFieldProp.d.ts +8 -0
- package/dist/forms/helpers/setPostNlAgeCheckSubtext.d.ts +2 -0
- package/dist/forms/helpers/triStateFieldIsEnabled.d.ts +2 -0
- package/dist/forms/helpers/updateFieldsDefaults.d.ts +6 -0
- package/dist/forms/index.d.ts +6 -0
- package/dist/forms/pluginSettings/createFormTab.d.ts +3 -0
- package/dist/forms/pluginSettings/createPluginSettingsForm.d.ts +4 -0
- package/dist/forms/pluginSettings/createPluginSettingsTabs.d.ts +4 -0
- package/dist/forms/pluginSettings/createPluginSettingsTabsComponent.d.ts +4 -0
- package/dist/forms/pluginSettings/generateFormFields.d.ts +8 -0
- package/dist/forms/pluginSettings/index.d.ts +6 -0
- package/dist/forms/pluginSettings/types.d.ts +13 -0
- package/dist/forms/shipmentOptions/createShipmentOptionsForm.d.ts +4 -0
- package/dist/forms/shipmentOptions/field.d.ts +34 -0
- package/dist/forms/shipmentOptions/fields/createAgeCheckField.d.ts +3 -0
- package/dist/forms/shipmentOptions/fields/createCarrierField.d.ts +4 -0
- package/dist/forms/shipmentOptions/fields/createDeliveryTypeField.d.ts +3 -0
- package/dist/forms/shipmentOptions/fields/createDigitalStampRangeField.d.ts +3 -0
- package/dist/forms/shipmentOptions/fields/createDirectReturnField.d.ts +3 -0
- package/dist/forms/shipmentOptions/fields/createHideSenderField.d.ts +3 -0
- package/dist/forms/shipmentOptions/fields/createInsuranceField.d.ts +3 -0
- package/dist/forms/shipmentOptions/fields/createLabelAmountField.d.ts +3 -0
- package/dist/forms/shipmentOptions/fields/createLargeFormatField.d.ts +3 -0
- package/dist/forms/shipmentOptions/fields/createOnlyRecipientField.d.ts +3 -0
- package/dist/forms/shipmentOptions/fields/createPackageTypeField.d.ts +3 -0
- package/dist/forms/shipmentOptions/fields/createReceiptCodeField.d.ts +3 -0
- package/dist/forms/shipmentOptions/fields/createRef.d.ts +3 -0
- package/dist/forms/shipmentOptions/fields/createSameDayDeliveryField.d.ts +3 -0
- package/dist/forms/shipmentOptions/fields/createShipmentOptionField.d.ts +4 -0
- package/dist/forms/shipmentOptions/fields/createSignatureField.d.ts +3 -0
- package/dist/forms/shipmentOptions/fields/index.d.ts +14 -0
- package/dist/forms/shipmentOptions/index.d.ts +4 -0
- package/dist/forms/shipmentOptions/types.d.ts +2 -0
- package/dist/index.d.ts +19 -0
- package/dist/pdk/PdkAdmin.d.ts +18 -0
- package/dist/pdk/boot.d.ts +3 -0
- package/dist/pdk/createAdminConfig.d.ts +2 -0
- package/dist/pdk/createPdkAdmin.d.ts +8 -0
- package/dist/pdk/createPdkAdminPlugin.d.ts +3 -0
- package/dist/pdk/fillShipmentsQueryData.d.ts +4 -0
- package/dist/pdk/index.d.ts +11 -0
- package/dist/pdk/instance/createInstanceContext.d.ts +5 -0
- package/dist/pdk/instance/createQueryClient.d.ts +2 -0
- package/dist/pdk/instance/index.d.ts +3 -0
- package/dist/pdk/instance/plugins/createContextPlugin.d.ts +2 -0
- package/dist/pdk/instance/plugins/createLoggerPlugin.d.ts +2 -0
- package/dist/pdk/instance/plugins/createRegisterComponentsPlugin.d.ts +5 -0
- package/dist/pdk/instance/plugins/createStorePlugin.d.ts +2 -0
- package/dist/pdk/instance/plugins/createVueQueryPlugin.d.ts +5 -0
- package/dist/pdk/instance/plugins/index.d.ts +6 -0
- package/dist/pdk/instance/plugins/plugins.types.d.ts +3 -0
- package/dist/pdk/renderMap.d.ts +3 -0
- package/dist/pdk/sendBootEvent.d.ts +3 -0
- package/dist/pdk/setupAdminApp.d.ts +3 -0
- package/dist/pdk/testIdDirective.d.ts +5 -0
- package/dist/sdk/PdkFetchClient.d.ts +11 -0
- package/dist/sdk/composables/api/index.d.ts +1 -0
- package/dist/sdk/composables/api/useFetchCarrier.d.ts +2 -0
- package/dist/sdk/composables/index.d.ts +3 -0
- package/dist/sdk/composables/useMyParcelApi.d.ts +5 -0
- package/dist/sdk/composables/usePdkAdminApi.d.ts +6 -0
- package/dist/sdk/endpoints/abstractPdkEndpoint.d.ts +7 -0
- package/dist/sdk/endpoints/index.d.ts +1 -0
- package/dist/sdk/index.d.ts +3 -0
- package/dist/services/actions/createAction.d.ts +4 -0
- package/dist/services/actions/createActionContext.d.ts +3 -0
- package/dist/services/actions/downloadFile.d.ts +4 -0
- package/dist/services/actions/getActionIdentifier.d.ts +2 -0
- package/dist/services/actions/index.d.ts +4 -0
- package/dist/services/addErrorToNotifications.d.ts +2 -0
- package/dist/services/context/getElementContext.d.ts +2 -0
- package/dist/services/context/index.d.ts +1 -0
- package/dist/services/createNotification.d.ts +5 -0
- package/dist/services/index.d.ts +9 -0
- package/dist/services/instantiateAction.d.ts +2 -0
- package/dist/services/instantiateActions.d.ts +8 -0
- package/dist/services/logger.d.ts +19 -0
- package/dist/services/mutations/getCallbackForMutationMode.d.ts +4 -0
- package/dist/services/mutations/getModalMutationOptions.d.ts +2 -0
- package/dist/services/mutations/index.d.ts +3 -0
- package/dist/services/mutations/mutationMode.d.ts +4 -0
- package/dist/services/print/index.d.ts +1 -0
- package/dist/services/print/openPdfInNewWindow.d.ts +4 -0
- package/dist/stores/createQueryCacheKey.d.ts +3 -0
- package/dist/stores/index.d.ts +6 -0
- package/dist/stores/types.d.ts +13 -0
- package/dist/stores/useActionStore.d.ts +25 -0
- package/dist/stores/useModalStore.d.ts +16 -0
- package/dist/stores/useNotificationStore.d.ts +60 -0
- package/dist/stores/useQueryStore.d.ts +77 -0
- package/dist/symbols.d.ts +5 -0
- package/dist/testing.d.ts +1 -0
- package/dist/types/actions/actions.types.d.ts +31 -0
- package/dist/types/actions/endpoints.types.d.ts +9 -0
- package/dist/types/actions/index.d.ts +4 -0
- package/dist/types/actions/parameters.types.d.ts +55 -0
- package/dist/types/actions/response.types.d.ts +7 -0
- package/dist/types/actions.types.d.ts +45 -0
- package/dist/types/admin.types.d.ts +26 -0
- package/dist/types/common.types.d.ts +53 -0
- package/dist/types/components-form.types.d.ts +107 -0
- package/dist/types/components.types.d.ts +273 -0
- package/dist/types/configuration.types.d.ts +95 -0
- package/dist/types/context.types.d.ts +20 -0
- package/dist/types/endpoints.types.d.ts +7 -0
- package/dist/types/form.types.d.ts +39 -0
- package/dist/types/index.d.ts +12 -0
- package/dist/types/language.types.d.ts +9 -0
- package/dist/types/sdk.types.d.ts +155 -0
- package/dist/utils/booleanToTriState.d.ts +2 -0
- package/dist/utils/convertDotNotationToObject.d.ts +1 -0
- package/dist/utils/createAssetUrl.d.ts +1 -0
- package/dist/utils/createClasses.d.ts +8 -0
- package/dist/utils/createObjectWithKeys.d.ts +3 -0
- package/dist/utils/decodeHtmlEntities.d.ts +7 -0
- package/dist/utils/downloadBlob.d.ts +1 -0
- package/dist/utils/downloadFileFromUrl.d.ts +1 -0
- package/dist/utils/encodeArrayParameter.d.ts +2 -0
- package/dist/utils/extendAdminInstance.d.ts +2 -0
- package/dist/utils/fakeLinkClick.d.ts +4 -0
- package/dist/utils/forms/createFormElement.d.ts +3 -0
- package/dist/utils/forms/createShipmentFormName.d.ts +1 -0
- package/dist/utils/forms/formToBody.d.ts +2 -0
- package/dist/utils/forms/generateFieldId.d.ts +3 -0
- package/dist/utils/forms/index.d.ts +4 -0
- package/dist/utils/generateLabelFilename.d.ts +3 -0
- package/dist/utils/getOrderId.d.ts +3 -0
- package/dist/utils/getOrderShipmentIds.d.ts +2 -0
- package/dist/utils/index.d.ts +22 -0
- package/dist/utils/openUrlInNewTab.d.ts +1 -0
- package/dist/utils/prefixComponent.d.ts +3 -0
- package/dist/utils/query/index.d.ts +3 -0
- package/dist/utils/query/setQueryData.d.ts +2 -0
- package/dist/utils/query/setQueryOrder.d.ts +10 -0
- package/dist/utils/query/setQueryShipment.d.ts +3 -0
- package/dist/utils/resolveCarrier.d.ts +1 -0
- package/dist/utils/translations/getDeliveryTypeTranslation.d.ts +2 -0
- package/dist/utils/translations/getDynamicTranslation.d.ts +1 -0
- package/dist/utils/translations/getPackageTypeTranslation.d.ts +2 -0
- package/dist/utils/translations/index.d.ts +4 -0
- package/dist/utils/translations/translateSelectOption.d.ts +3 -0
- package/dist/utils/triStateToBoolean.d.ts +2 -0
- package/dist/utils/unprefixComponent.d.ts +3 -0
- package/dist/utils/validateId.d.ts +2 -0
- package/dist/views/ChildProductSettings.vue.d.ts +2 -0
- package/dist/views/Modals.vue.d.ts +2 -0
- package/dist/views/Notifications.vue.d.ts +2 -0
- package/dist/views/OrderBox.vue.d.ts +2 -0
- package/dist/views/OrderListItem.vue.d.ts +2 -0
- package/dist/views/PluginSettings.vue.d.ts +2 -0
- package/dist/views/ProductSettings.vue.d.ts +35 -0
- package/dist/views/integrated/OrderBoxView.vue.d.ts +12 -0
- package/dist/views/integrated/OrderListItemView.vue.d.ts +12 -0
- package/dist/views/integrated/index.d.ts +7 -0
- package/package.json +70 -0
- package/src/__tests__/__snapshots__/exports.spec.ts.snap +195 -0
- package/src/__tests__/doComponentTestSetup.ts +54 -0
- package/src/__tests__/doComponentTestTeardown.ts +6 -0
- package/src/__tests__/exports.spec.ts +13 -0
- package/src/__tests__/getElementContext.spec.ts +18 -0
- package/src/__tests__/index.ts +3 -0
- package/src/__tests__/mocks/index.ts +14 -0
- package/src/__tests__/mocks/mockDefaultAccount.ts +18 -0
- package/src/__tests__/mocks/mockDefaultAppConfig.ts +21 -0
- package/src/__tests__/mocks/mockDefaultAppInfo.ts +12 -0
- package/src/__tests__/mocks/mockDefaultCarriers.ts +4 -0
- package/src/__tests__/mocks/mockDefaultConfig.ts +11 -0
- package/src/__tests__/mocks/mockDefaultDynamicContext.ts +17 -0
- package/src/__tests__/mocks/mockDefaultEndpoints.ts +19 -0
- package/src/__tests__/mocks/mockDefaultGlobalContext.ts +21 -0
- package/src/__tests__/mocks/mockDefaultLogger.ts +4 -0
- package/src/__tests__/mocks/mockDefaultPlatform.ts +14 -0
- package/src/__tests__/mocks/mockDefaultPluginSettings.ts +15 -0
- package/src/__tests__/mocks/mockDefaultPrintOptionsView.ts +13 -0
- package/src/__tests__/mocks/mockDefaultShop.ts +20 -0
- package/src/__tests__/mocks/mockDefaultTranslations.ts +4 -0
- package/src/__tests__/render.spec.ts +53 -0
- package/src/__tests__/utils/mockLinkElement.ts +20 -0
- package/src/actions/composables/index.ts +2 -0
- package/src/actions/composables/mutations/account/index.ts +2 -0
- package/src/actions/composables/mutations/account/useDeleteAccountMutation.ts +30 -0
- package/src/actions/composables/mutations/account/useUpdateAccountMutation.ts +60 -0
- package/src/actions/composables/mutations/debug/index.ts +3 -0
- package/src/actions/composables/mutations/debug/useDownloadLogsMutation.ts +8 -0
- package/src/actions/composables/mutations/debug/useSwitchToAcceptanceApiMutation.ts +10 -0
- package/src/actions/composables/mutations/debug/useSwitchToProductionApiMutation.ts +10 -0
- package/src/actions/composables/mutations/index.ts +7 -0
- package/src/actions/composables/mutations/orders/index.ts +3 -0
- package/src/actions/composables/mutations/orders/useExportOrdersMutation.ts +51 -0
- package/src/actions/composables/mutations/orders/usePrintOrdersMutation.ts +23 -0
- package/src/actions/composables/mutations/orders/useUpdateOrdersMutation.ts +36 -0
- package/src/actions/composables/mutations/settings/index.ts +2 -0
- package/src/actions/composables/mutations/settings/useUpdatePluginSettingsMutation.ts +16 -0
- package/src/actions/composables/mutations/settings/useUpdateProductSettingsMutation.ts +22 -0
- package/src/actions/composables/mutations/shipments/index.ts +4 -0
- package/src/actions/composables/mutations/shipments/useDeleteShipmentsMutation.ts +65 -0
- package/src/actions/composables/mutations/shipments/useExportReturnMutation.ts +36 -0
- package/src/actions/composables/mutations/shipments/usePrintShipmentsMutation.ts +39 -0
- package/src/actions/composables/mutations/shipments/useUpdateShipmentsMutation.ts +36 -0
- package/src/actions/composables/mutations/usePdkMutation.ts +41 -0
- package/src/actions/composables/mutations/webhooks/index.ts +2 -0
- package/src/actions/composables/mutations/webhooks/useCreateWebhooksMutation.ts +20 -0
- package/src/actions/composables/mutations/webhooks/useDeleteWebhooksMutation.ts +20 -0
- package/src/actions/composables/queries/account/index.ts +1 -0
- package/src/actions/composables/queries/account/useFetchContextQuery.ts +43 -0
- package/src/actions/composables/queries/index.ts +6 -0
- package/src/actions/composables/queries/orders/index.ts +1 -0
- package/src/actions/composables/queries/orders/useFetchOrdersQuery.ts +35 -0
- package/src/actions/composables/queries/products/index.ts +1 -0
- package/src/actions/composables/queries/products/useFetchProductsQuery.ts +20 -0
- package/src/actions/composables/queries/queryKeys.ts +3 -0
- package/src/actions/composables/queries/shipments/index.ts +1 -0
- package/src/actions/composables/queries/shipments/useFetchShipmentsQuery.ts +44 -0
- package/src/actions/composables/queries/webhooks/index.ts +1 -0
- package/src/actions/composables/queries/webhooks/useFetchWebhooksQuery.ts +24 -0
- package/src/actions/defineAction.ts +10 -0
- package/src/actions/definitions/account.ts +39 -0
- package/src/actions/definitions/context.ts +17 -0
- package/src/actions/definitions/debug.ts +39 -0
- package/src/actions/definitions/index.ts +8 -0
- package/src/actions/definitions/modal.ts +32 -0
- package/src/actions/definitions/orders.ts +128 -0
- package/src/actions/definitions/settings.ts +11 -0
- package/src/actions/definitions/shipments.ts +61 -0
- package/src/actions/definitions/webhooks.ts +25 -0
- package/src/actions/executors/createHandlerWithParameters.ts +29 -0
- package/src/actions/executors/createMutationHandler.ts +10 -0
- package/src/actions/executors/createOrdersMutationHandler.ts +12 -0
- package/src/actions/executors/createQueryHandler.ts +19 -0
- package/src/actions/executors/createShipmentsMutationHandler.ts +12 -0
- package/src/actions/executors/doMutate.ts +16 -0
- package/src/actions/executors/executeAction.ts +35 -0
- package/src/actions/executors/executeAfterHandle.ts +23 -0
- package/src/actions/executors/executeBeforeHandle.ts +29 -0
- package/src/actions/executors/executeHandler.ts +34 -0
- package/src/actions/executors/executeNextAction.ts +34 -0
- package/src/actions/executors/index.ts +14 -0
- package/src/actions/executors/resolveOrderParameters.ts +19 -0
- package/src/actions/executors/resolveQuerySuffix.ts +10 -0
- package/src/actions/executors/types.ts +45 -0
- package/src/actions/index.ts +6 -0
- package/src/actions/print/index.ts +3 -0
- package/src/actions/print/openOrPrintPdf.ts +16 -0
- package/src/actions/print/resolvePrintParameters.ts +24 -0
- package/src/actions/print/waitForLabelPrompt.ts +39 -0
- package/src/actions/stopActionHandler.ts +1 -0
- package/src/components/OrderBox/OrderShipmentsTable.vue +53 -0
- package/src/components/OrderBox/OrderShipmentsTableRow.vue +81 -0
- package/src/components/OrderBox/ShipmentOptionsBox.vue +74 -0
- package/src/components/OrderBox/ShipmentTableBox.vue +51 -0
- package/src/components/OrderListItem/OrderModeOrderListItem.vue +45 -0
- package/src/components/OrderListItem/ShipmentLabel.vue +44 -0
- package/src/components/OrderListItem/ShipmentModeOrderListItem.vue +67 -0
- package/src/components/PluginSettings/AccountSettings.vue +81 -0
- package/src/components/PluginSettings/DebugOptions.vue +89 -0
- package/src/components/PluginSettings/EditApiKeyForm.vue +89 -0
- package/src/components/PluginSettings/PluginSettingsForms.vue +56 -0
- package/src/components/PluginSettings/WebhooksStatus.vue +73 -0
- package/src/components/PluginSettings/createUpdateAccountSettingsValidator.ts +21 -0
- package/src/components/common/ActionButton.vue +53 -0
- package/src/components/common/BulkSelectCheckbox.vue +46 -0
- package/src/components/common/CarrierLogo.vue +14 -0
- package/src/components/common/DateRelative.vue +20 -0
- package/src/components/common/DeliveryOptionsDeliveryType.vue +23 -0
- package/src/components/common/DeliveryOptionsExcerpt.vue +39 -0
- package/src/components/common/DeliveryOptionsExcerptCarrierName.vue +21 -0
- package/src/components/common/DeliveryOptionsPackageType.vue +30 -0
- package/src/components/common/DigitalStampWeightRange.vue +14 -0
- package/src/components/common/NotificationContainer.vue +35 -0
- package/src/components/common/PackageType.vue +16 -0
- package/src/components/common/PlainElement.ts +8 -0
- package/src/components/common/ResetButton.vue +26 -0
- package/src/components/common/ReturnsForm.vue +31 -0
- package/src/components/common/ShipmentBarcode.vue +41 -0
- package/src/components/common/ShipmentOptionsForm.vue +22 -0
- package/src/components/common/ShipmentStatus.vue +23 -0
- package/src/components/common/StatusIndicator.vue +46 -0
- package/src/components/common/SubmitButton.vue +30 -0
- package/src/components/common/TabNavigation.vue +134 -0
- package/src/components/common/index.ts +39 -0
- package/src/components/index.ts +1 -0
- package/src/components/modals/PrintOptionsModal.vue +32 -0
- package/src/components/modals/PrintOptionsModalForm.vue +33 -0
- package/src/components/modals/ShipmentOptionsModal.vue +56 -0
- package/src/components/modals/ShipmentOptionsModalForm.vue +21 -0
- package/src/composables/components/index.ts +15 -0
- package/src/composables/components/useBulkSelectCheckbox.ts +39 -0
- package/src/composables/components/useCheckboxGroupContext.ts +10 -0
- package/src/composables/components/useDropOffInputContext.ts +74 -0
- package/src/composables/components/useDropdownButtonContext.ts +42 -0
- package/src/composables/components/useElementContext.ts +27 -0
- package/src/composables/components/useElementOptions.ts +48 -0
- package/src/composables/components/useInputWithOptionsContext.ts +46 -0
- package/src/composables/components/useModalElementContext.ts +27 -0
- package/src/composables/components/useMultiSelectInputContext.ts +11 -0
- package/src/composables/components/useRadioGroupContext.ts +56 -0
- package/src/composables/components/useSelectInputContext.ts +11 -0
- package/src/composables/components/useShippingMethodsInputContext.spec.ts +93 -0
- package/src/composables/components/useShippingMethodsInputContext.ts +130 -0
- package/src/composables/components/useTableContext.ts +17 -0
- package/src/composables/components/useToggleInputContext.ts +35 -0
- package/src/composables/components/useTriStateInputContext.ts +117 -0
- package/src/composables/context/index.ts +7 -0
- package/src/composables/context/useAppInfo.ts +6 -0
- package/src/composables/context/useContext.ts +18 -0
- package/src/composables/context/useGlobalContext.ts +7 -0
- package/src/composables/context/useInstanceContext.ts +15 -0
- package/src/composables/context/useModalContext.ts +52 -0
- package/src/composables/context/useModalOrder.ts +13 -0
- package/src/composables/context/usePluginSettings.ts +12 -0
- package/src/composables/formatter/default/createCurrencyFormat.ts +6 -0
- package/src/composables/formatter/default/createLongDateFormat.ts +7 -0
- package/src/composables/formatter/default/createRelativeTimeFormat.ts +5 -0
- package/src/composables/formatter/default/defaultCurrencyFormatters.ts +16 -0
- package/src/composables/formatter/default/defaultDateFormatters.ts +83 -0
- package/src/composables/formatter/default/index.ts +6 -0
- package/src/composables/formatter/default/parseDate.ts +12 -0
- package/src/composables/formatter/formatter.types.ts +32 -0
- package/src/composables/formatter/index.ts +4 -0
- package/src/composables/formatter/useFormatter.spec.ts +147 -0
- package/src/composables/formatter/useFormatter.ts +51 -0
- package/src/composables/formatter/useLocalizedFormatter.ts +11 -0
- package/src/composables/index.ts +17 -0
- package/src/composables/language/index.ts +4 -0
- package/src/composables/language/resolveTranslatedString.ts +30 -0
- package/src/composables/language/resolveTranslationKey.ts +5 -0
- package/src/composables/language/types.ts +1 -0
- package/src/composables/language/useLanguage.spec.ts +124 -0
- package/src/composables/language/useLanguage.ts +117 -0
- package/src/composables/orders/index.ts +3 -0
- package/src/composables/orders/useOrder.ts +8 -0
- package/src/composables/orders/useOrderData.ts +29 -0
- package/src/composables/orders/useOrdersData.ts +14 -0
- package/src/composables/products/index.ts +1 -0
- package/src/composables/products/useProductData.ts +23 -0
- package/src/composables/shipments/index.ts +3 -0
- package/src/composables/shipments/useShipment.ts +7 -0
- package/src/composables/shipments/useShipmentData.ts +52 -0
- package/src/composables/shipments/useShipmentsData.ts +5 -0
- package/src/composables/useAdminConfig.ts +8 -0
- package/src/composables/useAdminInstance.ts +13 -0
- package/src/composables/useDigitalStampRanges.ts +38 -0
- package/src/composables/useGlobalPdkAdmin.ts +13 -0
- package/src/composables/useLoadMore.spec.ts +69 -0
- package/src/composables/useLoadMore.ts +46 -0
- package/src/composables/useLoading.spec.ts +20 -0
- package/src/composables/useLoading.ts +18 -0
- package/src/composables/useLogger.ts +8 -0
- package/src/composables/useStoreContextQuery.ts +9 -0
- package/src/composables/useStoreQuery.ts +9 -0
- package/src/composables/useWeekdays.ts +24 -0
- package/src/data/components.ts +289 -0
- package/src/data/constants.ts +76 -0
- package/src/data/endpoints.ts +28 -0
- package/src/data/index.ts +4 -0
- package/src/data/view.ts +9 -0
- package/src/deprecated.ts +9 -0
- package/src/forms/createReturnsForm.ts +8 -0
- package/src/forms/form-builder/builders/buildAfterUpdate.spec.ts +48 -0
- package/src/forms/form-builder/builders/buildAfterUpdate.ts +26 -0
- package/src/forms/form-builder/builders/buildFormStateWatcher.spec.ts +206 -0
- package/src/forms/form-builder/builders/buildFormStateWatcher.ts +15 -0
- package/src/forms/form-builder/builders/index.ts +2 -0
- package/src/forms/form-builder/conditions/index.ts +3 -0
- package/src/forms/form-builder/conditions/validateIfCondition.spec.ts +69 -0
- package/src/forms/form-builder/conditions/validateIfCondition.ts +43 -0
- package/src/forms/form-builder/conditions/validateIfConditions.spec.ts +238 -0
- package/src/forms/form-builder/conditions/validateIfConditions.ts +31 -0
- package/src/forms/form-builder/conditions/validateIsTruthy.ts +15 -0
- package/src/forms/form-builder/index.ts +5 -0
- package/src/forms/form-builder/operations/executeCustomOperationHandlers.ts +18 -0
- package/src/forms/form-builder/operations/executeOperation.ts +27 -0
- package/src/forms/form-builder/operations/executeOperations.spec.ts +63 -0
- package/src/forms/form-builder/operations/executeOperations.ts +10 -0
- package/src/forms/form-builder/operations/executeSetPropOperation.spec.ts +164 -0
- package/src/forms/form-builder/operations/executeSetPropOperation.ts +15 -0
- package/src/forms/form-builder/operations/executeSetValueOperation.spec.ts +203 -0
- package/src/forms/form-builder/operations/executeSetValueOperation.ts +15 -0
- package/src/forms/form-builder/operations/index.ts +5 -0
- package/src/forms/form-builder/operations/parseBuilders.spec.ts +70 -0
- package/src/forms/form-builder/operations/parseBuilders.ts +39 -0
- package/src/forms/form-builder/types/FormCondition.types.ts +57 -0
- package/src/forms/form-builder/types/FormOperations.types.ts +21 -0
- package/src/forms/form-builder/types/SubOperationBuilder.types.ts +18 -0
- package/src/forms/form-builder/types/common.types.ts +35 -0
- package/src/forms/form-builder/types/index.ts +4 -0
- package/src/forms/form-builder/utils/createPropSetter.ts +19 -0
- package/src/forms/form-builder/utils/createValueGetter.ts +16 -0
- package/src/forms/form-builder/utils/createValueSetter.ts +21 -0
- package/src/forms/form-builder/utils/index.ts +6 -0
- package/src/forms/formKeys.ts +28 -0
- package/src/forms/helpers/addBulkEditNotification.ts +21 -0
- package/src/forms/helpers/createDefaultOption.ts +12 -0
- package/src/forms/helpers/createHasShipmentOptionWatcher.ts +12 -0
- package/src/forms/helpers/createLabel.ts +3 -0
- package/src/forms/helpers/defineFormField.ts +19 -0
- package/src/forms/helpers/getCarrier.ts +11 -0
- package/src/forms/helpers/getDeliveryTypes.ts +19 -0
- package/src/forms/helpers/getFieldLabel.ts +6 -0
- package/src/forms/helpers/getFormCarrierName.ts +7 -0
- package/src/forms/helpers/getInsuranceOptions.ts +23 -0
- package/src/forms/helpers/getPackageTypes.ts +19 -0
- package/src/forms/helpers/hasPostNlAgeCheck.ts +11 -0
- package/src/forms/helpers/hasShipmentOption.ts +8 -0
- package/src/forms/helpers/index.ts +20 -0
- package/src/forms/helpers/isPackageTypePackage.ts +7 -0
- package/src/forms/helpers/isPackageTypePackageOrSmall.ts +7 -0
- package/src/forms/helpers/isPackageTypeSmallPackage.ts +7 -0
- package/src/forms/helpers/resolveFormComponent.ts +12 -0
- package/src/forms/helpers/setFieldProp.ts +32 -0
- package/src/forms/helpers/setPostNlAgeCheckSubtext.ts +17 -0
- package/src/forms/helpers/triStateFieldIsEnabled.ts +20 -0
- package/src/forms/helpers/updateFieldsDefaults.ts +26 -0
- package/src/forms/index.ts +6 -0
- package/src/forms/pluginSettings/__snapshots__/generateFormFields.spec.ts.snap +37 -0
- package/src/forms/pluginSettings/createFormTab.ts +19 -0
- package/src/forms/pluginSettings/createPluginSettingsForm.ts +39 -0
- package/src/forms/pluginSettings/createPluginSettingsTabs.ts +35 -0
- package/src/forms/pluginSettings/createPluginSettingsTabsComponent.ts +42 -0
- package/src/forms/pluginSettings/generateFormFields.spec.ts +54 -0
- package/src/forms/pluginSettings/generateFormFields.ts +50 -0
- package/src/forms/pluginSettings/index.ts +6 -0
- package/src/forms/pluginSettings/types.ts +15 -0
- package/src/forms/shipmentOptions/createShipmentOptionsForm.ts +83 -0
- package/src/forms/shipmentOptions/field.ts +90 -0
- package/src/forms/shipmentOptions/fields/createAgeCheckField.ts +33 -0
- package/src/forms/shipmentOptions/fields/createCarrierField.ts +83 -0
- package/src/forms/shipmentOptions/fields/createDeliveryTypeField.ts +18 -0
- package/src/forms/shipmentOptions/fields/createDigitalStampRangeField.ts +48 -0
- package/src/forms/shipmentOptions/fields/createDirectReturnField.ts +8 -0
- package/src/forms/shipmentOptions/fields/createHideSenderField.ts +8 -0
- package/src/forms/shipmentOptions/fields/createInsuranceField.ts +31 -0
- package/src/forms/shipmentOptions/fields/createLabelAmountField.ts +20 -0
- package/src/forms/shipmentOptions/fields/createLargeFormatField.ts +8 -0
- package/src/forms/shipmentOptions/fields/createOnlyRecipientField.ts +21 -0
- package/src/forms/shipmentOptions/fields/createPackageTypeField.ts +18 -0
- package/src/forms/shipmentOptions/fields/createReceiptCodeField.ts +21 -0
- package/src/forms/shipmentOptions/fields/createRef.ts +6 -0
- package/src/forms/shipmentOptions/fields/createSameDayDeliveryField.ts +8 -0
- package/src/forms/shipmentOptions/fields/createShipmentOptionField.ts +25 -0
- package/src/forms/shipmentOptions/fields/createSignatureField.ts +11 -0
- package/src/forms/shipmentOptions/fields/index.ts +14 -0
- package/src/forms/shipmentOptions/index.ts +4 -0
- package/src/forms/shipmentOptions/types.ts +3 -0
- package/src/index.ts +114 -0
- package/src/pdk/PdkAdmin.ts +82 -0
- package/src/pdk/boot.ts +14 -0
- package/src/pdk/createAdminConfig.ts +29 -0
- package/src/pdk/createPdkAdmin.ts +39 -0
- package/src/pdk/createPdkAdminPlugin.ts +18 -0
- package/src/pdk/fillShipmentsQueryData.ts +44 -0
- package/src/pdk/index.ts +11 -0
- package/src/pdk/instance/createInstanceContext.ts +23 -0
- package/src/pdk/instance/createQueryClient.ts +31 -0
- package/src/pdk/instance/index.ts +3 -0
- package/src/pdk/instance/plugins/createContextPlugin.ts +17 -0
- package/src/pdk/instance/plugins/createLoggerPlugin.ts +13 -0
- package/src/pdk/instance/plugins/createRegisterComponentsPlugin.spec.ts +58 -0
- package/src/pdk/instance/plugins/createRegisterComponentsPlugin.ts +87 -0
- package/src/pdk/instance/plugins/createStorePlugin.ts +23 -0
- package/src/pdk/instance/plugins/createVueQueryPlugin.ts +48 -0
- package/src/pdk/instance/plugins/index.ts +6 -0
- package/src/pdk/instance/plugins/plugins.types.ts +4 -0
- package/src/pdk/renderMap.ts +27 -0
- package/src/pdk/sendBootEvent.ts +12 -0
- package/src/pdk/setupAdminApp.ts +20 -0
- package/src/pdk/testIdDirective.spec.ts +42 -0
- package/src/pdk/testIdDirective.ts +28 -0
- package/src/sdk/PdkFetchClient.ts +70 -0
- package/src/sdk/composables/api/index.ts +1 -0
- package/src/sdk/composables/api/useFetchCarrier.ts +23 -0
- package/src/sdk/composables/index.ts +3 -0
- package/src/sdk/composables/useMyParcelApi.ts +18 -0
- package/src/sdk/composables/usePdkAdminApi.ts +34 -0
- package/src/sdk/endpoints/abstractPdkEndpoint.ts +10 -0
- package/src/sdk/endpoints/index.ts +1 -0
- package/src/sdk/index.ts +3 -0
- package/src/services/actions/createAction.ts +24 -0
- package/src/services/actions/createActionContext.ts +49 -0
- package/src/services/actions/downloadFile.ts +16 -0
- package/src/services/actions/getActionIdentifier.ts +7 -0
- package/src/services/actions/index.ts +4 -0
- package/src/services/addErrorToNotifications.ts +35 -0
- package/src/services/context/getElementContext.ts +17 -0
- package/src/services/context/index.ts +1 -0
- package/src/services/createNotification.ts +35 -0
- package/src/services/index.ts +9 -0
- package/src/services/instantiateAction.ts +11 -0
- package/src/services/instantiateActions.ts +14 -0
- package/src/services/logger.spec.ts +70 -0
- package/src/services/logger.ts +118 -0
- package/src/services/mutations/getCallbackForMutationMode.ts +18 -0
- package/src/services/mutations/getModalMutationOptions.ts +24 -0
- package/src/services/mutations/index.ts +3 -0
- package/src/services/mutations/mutationMode.ts +4 -0
- package/src/services/print/index.ts +1 -0
- package/src/services/print/openPdfInNewWindow.ts +11 -0
- package/src/stores/createQueryCacheKey.ts +6 -0
- package/src/stores/index.ts +6 -0
- package/src/stores/types.ts +35 -0
- package/src/stores/useActionStore.ts +94 -0
- package/src/stores/useModalStore.ts +65 -0
- package/src/stores/useNotificationStore.ts +65 -0
- package/src/stores/useQueryStore.ts +184 -0
- package/src/symbols.ts +7 -0
- package/src/testing.ts +1 -0
- package/src/types/actions/actions.types.ts +42 -0
- package/src/types/actions/endpoints.types.ts +32 -0
- package/src/types/actions/index.ts +4 -0
- package/src/types/actions/parameters.types.ts +80 -0
- package/src/types/actions/response.types.ts +12 -0
- package/src/types/actions.types.ts +57 -0
- package/src/types/admin.types.ts +47 -0
- package/src/types/common.types.ts +66 -0
- package/src/types/components-form.types.ts +183 -0
- package/src/types/components.types.ts +349 -0
- package/src/types/configuration.types.ts +116 -0
- package/src/types/context.types.ts +25 -0
- package/src/types/endpoints.types.ts +17 -0
- package/src/types/form.types.ts +65 -0
- package/src/types/index.ts +12 -0
- package/src/types/language.types.ts +12 -0
- package/src/types/sdk.types.ts +213 -0
- package/src/utils/booleanToTriState.spec.ts +13 -0
- package/src/utils/booleanToTriState.ts +5 -0
- package/src/utils/convertDotNotationToObject.ts +15 -0
- package/src/utils/createAssetUrl.ts +9 -0
- package/src/utils/createClasses.ts +18 -0
- package/src/utils/createObjectWithKeys.ts +10 -0
- package/src/utils/decodeHtmlEntities.ts +11 -0
- package/src/utils/downloadBlob.ts +9 -0
- package/src/utils/downloadFileFromUrl.spec.ts +29 -0
- package/src/utils/downloadFileFromUrl.ts +5 -0
- package/src/utils/encodeArrayParameter.ts +6 -0
- package/src/utils/extendAdminInstance.ts +10 -0
- package/src/utils/fakeLinkClick.ts +17 -0
- package/src/utils/forms/createFormElement.ts +20 -0
- package/src/utils/forms/createShipmentFormName.ts +9 -0
- package/src/utils/forms/formToBody.ts +16 -0
- package/src/utils/forms/generateFieldId.ts +17 -0
- package/src/utils/forms/index.ts +4 -0
- package/src/utils/generateLabelFilename.spec.ts +24 -0
- package/src/utils/generateLabelFilename.ts +26 -0
- package/src/utils/getOrderId.ts +12 -0
- package/src/utils/getOrderShipmentIds.ts +12 -0
- package/src/utils/index.ts +23 -0
- package/src/utils/openUrlInNewTab.spec.ts +29 -0
- package/src/utils/openUrlInNewTab.ts +5 -0
- package/src/utils/prefixComponent.spec.ts +15 -0
- package/src/utils/prefixComponent.ts +10 -0
- package/src/utils/query/index.ts +3 -0
- package/src/utils/query/setQueryData.ts +8 -0
- package/src/utils/query/setQueryOrder.ts +26 -0
- package/src/utils/query/setQueryShipment.ts +8 -0
- package/src/utils/resolveCarrier.spec.ts +11 -0
- package/src/utils/resolveCarrier.ts +3 -0
- package/src/utils/translations/getDeliveryTypeTranslation.ts +5 -0
- package/src/utils/translations/getDynamicTranslation.ts +7 -0
- package/src/utils/translations/getPackageTypeTranslation.ts +5 -0
- package/src/utils/translations/index.ts +4 -0
- package/src/utils/translations/translateSelectOption.ts +15 -0
- package/src/utils/triStateToBoolean.spec.ts +13 -0
- package/src/utils/triStateToBoolean.ts +5 -0
- package/src/utils/unprefixComponent.spec.ts +13 -0
- package/src/utils/unprefixComponent.ts +6 -0
- package/src/utils/validateId.spec.ts +20 -0
- package/src/utils/validateId.ts +16 -0
- package/src/views/ChildProductSettings.vue +14 -0
- package/src/views/Modals.vue +22 -0
- package/src/views/Notifications.vue +9 -0
- package/src/views/OrderBox.vue +32 -0
- package/src/views/OrderListItem.vue +52 -0
- package/src/views/PluginSettings.vue +43 -0
- package/src/views/ProductSettings.vue +76 -0
- package/src/views/integrated/OrderBoxView.vue +20 -0
- package/src/views/integrated/OrderListItemView.vue +20 -0
- package/src/views/integrated/index.ts +13 -0
- package/src/vue-form-builder.d.ts +14 -0
- package/src/vue.shims.d.ts +11 -0
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import {type App, type Component, markRaw} from 'vue';
|
|
2
|
+
import {mergeWith} from 'lodash-unified';
|
|
3
|
+
import {type FormConfiguration, MyParcelFormBuilderPlugin} from '@myparcel-dev/vue-form-builder';
|
|
4
|
+
import {prefixComponent, unprefixComponent} from '../../../utils';
|
|
5
|
+
import {type AdminComponentMap, type PrefixedAdminComponent} from '../../../types';
|
|
6
|
+
import {
|
|
7
|
+
AdminComponent,
|
|
8
|
+
optionalAdminActionContainerComponentNames,
|
|
9
|
+
optionalAdminComponentNames,
|
|
10
|
+
optionalAdminPlainWrapperComponentNames,
|
|
11
|
+
requiredAdminComponentNames,
|
|
12
|
+
} from '../../../data';
|
|
13
|
+
import {useLanguage} from '../../../composables';
|
|
14
|
+
import {PlainElement} from '../../../components';
|
|
15
|
+
import {type PdkAppPlugin} from './plugins.types';
|
|
16
|
+
|
|
17
|
+
const getOptionalComponents = (app: App): Record<string, Component | AdminComponent> => {
|
|
18
|
+
const isNotRegistered = (component: PrefixedAdminComponent): boolean => app.component(component) === undefined;
|
|
19
|
+
|
|
20
|
+
const createComponentMap = (
|
|
21
|
+
componentNames: readonly AdminComponent[],
|
|
22
|
+
fallback: Component | AdminComponent,
|
|
23
|
+
): Record<string, Component | AdminComponent> => {
|
|
24
|
+
return componentNames
|
|
25
|
+
.map(prefixComponent)
|
|
26
|
+
.filter(isNotRegistered)
|
|
27
|
+
.reduce((acc, componentName) => ({...acc, [componentName]: fallback}), {});
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
return {
|
|
31
|
+
...createComponentMap(optionalAdminComponentNames, PlainElement),
|
|
32
|
+
...createComponentMap(optionalAdminPlainWrapperComponentNames, PlainElement),
|
|
33
|
+
...createComponentMap(optionalAdminActionContainerComponentNames, AdminComponent.Box),
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Registers all replaceable vue components. They must all be provided, for tree shaking purposes.
|
|
39
|
+
*/
|
|
40
|
+
export const createRegisterComponentsPlugin: PdkAppPlugin = ({config, logger}) => {
|
|
41
|
+
return {
|
|
42
|
+
install(app) {
|
|
43
|
+
const componentsFromConfig: Required<AdminComponentMap> = Object.entries(config.components).reduce(
|
|
44
|
+
(acc, [name, component]) => ({
|
|
45
|
+
...acc,
|
|
46
|
+
[unprefixComponent(name)]: component,
|
|
47
|
+
}),
|
|
48
|
+
{} as Required<AdminComponentMap>,
|
|
49
|
+
);
|
|
50
|
+
|
|
51
|
+
const requiredComponents = {
|
|
52
|
+
...requiredAdminComponentNames.reduce((acc, name) => ({...acc, [name]: null}), {}),
|
|
53
|
+
...componentsFromConfig,
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
Object.entries(requiredComponents).forEach(([componentName, component]) => {
|
|
57
|
+
if (!component) {
|
|
58
|
+
logger.error(
|
|
59
|
+
`Missing component: "${componentName}". You must provide your own, or use one provided by one of the @myparcel-dev/pdk-admin-preset-* packages.`,
|
|
60
|
+
);
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
app.component(prefixComponent(componentName), markRaw(component));
|
|
65
|
+
});
|
|
66
|
+
|
|
67
|
+
Object.entries(getOptionalComponents(app)).forEach(([componentName, component]) => {
|
|
68
|
+
const componentToRegister = typeof component === 'string' ? componentsFromConfig[component] : component;
|
|
69
|
+
|
|
70
|
+
app.component(prefixComponent(componentName), markRaw(componentToRegister));
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
const {translate} = useLanguage();
|
|
74
|
+
|
|
75
|
+
const defaultConfig: Partial<FormConfiguration> = {
|
|
76
|
+
renderLabel: translate,
|
|
77
|
+
field: {
|
|
78
|
+
wrapper: componentsFromConfig[AdminComponent.FormGroup],
|
|
79
|
+
},
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
app.use(MyParcelFormBuilderPlugin, mergeWith(defaultConfig, config.formConfig));
|
|
83
|
+
|
|
84
|
+
logger.debug('Installed components plugin.');
|
|
85
|
+
},
|
|
86
|
+
};
|
|
87
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import {createPinia, type Pinia} from 'pinia';
|
|
2
|
+
import {type PdkAppPlugin} from './plugins.types';
|
|
3
|
+
|
|
4
|
+
let store: Pinia;
|
|
5
|
+
let initialized = false;
|
|
6
|
+
|
|
7
|
+
export const createStorePlugin: PdkAppPlugin = ({config, logger}) => {
|
|
8
|
+
store ??= createPinia();
|
|
9
|
+
|
|
10
|
+
logger.debug('Preparing store plugin');
|
|
11
|
+
|
|
12
|
+
store.use((storeContext) => {
|
|
13
|
+
if (initialized || !config.onCreateStore) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
initialized = true;
|
|
18
|
+
logger.debug('Calling store renderer hook');
|
|
19
|
+
config.onCreateStore(storeContext);
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
return store;
|
|
23
|
+
};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import {type QueryClient, VueQueryPlugin} from '@tanstack/vue-query';
|
|
2
|
+
import {AdminContextKey, BackendEndpoint} from '@myparcel-dev/pdk-common';
|
|
3
|
+
import {createQueryClient} from '../createQueryClient';
|
|
4
|
+
import {createInstanceContext} from '../createInstanceContext';
|
|
5
|
+
import {fillShipmentsQueryData} from '../../fillShipmentsQueryData';
|
|
6
|
+
import {type PdkAppPlugin} from './plugins.types';
|
|
7
|
+
|
|
8
|
+
let queryClient: QueryClient;
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Instantiate vue query client if it does not exist yet and provide it to the app.
|
|
12
|
+
*/
|
|
13
|
+
export const createVueQueryPlugin: PdkAppPlugin = ({context, logger}) => {
|
|
14
|
+
return {
|
|
15
|
+
install: (app) => {
|
|
16
|
+
logger.debug('Installing vue-query plugin');
|
|
17
|
+
|
|
18
|
+
queryClient ??= createQueryClient();
|
|
19
|
+
|
|
20
|
+
// Fill the query client with the context data
|
|
21
|
+
Object.entries(context).forEach(([contextKey, value]) => {
|
|
22
|
+
if (!value) {
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
queryClient.setQueryData([BackendEndpoint.FetchContext, contextKey], value);
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
const instanceContext = createInstanceContext(context);
|
|
30
|
+
queryClient.setQueryData([BackendEndpoint.FetchContext, AdminContextKey.Instance], instanceContext);
|
|
31
|
+
|
|
32
|
+
// Add each order and its shipments to the query client
|
|
33
|
+
if (context.orderData) {
|
|
34
|
+
context.orderData.forEach((order) => {
|
|
35
|
+
fillShipmentsQueryData(queryClient, order.shipments, order);
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
if (context.productData) {
|
|
40
|
+
context.productData.forEach((product) => {
|
|
41
|
+
queryClient.setQueryData([BackendEndpoint.FetchProducts, {id: product.externalIdentifier}], product);
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
app.use(VueQueryPlugin, {queryClient});
|
|
46
|
+
},
|
|
47
|
+
};
|
|
48
|
+
};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/naming-convention */
|
|
2
|
+
import {type Component} from 'vue';
|
|
3
|
+
import {type ComponentImportFunction} from '../types';
|
|
4
|
+
import {AdminView} from '../data';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Maps components to render methods.
|
|
8
|
+
*/
|
|
9
|
+
const renderMap = Object.freeze<Record<AdminView, ComponentImportFunction>>({
|
|
10
|
+
[AdminView.ChildProductSettings]: async () => import('../views/ChildProductSettings.vue'),
|
|
11
|
+
[AdminView.Modals]: async () => import('../views/Modals.vue'),
|
|
12
|
+
[AdminView.Notifications]: async () => import('../views/Notifications.vue'),
|
|
13
|
+
[AdminView.OrderBox]: async () => import('../views/OrderBox.vue'),
|
|
14
|
+
[AdminView.OrderListItem]: async () => import('../views/OrderListItem.vue'),
|
|
15
|
+
[AdminView.PluginSettings]: async () => import('../views/PluginSettings.vue'),
|
|
16
|
+
[AdminView.ProductSettings]: async () => import('../views/ProductSettings.vue'),
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
export const renderViewComponent = async (componentName: AdminView): Promise<Component> => {
|
|
20
|
+
const renderMethod = renderMap[componentName];
|
|
21
|
+
|
|
22
|
+
if (!renderMethod) {
|
|
23
|
+
throw new Error(`No render method found for component "${componentName}"`);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
return (await renderMethod()).default;
|
|
27
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import {type AdminContextObject} from '../types';
|
|
2
|
+
import {type PdkAdmin} from './PdkAdmin';
|
|
3
|
+
|
|
4
|
+
export const sendBootEvent = (pdkAdmin: PdkAdmin, context: AdminContextObject): void => {
|
|
5
|
+
const globalContext = context.global;
|
|
6
|
+
|
|
7
|
+
if (!globalContext) {
|
|
8
|
+
throw new Error('Global context not found');
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
document.dispatchEvent(new CustomEvent(globalContext.eventPong, {detail: pdkAdmin}));
|
|
12
|
+
};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import {type App} from 'vue';
|
|
2
|
+
import {type AdminAppConfig} from '../types';
|
|
3
|
+
import {testIdDirective} from './testIdDirective';
|
|
4
|
+
import {
|
|
5
|
+
createContextPlugin,
|
|
6
|
+
createLoggerPlugin,
|
|
7
|
+
createRegisterComponentsPlugin,
|
|
8
|
+
createStorePlugin,
|
|
9
|
+
createVueQueryPlugin,
|
|
10
|
+
} from './instance';
|
|
11
|
+
|
|
12
|
+
export const setupAdminApp = (app: App<Element>, appConfig: AdminAppConfig): void => {
|
|
13
|
+
app.use(createStorePlugin(appConfig));
|
|
14
|
+
app.use(createVueQueryPlugin(appConfig));
|
|
15
|
+
app.use(createContextPlugin(appConfig));
|
|
16
|
+
app.use(createRegisterComponentsPlugin(appConfig));
|
|
17
|
+
app.use(createLoggerPlugin(appConfig));
|
|
18
|
+
|
|
19
|
+
app.directive('test', testIdDirective);
|
|
20
|
+
};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import {describe, expect, it} from 'vitest';
|
|
2
|
+
import {shallowMount} from '@vue/test-utils';
|
|
3
|
+
import {testIdDirective} from './testIdDirective';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* @vitest-environment happy-dom
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
const mountWrapper = (template: string) => {
|
|
10
|
+
return shallowMount(
|
|
11
|
+
{
|
|
12
|
+
template,
|
|
13
|
+
},
|
|
14
|
+
{global: {directives: {test: testIdDirective}}},
|
|
15
|
+
);
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
describe('testIdDirective', () => {
|
|
19
|
+
it('handles plain string', () => {
|
|
20
|
+
const wrapper = mountWrapper(`<div v-test="'test'"></div>`);
|
|
21
|
+
|
|
22
|
+
expect(wrapper.find('div').attributes('data-test-id')).toBe('test');
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
it('handles string array', () => {
|
|
26
|
+
const wrapper = mountWrapper(`<div v-test="['test', 'test2']"></div>`);
|
|
27
|
+
|
|
28
|
+
expect(wrapper.find('div').attributes('data-test-id')).toBe('test--test2');
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
it('handles string + element', () => {
|
|
32
|
+
const wrapper = mountWrapper(`<div v-test="['test', {name: 'test2'}]"></div>`);
|
|
33
|
+
|
|
34
|
+
expect(wrapper.find('div').attributes('data-test-id')).toBe('test--test2');
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
it('handles undefined', () => {
|
|
38
|
+
const wrapper = mountWrapper(`<div v-test="['test', undefined]"></div>`);
|
|
39
|
+
|
|
40
|
+
expect(wrapper.find('div').attributes('data-test-id')).toBe('test');
|
|
41
|
+
});
|
|
42
|
+
});
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import {type Directive} from 'vue';
|
|
2
|
+
import {isDefined} from '@vueuse/core';
|
|
3
|
+
import {type FieldInstance} from '@myparcel-dev/vue-form-builder';
|
|
4
|
+
|
|
5
|
+
const SEPARATOR = '--';
|
|
6
|
+
|
|
7
|
+
type TestIdBinding = string | string[] | [string, FieldInstance];
|
|
8
|
+
|
|
9
|
+
export const testIdDirective: Directive<Element, TestIdBinding> = (el, binding) => {
|
|
10
|
+
if (import.meta.env.MODE !== 'test') {
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
let testId: string;
|
|
15
|
+
|
|
16
|
+
if (Array.isArray(binding.value)) {
|
|
17
|
+
const filtered = binding.value.filter(isDefined);
|
|
18
|
+
|
|
19
|
+
const bindings =
|
|
20
|
+
typeof filtered[1] === 'string' ? (filtered as string[]) : [filtered[0], filtered[1]?.name as string];
|
|
21
|
+
|
|
22
|
+
testId = bindings.filter(isDefined).join(SEPARATOR);
|
|
23
|
+
} else {
|
|
24
|
+
testId = binding.value;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
el.setAttribute('data-test-id', testId);
|
|
28
|
+
};
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import {isOfType} from '@myparcel-dev/ts-utils';
|
|
2
|
+
import {
|
|
3
|
+
type AbstractEndpoint,
|
|
4
|
+
ApiException,
|
|
5
|
+
type EndpointResponse,
|
|
6
|
+
type EndpointResponseBody,
|
|
7
|
+
type EndpointResponseProperty,
|
|
8
|
+
type ErrorResponse,
|
|
9
|
+
FetchClient,
|
|
10
|
+
type Options,
|
|
11
|
+
type ResponseWrapper,
|
|
12
|
+
} from '@myparcel-dev/sdk';
|
|
13
|
+
import {type PdkNotification} from '../types';
|
|
14
|
+
import {useNotificationStore} from '../stores';
|
|
15
|
+
|
|
16
|
+
type EndpointResponseBodyWithNotifications = {
|
|
17
|
+
notifications: PdkNotification[];
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
type PdkEndpointResponseBody<E extends AbstractEndpoint> = EndpointResponseBody<E> &
|
|
21
|
+
EndpointResponseBodyWithNotifications;
|
|
22
|
+
|
|
23
|
+
export class PdkFetchClient extends FetchClient {
|
|
24
|
+
/**
|
|
25
|
+
* Prepare and execute the final request and handle the response.
|
|
26
|
+
*/
|
|
27
|
+
public async doRequest<E extends AbstractEndpoint>(endpoint: E, options: Options<E>): Promise<EndpointResponse<E>> {
|
|
28
|
+
const newOptions = this.normalizeOptions(endpoint, {...options, ...this.options});
|
|
29
|
+
this.validateHeaders(endpoint, newOptions);
|
|
30
|
+
|
|
31
|
+
const response = (await this.request(endpoint, newOptions)) as ResponseWrapper<PdkEndpointResponseBody<E>>;
|
|
32
|
+
|
|
33
|
+
if (isOfType<ErrorResponse>(response, 'errors')) {
|
|
34
|
+
if (isOfType<EndpointResponseBodyWithNotifications>(response, 'notifications')) {
|
|
35
|
+
const notificationStore = useNotificationStore();
|
|
36
|
+
|
|
37
|
+
response.notifications.forEach((notification) => {
|
|
38
|
+
notificationStore.add(notification);
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
throw new ApiException(response);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
if (isOfType<ResponseWrapper>(response, 'data')) {
|
|
46
|
+
const property = endpoint.getResponseProperty() as EndpointResponseProperty<E>;
|
|
47
|
+
|
|
48
|
+
if (isOfType<EndpointResponseBodyWithNotifications>(response.data, 'notifications')) {
|
|
49
|
+
const notificationStore = useNotificationStore();
|
|
50
|
+
|
|
51
|
+
response.data.notifications.forEach((notification) => {
|
|
52
|
+
notificationStore.add(notification);
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
return response.data[property];
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
return response;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* If the url already contains a query string, append the parameters with an ampersand instead.
|
|
64
|
+
*/
|
|
65
|
+
protected createUrl<E extends AbstractEndpoint>(endpoint: E, options: Options<E>): string {
|
|
66
|
+
const url = super.createUrl(endpoint, options);
|
|
67
|
+
|
|
68
|
+
return url.replace(/\?([^?]*)(\?)/, '?$1&');
|
|
69
|
+
}
|
|
70
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './useFetchCarrier';
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/explicit-module-boundary-types */
|
|
2
|
+
import {useQuery, useQueryClient} from '@tanstack/vue-query';
|
|
3
|
+
import {type EndpointResponse, type GetCarrier} from '@myparcel-dev/sdk';
|
|
4
|
+
import {type CarrierName} from '@myparcel-dev/constants';
|
|
5
|
+
import {useMyParcelApi} from '../useMyParcelApi';
|
|
6
|
+
|
|
7
|
+
export const useFetchCarrier = (carrier?: CarrierName) => {
|
|
8
|
+
const queryClient = useQueryClient();
|
|
9
|
+
const queryKey = ['carriers', {name: carrier}] as const;
|
|
10
|
+
|
|
11
|
+
return useQuery<EndpointResponse<GetCarrier>[number]>(
|
|
12
|
+
queryKey,
|
|
13
|
+
async () => {
|
|
14
|
+
const sdk = useMyParcelApi();
|
|
15
|
+
const carriers = await sdk.getCarrier(carrier ? {path: {carrier}} : undefined);
|
|
16
|
+
|
|
17
|
+
return carriers[0];
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
...queryClient.defaultQueryOptions(),
|
|
21
|
+
},
|
|
22
|
+
);
|
|
23
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import {createMyParcelSdk, FetchClient, GetCarrier, GetCarriers, type MyParcelSdk} from '@myparcel-dev/sdk';
|
|
2
|
+
|
|
3
|
+
let sdk: ReturnType<typeof useMyParcelApi>;
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* @returns {MyParcelSdk<GetCarrier | GetCarriers>}
|
|
7
|
+
*/
|
|
8
|
+
export const useMyParcelApi = (): MyParcelSdk<GetCarrier | GetCarriers> => {
|
|
9
|
+
if (sdk) {
|
|
10
|
+
return sdk;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
const client = new FetchClient();
|
|
14
|
+
|
|
15
|
+
sdk = createMyParcelSdk(client, [new GetCarriers(), new GetCarrier()]);
|
|
16
|
+
|
|
17
|
+
return sdk;
|
|
18
|
+
};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import {createGlobalState} from '@vueuse/core';
|
|
2
|
+
import {type BackendEndpoint} from '@myparcel-dev/pdk-common';
|
|
3
|
+
import {createMyParcelSdk, type HttpMethod, type MyParcelSdk} from '@myparcel-dev/sdk';
|
|
4
|
+
import {AbstractPdkEndpoint} from '../endpoints';
|
|
5
|
+
import {PdkFetchClient} from '../PdkFetchClient';
|
|
6
|
+
import {useGlobalContext} from '../../composables';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Do requests to the PDK admin Api.
|
|
10
|
+
*/
|
|
11
|
+
export const usePdkAdminApi = createGlobalState((): MyParcelSdk<AbstractPdkEndpoint> => {
|
|
12
|
+
const globalContext = useGlobalContext();
|
|
13
|
+
|
|
14
|
+
const client = new PdkFetchClient({
|
|
15
|
+
baseUrl: globalContext.baseUrl,
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
const pdkEndpoints = Object.entries(globalContext.endpoints).map(([endpointName, options]) => {
|
|
19
|
+
class PdkEndpoint extends AbstractPdkEndpoint {
|
|
20
|
+
public readonly method = options.method.toUpperCase() as HttpMethod;
|
|
21
|
+
public readonly name = endpointName as BackendEndpoint;
|
|
22
|
+
public readonly path = options.path;
|
|
23
|
+
public readonly property = options.property;
|
|
24
|
+
public readonly responseProperty = options.responseProperty ?? options.property;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
return new PdkEndpoint({
|
|
28
|
+
headers: options.headers,
|
|
29
|
+
parameters: options.parameters,
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
return createMyParcelSdk(client, pdkEndpoints) as MyParcelSdk<AbstractPdkEndpoint>;
|
|
34
|
+
});
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import {type BackendEndpoint, type ExtractEndpointDefinition} from '@myparcel-dev/pdk-common';
|
|
2
|
+
import {AbstractEndpoint} from '@myparcel-dev/sdk';
|
|
3
|
+
import {type BackendEndpointDefinition} from '../../types';
|
|
4
|
+
|
|
5
|
+
export abstract class AbstractPdkEndpoint<N extends BackendEndpoint = BackendEndpoint> extends AbstractEndpoint<
|
|
6
|
+
ExtractEndpointDefinition<N, BackendEndpointDefinition>
|
|
7
|
+
> {
|
|
8
|
+
public declare readonly name: N | `${N}}`;
|
|
9
|
+
public declare readonly path: string;
|
|
10
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './abstractPdkEndpoint';
|
package/src/sdk/index.ts
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import {type ActionParameters, type AnyActionDefinition, type MaybeAdminAction, type ResolvedAction} from '../../types';
|
|
2
|
+
import {type AdminAction} from '../../data';
|
|
3
|
+
import {type ActionContext, executeAction} from '../../actions';
|
|
4
|
+
import {getActionIdentifier} from './getActionIdentifier';
|
|
5
|
+
import {createActionContext} from './createActionContext';
|
|
6
|
+
|
|
7
|
+
type CreateAction = (action: AnyActionDefinition) => ResolvedAction;
|
|
8
|
+
|
|
9
|
+
export const createAction: CreateAction = (action) => {
|
|
10
|
+
const context = createActionContext(action as AnyActionDefinition<AdminAction>);
|
|
11
|
+
|
|
12
|
+
return {
|
|
13
|
+
id: getActionIdentifier(action),
|
|
14
|
+
icon: action.icon,
|
|
15
|
+
label: action.label,
|
|
16
|
+
variant: action.variant,
|
|
17
|
+
disabled: action.disabled,
|
|
18
|
+
standalone: action.standalone,
|
|
19
|
+
|
|
20
|
+
handler: async <A extends MaybeAdminAction>(parameters: ActionParameters<A>) => {
|
|
21
|
+
await executeAction({...context, parameters} as ActionContext<A>);
|
|
22
|
+
},
|
|
23
|
+
};
|
|
24
|
+
};
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import {Variant} from '@myparcel-dev/pdk-common';
|
|
2
|
+
import {toArray} from '@myparcel-dev/ts-utils';
|
|
3
|
+
import {createLogger} from '../logger';
|
|
4
|
+
import {createNotification} from '../createNotification';
|
|
5
|
+
import {
|
|
6
|
+
type ActionParameters,
|
|
7
|
+
type AdminInstance,
|
|
8
|
+
type AnyActionDefinition,
|
|
9
|
+
type MaybeAdminAction,
|
|
10
|
+
type PdkNotification,
|
|
11
|
+
} from '../../types';
|
|
12
|
+
import {NotificationCategory} from '../../data';
|
|
13
|
+
import {useAdminInstance} from '../../composables';
|
|
14
|
+
import {type ActionContext} from '../../actions';
|
|
15
|
+
import {getActionIdentifier} from './getActionIdentifier';
|
|
16
|
+
|
|
17
|
+
export const createActionContext = <A extends MaybeAdminAction>(
|
|
18
|
+
action: AnyActionDefinition<A>,
|
|
19
|
+
parameters?: ActionParameters<A>,
|
|
20
|
+
existingInstance?: AdminInstance,
|
|
21
|
+
): ActionContext<A> => {
|
|
22
|
+
const identifier = getActionIdentifier(action);
|
|
23
|
+
const logger = createLogger(identifier);
|
|
24
|
+
|
|
25
|
+
return {
|
|
26
|
+
// @ts-expect-error todo
|
|
27
|
+
action,
|
|
28
|
+
|
|
29
|
+
// @ts-expect-error todo
|
|
30
|
+
parameters: parameters ?? {},
|
|
31
|
+
|
|
32
|
+
instance: {
|
|
33
|
+
...(existingInstance ?? useAdminInstance()),
|
|
34
|
+
logger,
|
|
35
|
+
},
|
|
36
|
+
|
|
37
|
+
notifications: toArray(action.notifications ?? [Variant.Error]).reduce(
|
|
38
|
+
(acc, variant) => ({
|
|
39
|
+
...acc,
|
|
40
|
+
[variant]: createNotification(variant, {
|
|
41
|
+
tags: {
|
|
42
|
+
action: identifier,
|
|
43
|
+
},
|
|
44
|
+
}),
|
|
45
|
+
}),
|
|
46
|
+
{} as Record<Variant, PdkNotification>,
|
|
47
|
+
),
|
|
48
|
+
};
|
|
49
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import {downloadFileFromUrl} from '../../utils';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Try to get a file from an url. An error means the file is not ready yet. Retry until it is.
|
|
5
|
+
*/
|
|
6
|
+
export async function downloadFile(url: string, filename: string): Promise<void> {
|
|
7
|
+
try {
|
|
8
|
+
downloadFileFromUrl(url, filename);
|
|
9
|
+
} catch (e) {
|
|
10
|
+
await new Promise((resolve) => {
|
|
11
|
+
setTimeout(resolve, 100);
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
return downloadFile(url, filename);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import {isOfType} from '@myparcel-dev/ts-utils';
|
|
2
|
+
import {type AnyActionDefinition} from '../../types';
|
|
3
|
+
import {type AdminAction} from '../../data';
|
|
4
|
+
|
|
5
|
+
export const getActionIdentifier = (action: AnyActionDefinition): string => {
|
|
6
|
+
return isOfType<AnyActionDefinition<AdminAction>>(action, 'name') ? action.name : action.id;
|
|
7
|
+
};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import {Variant} from '@myparcel-dev/pdk-common';
|
|
2
|
+
import {isOfType} from '@myparcel-dev/ts-utils';
|
|
3
|
+
import {type ApiException} from '@myparcel-dev/sdk';
|
|
4
|
+
import {type PdkNotification} from '../types';
|
|
5
|
+
import {useNotificationStore} from '../stores';
|
|
6
|
+
import {type NotificationCategory} from '../data';
|
|
7
|
+
import {createNotification} from './createNotification';
|
|
8
|
+
|
|
9
|
+
export const addErrorToNotifications = (
|
|
10
|
+
error: unknown,
|
|
11
|
+
category: NotificationCategory,
|
|
12
|
+
timeout: boolean | number = false,
|
|
13
|
+
): void => {
|
|
14
|
+
const store = useNotificationStore();
|
|
15
|
+
const options: Partial<PdkNotification> = {category, timeout};
|
|
16
|
+
|
|
17
|
+
if (isOfType<Error>(error, 'message')) {
|
|
18
|
+
options.title = error.message;
|
|
19
|
+
|
|
20
|
+
options.content = error.stack;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
// Override stacktrace if the error is an ApiException
|
|
24
|
+
if (isOfType<ApiException>(error, 'data')) {
|
|
25
|
+
options.content = error.data.errors.map((error) => `${error.title} (code: ${error.code})`);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
const notification = createNotification(Variant.Error, options);
|
|
29
|
+
|
|
30
|
+
if (!notification) {
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
store.add(notification);
|
|
35
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import {globalLogger} from '../logger';
|
|
2
|
+
import {type AdminContextObject} from '../../types';
|
|
3
|
+
|
|
4
|
+
export const getElementContext = (selector: string): AdminContextObject => {
|
|
5
|
+
const element = document.querySelector(selector);
|
|
6
|
+
const context = element?.getAttribute('data-pdk-context');
|
|
7
|
+
const parsedContext = context ? JSON.parse(context) : null;
|
|
8
|
+
|
|
9
|
+
if (parsedContext && Object.keys(parsedContext).length) {
|
|
10
|
+
globalLogger.debug(`Found context in ${selector}`, parsedContext);
|
|
11
|
+
element?.removeAttribute('data-pdk-context');
|
|
12
|
+
return parsedContext;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
globalLogger.info(`No context found in ${selector}`);
|
|
16
|
+
return {} as AdminContextObject;
|
|
17
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './getElementContext';
|