@deenruv/core 1.0.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/LICENSE +23 -0
- package/README.md +11 -0
- package/cli/index.d.ts +1 -0
- package/cli/index.js +18 -0
- package/cli/index.js.map +1 -0
- package/cli/populate.d.ts +5 -0
- package/cli/populate.js +84 -0
- package/cli/populate.js.map +1 -0
- package/dist/api/api-internal-modules.d.ts +46 -0
- package/dist/api/api-internal-modules.js +219 -0
- package/dist/api/api-internal-modules.js.map +1 -0
- package/dist/api/api.module.d.ts +12 -0
- package/dist/api/api.module.js +105 -0
- package/dist/api/api.module.js.map +1 -0
- package/dist/api/common/configurable-operation-codec.d.ts +19 -0
- package/dist/api/common/configurable-operation-codec.js +110 -0
- package/dist/api/common/configurable-operation-codec.js.map +1 -0
- package/dist/api/common/custom-field-relation-resolver.service.d.ts +31 -0
- package/dist/api/common/custom-field-relation-resolver.service.js +92 -0
- package/dist/api/common/custom-field-relation-resolver.service.js.map +1 -0
- package/dist/api/common/extract-session-token.d.ts +7 -0
- package/dist/api/common/extract-session-token.js +39 -0
- package/dist/api/common/extract-session-token.js.map +1 -0
- package/dist/api/common/get-api-type.d.ts +13 -0
- package/dist/api/common/get-api-type.js +16 -0
- package/dist/api/common/get-api-type.js.map +1 -0
- package/dist/api/common/graphql-value-transformer.d.ts +47 -0
- package/dist/api/common/graphql-value-transformer.js +215 -0
- package/dist/api/common/graphql-value-transformer.js.map +1 -0
- package/dist/api/common/id-codec.d.ts +34 -0
- package/dist/api/common/id-codec.js +125 -0
- package/dist/api/common/id-codec.js.map +1 -0
- package/dist/api/common/id-codec.service.d.ts +7 -0
- package/dist/api/common/id-codec.service.js +33 -0
- package/dist/api/common/id-codec.service.js.map +1 -0
- package/dist/api/common/parse-context.d.ts +20 -0
- package/dist/api/common/parse-context.js +44 -0
- package/dist/api/common/parse-context.js.map +1 -0
- package/dist/api/common/request-context.d.ts +155 -0
- package/dist/api/common/request-context.js +257 -0
- package/dist/api/common/request-context.js.map +1 -0
- package/dist/api/common/set-session-token.d.ts +13 -0
- package/dist/api/common/set-session-token.js +33 -0
- package/dist/api/common/set-session-token.js.map +1 -0
- package/dist/api/common/user-has-permissions-on-custom-field.d.ts +3 -0
- package/dist/api/common/user-has-permissions-on-custom-field.js +19 -0
- package/dist/api/common/user-has-permissions-on-custom-field.js.map +1 -0
- package/dist/api/common/validate-custom-field-value.d.ts +8 -0
- package/dist/api/common/validate-custom-field-value.js +138 -0
- package/dist/api/common/validate-custom-field-value.js.map +1 -0
- package/dist/api/config/configure-graphql-module.d.ts +16 -0
- package/dist/api/config/configure-graphql-module.js +120 -0
- package/dist/api/config/configure-graphql-module.js.map +1 -0
- package/dist/api/config/generate-active-order-types.d.ts +14 -0
- package/dist/api/config/generate-active-order-types.js +95 -0
- package/dist/api/config/generate-active-order-types.js.map +1 -0
- package/dist/api/config/generate-auth-types.d.ts +14 -0
- package/dist/api/config/generate-auth-types.js +43 -0
- package/dist/api/config/generate-auth-types.js.map +1 -0
- package/dist/api/config/generate-error-code-enum.d.ts +7 -0
- package/dist/api/config/generate-error-code-enum.js +35 -0
- package/dist/api/config/generate-error-code-enum.js.map +1 -0
- package/dist/api/config/generate-list-options.d.ts +5 -0
- package/dist/api/config/generate-list-options.js +218 -0
- package/dist/api/config/generate-list-options.js.map +1 -0
- package/dist/api/config/generate-permissions.d.ts +6 -0
- package/dist/api/config/generate-permissions.js +65 -0
- package/dist/api/config/generate-permissions.js.map +1 -0
- package/dist/api/config/generate-resolvers.d.ts +211 -0
- package/dist/api/config/generate-resolvers.js +222 -0
- package/dist/api/config/generate-resolvers.js.map +1 -0
- package/dist/api/config/get-custom-fields-config-without-interfaces.d.ts +8 -0
- package/dist/api/config/get-custom-fields-config-without-interfaces.js +30 -0
- package/dist/api/config/get-custom-fields-config-without-interfaces.js.map +1 -0
- package/dist/api/config/graphql-custom-fields.d.ts +29 -0
- package/dist/api/config/graphql-custom-fields.js +524 -0
- package/dist/api/config/graphql-custom-fields.js.map +1 -0
- package/dist/api/config/money-scalar.d.ts +9 -0
- package/dist/api/config/money-scalar.js +73 -0
- package/dist/api/config/money-scalar.js.map +1 -0
- package/dist/api/decorators/allow.decorator.d.ts +35 -0
- package/dist/api/decorators/allow.decorator.js +40 -0
- package/dist/api/decorators/allow.decorator.js.map +1 -0
- package/dist/api/decorators/api.decorator.d.ts +21 -0
- package/dist/api/decorators/api.decorator.js +30 -0
- package/dist/api/decorators/api.decorator.js.map +1 -0
- package/dist/api/decorators/relations.decorator.d.ts +116 -0
- package/dist/api/decorators/relations.decorator.js +214 -0
- package/dist/api/decorators/relations.decorator.js.map +1 -0
- package/dist/api/decorators/request-context.decorator.d.ts +17 -0
- package/dist/api/decorators/request-context.decorator.js +39 -0
- package/dist/api/decorators/request-context.decorator.js.map +1 -0
- package/dist/api/decorators/transaction.decorator.d.ts +71 -0
- package/dist/api/decorators/transaction.decorator.js +42 -0
- package/dist/api/decorators/transaction.decorator.js.map +1 -0
- package/dist/api/index.d.ts +12 -0
- package/dist/api/index.js +28 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/middleware/asset-interceptor-plugin.d.ts +16 -0
- package/dist/api/middleware/asset-interceptor-plugin.js +66 -0
- package/dist/api/middleware/asset-interceptor-plugin.js.map +1 -0
- package/dist/api/middleware/auth-guard.d.ts +34 -0
- package/dist/api/middleware/auth-guard.js +177 -0
- package/dist/api/middleware/auth-guard.js.map +1 -0
- package/dist/api/middleware/exception-logger.filter.d.ts +16 -0
- package/dist/api/middleware/exception-logger.filter.js +117 -0
- package/dist/api/middleware/exception-logger.filter.js.map +1 -0
- package/dist/api/middleware/id-codec-plugin.d.ts +16 -0
- package/dist/api/middleware/id-codec-plugin.js +58 -0
- package/dist/api/middleware/id-codec-plugin.js.map +1 -0
- package/dist/api/middleware/id-interceptor.d.ts +19 -0
- package/dist/api/middleware/id-interceptor.js +69 -0
- package/dist/api/middleware/id-interceptor.js.map +1 -0
- package/dist/api/middleware/transaction-interceptor.d.ts +26 -0
- package/dist/api/middleware/transaction-interceptor.js +67 -0
- package/dist/api/middleware/transaction-interceptor.js.map +1 -0
- package/dist/api/middleware/translate-error-result-interceptor.d.ts +13 -0
- package/dist/api/middleware/translate-error-result-interceptor.js +53 -0
- package/dist/api/middleware/translate-error-result-interceptor.js.map +1 -0
- package/dist/api/middleware/translate-errors-plugin.d.ts +11 -0
- package/dist/api/middleware/translate-errors-plugin.js +27 -0
- package/dist/api/middleware/translate-errors-plugin.js.map +1 -0
- package/dist/api/middleware/validate-custom-fields-interceptor.d.ts +20 -0
- package/dist/api/middleware/validate-custom-fields-interceptor.js +138 -0
- package/dist/api/middleware/validate-custom-fields-interceptor.js.map +1 -0
- package/dist/api/resolvers/admin/administrator.resolver.d.ts +19 -0
- package/dist/api/resolvers/admin/administrator.resolver.js +161 -0
- package/dist/api/resolvers/admin/administrator.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/asset.resolver.d.ts +17 -0
- package/dist/api/resolvers/admin/asset.resolver.js +133 -0
- package/dist/api/resolvers/admin/asset.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/auth.resolver.d.ts +17 -0
- package/dist/api/resolvers/admin/auth.resolver.js +115 -0
- package/dist/api/resolvers/admin/auth.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/channel.resolver.d.ts +19 -0
- package/dist/api/resolvers/admin/channel.resolver.js +136 -0
- package/dist/api/resolvers/admin/channel.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/collection.resolver.d.ts +26 -0
- package/dist/api/resolvers/admin/collection.resolver.js +220 -0
- package/dist/api/resolvers/admin/collection.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/country.resolver.d.ts +17 -0
- package/dist/api/resolvers/admin/country.resolver.js +113 -0
- package/dist/api/resolvers/admin/country.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/customer-group.resolver.d.ts +18 -0
- package/dist/api/resolvers/admin/customer-group.resolver.js +139 -0
- package/dist/api/resolvers/admin/customer-group.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/customer.resolver.d.ts +28 -0
- package/dist/api/resolvers/admin/customer.resolver.js +210 -0
- package/dist/api/resolvers/admin/customer.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/draft-order.resolver.d.ts +31 -0
- package/dist/api/resolvers/admin/draft-order.resolver.js +252 -0
- package/dist/api/resolvers/admin/draft-order.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/duplicate-entity.resolver.d.ts +9 -0
- package/dist/api/resolvers/admin/duplicate-entity.resolver.js +57 -0
- package/dist/api/resolvers/admin/duplicate-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/facet.resolver.d.ts +29 -0
- package/dist/api/resolvers/admin/facet.resolver.js +224 -0
- package/dist/api/resolvers/admin/facet.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/global-settings.resolver.d.ts +28 -0
- package/dist/api/resolvers/admin/global-settings.resolver.js +187 -0
- package/dist/api/resolvers/admin/global-settings.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/import.resolver.d.ts +8 -0
- package/dist/api/resolvers/admin/import.resolver.js +46 -0
- package/dist/api/resolvers/admin/import.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/job.resolver.d.ts +24 -0
- package/dist/api/resolvers/admin/job.resolver.js +160 -0
- package/dist/api/resolvers/admin/job.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/order.resolver.d.ts +33 -0
- package/dist/api/resolvers/admin/order.resolver.js +277 -0
- package/dist/api/resolvers/admin/order.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/payment-method.resolver.d.ts +21 -0
- package/dist/api/resolvers/admin/payment-method.resolver.js +161 -0
- package/dist/api/resolvers/admin/payment-method.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/product-option.resolver.d.ts +20 -0
- package/dist/api/resolvers/admin/product-option.resolver.js +140 -0
- package/dist/api/resolvers/admin/product-option.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/product.resolver.d.ts +36 -0
- package/dist/api/resolvers/admin/product.resolver.js +311 -0
- package/dist/api/resolvers/admin/product.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/promotion.resolver.d.ts +27 -0
- package/dist/api/resolvers/admin/promotion.resolver.js +192 -0
- package/dist/api/resolvers/admin/promotion.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/role.resolver.d.ts +16 -0
- package/dist/api/resolvers/admin/role.resolver.js +116 -0
- package/dist/api/resolvers/admin/role.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/search.resolver.d.ts +17 -0
- package/dist/api/resolvers/admin/search.resolver.js +81 -0
- package/dist/api/resolvers/admin/search.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/seller.resolver.d.ts +14 -0
- package/dist/api/resolvers/admin/seller.resolver.js +109 -0
- package/dist/api/resolvers/admin/seller.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/shipping-method.resolver.d.ts +26 -0
- package/dist/api/resolvers/admin/shipping-method.resolver.js +205 -0
- package/dist/api/resolvers/admin/shipping-method.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/stock-location.resolver.d.ts +15 -0
- package/dist/api/resolvers/admin/stock-location.resolver.js +135 -0
- package/dist/api/resolvers/admin/stock-location.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/tag.resolver.d.ts +13 -0
- package/dist/api/resolvers/admin/tag.resolver.js +96 -0
- package/dist/api/resolvers/admin/tag.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/tax-category.resolver.d.ts +15 -0
- package/dist/api/resolvers/admin/tax-category.resolver.js +109 -0
- package/dist/api/resolvers/admin/tax-category.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/tax-rate.resolver.d.ts +16 -0
- package/dist/api/resolvers/admin/tax-rate.resolver.js +113 -0
- package/dist/api/resolvers/admin/tax-rate.resolver.js.map +1 -0
- package/dist/api/resolvers/admin/zone.resolver.d.ts +17 -0
- package/dist/api/resolvers/admin/zone.resolver.js +135 -0
- package/dist/api/resolvers/admin/zone.resolver.js.map +1 -0
- package/dist/api/resolvers/base/base-auth.resolver.d.ts +40 -0
- package/dist/api/resolvers/base/base-auth.resolver.js +108 -0
- package/dist/api/resolvers/base/base-auth.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/administrator-entity.resolver.d.ts +9 -0
- package/dist/api/resolvers/entity/administrator-entity.resolver.js +51 -0
- package/dist/api/resolvers/entity/administrator-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/asset-entity.resolver.d.ts +9 -0
- package/dist/api/resolvers/entity/asset-entity.resolver.js +46 -0
- package/dist/api/resolvers/entity/asset-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/channel-entity.resolver.d.ts +10 -0
- package/dist/api/resolvers/entity/channel-entity.resolver.js +57 -0
- package/dist/api/resolvers/entity/channel-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/collection-entity.resolver.d.ts +33 -0
- package/dist/api/resolvers/entity/collection-entity.resolver.js +211 -0
- package/dist/api/resolvers/entity/collection-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/country-entity.resolver.d.ts +9 -0
- package/dist/api/resolvers/entity/country-entity.resolver.js +55 -0
- package/dist/api/resolvers/entity/country-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/customer-entity.resolver.d.ts +27 -0
- package/dist/api/resolvers/entity/customer-entity.resolver.js +134 -0
- package/dist/api/resolvers/entity/customer-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/customer-group-entity.resolver.d.ts +11 -0
- package/dist/api/resolvers/entity/customer-group-entity.resolver.js +47 -0
- package/dist/api/resolvers/entity/customer-group-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/facet-entity.resolver.d.ts +21 -0
- package/dist/api/resolvers/entity/facet-entity.resolver.js +92 -0
- package/dist/api/resolvers/entity/facet-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/facet-value-entity.resolver.d.ts +15 -0
- package/dist/api/resolvers/entity/facet-value-entity.resolver.js +76 -0
- package/dist/api/resolvers/entity/facet-value-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/fulfillment-entity.resolver.d.ts +16 -0
- package/dist/api/resolvers/entity/fulfillment-entity.resolver.js +77 -0
- package/dist/api/resolvers/entity/fulfillment-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/fulfillment-line-entity.resolver.d.ts +11 -0
- package/dist/api/resolvers/entity/fulfillment-line-entity.resolver.js +61 -0
- package/dist/api/resolvers/entity/fulfillment-line-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/job-entity.resolver.d.ts +7 -0
- package/dist/api/resolvers/entity/job-entity.resolver.js +75 -0
- package/dist/api/resolvers/entity/job-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/order-entity.resolver.d.ts +31 -0
- package/dist/api/resolvers/entity/order-entity.resolver.js +251 -0
- package/dist/api/resolvers/entity/order-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/order-line-entity.resolver.d.ts +14 -0
- package/dist/api/resolvers/entity/order-line-entity.resolver.js +93 -0
- package/dist/api/resolvers/entity/order-line-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/payment-entity.resolver.d.ts +20 -0
- package/dist/api/resolvers/entity/payment-entity.resolver.js +87 -0
- package/dist/api/resolvers/entity/payment-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/payment-method-entity.resolver.d.ts +5 -0
- package/dist/api/resolvers/entity/payment-method-entity.resolver.js +25 -0
- package/dist/api/resolvers/entity/payment-method-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/product-entity.resolver.d.ts +48 -0
- package/dist/api/resolvers/entity/product-entity.resolver.js +238 -0
- package/dist/api/resolvers/entity/product-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/product-option-entity.resolver.d.ts +16 -0
- package/dist/api/resolvers/entity/product-option-entity.resolver.js +79 -0
- package/dist/api/resolvers/entity/product-option-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/product-option-group-entity.resolver.d.ts +14 -0
- package/dist/api/resolvers/entity/product-option-group-entity.resolver.js +81 -0
- package/dist/api/resolvers/entity/product-option-group-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/product-variant-entity.resolver.d.ts +51 -0
- package/dist/api/resolvers/entity/product-variant-entity.resolver.js +315 -0
- package/dist/api/resolvers/entity/product-variant-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/refund-entity.resolver.d.ts +8 -0
- package/dist/api/resolvers/entity/refund-entity.resolver.js +48 -0
- package/dist/api/resolvers/entity/refund-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/refund-line-entity.resolver.d.ts +11 -0
- package/dist/api/resolvers/entity/refund-line-entity.resolver.js +57 -0
- package/dist/api/resolvers/entity/refund-line-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/role-entity.resolver.d.ts +9 -0
- package/dist/api/resolvers/entity/role-entity.resolver.js +46 -0
- package/dist/api/resolvers/entity/role-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/shipping-line-entity.resolver.d.ts +8 -0
- package/dist/api/resolvers/entity/shipping-line-entity.resolver.js +51 -0
- package/dist/api/resolvers/entity/shipping-line-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/shipping-method-entity.resolver.d.ts +10 -0
- package/dist/api/resolvers/entity/shipping-method-entity.resolver.js +67 -0
- package/dist/api/resolvers/entity/shipping-method-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/tax-rate-entity.resolver.d.ts +9 -0
- package/dist/api/resolvers/entity/tax-rate-entity.resolver.js +50 -0
- package/dist/api/resolvers/entity/tax-rate-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/user-entity.resolver.d.ts +9 -0
- package/dist/api/resolvers/entity/user-entity.resolver.js +54 -0
- package/dist/api/resolvers/entity/user-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/entity/zone-entity.resolver.d.ts +9 -0
- package/dist/api/resolvers/entity/zone-entity.resolver.js +48 -0
- package/dist/api/resolvers/entity/zone-entity.resolver.js.map +1 -0
- package/dist/api/resolvers/shop/shop-auth.resolver.d.ts +29 -0
- package/dist/api/resolvers/shop/shop-auth.resolver.js +353 -0
- package/dist/api/resolvers/shop/shop-auth.resolver.js.map +1 -0
- package/dist/api/resolvers/shop/shop-customer.resolver.d.ts +18 -0
- package/dist/api/resolvers/shop/shop-customer.resolver.js +128 -0
- package/dist/api/resolvers/shop/shop-customer.resolver.js.map +1 -0
- package/dist/api/resolvers/shop/shop-environment.resolver.d.ts +5 -0
- package/dist/api/resolvers/shop/shop-environment.resolver.js +35 -0
- package/dist/api/resolvers/shop/shop-environment.resolver.js.map +1 -0
- package/dist/api/resolvers/shop/shop-order.resolver.d.ts +45 -0
- package/dist/api/resolvers/shop/shop-order.resolver.js +411 -0
- package/dist/api/resolvers/shop/shop-order.resolver.js.map +1 -0
- package/dist/api/resolvers/shop/shop-products.resolver.d.ts +30 -0
- package/dist/api/resolvers/shop/shop-products.resolver.js +197 -0
- package/dist/api/resolvers/shop/shop-products.resolver.js.map +1 -0
- package/dist/api/schema/admin-api/administrator.api.graphql +47 -0
- package/dist/api/schema/admin-api/administrator.type.graphql +14 -0
- package/dist/api/schema/admin-api/asset.api.graphql +68 -0
- package/dist/api/schema/admin-api/auth.api.graphql +22 -0
- package/dist/api/schema/admin-api/channel.api.graphql +69 -0
- package/dist/api/schema/admin-api/collection-admin.type.graphql +4 -0
- package/dist/api/schema/admin-api/collection.api.graphql +94 -0
- package/dist/api/schema/admin-api/country.api.graphql +41 -0
- package/dist/api/schema/admin-api/customer-admin.type.graphql +4 -0
- package/dist/api/schema/admin-api/customer-group.api.graphql +37 -0
- package/dist/api/schema/admin-api/customer.api.graphql +63 -0
- package/dist/api/schema/admin-api/duplicate-entity.api.graphql +40 -0
- package/dist/api/schema/admin-api/facet-admin.type.graphql +3 -0
- package/dist/api/schema/admin-api/facet.api.graphql +100 -0
- package/dist/api/schema/admin-api/global-settings.api.graphql +26 -0
- package/dist/api/schema/admin-api/global-settings.type.graphql +28 -0
- package/dist/api/schema/admin-api/history-entry-admin.type.graphql +4 -0
- package/dist/api/schema/admin-api/import.api.graphql +3 -0
- package/dist/api/schema/admin-api/import.type.graphql +5 -0
- package/dist/api/schema/admin-api/job.api.graphql +63 -0
- package/dist/api/schema/admin-api/order-admin.type.graphql +37 -0
- package/dist/api/schema/admin-api/order.api.graphql +488 -0
- package/dist/api/schema/admin-api/payment-method.api.graphql +65 -0
- package/dist/api/schema/admin-api/payment.api.graphql +3 -0
- package/dist/api/schema/admin-api/product-admin.type.graphql +21 -0
- package/dist/api/schema/admin-api/product-option-group.api.graphql +58 -0
- package/dist/api/schema/admin-api/product-search-admin.type.graphql +5 -0
- package/dist/api/schema/admin-api/product-search.api.graphql +10 -0
- package/dist/api/schema/admin-api/product.api.graphql +214 -0
- package/dist/api/schema/admin-api/promotion.api.graphql +70 -0
- package/dist/api/schema/admin-api/province.api.graphql +37 -0
- package/dist/api/schema/admin-api/role.api.graphql +33 -0
- package/dist/api/schema/admin-api/seller.api.graphql +31 -0
- package/dist/api/schema/admin-api/shipping-method.api.graphql +91 -0
- package/dist/api/schema/admin-api/stock-level.type.graphql +9 -0
- package/dist/api/schema/admin-api/stock-location.api.graphql +51 -0
- package/dist/api/schema/admin-api/stock-location.type.graphql +7 -0
- package/dist/api/schema/admin-api/stock-movement.type.graphql +80 -0
- package/dist/api/schema/admin-api/tag.api.graphql +25 -0
- package/dist/api/schema/admin-api/tax-category.api.graphql +36 -0
- package/dist/api/schema/admin-api/tax-rate.api.graphql +37 -0
- package/dist/api/schema/admin-api/zone.api.graphql +42 -0
- package/dist/api/schema/common/address.type.graphql +16 -0
- package/dist/api/schema/common/asset.type.graphql +31 -0
- package/dist/api/schema/common/auth.type.graphql +12 -0
- package/dist/api/schema/common/channel.type.graphql +24 -0
- package/dist/api/schema/common/collection.type.graphql +40 -0
- package/dist/api/schema/common/common-enums.graphql +35 -0
- package/dist/api/schema/common/common-error-results.graphql +107 -0
- package/dist/api/schema/common/common-types.graphql +288 -0
- package/dist/api/schema/common/currency-code.graphql +322 -0
- package/dist/api/schema/common/custom-field-types.graphql +166 -0
- package/dist/api/schema/common/customer-group.type.graphql +10 -0
- package/dist/api/schema/common/customer.type.graphql +18 -0
- package/dist/api/schema/common/facet-value.type.graphql +19 -0
- package/dist/api/schema/common/facet.type.graphql +35 -0
- package/dist/api/schema/common/history-entry.type.graphql +43 -0
- package/dist/api/schema/common/language-code.graphql +325 -0
- package/dist/api/schema/common/order.type.graphql +260 -0
- package/dist/api/schema/common/payment-method.type.graphql +21 -0
- package/dist/api/schema/common/product-option-group.type.graphql +38 -0
- package/dist/api/schema/common/product-search.type.graphql +69 -0
- package/dist/api/schema/common/product.type.graphql +70 -0
- package/dist/api/schema/common/promotion.type.graphql +31 -0
- package/dist/api/schema/common/region.type.graphql +65 -0
- package/dist/api/schema/common/role.type.graphql +14 -0
- package/dist/api/schema/common/seller.type.graphql +6 -0
- package/dist/api/schema/common/shipping-method.type.graphql +27 -0
- package/dist/api/schema/common/tag.type.graphql +11 -0
- package/dist/api/schema/common/tax-category.type.graphql +7 -0
- package/dist/api/schema/common/tax-rate.type.graphql +16 -0
- package/dist/api/schema/common/user.type.graphql +17 -0
- package/dist/api/schema/common/zone.type.graphql +8 -0
- package/dist/api/schema/shop-api/shop-error-results.graphql +114 -0
- package/dist/api/schema/shop-api/shop.api.graphql +290 -0
- package/dist/app.module.d.ts +14 -0
- package/dist/app.module.js +99 -0
- package/dist/app.module.js.map +1 -0
- package/dist/bootstrap.d.ts +115 -0
- package/dist/bootstrap.js +347 -0
- package/dist/bootstrap.js.map +1 -0
- package/dist/cache/cache.module.d.ts +2 -0
- package/dist/cache/cache.module.js +21 -0
- package/dist/cache/cache.module.js.map +1 -0
- package/dist/cache/index.d.ts +1 -0
- package/dist/cache/index.js +18 -0
- package/dist/cache/index.js.map +1 -0
- package/dist/cache/request-context-cache.service.d.ts +16 -0
- package/dist/cache/request-context-cache.service.js +46 -0
- package/dist/cache/request-context-cache.service.js.map +1 -0
- package/dist/common/async-queue.d.ts +30 -0
- package/dist/common/async-queue.js +69 -0
- package/dist/common/async-queue.js.map +1 -0
- package/dist/common/calculated-decorator.d.ts +39 -0
- package/dist/common/calculated-decorator.js +35 -0
- package/dist/common/calculated-decorator.js.map +1 -0
- package/dist/common/configurable-operation.d.ts +275 -0
- package/dist/common/configurable-operation.js +193 -0
- package/dist/common/configurable-operation.js.map +1 -0
- package/dist/common/constants.d.ts +18 -0
- package/dist/common/constants.js +79 -0
- package/dist/common/constants.js.map +1 -0
- package/dist/common/error/error-result.d.ts +62 -0
- package/dist/common/error/error-result.js +11 -0
- package/dist/common/error/error-result.js.map +1 -0
- package/dist/common/error/errors.d.ts +83 -0
- package/dist/common/error/errors.js +100 -0
- package/dist/common/error/errors.js.map +1 -0
- package/dist/common/error/generated-graphql-admin-errors.d.ts +488 -0
- package/dist/common/error/generated-graphql-admin-errors.js +608 -0
- package/dist/common/error/generated-graphql-admin-errors.js.map +1 -0
- package/dist/common/error/generated-graphql-shop-errors.d.ts +300 -0
- package/dist/common/error/generated-graphql-shop-errors.js +392 -0
- package/dist/common/error/generated-graphql-shop-errors.js.map +1 -0
- package/dist/common/finite-state-machine/finite-state-machine.d.ts +43 -0
- package/dist/common/finite-state-machine/finite-state-machine.js +95 -0
- package/dist/common/finite-state-machine/finite-state-machine.js.map +1 -0
- package/dist/common/finite-state-machine/merge-transition-definitions.d.ts +5 -0
- package/dist/common/finite-state-machine/merge-transition-definitions.js +30 -0
- package/dist/common/finite-state-machine/merge-transition-definitions.js.map +1 -0
- package/dist/common/finite-state-machine/types.d.ts +99 -0
- package/dist/common/finite-state-machine/types.js +3 -0
- package/dist/common/finite-state-machine/types.js.map +1 -0
- package/dist/common/finite-state-machine/validate-transition-definition.d.ts +9 -0
- package/dist/common/finite-state-machine/validate-transition-definition.js +60 -0
- package/dist/common/finite-state-machine/validate-transition-definition.js.map +1 -0
- package/dist/common/generate-public-id.d.ts +16 -0
- package/dist/common/generate-public-id.js +25 -0
- package/dist/common/generate-public-id.js.map +1 -0
- package/dist/common/index.d.ts +17 -0
- package/dist/common/index.js +34 -0
- package/dist/common/index.js.map +1 -0
- package/dist/common/injector.d.ts +28 -0
- package/dist/common/injector.js +36 -0
- package/dist/common/injector.js.map +1 -0
- package/dist/common/permission-definition.d.ts +158 -0
- package/dist/common/permission-definition.js +152 -0
- package/dist/common/permission-definition.js.map +1 -0
- package/dist/common/round-money.d.ts +8 -0
- package/dist/common/round-money.js +20 -0
- package/dist/common/round-money.js.map +1 -0
- package/dist/common/self-refreshing-cache.d.ts +53 -0
- package/dist/common/self-refreshing-cache.js +70 -0
- package/dist/common/self-refreshing-cache.js.map +1 -0
- package/dist/common/tax-utils.d.ts +16 -0
- package/dist/common/tax-utils.js +32 -0
- package/dist/common/tax-utils.js.map +1 -0
- package/dist/common/ttl-cache.d.ts +19 -0
- package/dist/common/ttl-cache.js +57 -0
- package/dist/common/ttl-cache.js.map +1 -0
- package/dist/common/types/adjustment-source.d.ts +14 -0
- package/dist/common/types/adjustment-source.js +18 -0
- package/dist/common/types/adjustment-source.js.map +1 -0
- package/dist/common/types/common-types.d.ts +205 -0
- package/dist/common/types/common-types.js +3 -0
- package/dist/common/types/common-types.js.map +1 -0
- package/dist/common/types/entity-relation-paths.d.ts +36 -0
- package/dist/common/types/entity-relation-paths.js +3 -0
- package/dist/common/types/entity-relation-paths.js.map +1 -0
- package/dist/common/types/injectable-strategy.d.ts +31 -0
- package/dist/common/types/injectable-strategy.js +3 -0
- package/dist/common/types/injectable-strategy.js.map +1 -0
- package/dist/common/types/locale-types.d.ts +67 -0
- package/dist/common/types/locale-types.js +3 -0
- package/dist/common/types/locale-types.js.map +1 -0
- package/dist/common/utils.d.ts +75 -0
- package/dist/common/utils.js +147 -0
- package/dist/common/utils.js.map +1 -0
- package/dist/config/asset-import-strategy/asset-import-strategy.d.ts +31 -0
- package/dist/config/asset-import-strategy/asset-import-strategy.js +3 -0
- package/dist/config/asset-import-strategy/asset-import-strategy.js.map +1 -0
- package/dist/config/asset-import-strategy/default-asset-import-strategy.d.ts +24 -0
- package/dist/config/asset-import-strategy/default-asset-import-strategy.js +89 -0
- package/dist/config/asset-import-strategy/default-asset-import-strategy.js.map +1 -0
- package/dist/config/asset-naming-strategy/asset-naming-strategy.d.ts +38 -0
- package/dist/config/asset-naming-strategy/asset-naming-strategy.js +3 -0
- package/dist/config/asset-naming-strategy/asset-naming-strategy.js.map +1 -0
- package/dist/config/asset-naming-strategy/default-asset-naming-strategy.d.ts +24 -0
- package/dist/config/asset-naming-strategy/default-asset-naming-strategy.js +76 -0
- package/dist/config/asset-naming-strategy/default-asset-naming-strategy.js.map +1 -0
- package/dist/config/asset-preview-strategy/asset-preview-strategy.d.ts +26 -0
- package/dist/config/asset-preview-strategy/asset-preview-strategy.js +3 -0
- package/dist/config/asset-preview-strategy/asset-preview-strategy.js.map +1 -0
- package/dist/config/asset-preview-strategy/no-asset-preview-strategy.d.ts +10 -0
- package/dist/config/asset-preview-strategy/no-asset-preview-strategy.js +14 -0
- package/dist/config/asset-preview-strategy/no-asset-preview-strategy.js.map +1 -0
- package/dist/config/asset-storage-strategy/asset-storage-strategy.d.ts +71 -0
- package/dist/config/asset-storage-strategy/asset-storage-strategy.js +3 -0
- package/dist/config/asset-storage-strategy/asset-storage-strategy.js.map +1 -0
- package/dist/config/asset-storage-strategy/no-asset-storage-strategy.d.ts +18 -0
- package/dist/config/asset-storage-strategy/no-asset-storage-strategy.js +33 -0
- package/dist/config/asset-storage-strategy/no-asset-storage-strategy.js.map +1 -0
- package/dist/config/auth/authentication-strategy.d.ts +78 -0
- package/dist/config/auth/authentication-strategy.js +3 -0
- package/dist/config/auth/authentication-strategy.js.map +1 -0
- package/dist/config/auth/bcrypt-password-hashing-strategy.d.ts +14 -0
- package/dist/config/auth/bcrypt-password-hashing-strategy.js +32 -0
- package/dist/config/auth/bcrypt-password-hashing-strategy.js.map +1 -0
- package/dist/config/auth/default-password-validation-strategy.d.ts +23 -0
- package/dist/config/auth/default-password-validation-strategy.js +37 -0
- package/dist/config/auth/default-password-validation-strategy.js.map +1 -0
- package/dist/config/auth/native-authentication-strategy.d.ts +32 -0
- package/dist/config/auth/native-authentication-strategy.js +81 -0
- package/dist/config/auth/native-authentication-strategy.js.map +1 -0
- package/dist/config/auth/password-hashing-strategy.d.ts +19 -0
- package/dist/config/auth/password-hashing-strategy.js +3 -0
- package/dist/config/auth/password-hashing-strategy.js.map +1 -0
- package/dist/config/auth/password-validation-strategy.d.ts +29 -0
- package/dist/config/auth/password-validation-strategy.js +3 -0
- package/dist/config/auth/password-validation-strategy.js.map +1 -0
- package/dist/config/catalog/collection-filter.d.ts +56 -0
- package/dist/config/catalog/collection-filter.js +58 -0
- package/dist/config/catalog/collection-filter.js.map +1 -0
- package/dist/config/catalog/default-collection-filters.d.ts +155 -0
- package/dist/config/catalog/default-collection-filters.js +262 -0
- package/dist/config/catalog/default-collection-filters.js.map +1 -0
- package/dist/config/catalog/default-product-variant-price-calculation-strategy.d.ts +14 -0
- package/dist/config/catalog/default-product-variant-price-calculation-strategy.js +38 -0
- package/dist/config/catalog/default-product-variant-price-calculation-strategy.js.map +1 -0
- package/dist/config/catalog/default-product-variant-price-selection-strategy.d.ts +16 -0
- package/dist/config/catalog/default-product-variant-price-selection-strategy.js +23 -0
- package/dist/config/catalog/default-product-variant-price-selection-strategy.js.map +1 -0
- package/dist/config/catalog/default-product-variant-price-update-strategy.d.ts +62 -0
- package/dist/config/catalog/default-product-variant-price-update-strategy.js +60 -0
- package/dist/config/catalog/default-product-variant-price-update-strategy.js.map +1 -0
- package/dist/config/catalog/default-stock-display-strategy.d.ts +16 -0
- package/dist/config/catalog/default-stock-display-strategy.js +25 -0
- package/dist/config/catalog/default-stock-display-strategy.js.map +1 -0
- package/dist/config/catalog/default-stock-location-strategy.d.ts +26 -0
- package/dist/config/catalog/default-stock-location-strategy.js +71 -0
- package/dist/config/catalog/default-stock-location-strategy.js.map +1 -0
- package/dist/config/catalog/product-variant-price-calculation-strategy.d.ts +39 -0
- package/dist/config/catalog/product-variant-price-calculation-strategy.js +3 -0
- package/dist/config/catalog/product-variant-price-calculation-strategy.js.map +1 -0
- package/dist/config/catalog/product-variant-price-selection-strategy.d.ts +22 -0
- package/dist/config/catalog/product-variant-price-selection-strategy.js +3 -0
- package/dist/config/catalog/product-variant-price-selection-strategy.js.map +1 -0
- package/dist/config/catalog/product-variant-price-update-strategy.d.ts +83 -0
- package/dist/config/catalog/product-variant-price-update-strategy.js +3 -0
- package/dist/config/catalog/product-variant-price-update-strategy.js.map +1 -0
- package/dist/config/catalog/stock-display-strategy.d.ts +27 -0
- package/dist/config/catalog/stock-display-strategy.js +3 -0
- package/dist/config/catalog/stock-display-strategy.js.map +1 -0
- package/dist/config/catalog/stock-location-strategy.d.ts +82 -0
- package/dist/config/catalog/stock-location-strategy.js +3 -0
- package/dist/config/catalog/stock-location-strategy.js.map +1 -0
- package/dist/config/config-helpers.d.ts +21 -0
- package/dist/config/config-helpers.js +56 -0
- package/dist/config/config-helpers.js.map +1 -0
- package/dist/config/config.module.d.ts +16 -0
- package/dist/config/config.module.js +152 -0
- package/dist/config/config.module.js.map +1 -0
- package/dist/config/config.service.d.ts +34 -0
- package/dist/config/config.service.js +121 -0
- package/dist/config/config.service.js.map +1 -0
- package/dist/config/custom-field/custom-field-types.d.ts +128 -0
- package/dist/config/custom-field/custom-field-types.js +3 -0
- package/dist/config/custom-field/custom-field-types.js.map +1 -0
- package/dist/config/deenruv-config.d.ts +1211 -0
- package/dist/config/deenruv-config.js +3 -0
- package/dist/config/deenruv-config.js.map +1 -0
- package/dist/config/default-config.d.ts +8 -0
- package/dist/config/default-config.js +224 -0
- package/dist/config/default-config.js.map +1 -0
- package/dist/config/entity/auto-increment-id-strategy.d.ts +14 -0
- package/dist/config/entity/auto-increment-id-strategy.js +25 -0
- package/dist/config/entity/auto-increment-id-strategy.js.map +1 -0
- package/dist/config/entity/bigint-money-strategy.d.ts +18 -0
- package/dist/config/entity/bigint-money-strategy.js +46 -0
- package/dist/config/entity/bigint-money-strategy.js.map +1 -0
- package/dist/config/entity/default-money-strategy.d.ts +15 -0
- package/dist/config/entity/default-money-strategy.js +24 -0
- package/dist/config/entity/default-money-strategy.js.map +1 -0
- package/dist/config/entity/entity-duplicator.d.ts +166 -0
- package/dist/config/entity/entity-duplicator.js +123 -0
- package/dist/config/entity/entity-duplicator.js.map +1 -0
- package/dist/config/entity/entity-duplicators/collection-duplicator.d.ts +6 -0
- package/dist/config/entity/entity-duplicators/collection-duplicator.js +64 -0
- package/dist/config/entity/entity-duplicators/collection-duplicator.js.map +1 -0
- package/dist/config/entity/entity-duplicators/facet-duplicator.d.ts +16 -0
- package/dist/config/entity/entity-duplicators/facet-duplicator.js +79 -0
- package/dist/config/entity/entity-duplicators/facet-duplicator.js.map +1 -0
- package/dist/config/entity/entity-duplicators/index.d.ts +19 -0
- package/dist/config/entity/entity-duplicators/index.js +14 -0
- package/dist/config/entity/entity-duplicators/index.js.map +1 -0
- package/dist/config/entity/entity-duplicators/product-duplicator.d.ts +16 -0
- package/dist/config/entity/entity-duplicators/product-duplicator.js +189 -0
- package/dist/config/entity/entity-duplicators/product-duplicator.js.map +1 -0
- package/dist/config/entity/entity-duplicators/promotion-duplicator.d.ts +6 -0
- package/dist/config/entity/entity-duplicators/promotion-duplicator.js +66 -0
- package/dist/config/entity/entity-duplicators/promotion-duplicator.js.map +1 -0
- package/dist/config/entity/entity-id-strategy.d.ts +55 -0
- package/dist/config/entity/entity-id-strategy.js +3 -0
- package/dist/config/entity/entity-id-strategy.js.map +1 -0
- package/dist/config/entity/money-strategy.d.ts +99 -0
- package/dist/config/entity/money-strategy.js +3 -0
- package/dist/config/entity/money-strategy.js.map +1 -0
- package/dist/config/entity/uuid-id-strategy.d.ts +28 -0
- package/dist/config/entity/uuid-id-strategy.js +38 -0
- package/dist/config/entity/uuid-id-strategy.js.map +1 -0
- package/dist/config/entity-metadata/entity-metadata-modifier.d.ts +55 -0
- package/dist/config/entity-metadata/entity-metadata-modifier.js +3 -0
- package/dist/config/entity-metadata/entity-metadata-modifier.js.map +1 -0
- package/dist/config/fulfillment/default-fulfillment-process.d.ts +24 -0
- package/dist/config/fulfillment/default-fulfillment-process.js +140 -0
- package/dist/config/fulfillment/default-fulfillment-process.js.map +1 -0
- package/dist/config/fulfillment/fulfillment-handler.d.ts +143 -0
- package/dist/config/fulfillment/fulfillment-handler.js +108 -0
- package/dist/config/fulfillment/fulfillment-handler.js.map +1 -0
- package/dist/config/fulfillment/fulfillment-process.d.ts +31 -0
- package/dist/config/fulfillment/fulfillment-process.js +3 -0
- package/dist/config/fulfillment/fulfillment-process.js.map +1 -0
- package/dist/config/fulfillment/manual-fulfillment-handler.d.ts +11 -0
- package/dist/config/fulfillment/manual-fulfillment-handler.js +31 -0
- package/dist/config/fulfillment/manual-fulfillment-handler.js.map +1 -0
- package/dist/config/index.d.ts +93 -0
- package/dist/config/index.js +110 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/job-queue/inspectable-job-queue-strategy.d.ts +38 -0
- package/dist/config/job-queue/inspectable-job-queue-strategy.js +11 -0
- package/dist/config/job-queue/inspectable-job-queue-strategy.js.map +1 -0
- package/dist/config/job-queue/job-queue-strategy.d.ts +35 -0
- package/dist/config/job-queue/job-queue-strategy.js +3 -0
- package/dist/config/job-queue/job-queue-strategy.js.map +1 -0
- package/dist/config/logger/deenruv-logger.d.ts +137 -0
- package/dist/config/logger/deenruv-logger.js +170 -0
- package/dist/config/logger/deenruv-logger.js.map +1 -0
- package/dist/config/logger/default-logger.d.ts +60 -0
- package/dist/config/logger/default-logger.js +142 -0
- package/dist/config/logger/default-logger.js.map +1 -0
- package/dist/config/logger/noop-logger.d.ts +11 -0
- package/dist/config/logger/noop-logger.js +25 -0
- package/dist/config/logger/noop-logger.js.map +1 -0
- package/dist/config/logger/typeorm-logger.d.ts +22 -0
- package/dist/config/logger/typeorm-logger.js +90 -0
- package/dist/config/logger/typeorm-logger.js.map +1 -0
- package/dist/config/merge-config.d.ts +26 -0
- package/dist/config/merge-config.js +58 -0
- package/dist/config/merge-config.js.map +1 -0
- package/dist/config/order/active-order-strategy.d.ts +184 -0
- package/dist/config/order/active-order-strategy.js +5 -0
- package/dist/config/order/active-order-strategy.js.map +1 -0
- package/dist/config/order/changed-price-handling-strategy.d.ts +32 -0
- package/dist/config/order/changed-price-handling-strategy.js +3 -0
- package/dist/config/order/changed-price-handling-strategy.js.map +1 -0
- package/dist/config/order/default-active-order-strategy.d.ts +22 -0
- package/dist/config/order/default-active-order-strategy.js +56 -0
- package/dist/config/order/default-active-order-strategy.js.map +1 -0
- package/dist/config/order/default-changed-price-handling-strategy.d.ts +11 -0
- package/dist/config/order/default-changed-price-handling-strategy.js +15 -0
- package/dist/config/order/default-changed-price-handling-strategy.js.map +1 -0
- package/dist/config/order/default-guest-checkout-strategy.d.ts +64 -0
- package/dist/config/order/default-guest-checkout-strategy.js +57 -0
- package/dist/config/order/default-guest-checkout-strategy.js.map +1 -0
- package/dist/config/order/default-order-item-price-calculation-strategy.d.ts +14 -0
- package/dist/config/order/default-order-item-price-calculation-strategy.js +20 -0
- package/dist/config/order/default-order-item-price-calculation-strategy.js.map +1 -0
- package/dist/config/order/default-order-placed-strategy.d.ts +14 -0
- package/dist/config/order/default-order-placed-strategy.js +20 -0
- package/dist/config/order/default-order-placed-strategy.js.map +1 -0
- package/dist/config/order/default-order-process.d.ts +149 -0
- package/dist/config/order/default-order-process.js +341 -0
- package/dist/config/order/default-order-process.js.map +1 -0
- package/dist/config/order/default-order-seller-strategy.d.ts +11 -0
- package/dist/config/order/default-order-seller-strategy.js +15 -0
- package/dist/config/order/default-order-seller-strategy.js.map +1 -0
- package/dist/config/order/default-stock-allocation-strategy.d.ts +14 -0
- package/dist/config/order/default-stock-allocation-strategy.js +18 -0
- package/dist/config/order/default-stock-allocation-strategy.js.map +1 -0
- package/dist/config/order/guest-checkout-strategy.d.ts +38 -0
- package/dist/config/order/guest-checkout-strategy.js +3 -0
- package/dist/config/order/guest-checkout-strategy.js.map +1 -0
- package/dist/config/order/merge-orders-strategy.d.ts +15 -0
- package/dist/config/order/merge-orders-strategy.js +38 -0
- package/dist/config/order/merge-orders-strategy.js.map +1 -0
- package/dist/config/order/order-by-code-access-strategy.d.ts +57 -0
- package/dist/config/order/order-by-code-access-strategy.js +40 -0
- package/dist/config/order/order-by-code-access-strategy.js.map +1 -0
- package/dist/config/order/order-code-strategy.d.ts +54 -0
- package/dist/config/order/order-code-strategy.js +19 -0
- package/dist/config/order/order-code-strategy.js.map +1 -0
- package/dist/config/order/order-item-price-calculation-strategy.d.ts +74 -0
- package/dist/config/order/order-item-price-calculation-strategy.js +3 -0
- package/dist/config/order/order-item-price-calculation-strategy.js.map +1 -0
- package/dist/config/order/order-merge-strategy.d.ts +45 -0
- package/dist/config/order/order-merge-strategy.js +12 -0
- package/dist/config/order/order-merge-strategy.js.map +1 -0
- package/dist/config/order/order-middleware.d.ts +20 -0
- package/dist/config/order/order-middleware.js +3 -0
- package/dist/config/order/order-middleware.js.map +1 -0
- package/dist/config/order/order-placed-strategy.d.ts +34 -0
- package/dist/config/order/order-placed-strategy.js +3 -0
- package/dist/config/order/order-placed-strategy.js.map +1 -0
- package/dist/config/order/order-process.d.ts +37 -0
- package/dist/config/order/order-process.js +3 -0
- package/dist/config/order/order-process.js.map +1 -0
- package/dist/config/order/order-seller-strategy.d.ts +63 -0
- package/dist/config/order/order-seller-strategy.js +3 -0
- package/dist/config/order/order-seller-strategy.js.map +1 -0
- package/dist/config/order/stock-allocation-strategy.d.ts +26 -0
- package/dist/config/order/stock-allocation-strategy.js +3 -0
- package/dist/config/order/stock-allocation-strategy.js.map +1 -0
- package/dist/config/order/use-existing-strategy.d.ts +13 -0
- package/dist/config/order/use-existing-strategy.js +18 -0
- package/dist/config/order/use-existing-strategy.js.map +1 -0
- package/dist/config/order/use-guest-if-existing-empty-strategy.d.ts +13 -0
- package/dist/config/order/use-guest-if-existing-empty-strategy.js +20 -0
- package/dist/config/order/use-guest-if-existing-empty-strategy.js.map +1 -0
- package/dist/config/order/use-guest-strategy.d.ts +13 -0
- package/dist/config/order/use-guest-strategy.js +18 -0
- package/dist/config/order/use-guest-strategy.js.map +1 -0
- package/dist/config/payment/default-payment-process.d.ts +16 -0
- package/dist/config/payment/default-payment-process.js +74 -0
- package/dist/config/payment/default-payment-process.js.map +1 -0
- package/dist/config/payment/dummy-payment-method-handler.d.ts +39 -0
- package/dist/config/payment/dummy-payment-method-handler.js +104 -0
- package/dist/config/payment/dummy-payment-method-handler.js.map +1 -0
- package/dist/config/payment/example-payment-method-handler.d.ts +15 -0
- package/dist/config/payment/example-payment-method-handler.js +68 -0
- package/dist/config/payment/example-payment-method-handler.js.map +1 -0
- package/dist/config/payment/payment-method-eligibility-checker.d.ts +60 -0
- package/dist/config/payment/payment-method-eligibility-checker.js +44 -0
- package/dist/config/payment/payment-method-eligibility-checker.js.map +1 -0
- package/dist/config/payment/payment-method-handler.d.ts +389 -0
- package/dist/config/payment/payment-method-handler.js +128 -0
- package/dist/config/payment/payment-method-handler.js.map +1 -0
- package/dist/config/payment/payment-process.d.ts +38 -0
- package/dist/config/payment/payment-process.js +3 -0
- package/dist/config/payment/payment-process.js.map +1 -0
- package/dist/config/promotion/actions/buy-x-get-y-free-action.d.ts +38 -0
- package/dist/config/promotion/actions/buy-x-get-y-free-action.js +29 -0
- package/dist/config/promotion/actions/buy-x-get-y-free-action.js.map +1 -0
- package/dist/config/promotion/actions/facet-values-percentage-discount-action.d.ts +17 -0
- package/dist/config/promotion/actions/facet-values-percentage-discount-action.js +44 -0
- package/dist/config/promotion/actions/facet-values-percentage-discount-action.js.map +1 -0
- package/dist/config/promotion/actions/free-shipping-action.d.ts +2 -0
- package/dist/config/promotion/actions/free-shipping-action.js +16 -0
- package/dist/config/promotion/actions/free-shipping-action.js.map +1 -0
- package/dist/config/promotion/actions/order-fixed-discount-action.d.ts +9 -0
- package/dist/config/promotion/actions/order-fixed-discount-action.js +26 -0
- package/dist/config/promotion/actions/order-fixed-discount-action.js.map +1 -0
- package/dist/config/promotion/actions/order-percentage-discount-action.d.ts +10 -0
- package/dist/config/promotion/actions/order-percentage-discount-action.js +27 -0
- package/dist/config/promotion/actions/order-percentage-discount-action.js.map +1 -0
- package/dist/config/promotion/actions/product-percentage-discount-action.d.ts +22 -0
- package/dist/config/promotion/actions/product-percentage-discount-action.js +43 -0
- package/dist/config/promotion/actions/product-percentage-discount-action.js.map +1 -0
- package/dist/config/promotion/conditions/buy-x-get-y-free-condition.d.ts +38 -0
- package/dist/config/promotion/conditions/buy-x-get-y-free-condition.js +91 -0
- package/dist/config/promotion/conditions/buy-x-get-y-free-condition.js.map +1 -0
- package/dist/config/promotion/conditions/contains-products-condition.d.ts +19 -0
- package/dist/config/promotion/conditions/contains-products-condition.js +41 -0
- package/dist/config/promotion/conditions/contains-products-condition.js.map +1 -0
- package/dist/config/promotion/conditions/customer-group-condition.d.ts +14 -0
- package/dist/config/promotion/conditions/customer-group-condition.js +61 -0
- package/dist/config/promotion/conditions/customer-group-condition.js.map +1 -0
- package/dist/config/promotion/conditions/has-facet-values-condition.d.ts +14 -0
- package/dist/config/promotion/conditions/has-facet-values-condition.js +38 -0
- package/dist/config/promotion/conditions/has-facet-values-condition.js.map +1 -0
- package/dist/config/promotion/conditions/min-order-amount-condition.d.ts +14 -0
- package/dist/config/promotion/conditions/min-order-amount-condition.js +32 -0
- package/dist/config/promotion/conditions/min-order-amount-condition.js.map +1 -0
- package/dist/config/promotion/index.d.ts +186 -0
- package/dist/config/promotion/index.js +58 -0
- package/dist/config/promotion/index.js.map +1 -0
- package/dist/config/promotion/promotion-action.d.ts +276 -0
- package/dist/config/promotion/promotion-action.js +127 -0
- package/dist/config/promotion/promotion-action.js.map +1 -0
- package/dist/config/promotion/promotion-condition.d.ts +65 -0
- package/dist/config/promotion/promotion-condition.js +34 -0
- package/dist/config/promotion/promotion-condition.js.map +1 -0
- package/dist/config/promotion/utils/facet-value-checker.d.ts +53 -0
- package/dist/config/promotion/utils/facet-value-checker.js +76 -0
- package/dist/config/promotion/utils/facet-value-checker.js.map +1 -0
- package/dist/config/refund/default-refund-process.d.ts +9 -0
- package/dist/config/refund/default-refund-process.js +51 -0
- package/dist/config/refund/default-refund-process.js.map +1 -0
- package/dist/config/refund/refund-process.d.ts +30 -0
- package/dist/config/refund/refund-process.js +3 -0
- package/dist/config/refund/refund-process.js.map +1 -0
- package/dist/config/session-cache/in-memory-session-cache-strategy.d.ts +24 -0
- package/dist/config/session-cache/in-memory-session-cache-strategy.js +60 -0
- package/dist/config/session-cache/in-memory-session-cache-strategy.js.map +1 -0
- package/dist/config/session-cache/noop-session-cache-strategy.d.ts +14 -0
- package/dist/config/session-cache/noop-session-cache-strategy.js +26 -0
- package/dist/config/session-cache/noop-session-cache-strategy.js.map +1 -0
- package/dist/config/session-cache/session-cache-strategy.d.ts +174 -0
- package/dist/config/session-cache/session-cache-strategy.js +3 -0
- package/dist/config/session-cache/session-cache-strategy.js.map +1 -0
- package/dist/config/shipping-method/default-shipping-calculator.d.ts +50 -0
- package/dist/config/shipping-method/default-shipping-calculator.js +79 -0
- package/dist/config/shipping-method/default-shipping-calculator.js.map +1 -0
- package/dist/config/shipping-method/default-shipping-eligibility-checker.d.ts +19 -0
- package/dist/config/shipping-method/default-shipping-eligibility-checker.js +34 -0
- package/dist/config/shipping-method/default-shipping-eligibility-checker.js.map +1 -0
- package/dist/config/shipping-method/default-shipping-line-assignment-strategy.d.ts +16 -0
- package/dist/config/shipping-method/default-shipping-line-assignment-strategy.js +18 -0
- package/dist/config/shipping-method/default-shipping-line-assignment-strategy.js.map +1 -0
- package/dist/config/shipping-method/shipping-calculator.d.ts +93 -0
- package/dist/config/shipping-method/shipping-calculator.js +53 -0
- package/dist/config/shipping-method/shipping-calculator.js.map +1 -0
- package/dist/config/shipping-method/shipping-eligibility-checker.d.ts +98 -0
- package/dist/config/shipping-method/shipping-eligibility-checker.js +75 -0
- package/dist/config/shipping-method/shipping-eligibility-checker.js.map +1 -0
- package/dist/config/shipping-method/shipping-line-assignment-strategy.d.ts +54 -0
- package/dist/config/shipping-method/shipping-line-assignment-strategy.js +3 -0
- package/dist/config/shipping-method/shipping-line-assignment-strategy.js.map +1 -0
- package/dist/config/system/error-handler-strategy.d.ts +75 -0
- package/dist/config/system/error-handler-strategy.js +3 -0
- package/dist/config/system/error-handler-strategy.js.map +1 -0
- package/dist/config/system/health-check-strategy.d.ts +53 -0
- package/dist/config/system/health-check-strategy.js +3 -0
- package/dist/config/system/health-check-strategy.js.map +1 -0
- package/dist/config/tax/default-tax-line-calculation-strategy.d.ts +12 -0
- package/dist/config/tax/default-tax-line-calculation-strategy.js +18 -0
- package/dist/config/tax/default-tax-line-calculation-strategy.js.map +1 -0
- package/dist/config/tax/default-tax-zone-strategy.d.ts +12 -0
- package/dist/config/tax/default-tax-zone-strategy.js +16 -0
- package/dist/config/tax/default-tax-zone-strategy.js.map +1 -0
- package/dist/config/tax/tax-line-calculation-strategy.d.ts +49 -0
- package/dist/config/tax/tax-line-calculation-strategy.js +3 -0
- package/dist/config/tax/tax-line-calculation-strategy.js.map +1 -0
- package/dist/config/tax/tax-zone-strategy.d.ts +29 -0
- package/dist/config/tax/tax-zone-strategy.js +3 -0
- package/dist/config/tax/tax-zone-strategy.js.map +1 -0
- package/dist/connection/connection.module.d.ts +7 -0
- package/dist/connection/connection.module.js +90 -0
- package/dist/connection/connection.module.js.map +1 -0
- package/dist/connection/find-options-object-to-array.d.ts +7 -0
- package/dist/connection/find-options-object-to-array.js +25 -0
- package/dist/connection/find-options-object-to-array.js.map +1 -0
- package/dist/connection/index.d.ts +4 -0
- package/dist/connection/index.js +21 -0
- package/dist/connection/index.js.map +1 -0
- package/dist/connection/transaction-subscriber.d.ts +51 -0
- package/dist/connection/transaction-subscriber.js +87 -0
- package/dist/connection/transaction-subscriber.js.map +1 -0
- package/dist/connection/transaction-wrapper.d.ts +33 -0
- package/dist/connection/transaction-wrapper.js +105 -0
- package/dist/connection/transaction-wrapper.js.map +1 -0
- package/dist/connection/transactional-connection.d.ts +132 -0
- package/dist/connection/transactional-connection.js +234 -0
- package/dist/connection/transactional-connection.js.map +1 -0
- package/dist/connection/types.d.ts +42 -0
- package/dist/connection/types.js +3 -0
- package/dist/connection/types.js.map +1 -0
- package/dist/data-import/data-import.module.d.ts +2 -0
- package/dist/data-import/data-import.module.js +50 -0
- package/dist/data-import/data-import.module.js.map +1 -0
- package/dist/data-import/index.d.ts +6 -0
- package/dist/data-import/index.js +23 -0
- package/dist/data-import/index.js.map +1 -0
- package/dist/data-import/providers/asset-importer/asset-importer.d.ts +28 -0
- package/dist/data-import/providers/asset-importer/asset-importer.js +75 -0
- package/dist/data-import/providers/asset-importer/asset-importer.js.map +1 -0
- package/dist/data-import/providers/import-parser/import-parser.d.ts +130 -0
- package/dist/data-import/providers/import-parser/import-parser.js +561 -0
- package/dist/data-import/providers/import-parser/import-parser.js.map +1 -0
- package/dist/data-import/providers/importer/fast-importer.service.d.ts +44 -0
- package/dist/data-import/providers/importer/fast-importer.service.js +205 -0
- package/dist/data-import/providers/importer/fast-importer.service.js.map +1 -0
- package/dist/data-import/providers/importer/importer.d.ts +65 -0
- package/dist/data-import/providers/importer/importer.js +353 -0
- package/dist/data-import/providers/importer/importer.js.map +1 -0
- package/dist/data-import/providers/populator/populator.d.ts +59 -0
- package/dist/data-import/providers/populator/populator.js +338 -0
- package/dist/data-import/providers/populator/populator.js.map +1 -0
- package/dist/data-import/types.d.ts +60 -0
- package/dist/data-import/types.js +3 -0
- package/dist/data-import/types.js.map +1 -0
- package/dist/entity/address/address.entity.d.ts +28 -0
- package/dist/entity/address/address.entity.js +88 -0
- package/dist/entity/address/address.entity.js.map +1 -0
- package/dist/entity/administrator/administrator.entity.d.ts +23 -0
- package/dist/entity/administrator/administrator.entity.js +60 -0
- package/dist/entity/administrator/administrator.entity.js.map +1 -0
- package/dist/entity/asset/asset.entity.d.ts +39 -0
- package/dist/entity/asset/asset.entity.js +101 -0
- package/dist/entity/asset/asset.entity.js.map +1 -0
- package/dist/entity/asset/orderable-asset.entity.d.ts +20 -0
- package/dist/entity/asset/orderable-asset.entity.js +45 -0
- package/dist/entity/asset/orderable-asset.entity.js.map +1 -0
- package/dist/entity/authentication-method/authentication-method.entity.d.ts +13 -0
- package/dist/entity/authentication-method/authentication-method.entity.js +36 -0
- package/dist/entity/authentication-method/authentication-method.entity.js.map +1 -0
- package/dist/entity/authentication-method/external-authentication-method.entity.d.ts +16 -0
- package/dist/entity/authentication-method/external-authentication-method.entity.js +45 -0
- package/dist/entity/authentication-method/external-authentication-method.entity.js.map +1 -0
- package/dist/entity/authentication-method/native-authentication-method.entity.d.ts +30 -0
- package/dist/entity/authentication-method/native-authentication-method.entity.js +57 -0
- package/dist/entity/authentication-method/native-authentication-method.entity.js.map +1 -0
- package/dist/entity/base/base.entity.d.ts +14 -0
- package/dist/entity/base/base.entity.js +50 -0
- package/dist/entity/base/base.entity.js.map +1 -0
- package/dist/entity/channel/channel.entity.d.ts +82 -0
- package/dist/entity/channel/channel.entity.js +182 -0
- package/dist/entity/channel/channel.entity.js.map +1 -0
- package/dist/entity/collection/collection-asset.entity.d.ts +8 -0
- package/dist/entity/collection/collection-asset.entity.js +37 -0
- package/dist/entity/collection/collection-asset.entity.js.map +1 -0
- package/dist/entity/collection/collection-translation.entity.d.ts +16 -0
- package/dist/entity/collection/collection-translation.entity.js +56 -0
- package/dist/entity/collection/collection-translation.entity.js.map +1 -0
- package/dist/entity/collection/collection.entity.d.ts +40 -0
- package/dist/entity/collection/collection.entity.js +100 -0
- package/dist/entity/collection/collection.entity.js.map +1 -0
- package/dist/entity/custom-entity-fields.d.ts +78 -0
- package/dist/entity/custom-entity-fields.js +121 -0
- package/dist/entity/custom-entity-fields.js.map +1 -0
- package/dist/entity/customer/customer.entity.d.ts +33 -0
- package/dist/entity/customer/customer.entity.js +90 -0
- package/dist/entity/customer/customer.entity.js.map +1 -0
- package/dist/entity/customer-group/customer-group.entity.d.ts +20 -0
- package/dist/entity/customer-group/customer-group.entity.js +51 -0
- package/dist/entity/customer-group/customer-group.entity.js.map +1 -0
- package/dist/entity/entities.d.ts +147 -0
- package/dist/entity/entities.js +151 -0
- package/dist/entity/entities.js.map +1 -0
- package/dist/entity/entity-id.decorator.d.ts +41 -0
- package/dist/entity/entity-id.decorator.js +61 -0
- package/dist/entity/entity-id.decorator.js.map +1 -0
- package/dist/entity/facet/facet-translation.entity.d.ts +14 -0
- package/dist/entity/facet/facet-translation.entity.js +47 -0
- package/dist/entity/facet/facet-translation.entity.js.map +1 -0
- package/dist/entity/facet/facet.entity.d.ts +29 -0
- package/dist/entity/facet/facet.entity.js +67 -0
- package/dist/entity/facet/facet.entity.js.map +1 -0
- package/dist/entity/facet-value/facet-value-translation.entity.d.ts +13 -0
- package/dist/entity/facet-value/facet-value-translation.entity.js +47 -0
- package/dist/entity/facet-value/facet-value-translation.entity.js.map +1 -0
- package/dist/entity/facet-value/facet-value.entity.d.ts +28 -0
- package/dist/entity/facet-value/facet-value.entity.js +74 -0
- package/dist/entity/facet-value/facet-value.entity.js.map +1 -0
- package/dist/entity/fulfillment/fulfillment.entity.d.ts +24 -0
- package/dist/entity/fulfillment/fulfillment.entity.js +63 -0
- package/dist/entity/fulfillment/fulfillment.entity.js.map +1 -0
- package/dist/entity/global-settings/global-settings.entity.d.ts +35 -0
- package/dist/entity/global-settings/global-settings.entity.js +47 -0
- package/dist/entity/global-settings/global-settings.entity.js.map +1 -0
- package/dist/entity/history-entry/customer-history-entry.entity.d.ts +13 -0
- package/dist/entity/history-entry/customer-history-entry.entity.js +37 -0
- package/dist/entity/history-entry/customer-history-entry.entity.js.map +1 -0
- package/dist/entity/history-entry/history-entry.entity.d.ts +16 -0
- package/dist/entity/history-entry/history-entry.entity.js +48 -0
- package/dist/entity/history-entry/history-entry.entity.js.map +1 -0
- package/dist/entity/history-entry/order-history-entry.entity.d.ts +13 -0
- package/dist/entity/history-entry/order-history-entry.entity.js +37 -0
- package/dist/entity/history-entry/order-history-entry.entity.js.map +1 -0
- package/dist/entity/index.d.ts +66 -0
- package/dist/entity/index.js +83 -0
- package/dist/entity/index.js.map +1 -0
- package/dist/entity/money.decorator.d.ts +28 -0
- package/dist/entity/money.decorator.js +37 -0
- package/dist/entity/money.decorator.js.map +1 -0
- package/dist/entity/order/order.entity.d.ts +135 -0
- package/dist/entity/order/order.entity.js +341 -0
- package/dist/entity/order/order.entity.js.map +1 -0
- package/dist/entity/order-line/order-line.entity.d.ts +201 -0
- package/dist/entity/order-line/order-line.entity.js +516 -0
- package/dist/entity/order-line/order-line.entity.js.map +1 -0
- package/dist/entity/order-line-reference/fulfillment-line.entity.d.ts +15 -0
- package/dist/entity/order-line-reference/fulfillment-line.entity.js +43 -0
- package/dist/entity/order-line-reference/fulfillment-line.entity.js.map +1 -0
- package/dist/entity/order-line-reference/order-line-reference.entity.d.ts +15 -0
- package/dist/entity/order-line-reference/order-line-reference.entity.js +46 -0
- package/dist/entity/order-line-reference/order-line-reference.entity.js.map +1 -0
- package/dist/entity/order-line-reference/order-modification-line.entity.d.ts +15 -0
- package/dist/entity/order-line-reference/order-modification-line.entity.js +43 -0
- package/dist/entity/order-line-reference/order-modification-line.entity.js.map +1 -0
- package/dist/entity/order-line-reference/refund-line.entity.d.ts +15 -0
- package/dist/entity/order-line-reference/refund-line.entity.js +43 -0
- package/dist/entity/order-line-reference/refund-line.entity.js.map +1 -0
- package/dist/entity/order-modification/order-modification.entity.d.ts +28 -0
- package/dist/entity/order-modification/order-modification.entity.js +91 -0
- package/dist/entity/order-modification/order-modification.entity.js.map +1 -0
- package/dist/entity/payment/payment.entity.d.ts +24 -0
- package/dist/entity/payment/payment.entity.js +68 -0
- package/dist/entity/payment/payment.entity.js.map +1 -0
- package/dist/entity/payment-method/payment-method-translation.entity.d.ts +15 -0
- package/dist/entity/payment-method/payment-method-translation.entity.js +56 -0
- package/dist/entity/payment-method/payment-method-translation.entity.js.map +1 -0
- package/dist/entity/payment-method/payment-method.entity.d.ts +27 -0
- package/dist/entity/payment-method/payment-method.entity.js +64 -0
- package/dist/entity/payment-method/payment-method.entity.js.map +1 -0
- package/dist/entity/product/product-asset.entity.d.ts +8 -0
- package/dist/entity/product/product-asset.entity.js +37 -0
- package/dist/entity/product/product-asset.entity.js.map +1 -0
- package/dist/entity/product/product-translation.entity.d.ts +16 -0
- package/dist/entity/product/product-translation.entity.js +54 -0
- package/dist/entity/product/product-translation.entity.js.map +1 -0
- package/dist/entity/product/product.entity.d.ts +35 -0
- package/dist/entity/product/product.entity.js +87 -0
- package/dist/entity/product/product.entity.js.map +1 -0
- package/dist/entity/product-option/product-option-translation.entity.d.ts +14 -0
- package/dist/entity/product-option/product-option-translation.entity.js +47 -0
- package/dist/entity/product-option/product-option-translation.entity.js.map +1 -0
- package/dist/entity/product-option/product-option.entity.d.ts +25 -0
- package/dist/entity/product-option/product-option.entity.js +65 -0
- package/dist/entity/product-option/product-option.entity.js.map +1 -0
- package/dist/entity/product-option-group/product-option-group-translation.entity.d.ts +14 -0
- package/dist/entity/product-option-group/product-option-group-translation.entity.js +47 -0
- package/dist/entity/product-option-group/product-option-group-translation.entity.js.map +1 -0
- package/dist/entity/product-option-group/product-option-group.entity.d.ts +24 -0
- package/dist/entity/product-option-group/product-option-group.entity.js +60 -0
- package/dist/entity/product-option-group/product-option-group.entity.js.map +1 -0
- package/dist/entity/product-variant/product-variant-asset.entity.d.ts +8 -0
- package/dist/entity/product-variant/product-variant-asset.entity.js +37 -0
- package/dist/entity/product-variant/product-variant-asset.entity.js.map +1 -0
- package/dist/entity/product-variant/product-variant-price.entity.d.ts +21 -0
- package/dist/entity/product-variant/product-variant-price.entity.js +58 -0
- package/dist/entity/product-variant/product-variant-price.entity.js.map +1 -0
- package/dist/entity/product-variant/product-variant-translation.entity.d.ts +14 -0
- package/dist/entity/product-variant/product-variant-translation.entity.js +47 -0
- package/dist/entity/product-variant/product-variant-translation.entity.js.map +1 -0
- package/dist/entity/product-variant/product-variant.entity.d.ts +82 -0
- package/dist/entity/product-variant/product-variant.entity.js +182 -0
- package/dist/entity/product-variant/product-variant.entity.js.map +1 -0
- package/dist/entity/promotion/promotion-translation.entity.d.ts +15 -0
- package/dist/entity/promotion/promotion-translation.entity.js +56 -0
- package/dist/entity/promotion/promotion-translation.entity.js.map +1 -0
- package/dist/entity/promotion/promotion.entity.d.ts +86 -0
- package/dist/entity/promotion/promotion.entity.js +198 -0
- package/dist/entity/promotion/promotion.entity.js.map +1 -0
- package/dist/entity/refund/refund.entity.d.ts +38 -0
- package/dist/entity/refund/refund.entity.js +85 -0
- package/dist/entity/refund/refund.entity.js.map +1 -0
- package/dist/entity/region/country.entity.d.ts +14 -0
- package/dist/entity/region/country.entity.js +34 -0
- package/dist/entity/region/country.entity.js.map +1 -0
- package/dist/entity/region/province.entity.d.ts +13 -0
- package/dist/entity/region/province.entity.js +33 -0
- package/dist/entity/region/province.entity.js.map +1 -0
- package/dist/entity/region/region-translation.entity.d.ts +14 -0
- package/dist/entity/region/region-translation.entity.js +47 -0
- package/dist/entity/region/region-translation.entity.js.map +1 -0
- package/dist/entity/region/region.entity.d.ts +30 -0
- package/dist/entity/region/region.entity.js +64 -0
- package/dist/entity/region/region.entity.js.map +1 -0
- package/dist/entity/register-custom-entity-fields.d.ts +6 -0
- package/dist/entity/register-custom-entity-fields.js +257 -0
- package/dist/entity/register-custom-entity-fields.js.map +1 -0
- package/dist/entity/role/role.entity.d.ts +19 -0
- package/dist/entity/role/role.entity.js +50 -0
- package/dist/entity/role/role.entity.js.map +1 -0
- package/dist/entity/run-entity-metadata-modifiers.d.ts +2 -0
- package/dist/entity/run-entity-metadata-modifiers.js +15 -0
- package/dist/entity/run-entity-metadata-modifiers.js.map +1 -0
- package/dist/entity/seller/seller.entity.d.ts +20 -0
- package/dist/entity/seller/seller.entity.js +50 -0
- package/dist/entity/seller/seller.entity.js.map +1 -0
- package/dist/entity/session/anonymous-session.entity.d.ts +13 -0
- package/dist/entity/session/anonymous-session.entity.js +33 -0
- package/dist/entity/session/anonymous-session.entity.js.map +1 -0
- package/dist/entity/session/authenticated-session.entity.d.ts +23 -0
- package/dist/entity/session/authenticated-session.entity.js +41 -0
- package/dist/entity/session/authenticated-session.entity.js.map +1 -0
- package/dist/entity/session/session.entity.d.ts +20 -0
- package/dist/entity/session/session.entity.js +63 -0
- package/dist/entity/session/session.entity.js.map +1 -0
- package/dist/entity/set-entity-id-strategy.d.ts +3 -0
- package/dist/entity/set-entity-id-strategy.js +28 -0
- package/dist/entity/set-entity-id-strategy.js.map +1 -0
- package/dist/entity/set-money-strategy.d.ts +3 -0
- package/dist/entity/set-money-strategy.js +16 -0
- package/dist/entity/set-money-strategy.js.map +1 -0
- package/dist/entity/shipping-line/shipping-line.entity.d.ts +38 -0
- package/dist/entity/shipping-line/shipping-line.entity.js +155 -0
- package/dist/entity/shipping-line/shipping-line.entity.js.map +1 -0
- package/dist/entity/shipping-method/shipping-method-translation.entity.d.ts +16 -0
- package/dist/entity/shipping-method/shipping-method-translation.entity.js +51 -0
- package/dist/entity/shipping-method/shipping-method-translation.entity.js.map +1 -0
- package/dist/entity/shipping-method/shipping-method.entity.d.ts +38 -0
- package/dist/entity/shipping-method/shipping-method.entity.js +103 -0
- package/dist/entity/shipping-method/shipping-method.entity.js.map +1 -0
- package/dist/entity/stock-level/stock-level.entity.d.ts +20 -0
- package/dist/entity/stock-level/stock-level.entity.js +62 -0
- package/dist/entity/stock-level/stock-level.entity.js.map +1 -0
- package/dist/entity/stock-location/stock-location.entity.d.ts +26 -0
- package/dist/entity/stock-location/stock-location.entity.js +60 -0
- package/dist/entity/stock-location/stock-location.entity.js.map +1 -0
- package/dist/entity/stock-movement/allocation.entity.d.ts +17 -0
- package/dist/entity/stock-movement/allocation.entity.js +41 -0
- package/dist/entity/stock-movement/allocation.entity.js.map +1 -0
- package/dist/entity/stock-movement/cancellation.entity.d.ts +16 -0
- package/dist/entity/stock-movement/cancellation.entity.js +39 -0
- package/dist/entity/stock-movement/cancellation.entity.js.map +1 -0
- package/dist/entity/stock-movement/release.entity.d.ts +17 -0
- package/dist/entity/stock-movement/release.entity.js +40 -0
- package/dist/entity/stock-movement/release.entity.js.map +1 -0
- package/dist/entity/stock-movement/sale.entity.d.ts +16 -0
- package/dist/entity/stock-movement/sale.entity.js +39 -0
- package/dist/entity/stock-movement/sale.entity.js.map +1 -0
- package/dist/entity/stock-movement/stock-adjustment.entity.d.ts +14 -0
- package/dist/entity/stock-movement/stock-adjustment.entity.js +34 -0
- package/dist/entity/stock-movement/stock-adjustment.entity.js.map +1 -0
- package/dist/entity/stock-movement/stock-movement.entity.d.ts +21 -0
- package/dist/entity/stock-movement/stock-movement.entity.js +57 -0
- package/dist/entity/stock-movement/stock-movement.entity.js.map +1 -0
- package/dist/entity/subscribers.d.ts +22 -0
- package/dist/entity/subscribers.js +60 -0
- package/dist/entity/subscribers.js.map +1 -0
- package/dist/entity/surcharge/surcharge.entity.d.ts +25 -0
- package/dist/entity/surcharge/surcharge.entity.js +99 -0
- package/dist/entity/surcharge/surcharge.entity.js.map +1 -0
- package/dist/entity/tag/tag.entity.d.ts +13 -0
- package/dist/entity/tag/tag.entity.js +36 -0
- package/dist/entity/tag/tag.entity.js.map +1 -0
- package/dist/entity/tax-category/tax-category.entity.d.ts +20 -0
- package/dist/entity/tax-category/tax-category.entity.js +54 -0
- package/dist/entity/tax-category/tax-category.entity.js.map +1 -0
- package/dist/entity/tax-rate/tax-rate.entity.d.ts +46 -0
- package/dist/entity/tax-rate/tax-rate.entity.js +112 -0
- package/dist/entity/tax-rate/tax-rate.entity.js.map +1 -0
- package/dist/entity/user/user.entity.d.ts +29 -0
- package/dist/entity/user/user.entity.js +81 -0
- package/dist/entity/user/user.entity.js.map +1 -0
- package/dist/entity/validate-custom-fields-config.d.ts +10 -0
- package/dist/entity/validate-custom-fields-config.js +131 -0
- package/dist/entity/validate-custom-fields-config.js.map +1 -0
- package/dist/entity/value-transformers.d.ts +8 -0
- package/dist/entity/value-transformers.js +16 -0
- package/dist/entity/value-transformers.js.map +1 -0
- package/dist/entity/zone/zone.entity.d.ts +23 -0
- package/dist/entity/zone/zone.entity.js +61 -0
- package/dist/entity/zone/zone.entity.js.map +1 -0
- package/dist/event-bus/deenruv-entity-event.d.ts +16 -0
- package/dist/event-bus/deenruv-entity-event.js +22 -0
- package/dist/event-bus/deenruv-entity-event.js.map +1 -0
- package/dist/event-bus/deenruv-event.d.ts +10 -0
- package/dist/event-bus/deenruv-event.js +16 -0
- package/dist/event-bus/deenruv-event.js.map +1 -0
- package/dist/event-bus/event-bus.d.ts +179 -0
- package/dist/event-bus/event-bus.js +278 -0
- package/dist/event-bus/event-bus.js.map +1 -0
- package/dist/event-bus/event-bus.module.d.ts +2 -0
- package/dist/event-bus/event-bus.module.js +23 -0
- package/dist/event-bus/event-bus.module.js.map +1 -0
- package/dist/event-bus/events/account-registration-event.d.ts +16 -0
- package/dist/event-bus/events/account-registration-event.js +21 -0
- package/dist/event-bus/events/account-registration-event.js.map +1 -0
- package/dist/event-bus/events/account-verified-event.d.ts +16 -0
- package/dist/event-bus/events/account-verified-event.js +21 -0
- package/dist/event-bus/events/account-verified-event.js.map +1 -0
- package/dist/event-bus/events/administrator-event.d.ts +18 -0
- package/dist/event-bus/events/administrator-event.js +19 -0
- package/dist/event-bus/events/administrator-event.js.map +1 -0
- package/dist/event-bus/events/asset-channel-event.d.ts +19 -0
- package/dist/event-bus/events/asset-channel-event.js +23 -0
- package/dist/event-bus/events/asset-channel-event.js.map +1 -0
- package/dist/event-bus/events/asset-event.d.ts +25 -0
- package/dist/event-bus/events/asset-event.js +28 -0
- package/dist/event-bus/events/asset-event.js.map +1 -0
- package/dist/event-bus/events/attempted-login-event.d.ts +17 -0
- package/dist/event-bus/events/attempted-login-event.js +23 -0
- package/dist/event-bus/events/attempted-login-event.js.map +1 -0
- package/dist/event-bus/events/change-channel-event.d.ts +22 -0
- package/dist/event-bus/events/change-channel-event.js +25 -0
- package/dist/event-bus/events/change-channel-event.js.map +1 -0
- package/dist/event-bus/events/channel-event.d.ts +18 -0
- package/dist/event-bus/events/channel-event.js +19 -0
- package/dist/event-bus/events/channel-event.js.map +1 -0
- package/dist/event-bus/events/collection-event.d.ts +18 -0
- package/dist/event-bus/events/collection-event.js +19 -0
- package/dist/event-bus/events/collection-event.js.map +1 -0
- package/dist/event-bus/events/collection-modification-event.d.ts +21 -0
- package/dist/event-bus/events/collection-modification-event.js +25 -0
- package/dist/event-bus/events/collection-modification-event.js.map +1 -0
- package/dist/event-bus/events/country-event.d.ts +18 -0
- package/dist/event-bus/events/country-event.js +19 -0
- package/dist/event-bus/events/country-event.js.map +1 -0
- package/dist/event-bus/events/coupon-code-event.d.ts +19 -0
- package/dist/event-bus/events/coupon-code-event.js +24 -0
- package/dist/event-bus/events/coupon-code-event.js.map +1 -0
- package/dist/event-bus/events/customer-address-event.d.ts +32 -0
- package/dist/event-bus/events/customer-address-event.js +32 -0
- package/dist/event-bus/events/customer-address-event.js.map +1 -0
- package/dist/event-bus/events/customer-event.d.ts +27 -0
- package/dist/event-bus/events/customer-event.js +28 -0
- package/dist/event-bus/events/customer-event.js.map +1 -0
- package/dist/event-bus/events/customer-group-change-event.d.ts +20 -0
- package/dist/event-bus/events/customer-group-change-event.js +24 -0
- package/dist/event-bus/events/customer-group-change-event.js.map +1 -0
- package/dist/event-bus/events/customer-group-event.d.ts +18 -0
- package/dist/event-bus/events/customer-group-event.js +19 -0
- package/dist/event-bus/events/customer-group-event.js.map +1 -0
- package/dist/event-bus/events/facet-event.d.ts +18 -0
- package/dist/event-bus/events/facet-event.js +19 -0
- package/dist/event-bus/events/facet-event.js.map +1 -0
- package/dist/event-bus/events/facet-value-event.d.ts +18 -0
- package/dist/event-bus/events/facet-value-event.js +19 -0
- package/dist/event-bus/events/facet-value-event.js.map +1 -0
- package/dist/event-bus/events/fulfillment-event.d.ts +27 -0
- package/dist/event-bus/events/fulfillment-event.js +19 -0
- package/dist/event-bus/events/fulfillment-event.js.map +1 -0
- package/dist/event-bus/events/fulfillment-state-transition-event.d.ts +18 -0
- package/dist/event-bus/events/fulfillment-state-transition-event.js +22 -0
- package/dist/event-bus/events/fulfillment-state-transition-event.js.map +1 -0
- package/dist/event-bus/events/global-settings-event.d.ts +16 -0
- package/dist/event-bus/events/global-settings-event.js +20 -0
- package/dist/event-bus/events/global-settings-event.js.map +1 -0
- package/dist/event-bus/events/history-entry-event.d.ts +22 -0
- package/dist/event-bus/events/history-entry-event.js +20 -0
- package/dist/event-bus/events/history-entry-event.js.map +1 -0
- package/dist/event-bus/events/identifier-change-event.d.ts +17 -0
- package/dist/event-bus/events/identifier-change-event.js +22 -0
- package/dist/event-bus/events/identifier-change-event.js.map +1 -0
- package/dist/event-bus/events/identifier-change-request-event.d.ts +16 -0
- package/dist/event-bus/events/identifier-change-request-event.js +21 -0
- package/dist/event-bus/events/identifier-change-request-event.js.map +1 -0
- package/dist/event-bus/events/initializer-event.d.ts +12 -0
- package/dist/event-bus/events/initializer-event.js +19 -0
- package/dist/event-bus/events/initializer-event.js.map +1 -0
- package/dist/event-bus/events/login-event.d.ts +15 -0
- package/dist/event-bus/events/login-event.js +20 -0
- package/dist/event-bus/events/login-event.js.map +1 -0
- package/dist/event-bus/events/logout-event.d.ts +13 -0
- package/dist/event-bus/events/logout-event.js +19 -0
- package/dist/event-bus/events/logout-event.js.map +1 -0
- package/dist/event-bus/events/order-event.d.ts +17 -0
- package/dist/event-bus/events/order-event.js +22 -0
- package/dist/event-bus/events/order-event.js.map +1 -0
- package/dist/event-bus/events/order-line-event.d.ts +18 -0
- package/dist/event-bus/events/order-line-event.js +23 -0
- package/dist/event-bus/events/order-line-event.js.map +1 -0
- package/dist/event-bus/events/order-placed-event.d.ts +22 -0
- package/dist/event-bus/events/order-placed-event.js +26 -0
- package/dist/event-bus/events/order-placed-event.js.map +1 -0
- package/dist/event-bus/events/order-state-transition-event.d.ts +18 -0
- package/dist/event-bus/events/order-state-transition-event.js +22 -0
- package/dist/event-bus/events/order-state-transition-event.js.map +1 -0
- package/dist/event-bus/events/password-reset-event.d.ts +15 -0
- package/dist/event-bus/events/password-reset-event.js +20 -0
- package/dist/event-bus/events/password-reset-event.js.map +1 -0
- package/dist/event-bus/events/password-reset-verified-event.d.ts +16 -0
- package/dist/event-bus/events/password-reset-verified-event.js +21 -0
- package/dist/event-bus/events/password-reset-verified-event.js.map +1 -0
- package/dist/event-bus/events/payment-method-event.d.ts +18 -0
- package/dist/event-bus/events/payment-method-event.js +19 -0
- package/dist/event-bus/events/payment-method-event.js.map +1 -0
- package/dist/event-bus/events/payment-state-transition-event.d.ts +21 -0
- package/dist/event-bus/events/payment-state-transition-event.js +24 -0
- package/dist/event-bus/events/payment-state-transition-event.js.map +1 -0
- package/dist/event-bus/events/product-channel-event.d.ts +19 -0
- package/dist/event-bus/events/product-channel-event.js +23 -0
- package/dist/event-bus/events/product-channel-event.js.map +1 -0
- package/dist/event-bus/events/product-event.d.ts +25 -0
- package/dist/event-bus/events/product-event.js +28 -0
- package/dist/event-bus/events/product-event.js.map +1 -0
- package/dist/event-bus/events/product-option-event.d.ts +18 -0
- package/dist/event-bus/events/product-option-event.js +19 -0
- package/dist/event-bus/events/product-option-event.js.map +1 -0
- package/dist/event-bus/events/product-option-group-change-event.d.ts +19 -0
- package/dist/event-bus/events/product-option-group-change-event.js +23 -0
- package/dist/event-bus/events/product-option-group-change-event.js.map +1 -0
- package/dist/event-bus/events/product-option-group-event.d.ts +18 -0
- package/dist/event-bus/events/product-option-group-event.js +19 -0
- package/dist/event-bus/events/product-option-group-event.js.map +1 -0
- package/dist/event-bus/events/product-variant-channel-event.d.ts +18 -0
- package/dist/event-bus/events/product-variant-channel-event.js +22 -0
- package/dist/event-bus/events/product-variant-channel-event.js.map +1 -0
- package/dist/event-bus/events/product-variant-event.d.ts +25 -0
- package/dist/event-bus/events/product-variant-event.js +28 -0
- package/dist/event-bus/events/product-variant-event.js.map +1 -0
- package/dist/event-bus/events/product-variant-price-event.d.ts +16 -0
- package/dist/event-bus/events/product-variant-price-event.js +19 -0
- package/dist/event-bus/events/product-variant-price-event.js.map +1 -0
- package/dist/event-bus/events/promotion-event.d.ts +18 -0
- package/dist/event-bus/events/promotion-event.js +19 -0
- package/dist/event-bus/events/promotion-event.js.map +1 -0
- package/dist/event-bus/events/refund-event.d.ts +17 -0
- package/dist/event-bus/events/refund-event.js +22 -0
- package/dist/event-bus/events/refund-event.js.map +1 -0
- package/dist/event-bus/events/refund-state-transition-event.d.ts +20 -0
- package/dist/event-bus/events/refund-state-transition-event.js +23 -0
- package/dist/event-bus/events/refund-state-transition-event.js.map +1 -0
- package/dist/event-bus/events/role-change-event.d.ts +20 -0
- package/dist/event-bus/events/role-change-event.js +24 -0
- package/dist/event-bus/events/role-change-event.js.map +1 -0
- package/dist/event-bus/events/role-event.d.ts +18 -0
- package/dist/event-bus/events/role-event.js +19 -0
- package/dist/event-bus/events/role-event.js.map +1 -0
- package/dist/event-bus/events/search-event.d.ts +20 -0
- package/dist/event-bus/events/search-event.js +21 -0
- package/dist/event-bus/events/search-event.js.map +1 -0
- package/dist/event-bus/events/seller-event.d.ts +18 -0
- package/dist/event-bus/events/seller-event.js +19 -0
- package/dist/event-bus/events/seller-event.js.map +1 -0
- package/dist/event-bus/events/shipping-method-event.d.ts +18 -0
- package/dist/event-bus/events/shipping-method-event.js +19 -0
- package/dist/event-bus/events/shipping-method-event.js.map +1 -0
- package/dist/event-bus/events/stock-movement-event.d.ts +19 -0
- package/dist/event-bus/events/stock-movement-event.js +24 -0
- package/dist/event-bus/events/stock-movement-event.js.map +1 -0
- package/dist/event-bus/events/tax-category-event.d.ts +18 -0
- package/dist/event-bus/events/tax-category-event.js +19 -0
- package/dist/event-bus/events/tax-category-event.js.map +1 -0
- package/dist/event-bus/events/tax-rate-event.d.ts +18 -0
- package/dist/event-bus/events/tax-rate-event.js +19 -0
- package/dist/event-bus/events/tax-rate-event.js.map +1 -0
- package/dist/event-bus/events/tax-rate-modification-event.d.ts +16 -0
- package/dist/event-bus/events/tax-rate-modification-event.js +21 -0
- package/dist/event-bus/events/tax-rate-modification-event.js.map +1 -0
- package/dist/event-bus/events/zone-event.d.ts +18 -0
- package/dist/event-bus/events/zone-event.js +19 -0
- package/dist/event-bus/events/zone-event.js.map +1 -0
- package/dist/event-bus/events/zone-members-event.d.ts +19 -0
- package/dist/event-bus/events/zone-members-event.js +23 -0
- package/dist/event-bus/events/zone-members-event.js.map +1 -0
- package/dist/event-bus/index.d.ts +61 -0
- package/dist/event-bus/index.js +78 -0
- package/dist/event-bus/index.js.map +1 -0
- package/dist/health-check/constants.d.ts +1 -0
- package/dist/health-check/constants.js +5 -0
- package/dist/health-check/constants.js.map +1 -0
- package/dist/health-check/health-check-registry.service.d.ts +57 -0
- package/dist/health-check/health-check-registry.service.js +68 -0
- package/dist/health-check/health-check-registry.service.js.map +1 -0
- package/dist/health-check/health-check.controller.d.ts +8 -0
- package/dist/health-check/health-check.controller.js +39 -0
- package/dist/health-check/health-check.controller.js.map +1 -0
- package/dist/health-check/health-check.module.d.ts +7 -0
- package/dist/health-check/health-check.module.js +42 -0
- package/dist/health-check/health-check.module.js.map +1 -0
- package/dist/health-check/http-health-check-strategy.d.ts +51 -0
- package/dist/health-check/http-health-check-strategy.js +93 -0
- package/dist/health-check/http-health-check-strategy.js.map +1 -0
- package/dist/health-check/index.d.ts +4 -0
- package/dist/health-check/index.js +21 -0
- package/dist/health-check/index.js.map +1 -0
- package/dist/health-check/typeorm-health-check-strategy.d.ts +38 -0
- package/dist/health-check/typeorm-health-check-strategy.js +48 -0
- package/dist/health-check/typeorm-health-check-strategy.js.map +1 -0
- package/dist/i18n/i18n-error.d.ts +26 -0
- package/dist/i18n/i18n-error.js +31 -0
- package/dist/i18n/i18n-error.js.map +1 -0
- package/dist/i18n/i18n.module.d.ts +2 -0
- package/dist/i18n/i18n.module.js +23 -0
- package/dist/i18n/i18n.module.js.map +1 -0
- package/dist/i18n/i18n.service.d.ts +73 -0
- package/dist/i18n/i18n.service.js +171 -0
- package/dist/i18n/i18n.service.js.map +1 -0
- package/dist/i18n/index.d.ts +2 -0
- package/dist/i18n/index.js +19 -0
- package/dist/i18n/index.js.map +1 -0
- package/dist/i18n/messages/de.json +116 -0
- package/dist/i18n/messages/en.json +139 -0
- package/dist/i18n/messages/es.json +38 -0
- package/dist/i18n/messages/fr.json +138 -0
- package/dist/i18n/messages/pt_BR.json +99 -0
- package/dist/i18n/messages/pt_PT.json +118 -0
- package/dist/i18n/messages/ru.json +118 -0
- package/dist/i18n/messages/uk.json +118 -0
- package/dist/index.d.ts +20 -0
- package/dist/index.js +49 -0
- package/dist/index.js.map +1 -0
- package/dist/job-queue/constants.d.ts +1 -0
- package/dist/job-queue/constants.js +5 -0
- package/dist/job-queue/constants.js.map +1 -0
- package/dist/job-queue/in-memory-job-queue-strategy.d.ts +59 -0
- package/dist/job-queue/in-memory-job-queue-strategy.js +215 -0
- package/dist/job-queue/in-memory-job-queue-strategy.js.map +1 -0
- package/dist/job-queue/index.d.ts +11 -0
- package/dist/job-queue/index.js +28 -0
- package/dist/job-queue/index.js.map +1 -0
- package/dist/job-queue/injectable-job-queue-strategy.d.ts +27 -0
- package/dist/job-queue/injectable-job-queue-strategy.js +36 -0
- package/dist/job-queue/injectable-job-queue-strategy.js.map +1 -0
- package/dist/job-queue/job-buffer/in-memory-job-buffer-storage-strategy.d.ts +25 -0
- package/dist/job-queue/job-buffer/in-memory-job-buffer-storage-strategy.js +59 -0
- package/dist/job-queue/job-buffer/in-memory-job-buffer-storage-strategy.js.map +1 -0
- package/dist/job-queue/job-buffer/job-buffer-storage-strategy.d.ts +62 -0
- package/dist/job-queue/job-buffer/job-buffer-storage-strategy.js +3 -0
- package/dist/job-queue/job-buffer/job-buffer-storage-strategy.js.map +1 -0
- package/dist/job-queue/job-buffer/job-buffer.d.ts +98 -0
- package/dist/job-queue/job-buffer/job-buffer.js +3 -0
- package/dist/job-queue/job-buffer/job-buffer.js.map +1 -0
- package/dist/job-queue/job-buffer/job-buffer.service.d.ts +21 -0
- package/dist/job-queue/job-buffer/job-buffer.service.js +82 -0
- package/dist/job-queue/job-buffer/job-buffer.service.js.map +1 -0
- package/dist/job-queue/job-queue.d.ts +63 -0
- package/dist/job-queue/job-queue.js +99 -0
- package/dist/job-queue/job-queue.js.map +1 -0
- package/dist/job-queue/job-queue.module.d.ts +2 -0
- package/dist/job-queue/job-queue.module.js +24 -0
- package/dist/job-queue/job-queue.module.js.map +1 -0
- package/dist/job-queue/job-queue.service.d.ts +122 -0
- package/dist/job-queue/job-queue.service.js +195 -0
- package/dist/job-queue/job-queue.service.js.map +1 -0
- package/dist/job-queue/job.d.ts +99 -0
- package/dist/job-queue/job.js +213 -0
- package/dist/job-queue/job.js.map +1 -0
- package/dist/job-queue/polling-job-queue-strategy.d.ts +116 -0
- package/dist/job-queue/polling-job-queue-strategy.js +211 -0
- package/dist/job-queue/polling-job-queue-strategy.js.map +1 -0
- package/dist/job-queue/queue-name-process-storage.d.ts +7 -0
- package/dist/job-queue/queue-name-process-storage.js +40 -0
- package/dist/job-queue/queue-name-process-storage.js.map +1 -0
- package/dist/job-queue/subscribable-job.d.ts +55 -0
- package/dist/job-queue/subscribable-job.js +71 -0
- package/dist/job-queue/subscribable-job.js.map +1 -0
- package/dist/job-queue/types.d.ts +58 -0
- package/dist/job-queue/types.js +3 -0
- package/dist/job-queue/types.js.map +1 -0
- package/dist/migrate.d.ts +45 -0
- package/dist/migrate.js +239 -0
- package/dist/migrate.js.map +1 -0
- package/dist/plugin/deenruv-plugin.d.ts +138 -0
- package/dist/plugin/deenruv-plugin.js +84 -0
- package/dist/plugin/deenruv-plugin.js.map +1 -0
- package/dist/plugin/default-job-queue-plugin/default-job-queue-plugin.d.ts +177 -0
- package/dist/plugin/default-job-queue-plugin/default-job-queue-plugin.js +141 -0
- package/dist/plugin/default-job-queue-plugin/default-job-queue-plugin.js.map +1 -0
- package/dist/plugin/default-job-queue-plugin/job-record-buffer.entity.d.ts +8 -0
- package/dist/plugin/default-job-queue-plugin/job-record-buffer.entity.js +33 -0
- package/dist/plugin/default-job-queue-plugin/job-record-buffer.entity.js.map +1 -0
- package/dist/plugin/default-job-queue-plugin/job-record.entity.d.ts +17 -0
- package/dist/plugin/default-job-queue-plugin/job-record.entity.js +70 -0
- package/dist/plugin/default-job-queue-plugin/job-record.entity.js.map +1 -0
- package/dist/plugin/default-job-queue-plugin/sql-job-buffer-storage-strategy.d.ts +19 -0
- package/dist/plugin/default-job-queue-plugin/sql-job-buffer-storage-strategy.js +70 -0
- package/dist/plugin/default-job-queue-plugin/sql-job-buffer-storage-strategy.js.map +1 -0
- package/dist/plugin/default-job-queue-plugin/sql-job-queue-strategy.d.ts +36 -0
- package/dist/plugin/default-job-queue-plugin/sql-job-queue-strategy.js +225 -0
- package/dist/plugin/default-job-queue-plugin/sql-job-queue-strategy.js.map +1 -0
- package/dist/plugin/default-search-plugin/api/api-extensions.d.ts +2 -0
- package/dist/plugin/default-search-plugin/api/api-extensions.js +17 -0
- package/dist/plugin/default-search-plugin/api/api-extensions.js.map +1 -0
- package/dist/plugin/default-search-plugin/api/fulltext-search.resolver.d.ts +46 -0
- package/dist/plugin/default-search-plugin/api/fulltext-search.resolver.js +154 -0
- package/dist/plugin/default-search-plugin/api/fulltext-search.resolver.js.map +1 -0
- package/dist/plugin/default-search-plugin/constants.d.ts +2 -0
- package/dist/plugin/default-search-plugin/constants.js +6 -0
- package/dist/plugin/default-search-plugin/constants.js.map +1 -0
- package/dist/plugin/default-search-plugin/default-search-plugin.d.ts +67 -0
- package/dist/plugin/default-search-plugin/default-search-plugin.js +223 -0
- package/dist/plugin/default-search-plugin/default-search-plugin.js.map +1 -0
- package/dist/plugin/default-search-plugin/entities/search-index-item.entity.d.ts +36 -0
- package/dist/plugin/default-search-plugin/entities/search-index-item.entity.js +126 -0
- package/dist/plugin/default-search-plugin/entities/search-index-item.entity.js.map +1 -0
- package/dist/plugin/default-search-plugin/fulltext-search.service.d.ts +58 -0
- package/dist/plugin/default-search-plugin/fulltext-search.service.js +138 -0
- package/dist/plugin/default-search-plugin/fulltext-search.service.js.map +1 -0
- package/dist/plugin/default-search-plugin/index.d.ts +12 -0
- package/dist/plugin/default-search-plugin/index.js +29 -0
- package/dist/plugin/default-search-plugin/index.js.map +1 -0
- package/dist/plugin/default-search-plugin/indexer/indexer.controller.d.ts +65 -0
- package/dist/plugin/default-search-plugin/indexer/indexer.controller.js +547 -0
- package/dist/plugin/default-search-plugin/indexer/indexer.controller.js.map +1 -0
- package/dist/plugin/default-search-plugin/indexer/mutable-request-context.d.ts +20 -0
- package/dist/plugin/default-search-plugin/indexer/mutable-request-context.js +46 -0
- package/dist/plugin/default-search-plugin/indexer/mutable-request-context.js.map +1 -0
- package/dist/plugin/default-search-plugin/indexer/search-index.service.d.ts +32 -0
- package/dist/plugin/default-search-plugin/indexer/search-index.service.js +166 -0
- package/dist/plugin/default-search-plugin/indexer/search-index.service.js.map +1 -0
- package/dist/plugin/default-search-plugin/search-job-buffer/collection-job-buffer.d.ts +8 -0
- package/dist/plugin/default-search-plugin/search-job-buffer/collection-job-buffer.js +27 -0
- package/dist/plugin/default-search-plugin/search-job-buffer/collection-job-buffer.js.map +1 -0
- package/dist/plugin/default-search-plugin/search-job-buffer/search-index-job-buffer.d.ts +13 -0
- package/dist/plugin/default-search-plugin/search-job-buffer/search-index-job-buffer.js +66 -0
- package/dist/plugin/default-search-plugin/search-job-buffer/search-index-job-buffer.js.map +1 -0
- package/dist/plugin/default-search-plugin/search-job-buffer/search-job-buffer.service.d.ts +16 -0
- package/dist/plugin/default-search-plugin/search-job-buffer/search-job-buffer.service.js +74 -0
- package/dist/plugin/default-search-plugin/search-job-buffer/search-job-buffer.service.js.map +1 -0
- package/dist/plugin/default-search-plugin/search-strategy/mysql-search-strategy.d.ts +28 -0
- package/dist/plugin/default-search-plugin/search-strategy/mysql-search-strategy.js +251 -0
- package/dist/plugin/default-search-plugin/search-strategy/mysql-search-strategy.js.map +1 -0
- package/dist/plugin/default-search-plugin/search-strategy/postgres-search-strategy.d.ts +28 -0
- package/dist/plugin/default-search-plugin/search-strategy/postgres-search-strategy.js +238 -0
- package/dist/plugin/default-search-plugin/search-strategy/postgres-search-strategy.js.map +1 -0
- package/dist/plugin/default-search-plugin/search-strategy/search-strategy-common.d.ts +2 -0
- package/dist/plugin/default-search-plugin/search-strategy/search-strategy-common.js +33 -0
- package/dist/plugin/default-search-plugin/search-strategy/search-strategy-common.js.map +1 -0
- package/dist/plugin/default-search-plugin/search-strategy/search-strategy-utils.d.ts +31 -0
- package/dist/plugin/default-search-plugin/search-strategy/search-strategy-utils.js +139 -0
- package/dist/plugin/default-search-plugin/search-strategy/search-strategy-utils.js.map +1 -0
- package/dist/plugin/default-search-plugin/search-strategy/search-strategy.d.ts +32 -0
- package/dist/plugin/default-search-plugin/search-strategy/search-strategy.js +3 -0
- package/dist/plugin/default-search-plugin/search-strategy/search-strategy.js.map +1 -0
- package/dist/plugin/default-search-plugin/search-strategy/sqlite-search-strategy.d.ts +25 -0
- package/dist/plugin/default-search-plugin/search-strategy/sqlite-search-strategy.js +201 -0
- package/dist/plugin/default-search-plugin/search-strategy/sqlite-search-strategy.js.map +1 -0
- package/dist/plugin/default-search-plugin/types.d.ts +179 -0
- package/dist/plugin/default-search-plugin/types.js +3 -0
- package/dist/plugin/default-search-plugin/types.js.map +1 -0
- package/dist/plugin/dynamic-plugin-api.module.d.ts +11 -0
- package/dist/plugin/dynamic-plugin-api.module.js +52 -0
- package/dist/plugin/dynamic-plugin-api.module.js.map +1 -0
- package/dist/plugin/index.d.ts +7 -0
- package/dist/plugin/index.js +24 -0
- package/dist/plugin/index.js.map +1 -0
- package/dist/plugin/plugin-common.module.d.ts +18 -0
- package/dist/plugin/plugin-common.module.js +68 -0
- package/dist/plugin/plugin-common.module.js.map +1 -0
- package/dist/plugin/plugin-metadata.d.ts +22 -0
- package/dist/plugin/plugin-metadata.js +73 -0
- package/dist/plugin/plugin-metadata.js.map +1 -0
- package/dist/plugin/plugin-utils.d.ts +79 -0
- package/dist/plugin/plugin-utils.js +82 -0
- package/dist/plugin/plugin-utils.js.map +1 -0
- package/dist/plugin/plugin.module.d.ts +8 -0
- package/dist/plugin/plugin.module.js +32 -0
- package/dist/plugin/plugin.module.js.map +1 -0
- package/dist/process-context/index.d.ts +1 -0
- package/dist/process-context/index.js +6 -0
- package/dist/process-context/index.js.map +1 -0
- package/dist/process-context/process-context.d.ts +39 -0
- package/dist/process-context/process-context.js +50 -0
- package/dist/process-context/process-context.js.map +1 -0
- package/dist/process-context/process-context.module.d.ts +2 -0
- package/dist/process-context/process-context.module.js +22 -0
- package/dist/process-context/process-context.module.js.map +1 -0
- package/dist/service/helpers/active-order/active-order.service.d.ts +43 -0
- package/dist/service/helpers/active-order/active-order.service.js +109 -0
- package/dist/service/helpers/active-order/active-order.service.js.map +1 -0
- package/dist/service/helpers/config-arg/config-arg.service.d.ts +39 -0
- package/dist/service/helpers/config-arg/config-arg.service.js +102 -0
- package/dist/service/helpers/config-arg/config-arg.service.js.map +1 -0
- package/dist/service/helpers/custom-field-relation/custom-field-relation.service.d.ts +24 -0
- package/dist/service/helpers/custom-field-relation/custom-field-relation.service.js +86 -0
- package/dist/service/helpers/custom-field-relation/custom-field-relation.service.js.map +1 -0
- package/dist/service/helpers/entity-duplicator/entity-duplicator.service.d.ts +30 -0
- package/dist/service/helpers/entity-duplicator/entity-duplicator.service.js +94 -0
- package/dist/service/helpers/entity-duplicator/entity-duplicator.service.js.map +1 -0
- package/dist/service/helpers/entity-hydrator/entity-hydrator-types.d.ts +28 -0
- package/dist/service/helpers/entity-hydrator/entity-hydrator-types.js +3 -0
- package/dist/service/helpers/entity-hydrator/entity-hydrator-types.js.map +1 -0
- package/dist/service/helpers/entity-hydrator/entity-hydrator.service.d.ts +105 -0
- package/dist/service/helpers/entity-hydrator/entity-hydrator.service.js +292 -0
- package/dist/service/helpers/entity-hydrator/entity-hydrator.service.js.map +1 -0
- package/dist/service/helpers/entity-hydrator/merge-deep.d.ts +9 -0
- package/dist/service/helpers/entity-hydrator/merge-deep.js +53 -0
- package/dist/service/helpers/entity-hydrator/merge-deep.js.map +1 -0
- package/dist/service/helpers/external-authentication/external-authentication.service.d.ts +73 -0
- package/dist/service/helpers/external-authentication/external-authentication.service.js +212 -0
- package/dist/service/helpers/external-authentication/external-authentication.service.js.map +1 -0
- package/dist/service/helpers/fulfillment-state-machine/fulfillment-state-machine.d.ts +19 -0
- package/dist/service/helpers/fulfillment-state-machine/fulfillment-state-machine.js +98 -0
- package/dist/service/helpers/fulfillment-state-machine/fulfillment-state-machine.js.map +1 -0
- package/dist/service/helpers/fulfillment-state-machine/fulfillment-state.d.ts +39 -0
- package/dist/service/helpers/fulfillment-state-machine/fulfillment-state.js +3 -0
- package/dist/service/helpers/fulfillment-state-machine/fulfillment-state.js.map +1 -0
- package/dist/service/helpers/list-query-builder/connection-utils.d.ts +18 -0
- package/dist/service/helpers/list-query-builder/connection-utils.js +40 -0
- package/dist/service/helpers/list-query-builder/connection-utils.js.map +1 -0
- package/dist/service/helpers/list-query-builder/get-calculated-columns.d.ts +7 -0
- package/dist/service/helpers/list-query-builder/get-calculated-columns.js +20 -0
- package/dist/service/helpers/list-query-builder/get-calculated-columns.js.map +1 -0
- package/dist/service/helpers/list-query-builder/list-query-builder.d.ts +231 -0
- package/dist/service/helpers/list-query-builder/list-query-builder.js +483 -0
- package/dist/service/helpers/list-query-builder/list-query-builder.js.map +1 -0
- package/dist/service/helpers/list-query-builder/parse-filter-params.d.ts +22 -0
- package/dist/service/helpers/list-query-builder/parse-filter-params.js +209 -0
- package/dist/service/helpers/list-query-builder/parse-filter-params.js.map +1 -0
- package/dist/service/helpers/list-query-builder/parse-sort-params.d.ts +19 -0
- package/dist/service/helpers/list-query-builder/parse-sort-params.js +68 -0
- package/dist/service/helpers/list-query-builder/parse-sort-params.js.map +1 -0
- package/dist/service/helpers/locale-string-hydrator/locale-string-hydrator.d.ts +28 -0
- package/dist/service/helpers/locale-string-hydrator/locale-string-hydrator.js +85 -0
- package/dist/service/helpers/locale-string-hydrator/locale-string-hydrator.js.map +1 -0
- package/dist/service/helpers/order-calculator/order-calculator.d.ts +82 -0
- package/dist/service/helpers/order-calculator/order-calculator.js +362 -0
- package/dist/service/helpers/order-calculator/order-calculator.js.map +1 -0
- package/dist/service/helpers/order-calculator/prorate.d.ts +11 -0
- package/dist/service/helpers/order-calculator/prorate.js +46 -0
- package/dist/service/helpers/order-calculator/prorate.js.map +1 -0
- package/dist/service/helpers/order-merger/order-merger.d.ts +44 -0
- package/dist/service/helpers/order-merger/order-merger.js +105 -0
- package/dist/service/helpers/order-merger/order-merger.js.map +1 -0
- package/dist/service/helpers/order-modifier/order-modifier.d.ts +115 -0
- package/dist/service/helpers/order-modifier/order-modifier.js +825 -0
- package/dist/service/helpers/order-modifier/order-modifier.js.map +1 -0
- package/dist/service/helpers/order-splitter/order-splitter.d.ts +16 -0
- package/dist/service/helpers/order-splitter/order-splitter.js +132 -0
- package/dist/service/helpers/order-splitter/order-splitter.js.map +1 -0
- package/dist/service/helpers/order-state-machine/order-state-machine.d.ts +18 -0
- package/dist/service/helpers/order-state-machine/order-state-machine.js +93 -0
- package/dist/service/helpers/order-state-machine/order-state-machine.js.map +1 -0
- package/dist/service/helpers/order-state-machine/order-state.d.ts +52 -0
- package/dist/service/helpers/order-state-machine/order-state.js +3 -0
- package/dist/service/helpers/order-state-machine/order-state.js.map +1 -0
- package/dist/service/helpers/password-cipher/password-cipher.d.ts +11 -0
- package/dist/service/helpers/password-cipher/password-cipher.js +35 -0
- package/dist/service/helpers/password-cipher/password-cipher.js.map +1 -0
- package/dist/service/helpers/payment-state-machine/payment-state-machine.d.ts +18 -0
- package/dist/service/helpers/payment-state-machine/payment-state-machine.js +106 -0
- package/dist/service/helpers/payment-state-machine/payment-state-machine.js.map +1 -0
- package/dist/service/helpers/payment-state-machine/payment-state.d.ts +38 -0
- package/dist/service/helpers/payment-state-machine/payment-state.js +3 -0
- package/dist/service/helpers/payment-state-machine/payment-state.js.map +1 -0
- package/dist/service/helpers/product-price-applicator/product-price-applicator.d.ts +51 -0
- package/dist/service/helpers/product-price-applicator/product-price-applicator.js +102 -0
- package/dist/service/helpers/product-price-applicator/product-price-applicator.js.map +1 -0
- package/dist/service/helpers/refund-state-machine/refund-state-machine.d.ts +17 -0
- package/dist/service/helpers/refund-state-machine/refund-state-machine.js +92 -0
- package/dist/service/helpers/refund-state-machine/refund-state-machine.js.map +1 -0
- package/dist/service/helpers/refund-state-machine/refund-state.d.ts +37 -0
- package/dist/service/helpers/refund-state-machine/refund-state.js +3 -0
- package/dist/service/helpers/refund-state-machine/refund-state.js.map +1 -0
- package/dist/service/helpers/request-context/request-context.service.d.ts +59 -0
- package/dist/service/helpers/request-context/request-context.service.js +172 -0
- package/dist/service/helpers/request-context/request-context.service.js.map +1 -0
- package/dist/service/helpers/shipping-calculator/shipping-calculator.d.ts +24 -0
- package/dist/service/helpers/shipping-calculator/shipping-calculator.js +58 -0
- package/dist/service/helpers/shipping-calculator/shipping-calculator.js.map +1 -0
- package/dist/service/helpers/slug-validator/slug-validator.d.ts +44 -0
- package/dist/service/helpers/slug-validator/slug-validator.js +85 -0
- package/dist/service/helpers/slug-validator/slug-validator.js.map +1 -0
- package/dist/service/helpers/translatable-saver/translatable-saver.d.ts +62 -0
- package/dist/service/helpers/translatable-saver/translatable-saver.js +109 -0
- package/dist/service/helpers/translatable-saver/translatable-saver.js.map +1 -0
- package/dist/service/helpers/translatable-saver/translation-differ.d.ts +24 -0
- package/dist/service/helpers/translatable-saver/translation-differ.js +74 -0
- package/dist/service/helpers/translatable-saver/translation-differ.js.map +1 -0
- package/dist/service/helpers/translator/translator.service.d.ts +43 -0
- package/dist/service/helpers/translator/translator.service.js +66 -0
- package/dist/service/helpers/translator/translator.service.js.map +1 -0
- package/dist/service/helpers/utils/address-to-line.d.ts +7 -0
- package/dist/service/helpers/utils/address-to-line.js +29 -0
- package/dist/service/helpers/utils/address-to-line.js.map +1 -0
- package/dist/service/helpers/utils/get-user-channels-permissions.d.ts +19 -0
- package/dist/service/helpers/utils/get-user-channels-permissions.js +37 -0
- package/dist/service/helpers/utils/get-user-channels-permissions.js.map +1 -0
- package/dist/service/helpers/utils/move-to-index.d.ts +8 -0
- package/dist/service/helpers/utils/move-to-index.js +28 -0
- package/dist/service/helpers/utils/move-to-index.js.map +1 -0
- package/dist/service/helpers/utils/order-utils.d.ts +34 -0
- package/dist/service/helpers/utils/order-utils.js +138 -0
- package/dist/service/helpers/utils/order-utils.js.map +1 -0
- package/dist/service/helpers/utils/patch-entity.d.ts +10 -0
- package/dist/service/helpers/utils/patch-entity.js +22 -0
- package/dist/service/helpers/utils/patch-entity.js.map +1 -0
- package/dist/service/helpers/utils/samples-each.d.ts +5 -0
- package/dist/service/helpers/utils/samples-each.js +22 -0
- package/dist/service/helpers/utils/samples-each.js.map +1 -0
- package/dist/service/helpers/utils/translate-entity.d.ts +34 -0
- package/dist/service/helpers/utils/translate-entity.js +124 -0
- package/dist/service/helpers/utils/translate-entity.js.map +1 -0
- package/dist/service/helpers/utils/tree-relations-qb-joiner.d.ts +30 -0
- package/dist/service/helpers/utils/tree-relations-qb-joiner.js +122 -0
- package/dist/service/helpers/utils/tree-relations-qb-joiner.js.map +1 -0
- package/dist/service/helpers/verification-token-generator/verification-token-generator.d.ts +19 -0
- package/dist/service/helpers/verification-token-generator/verification-token-generator.js +56 -0
- package/dist/service/helpers/verification-token-generator/verification-token-generator.js.map +1 -0
- package/dist/service/index.d.ts +62 -0
- package/dist/service/index.js +79 -0
- package/dist/service/index.js.map +1 -0
- package/dist/service/initializer.service.d.ts +43 -0
- package/dist/service/initializer.service.js +114 -0
- package/dist/service/initializer.service.js.map +1 -0
- package/dist/service/service.module.d.ts +16 -0
- package/dist/service/service.module.js +176 -0
- package/dist/service/service.module.js.map +1 -0
- package/dist/service/services/administrator.service.d.ts +92 -0
- package/dist/service/services/administrator.service.js +347 -0
- package/dist/service/services/administrator.service.js.map +1 -0
- package/dist/service/services/asset.service.d.ts +134 -0
- package/dist/service/services/asset.service.js +626 -0
- package/dist/service/services/asset.service.js.map +1 -0
- package/dist/service/services/auth.service.d.ts +42 -0
- package/dist/service/services/auth.service.js +143 -0
- package/dist/service/services/auth.service.js.map +1 -0
- package/dist/service/services/channel.service.d.ts +105 -0
- package/dist/service/services/channel.service.js +466 -0
- package/dist/service/services/channel.service.js.map +1 -0
- package/dist/service/services/collection.service.d.ts +149 -0
- package/dist/service/services/collection.service.js +736 -0
- package/dist/service/services/collection.service.js.map +1 -0
- package/dist/service/services/country.service.d.ts +41 -0
- package/dist/service/services/country.service.js +138 -0
- package/dist/service/services/country.service.js.map +1 -0
- package/dist/service/services/customer-group.service.d.ts +38 -0
- package/dist/service/services/customer-group.service.js +189 -0
- package/dist/service/services/customer-group.service.js.map +1 -0
- package/dist/service/services/customer.service.d.ts +157 -0
- package/dist/service/services/customer.service.js +830 -0
- package/dist/service/services/customer.service.js.map +1 -0
- package/dist/service/services/facet-value.service.d.ts +69 -0
- package/dist/service/services/facet-value.service.js +245 -0
- package/dist/service/services/facet-value.service.js.map +1 -0
- package/dist/service/services/facet.service.d.ts +67 -0
- package/dist/service/services/facet.service.js +341 -0
- package/dist/service/services/facet.service.js.map +1 -0
- package/dist/service/services/fulfillment.service.d.ts +52 -0
- package/dist/service/services/fulfillment.service.js +170 -0
- package/dist/service/services/fulfillment.service.js.map +1 -0
- package/dist/service/services/global-settings.service.d.ts +33 -0
- package/dist/service/services/global-settings.service.js +99 -0
- package/dist/service/services/global-settings.service.js.map +1 -0
- package/dist/service/services/history.service.d.ts +244 -0
- package/dist/service/services/history.service.js +256 -0
- package/dist/service/services/history.service.js.map +1 -0
- package/dist/service/services/order-testing.service.d.ts +39 -0
- package/dist/service/services/order-testing.service.js +146 -0
- package/dist/service/services/order-testing.service.js.map +1 -0
- package/dist/service/services/order.service.d.ts +432 -0
- package/dist/service/services/order.service.js +1754 -0
- package/dist/service/services/order.service.js.map +1 -0
- package/dist/service/services/payment-method.service.d.ts +55 -0
- package/dist/service/services/payment-method.service.js +267 -0
- package/dist/service/services/payment-method.service.js.map +1 -0
- package/dist/service/services/payment.service.d.ts +87 -0
- package/dist/service/services/payment.service.js +395 -0
- package/dist/service/services/payment.service.js.map +1 -0
- package/dist/service/services/product-option-group.service.d.ts +50 -0
- package/dist/service/services/product-option-group.service.js +205 -0
- package/dist/service/services/product-option-group.service.js.map +1 -0
- package/dist/service/services/product-option.service.d.ts +40 -0
- package/dist/service/services/product-option.service.js +151 -0
- package/dist/service/services/product-option.service.js.map +1 -0
- package/dist/service/services/product-variant.service.d.ts +153 -0
- package/dist/service/services/product-variant.service.js +868 -0
- package/dist/service/services/product-variant.service.js.map +1 -0
- package/dist/service/services/product.service.d.ts +70 -0
- package/dist/service/services/product.service.js +416 -0
- package/dist/service/services/product.service.js.map +1 -0
- package/dist/service/services/promotion.service.d.ts +70 -0
- package/dist/service/services/promotion.service.js +328 -0
- package/dist/service/services/promotion.service.js.map +1 -0
- package/dist/service/services/role.service.d.ts +95 -0
- package/dist/service/services/role.service.js +386 -0
- package/dist/service/services/role.service.js.map +1 -0
- package/dist/service/services/search.service.d.ts +19 -0
- package/dist/service/services/search.service.js +50 -0
- package/dist/service/services/search.service.js.map +1 -0
- package/dist/service/services/seller.service.d.ts +29 -0
- package/dist/service/services/seller.service.js +97 -0
- package/dist/service/services/seller.service.js.map +1 -0
- package/dist/service/services/session.service.d.ts +105 -0
- package/dist/service/services/session.service.js +328 -0
- package/dist/service/services/session.service.js.map +1 -0
- package/dist/service/services/shipping-method.service.d.ts +54 -0
- package/dist/service/services/shipping-method.service.js +242 -0
- package/dist/service/services/shipping-method.service.js.map +1 -0
- package/dist/service/services/stock-level.service.d.ts +44 -0
- package/dist/service/services/stock-level.service.js +142 -0
- package/dist/service/services/stock-level.service.js.map +1 -0
- package/dist/service/services/stock-location.service.d.ts +41 -0
- package/dist/service/services/stock-location.service.js +253 -0
- package/dist/service/services/stock-location.service.js.map +1 -0
- package/dist/service/services/stock-movement.service.d.ts +86 -0
- package/dist/service/services/stock-movement.service.js +301 -0
- package/dist/service/services/stock-movement.service.js.map +1 -0
- package/dist/service/services/tag.service.d.ts +27 -0
- package/dist/service/services/tag.service.js +96 -0
- package/dist/service/services/tag.service.js.map +1 -0
- package/dist/service/services/tax-category.service.d.ts +25 -0
- package/dist/service/services/tax-category.service.js +119 -0
- package/dist/service/services/tax-category.service.js.map +1 -0
- package/dist/service/services/tax-rate.service.d.ts +52 -0
- package/dist/service/services/tax-rate.service.js +188 -0
- package/dist/service/services/tax-rate.service.js.map +1 -0
- package/dist/service/services/user.service.d.ts +102 -0
- package/dist/service/services/user.service.js +433 -0
- package/dist/service/services/user.service.js.map +1 -0
- package/dist/service/services/zone.service.d.ts +50 -0
- package/dist/service/services/zone.service.js +215 -0
- package/dist/service/services/zone.service.js.map +1 -0
- package/dist/version.d.ts +16 -0
- package/dist/version.js +20 -0
- package/dist/version.js.map +1 -0
- package/dist/worker/deenruv-worker.d.ts +31 -0
- package/dist/worker/deenruv-worker.js +40 -0
- package/dist/worker/deenruv-worker.js.map +1 -0
- package/dist/worker/index.d.ts +2 -0
- package/dist/worker/index.js +19 -0
- package/dist/worker/index.js.map +1 -0
- package/dist/worker/worker-health.service.d.ts +34 -0
- package/dist/worker/worker-health.service.js +57 -0
- package/dist/worker/worker-health.service.js.map +1 -0
- package/dist/worker/worker.module.d.ts +10 -0
- package/dist/worker/worker.module.js +46 -0
- package/dist/worker/worker.module.js.map +1 -0
- package/package.json +114 -0
|
@@ -0,0 +1,1754 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
12
|
+
var t = {};
|
|
13
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
14
|
+
t[p] = s[p];
|
|
15
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
16
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
17
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
18
|
+
t[p[i]] = s[p[i]];
|
|
19
|
+
}
|
|
20
|
+
return t;
|
|
21
|
+
};
|
|
22
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
+
exports.OrderService = void 0;
|
|
24
|
+
const common_1 = require("@nestjs/common");
|
|
25
|
+
const generated_types_1 = require("@deenruv/common/lib/generated-types");
|
|
26
|
+
const omit_1 = require("@deenruv/common/lib/omit");
|
|
27
|
+
const shared_utils_1 = require("@deenruv/common/lib/shared-utils");
|
|
28
|
+
const typeorm_1 = require("typeorm");
|
|
29
|
+
const FindOptionsUtils_1 = require("typeorm/find-options/FindOptionsUtils");
|
|
30
|
+
const request_context_cache_service_1 = require("../../cache/request-context-cache.service");
|
|
31
|
+
const constants_1 = require("../../common/constants");
|
|
32
|
+
const error_result_1 = require("../../common/error/error-result");
|
|
33
|
+
const errors_1 = require("../../common/error/errors");
|
|
34
|
+
const generated_graphql_admin_errors_1 = require("../../common/error/generated-graphql-admin-errors");
|
|
35
|
+
const generated_graphql_shop_errors_1 = require("../../common/error/generated-graphql-shop-errors");
|
|
36
|
+
const tax_utils_1 = require("../../common/tax-utils");
|
|
37
|
+
const utils_1 = require("../../common/utils");
|
|
38
|
+
const config_service_1 = require("../../config/config.service");
|
|
39
|
+
const transactional_connection_1 = require("../../connection/transactional-connection");
|
|
40
|
+
const order_entity_1 = require("../../entity/order/order.entity");
|
|
41
|
+
const order_line_entity_1 = require("../../entity/order-line/order-line.entity");
|
|
42
|
+
const fulfillment_line_entity_1 = require("../../entity/order-line-reference/fulfillment-line.entity");
|
|
43
|
+
const order_modification_entity_1 = require("../../entity/order-modification/order-modification.entity");
|
|
44
|
+
const payment_entity_1 = require("../../entity/payment/payment.entity");
|
|
45
|
+
const product_variant_entity_1 = require("../../entity/product-variant/product-variant.entity");
|
|
46
|
+
const refund_entity_1 = require("../../entity/refund/refund.entity");
|
|
47
|
+
const session_entity_1 = require("../../entity/session/session.entity");
|
|
48
|
+
const shipping_line_entity_1 = require("../../entity/shipping-line/shipping-line.entity");
|
|
49
|
+
const surcharge_entity_1 = require("../../entity/surcharge/surcharge.entity");
|
|
50
|
+
const event_bus_1 = require("../../event-bus/event-bus");
|
|
51
|
+
const coupon_code_event_1 = require("../../event-bus/events/coupon-code-event");
|
|
52
|
+
const order_event_1 = require("../../event-bus/events/order-event");
|
|
53
|
+
const order_line_event_1 = require("../../event-bus/events/order-line-event");
|
|
54
|
+
const order_state_transition_event_1 = require("../../event-bus/events/order-state-transition-event");
|
|
55
|
+
const refund_event_1 = require("../../event-bus/events/refund-event");
|
|
56
|
+
const refund_state_transition_event_1 = require("../../event-bus/events/refund-state-transition-event");
|
|
57
|
+
const custom_field_relation_service_1 = require("../helpers/custom-field-relation/custom-field-relation.service");
|
|
58
|
+
const list_query_builder_1 = require("../helpers/list-query-builder/list-query-builder");
|
|
59
|
+
const order_calculator_1 = require("../helpers/order-calculator/order-calculator");
|
|
60
|
+
const order_merger_1 = require("../helpers/order-merger/order-merger");
|
|
61
|
+
const order_modifier_1 = require("../helpers/order-modifier/order-modifier");
|
|
62
|
+
const order_state_machine_1 = require("../helpers/order-state-machine/order-state-machine");
|
|
63
|
+
const refund_state_machine_1 = require("../helpers/refund-state-machine/refund-state-machine");
|
|
64
|
+
const shipping_calculator_1 = require("../helpers/shipping-calculator/shipping-calculator");
|
|
65
|
+
const translator_service_1 = require("../helpers/translator/translator.service");
|
|
66
|
+
const order_utils_1 = require("../helpers/utils/order-utils");
|
|
67
|
+
const patch_entity_1 = require("../helpers/utils/patch-entity");
|
|
68
|
+
const channel_service_1 = require("./channel.service");
|
|
69
|
+
const country_service_1 = require("./country.service");
|
|
70
|
+
const customer_service_1 = require("./customer.service");
|
|
71
|
+
const fulfillment_service_1 = require("./fulfillment.service");
|
|
72
|
+
const history_service_1 = require("./history.service");
|
|
73
|
+
const payment_method_service_1 = require("./payment-method.service");
|
|
74
|
+
const payment_service_1 = require("./payment.service");
|
|
75
|
+
const product_variant_service_1 = require("./product-variant.service");
|
|
76
|
+
const promotion_service_1 = require("./promotion.service");
|
|
77
|
+
const stock_level_service_1 = require("./stock-level.service");
|
|
78
|
+
const product_variant_translation_entity_1 = require("../../entity/product-variant/product-variant-translation.entity");
|
|
79
|
+
const shipping_method_translation_entity_1 = require("../../entity/shipping-method/shipping-method-translation.entity");
|
|
80
|
+
const promotion_translation_entity_1 = require("../../entity/promotion/promotion-translation.entity");
|
|
81
|
+
const product_variant_price_entity_1 = require("../../entity/product-variant/product-variant-price.entity");
|
|
82
|
+
const entity_hydrator_service_1 = require("../helpers/entity-hydrator/entity-hydrator.service");
|
|
83
|
+
const [linesRelation, channelsRelation, otherToManyRelations] = (function () {
|
|
84
|
+
const relToMany = {};
|
|
85
|
+
const relations = (0, typeorm_1.getMetadataArgsStorage)().filterRelations(order_entity_1.Order);
|
|
86
|
+
const targetTypes = [
|
|
87
|
+
"one-to-many",
|
|
88
|
+
"many-to-many",
|
|
89
|
+
];
|
|
90
|
+
for (const r of relations) {
|
|
91
|
+
if (targetTypes.includes(r.relationType)) {
|
|
92
|
+
relToMany[`${r.propertyName}`] = new RegExp(`^${r.propertyName}(|\\..*)$`);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
const { lines, channels } = relToMany, rest = __rest(relToMany, ["lines", "channels"]);
|
|
96
|
+
const otherToMany = Object.values(rest);
|
|
97
|
+
return [lines, channels, otherToMany];
|
|
98
|
+
})();
|
|
99
|
+
/**
|
|
100
|
+
* @description
|
|
101
|
+
* Contains methods relating to {@link Order} entities.
|
|
102
|
+
*
|
|
103
|
+
* @docsCategory services
|
|
104
|
+
*/
|
|
105
|
+
let OrderService = class OrderService {
|
|
106
|
+
constructor(connection, configService, productVariantService, customerService, countryService, orderCalculator, shippingCalculator, orderStateMachine, orderMerger, paymentService, paymentMethodService, fulfillmentService, listQueryBuilder, refundStateMachine, historyService, promotionService, eventBus, channelService, orderModifier, customFieldRelationService, requestCache, translator, stockLevelService, entityHydrator) {
|
|
107
|
+
this.connection = connection;
|
|
108
|
+
this.configService = configService;
|
|
109
|
+
this.productVariantService = productVariantService;
|
|
110
|
+
this.customerService = customerService;
|
|
111
|
+
this.countryService = countryService;
|
|
112
|
+
this.orderCalculator = orderCalculator;
|
|
113
|
+
this.shippingCalculator = shippingCalculator;
|
|
114
|
+
this.orderStateMachine = orderStateMachine;
|
|
115
|
+
this.orderMerger = orderMerger;
|
|
116
|
+
this.paymentService = paymentService;
|
|
117
|
+
this.paymentMethodService = paymentMethodService;
|
|
118
|
+
this.fulfillmentService = fulfillmentService;
|
|
119
|
+
this.listQueryBuilder = listQueryBuilder;
|
|
120
|
+
this.refundStateMachine = refundStateMachine;
|
|
121
|
+
this.historyService = historyService;
|
|
122
|
+
this.promotionService = promotionService;
|
|
123
|
+
this.eventBus = eventBus;
|
|
124
|
+
this.channelService = channelService;
|
|
125
|
+
this.orderModifier = orderModifier;
|
|
126
|
+
this.customFieldRelationService = customFieldRelationService;
|
|
127
|
+
this.requestCache = requestCache;
|
|
128
|
+
this.translator = translator;
|
|
129
|
+
this.stockLevelService = stockLevelService;
|
|
130
|
+
this.entityHydrator = entityHydrator;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* @description
|
|
134
|
+
* Returns an array of all the configured states and transitions of the order process. This is
|
|
135
|
+
* based on the default order process plus all configured {@link OrderProcess} objects
|
|
136
|
+
* defined in the {@link OrderOptions} `process` array.
|
|
137
|
+
*/
|
|
138
|
+
getOrderProcessStates() {
|
|
139
|
+
return Object.entries(this.orderStateMachine.config.transitions).map(([name, { to }]) => ({
|
|
140
|
+
name,
|
|
141
|
+
to,
|
|
142
|
+
}));
|
|
143
|
+
}
|
|
144
|
+
restrictOrderJoins(ctx, qb) {
|
|
145
|
+
if (!qb.getParameters()["languageCode"]) {
|
|
146
|
+
qb.setParameter("languageCode", ctx.languageCode);
|
|
147
|
+
}
|
|
148
|
+
// fulfillments.lines will cause the exponential growth of response if queried along with
|
|
149
|
+
// lines relation without additional restrictions. So we intentially modify that relation.
|
|
150
|
+
// Additionally prevent overfetching of unnecessary translations and prices.
|
|
151
|
+
qb.expressionMap.joinAttributes.forEach((join) => {
|
|
152
|
+
var _a;
|
|
153
|
+
if (!join.condition) {
|
|
154
|
+
const inverseTarget = (_a = join.relationCache) === null || _a === void 0 ? void 0 : _a.inverseEntityMetadata.target;
|
|
155
|
+
if (inverseTarget) {
|
|
156
|
+
if (!join.condition &&
|
|
157
|
+
[
|
|
158
|
+
product_variant_translation_entity_1.ProductVariantTranslation,
|
|
159
|
+
shipping_method_translation_entity_1.ShippingMethodTranslation,
|
|
160
|
+
promotion_translation_entity_1.PromotionTranslation,
|
|
161
|
+
].find((el) => el === inverseTarget)) {
|
|
162
|
+
join.condition = `"${join.alias.name}"."languageCode" = :languageCode`;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
if (inverseTarget === product_variant_price_entity_1.ProductVariantPrice) {
|
|
166
|
+
join.condition = `"${join.alias.name}"."currencyCode" = "order"."currencyCode" AND "${join.alias.name}"."channelId" = :channelId`;
|
|
167
|
+
}
|
|
168
|
+
if (inverseTarget === fulfillment_line_entity_1.FulfillmentLine) {
|
|
169
|
+
const lines = qb.expressionMap.joinAttributes.find((join) => { var _a; return ((_a = join.relationCache) === null || _a === void 0 ? void 0 : _a.inverseEntityMetadata.target) === order_line_entity_1.OrderLine; });
|
|
170
|
+
if (lines) {
|
|
171
|
+
join.condition = `"${join.alias.name}"."orderLineId" = "${lines.alias.name}"."id"`;
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
// Try to split query for all the XToMany relations except for lines and channels.
|
|
178
|
+
splitRelations(relations) {
|
|
179
|
+
if (relations) {
|
|
180
|
+
const split = [[]];
|
|
181
|
+
for (const r of relations) {
|
|
182
|
+
if (r.match(linesRelation) ||
|
|
183
|
+
r.match(channelsRelation) ||
|
|
184
|
+
!otherToManyRelations.find((re) => r.match(re))) {
|
|
185
|
+
split[0].push(r);
|
|
186
|
+
}
|
|
187
|
+
else {
|
|
188
|
+
split.push([r]);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
return split;
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
async findAll(ctx, options, relations) {
|
|
195
|
+
var _a, _b;
|
|
196
|
+
const qb = this.listQueryBuilder.build(order_entity_1.Order, options, {
|
|
197
|
+
ctx,
|
|
198
|
+
relations: relations !== null && relations !== void 0 ? relations : [
|
|
199
|
+
"lines",
|
|
200
|
+
"customer",
|
|
201
|
+
"lines.productVariant",
|
|
202
|
+
"channels",
|
|
203
|
+
"shippingLines",
|
|
204
|
+
"payments",
|
|
205
|
+
],
|
|
206
|
+
channelId: ctx.channelId,
|
|
207
|
+
customPropertyMap: {
|
|
208
|
+
customerLastName: "customer.lastName",
|
|
209
|
+
transactionId: "payments.transactionId",
|
|
210
|
+
},
|
|
211
|
+
});
|
|
212
|
+
this.restrictOrderJoins(ctx, qb);
|
|
213
|
+
const cntQbRelations = [];
|
|
214
|
+
if ((_a = options === null || options === void 0 ? void 0 : options.filter) === null || _a === void 0 ? void 0 : _a.customerLastName) {
|
|
215
|
+
cntQbRelations.push("customer");
|
|
216
|
+
}
|
|
217
|
+
if ((_b = options === null || options === void 0 ? void 0 : options.filter) === null || _b === void 0 ? void 0 : _b.transactionId) {
|
|
218
|
+
cntQbRelations.push("payments");
|
|
219
|
+
}
|
|
220
|
+
const cntQb = this.listQueryBuilder.build(order_entity_1.Order, options, {
|
|
221
|
+
ctx,
|
|
222
|
+
relations: cntQbRelations,
|
|
223
|
+
channelId: ctx.channelId,
|
|
224
|
+
customPropertyMap: {
|
|
225
|
+
customerLastName: "customer.lastName",
|
|
226
|
+
transactionId: "payments.transactionId",
|
|
227
|
+
},
|
|
228
|
+
});
|
|
229
|
+
const [items, totalItems] = await Promise.all([
|
|
230
|
+
qb.getMany(),
|
|
231
|
+
cntQb.getCount(),
|
|
232
|
+
]);
|
|
233
|
+
return { items, totalItems };
|
|
234
|
+
}
|
|
235
|
+
async findOne(ctx, orderId, relations) {
|
|
236
|
+
const qb = this.connection
|
|
237
|
+
.getRepository(ctx, order_entity_1.Order)
|
|
238
|
+
.createQueryBuilder("order");
|
|
239
|
+
const [effectiveRelations, ...toManyRelations] = this.splitRelations(relations !== null && relations !== void 0 ? relations : [
|
|
240
|
+
"channels",
|
|
241
|
+
"customer",
|
|
242
|
+
"customer.user",
|
|
243
|
+
"lines",
|
|
244
|
+
"lines.productVariant",
|
|
245
|
+
"lines.productVariant.taxCategory",
|
|
246
|
+
"lines.productVariant.productVariantPrices",
|
|
247
|
+
"lines.productVariant.translations",
|
|
248
|
+
"lines.featuredAsset",
|
|
249
|
+
"lines.taxCategory",
|
|
250
|
+
"shippingLines",
|
|
251
|
+
"surcharges",
|
|
252
|
+
"promotions",
|
|
253
|
+
]) || [[]];
|
|
254
|
+
if (relations &&
|
|
255
|
+
effectiveRelations.includes("lines.productVariant") &&
|
|
256
|
+
!effectiveRelations.includes("lines.productVariant.taxCategory")) {
|
|
257
|
+
effectiveRelations.push("lines.productVariant.taxCategory");
|
|
258
|
+
}
|
|
259
|
+
qb.setFindOptions({ relations: effectiveRelations })
|
|
260
|
+
.leftJoin("order.channels", "channel")
|
|
261
|
+
.where("order.id = :orderId", { orderId })
|
|
262
|
+
.andWhere("channel.id = :channelId", { channelId: ctx.channelId });
|
|
263
|
+
if (effectiveRelations.includes("lines")) {
|
|
264
|
+
qb.addOrderBy(`order__order_lines.${qb.escape("createdAt")}`, "ASC").addOrderBy(`order__order_lines.${qb.escape("productVariantId")}`, "ASC");
|
|
265
|
+
}
|
|
266
|
+
FindOptionsUtils_1.FindOptionsUtils.joinEagerRelations(qb, qb.alias, qb.expressionMap.mainAlias.metadata);
|
|
267
|
+
this.restrictOrderJoins(ctx, qb);
|
|
268
|
+
const order = await qb.getOne();
|
|
269
|
+
if (order) {
|
|
270
|
+
if (effectiveRelations.includes("lines.productVariant")) {
|
|
271
|
+
for (const line of order.lines) {
|
|
272
|
+
line.productVariant = this.translator.translate(await this.productVariantService.applyChannelPriceAndTax(line.productVariant, ctx, order), ctx);
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
await Promise.all(toManyRelations.map((relations) => this.entityHydrator.hydrate(ctx, order, { relations })));
|
|
276
|
+
return order;
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
async findOneByCode(ctx, orderCode, relations) {
|
|
280
|
+
const order = await this.connection.getRepository(ctx, order_entity_1.Order).findOne({
|
|
281
|
+
relations: ["customer"],
|
|
282
|
+
where: {
|
|
283
|
+
code: orderCode,
|
|
284
|
+
},
|
|
285
|
+
});
|
|
286
|
+
return order ? this.findOne(ctx, order.id, relations) : undefined;
|
|
287
|
+
}
|
|
288
|
+
async findOneByOrderLineId(ctx, orderLineId, relations) {
|
|
289
|
+
const order = await this.connection
|
|
290
|
+
.getRepository(ctx, order_entity_1.Order)
|
|
291
|
+
.createQueryBuilder("order")
|
|
292
|
+
.innerJoin("order.lines", "line", "line.id = :orderLineId", {
|
|
293
|
+
orderLineId,
|
|
294
|
+
})
|
|
295
|
+
.getOne();
|
|
296
|
+
return order ? this.findOne(ctx, order.id, relations) : undefined;
|
|
297
|
+
}
|
|
298
|
+
async findByCustomerId(ctx, customerId, options, relations) {
|
|
299
|
+
const effectiveRelations = (relations !== null && relations !== void 0 ? relations : ["lines", "customer", "channels", "shippingLines"]).filter((r) =>
|
|
300
|
+
// Don't join productVariant because it messes with the
|
|
301
|
+
// price calculation in certain edge-case field resolver scenarios
|
|
302
|
+
!r.includes("productVariant"));
|
|
303
|
+
return this.listQueryBuilder
|
|
304
|
+
.build(order_entity_1.Order, options, {
|
|
305
|
+
relations: relations !== null && relations !== void 0 ? relations : [
|
|
306
|
+
"lines",
|
|
307
|
+
"customer",
|
|
308
|
+
"channels",
|
|
309
|
+
"shippingLines",
|
|
310
|
+
],
|
|
311
|
+
channelId: ctx.channelId,
|
|
312
|
+
ctx,
|
|
313
|
+
})
|
|
314
|
+
.andWhere("order.state != :draftState", { draftState: "Draft" })
|
|
315
|
+
.andWhere("order.customer.id = :customerId", { customerId })
|
|
316
|
+
.getManyAndCount()
|
|
317
|
+
.then(([items, totalItems]) => {
|
|
318
|
+
return {
|
|
319
|
+
items,
|
|
320
|
+
totalItems,
|
|
321
|
+
};
|
|
322
|
+
});
|
|
323
|
+
}
|
|
324
|
+
/**
|
|
325
|
+
* @description
|
|
326
|
+
* Returns all {@link Payment} entities associated with the Order.
|
|
327
|
+
*/
|
|
328
|
+
getOrderPayments(ctx, orderId) {
|
|
329
|
+
return this.connection.getRepository(ctx, payment_entity_1.Payment).find({
|
|
330
|
+
relations: ["refunds"],
|
|
331
|
+
where: {
|
|
332
|
+
order: { id: orderId },
|
|
333
|
+
},
|
|
334
|
+
});
|
|
335
|
+
}
|
|
336
|
+
/**
|
|
337
|
+
* @description
|
|
338
|
+
* Returns an array of any {@link OrderModification} entities associated with the Order.
|
|
339
|
+
*/
|
|
340
|
+
getOrderModifications(ctx, orderId) {
|
|
341
|
+
return this.connection.getRepository(ctx, order_modification_entity_1.OrderModification).find({
|
|
342
|
+
where: {
|
|
343
|
+
order: { id: orderId },
|
|
344
|
+
},
|
|
345
|
+
relations: ["lines", "payment", "refund", "surcharges"],
|
|
346
|
+
});
|
|
347
|
+
}
|
|
348
|
+
/**
|
|
349
|
+
* @description
|
|
350
|
+
* Returns any {@link Refund}s associated with a {@link Payment}.
|
|
351
|
+
*/
|
|
352
|
+
getPaymentRefunds(ctx, paymentId) {
|
|
353
|
+
return this.connection.getRepository(ctx, refund_entity_1.Refund).find({
|
|
354
|
+
where: {
|
|
355
|
+
paymentId,
|
|
356
|
+
},
|
|
357
|
+
});
|
|
358
|
+
}
|
|
359
|
+
getSellerOrders(ctx, order) {
|
|
360
|
+
return this.connection.getRepository(ctx, order_entity_1.Order).find({
|
|
361
|
+
where: {
|
|
362
|
+
aggregateOrderId: order.id,
|
|
363
|
+
},
|
|
364
|
+
relations: ["channels"],
|
|
365
|
+
});
|
|
366
|
+
}
|
|
367
|
+
async getAggregateOrder(ctx, order) {
|
|
368
|
+
return order.aggregateOrderId == null
|
|
369
|
+
? undefined
|
|
370
|
+
: this.connection
|
|
371
|
+
.getRepository(ctx, order_entity_1.Order)
|
|
372
|
+
.findOne({
|
|
373
|
+
where: { id: order.aggregateOrderId },
|
|
374
|
+
relations: ["channels", "lines"],
|
|
375
|
+
})
|
|
376
|
+
.then((result) => result !== null && result !== void 0 ? result : undefined);
|
|
377
|
+
}
|
|
378
|
+
getOrderChannels(ctx, order) {
|
|
379
|
+
return this.connection
|
|
380
|
+
.getRepository(ctx, order_entity_1.Order)
|
|
381
|
+
.createQueryBuilder("order")
|
|
382
|
+
.relation("channels")
|
|
383
|
+
.of(order)
|
|
384
|
+
.loadMany();
|
|
385
|
+
}
|
|
386
|
+
/**
|
|
387
|
+
* @description
|
|
388
|
+
* Returns any Order associated with the specified User's Customer account
|
|
389
|
+
* that is still in the `active` state.
|
|
390
|
+
*/
|
|
391
|
+
async getActiveOrderForUser(ctx, userId) {
|
|
392
|
+
const customer = await this.customerService.findOneByUserId(ctx, userId);
|
|
393
|
+
if (customer) {
|
|
394
|
+
const activeOrder = await this.connection
|
|
395
|
+
.getRepository(ctx, order_entity_1.Order)
|
|
396
|
+
.createQueryBuilder("order")
|
|
397
|
+
.innerJoinAndSelect("order.channels", "channel", "channel.id = :channelId", {
|
|
398
|
+
channelId: ctx.channelId,
|
|
399
|
+
})
|
|
400
|
+
.leftJoinAndSelect("order.customer", "customer")
|
|
401
|
+
.leftJoinAndSelect("order.shippingLines", "shippingLines")
|
|
402
|
+
.where("order.active = :active", { active: true })
|
|
403
|
+
.andWhere("order.customer.id = :customerId", {
|
|
404
|
+
customerId: customer.id,
|
|
405
|
+
})
|
|
406
|
+
.orderBy("order.createdAt", "DESC")
|
|
407
|
+
.getOne();
|
|
408
|
+
if (activeOrder) {
|
|
409
|
+
return this.findOne(ctx, activeOrder.id);
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
/**
|
|
414
|
+
* @description
|
|
415
|
+
* Creates a new, empty Order. If a `userId` is passed, the Order will get associated with that
|
|
416
|
+
* User's Customer account.
|
|
417
|
+
*/
|
|
418
|
+
async create(ctx, userId) {
|
|
419
|
+
const newOrder = await this.createEmptyOrderEntity(ctx);
|
|
420
|
+
if (userId) {
|
|
421
|
+
const customer = await this.customerService.findOneByUserId(ctx, userId);
|
|
422
|
+
if (customer) {
|
|
423
|
+
newOrder.customer = customer;
|
|
424
|
+
}
|
|
425
|
+
}
|
|
426
|
+
await this.channelService.assignToCurrentChannel(newOrder, ctx);
|
|
427
|
+
const order = await this.connection
|
|
428
|
+
.getRepository(ctx, order_entity_1.Order)
|
|
429
|
+
.save(newOrder);
|
|
430
|
+
await this.eventBus.publish(new order_event_1.OrderEvent(ctx, order, "created"));
|
|
431
|
+
const transitionResult = await this.transitionToState(ctx, order.id, "AddingItems");
|
|
432
|
+
if ((0, error_result_1.isGraphQlErrorResult)(transitionResult)) {
|
|
433
|
+
// this should never occur, so we will throw rather than return
|
|
434
|
+
throw transitionResult;
|
|
435
|
+
}
|
|
436
|
+
return transitionResult;
|
|
437
|
+
}
|
|
438
|
+
async createDraft(ctx) {
|
|
439
|
+
const newOrder = await this.createEmptyOrderEntity(ctx);
|
|
440
|
+
newOrder.active = false;
|
|
441
|
+
await this.channelService.assignToCurrentChannel(newOrder, ctx);
|
|
442
|
+
const order = await this.connection
|
|
443
|
+
.getRepository(ctx, order_entity_1.Order)
|
|
444
|
+
.save(newOrder);
|
|
445
|
+
await this.eventBus.publish(new order_event_1.OrderEvent(ctx, order, "created"));
|
|
446
|
+
const transitionResult = await this.transitionToState(ctx, order.id, "Draft");
|
|
447
|
+
if ((0, error_result_1.isGraphQlErrorResult)(transitionResult)) {
|
|
448
|
+
// this should never occur, so we will throw rather than return
|
|
449
|
+
throw transitionResult;
|
|
450
|
+
}
|
|
451
|
+
return transitionResult;
|
|
452
|
+
}
|
|
453
|
+
async createEmptyOrderEntity(ctx) {
|
|
454
|
+
return new order_entity_1.Order({
|
|
455
|
+
type: generated_types_1.OrderType.Regular,
|
|
456
|
+
code: await this.configService.orderOptions.orderCodeStrategy.generate(ctx),
|
|
457
|
+
state: this.orderStateMachine.getInitialState(),
|
|
458
|
+
lines: [],
|
|
459
|
+
surcharges: [],
|
|
460
|
+
couponCodes: [],
|
|
461
|
+
modifications: [],
|
|
462
|
+
shippingAddress: {},
|
|
463
|
+
billingAddress: {},
|
|
464
|
+
subTotal: 0,
|
|
465
|
+
subTotalWithTax: 0,
|
|
466
|
+
currencyCode: ctx.currencyCode,
|
|
467
|
+
});
|
|
468
|
+
}
|
|
469
|
+
/**
|
|
470
|
+
* @description
|
|
471
|
+
* Updates the custom fields of an Order.
|
|
472
|
+
*/
|
|
473
|
+
async updateCustomFields(ctx, orderId, customFields) {
|
|
474
|
+
let order = await this.getOrderOrThrow(ctx, orderId);
|
|
475
|
+
order = (0, patch_entity_1.patchEntity)(order, { customFields });
|
|
476
|
+
const updatedOrder = await this.connection
|
|
477
|
+
.getRepository(ctx, order_entity_1.Order)
|
|
478
|
+
.save(order);
|
|
479
|
+
await this.customFieldRelationService.updateRelations(ctx, order_entity_1.Order, { customFields }, updatedOrder);
|
|
480
|
+
await this.eventBus.publish(new order_event_1.OrderEvent(ctx, updatedOrder, "updated"));
|
|
481
|
+
return updatedOrder;
|
|
482
|
+
}
|
|
483
|
+
/**
|
|
484
|
+
* @description
|
|
485
|
+
* Updates the Customer which is assigned to a given Order. The target Customer must be assigned to the same
|
|
486
|
+
* Channels as the Order, otherwise an error will be thrown.
|
|
487
|
+
*
|
|
488
|
+
* @since 2.2.0
|
|
489
|
+
*/
|
|
490
|
+
async updateOrderCustomer(ctx, { customerId, orderId, note }) {
|
|
491
|
+
const order = await this.getOrderOrThrow(ctx, orderId);
|
|
492
|
+
const currentCustomer = order.customer;
|
|
493
|
+
if ((currentCustomer === null || currentCustomer === void 0 ? void 0 : currentCustomer.id) === customerId) {
|
|
494
|
+
// No change in customer, so just return the order as-is
|
|
495
|
+
return order;
|
|
496
|
+
}
|
|
497
|
+
const targetCustomer = await this.customerService.findOne(ctx, customerId, [
|
|
498
|
+
"channels",
|
|
499
|
+
]);
|
|
500
|
+
if (!targetCustomer) {
|
|
501
|
+
throw new errors_1.EntityNotFoundError("Customer", customerId);
|
|
502
|
+
}
|
|
503
|
+
// ensure the customer is assigned to the same channels as the order
|
|
504
|
+
const channelIds = order.channels.map((c) => c.id);
|
|
505
|
+
const customerChannelIds = targetCustomer.channels.map((c) => c.id);
|
|
506
|
+
const missingChannelIds = channelIds.filter((id) => !customerChannelIds.includes(id));
|
|
507
|
+
if (missingChannelIds.length) {
|
|
508
|
+
throw new errors_1.UserInputError(`error.target-customer-not-assigned-to-order-channels`, {
|
|
509
|
+
channelIds: missingChannelIds.join(", "),
|
|
510
|
+
});
|
|
511
|
+
}
|
|
512
|
+
const updatedOrder = await this.addCustomerToOrder(ctx, order.id, targetCustomer);
|
|
513
|
+
await this.eventBus.publish(new order_event_1.OrderEvent(ctx, updatedOrder, "updated"));
|
|
514
|
+
await this.historyService.createHistoryEntryForOrder({
|
|
515
|
+
ctx,
|
|
516
|
+
orderId,
|
|
517
|
+
type: generated_types_1.HistoryEntryType.ORDER_CUSTOMER_UPDATED,
|
|
518
|
+
data: {
|
|
519
|
+
previousCustomerId: currentCustomer === null || currentCustomer === void 0 ? void 0 : currentCustomer.id,
|
|
520
|
+
previousCustomerName: currentCustomer &&
|
|
521
|
+
`${currentCustomer.firstName} ${currentCustomer.lastName}`,
|
|
522
|
+
newCustomerId: targetCustomer.id,
|
|
523
|
+
newCustomerName: `${targetCustomer.firstName} ${targetCustomer.lastName}`,
|
|
524
|
+
note,
|
|
525
|
+
},
|
|
526
|
+
});
|
|
527
|
+
return updatedOrder;
|
|
528
|
+
}
|
|
529
|
+
async addItemToOrder(ctx, orderId, productVariantId, quantity, customFields, relations) {
|
|
530
|
+
const result = await this.addItemsToOrder(ctx, orderId, [{ productVariantId, quantity, customFields }], relations);
|
|
531
|
+
if (result.errorResults.length) {
|
|
532
|
+
return result.errorResults[0];
|
|
533
|
+
}
|
|
534
|
+
else {
|
|
535
|
+
return result.order;
|
|
536
|
+
}
|
|
537
|
+
}
|
|
538
|
+
/**
|
|
539
|
+
* @description
|
|
540
|
+
* Adds multiple items to an Order. This method is more efficient than calling `addItemToOrder`
|
|
541
|
+
* multiple times, as it only needs to fetch the entire Order once, and only performs
|
|
542
|
+
* price adjustments once at the end.
|
|
543
|
+
*
|
|
544
|
+
* Since this method can return multiple error results, it is recommended to check the `errorResults`
|
|
545
|
+
* array to determine if any errors occurred.
|
|
546
|
+
*
|
|
547
|
+
* @since 3.1.0
|
|
548
|
+
*/
|
|
549
|
+
async addItemsToOrder(ctx, orderId, items, relations) {
|
|
550
|
+
const order = await this.getOrderOrThrow(ctx, orderId);
|
|
551
|
+
const errorResults = [];
|
|
552
|
+
const updatedOrderLines = [];
|
|
553
|
+
for (const item of items) {
|
|
554
|
+
const { productVariantId, quantity, customFields } = item;
|
|
555
|
+
const existingOrderLine = await this.orderModifier.getExistingOrderLine(ctx, order, productVariantId, customFields);
|
|
556
|
+
const validationError = this.assertQuantityIsPositive(quantity) ||
|
|
557
|
+
this.assertAddingItemsState(order) ||
|
|
558
|
+
this.assertNotOverOrderItemsLimit(order, quantity) ||
|
|
559
|
+
this.assertNotOverOrderLineItemsLimit(existingOrderLine, quantity);
|
|
560
|
+
if (validationError) {
|
|
561
|
+
errorResults.push(validationError);
|
|
562
|
+
continue;
|
|
563
|
+
}
|
|
564
|
+
const variant = await this.connection.getEntityOrThrow(ctx, product_variant_entity_1.ProductVariant, productVariantId, {
|
|
565
|
+
relations: ["product"],
|
|
566
|
+
where: {
|
|
567
|
+
enabled: true,
|
|
568
|
+
deletedAt: (0, typeorm_1.IsNull)(),
|
|
569
|
+
},
|
|
570
|
+
loadEagerRelations: false,
|
|
571
|
+
});
|
|
572
|
+
if (variant.product.enabled === false) {
|
|
573
|
+
throw new errors_1.EntityNotFoundError("ProductVariant", productVariantId);
|
|
574
|
+
}
|
|
575
|
+
const existingQuantityInOtherLines = (0, shared_utils_1.summate)(order.lines.filter((l) => (0, utils_1.idsAreEqual)(l.productVariantId, productVariantId) &&
|
|
576
|
+
!(0, utils_1.idsAreEqual)(l.id, existingOrderLine === null || existingOrderLine === void 0 ? void 0 : existingOrderLine.id)), "quantity");
|
|
577
|
+
const correctedQuantity = await this.orderModifier.constrainQuantityToSaleable(ctx, variant, quantity, existingOrderLine === null || existingOrderLine === void 0 ? void 0 : existingOrderLine.quantity, existingQuantityInOtherLines);
|
|
578
|
+
if (correctedQuantity === 0) {
|
|
579
|
+
errorResults.push(new generated_graphql_shop_errors_1.InsufficientStockError({
|
|
580
|
+
order,
|
|
581
|
+
quantityAvailable: correctedQuantity,
|
|
582
|
+
}));
|
|
583
|
+
continue;
|
|
584
|
+
}
|
|
585
|
+
const { orderMiddlewares } = this.configService.orderOptions;
|
|
586
|
+
let shouldContinueOuterLoopNextInteration = false;
|
|
587
|
+
for (const middleware of orderMiddlewares) {
|
|
588
|
+
if (middleware.shouldAddItemToOrder) {
|
|
589
|
+
const error = await middleware.shouldAddItemToOrder(ctx, order, {
|
|
590
|
+
productVariant: variant,
|
|
591
|
+
quantity: correctedQuantity,
|
|
592
|
+
customFields,
|
|
593
|
+
});
|
|
594
|
+
if (error) {
|
|
595
|
+
errorResults.push(new generated_graphql_admin_errors_1.OrderMiddlewareError({ middlewareError: error }));
|
|
596
|
+
shouldContinueOuterLoopNextInteration = true;
|
|
597
|
+
}
|
|
598
|
+
}
|
|
599
|
+
}
|
|
600
|
+
if (shouldContinueOuterLoopNextInteration)
|
|
601
|
+
continue;
|
|
602
|
+
const orderLine = await this.orderModifier.getOrCreateOrderLine(ctx, order, productVariantId, customFields);
|
|
603
|
+
if (correctedQuantity < quantity) {
|
|
604
|
+
const newQuantity = (existingOrderLine ? existingOrderLine === null || existingOrderLine === void 0 ? void 0 : existingOrderLine.quantity : 0) +
|
|
605
|
+
correctedQuantity;
|
|
606
|
+
await this.orderModifier.updateOrderLineQuantity(ctx, orderLine, newQuantity, order);
|
|
607
|
+
}
|
|
608
|
+
else {
|
|
609
|
+
await this.orderModifier.updateOrderLineQuantity(ctx, orderLine, correctedQuantity, order);
|
|
610
|
+
}
|
|
611
|
+
updatedOrderLines.push(orderLine);
|
|
612
|
+
const quantityWasAdjustedDown = correctedQuantity < quantity;
|
|
613
|
+
if (quantityWasAdjustedDown) {
|
|
614
|
+
errorResults.push(new generated_graphql_shop_errors_1.InsufficientStockError({
|
|
615
|
+
quantityAvailable: correctedQuantity,
|
|
616
|
+
order,
|
|
617
|
+
}));
|
|
618
|
+
continue;
|
|
619
|
+
}
|
|
620
|
+
}
|
|
621
|
+
const updatedOrder = await this.applyPriceAdjustments(ctx, order, updatedOrderLines, relations);
|
|
622
|
+
// for any InsufficientStockError errors, we want to make sure we use the final updatedOrder
|
|
623
|
+
// after having applied all price adjustments
|
|
624
|
+
for (const [i, errorResult] of Object.entries(errorResults)) {
|
|
625
|
+
if (errorResult.__typename === "InsufficientStockError") {
|
|
626
|
+
errorResults[+i] = new generated_graphql_shop_errors_1.InsufficientStockError({
|
|
627
|
+
quantityAvailable: errorResult.quantityAvailable,
|
|
628
|
+
order: updatedOrder,
|
|
629
|
+
});
|
|
630
|
+
}
|
|
631
|
+
}
|
|
632
|
+
return {
|
|
633
|
+
order: updatedOrder,
|
|
634
|
+
errorResults,
|
|
635
|
+
};
|
|
636
|
+
}
|
|
637
|
+
/**
|
|
638
|
+
* @description
|
|
639
|
+
* Toggles exclusion of a promotion in the Order.
|
|
640
|
+
*/
|
|
641
|
+
async toggleExcludePromotionInOrder(ctx, orderId, promotionId) {
|
|
642
|
+
const order = await this.getOrderOrThrow(ctx, orderId);
|
|
643
|
+
if (!order)
|
|
644
|
+
throw new Error("Order not found");
|
|
645
|
+
const promotion = order.promotions.find((el) => el.id === promotionId) ||
|
|
646
|
+
(await this.promotionService.findOne(ctx, promotionId));
|
|
647
|
+
if (!promotion)
|
|
648
|
+
return order;
|
|
649
|
+
// When removing a global promotion which has triggered an Order-level discount
|
|
650
|
+
// we need to make sure we persist the changes to the adjustments array of
|
|
651
|
+
// any affected OrderLines.
|
|
652
|
+
const affectedOrderLines = order.lines.filter((line) => line.adjustments.filter((a) => a.type === generated_types_1.AdjustmentType.DISTRIBUTED_ORDER_PROMOTION).length);
|
|
653
|
+
const promotionIdStr = promotionId.toString();
|
|
654
|
+
const found = order.excludedPromotionIds.find((el) => el === promotionIdStr);
|
|
655
|
+
if (found)
|
|
656
|
+
order.excludedPromotionIds = order.excludedPromotionIds.filter((el) => el !== promotionIdStr);
|
|
657
|
+
else
|
|
658
|
+
order.excludedPromotionIds.push(promotionIdStr);
|
|
659
|
+
await this.historyService.createHistoryEntryForOrder({
|
|
660
|
+
ctx,
|
|
661
|
+
orderId: order.id,
|
|
662
|
+
type: generated_types_1.HistoryEntryType.ORDER_NOTE,
|
|
663
|
+
data: {
|
|
664
|
+
note: found
|
|
665
|
+
? `promotion ${promotion.name} removed from exclusion`
|
|
666
|
+
: `promotion ${promotion.name} excluded`,
|
|
667
|
+
},
|
|
668
|
+
});
|
|
669
|
+
const result = await this.applyPriceAdjustments(ctx, order);
|
|
670
|
+
await this.connection
|
|
671
|
+
.getRepository(ctx, order_line_entity_1.OrderLine)
|
|
672
|
+
.save(affectedOrderLines);
|
|
673
|
+
return result;
|
|
674
|
+
}
|
|
675
|
+
/**
|
|
676
|
+
* @description
|
|
677
|
+
* Adjusts the quantity and/or custom field values of an existing OrderLine.
|
|
678
|
+
*
|
|
679
|
+
* If you need to adjust multiple OrderLines, use `adjustOrderLines()` instead.
|
|
680
|
+
*/
|
|
681
|
+
async adjustOrderLine(ctx, orderId, orderLineId, quantity, customFields, relations) {
|
|
682
|
+
const result = await this.adjustOrderLines(ctx, orderId, [{ orderLineId, quantity, customFields }], relations);
|
|
683
|
+
if (result.errorResults.length) {
|
|
684
|
+
return result.errorResults[0];
|
|
685
|
+
}
|
|
686
|
+
else {
|
|
687
|
+
return result.order;
|
|
688
|
+
}
|
|
689
|
+
}
|
|
690
|
+
async adjustOrderLines(ctx, orderId, lines, relations) {
|
|
691
|
+
const order = await this.getOrderOrThrow(ctx, orderId);
|
|
692
|
+
const errorResults = [];
|
|
693
|
+
const updatedOrderLines = [];
|
|
694
|
+
for (const line of lines) {
|
|
695
|
+
const { orderLineId, quantity, customFields } = line;
|
|
696
|
+
const orderLine = this.getOrderLineOrThrow(order, orderLineId);
|
|
697
|
+
const validationError = this.assertAddingItemsState(order) ||
|
|
698
|
+
this.assertQuantityIsPositive(quantity) ||
|
|
699
|
+
this.assertNotOverOrderItemsLimit(order, quantity - orderLine.quantity) ||
|
|
700
|
+
this.assertNotOverOrderLineItemsLimit(orderLine, quantity - orderLine.quantity);
|
|
701
|
+
if (validationError) {
|
|
702
|
+
errorResults.push(validationError);
|
|
703
|
+
continue;
|
|
704
|
+
}
|
|
705
|
+
const { orderMiddlewares } = this.configService.orderOptions;
|
|
706
|
+
let shouldContinueOuterLoopNextInteration = false;
|
|
707
|
+
for (const middleware of orderMiddlewares) {
|
|
708
|
+
if (middleware.shouldAdjustOrderLine) {
|
|
709
|
+
const error = await middleware.shouldAdjustOrderLine(ctx, order, {
|
|
710
|
+
orderLine,
|
|
711
|
+
quantity,
|
|
712
|
+
customFields,
|
|
713
|
+
});
|
|
714
|
+
if (error) {
|
|
715
|
+
errorResults.push(new generated_graphql_admin_errors_1.OrderMiddlewareError({ middlewareError: error }));
|
|
716
|
+
shouldContinueOuterLoopNextInteration = true;
|
|
717
|
+
}
|
|
718
|
+
}
|
|
719
|
+
}
|
|
720
|
+
if (shouldContinueOuterLoopNextInteration)
|
|
721
|
+
continue;
|
|
722
|
+
if (customFields != null) {
|
|
723
|
+
orderLine.customFields = customFields;
|
|
724
|
+
await this.customFieldRelationService.updateRelations(ctx, order_line_entity_1.OrderLine, { customFields }, orderLine);
|
|
725
|
+
}
|
|
726
|
+
const existingQuantityInOtherLines = (0, shared_utils_1.summate)(order.lines.filter((l) => (0, utils_1.idsAreEqual)(l.productVariantId, orderLine.productVariantId) &&
|
|
727
|
+
!(0, utils_1.idsAreEqual)(l.id, orderLineId)), "quantity");
|
|
728
|
+
const correctedQuantity = await this.orderModifier.constrainQuantityToSaleable(ctx, orderLine.productVariant, quantity, 0, existingQuantityInOtherLines);
|
|
729
|
+
if (correctedQuantity === 0) {
|
|
730
|
+
order.lines = order.lines.filter((l) => !(0, utils_1.idsAreEqual)(l.id, orderLine.id));
|
|
731
|
+
const deletedOrderLine = new order_line_entity_1.OrderLine(orderLine);
|
|
732
|
+
await this.connection.getRepository(ctx, order_line_entity_1.OrderLine).remove(orderLine);
|
|
733
|
+
await this.eventBus.publish(new order_line_event_1.OrderLineEvent(ctx, order, deletedOrderLine, "deleted"));
|
|
734
|
+
}
|
|
735
|
+
else {
|
|
736
|
+
await this.orderModifier.updateOrderLineQuantity(ctx, orderLine, correctedQuantity, order);
|
|
737
|
+
updatedOrderLines.push(orderLine);
|
|
738
|
+
}
|
|
739
|
+
const quantityWasAdjustedDown = correctedQuantity < quantity;
|
|
740
|
+
if (quantityWasAdjustedDown) {
|
|
741
|
+
errorResults.push(new generated_graphql_shop_errors_1.InsufficientStockError({
|
|
742
|
+
quantityAvailable: correctedQuantity,
|
|
743
|
+
order,
|
|
744
|
+
}));
|
|
745
|
+
}
|
|
746
|
+
}
|
|
747
|
+
const updatedOrder = await this.applyPriceAdjustments(ctx, order, updatedOrderLines, relations);
|
|
748
|
+
for (const [i, errorResult] of Object.entries(errorResults)) {
|
|
749
|
+
if (errorResult.__typename === "InsufficientStockError") {
|
|
750
|
+
errorResults[+i] = new generated_graphql_shop_errors_1.InsufficientStockError({
|
|
751
|
+
quantityAvailable: errorResult.quantityAvailable,
|
|
752
|
+
order: updatedOrder,
|
|
753
|
+
});
|
|
754
|
+
}
|
|
755
|
+
}
|
|
756
|
+
return {
|
|
757
|
+
order: updatedOrder,
|
|
758
|
+
errorResults,
|
|
759
|
+
};
|
|
760
|
+
}
|
|
761
|
+
/**
|
|
762
|
+
* @description
|
|
763
|
+
* Removes the specified OrderLine from the Order.
|
|
764
|
+
*
|
|
765
|
+
* If you need to remove multiple OrderLines, use `removeItemsFromOrder()` instead.
|
|
766
|
+
*/
|
|
767
|
+
async removeItemFromOrder(ctx, orderId, orderLineId) {
|
|
768
|
+
return this.removeItemsFromOrder(ctx, orderId, [orderLineId]);
|
|
769
|
+
}
|
|
770
|
+
/**
|
|
771
|
+
* @description
|
|
772
|
+
* Removes the specified OrderLines from the Order.
|
|
773
|
+
* This method is more efficient than calling `removeItemFromOrder` multiple times, as it only needs to fetch
|
|
774
|
+
* the entire Order once, and only performs price adjustments once at the end.
|
|
775
|
+
*
|
|
776
|
+
* @since 3.1.0
|
|
777
|
+
*/
|
|
778
|
+
async removeItemsFromOrder(ctx, orderId, orderLineIds) {
|
|
779
|
+
const order = await this.getOrderOrThrow(ctx, orderId);
|
|
780
|
+
const validationError = this.assertAddingItemsState(order);
|
|
781
|
+
if (validationError) {
|
|
782
|
+
return validationError;
|
|
783
|
+
}
|
|
784
|
+
const orderLinesToDelete = [];
|
|
785
|
+
for (const orderLineId of orderLineIds) {
|
|
786
|
+
const orderLine = this.getOrderLineOrThrow(order, orderLineId);
|
|
787
|
+
const { orderMiddlewares } = this.configService.orderOptions;
|
|
788
|
+
for (const middleware of orderMiddlewares) {
|
|
789
|
+
if (middleware.shouldRemoveItemFromOrder) {
|
|
790
|
+
const error = await middleware.shouldRemoveItemFromOrder(ctx, order, orderLine);
|
|
791
|
+
if (error) {
|
|
792
|
+
return new generated_graphql_admin_errors_1.OrderMiddlewareError({ middlewareError: error });
|
|
793
|
+
}
|
|
794
|
+
}
|
|
795
|
+
}
|
|
796
|
+
orderLinesToDelete.push(orderLine);
|
|
797
|
+
}
|
|
798
|
+
order.lines = order.lines.filter((line) => !orderLineIds.find((olId) => (0, utils_1.idsAreEqual)(line.id, olId)));
|
|
799
|
+
// Persist the orderLine removal before applying price adjustments
|
|
800
|
+
// so that any hydration of the Order entity during the course of the
|
|
801
|
+
// `applyPriceAdjustments()` (e.g. in a ShippingEligibilityChecker etc)
|
|
802
|
+
// will not re-add the OrderLine.
|
|
803
|
+
await this.connection
|
|
804
|
+
.getRepository(ctx, order_entity_1.Order)
|
|
805
|
+
.save(order, { reload: false });
|
|
806
|
+
const updatedOrder = await this.applyPriceAdjustments(ctx, order);
|
|
807
|
+
for (const orderLine of orderLinesToDelete) {
|
|
808
|
+
const deletedOrderLine = new order_line_entity_1.OrderLine(orderLine);
|
|
809
|
+
await this.connection.getRepository(ctx, order_line_entity_1.OrderLine).remove(orderLine);
|
|
810
|
+
await this.eventBus.publish(new order_line_event_1.OrderLineEvent(ctx, order, deletedOrderLine, "deleted"));
|
|
811
|
+
}
|
|
812
|
+
return updatedOrder;
|
|
813
|
+
}
|
|
814
|
+
/**
|
|
815
|
+
* @description
|
|
816
|
+
* Removes all OrderLines from the Order.
|
|
817
|
+
*/
|
|
818
|
+
async removeAllItemsFromOrder(ctx, orderId) {
|
|
819
|
+
const order = await this.getOrderOrThrow(ctx, orderId);
|
|
820
|
+
const validationError = this.assertAddingItemsState(order);
|
|
821
|
+
if (validationError) {
|
|
822
|
+
return validationError;
|
|
823
|
+
}
|
|
824
|
+
await this.connection.getRepository(ctx, order_line_entity_1.OrderLine).remove(order.lines);
|
|
825
|
+
order.lines = [];
|
|
826
|
+
const updatedOrder = await this.applyPriceAdjustments(ctx, order);
|
|
827
|
+
return updatedOrder;
|
|
828
|
+
}
|
|
829
|
+
/**
|
|
830
|
+
* @description
|
|
831
|
+
* Adds a {@link Surcharge} to the Order.
|
|
832
|
+
*/
|
|
833
|
+
async addSurchargeToOrder(ctx, orderId, surchargeInput) {
|
|
834
|
+
const order = await this.getOrderOrThrow(ctx, orderId);
|
|
835
|
+
const surcharge = await this.connection.getRepository(ctx, surcharge_entity_1.Surcharge).save(new surcharge_entity_1.Surcharge(Object.assign({ taxLines: [], sku: "", listPriceIncludesTax: ctx.channel.pricesIncludeTax, order }, surchargeInput)));
|
|
836
|
+
order.surcharges.push(surcharge);
|
|
837
|
+
const updatedOrder = await this.applyPriceAdjustments(ctx, order);
|
|
838
|
+
return updatedOrder;
|
|
839
|
+
}
|
|
840
|
+
/**
|
|
841
|
+
* @description
|
|
842
|
+
* Removes a {@link Surcharge} from the Order.
|
|
843
|
+
*/
|
|
844
|
+
async removeSurchargeFromOrder(ctx, orderId, surchargeId) {
|
|
845
|
+
const order = await this.getOrderOrThrow(ctx, orderId);
|
|
846
|
+
const surcharge = await this.connection.getEntityOrThrow(ctx, surcharge_entity_1.Surcharge, surchargeId);
|
|
847
|
+
if (order.surcharges.find((s) => (0, utils_1.idsAreEqual)(s.id, surcharge.id))) {
|
|
848
|
+
order.surcharges = order.surcharges.filter((s) => !(0, utils_1.idsAreEqual)(s.id, surchargeId));
|
|
849
|
+
const updatedOrder = await this.applyPriceAdjustments(ctx, order);
|
|
850
|
+
await this.connection.getRepository(ctx, surcharge_entity_1.Surcharge).remove(surcharge);
|
|
851
|
+
return updatedOrder;
|
|
852
|
+
}
|
|
853
|
+
else {
|
|
854
|
+
return order;
|
|
855
|
+
}
|
|
856
|
+
}
|
|
857
|
+
/**
|
|
858
|
+
* @description
|
|
859
|
+
* Applies a coupon code to the Order, which should be a valid coupon code as specified in the configuration
|
|
860
|
+
* of an active {@link Promotion}.
|
|
861
|
+
*/
|
|
862
|
+
async applyCouponCode(ctx, orderId, couponCode) {
|
|
863
|
+
const order = await this.getOrderOrThrow(ctx, orderId);
|
|
864
|
+
if (order.couponCodes.includes(couponCode)) {
|
|
865
|
+
return order;
|
|
866
|
+
}
|
|
867
|
+
const validationResult = await this.promotionService.validateCouponCode(ctx, couponCode, order.customer && order.customer.id);
|
|
868
|
+
if ((0, error_result_1.isGraphQlErrorResult)(validationResult)) {
|
|
869
|
+
return validationResult;
|
|
870
|
+
}
|
|
871
|
+
const { orderMiddlewares } = this.configService.orderOptions;
|
|
872
|
+
for (const middleware of orderMiddlewares) {
|
|
873
|
+
if (middleware.shouldAddCouponCode) {
|
|
874
|
+
const error = await middleware.shouldAddCouponCode(ctx, order, couponCode);
|
|
875
|
+
if (error) {
|
|
876
|
+
return new generated_graphql_admin_errors_1.OrderMiddlewareError({ middlewareError: error });
|
|
877
|
+
}
|
|
878
|
+
}
|
|
879
|
+
}
|
|
880
|
+
order.couponCodes.push(couponCode);
|
|
881
|
+
await this.historyService.createHistoryEntryForOrder({
|
|
882
|
+
ctx,
|
|
883
|
+
orderId: order.id,
|
|
884
|
+
type: generated_types_1.HistoryEntryType.ORDER_COUPON_APPLIED,
|
|
885
|
+
data: { couponCode, promotionId: validationResult.id },
|
|
886
|
+
});
|
|
887
|
+
await this.eventBus.publish(new coupon_code_event_1.CouponCodeEvent(ctx, couponCode, orderId, "assigned"));
|
|
888
|
+
return this.applyPriceAdjustments(ctx, order);
|
|
889
|
+
}
|
|
890
|
+
/**
|
|
891
|
+
* @description
|
|
892
|
+
* Removes a coupon code from the Order.
|
|
893
|
+
*/
|
|
894
|
+
async removeCouponCode(ctx, orderId, couponCode) {
|
|
895
|
+
const order = await this.getOrderOrThrow(ctx, orderId);
|
|
896
|
+
if (order.couponCodes.includes(couponCode)) {
|
|
897
|
+
// When removing a couponCode which has triggered an Order-level discount
|
|
898
|
+
// we need to make sure we persist the changes to the adjustments array of
|
|
899
|
+
// any affected OrderLines.
|
|
900
|
+
const affectedOrderLines = order.lines.filter((line) => line.adjustments.filter((a) => a.type === generated_types_1.AdjustmentType.DISTRIBUTED_ORDER_PROMOTION).length);
|
|
901
|
+
order.couponCodes = order.couponCodes.filter((cc) => cc !== couponCode);
|
|
902
|
+
await this.historyService.createHistoryEntryForOrder({
|
|
903
|
+
ctx,
|
|
904
|
+
orderId: order.id,
|
|
905
|
+
type: generated_types_1.HistoryEntryType.ORDER_COUPON_REMOVED,
|
|
906
|
+
data: { couponCode },
|
|
907
|
+
});
|
|
908
|
+
await this.eventBus.publish(new coupon_code_event_1.CouponCodeEvent(ctx, couponCode, orderId, "removed"));
|
|
909
|
+
const result = await this.applyPriceAdjustments(ctx, order);
|
|
910
|
+
await this.connection
|
|
911
|
+
.getRepository(ctx, order_line_entity_1.OrderLine)
|
|
912
|
+
.save(affectedOrderLines);
|
|
913
|
+
return result;
|
|
914
|
+
}
|
|
915
|
+
else {
|
|
916
|
+
return order;
|
|
917
|
+
}
|
|
918
|
+
}
|
|
919
|
+
/**
|
|
920
|
+
* @description
|
|
921
|
+
* Returns all {@link Promotion}s associated with an Order.
|
|
922
|
+
*/
|
|
923
|
+
async getOrderPromotions(ctx, orderId) {
|
|
924
|
+
const order = await this.connection.getEntityOrThrow(ctx, order_entity_1.Order, orderId, {
|
|
925
|
+
channelId: ctx.channelId,
|
|
926
|
+
relations: ["promotions"],
|
|
927
|
+
});
|
|
928
|
+
return order.promotions.map((p) => this.translator.translate(p, ctx)) || [];
|
|
929
|
+
}
|
|
930
|
+
/**
|
|
931
|
+
* @description
|
|
932
|
+
* Returns the next possible states that the Order may transition to.
|
|
933
|
+
*/
|
|
934
|
+
getNextOrderStates(order) {
|
|
935
|
+
return this.orderStateMachine.getNextStates(order);
|
|
936
|
+
}
|
|
937
|
+
/**
|
|
938
|
+
* @description
|
|
939
|
+
* Sets the shipping address for the Order.
|
|
940
|
+
*/
|
|
941
|
+
async setShippingAddress(ctx, orderId, input) {
|
|
942
|
+
const order = await this.getOrderOrThrow(ctx, orderId);
|
|
943
|
+
const country = await this.countryService.findOneByCode(ctx, input.countryCode);
|
|
944
|
+
const shippingAddress = Object.assign(Object.assign({}, input), { countryCode: input.countryCode, country: country.name });
|
|
945
|
+
await this.connection
|
|
946
|
+
.getRepository(ctx, order_entity_1.Order)
|
|
947
|
+
.createQueryBuilder("order")
|
|
948
|
+
.update(order_entity_1.Order)
|
|
949
|
+
.set({ shippingAddress })
|
|
950
|
+
.where("id = :id", { id: order.id })
|
|
951
|
+
.execute();
|
|
952
|
+
order.shippingAddress = shippingAddress;
|
|
953
|
+
// Since a changed ShippingAddress could alter the activeTaxZone,
|
|
954
|
+
// we will remove any cached activeTaxZone, so it can be re-calculated
|
|
955
|
+
// as needed.
|
|
956
|
+
this.requestCache.set(ctx, constants_1.CacheKey.ActiveTaxZone, undefined);
|
|
957
|
+
this.requestCache.set(ctx, constants_1.CacheKey.ActiveTaxZone_PPA, undefined);
|
|
958
|
+
return this.applyPriceAdjustments(ctx, order, order.lines);
|
|
959
|
+
}
|
|
960
|
+
/**
|
|
961
|
+
* @description
|
|
962
|
+
* Sets the billing address for the Order.
|
|
963
|
+
*/
|
|
964
|
+
async setBillingAddress(ctx, orderId, input) {
|
|
965
|
+
const order = await this.getOrderOrThrow(ctx, orderId);
|
|
966
|
+
const country = await this.countryService.findOneByCode(ctx, input.countryCode);
|
|
967
|
+
const billingAddress = Object.assign(Object.assign({}, input), { countryCode: input.countryCode, country: country.name });
|
|
968
|
+
await this.connection
|
|
969
|
+
.getRepository(ctx, order_entity_1.Order)
|
|
970
|
+
.createQueryBuilder("order")
|
|
971
|
+
.update(order_entity_1.Order)
|
|
972
|
+
.set({ billingAddress })
|
|
973
|
+
.where("id = :id", { id: order.id })
|
|
974
|
+
.execute();
|
|
975
|
+
order.billingAddress = billingAddress;
|
|
976
|
+
// Since a changed BillingAddress could alter the activeTaxZone,
|
|
977
|
+
// we will remove any cached activeTaxZone, so it can be re-calculated
|
|
978
|
+
// as needed.
|
|
979
|
+
this.requestCache.set(ctx, constants_1.CacheKey.ActiveTaxZone, undefined);
|
|
980
|
+
this.requestCache.set(ctx, constants_1.CacheKey.ActiveTaxZone_PPA, undefined);
|
|
981
|
+
return this.applyPriceAdjustments(ctx, order, order.lines);
|
|
982
|
+
}
|
|
983
|
+
/**
|
|
984
|
+
* @description
|
|
985
|
+
* Returns an array of quotes stating which {@link ShippingMethod}s may be applied to this Order.
|
|
986
|
+
* This is determined by the configured {@link ShippingEligibilityChecker} of each ShippingMethod.
|
|
987
|
+
*
|
|
988
|
+
* The quote also includes a price for each method, as determined by the configured
|
|
989
|
+
* {@link ShippingCalculator} of each eligible ShippingMethod.
|
|
990
|
+
*/
|
|
991
|
+
async getEligibleShippingMethods(ctx, orderId) {
|
|
992
|
+
const order = await this.getOrderOrThrow(ctx, orderId);
|
|
993
|
+
const eligibleMethods = await this.shippingCalculator.getEligibleShippingMethods(ctx, order);
|
|
994
|
+
return eligibleMethods.map((eligible) => {
|
|
995
|
+
const { price, taxRate, priceIncludesTax, metadata } = eligible.result;
|
|
996
|
+
return {
|
|
997
|
+
id: eligible.method.id,
|
|
998
|
+
price: priceIncludesTax ? (0, tax_utils_1.netPriceOf)(price, taxRate) : price,
|
|
999
|
+
priceWithTax: priceIncludesTax ? price : (0, tax_utils_1.grossPriceOf)(price, taxRate),
|
|
1000
|
+
description: eligible.method.description,
|
|
1001
|
+
name: eligible.method.name,
|
|
1002
|
+
code: eligible.method.code,
|
|
1003
|
+
metadata,
|
|
1004
|
+
customFields: eligible.method.customFields,
|
|
1005
|
+
};
|
|
1006
|
+
});
|
|
1007
|
+
}
|
|
1008
|
+
/**
|
|
1009
|
+
* @description
|
|
1010
|
+
* Returns an array of quotes stating which {@link PaymentMethod}s may be used on this Order.
|
|
1011
|
+
*/
|
|
1012
|
+
async getEligiblePaymentMethods(ctx, orderId) {
|
|
1013
|
+
const order = await this.getOrderOrThrow(ctx, orderId);
|
|
1014
|
+
return this.paymentMethodService.getEligiblePaymentMethods(ctx, order);
|
|
1015
|
+
}
|
|
1016
|
+
/**
|
|
1017
|
+
* @description
|
|
1018
|
+
* Sets the ShippingMethod to be used on this Order.
|
|
1019
|
+
*/
|
|
1020
|
+
async setShippingMethod(ctx, orderId, shippingMethodIds) {
|
|
1021
|
+
const order = await this.getOrderOrThrow(ctx, orderId);
|
|
1022
|
+
const validationError = this.assertAddingItemsState(order);
|
|
1023
|
+
if (validationError) {
|
|
1024
|
+
return validationError;
|
|
1025
|
+
}
|
|
1026
|
+
const result = await this.orderModifier.setShippingMethods(ctx, order, shippingMethodIds);
|
|
1027
|
+
if ((0, error_result_1.isGraphQlErrorResult)(result)) {
|
|
1028
|
+
return result;
|
|
1029
|
+
}
|
|
1030
|
+
const updatedOrder = await this.getOrderOrThrow(ctx, orderId);
|
|
1031
|
+
await this.applyPriceAdjustments(ctx, updatedOrder);
|
|
1032
|
+
return this.connection.getRepository(ctx, order_entity_1.Order).save(updatedOrder);
|
|
1033
|
+
}
|
|
1034
|
+
/**
|
|
1035
|
+
* @description
|
|
1036
|
+
* Transitions the Order to the given state.
|
|
1037
|
+
*/
|
|
1038
|
+
async transitionToState(ctx, orderId, state) {
|
|
1039
|
+
const order = await this.getOrderOrThrow(ctx, orderId);
|
|
1040
|
+
order.payments = await this.getOrderPayments(ctx, orderId);
|
|
1041
|
+
const fromState = order.state;
|
|
1042
|
+
let finalize;
|
|
1043
|
+
try {
|
|
1044
|
+
const result = await this.orderStateMachine.transition(ctx, order, state);
|
|
1045
|
+
finalize = result.finalize;
|
|
1046
|
+
}
|
|
1047
|
+
catch (e) {
|
|
1048
|
+
const transitionError = ctx.translate(e.message, {
|
|
1049
|
+
fromState,
|
|
1050
|
+
toState: state,
|
|
1051
|
+
});
|
|
1052
|
+
return new generated_graphql_shop_errors_1.OrderStateTransitionError({
|
|
1053
|
+
transitionError,
|
|
1054
|
+
fromState,
|
|
1055
|
+
toState: state,
|
|
1056
|
+
});
|
|
1057
|
+
}
|
|
1058
|
+
await this.connection
|
|
1059
|
+
.getRepository(ctx, order_entity_1.Order)
|
|
1060
|
+
.save(order, { reload: false });
|
|
1061
|
+
await this.eventBus.publish(new order_state_transition_event_1.OrderStateTransitionEvent(fromState, state, ctx, order));
|
|
1062
|
+
await finalize();
|
|
1063
|
+
await this.connection
|
|
1064
|
+
.getRepository(ctx, order_entity_1.Order)
|
|
1065
|
+
.save(order, { reload: false });
|
|
1066
|
+
return order;
|
|
1067
|
+
}
|
|
1068
|
+
/**
|
|
1069
|
+
* @description
|
|
1070
|
+
* Transitions a Fulfillment to the given state and then transitions the Order state based on
|
|
1071
|
+
* whether all Fulfillments of the Order are shipped or delivered.
|
|
1072
|
+
*/
|
|
1073
|
+
async transitionFulfillmentToState(ctx, fulfillmentId, state) {
|
|
1074
|
+
const result = await this.fulfillmentService.transitionToState(ctx, fulfillmentId, state);
|
|
1075
|
+
if ((0, error_result_1.isGraphQlErrorResult)(result)) {
|
|
1076
|
+
return result;
|
|
1077
|
+
}
|
|
1078
|
+
return result.fulfillment;
|
|
1079
|
+
}
|
|
1080
|
+
/**
|
|
1081
|
+
* @description
|
|
1082
|
+
* Transitions a Refund to the given state
|
|
1083
|
+
*/
|
|
1084
|
+
async transitionRefundToState(ctx, refundId, state, transactionId) {
|
|
1085
|
+
const refund = await this.connection.getEntityOrThrow(ctx, refund_entity_1.Refund, refundId, {
|
|
1086
|
+
relations: ["payment", "payment.order"],
|
|
1087
|
+
});
|
|
1088
|
+
if (transactionId && refund.transactionId !== transactionId) {
|
|
1089
|
+
refund.transactionId = transactionId;
|
|
1090
|
+
}
|
|
1091
|
+
const fromState = refund.state;
|
|
1092
|
+
const toState = state;
|
|
1093
|
+
const { finalize } = await this.refundStateMachine.transition(ctx, refund.payment.order, refund, toState);
|
|
1094
|
+
await this.connection.getRepository(ctx, refund_entity_1.Refund).save(refund);
|
|
1095
|
+
await finalize();
|
|
1096
|
+
await this.eventBus.publish(new refund_state_transition_event_1.RefundStateTransitionEvent(fromState, toState, ctx, refund, refund.payment.order));
|
|
1097
|
+
return refund;
|
|
1098
|
+
}
|
|
1099
|
+
/**
|
|
1100
|
+
* @description
|
|
1101
|
+
* Allows the Order to be modified, which allows several aspects of the Order to be changed:
|
|
1102
|
+
*
|
|
1103
|
+
* * Changes to OrderLine quantities
|
|
1104
|
+
* * New OrderLines being added
|
|
1105
|
+
* * Arbitrary {@link Surcharge}s being added
|
|
1106
|
+
* * Shipping or billing address changes
|
|
1107
|
+
*
|
|
1108
|
+
* Setting the `dryRun` input property to `true` will apply all changes, including updating the price of the
|
|
1109
|
+
* Order, except history entry and additional payment actions.
|
|
1110
|
+
*
|
|
1111
|
+
* __Using dryRun option, you must wrap function call in transaction manually.__
|
|
1112
|
+
*
|
|
1113
|
+
*/
|
|
1114
|
+
async modifyOrder(ctx, input) {
|
|
1115
|
+
const order = await this.getOrderOrThrow(ctx, input.orderId);
|
|
1116
|
+
const result = await this.orderModifier.modifyOrder(ctx, input, order);
|
|
1117
|
+
if ((0, error_result_1.isGraphQlErrorResult)(result)) {
|
|
1118
|
+
return result;
|
|
1119
|
+
}
|
|
1120
|
+
if (input.dryRun) {
|
|
1121
|
+
return result.order;
|
|
1122
|
+
}
|
|
1123
|
+
await this.historyService.createHistoryEntryForOrder({
|
|
1124
|
+
ctx,
|
|
1125
|
+
orderId: input.orderId,
|
|
1126
|
+
type: generated_types_1.HistoryEntryType.ORDER_MODIFIED,
|
|
1127
|
+
data: {
|
|
1128
|
+
modificationId: result.modification.id,
|
|
1129
|
+
},
|
|
1130
|
+
});
|
|
1131
|
+
return this.getOrderOrThrow(ctx, input.orderId);
|
|
1132
|
+
}
|
|
1133
|
+
/**
|
|
1134
|
+
* @description
|
|
1135
|
+
* Transitions the given {@link Payment} to a new state. If the order totalWithTax price is then
|
|
1136
|
+
* covered by Payments, the Order state will be automatically transitioned to `PaymentSettled`
|
|
1137
|
+
* or `PaymentAuthorized`.
|
|
1138
|
+
*/
|
|
1139
|
+
async transitionPaymentToState(ctx, paymentId, state) {
|
|
1140
|
+
const result = await this.paymentService.transitionToState(ctx, paymentId, state);
|
|
1141
|
+
if ((0, error_result_1.isGraphQlErrorResult)(result)) {
|
|
1142
|
+
return result;
|
|
1143
|
+
}
|
|
1144
|
+
return result;
|
|
1145
|
+
}
|
|
1146
|
+
/**
|
|
1147
|
+
* @description
|
|
1148
|
+
* Adds a new Payment to the Order. If the Order totalWithTax is covered by Payments, then the Order
|
|
1149
|
+
* state will get automatically transitioned to the `PaymentSettled` or `PaymentAuthorized` state.
|
|
1150
|
+
*/
|
|
1151
|
+
async addPaymentToOrder(ctx, orderId, input) {
|
|
1152
|
+
const order = await this.getOrderOrThrow(ctx, orderId);
|
|
1153
|
+
if (!this.canAddPaymentToOrder(order)) {
|
|
1154
|
+
return new generated_graphql_shop_errors_1.OrderPaymentStateError();
|
|
1155
|
+
}
|
|
1156
|
+
order.payments = await this.getOrderPayments(ctx, order.id);
|
|
1157
|
+
const amountToPay = order.totalWithTax - (0, order_utils_1.totalCoveredByPayments)(order);
|
|
1158
|
+
const payment = await this.paymentService.createPayment(ctx, order, amountToPay, input.method, input.metadata);
|
|
1159
|
+
if ((0, error_result_1.isGraphQlErrorResult)(payment)) {
|
|
1160
|
+
return payment;
|
|
1161
|
+
}
|
|
1162
|
+
await this.connection
|
|
1163
|
+
.getRepository(ctx, order_entity_1.Order)
|
|
1164
|
+
.createQueryBuilder()
|
|
1165
|
+
.relation("payments")
|
|
1166
|
+
.of(order)
|
|
1167
|
+
.add(payment);
|
|
1168
|
+
if (payment.state === "Error") {
|
|
1169
|
+
return new generated_graphql_shop_errors_1.PaymentFailedError({
|
|
1170
|
+
paymentErrorMessage: payment.errorMessage || "",
|
|
1171
|
+
});
|
|
1172
|
+
}
|
|
1173
|
+
if (payment.state === "Declined") {
|
|
1174
|
+
return new generated_graphql_shop_errors_1.PaymentDeclinedError({
|
|
1175
|
+
paymentErrorMessage: payment.errorMessage || "",
|
|
1176
|
+
});
|
|
1177
|
+
}
|
|
1178
|
+
return (0, utils_1.assertFound)(this.findOne(ctx, order.id));
|
|
1179
|
+
}
|
|
1180
|
+
/**
|
|
1181
|
+
* @description
|
|
1182
|
+
* We can add a Payment to the order if:
|
|
1183
|
+
* 1. the Order is in the `ArrangingPayment` state or
|
|
1184
|
+
* 2. the Order's current state can transition to `PaymentAuthorized` and `PaymentSettled`
|
|
1185
|
+
*/
|
|
1186
|
+
canAddPaymentToOrder(order) {
|
|
1187
|
+
if (order.state === "ArrangingPayment") {
|
|
1188
|
+
return true;
|
|
1189
|
+
}
|
|
1190
|
+
const canTransitionToPaymentAuthorized = this.orderStateMachine.canTransition(order.state, "PaymentAuthorized");
|
|
1191
|
+
const canTransitionToPaymentSettled = this.orderStateMachine.canTransition(order.state, "PaymentSettled");
|
|
1192
|
+
return canTransitionToPaymentAuthorized && canTransitionToPaymentSettled;
|
|
1193
|
+
}
|
|
1194
|
+
/**
|
|
1195
|
+
* @description
|
|
1196
|
+
* This method is used after modifying an existing completed order using the `modifyOrder()` method. If the modifications
|
|
1197
|
+
* cause the order total to increase (such as when adding a new OrderLine), then there will be an outstanding charge to
|
|
1198
|
+
* pay.
|
|
1199
|
+
*
|
|
1200
|
+
* This method allows you to add a new Payment and assumes the actual processing has been done manually, e.g. in the
|
|
1201
|
+
* dashboard of your payment provider.
|
|
1202
|
+
*/
|
|
1203
|
+
async addManualPaymentToOrder(ctx, input) {
|
|
1204
|
+
const order = await this.getOrderOrThrow(ctx, input.orderId);
|
|
1205
|
+
if (order.state !== "ArrangingAdditionalPayment" &&
|
|
1206
|
+
order.state !== "ArrangingPayment") {
|
|
1207
|
+
return new generated_graphql_admin_errors_1.ManualPaymentStateError();
|
|
1208
|
+
}
|
|
1209
|
+
const existingPayments = await this.getOrderPayments(ctx, order.id);
|
|
1210
|
+
order.payments = existingPayments;
|
|
1211
|
+
const amount = order.totalWithTax - (0, order_utils_1.totalCoveredByPayments)(order);
|
|
1212
|
+
const modifications = await this.getOrderModifications(ctx, order.id);
|
|
1213
|
+
const unsettledModifications = modifications.filter((m) => !m.isSettled);
|
|
1214
|
+
if (0 < unsettledModifications.length) {
|
|
1215
|
+
const outstandingModificationsTotal = (0, shared_utils_1.summate)(unsettledModifications, "priceChange");
|
|
1216
|
+
if (outstandingModificationsTotal !== amount) {
|
|
1217
|
+
throw new errors_1.InternalServerError(`The outstanding order amount (${amount}) should equal the unsettled OrderModifications total (${outstandingModificationsTotal})`);
|
|
1218
|
+
}
|
|
1219
|
+
}
|
|
1220
|
+
const payment = await this.paymentService.createManualPayment(ctx, order, amount, input);
|
|
1221
|
+
await this.connection
|
|
1222
|
+
.getRepository(ctx, order_entity_1.Order)
|
|
1223
|
+
.createQueryBuilder("order")
|
|
1224
|
+
.relation("payments")
|
|
1225
|
+
.of(order)
|
|
1226
|
+
.add(payment);
|
|
1227
|
+
for (const modification of unsettledModifications) {
|
|
1228
|
+
modification.payment = payment;
|
|
1229
|
+
await this.connection
|
|
1230
|
+
.getRepository(ctx, order_modification_entity_1.OrderModification)
|
|
1231
|
+
.save(modification);
|
|
1232
|
+
}
|
|
1233
|
+
return (0, utils_1.assertFound)(this.findOne(ctx, order.id));
|
|
1234
|
+
}
|
|
1235
|
+
/**
|
|
1236
|
+
* @description
|
|
1237
|
+
* Settles a payment by invoking the {@link PaymentMethodHandler}'s `settlePayment()` method. Automatically
|
|
1238
|
+
* transitions the Order state if all Payments are settled.
|
|
1239
|
+
*/
|
|
1240
|
+
async settlePayment(ctx, paymentId) {
|
|
1241
|
+
const payment = await this.paymentService.settlePayment(ctx, paymentId);
|
|
1242
|
+
if (!(0, error_result_1.isGraphQlErrorResult)(payment)) {
|
|
1243
|
+
if (payment.state !== "Settled") {
|
|
1244
|
+
return new generated_graphql_admin_errors_1.SettlePaymentError({
|
|
1245
|
+
paymentErrorMessage: payment.errorMessage || "",
|
|
1246
|
+
});
|
|
1247
|
+
}
|
|
1248
|
+
}
|
|
1249
|
+
return payment;
|
|
1250
|
+
}
|
|
1251
|
+
/**
|
|
1252
|
+
* @description
|
|
1253
|
+
* Cancels a payment by invoking the {@link PaymentMethodHandler}'s `cancelPayment()` method (if defined), and transitions the Payment to
|
|
1254
|
+
* the `Cancelled` state.
|
|
1255
|
+
*/
|
|
1256
|
+
async cancelPayment(ctx, paymentId) {
|
|
1257
|
+
const payment = await this.paymentService.cancelPayment(ctx, paymentId);
|
|
1258
|
+
if (!(0, error_result_1.isGraphQlErrorResult)(payment)) {
|
|
1259
|
+
if (payment.state !== "Cancelled") {
|
|
1260
|
+
return new generated_graphql_admin_errors_1.CancelPaymentError({
|
|
1261
|
+
paymentErrorMessage: payment.errorMessage || "",
|
|
1262
|
+
});
|
|
1263
|
+
}
|
|
1264
|
+
}
|
|
1265
|
+
return payment;
|
|
1266
|
+
}
|
|
1267
|
+
/**
|
|
1268
|
+
* @description
|
|
1269
|
+
* Creates a new Fulfillment associated with the given Order and OrderItems.
|
|
1270
|
+
*/
|
|
1271
|
+
async createFulfillment(ctx, input) {
|
|
1272
|
+
if (!input.lines ||
|
|
1273
|
+
input.lines.length === 0 ||
|
|
1274
|
+
(0, shared_utils_1.summate)(input.lines, "quantity") === 0) {
|
|
1275
|
+
return new generated_graphql_admin_errors_1.EmptyOrderLineSelectionError();
|
|
1276
|
+
}
|
|
1277
|
+
const orders = await (0, order_utils_1.getOrdersFromLines)(ctx, this.connection, input.lines);
|
|
1278
|
+
if (await this.requestedFulfillmentQuantityExceedsLineQuantity(ctx, input)) {
|
|
1279
|
+
return new generated_graphql_admin_errors_1.ItemsAlreadyFulfilledError();
|
|
1280
|
+
}
|
|
1281
|
+
const stockCheckResult = await this.ensureSufficientStockForFulfillment(ctx, input);
|
|
1282
|
+
if ((0, error_result_1.isGraphQlErrorResult)(stockCheckResult)) {
|
|
1283
|
+
return stockCheckResult;
|
|
1284
|
+
}
|
|
1285
|
+
const fulfillment = await this.fulfillmentService.create(ctx, orders, input.lines, input.handler);
|
|
1286
|
+
if ((0, error_result_1.isGraphQlErrorResult)(fulfillment)) {
|
|
1287
|
+
return fulfillment;
|
|
1288
|
+
}
|
|
1289
|
+
await this.connection
|
|
1290
|
+
.getRepository(ctx, order_entity_1.Order)
|
|
1291
|
+
.createQueryBuilder()
|
|
1292
|
+
.relation("fulfillments")
|
|
1293
|
+
.of(orders)
|
|
1294
|
+
.add(fulfillment);
|
|
1295
|
+
for (const order of orders) {
|
|
1296
|
+
await this.historyService.createHistoryEntryForOrder({
|
|
1297
|
+
ctx,
|
|
1298
|
+
orderId: order.id,
|
|
1299
|
+
type: generated_types_1.HistoryEntryType.ORDER_FULFILLMENT,
|
|
1300
|
+
data: {
|
|
1301
|
+
fulfillmentId: fulfillment.id,
|
|
1302
|
+
},
|
|
1303
|
+
});
|
|
1304
|
+
}
|
|
1305
|
+
const result = await this.fulfillmentService.transitionToState(ctx, fulfillment.id, "Pending");
|
|
1306
|
+
if ((0, error_result_1.isGraphQlErrorResult)(result)) {
|
|
1307
|
+
return result;
|
|
1308
|
+
}
|
|
1309
|
+
return result.fulfillment;
|
|
1310
|
+
}
|
|
1311
|
+
async requestedFulfillmentQuantityExceedsLineQuantity(ctx, input) {
|
|
1312
|
+
const existingFulfillmentLines = await this.connection
|
|
1313
|
+
.getRepository(ctx, fulfillment_line_entity_1.FulfillmentLine)
|
|
1314
|
+
.createQueryBuilder("fulfillmentLine")
|
|
1315
|
+
.leftJoinAndSelect("fulfillmentLine.orderLine", "orderLine")
|
|
1316
|
+
.leftJoinAndSelect("fulfillmentLine.fulfillment", "fulfillment")
|
|
1317
|
+
.where("fulfillmentLine.orderLineId IN (:...orderLineIds)", {
|
|
1318
|
+
orderLineIds: input.lines.map((l) => l.orderLineId),
|
|
1319
|
+
})
|
|
1320
|
+
.andWhere("fulfillment.state != :state", { state: "Cancelled" })
|
|
1321
|
+
.getMany();
|
|
1322
|
+
for (const inputLine of input.lines) {
|
|
1323
|
+
const existingFulfillmentLine = existingFulfillmentLines.find((l) => (0, utils_1.idsAreEqual)(l.orderLineId, inputLine.orderLineId));
|
|
1324
|
+
if (existingFulfillmentLine) {
|
|
1325
|
+
const unfulfilledQuantity = existingFulfillmentLine.orderLine.quantity -
|
|
1326
|
+
existingFulfillmentLine.quantity;
|
|
1327
|
+
if (unfulfilledQuantity < inputLine.quantity) {
|
|
1328
|
+
return true;
|
|
1329
|
+
}
|
|
1330
|
+
}
|
|
1331
|
+
else {
|
|
1332
|
+
const orderLine = await this.connection.getEntityOrThrow(ctx, order_line_entity_1.OrderLine, inputLine.orderLineId);
|
|
1333
|
+
if (orderLine.quantity < inputLine.quantity) {
|
|
1334
|
+
return true;
|
|
1335
|
+
}
|
|
1336
|
+
}
|
|
1337
|
+
}
|
|
1338
|
+
return false;
|
|
1339
|
+
}
|
|
1340
|
+
async ensureSufficientStockForFulfillment(ctx, input) {
|
|
1341
|
+
const lines = await this.connection.getRepository(ctx, order_line_entity_1.OrderLine).find({
|
|
1342
|
+
where: {
|
|
1343
|
+
id: (0, typeorm_1.In)(input.lines.map((l) => l.orderLineId)),
|
|
1344
|
+
},
|
|
1345
|
+
relations: ["productVariant"],
|
|
1346
|
+
});
|
|
1347
|
+
for (const line of lines) {
|
|
1348
|
+
const lineInput = input.lines.find((l) => (0, utils_1.idsAreEqual)(l.orderLineId, line.id));
|
|
1349
|
+
const fulfillableStockLevel = await this.productVariantService.getFulfillableStockLevel(ctx, line.productVariant);
|
|
1350
|
+
if (fulfillableStockLevel < lineInput.quantity) {
|
|
1351
|
+
const { stockOnHand } = await this.stockLevelService.getAvailableStock(ctx, line.productVariant.id);
|
|
1352
|
+
const productVariant = this.translator.translate(line.productVariant, ctx);
|
|
1353
|
+
return new generated_graphql_admin_errors_1.InsufficientStockOnHandError({
|
|
1354
|
+
productVariantId: productVariant.id,
|
|
1355
|
+
productVariantName: productVariant.name,
|
|
1356
|
+
stockOnHand,
|
|
1357
|
+
});
|
|
1358
|
+
}
|
|
1359
|
+
}
|
|
1360
|
+
}
|
|
1361
|
+
/**
|
|
1362
|
+
* @description
|
|
1363
|
+
* Returns an array of all Fulfillments associated with the Order.
|
|
1364
|
+
*/
|
|
1365
|
+
async getOrderFulfillments(ctx, order) {
|
|
1366
|
+
const { fulfillments } = await this.connection.getEntityOrThrow(ctx, order_entity_1.Order, order.id, {
|
|
1367
|
+
relations: ["fulfillments"],
|
|
1368
|
+
});
|
|
1369
|
+
return fulfillments;
|
|
1370
|
+
}
|
|
1371
|
+
/**
|
|
1372
|
+
* @description
|
|
1373
|
+
* Returns an array of all Surcharges associated with the Order.
|
|
1374
|
+
*/
|
|
1375
|
+
async getOrderSurcharges(ctx, orderId) {
|
|
1376
|
+
const order = await this.connection.getEntityOrThrow(ctx, order_entity_1.Order, orderId, {
|
|
1377
|
+
channelId: ctx.channelId,
|
|
1378
|
+
relations: ["surcharges"],
|
|
1379
|
+
});
|
|
1380
|
+
return order.surcharges || [];
|
|
1381
|
+
}
|
|
1382
|
+
/**
|
|
1383
|
+
* @description
|
|
1384
|
+
* Cancels an Order by transitioning it to the `Cancelled` state. If stock is being tracked for the ProductVariants
|
|
1385
|
+
* in the Order, then new {@link StockMovement}s will be created to correct the stock levels.
|
|
1386
|
+
*/
|
|
1387
|
+
async cancelOrder(ctx, input) {
|
|
1388
|
+
let allOrderItemsCancelled = false;
|
|
1389
|
+
const cancelResult = input.lines != null
|
|
1390
|
+
? await this.orderModifier.cancelOrderByOrderLines(ctx, input, input.lines)
|
|
1391
|
+
: await this.cancelOrderById(ctx, input);
|
|
1392
|
+
if ((0, error_result_1.isGraphQlErrorResult)(cancelResult)) {
|
|
1393
|
+
return cancelResult;
|
|
1394
|
+
}
|
|
1395
|
+
else {
|
|
1396
|
+
allOrderItemsCancelled = cancelResult;
|
|
1397
|
+
}
|
|
1398
|
+
if (allOrderItemsCancelled) {
|
|
1399
|
+
const transitionResult = await this.transitionToState(ctx, input.orderId, "Cancelled");
|
|
1400
|
+
if ((0, error_result_1.isGraphQlErrorResult)(transitionResult)) {
|
|
1401
|
+
return transitionResult;
|
|
1402
|
+
}
|
|
1403
|
+
}
|
|
1404
|
+
return (0, utils_1.assertFound)(this.findOne(ctx, input.orderId));
|
|
1405
|
+
}
|
|
1406
|
+
async cancelOrderById(ctx, input) {
|
|
1407
|
+
const order = await this.getOrderOrThrow(ctx, input.orderId);
|
|
1408
|
+
if (order.active) {
|
|
1409
|
+
return true;
|
|
1410
|
+
}
|
|
1411
|
+
else {
|
|
1412
|
+
const lines = order.lines.map((l) => ({
|
|
1413
|
+
orderLineId: l.id,
|
|
1414
|
+
quantity: l.quantity,
|
|
1415
|
+
}));
|
|
1416
|
+
return this.orderModifier.cancelOrderByOrderLines(ctx, input, lines);
|
|
1417
|
+
}
|
|
1418
|
+
}
|
|
1419
|
+
/**
|
|
1420
|
+
* @description
|
|
1421
|
+
* Creates a {@link Refund} against the order and in doing so invokes the `createRefund()` method of the
|
|
1422
|
+
* {@link PaymentMethodHandler}.
|
|
1423
|
+
*/
|
|
1424
|
+
async refundOrder(ctx, input) {
|
|
1425
|
+
var _a;
|
|
1426
|
+
if ((!input.lines ||
|
|
1427
|
+
input.lines.length === 0 ||
|
|
1428
|
+
(0, shared_utils_1.summate)(input.lines, "quantity") === 0) &&
|
|
1429
|
+
input.shipping === 0 &&
|
|
1430
|
+
!input.amount) {
|
|
1431
|
+
return new generated_graphql_admin_errors_1.NothingToRefundError();
|
|
1432
|
+
}
|
|
1433
|
+
const orders = await (0, order_utils_1.getOrdersFromLines)(ctx, this.connection, (_a = input.lines) !== null && _a !== void 0 ? _a : []);
|
|
1434
|
+
if (1 < orders.length) {
|
|
1435
|
+
return new generated_graphql_admin_errors_1.MultipleOrderError();
|
|
1436
|
+
}
|
|
1437
|
+
const payment = await this.connection.getEntityOrThrow(ctx, payment_entity_1.Payment, input.paymentId, {
|
|
1438
|
+
relations: ["order"],
|
|
1439
|
+
});
|
|
1440
|
+
if (orders &&
|
|
1441
|
+
orders.length &&
|
|
1442
|
+
!(0, utils_1.idsAreEqual)(payment.order.id, orders[0].id)) {
|
|
1443
|
+
return new generated_graphql_admin_errors_1.PaymentOrderMismatchError();
|
|
1444
|
+
}
|
|
1445
|
+
const order = payment.order;
|
|
1446
|
+
if (order.state === "AddingItems" ||
|
|
1447
|
+
order.state === "ArrangingPayment" ||
|
|
1448
|
+
order.state === "PaymentAuthorized") {
|
|
1449
|
+
return new generated_graphql_admin_errors_1.RefundOrderStateError({ orderState: order.state });
|
|
1450
|
+
}
|
|
1451
|
+
const createdRefund = await this.paymentService.createRefund(ctx, input, order, payment);
|
|
1452
|
+
if (createdRefund instanceof refund_entity_1.Refund) {
|
|
1453
|
+
await this.eventBus.publish(new refund_event_1.RefundEvent(ctx, order, createdRefund, "created"));
|
|
1454
|
+
}
|
|
1455
|
+
return createdRefund;
|
|
1456
|
+
}
|
|
1457
|
+
/**
|
|
1458
|
+
* @description
|
|
1459
|
+
* Settles a Refund by transitioning it to the `Settled` state.
|
|
1460
|
+
*/
|
|
1461
|
+
async settleRefund(ctx, input) {
|
|
1462
|
+
const refund = await this.connection.getEntityOrThrow(ctx, refund_entity_1.Refund, input.id, {
|
|
1463
|
+
relations: ["payment", "payment.order"],
|
|
1464
|
+
});
|
|
1465
|
+
refund.transactionId = input.transactionId;
|
|
1466
|
+
const fromState = refund.state;
|
|
1467
|
+
const toState = "Settled";
|
|
1468
|
+
const { finalize } = await this.refundStateMachine.transition(ctx, refund.payment.order, refund, toState);
|
|
1469
|
+
await this.connection.getRepository(ctx, refund_entity_1.Refund).save(refund);
|
|
1470
|
+
await finalize();
|
|
1471
|
+
await this.eventBus.publish(new refund_state_transition_event_1.RefundStateTransitionEvent(fromState, toState, ctx, refund, refund.payment.order));
|
|
1472
|
+
return refund;
|
|
1473
|
+
}
|
|
1474
|
+
/**
|
|
1475
|
+
* @description
|
|
1476
|
+
* Associates a Customer with the Order.
|
|
1477
|
+
*/
|
|
1478
|
+
async addCustomerToOrder(ctx, orderIdOrOrder, customer) {
|
|
1479
|
+
const order = orderIdOrOrder instanceof order_entity_1.Order
|
|
1480
|
+
? orderIdOrOrder
|
|
1481
|
+
: await this.getOrderOrThrow(ctx, orderIdOrOrder);
|
|
1482
|
+
order.customer = customer;
|
|
1483
|
+
await this.connection
|
|
1484
|
+
.getRepository(ctx, order_entity_1.Order)
|
|
1485
|
+
.save(order, { reload: false });
|
|
1486
|
+
let updatedOrder = order;
|
|
1487
|
+
// Check that any applied couponCodes are still valid now that
|
|
1488
|
+
// we know the Customer.
|
|
1489
|
+
if (order.active && order.couponCodes) {
|
|
1490
|
+
for (const couponCode of order.couponCodes.slice()) {
|
|
1491
|
+
const validationResult = await this.promotionService.validateCouponCode(ctx, couponCode, customer.id);
|
|
1492
|
+
if ((0, error_result_1.isGraphQlErrorResult)(validationResult)) {
|
|
1493
|
+
updatedOrder = await this.removeCouponCode(ctx, order.id, couponCode);
|
|
1494
|
+
}
|
|
1495
|
+
}
|
|
1496
|
+
}
|
|
1497
|
+
return updatedOrder;
|
|
1498
|
+
}
|
|
1499
|
+
/**
|
|
1500
|
+
* @description
|
|
1501
|
+
* Creates a new "ORDER_NOTE" type {@link OrderHistoryEntry} in the Order's history timeline.
|
|
1502
|
+
*/
|
|
1503
|
+
async addNoteToOrder(ctx, input) {
|
|
1504
|
+
const order = await this.getOrderOrThrow(ctx, input.id);
|
|
1505
|
+
await this.historyService.createHistoryEntryForOrder({
|
|
1506
|
+
ctx,
|
|
1507
|
+
orderId: order.id,
|
|
1508
|
+
type: generated_types_1.HistoryEntryType.ORDER_NOTE,
|
|
1509
|
+
data: {
|
|
1510
|
+
note: input.note,
|
|
1511
|
+
},
|
|
1512
|
+
}, input.isPublic);
|
|
1513
|
+
return order;
|
|
1514
|
+
}
|
|
1515
|
+
async updateOrderNote(ctx, input) {
|
|
1516
|
+
var _a;
|
|
1517
|
+
return this.historyService.updateOrderHistoryEntry(ctx, {
|
|
1518
|
+
type: generated_types_1.HistoryEntryType.ORDER_NOTE,
|
|
1519
|
+
data: input.note ? { note: input.note } : undefined,
|
|
1520
|
+
isPublic: (_a = input.isPublic) !== null && _a !== void 0 ? _a : undefined,
|
|
1521
|
+
ctx,
|
|
1522
|
+
entryId: input.noteId,
|
|
1523
|
+
});
|
|
1524
|
+
}
|
|
1525
|
+
async deleteOrderNote(ctx, id) {
|
|
1526
|
+
try {
|
|
1527
|
+
await this.historyService.deleteOrderHistoryEntry(ctx, id);
|
|
1528
|
+
return {
|
|
1529
|
+
result: generated_types_1.DeletionResult.DELETED,
|
|
1530
|
+
};
|
|
1531
|
+
}
|
|
1532
|
+
catch (e) {
|
|
1533
|
+
return {
|
|
1534
|
+
result: generated_types_1.DeletionResult.NOT_DELETED,
|
|
1535
|
+
message: e.message,
|
|
1536
|
+
};
|
|
1537
|
+
}
|
|
1538
|
+
}
|
|
1539
|
+
/**
|
|
1540
|
+
* @description
|
|
1541
|
+
* Deletes an Order, ensuring that any Sessions that reference this Order are dereferenced before deletion.
|
|
1542
|
+
*
|
|
1543
|
+
* @since 1.5.0
|
|
1544
|
+
*/
|
|
1545
|
+
async deleteOrder(ctx, orderOrId) {
|
|
1546
|
+
const orderToDelete = orderOrId instanceof order_entity_1.Order
|
|
1547
|
+
? orderOrId
|
|
1548
|
+
: await this.connection.getRepository(ctx, order_entity_1.Order).findOneOrFail({
|
|
1549
|
+
where: { id: orderOrId },
|
|
1550
|
+
relations: ["lines", "shippingLines"],
|
|
1551
|
+
});
|
|
1552
|
+
// If there is a Session referencing the Order to be deleted, we must first remove that
|
|
1553
|
+
// reference in order to avoid a foreign key error. See https://github.com/deenruv-ecommerce/deenruv/issues/1454
|
|
1554
|
+
const sessions = await this.connection
|
|
1555
|
+
.getRepository(ctx, session_entity_1.Session)
|
|
1556
|
+
.find({ where: { activeOrderId: orderToDelete.id } });
|
|
1557
|
+
if (sessions.length) {
|
|
1558
|
+
await this.connection
|
|
1559
|
+
.getRepository(ctx, session_entity_1.Session)
|
|
1560
|
+
.update(sessions.map((s) => s.id), { activeOrder: null });
|
|
1561
|
+
}
|
|
1562
|
+
const deletedOrder = new order_entity_1.Order(orderToDelete);
|
|
1563
|
+
await this.connection.getRepository(ctx, order_entity_1.Order).delete(orderToDelete.id);
|
|
1564
|
+
await this.eventBus.publish(new order_event_1.OrderEvent(ctx, deletedOrder, "deleted"));
|
|
1565
|
+
}
|
|
1566
|
+
/**
|
|
1567
|
+
* @description
|
|
1568
|
+
* When a guest user with an anonymous Order signs in and has an existing Order associated with that Customer,
|
|
1569
|
+
* we need to reconcile the contents of the two orders.
|
|
1570
|
+
*
|
|
1571
|
+
* The logic used to do the merging is specified in the {@link OrderOptions} `mergeStrategy` config setting.
|
|
1572
|
+
*/
|
|
1573
|
+
async mergeOrders(ctx, user, guestOrder, existingOrder) {
|
|
1574
|
+
if (guestOrder && guestOrder.customer) {
|
|
1575
|
+
// In this case the "guest order" is actually an order of an existing Customer,
|
|
1576
|
+
// so we do not want to merge at all. See https://github.com/deenruv-ecommerce/deenruv/issues/263
|
|
1577
|
+
return existingOrder;
|
|
1578
|
+
}
|
|
1579
|
+
const mergeResult = this.orderMerger.merge(ctx, guestOrder, existingOrder);
|
|
1580
|
+
const { orderToDelete, linesToInsert, linesToDelete, linesToModify } = mergeResult;
|
|
1581
|
+
let { order } = mergeResult;
|
|
1582
|
+
if (orderToDelete) {
|
|
1583
|
+
await this.deleteOrder(ctx, orderToDelete);
|
|
1584
|
+
}
|
|
1585
|
+
if (order && linesToInsert) {
|
|
1586
|
+
const orderId = order.id;
|
|
1587
|
+
for (const line of linesToInsert) {
|
|
1588
|
+
const result = await this.addItemToOrder(ctx, orderId, line.productVariantId, line.quantity, line.customFields);
|
|
1589
|
+
if (!(0, error_result_1.isGraphQlErrorResult)(result)) {
|
|
1590
|
+
order = result;
|
|
1591
|
+
}
|
|
1592
|
+
}
|
|
1593
|
+
}
|
|
1594
|
+
if (order && linesToModify) {
|
|
1595
|
+
const orderId = order.id;
|
|
1596
|
+
for (const line of linesToModify) {
|
|
1597
|
+
const result = await this.adjustOrderLine(ctx, orderId, line.orderLineId, line.quantity, line.customFields);
|
|
1598
|
+
if (!(0, error_result_1.isGraphQlErrorResult)(result)) {
|
|
1599
|
+
order = result;
|
|
1600
|
+
}
|
|
1601
|
+
}
|
|
1602
|
+
}
|
|
1603
|
+
if (order && linesToDelete) {
|
|
1604
|
+
const orderId = order.id;
|
|
1605
|
+
for (const line of linesToDelete) {
|
|
1606
|
+
const result = await this.removeItemFromOrder(ctx, orderId, line.orderLineId);
|
|
1607
|
+
if (!(0, error_result_1.isGraphQlErrorResult)(result)) {
|
|
1608
|
+
order = result;
|
|
1609
|
+
}
|
|
1610
|
+
}
|
|
1611
|
+
}
|
|
1612
|
+
const customer = await this.customerService.findOneByUserId(ctx, user.id);
|
|
1613
|
+
if (order && customer) {
|
|
1614
|
+
order.customer = customer;
|
|
1615
|
+
await this.connection
|
|
1616
|
+
.getRepository(ctx, order_entity_1.Order)
|
|
1617
|
+
.save(order, { reload: false });
|
|
1618
|
+
}
|
|
1619
|
+
return order;
|
|
1620
|
+
}
|
|
1621
|
+
async getOrderOrThrow(ctx, orderId) {
|
|
1622
|
+
const order = await this.findOne(ctx, orderId);
|
|
1623
|
+
if (!order) {
|
|
1624
|
+
throw new errors_1.EntityNotFoundError("Order", orderId);
|
|
1625
|
+
}
|
|
1626
|
+
return order;
|
|
1627
|
+
}
|
|
1628
|
+
getOrderLineOrThrow(order, orderLineId) {
|
|
1629
|
+
const orderLine = order.lines.find((line) => (0, utils_1.idsAreEqual)(line.id, orderLineId));
|
|
1630
|
+
if (!orderLine) {
|
|
1631
|
+
throw new errors_1.UserInputError("error.order-does-not-contain-line-with-id", {
|
|
1632
|
+
id: orderLineId,
|
|
1633
|
+
});
|
|
1634
|
+
}
|
|
1635
|
+
return orderLine;
|
|
1636
|
+
}
|
|
1637
|
+
/**
|
|
1638
|
+
* Returns error if quantity is negative.
|
|
1639
|
+
*/
|
|
1640
|
+
assertQuantityIsPositive(quantity) {
|
|
1641
|
+
if (quantity < 0) {
|
|
1642
|
+
return new generated_graphql_shop_errors_1.NegativeQuantityError();
|
|
1643
|
+
}
|
|
1644
|
+
}
|
|
1645
|
+
/**
|
|
1646
|
+
* Returns error if the Order is not in the "AddingItems" or "Draft" state.
|
|
1647
|
+
*/
|
|
1648
|
+
assertAddingItemsState(order) {
|
|
1649
|
+
if (order.state !== "AddingItems" && order.state !== "Draft") {
|
|
1650
|
+
return new generated_graphql_shop_errors_1.OrderModificationError();
|
|
1651
|
+
}
|
|
1652
|
+
}
|
|
1653
|
+
/**
|
|
1654
|
+
* Throws if adding the given quantity would take the total order items over the
|
|
1655
|
+
* maximum limit specified in the config.
|
|
1656
|
+
*/
|
|
1657
|
+
assertNotOverOrderItemsLimit(order, quantityToAdd) {
|
|
1658
|
+
const currentItemsCount = (0, shared_utils_1.summate)(order.lines, "quantity");
|
|
1659
|
+
const { orderItemsLimit } = this.configService.orderOptions;
|
|
1660
|
+
if (orderItemsLimit < currentItemsCount + quantityToAdd) {
|
|
1661
|
+
return new generated_graphql_shop_errors_1.OrderLimitError({ maxItems: orderItemsLimit });
|
|
1662
|
+
}
|
|
1663
|
+
}
|
|
1664
|
+
/**
|
|
1665
|
+
* Throws if adding the given quantity would exceed the maximum allowed
|
|
1666
|
+
* quantity for one order line.
|
|
1667
|
+
*/
|
|
1668
|
+
assertNotOverOrderLineItemsLimit(orderLine, quantityToAdd) {
|
|
1669
|
+
const currentQuantity = (orderLine === null || orderLine === void 0 ? void 0 : orderLine.quantity) || 0;
|
|
1670
|
+
const { orderLineItemsLimit } = this.configService.orderOptions;
|
|
1671
|
+
if (orderLineItemsLimit < currentQuantity + quantityToAdd) {
|
|
1672
|
+
return new generated_graphql_shop_errors_1.OrderLimitError({ maxItems: orderLineItemsLimit });
|
|
1673
|
+
}
|
|
1674
|
+
}
|
|
1675
|
+
/**
|
|
1676
|
+
* @description
|
|
1677
|
+
* Applies promotions, taxes and shipping to the Order. If the `updatedOrderLines` argument is passed in,
|
|
1678
|
+
* then all of those OrderLines will have their prices re-calculated using the configured {@link OrderItemPriceCalculationStrategy}.
|
|
1679
|
+
*/
|
|
1680
|
+
async applyPriceAdjustments(ctx, order, updatedOrderLines, relations) {
|
|
1681
|
+
var _a;
|
|
1682
|
+
const promotions = await this.promotionService.getActivePromotionsInChannel(ctx);
|
|
1683
|
+
const activePromotionsPre = await this.promotionService.getActivePromotionsOnOrder(ctx, order.id);
|
|
1684
|
+
// When changing the Order's currencyCode (on account of passing
|
|
1685
|
+
// a different currencyCode into the RequestContext), we need to make sure
|
|
1686
|
+
// to update all existing OrderLines to use prices in this new currency.
|
|
1687
|
+
if (ctx.currencyCode !== order.currencyCode) {
|
|
1688
|
+
updatedOrderLines = order.lines;
|
|
1689
|
+
order.currencyCode = ctx.currencyCode;
|
|
1690
|
+
}
|
|
1691
|
+
if (updatedOrderLines === null || updatedOrderLines === void 0 ? void 0 : updatedOrderLines.length) {
|
|
1692
|
+
const { orderItemPriceCalculationStrategy, changedPriceHandlingStrategy, } = this.configService.orderOptions;
|
|
1693
|
+
for (const updatedOrderLine of updatedOrderLines) {
|
|
1694
|
+
const variant = await this.productVariantService.applyChannelPriceAndTax(updatedOrderLine.productVariant, ctx, order);
|
|
1695
|
+
let priceResult = await orderItemPriceCalculationStrategy.calculateUnitPrice(ctx, variant, updatedOrderLine.customFields || {}, order, updatedOrderLine.quantity);
|
|
1696
|
+
const initialListPrice = (_a = updatedOrderLine.initialListPrice) !== null && _a !== void 0 ? _a : priceResult.price;
|
|
1697
|
+
if (initialListPrice !== priceResult.price) {
|
|
1698
|
+
priceResult = await changedPriceHandlingStrategy.handlePriceChange(ctx, priceResult, updatedOrderLine, order);
|
|
1699
|
+
}
|
|
1700
|
+
if (updatedOrderLine.initialListPrice == null) {
|
|
1701
|
+
updatedOrderLine.initialListPrice = initialListPrice;
|
|
1702
|
+
}
|
|
1703
|
+
updatedOrderLine.listPrice = priceResult.price;
|
|
1704
|
+
updatedOrderLine.listPriceIncludesTax = priceResult.priceIncludesTax;
|
|
1705
|
+
}
|
|
1706
|
+
}
|
|
1707
|
+
const updatedOrder = await this.orderCalculator.applyPriceAdjustments(ctx, order, promotions, updatedOrderLines !== null && updatedOrderLines !== void 0 ? updatedOrderLines : []);
|
|
1708
|
+
await this.connection
|
|
1709
|
+
.getRepository(ctx, order_entity_1.Order)
|
|
1710
|
+
// Explicitly omit the shippingAddress and billingAddress properties to avoid
|
|
1711
|
+
// a race condition where changing one or the other in parallel can
|
|
1712
|
+
// overwrite the other's changes.
|
|
1713
|
+
.save((0, omit_1.omit)(updatedOrder, ["shippingAddress", "billingAddress"]), {
|
|
1714
|
+
reload: false,
|
|
1715
|
+
});
|
|
1716
|
+
await this.connection
|
|
1717
|
+
.getRepository(ctx, order_line_entity_1.OrderLine)
|
|
1718
|
+
.save(updatedOrder.lines, { reload: false });
|
|
1719
|
+
await this.connection
|
|
1720
|
+
.getRepository(ctx, shipping_line_entity_1.ShippingLine)
|
|
1721
|
+
.save(order.shippingLines, { reload: false });
|
|
1722
|
+
await this.promotionService.runPromotionSideEffects(ctx, order, activePromotionsPre);
|
|
1723
|
+
return (0, utils_1.assertFound)(this.findOne(ctx, order.id, relations));
|
|
1724
|
+
}
|
|
1725
|
+
};
|
|
1726
|
+
exports.OrderService = OrderService;
|
|
1727
|
+
exports.OrderService = OrderService = __decorate([
|
|
1728
|
+
(0, common_1.Injectable)(),
|
|
1729
|
+
__metadata("design:paramtypes", [transactional_connection_1.TransactionalConnection,
|
|
1730
|
+
config_service_1.ConfigService,
|
|
1731
|
+
product_variant_service_1.ProductVariantService,
|
|
1732
|
+
customer_service_1.CustomerService,
|
|
1733
|
+
country_service_1.CountryService,
|
|
1734
|
+
order_calculator_1.OrderCalculator,
|
|
1735
|
+
shipping_calculator_1.ShippingCalculator,
|
|
1736
|
+
order_state_machine_1.OrderStateMachine,
|
|
1737
|
+
order_merger_1.OrderMerger,
|
|
1738
|
+
payment_service_1.PaymentService,
|
|
1739
|
+
payment_method_service_1.PaymentMethodService,
|
|
1740
|
+
fulfillment_service_1.FulfillmentService,
|
|
1741
|
+
list_query_builder_1.ListQueryBuilder,
|
|
1742
|
+
refund_state_machine_1.RefundStateMachine,
|
|
1743
|
+
history_service_1.HistoryService,
|
|
1744
|
+
promotion_service_1.PromotionService,
|
|
1745
|
+
event_bus_1.EventBus,
|
|
1746
|
+
channel_service_1.ChannelService,
|
|
1747
|
+
order_modifier_1.OrderModifier,
|
|
1748
|
+
custom_field_relation_service_1.CustomFieldRelationService,
|
|
1749
|
+
request_context_cache_service_1.RequestContextCacheService,
|
|
1750
|
+
translator_service_1.TranslatorService,
|
|
1751
|
+
stock_level_service_1.StockLevelService,
|
|
1752
|
+
entity_hydrator_service_1.EntityHydrator])
|
|
1753
|
+
], OrderService);
|
|
1754
|
+
//# sourceMappingURL=order.service.js.map
|