@gradientedge/commercetools-utils 5.9.0 → 5.10.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/dist/cjs/api/CommercetoolsApi.d.ts +1252 -0
- package/dist/cjs/api/CommercetoolsApi.d.ts.map +1 -0
- package/dist/cjs/api/CommercetoolsApi.js +2106 -0
- package/dist/cjs/api/CommercetoolsApi.js.map +1 -0
- package/dist/cjs/api/index.d.ts +3 -0
- package/dist/cjs/api/index.d.ts.map +1 -0
- package/dist/cjs/api/index.js +19 -0
- package/dist/cjs/api/index.js.map +1 -0
- package/dist/cjs/api/types.d.ts +33 -0
- package/dist/cjs/api/types.d.ts.map +1 -0
- package/dist/cjs/api/types.js +3 -0
- package/dist/cjs/api/types.js.map +1 -0
- package/dist/cjs/auth/CommercetoolsAuth.d.ts +182 -0
- package/dist/cjs/auth/CommercetoolsAuth.d.ts.map +1 -0
- package/dist/cjs/auth/CommercetoolsAuth.js +238 -0
- package/dist/cjs/auth/CommercetoolsAuth.js.map +1 -0
- package/dist/cjs/auth/CommercetoolsAuthApi.d.ts +83 -0
- package/dist/cjs/auth/CommercetoolsAuthApi.d.ts.map +1 -0
- package/dist/cjs/auth/CommercetoolsAuthApi.js +169 -0
- package/dist/cjs/auth/CommercetoolsAuthApi.js.map +1 -0
- package/dist/cjs/auth/CommercetoolsGrant.d.ts +66 -0
- package/dist/cjs/auth/CommercetoolsGrant.d.ts.map +1 -0
- package/dist/cjs/auth/CommercetoolsGrant.js +99 -0
- package/dist/cjs/auth/CommercetoolsGrant.js.map +1 -0
- package/dist/cjs/auth/constants.d.ts +7 -0
- package/dist/cjs/auth/constants.d.ts.map +1 -0
- package/dist/cjs/auth/constants.js +31 -0
- package/dist/cjs/auth/constants.js.map +1 -0
- package/dist/cjs/auth/index.d.ts +4 -0
- package/dist/cjs/auth/index.d.ts.map +1 -0
- package/dist/cjs/auth/index.js +19 -0
- package/dist/cjs/auth/index.js.map +1 -0
- package/dist/cjs/auth/scopes.d.ts +11 -0
- package/dist/cjs/auth/scopes.d.ts.map +1 -0
- package/dist/cjs/auth/scopes.js +30 -0
- package/dist/cjs/auth/scopes.js.map +1 -0
- package/dist/cjs/auth/types.d.ts +118 -0
- package/dist/cjs/auth/types.d.ts.map +1 -0
- package/dist/cjs/auth/types.js +28 -0
- package/dist/cjs/auth/types.js.map +1 -0
- package/dist/{typings → cjs}/auth/utils.d.ts +1 -0
- package/dist/cjs/auth/utils.d.ts.map +1 -0
- package/dist/cjs/auth/utils.js +14 -0
- package/dist/cjs/auth/utils.js.map +1 -0
- package/dist/cjs/constants.d.ts +33 -0
- package/dist/cjs/constants.d.ts.map +1 -0
- package/dist/cjs/constants.js +46 -0
- package/dist/cjs/constants.js.map +1 -0
- package/dist/cjs/error/CommercetoolsError.d.ts +33 -0
- package/dist/cjs/error/CommercetoolsError.d.ts.map +1 -0
- package/dist/cjs/error/CommercetoolsError.js +110 -0
- package/dist/cjs/error/CommercetoolsError.js.map +1 -0
- package/dist/cjs/error/index.d.ts +2 -0
- package/dist/cjs/error/index.d.ts.map +1 -0
- package/dist/cjs/error/index.js +18 -0
- package/dist/cjs/error/index.js.map +1 -0
- package/dist/cjs/index.d.ts +8 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +26 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/models/associate-role.d.ts +319 -0
- package/dist/cjs/models/associate-role.d.ts.map +1 -0
- package/dist/cjs/models/associate-role.js +8 -0
- package/dist/cjs/models/associate-role.js.map +1 -0
- package/dist/cjs/models/attribute-group.d.ts +253 -0
- package/dist/cjs/models/attribute-group.d.ts.map +1 -0
- package/dist/cjs/models/attribute-group.js +8 -0
- package/dist/cjs/models/attribute-group.js.map +1 -0
- package/dist/cjs/models/business-unit.d.ts +1197 -0
- package/dist/cjs/models/business-unit.d.ts.map +1 -0
- package/dist/cjs/models/business-unit.js +8 -0
- package/dist/cjs/models/business-unit.js.map +1 -0
- package/dist/cjs/models/cart-discount.d.ts +716 -0
- package/dist/cjs/models/cart-discount.d.ts.map +1 -0
- package/dist/cjs/models/cart-discount.js +8 -0
- package/dist/cjs/models/cart-discount.js.map +1 -0
- package/dist/cjs/models/cart.d.ts +3350 -0
- package/dist/cjs/models/cart.d.ts.map +1 -0
- package/dist/cjs/models/cart.js +8 -0
- package/dist/cjs/models/cart.js.map +1 -0
- package/dist/cjs/models/category.d.ts +634 -0
- package/dist/cjs/models/category.d.ts.map +1 -0
- package/dist/cjs/models/category.js +8 -0
- package/dist/cjs/models/category.js.map +1 -0
- package/dist/cjs/models/channel.d.ts +379 -0
- package/dist/cjs/models/channel.d.ts.map +1 -0
- package/dist/cjs/models/channel.js +8 -0
- package/dist/cjs/models/channel.js.map +1 -0
- package/dist/cjs/models/common.d.ts +1096 -0
- package/dist/cjs/models/common.d.ts.map +1 -0
- package/dist/cjs/models/common.js +8 -0
- package/dist/cjs/models/common.js.map +1 -0
- package/dist/cjs/models/custom-object.d.ts +151 -0
- package/dist/cjs/models/custom-object.d.ts.map +1 -0
- package/dist/cjs/models/custom-object.js +8 -0
- package/dist/cjs/models/custom-object.js.map +1 -0
- package/dist/cjs/models/customer-group.d.ts +235 -0
- package/dist/cjs/models/customer-group.d.ts.map +1 -0
- package/dist/cjs/models/customer-group.js +8 -0
- package/dist/cjs/models/customer-group.js.map +1 -0
- package/dist/cjs/models/customer.d.ts +1221 -0
- package/dist/cjs/models/customer.d.ts.map +1 -0
- package/dist/cjs/models/customer.js +8 -0
- package/dist/cjs/models/customer.js.map +1 -0
- package/dist/cjs/models/discount-code.d.ts +439 -0
- package/dist/cjs/models/discount-code.d.ts.map +1 -0
- package/dist/cjs/models/discount-code.js +8 -0
- package/dist/cjs/models/discount-code.js.map +1 -0
- package/dist/cjs/models/error.d.ts +3062 -0
- package/dist/cjs/models/error.d.ts.map +1 -0
- package/dist/cjs/models/error.js +8 -0
- package/dist/cjs/models/error.js.map +1 -0
- package/dist/cjs/models/extension.d.ts +335 -0
- package/dist/cjs/models/extension.d.ts.map +1 -0
- package/dist/cjs/models/extension.js +8 -0
- package/dist/cjs/models/extension.js.map +1 -0
- package/dist/cjs/models/graph-ql.d.ts +63 -0
- package/dist/cjs/models/graph-ql.d.ts.map +1 -0
- package/dist/cjs/models/graph-ql.js +8 -0
- package/dist/cjs/models/graph-ql.js.map +1 -0
- package/dist/cjs/models/index.d.ts +42 -0
- package/dist/cjs/models/index.d.ts.map +1 -0
- package/dist/cjs/models/index.js +58 -0
- package/dist/cjs/models/index.js.map +1 -0
- package/dist/cjs/models/inventory.d.ts +327 -0
- package/dist/cjs/models/inventory.d.ts.map +1 -0
- package/dist/cjs/models/inventory.js +8 -0
- package/dist/cjs/models/inventory.js.map +1 -0
- package/dist/cjs/models/me.d.ts +2483 -0
- package/dist/cjs/models/me.d.ts.map +1 -0
- package/dist/cjs/models/me.js +8 -0
- package/dist/cjs/models/me.js.map +1 -0
- package/dist/cjs/models/message.d.ts +15095 -0
- package/dist/cjs/models/message.d.ts.map +1 -0
- package/dist/cjs/models/message.js +8 -0
- package/dist/cjs/models/message.js.map +1 -0
- package/dist/cjs/models/order-edit.d.ts +1645 -0
- package/dist/cjs/models/order-edit.d.ts.map +1 -0
- package/dist/cjs/models/order-edit.js +8 -0
- package/dist/cjs/models/order-edit.js.map +1 -0
- package/dist/{typings → cjs}/models/order.d.ts +1490 -15
- package/dist/cjs/models/order.d.ts.map +1 -0
- package/dist/cjs/models/order.js +8 -0
- package/dist/cjs/models/order.js.map +1 -0
- package/dist/cjs/models/payment.d.ts +734 -0
- package/dist/cjs/models/payment.d.ts.map +1 -0
- package/dist/cjs/models/payment.js +8 -0
- package/dist/cjs/models/payment.js.map +1 -0
- package/dist/cjs/models/product-discount.d.ts +461 -0
- package/dist/cjs/models/product-discount.d.ts.map +1 -0
- package/dist/cjs/models/product-discount.js +8 -0
- package/dist/cjs/models/product-discount.js.map +1 -0
- package/dist/cjs/models/product-selection.d.ts +638 -0
- package/dist/cjs/models/product-selection.d.ts.map +1 -0
- package/dist/cjs/models/product-selection.js +8 -0
- package/dist/cjs/models/product-selection.js.map +1 -0
- package/dist/cjs/models/product-type.d.ts +774 -0
- package/dist/cjs/models/product-type.d.ts.map +1 -0
- package/dist/cjs/models/product-type.js +8 -0
- package/dist/cjs/models/product-type.js.map +1 -0
- package/dist/cjs/models/product.d.ts +2282 -0
- package/dist/cjs/models/product.d.ts.map +1 -0
- package/dist/cjs/models/product.js +8 -0
- package/dist/cjs/models/product.js.map +1 -0
- package/dist/cjs/models/project.d.ts +381 -0
- package/dist/cjs/models/project.d.ts.map +1 -0
- package/dist/cjs/models/project.js +8 -0
- package/dist/cjs/models/project.js.map +1 -0
- package/dist/cjs/models/quote-request.d.ts +430 -0
- package/dist/cjs/models/quote-request.d.ts.map +1 -0
- package/dist/cjs/models/quote-request.js +8 -0
- package/dist/cjs/models/quote-request.js.map +1 -0
- package/dist/cjs/models/quote.d.ts +458 -0
- package/dist/cjs/models/quote.d.ts.map +1 -0
- package/dist/cjs/models/quote.js +8 -0
- package/dist/cjs/models/quote.js.map +1 -0
- package/dist/cjs/models/review.d.ts +435 -0
- package/dist/cjs/models/review.d.ts.map +1 -0
- package/dist/cjs/models/review.js +8 -0
- package/dist/cjs/models/review.js.map +1 -0
- package/dist/cjs/models/scalar-types.d.ts +9 -0
- package/dist/cjs/models/scalar-types.d.ts.map +1 -0
- package/dist/cjs/models/scalar-types.js +8 -0
- package/dist/cjs/models/scalar-types.js.map +1 -0
- package/dist/cjs/models/shipping-method.d.ts +569 -0
- package/dist/cjs/models/shipping-method.d.ts.map +1 -0
- package/dist/cjs/models/shipping-method.js +8 -0
- package/dist/cjs/models/shipping-method.js.map +1 -0
- package/dist/cjs/models/shopping-list.d.ts +844 -0
- package/dist/cjs/models/shopping-list.d.ts.map +1 -0
- package/dist/cjs/models/shopping-list.js +8 -0
- package/dist/cjs/models/shopping-list.js.map +1 -0
- package/dist/cjs/models/staged-quote.d.ts +338 -0
- package/dist/cjs/models/staged-quote.d.ts.map +1 -0
- package/dist/cjs/models/staged-quote.js +8 -0
- package/dist/cjs/models/staged-quote.js.map +1 -0
- package/dist/cjs/models/standalone-price.d.ts +410 -0
- package/dist/cjs/models/standalone-price.d.ts.map +1 -0
- package/dist/cjs/models/standalone-price.js +8 -0
- package/dist/cjs/models/standalone-price.js.map +1 -0
- package/dist/cjs/models/state.d.ts +341 -0
- package/dist/cjs/models/state.d.ts.map +1 -0
- package/dist/cjs/models/state.js +8 -0
- package/dist/cjs/models/state.js.map +1 -0
- package/dist/cjs/models/store-country.d.ts +14 -0
- package/dist/cjs/models/store-country.d.ts.map +1 -0
- package/dist/cjs/models/store-country.js +8 -0
- package/dist/cjs/models/store-country.js.map +1 -0
- package/dist/cjs/models/store.d.ts +547 -0
- package/dist/cjs/models/store.d.ts.map +1 -0
- package/dist/cjs/models/store.js +8 -0
- package/dist/cjs/models/store.js.map +1 -0
- package/dist/cjs/models/subscription.d.ts +717 -0
- package/dist/cjs/models/subscription.d.ts.map +1 -0
- package/dist/cjs/models/subscription.js +8 -0
- package/dist/cjs/models/subscription.js.map +1 -0
- package/dist/cjs/models/tax-category.d.ts +376 -0
- package/dist/cjs/models/tax-category.d.ts.map +1 -0
- package/dist/cjs/models/tax-category.js +8 -0
- package/dist/cjs/models/tax-category.js.map +1 -0
- package/dist/cjs/models/type.d.ts +645 -0
- package/dist/cjs/models/type.d.ts.map +1 -0
- package/dist/cjs/models/type.js +8 -0
- package/dist/cjs/models/type.js.map +1 -0
- package/dist/cjs/models/zone.d.ts +234 -0
- package/dist/cjs/models/zone.d.ts.map +1 -0
- package/dist/cjs/models/zone.js +8 -0
- package/dist/cjs/models/zone.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/request/index.d.ts +3 -0
- package/dist/cjs/request/index.d.ts.map +1 -0
- package/dist/cjs/request/index.js +19 -0
- package/dist/cjs/request/index.js.map +1 -0
- package/dist/cjs/request/is-retryable-error.d.ts +6 -0
- package/dist/cjs/request/is-retryable-error.d.ts.map +1 -0
- package/dist/cjs/request/is-retryable-error.js +28 -0
- package/dist/cjs/request/is-retryable-error.js.map +1 -0
- package/dist/{typings → cjs}/request/request-executor.d.ts +3 -2
- package/dist/cjs/request/request-executor.d.ts.map +1 -0
- package/dist/cjs/request/request-executor.js +23 -0
- package/dist/cjs/request/request-executor.js.map +1 -0
- package/dist/{typings → cjs}/request/request.d.ts +3 -2
- package/dist/cjs/request/request.d.ts.map +1 -0
- package/dist/cjs/request/request.js +84 -0
- package/dist/cjs/request/request.js.map +1 -0
- package/dist/cjs/request/transform-error.d.ts +7 -0
- package/dist/cjs/request/transform-error.d.ts.map +1 -0
- package/dist/cjs/request/transform-error.js +16 -0
- package/dist/cjs/request/transform-error.js.map +1 -0
- package/dist/{typings → cjs}/types.d.ts +39 -1
- package/dist/cjs/types.d.ts.map +1 -0
- package/dist/cjs/types.js +16 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/{typings → cjs}/utils/axios/convert-error.d.ts +2 -1
- package/dist/cjs/utils/axios/convert-error.d.ts.map +1 -0
- package/dist/cjs/utils/axios/convert-error.js +28 -0
- package/dist/cjs/utils/axios/convert-error.js.map +1 -0
- package/dist/{typings → cjs}/utils/axios/convert-response.d.ts +2 -1
- package/dist/cjs/utils/axios/convert-response.d.ts.map +1 -0
- package/dist/cjs/utils/axios/convert-response.js +23 -0
- package/dist/cjs/utils/axios/convert-response.js.map +1 -0
- package/dist/{typings → cjs}/utils/axios/create-instance.d.ts +5 -0
- package/dist/cjs/utils/axios/create-instance.d.ts.map +1 -0
- package/dist/cjs/utils/axios/create-instance.js +30 -0
- package/dist/cjs/utils/axios/create-instance.js.map +1 -0
- package/dist/{typings → cjs}/utils/axios/extract-headers.d.ts +1 -0
- package/dist/cjs/utils/axios/extract-headers.d.ts.map +1 -0
- package/dist/cjs/utils/axios/extract-headers.js +23 -0
- package/dist/cjs/utils/axios/extract-headers.js.map +1 -0
- package/dist/cjs/utils/axios/index.d.ts +5 -0
- package/dist/cjs/utils/axios/index.d.ts.map +1 -0
- package/dist/cjs/utils/axios/index.js +21 -0
- package/dist/cjs/utils/axios/index.js.map +1 -0
- package/dist/cjs/utils/calculate-delay.d.ts +7 -0
- package/dist/cjs/utils/calculate-delay.d.ts.map +1 -0
- package/dist/cjs/utils/calculate-delay.js +30 -0
- package/dist/cjs/utils/calculate-delay.js.map +1 -0
- package/dist/cjs/utils/ensure-non-empty-string.d.ts +16 -0
- package/dist/cjs/utils/ensure-non-empty-string.d.ts.map +1 -0
- package/dist/cjs/utils/ensure-non-empty-string.js +16 -0
- package/dist/cjs/utils/ensure-non-empty-string.js.map +1 -0
- package/dist/cjs/utils/format.d.ts +11 -0
- package/dist/cjs/utils/format.d.ts.map +1 -0
- package/dist/cjs/utils/format.js +48 -0
- package/dist/cjs/utils/format.js.map +1 -0
- package/dist/cjs/utils/get-attribute-value.d.ts +17 -0
- package/dist/cjs/utils/get-attribute-value.d.ts.map +1 -0
- package/dist/cjs/utils/get-attribute-value.js +19 -0
- package/dist/cjs/utils/get-attribute-value.js.map +1 -0
- package/dist/cjs/utils/index.d.ts +9 -0
- package/dist/cjs/utils/index.d.ts.map +1 -0
- package/dist/cjs/utils/index.js +25 -0
- package/dist/cjs/utils/index.js.map +1 -0
- package/dist/cjs/utils/mask.d.ts +28 -0
- package/dist/cjs/utils/mask.d.ts.map +1 -0
- package/dist/cjs/utils/mask.js +63 -0
- package/dist/cjs/utils/mask.js.map +1 -0
- package/dist/cjs/utils/plain-clone.d.ts +14 -0
- package/dist/cjs/utils/plain-clone.d.ts.map +1 -0
- package/dist/cjs/utils/plain-clone.js +41 -0
- package/dist/cjs/utils/plain-clone.js.map +1 -0
- package/dist/cjs/utils/retry-on-conflict.d.ts +99 -0
- package/dist/cjs/utils/retry-on-conflict.d.ts.map +1 -0
- package/dist/cjs/utils/retry-on-conflict.js +109 -0
- package/dist/cjs/utils/retry-on-conflict.js.map +1 -0
- package/dist/cjs/utils/useragent.d.ts +10 -0
- package/dist/cjs/utils/useragent.d.ts.map +1 -0
- package/dist/cjs/utils/useragent.js +21 -0
- package/dist/cjs/utils/useragent.js.map +1 -0
- package/dist/mjs/api/CommercetoolsApi.d.ts +1252 -0
- package/dist/mjs/api/CommercetoolsApi.d.ts.map +1 -0
- package/dist/mjs/api/CommercetoolsApi.js +2102 -0
- package/dist/mjs/api/CommercetoolsApi.js.map +1 -0
- package/dist/mjs/api/index.d.ts +3 -0
- package/dist/mjs/api/index.d.ts.map +1 -0
- package/dist/mjs/api/index.js +3 -0
- package/dist/mjs/api/index.js.map +1 -0
- package/dist/mjs/api/types.d.ts +33 -0
- package/dist/mjs/api/types.d.ts.map +1 -0
- package/dist/mjs/api/types.js +2 -0
- package/dist/mjs/api/types.js.map +1 -0
- package/dist/mjs/auth/CommercetoolsAuth.d.ts +182 -0
- package/dist/mjs/auth/CommercetoolsAuth.d.ts.map +1 -0
- package/dist/mjs/auth/CommercetoolsAuth.js +234 -0
- package/dist/mjs/auth/CommercetoolsAuth.js.map +1 -0
- package/dist/mjs/auth/CommercetoolsAuthApi.d.ts +83 -0
- package/dist/mjs/auth/CommercetoolsAuthApi.d.ts.map +1 -0
- package/dist/mjs/auth/CommercetoolsAuthApi.js +165 -0
- package/dist/mjs/auth/CommercetoolsAuthApi.js.map +1 -0
- package/dist/mjs/auth/CommercetoolsGrant.d.ts +66 -0
- package/dist/mjs/auth/CommercetoolsGrant.d.ts.map +1 -0
- package/dist/mjs/auth/CommercetoolsGrant.js +95 -0
- package/dist/mjs/auth/CommercetoolsGrant.js.map +1 -0
- package/dist/mjs/auth/constants.d.ts +7 -0
- package/dist/mjs/auth/constants.d.ts.map +1 -0
- package/dist/mjs/auth/constants.js +28 -0
- package/dist/mjs/auth/constants.js.map +1 -0
- package/dist/mjs/auth/index.d.ts +4 -0
- package/dist/mjs/auth/index.d.ts.map +1 -0
- package/dist/mjs/auth/index.js +3 -0
- package/dist/mjs/auth/index.js.map +1 -0
- package/dist/mjs/auth/scopes.d.ts +11 -0
- package/dist/mjs/auth/scopes.d.ts.map +1 -0
- package/dist/mjs/auth/scopes.js +25 -0
- package/dist/mjs/auth/scopes.js.map +1 -0
- package/dist/mjs/auth/types.d.ts +118 -0
- package/dist/mjs/auth/types.d.ts.map +1 -0
- package/dist/mjs/auth/types.js +25 -0
- package/dist/mjs/auth/types.js.map +1 -0
- package/dist/mjs/auth/utils.d.ts +2 -0
- package/dist/mjs/auth/utils.d.ts.map +1 -0
- package/dist/mjs/auth/utils.js +10 -0
- package/dist/mjs/auth/utils.js.map +1 -0
- package/dist/mjs/constants.d.ts +33 -0
- package/dist/mjs/constants.d.ts.map +1 -0
- package/dist/mjs/constants.js +43 -0
- package/dist/mjs/constants.js.map +1 -0
- package/dist/mjs/error/CommercetoolsError.d.ts +33 -0
- package/dist/mjs/error/CommercetoolsError.d.ts.map +1 -0
- package/dist/mjs/error/CommercetoolsError.js +103 -0
- package/dist/mjs/error/CommercetoolsError.js.map +1 -0
- package/dist/mjs/error/index.d.ts +2 -0
- package/dist/mjs/error/index.d.ts.map +1 -0
- package/dist/mjs/error/index.js +2 -0
- package/dist/mjs/error/index.js.map +1 -0
- package/dist/mjs/index.d.ts +8 -0
- package/dist/mjs/index.d.ts.map +1 -0
- package/dist/mjs/index.js +8 -0
- package/dist/mjs/index.js.map +1 -0
- package/dist/mjs/models/associate-role.d.ts +319 -0
- package/dist/mjs/models/associate-role.d.ts.map +1 -0
- package/dist/mjs/models/associate-role.js +7 -0
- package/dist/mjs/models/associate-role.js.map +1 -0
- package/dist/mjs/models/attribute-group.d.ts +253 -0
- package/dist/mjs/models/attribute-group.d.ts.map +1 -0
- package/dist/mjs/models/attribute-group.js +7 -0
- package/dist/mjs/models/attribute-group.js.map +1 -0
- package/dist/mjs/models/business-unit.d.ts +1197 -0
- package/dist/mjs/models/business-unit.d.ts.map +1 -0
- package/dist/mjs/models/business-unit.js +7 -0
- package/dist/mjs/models/business-unit.js.map +1 -0
- package/dist/mjs/models/cart-discount.d.ts +716 -0
- package/dist/mjs/models/cart-discount.d.ts.map +1 -0
- package/dist/mjs/models/cart-discount.js +7 -0
- package/dist/mjs/models/cart-discount.js.map +1 -0
- package/dist/mjs/models/cart.d.ts +3350 -0
- package/dist/mjs/models/cart.d.ts.map +1 -0
- package/dist/mjs/models/cart.js +7 -0
- package/dist/mjs/models/cart.js.map +1 -0
- package/dist/mjs/models/category.d.ts +634 -0
- package/dist/mjs/models/category.d.ts.map +1 -0
- package/dist/mjs/models/category.js +7 -0
- package/dist/mjs/models/category.js.map +1 -0
- package/dist/mjs/models/channel.d.ts +379 -0
- package/dist/mjs/models/channel.d.ts.map +1 -0
- package/dist/mjs/models/channel.js +7 -0
- package/dist/mjs/models/channel.js.map +1 -0
- package/dist/mjs/models/common.d.ts +1096 -0
- package/dist/mjs/models/common.d.ts.map +1 -0
- package/dist/mjs/models/common.js +7 -0
- package/dist/mjs/models/common.js.map +1 -0
- package/dist/mjs/models/custom-object.d.ts +151 -0
- package/dist/mjs/models/custom-object.d.ts.map +1 -0
- package/dist/mjs/models/custom-object.js +7 -0
- package/dist/mjs/models/custom-object.js.map +1 -0
- package/dist/mjs/models/customer-group.d.ts +235 -0
- package/dist/mjs/models/customer-group.d.ts.map +1 -0
- package/dist/mjs/models/customer-group.js +7 -0
- package/dist/mjs/models/customer-group.js.map +1 -0
- package/dist/mjs/models/customer.d.ts +1221 -0
- package/dist/mjs/models/customer.d.ts.map +1 -0
- package/dist/mjs/models/customer.js +7 -0
- package/dist/mjs/models/customer.js.map +1 -0
- package/dist/mjs/models/discount-code.d.ts +439 -0
- package/dist/mjs/models/discount-code.d.ts.map +1 -0
- package/dist/mjs/models/discount-code.js +7 -0
- package/dist/mjs/models/discount-code.js.map +1 -0
- package/dist/mjs/models/error.d.ts +3062 -0
- package/dist/mjs/models/error.d.ts.map +1 -0
- package/dist/mjs/models/error.js +7 -0
- package/dist/mjs/models/error.js.map +1 -0
- package/dist/mjs/models/extension.d.ts +335 -0
- package/dist/mjs/models/extension.d.ts.map +1 -0
- package/dist/mjs/models/extension.js +7 -0
- package/dist/mjs/models/extension.js.map +1 -0
- package/dist/mjs/models/graph-ql.d.ts +63 -0
- package/dist/mjs/models/graph-ql.d.ts.map +1 -0
- package/dist/mjs/models/graph-ql.js +7 -0
- package/dist/mjs/models/graph-ql.js.map +1 -0
- package/dist/mjs/models/index.d.ts +42 -0
- package/dist/mjs/models/index.d.ts.map +1 -0
- package/dist/mjs/models/index.js +42 -0
- package/dist/mjs/models/index.js.map +1 -0
- package/dist/mjs/models/inventory.d.ts +327 -0
- package/dist/mjs/models/inventory.d.ts.map +1 -0
- package/dist/mjs/models/inventory.js +7 -0
- package/dist/mjs/models/inventory.js.map +1 -0
- package/dist/mjs/models/me.d.ts +2483 -0
- package/dist/mjs/models/me.d.ts.map +1 -0
- package/dist/mjs/models/me.js +7 -0
- package/dist/mjs/models/me.js.map +1 -0
- package/dist/mjs/models/message.d.ts +15095 -0
- package/dist/mjs/models/message.d.ts.map +1 -0
- package/dist/mjs/models/message.js +7 -0
- package/dist/mjs/models/message.js.map +1 -0
- package/dist/mjs/models/order-edit.d.ts +1645 -0
- package/dist/mjs/models/order-edit.d.ts.map +1 -0
- package/dist/mjs/models/order-edit.js +7 -0
- package/dist/mjs/models/order-edit.js.map +1 -0
- package/dist/mjs/models/order.d.ts +2157 -0
- package/dist/mjs/models/order.d.ts.map +1 -0
- package/dist/mjs/models/order.js +7 -0
- package/dist/mjs/models/order.js.map +1 -0
- package/dist/mjs/models/payment.d.ts +734 -0
- package/dist/mjs/models/payment.d.ts.map +1 -0
- package/dist/mjs/models/payment.js +7 -0
- package/dist/mjs/models/payment.js.map +1 -0
- package/dist/mjs/models/product-discount.d.ts +461 -0
- package/dist/mjs/models/product-discount.d.ts.map +1 -0
- package/dist/mjs/models/product-discount.js +7 -0
- package/dist/mjs/models/product-discount.js.map +1 -0
- package/dist/mjs/models/product-selection.d.ts +638 -0
- package/dist/mjs/models/product-selection.d.ts.map +1 -0
- package/dist/mjs/models/product-selection.js +7 -0
- package/dist/mjs/models/product-selection.js.map +1 -0
- package/dist/mjs/models/product-type.d.ts +774 -0
- package/dist/mjs/models/product-type.d.ts.map +1 -0
- package/dist/mjs/models/product-type.js +7 -0
- package/dist/mjs/models/product-type.js.map +1 -0
- package/dist/mjs/models/product.d.ts +2282 -0
- package/dist/mjs/models/product.d.ts.map +1 -0
- package/dist/mjs/models/product.js +7 -0
- package/dist/mjs/models/product.js.map +1 -0
- package/dist/mjs/models/project.d.ts +381 -0
- package/dist/mjs/models/project.d.ts.map +1 -0
- package/dist/mjs/models/project.js +7 -0
- package/dist/mjs/models/project.js.map +1 -0
- package/dist/mjs/models/quote-request.d.ts +430 -0
- package/dist/mjs/models/quote-request.d.ts.map +1 -0
- package/dist/mjs/models/quote-request.js +7 -0
- package/dist/mjs/models/quote-request.js.map +1 -0
- package/dist/mjs/models/quote.d.ts +458 -0
- package/dist/mjs/models/quote.d.ts.map +1 -0
- package/dist/mjs/models/quote.js +7 -0
- package/dist/mjs/models/quote.js.map +1 -0
- package/dist/mjs/models/review.d.ts +435 -0
- package/dist/mjs/models/review.d.ts.map +1 -0
- package/dist/mjs/models/review.js +7 -0
- package/dist/mjs/models/review.js.map +1 -0
- package/dist/mjs/models/scalar-types.d.ts +9 -0
- package/dist/mjs/models/scalar-types.d.ts.map +1 -0
- package/dist/mjs/models/scalar-types.js +7 -0
- package/dist/mjs/models/scalar-types.js.map +1 -0
- package/dist/mjs/models/shipping-method.d.ts +569 -0
- package/dist/mjs/models/shipping-method.d.ts.map +1 -0
- package/dist/mjs/models/shipping-method.js +7 -0
- package/dist/mjs/models/shipping-method.js.map +1 -0
- package/dist/mjs/models/shopping-list.d.ts +844 -0
- package/dist/mjs/models/shopping-list.d.ts.map +1 -0
- package/dist/mjs/models/shopping-list.js +7 -0
- package/dist/mjs/models/shopping-list.js.map +1 -0
- package/dist/mjs/models/staged-quote.d.ts +338 -0
- package/dist/mjs/models/staged-quote.d.ts.map +1 -0
- package/dist/mjs/models/staged-quote.js +7 -0
- package/dist/mjs/models/staged-quote.js.map +1 -0
- package/dist/mjs/models/standalone-price.d.ts +410 -0
- package/dist/mjs/models/standalone-price.d.ts.map +1 -0
- package/dist/mjs/models/standalone-price.js +7 -0
- package/dist/mjs/models/standalone-price.js.map +1 -0
- package/dist/mjs/models/state.d.ts +341 -0
- package/dist/mjs/models/state.d.ts.map +1 -0
- package/dist/mjs/models/state.js +7 -0
- package/dist/mjs/models/state.js.map +1 -0
- package/dist/mjs/models/store-country.d.ts +14 -0
- package/dist/mjs/models/store-country.d.ts.map +1 -0
- package/dist/mjs/models/store-country.js +7 -0
- package/dist/mjs/models/store-country.js.map +1 -0
- package/dist/mjs/models/store.d.ts +547 -0
- package/dist/mjs/models/store.d.ts.map +1 -0
- package/dist/mjs/models/store.js +7 -0
- package/dist/mjs/models/store.js.map +1 -0
- package/dist/mjs/models/subscription.d.ts +717 -0
- package/dist/mjs/models/subscription.d.ts.map +1 -0
- package/dist/mjs/models/subscription.js +7 -0
- package/dist/mjs/models/subscription.js.map +1 -0
- package/dist/mjs/models/tax-category.d.ts +376 -0
- package/dist/mjs/models/tax-category.d.ts.map +1 -0
- package/dist/mjs/models/tax-category.js +7 -0
- package/dist/mjs/models/tax-category.js.map +1 -0
- package/dist/mjs/models/type.d.ts +645 -0
- package/dist/mjs/models/type.d.ts.map +1 -0
- package/dist/mjs/models/type.js +7 -0
- package/dist/mjs/models/type.js.map +1 -0
- package/dist/mjs/models/zone.d.ts +234 -0
- package/dist/mjs/models/zone.d.ts.map +1 -0
- package/dist/mjs/models/zone.js +7 -0
- package/dist/mjs/models/zone.js.map +1 -0
- package/dist/mjs/request/index.d.ts +3 -0
- package/dist/mjs/request/index.d.ts.map +1 -0
- package/dist/mjs/request/index.js +3 -0
- package/dist/mjs/request/index.js.map +1 -0
- package/dist/mjs/request/is-retryable-error.d.ts +6 -0
- package/dist/mjs/request/is-retryable-error.d.ts.map +1 -0
- package/dist/mjs/request/is-retryable-error.js +24 -0
- package/dist/mjs/request/is-retryable-error.js.map +1 -0
- package/dist/mjs/request/request-executor.d.ts +12 -0
- package/dist/mjs/request/request-executor.d.ts.map +1 -0
- package/dist/mjs/request/request-executor.js +19 -0
- package/dist/mjs/request/request-executor.js.map +1 -0
- package/dist/mjs/request/request.d.ts +11 -0
- package/dist/mjs/request/request.d.ts.map +1 -0
- package/dist/mjs/request/request.js +80 -0
- package/dist/mjs/request/request.js.map +1 -0
- package/dist/mjs/request/transform-error.d.ts +7 -0
- package/dist/mjs/request/transform-error.d.ts.map +1 -0
- package/dist/mjs/request/transform-error.js +12 -0
- package/dist/mjs/request/transform-error.js.map +1 -0
- package/dist/mjs/types.d.ts +96 -0
- package/dist/mjs/types.d.ts.map +1 -0
- package/dist/mjs/types.js +13 -0
- package/dist/mjs/types.js.map +1 -0
- package/dist/mjs/utils/axios/convert-error.d.ts +4 -0
- package/dist/mjs/utils/axios/convert-error.d.ts.map +1 -0
- package/dist/mjs/utils/axios/convert-error.js +24 -0
- package/dist/mjs/utils/axios/convert-error.js.map +1 -0
- package/dist/mjs/utils/axios/convert-response.d.ts +4 -0
- package/dist/mjs/utils/axios/convert-response.d.ts.map +1 -0
- package/dist/mjs/utils/axios/convert-response.js +19 -0
- package/dist/mjs/utils/axios/convert-response.js.map +1 -0
- package/dist/mjs/utils/axios/create-instance.d.ts +11 -0
- package/dist/mjs/utils/axios/create-instance.d.ts.map +1 -0
- package/dist/mjs/utils/axios/create-instance.js +23 -0
- package/dist/mjs/utils/axios/create-instance.js.map +1 -0
- package/dist/mjs/utils/axios/extract-headers.d.ts +2 -0
- package/dist/mjs/utils/axios/extract-headers.d.ts.map +1 -0
- package/dist/mjs/utils/axios/extract-headers.js +19 -0
- package/dist/mjs/utils/axios/extract-headers.js.map +1 -0
- package/dist/mjs/utils/axios/index.d.ts +5 -0
- package/dist/mjs/utils/axios/index.d.ts.map +1 -0
- package/dist/mjs/utils/axios/index.js +5 -0
- package/dist/mjs/utils/axios/index.js.map +1 -0
- package/dist/mjs/utils/calculate-delay.d.ts +7 -0
- package/dist/mjs/utils/calculate-delay.d.ts.map +1 -0
- package/dist/mjs/utils/calculate-delay.js +26 -0
- package/dist/mjs/utils/calculate-delay.js.map +1 -0
- package/dist/mjs/utils/ensure-non-empty-string.d.ts +16 -0
- package/dist/mjs/utils/ensure-non-empty-string.d.ts.map +1 -0
- package/dist/mjs/utils/ensure-non-empty-string.js +12 -0
- package/dist/mjs/utils/ensure-non-empty-string.js.map +1 -0
- package/dist/mjs/utils/format.d.ts +11 -0
- package/dist/mjs/utils/format.d.ts.map +1 -0
- package/dist/mjs/utils/format.js +44 -0
- package/dist/mjs/utils/format.js.map +1 -0
- package/dist/mjs/utils/get-attribute-value.d.ts +17 -0
- package/dist/mjs/utils/get-attribute-value.d.ts.map +1 -0
- package/dist/mjs/utils/get-attribute-value.js +15 -0
- package/dist/mjs/utils/get-attribute-value.js.map +1 -0
- package/dist/mjs/utils/index.d.ts +9 -0
- package/dist/mjs/utils/index.d.ts.map +1 -0
- package/dist/mjs/utils/index.js +9 -0
- package/dist/mjs/utils/index.js.map +1 -0
- package/dist/mjs/utils/mask.d.ts +28 -0
- package/dist/mjs/utils/mask.d.ts.map +1 -0
- package/dist/mjs/utils/mask.js +54 -0
- package/dist/mjs/utils/mask.js.map +1 -0
- package/dist/mjs/utils/plain-clone.d.ts +14 -0
- package/dist/mjs/utils/plain-clone.d.ts.map +1 -0
- package/dist/mjs/utils/plain-clone.js +37 -0
- package/dist/mjs/utils/plain-clone.js.map +1 -0
- package/dist/mjs/utils/retry-on-conflict.d.ts +99 -0
- package/dist/mjs/utils/retry-on-conflict.d.ts.map +1 -0
- package/dist/mjs/utils/retry-on-conflict.js +105 -0
- package/dist/mjs/utils/retry-on-conflict.js.map +1 -0
- package/dist/mjs/utils/useragent.d.ts +10 -0
- package/dist/mjs/utils/useragent.d.ts.map +1 -0
- package/dist/mjs/utils/useragent.js +17 -0
- package/dist/mjs/utils/useragent.js.map +1 -0
- package/package.json +48 -46
- package/dist/ge-commercetools-utils-browser.cjs.js +0 -2
- package/dist/ge-commercetools-utils-browser.cjs.js.map +0 -1
- package/dist/ge-commercetools-utils-browser.esm.js +0 -2
- package/dist/ge-commercetools-utils-browser.esm.js.map +0 -1
- package/dist/ge-commercetools-utils-node.cjs.js +0 -3
- package/dist/ge-commercetools-utils-node.cjs.js.LICENSE.txt +0 -13
- package/dist/ge-commercetools-utils-node.cjs.js.map +0 -1
- package/dist/ge-commercetools-utils-node.esm.js +0 -2
- package/dist/ge-commercetools-utils-node.esm.js.LICENSE.txt +0 -13
- package/dist/typings/api/CommercetoolsApi.d.ts +0 -515
- package/dist/typings/api/index.d.ts +0 -2
- package/dist/typings/api/types.d.ts +0 -12
- package/dist/typings/auth/CommercetoolsAuth.d.ts +0 -22
- package/dist/typings/auth/CommercetoolsAuthApi.d.ts +0 -27
- package/dist/typings/auth/CommercetoolsGrant.d.ts +0 -13
- package/dist/typings/auth/constants.d.ts +0 -3
- package/dist/typings/auth/index.d.ts +0 -3
- package/dist/typings/auth/scopes.d.ts +0 -2
- package/dist/typings/auth/types.d.ts +0 -41
- package/dist/typings/constants.d.ts +0 -12
- package/dist/typings/error/CommercetoolsError.d.ts +0 -11
- package/dist/typings/error/index.d.ts +0 -1
- package/dist/typings/index.d.ts +0 -7
- package/dist/typings/models/associate-role.d.ts +0 -79
- package/dist/typings/models/attribute-group.d.ts +0 -68
- package/dist/typings/models/business-unit.d.ts +0 -272
- package/dist/typings/models/cart-discount.d.ts +0 -196
- package/dist/typings/models/cart.d.ts +0 -745
- package/dist/typings/models/category.d.ts +0 -166
- package/dist/typings/models/channel.d.ts +0 -103
- package/dist/typings/models/common.d.ts +0 -256
- package/dist/typings/models/custom-object.d.ts +0 -30
- package/dist/typings/models/customer-group.d.ts +0 -58
- package/dist/typings/models/customer.d.ts +0 -293
- package/dist/typings/models/discount-code.d.ts +0 -116
- package/dist/typings/models/error.d.ts +0 -874
- package/dist/typings/models/extension.d.ts +0 -83
- package/dist/typings/models/graph-ql.d.ts +0 -23
- package/dist/typings/models/index.d.ts +0 -41
- package/dist/typings/models/inventory.d.ts +0 -88
- package/dist/typings/models/me.d.ts +0 -640
- package/dist/typings/models/message.d.ts +0 -3210
- package/dist/typings/models/order-edit.d.ts +0 -572
- package/dist/typings/models/payment.d.ts +0 -191
- package/dist/typings/models/product-discount.d.ts +0 -123
- package/dist/typings/models/product-selection.d.ts +0 -158
- package/dist/typings/models/product-type.d.ts +0 -213
- package/dist/typings/models/product.d.ts +0 -535
- package/dist/typings/models/project.d.ts +0 -120
- package/dist/typings/models/quote-request.d.ts +0 -94
- package/dist/typings/models/quote.d.ts +0 -103
- package/dist/typings/models/review.d.ts +0 -115
- package/dist/typings/models/scalar-types.d.ts +0 -3
- package/dist/typings/models/shipping-method.d.ts +0 -160
- package/dist/typings/models/shopping-list.d.ts +0 -217
- package/dist/typings/models/staged-quote.d.ts +0 -84
- package/dist/typings/models/standalone-price.d.ts +0 -95
- package/dist/typings/models/state.d.ts +0 -86
- package/dist/typings/models/store-country.d.ts +0 -3
- package/dist/typings/models/store.d.ts +0 -137
- package/dist/typings/models/subscription.d.ts +0 -161
- package/dist/typings/models/tax-category.d.ts +0 -91
- package/dist/typings/models/type.d.ts +0 -177
- package/dist/typings/models/zone.d.ts +0 -65
- package/dist/typings/request/index.d.ts +0 -2
- package/dist/typings/request/is-retryable-error.d.ts +0 -1
- package/dist/typings/request/transform-error.d.ts +0 -2
- package/dist/typings/utils/axios/index.d.ts +0 -4
- package/dist/typings/utils/calculate-delay.d.ts +0 -2
- package/dist/typings/utils/ensure-non-empty-string.d.ts +0 -5
- package/dist/typings/utils/format.d.ts +0 -1
- package/dist/typings/utils/get-attribute-value.d.ts +0 -6
- package/dist/typings/utils/index.d.ts +0 -8
- package/dist/typings/utils/mask.d.ts +0 -6
- package/dist/typings/utils/plain-clone.d.ts +0 -1
- package/dist/typings/utils/retry-on-conflict.d.ts +0 -7
- package/dist/typings/utils/useragent.d.ts +0 -1
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
export interface RetryOnConflictParams<T = any> {
|
|
2
|
+
/**
|
|
3
|
+
* Any function that returns a promise
|
|
4
|
+
*
|
|
5
|
+
* This function is expected to be able to throw a {@link CommercetoolsError}
|
|
6
|
+
* with a status code of 409. These errors should **not** be swallowed by the
|
|
7
|
+
* code in this function.
|
|
8
|
+
*/
|
|
9
|
+
executeFn: (attemptNo: number) => Promise<T>;
|
|
10
|
+
/**
|
|
11
|
+
* The number of milliseconds to wait before retrying a failed request.
|
|
12
|
+
* This will be increased exponentially {@link CommercetoolsApi.calculateDelay}.
|
|
13
|
+
* Defaults to 100.
|
|
14
|
+
*/
|
|
15
|
+
delayMs?: number;
|
|
16
|
+
/**
|
|
17
|
+
* The maximum number of times that we'll call the `executeFn` function
|
|
18
|
+
* before returning the error caught from the last failure.
|
|
19
|
+
* Defaults to 3.
|
|
20
|
+
*/
|
|
21
|
+
maxRetries?: number;
|
|
22
|
+
/**
|
|
23
|
+
* If enabled, adds a random element to the exponential increase
|
|
24
|
+
* in retry time. See the following url for more details:
|
|
25
|
+
* https://aws.amazon.com/blogs/architecture/exponential-backoff-and-jitter/
|
|
26
|
+
* We utilise the 'full' jitter + plus an additional decaying variance.
|
|
27
|
+
*/
|
|
28
|
+
jitter?: boolean;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Re-executes a function if a 409 response code is returned from commercetools
|
|
32
|
+
*
|
|
33
|
+
* When you make a request to update a resource in commercetools, you may receive a
|
|
34
|
+
* 409 response code if the resource has been updated since you last fetched it. This
|
|
35
|
+
* function will re-execute the function passed in to {@link RetryOnConflictParams.executeFn}
|
|
36
|
+
* in that scenario.
|
|
37
|
+
*
|
|
38
|
+
* You should retrieve the latest version of the resource before re-executing the function
|
|
39
|
+
* that caused the 409 response in the first place.
|
|
40
|
+
*
|
|
41
|
+
* For example, in order to update a product, you would first need to fetch the latest
|
|
42
|
+
* product (or product projection) and then post the update actions:
|
|
43
|
+
*
|
|
44
|
+
* ```typescript
|
|
45
|
+
* import { retryOnConflict, CommercetoolsApi, Region } from '@gradientedge/commercetools-utils'
|
|
46
|
+
*
|
|
47
|
+
* const api = new CommercetoolsApi({
|
|
48
|
+
* projectKey: 'your-project-key',
|
|
49
|
+
* region: Region.EUROPE_GCP,
|
|
50
|
+
* clientId: 'your-client-id',
|
|
51
|
+
* clientSecret: 'your-client-secret',
|
|
52
|
+
* clientScopes: ['manage_products'],
|
|
53
|
+
* })
|
|
54
|
+
*
|
|
55
|
+
* const updatedProduct = await retryOnConflict({
|
|
56
|
+
* executeFn: async () => {
|
|
57
|
+
* // Get the latest product projection
|
|
58
|
+
* const productProjection = await api.getProductProjectionByKey({key: 'dummy-product-id'})
|
|
59
|
+
*
|
|
60
|
+
* // Attempt to update the product. If this fails with a 409, the function
|
|
61
|
+
* // will be retried, otherwise the `Product` object will be returned.
|
|
62
|
+
* return await api.updateProductById({
|
|
63
|
+
* id: productProjection.id,
|
|
64
|
+
* data: {
|
|
65
|
+
* version: productProjection.version,
|
|
66
|
+
* actions: [
|
|
67
|
+
* {
|
|
68
|
+
* action: 'setMetaTitle',
|
|
69
|
+
* metaTitle: {
|
|
70
|
+
* en: 'New meta title',
|
|
71
|
+
* },
|
|
72
|
+
* },
|
|
73
|
+
* ],
|
|
74
|
+
* },
|
|
75
|
+
* })
|
|
76
|
+
* },
|
|
77
|
+
* // The `executeFn` function will be called a maximum of 3 times (first attempt + 2 retries)
|
|
78
|
+
* maxRetries: 2,
|
|
79
|
+
* // The delay between for the first retry will be 20ms, increasing exponentially
|
|
80
|
+
* delayMs: 20,
|
|
81
|
+
* })
|
|
82
|
+
*
|
|
83
|
+
* console.log(updatedProduct)
|
|
84
|
+
*
|
|
85
|
+
* ```
|
|
86
|
+
*
|
|
87
|
+
* By default, the function passed in to {@link RetryOnConflictParams.executeFn} will be
|
|
88
|
+
* retried 3 times, though this can be altered by passing in a different value for the
|
|
89
|
+
* {@link RetryOnConflictParams.maxRetries} parameter.
|
|
90
|
+
*
|
|
91
|
+
* There is by default a 100ms delay after the first unsuccessful attempt, which is then
|
|
92
|
+
* increases exponentially for each subsequent attempt. This delay can be altered by passing
|
|
93
|
+
* in a different value for the {@link RetryOnConflictParams.delayMs} parameter.
|
|
94
|
+
*
|
|
95
|
+
* If the {@link RetryOnConflictParams.jitter} parameter is set to `true`, then a random
|
|
96
|
+
* element is added to the exponential increase in retry time.
|
|
97
|
+
*/
|
|
98
|
+
export declare function retryOnConflict<T = any>(options: RetryOnConflictParams): Promise<T>;
|
|
99
|
+
//# sourceMappingURL=retry-on-conflict.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry-on-conflict.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/retry-on-conflict.ts"],"names":[],"mappings":"AAiBA,MAAM,WAAW,qBAAqB,CAAC,CAAC,GAAG,GAAG;IAC5C;;;;;;OAMG;IACH,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CAAA;IAC5C;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AACH,wBAAsB,eAAe,CAAC,CAAC,GAAG,GAAG,EAAE,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,CAAC,CAAC,CAsBzF"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.retryOnConflict = void 0;
|
|
4
|
+
const calculate_delay_js_1 = require("./calculate-delay.js");
|
|
5
|
+
const status_1 = require("@tshttp/status");
|
|
6
|
+
/**
|
|
7
|
+
* Default maximum number of retries
|
|
8
|
+
*
|
|
9
|
+
* See the {@link calculateDelay} function for more details
|
|
10
|
+
*/
|
|
11
|
+
const DEFAULT_MAX_RETRIES = 3;
|
|
12
|
+
/**
|
|
13
|
+
* Default delay (in milliseconds) before a retry attempt is made
|
|
14
|
+
*
|
|
15
|
+
* See the {@link calculateDelay} function for more details
|
|
16
|
+
*/
|
|
17
|
+
const DEFAULT_DELAY_MS = 100;
|
|
18
|
+
/**
|
|
19
|
+
* Re-executes a function if a 409 response code is returned from commercetools
|
|
20
|
+
*
|
|
21
|
+
* When you make a request to update a resource in commercetools, you may receive a
|
|
22
|
+
* 409 response code if the resource has been updated since you last fetched it. This
|
|
23
|
+
* function will re-execute the function passed in to {@link RetryOnConflictParams.executeFn}
|
|
24
|
+
* in that scenario.
|
|
25
|
+
*
|
|
26
|
+
* You should retrieve the latest version of the resource before re-executing the function
|
|
27
|
+
* that caused the 409 response in the first place.
|
|
28
|
+
*
|
|
29
|
+
* For example, in order to update a product, you would first need to fetch the latest
|
|
30
|
+
* product (or product projection) and then post the update actions:
|
|
31
|
+
*
|
|
32
|
+
* ```typescript
|
|
33
|
+
* import { retryOnConflict, CommercetoolsApi, Region } from '@gradientedge/commercetools-utils'
|
|
34
|
+
*
|
|
35
|
+
* const api = new CommercetoolsApi({
|
|
36
|
+
* projectKey: 'your-project-key',
|
|
37
|
+
* region: Region.EUROPE_GCP,
|
|
38
|
+
* clientId: 'your-client-id',
|
|
39
|
+
* clientSecret: 'your-client-secret',
|
|
40
|
+
* clientScopes: ['manage_products'],
|
|
41
|
+
* })
|
|
42
|
+
*
|
|
43
|
+
* const updatedProduct = await retryOnConflict({
|
|
44
|
+
* executeFn: async () => {
|
|
45
|
+
* // Get the latest product projection
|
|
46
|
+
* const productProjection = await api.getProductProjectionByKey({key: 'dummy-product-id'})
|
|
47
|
+
*
|
|
48
|
+
* // Attempt to update the product. If this fails with a 409, the function
|
|
49
|
+
* // will be retried, otherwise the `Product` object will be returned.
|
|
50
|
+
* return await api.updateProductById({
|
|
51
|
+
* id: productProjection.id,
|
|
52
|
+
* data: {
|
|
53
|
+
* version: productProjection.version,
|
|
54
|
+
* actions: [
|
|
55
|
+
* {
|
|
56
|
+
* action: 'setMetaTitle',
|
|
57
|
+
* metaTitle: {
|
|
58
|
+
* en: 'New meta title',
|
|
59
|
+
* },
|
|
60
|
+
* },
|
|
61
|
+
* ],
|
|
62
|
+
* },
|
|
63
|
+
* })
|
|
64
|
+
* },
|
|
65
|
+
* // The `executeFn` function will be called a maximum of 3 times (first attempt + 2 retries)
|
|
66
|
+
* maxRetries: 2,
|
|
67
|
+
* // The delay between for the first retry will be 20ms, increasing exponentially
|
|
68
|
+
* delayMs: 20,
|
|
69
|
+
* })
|
|
70
|
+
*
|
|
71
|
+
* console.log(updatedProduct)
|
|
72
|
+
*
|
|
73
|
+
* ```
|
|
74
|
+
*
|
|
75
|
+
* By default, the function passed in to {@link RetryOnConflictParams.executeFn} will be
|
|
76
|
+
* retried 3 times, though this can be altered by passing in a different value for the
|
|
77
|
+
* {@link RetryOnConflictParams.maxRetries} parameter.
|
|
78
|
+
*
|
|
79
|
+
* There is by default a 100ms delay after the first unsuccessful attempt, which is then
|
|
80
|
+
* increases exponentially for each subsequent attempt. This delay can be altered by passing
|
|
81
|
+
* in a different value for the {@link RetryOnConflictParams.delayMs} parameter.
|
|
82
|
+
*
|
|
83
|
+
* If the {@link RetryOnConflictParams.jitter} parameter is set to `true`, then a random
|
|
84
|
+
* element is added to the exponential increase in retry time.
|
|
85
|
+
*/
|
|
86
|
+
async function retryOnConflict(options) {
|
|
87
|
+
const maxAttempts = (options?.maxRetries || DEFAULT_MAX_RETRIES) + 1;
|
|
88
|
+
const delayMs = options?.delayMs || DEFAULT_DELAY_MS;
|
|
89
|
+
const jitter = !!options?.jitter;
|
|
90
|
+
let result;
|
|
91
|
+
for (let attemptCount = 1; attemptCount <= maxAttempts; attemptCount++) {
|
|
92
|
+
if (attemptCount > 1) {
|
|
93
|
+
const delay = (0, calculate_delay_js_1.calculateDelay)(attemptCount - 1, { delayMs, jitter });
|
|
94
|
+
await new Promise((resolve) => setTimeout(resolve, delay));
|
|
95
|
+
}
|
|
96
|
+
try {
|
|
97
|
+
return await options.executeFn(attemptCount);
|
|
98
|
+
}
|
|
99
|
+
catch (e) {
|
|
100
|
+
if (!e.isCommercetoolsError || e.status !== status_1.Status.Conflict || attemptCount === maxAttempts) {
|
|
101
|
+
throw e;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
// eslint-disable-next-line
|
|
106
|
+
return result;
|
|
107
|
+
}
|
|
108
|
+
exports.retryOnConflict = retryOnConflict;
|
|
109
|
+
//# sourceMappingURL=retry-on-conflict.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry-on-conflict.js","sourceRoot":"","sources":["../../../src/lib/utils/retry-on-conflict.ts"],"names":[],"mappings":";;;AAAA,6DAAqD;AACrD,2CAAuC;AAEvC;;;;GAIG;AACH,MAAM,mBAAmB,GAAG,CAAC,CAAA;AAE7B;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,GAAG,CAAA;AAkC5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AACI,KAAK,UAAU,eAAe,CAAU,OAA8B;IAC3E,MAAM,WAAW,GAAG,CAAC,OAAO,EAAE,UAAU,IAAI,mBAAmB,CAAC,GAAG,CAAC,CAAA;IACpE,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,gBAAgB,CAAA;IACpD,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,CAAA;IAChC,IAAI,MAAS,CAAA;IAEb,KAAK,IAAI,YAAY,GAAG,CAAC,EAAE,YAAY,IAAI,WAAW,EAAE,YAAY,EAAE,EAAE,CAAC;QACvE,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,KAAK,GAAG,IAAA,mCAAc,EAAC,YAAY,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;YACnE,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAA;QAC5D,CAAC;QACD,IAAI,CAAC;YACH,OAAO,MAAM,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;QAC9C,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,CAAC,CAAC,CAAC,oBAAoB,IAAI,CAAC,CAAC,MAAM,KAAK,eAAM,CAAC,QAAQ,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;gBAC5F,MAAM,CAAC,CAAA;YACT,CAAC;QACH,CAAC;IACH,CAAC;IAED,2BAA2B;IAC3B,OAAO,MAAO,CAAA;AAChB,CAAC;AAtBD,0CAsBC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Build a string suitable for sending as the `User-Agent` HTTP header.
|
|
3
|
+
* This should contain information that allows commercetools to easily
|
|
4
|
+
* identify the source of the request. The `systemIdentifier` comes from
|
|
5
|
+
* {@see CommercetoolsApiConfig.systemIdentifier} and should be a string
|
|
6
|
+
* that uniquely identifies the application where this package is being
|
|
7
|
+
* used.
|
|
8
|
+
*/
|
|
9
|
+
export declare function buildUserAgent(systemIdentifier?: string): string;
|
|
10
|
+
//# sourceMappingURL=useragent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useragent.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/useragent.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,MAAM,CAMhE"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildUserAgent = void 0;
|
|
4
|
+
const constants_js_1 = require("../constants.js");
|
|
5
|
+
/**
|
|
6
|
+
* Build a string suitable for sending as the `User-Agent` HTTP header.
|
|
7
|
+
* This should contain information that allows commercetools to easily
|
|
8
|
+
* identify the source of the request. The `systemIdentifier` comes from
|
|
9
|
+
* {@see CommercetoolsApiConfig.systemIdentifier} and should be a string
|
|
10
|
+
* that uniquely identifies the application where this package is being
|
|
11
|
+
* used.
|
|
12
|
+
*/
|
|
13
|
+
function buildUserAgent(systemIdentifier) {
|
|
14
|
+
let userAgent = constants_js_1.USER_AGENT_PREFIX;
|
|
15
|
+
if (systemIdentifier) {
|
|
16
|
+
userAgent = `${userAgent} (${systemIdentifier})`;
|
|
17
|
+
}
|
|
18
|
+
return userAgent;
|
|
19
|
+
}
|
|
20
|
+
exports.buildUserAgent = buildUserAgent;
|
|
21
|
+
//# sourceMappingURL=useragent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useragent.js","sourceRoot":"","sources":["../../../src/lib/utils/useragent.ts"],"names":[],"mappings":";;;AAAA,kDAAmD;AAEnD;;;;;;;GAOG;AACH,SAAgB,cAAc,CAAC,gBAAyB;IACtD,IAAI,SAAS,GAAG,gCAAiB,CAAA;IACjC,IAAI,gBAAgB,EAAE,CAAC;QACrB,SAAS,GAAG,GAAG,SAAS,KAAK,gBAAgB,GAAG,CAAA;IAClD,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAND,wCAMC"}
|