@labdigital/commercetools-mock 2.57.1 → 2.59.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/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +207 -133
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/src/repositories/cart/actions.ts +87 -168
- package/src/repositories/cart/index.test.ts +376 -2
- package/src/repositories/cart/index.ts +203 -3
- package/src/repositories/order/actions.ts +81 -0
- package/src/repositories/order/index.ts +1 -0
- package/src/services/cart.test.ts +170 -0
- package/src/services/order.test.ts +236 -1
package/dist/index.d.ts
CHANGED
|
@@ -151,6 +151,7 @@ declare class CartRepository extends AbstractResourceRepository<"cart"> {
|
|
|
151
151
|
create(context: RepositoryContext, draft: CartDraft): Cart;
|
|
152
152
|
getActiveCart(projectKey: string): Cart | undefined;
|
|
153
153
|
draftLineItemtoLineItem: (projectKey: string, draftLineItem: LineItemDraft, currency: string, country: string | undefined) => LineItem;
|
|
154
|
+
createShippingInfo(context: RepositoryContext, resource: Writable<Cart>, shippingMethodRef: NonNullable<CartDraft["shippingMethod"]>): NonNullable<Cart["shippingInfo"]>;
|
|
154
155
|
}
|
|
155
156
|
|
|
156
157
|
//#endregion
|
|
@@ -1009,7 +1010,9 @@ declare class MyCustomerRepository extends CustomerRepository {
|
|
|
1009
1010
|
};
|
|
1010
1011
|
deleteMe(context: RepositoryContext): Customer | undefined;
|
|
1011
1012
|
getMe(context: RepositoryContext): Customer | undefined;
|
|
1012
|
-
}
|
|
1013
|
+
}
|
|
1014
|
+
|
|
1015
|
+
//#endregion
|
|
1013
1016
|
//#region src/repositories/my-order.d.ts
|
|
1014
1017
|
declare class MyOrderRepository extends OrderRepository {
|
|
1015
1018
|
create(context: RepositoryContext, draft: MyOrderFromCartDraft): Order;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/oauth/store.d.ts","../src/repositories/abstract.d.ts","../src/repositories/product-tailoring.d.ts","../src/repositories/cart/index.d.ts","../src/repositories/order/index.d.ts","../src/repositories/quote-request/index.d.ts","../src/repositories/as-associate.d.ts","../src/repositories/associate-role.d.ts","../src/repositories/attribute-group.d.ts","../src/repositories/business-unit.d.ts","../src/repositories/cart-discount/index.d.ts","../src/repositories/category/index.d.ts","../src/repositories/channel.d.ts","../src/repositories/custom-object.d.ts","../src/repositories/customer/index.d.ts","../src/repositories/customer-group.d.ts","../src/repositories/discount-code/index.d.ts","../src/repositories/discount-group/index.d.ts","../src/repositories/extension.d.ts","../src/repositories/inventory-entry/index.d.ts","../src/repositories/my-customer.d.ts","../src/repositories/my-order.d.ts","../src/repositories/order-edit.d.ts","../src/repositories/payment/index.d.ts","../src/lib/review-statistics.d.ts","../src/product-search.d.ts","../src/repositories/product/index.d.ts","../src/repositories/product-discount.d.ts","../src/lib/projectionSearchFilter.d.ts","../src/product-projection-search.d.ts","../src/repositories/product-projection.d.ts","../src/repositories/product-selection.d.ts","../src/repositories/product-type.d.ts","../src/repositories/project.d.ts","../src/repositories/quote/index.d.ts","../src/repositories/quote-staged/index.d.ts","../src/repositories/recurrence-policy/index.d.ts","../src/repositories/recurring-order/index.d.ts","../src/repositories/review.d.ts","../src/repositories/shipping-method/index.d.ts","../src/repositories/shopping-list/index.d.ts","../src/repositories/standalone-price.d.ts","../src/repositories/state.d.ts","../src/repositories/store.d.ts","../src/repositories/subscription.d.ts","../src/repositories/tax-category/index.d.ts","../src/repositories/type/index.d.ts","../src/repositories/zone.d.ts","../src/repositories/index.d.ts","../src/types.d.ts","../src/storage/abstract.d.ts","../src/config.d.ts","../src/projectAPI.d.ts","../src/ctMock.d.ts","../src/helpers.d.ts"],"sourcesContent":null,"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/oauth/store.d.ts","../src/repositories/abstract.d.ts","../src/repositories/product-tailoring.d.ts","../src/repositories/cart/index.d.ts","../src/repositories/order/index.d.ts","../src/repositories/quote-request/index.d.ts","../src/repositories/as-associate.d.ts","../src/repositories/associate-role.d.ts","../src/repositories/attribute-group.d.ts","../src/repositories/business-unit.d.ts","../src/repositories/cart-discount/index.d.ts","../src/repositories/category/index.d.ts","../src/repositories/channel.d.ts","../src/repositories/custom-object.d.ts","../src/repositories/customer/index.d.ts","../src/repositories/customer-group.d.ts","../src/repositories/discount-code/index.d.ts","../src/repositories/discount-group/index.d.ts","../src/repositories/extension.d.ts","../src/repositories/inventory-entry/index.d.ts","../src/repositories/my-customer.d.ts","../src/repositories/my-order.d.ts","../src/repositories/order-edit.d.ts","../src/repositories/payment/index.d.ts","../src/lib/review-statistics.d.ts","../src/product-search.d.ts","../src/repositories/product/index.d.ts","../src/repositories/product-discount.d.ts","../src/lib/projectionSearchFilter.d.ts","../src/product-projection-search.d.ts","../src/repositories/product-projection.d.ts","../src/repositories/product-selection.d.ts","../src/repositories/product-type.d.ts","../src/repositories/project.d.ts","../src/repositories/quote/index.d.ts","../src/repositories/quote-staged/index.d.ts","../src/repositories/recurrence-policy/index.d.ts","../src/repositories/recurring-order/index.d.ts","../src/repositories/review.d.ts","../src/repositories/shipping-method/index.d.ts","../src/repositories/shopping-list/index.d.ts","../src/repositories/standalone-price.d.ts","../src/repositories/state.d.ts","../src/repositories/store.d.ts","../src/repositories/subscription.d.ts","../src/repositories/tax-category/index.d.ts","../src/repositories/type/index.d.ts","../src/repositories/zone.d.ts","../src/repositories/index.d.ts","../src/types.d.ts","../src/storage/abstract.d.ts","../src/config.d.ts","../src/projectAPI.d.ts","../src/ctMock.d.ts","../src/helpers.d.ts"],"sourcesContent":null,"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -521,6 +521,70 @@ var ProductTailoringUpdateHandler = class extends AbstractUpdateHandler {
|
|
|
521
521
|
}
|
|
522
522
|
};
|
|
523
523
|
|
|
524
|
+
//#endregion
|
|
525
|
+
//#region src/shipping.ts
|
|
526
|
+
const markMatchingShippingRate = (cart, shippingRate) => {
|
|
527
|
+
const isMatching = shippingRate.price.currencyCode === cart.totalPrice.currencyCode;
|
|
528
|
+
return {
|
|
529
|
+
...shippingRate,
|
|
530
|
+
tiers: markMatchingShippingRatePriceTiers(cart, shippingRate.tiers),
|
|
531
|
+
isMatching
|
|
532
|
+
};
|
|
533
|
+
};
|
|
534
|
+
const markMatchingShippingRatePriceTiers = (cart, tiers) => {
|
|
535
|
+
if (tiers.length === 0) return [];
|
|
536
|
+
if (new Set(tiers.map((tier) => tier.type)).size > 1) throw new Error("Can't handle multiple types of tiers");
|
|
537
|
+
const tierType = tiers[0].type;
|
|
538
|
+
switch (tierType) {
|
|
539
|
+
case "CartValue": return markMatchingCartValueTiers(cart, tiers);
|
|
540
|
+
default: throw new Error(`Unsupported tier type: ${tierType}`);
|
|
541
|
+
}
|
|
542
|
+
};
|
|
543
|
+
const markMatchingCartValueTiers = (cart, tiers) => {
|
|
544
|
+
const sortedTiers = [...tiers].sort((a, b) => b.minimumCentAmount - a.minimumCentAmount);
|
|
545
|
+
const result = {};
|
|
546
|
+
let hasMatchingTier = false;
|
|
547
|
+
for (const tier of sortedTiers) {
|
|
548
|
+
const isMatching = !hasMatchingTier && cart.totalPrice.currencyCode === tier.price.currencyCode && cart.totalPrice.centAmount >= tier.minimumCentAmount;
|
|
549
|
+
if (isMatching) hasMatchingTier = true;
|
|
550
|
+
result[tier.minimumCentAmount] = {
|
|
551
|
+
...tier,
|
|
552
|
+
isMatching
|
|
553
|
+
};
|
|
554
|
+
}
|
|
555
|
+
return tiers.map((tier) => result[tier.minimumCentAmount]);
|
|
556
|
+
};
|
|
557
|
+
const getShippingMethodsMatchingCart = (context, storage, cart, params = {}) => {
|
|
558
|
+
if (!cart.shippingAddress?.country) throw new CommercetoolsError({
|
|
559
|
+
code: "InvalidOperation",
|
|
560
|
+
message: `The cart with ID '${cart.id}' does not have a shipping address set.`
|
|
561
|
+
});
|
|
562
|
+
const zones = storage.query(context.projectKey, "zone", {
|
|
563
|
+
where: [`locations(country="${cart.shippingAddress.country}"))`],
|
|
564
|
+
limit: 100
|
|
565
|
+
});
|
|
566
|
+
const zoneIds = zones.results.map((zone) => zone.id);
|
|
567
|
+
const shippingMethods = storage.query(context.projectKey, "shipping-method", {
|
|
568
|
+
where: ["zoneRates(zone(id in (:zoneIds)))", `zoneRates(shippingRates(price(currencyCode="${cart.totalPrice.currencyCode}")))`],
|
|
569
|
+
"var.zoneIds": zoneIds,
|
|
570
|
+
expand: params.expand
|
|
571
|
+
});
|
|
572
|
+
const results = shippingMethods.results.map((shippingMethod) => {
|
|
573
|
+
const rates = shippingMethod.zoneRates.map((zoneRate) => ({
|
|
574
|
+
zone: zoneRate.zone,
|
|
575
|
+
shippingRates: zoneRate.shippingRates.map((rate) => markMatchingShippingRate(cart, rate)).filter((rate) => rate.isMatching)
|
|
576
|
+
})).filter((zoneRate) => zoneRate.shippingRates.length > 0);
|
|
577
|
+
return {
|
|
578
|
+
...shippingMethod,
|
|
579
|
+
zoneRates: rates
|
|
580
|
+
};
|
|
581
|
+
}).filter((shippingMethod) => shippingMethod.zoneRates.length > 0);
|
|
582
|
+
return {
|
|
583
|
+
...shippingMethods,
|
|
584
|
+
results
|
|
585
|
+
};
|
|
586
|
+
};
|
|
587
|
+
|
|
524
588
|
//#endregion
|
|
525
589
|
//#region src/repositories/helpers.ts
|
|
526
590
|
const createAddress = (base, projectKey, storage) => {
|
|
@@ -685,70 +749,6 @@ const getBusinessUnitKeyReference = (id, projectKey, storage) => {
|
|
|
685
749
|
};
|
|
686
750
|
};
|
|
687
751
|
|
|
688
|
-
//#endregion
|
|
689
|
-
//#region src/shipping.ts
|
|
690
|
-
const markMatchingShippingRate = (cart, shippingRate) => {
|
|
691
|
-
const isMatching = shippingRate.price.currencyCode === cart.totalPrice.currencyCode;
|
|
692
|
-
return {
|
|
693
|
-
...shippingRate,
|
|
694
|
-
tiers: markMatchingShippingRatePriceTiers(cart, shippingRate.tiers),
|
|
695
|
-
isMatching
|
|
696
|
-
};
|
|
697
|
-
};
|
|
698
|
-
const markMatchingShippingRatePriceTiers = (cart, tiers) => {
|
|
699
|
-
if (tiers.length === 0) return [];
|
|
700
|
-
if (new Set(tiers.map((tier) => tier.type)).size > 1) throw new Error("Can't handle multiple types of tiers");
|
|
701
|
-
const tierType = tiers[0].type;
|
|
702
|
-
switch (tierType) {
|
|
703
|
-
case "CartValue": return markMatchingCartValueTiers(cart, tiers);
|
|
704
|
-
default: throw new Error(`Unsupported tier type: ${tierType}`);
|
|
705
|
-
}
|
|
706
|
-
};
|
|
707
|
-
const markMatchingCartValueTiers = (cart, tiers) => {
|
|
708
|
-
const sortedTiers = [...tiers].sort((a, b) => b.minimumCentAmount - a.minimumCentAmount);
|
|
709
|
-
const result = {};
|
|
710
|
-
let hasMatchingTier = false;
|
|
711
|
-
for (const tier of sortedTiers) {
|
|
712
|
-
const isMatching = !hasMatchingTier && cart.totalPrice.currencyCode === tier.price.currencyCode && cart.totalPrice.centAmount >= tier.minimumCentAmount;
|
|
713
|
-
if (isMatching) hasMatchingTier = true;
|
|
714
|
-
result[tier.minimumCentAmount] = {
|
|
715
|
-
...tier,
|
|
716
|
-
isMatching
|
|
717
|
-
};
|
|
718
|
-
}
|
|
719
|
-
return tiers.map((tier) => result[tier.minimumCentAmount]);
|
|
720
|
-
};
|
|
721
|
-
const getShippingMethodsMatchingCart = (context, storage, cart, params = {}) => {
|
|
722
|
-
if (!cart.shippingAddress?.country) throw new CommercetoolsError({
|
|
723
|
-
code: "InvalidOperation",
|
|
724
|
-
message: `The cart with ID '${cart.id}' does not have a shipping address set.`
|
|
725
|
-
});
|
|
726
|
-
const zones = storage.query(context.projectKey, "zone", {
|
|
727
|
-
where: [`locations(country="${cart.shippingAddress.country}"))`],
|
|
728
|
-
limit: 100
|
|
729
|
-
});
|
|
730
|
-
const zoneIds = zones.results.map((zone) => zone.id);
|
|
731
|
-
const shippingMethods = storage.query(context.projectKey, "shipping-method", {
|
|
732
|
-
where: ["zoneRates(zone(id in (:zoneIds)))", `zoneRates(shippingRates(price(currencyCode="${cart.totalPrice.currencyCode}")))`],
|
|
733
|
-
"var.zoneIds": zoneIds,
|
|
734
|
-
expand: params.expand
|
|
735
|
-
});
|
|
736
|
-
const results = shippingMethods.results.map((shippingMethod) => {
|
|
737
|
-
const rates = shippingMethod.zoneRates.map((zoneRate) => ({
|
|
738
|
-
zone: zoneRate.zone,
|
|
739
|
-
shippingRates: zoneRate.shippingRates.map((rate) => markMatchingShippingRate(cart, rate)).filter((rate) => rate.isMatching)
|
|
740
|
-
})).filter((zoneRate) => zoneRate.shippingRates.length > 0);
|
|
741
|
-
return {
|
|
742
|
-
...shippingMethod,
|
|
743
|
-
zoneRates: rates
|
|
744
|
-
};
|
|
745
|
-
}).filter((shippingMethod) => shippingMethod.zoneRates.length > 0);
|
|
746
|
-
return {
|
|
747
|
-
...shippingMethods,
|
|
748
|
-
results
|
|
749
|
-
};
|
|
750
|
-
};
|
|
751
|
-
|
|
752
752
|
//#endregion
|
|
753
753
|
//#region src/repositories/cart/helpers.ts
|
|
754
754
|
const selectPrice = ({ prices, currency, country }) => {
|
|
@@ -848,6 +848,11 @@ const createCustomLineItemFromDraft = (projectKey, draft, storage, country) => {
|
|
|
848
848
|
//#endregion
|
|
849
849
|
//#region src/repositories/cart/actions.ts
|
|
850
850
|
var CartUpdateHandler = class extends AbstractUpdateHandler {
|
|
851
|
+
repository;
|
|
852
|
+
constructor(storage, repository) {
|
|
853
|
+
super(storage);
|
|
854
|
+
this.repository = repository;
|
|
855
|
+
}
|
|
851
856
|
addItemShippingAddress(context, resource, { action, address }) {
|
|
852
857
|
const newAddress = createAddress(address, context.projectKey, this._storage);
|
|
853
858
|
if (newAddress) resource.itemShippingAddresses.push(newAddress);
|
|
@@ -1131,6 +1136,34 @@ var CartUpdateHandler = class extends AbstractUpdateHandler {
|
|
|
1131
1136
|
id: v4()
|
|
1132
1137
|
}));
|
|
1133
1138
|
}
|
|
1139
|
+
setLineItemCustomField(context, resource, { lineItemId, lineItemKey, name, value, action }) {
|
|
1140
|
+
const lineItem = resource.lineItems.find((x) => lineItemId && x.id === lineItemId || lineItemKey && x.key === lineItemKey);
|
|
1141
|
+
if (!lineItem) throw new CommercetoolsError({
|
|
1142
|
+
code: "General",
|
|
1143
|
+
message: lineItemKey ? `A line item with key '${lineItemKey}' not found.` : `A line item with ID '${lineItemId}' not found.`
|
|
1144
|
+
});
|
|
1145
|
+
if (!lineItem.custom) throw new Error("Resource has no custom field");
|
|
1146
|
+
lineItem.custom.fields[name] = value;
|
|
1147
|
+
}
|
|
1148
|
+
setLineItemCustomType(context, resource, { lineItemId, lineItemKey, type, fields }) {
|
|
1149
|
+
const lineItem = resource.lineItems.find((x) => lineItemId && x.id === lineItemId || lineItemKey && x.key === lineItemKey);
|
|
1150
|
+
if (!lineItem) throw new CommercetoolsError({
|
|
1151
|
+
code: "General",
|
|
1152
|
+
message: lineItemKey ? `A line item with key '${lineItemKey}' not found.` : `A line item with ID '${lineItemId}' not found.`
|
|
1153
|
+
});
|
|
1154
|
+
if (!type) lineItem.custom = void 0;
|
|
1155
|
+
else {
|
|
1156
|
+
const resolvedType = this._storage.getByResourceIdentifier(context.projectKey, type);
|
|
1157
|
+
if (!resolvedType) throw new Error(`Type ${type} not found`);
|
|
1158
|
+
lineItem.custom = {
|
|
1159
|
+
type: {
|
|
1160
|
+
typeId: "type",
|
|
1161
|
+
id: resolvedType.id
|
|
1162
|
+
},
|
|
1163
|
+
fields: fields || {}
|
|
1164
|
+
};
|
|
1165
|
+
}
|
|
1166
|
+
}
|
|
1134
1167
|
setLineItemShippingDetails(context, resource, { action, shippingDetails, lineItemId, lineItemKey }) {
|
|
1135
1168
|
const lineItem = resource.lineItems.find((x) => lineItemId && x.id === lineItemId || lineItemKey && x.key === lineItemKey);
|
|
1136
1169
|
if (!lineItem) throw new CommercetoolsError({
|
|
@@ -1174,73 +1207,8 @@ var CartUpdateHandler = class extends AbstractUpdateHandler {
|
|
|
1174
1207
|
};
|
|
1175
1208
|
}
|
|
1176
1209
|
setShippingMethod(context, resource, { shippingMethod }) {
|
|
1177
|
-
if (shippingMethod)
|
|
1178
|
-
|
|
1179
|
-
const country = resource.shippingAddress?.country;
|
|
1180
|
-
if (!country) throw new CommercetoolsError({
|
|
1181
|
-
code: "InvalidOperation",
|
|
1182
|
-
message: `The cart with ID '${resource.id}' does not have a shipping address set.`
|
|
1183
|
-
});
|
|
1184
|
-
this._storage.getByResourceIdentifier(context.projectKey, shippingMethod);
|
|
1185
|
-
const shippingMethods = getShippingMethodsMatchingCart(context, this._storage, resource, { expand: ["zoneRates[*].zone"] });
|
|
1186
|
-
const method = shippingMethods.results.find((candidate) => shippingMethod.id ? candidate.id === shippingMethod.id : candidate.key === shippingMethod.key);
|
|
1187
|
-
if (!method) throw new CommercetoolsError({
|
|
1188
|
-
code: "ShippingMethodDoesNotMatchCart",
|
|
1189
|
-
message: `The shipping method with ${shippingMethod.id ? `ID '${shippingMethod.id}'` : `key '${shippingMethod.key}'`} is not allowed for the cart with ID '${resource.id}'.`
|
|
1190
|
-
});
|
|
1191
|
-
const taxCategory = this._storage.getByResourceIdentifier(context.projectKey, method.taxCategory);
|
|
1192
|
-
const taxRate = taxCategory.rates.find((rate) => rate.country === country);
|
|
1193
|
-
if (!taxRate) throw new CommercetoolsError({
|
|
1194
|
-
code: "MissingTaxRateForCountry",
|
|
1195
|
-
message: `Tax category '${taxCategory.id}' is missing a tax rate for country '${country}'.`,
|
|
1196
|
-
taxCategoryId: taxCategory.id
|
|
1197
|
-
});
|
|
1198
|
-
const zoneRate = method.zoneRates.find((rate) => rate.zone.obj?.locations.some((loc) => loc.country === country));
|
|
1199
|
-
if (!zoneRate) throw new Error("Zone rate not found");
|
|
1200
|
-
const shippingRate = zoneRate.shippingRates[0];
|
|
1201
|
-
if (!shippingRate) throw new Error("Shipping rate not found");
|
|
1202
|
-
const shippingRateTier = shippingRate.tiers.find((tier) => tier.isMatching);
|
|
1203
|
-
if (shippingRateTier && shippingRateTier.type !== "CartValue") throw new Error("Non-CartValue shipping rate tier is not supported");
|
|
1204
|
-
const shippingPrice = shippingRateTier ? createCentPrecisionMoney(shippingRateTier.price) : shippingRate.price;
|
|
1205
|
-
const totalGross = taxRate.includedInPrice ? shippingPrice : {
|
|
1206
|
-
...shippingPrice,
|
|
1207
|
-
centAmount: roundDecimal(new Decimal(shippingPrice.centAmount).mul(1 + taxRate.amount), resource.taxRoundingMode).toNumber()
|
|
1208
|
-
};
|
|
1209
|
-
const totalNet = taxRate.includedInPrice ? {
|
|
1210
|
-
...shippingPrice,
|
|
1211
|
-
centAmount: roundDecimal(new Decimal(shippingPrice.centAmount).div(1 + taxRate.amount), resource.taxRoundingMode).toNumber()
|
|
1212
|
-
} : shippingPrice;
|
|
1213
|
-
const taxPortions = [{
|
|
1214
|
-
name: taxRate.name,
|
|
1215
|
-
rate: taxRate.amount,
|
|
1216
|
-
amount: {
|
|
1217
|
-
...shippingPrice,
|
|
1218
|
-
centAmount: totalGross.centAmount - totalNet.centAmount
|
|
1219
|
-
}
|
|
1220
|
-
}];
|
|
1221
|
-
const totalTax = {
|
|
1222
|
-
...shippingPrice,
|
|
1223
|
-
centAmount: taxPortions.reduce((acc, portion) => acc + portion.amount.centAmount, 0)
|
|
1224
|
-
};
|
|
1225
|
-
const taxedPrice = {
|
|
1226
|
-
totalNet,
|
|
1227
|
-
totalGross,
|
|
1228
|
-
taxPortions,
|
|
1229
|
-
totalTax
|
|
1230
|
-
};
|
|
1231
|
-
resource.shippingInfo = {
|
|
1232
|
-
shippingMethod: {
|
|
1233
|
-
typeId: "shipping-method",
|
|
1234
|
-
id: method.id
|
|
1235
|
-
},
|
|
1236
|
-
shippingMethodName: method.name,
|
|
1237
|
-
price: shippingPrice,
|
|
1238
|
-
shippingRate,
|
|
1239
|
-
taxedPrice,
|
|
1240
|
-
taxRate,
|
|
1241
|
-
taxCategory: method.taxCategory
|
|
1242
|
-
};
|
|
1243
|
-
} else resource.shippingInfo = void 0;
|
|
1210
|
+
if (shippingMethod) resource.shippingInfo = this.repository.createShippingInfo(context, resource, shippingMethod);
|
|
1211
|
+
else resource.shippingInfo = void 0;
|
|
1244
1212
|
}
|
|
1245
1213
|
setShippingAddressCustomField(context, resource, { name, value }) {
|
|
1246
1214
|
if (!resource.shippingAddress) throw new Error("Resource has no shipping address");
|
|
@@ -1263,7 +1231,7 @@ var CartUpdateHandler = class extends AbstractUpdateHandler {
|
|
|
1263
1231
|
var CartRepository = class extends AbstractResourceRepository {
|
|
1264
1232
|
constructor(config) {
|
|
1265
1233
|
super("cart", config);
|
|
1266
|
-
this.actions = new CartUpdateHandler(this._storage);
|
|
1234
|
+
this.actions = new CartUpdateHandler(this._storage, this);
|
|
1267
1235
|
}
|
|
1268
1236
|
create(context, draft) {
|
|
1269
1237
|
if (draft.anonymousId && draft.customerId) throw new CommercetoolsError({
|
|
@@ -1314,6 +1282,7 @@ var CartRepository = class extends AbstractResourceRepository {
|
|
|
1314
1282
|
shippingMode: "Single",
|
|
1315
1283
|
shippingAddress: draft.shippingAddress ? createAddress(draft.shippingAddress, context.projectKey, this._storage) : void 0,
|
|
1316
1284
|
shipping: [],
|
|
1285
|
+
shippingInfo: void 0,
|
|
1317
1286
|
origin: draft.origin ?? "Customer",
|
|
1318
1287
|
refusedGifts: [],
|
|
1319
1288
|
custom: createCustomFields(draft.custom, context.projectKey, this._storage)
|
|
@@ -1322,7 +1291,11 @@ var CartRepository = class extends AbstractResourceRepository {
|
|
|
1322
1291
|
resource.store = context.storeKey ? {
|
|
1323
1292
|
typeId: "store",
|
|
1324
1293
|
key: context.storeKey
|
|
1294
|
+
} : draft.store?.key ? {
|
|
1295
|
+
typeId: "store",
|
|
1296
|
+
key: draft.store.key
|
|
1325
1297
|
} : void 0;
|
|
1298
|
+
if (draft.shippingMethod) resource.shippingInfo = this.createShippingInfo(context, resource, draft.shippingMethod);
|
|
1326
1299
|
return this.saveNew(context, resource);
|
|
1327
1300
|
}
|
|
1328
1301
|
getActiveCart(projectKey) {
|
|
@@ -1380,6 +1353,78 @@ var CartRepository = class extends AbstractResourceRepository {
|
|
|
1380
1353
|
custom: createCustomFields(draftLineItem.custom, projectKey, this._storage)
|
|
1381
1354
|
};
|
|
1382
1355
|
};
|
|
1356
|
+
createShippingInfo(context, resource, shippingMethodRef) {
|
|
1357
|
+
if (resource.taxMode === "External") throw new Error("External tax rate is not supported");
|
|
1358
|
+
const country = resource.shippingAddress?.country;
|
|
1359
|
+
if (!country) throw new CommercetoolsError({
|
|
1360
|
+
code: "InvalidOperation",
|
|
1361
|
+
message: `The cart with ID '${resource.id}' does not have a shipping address set.`
|
|
1362
|
+
});
|
|
1363
|
+
this._storage.getByResourceIdentifier(context.projectKey, shippingMethodRef);
|
|
1364
|
+
const shippingMethods = getShippingMethodsMatchingCart(context, this._storage, resource, { expand: ["zoneRates[*].zone"] });
|
|
1365
|
+
const method = shippingMethods.results.find((candidate) => shippingMethodRef.id ? candidate.id === shippingMethodRef.id : candidate.key === shippingMethodRef.key);
|
|
1366
|
+
if (!method) throw new CommercetoolsError({
|
|
1367
|
+
code: "ShippingMethodDoesNotMatchCart",
|
|
1368
|
+
message: `The shipping method with ${shippingMethodRef.id ? `ID '${shippingMethodRef.id}'` : `key '${shippingMethodRef.key}'`} is not allowed for the cart with ID '${resource.id}'.`
|
|
1369
|
+
});
|
|
1370
|
+
const taxCategory = this._storage.getByResourceIdentifier(context.projectKey, method.taxCategory);
|
|
1371
|
+
const taxRate = taxCategory.rates.find((rate) => rate.country === country);
|
|
1372
|
+
if (!taxRate) throw new CommercetoolsError({
|
|
1373
|
+
code: "MissingTaxRateForCountry",
|
|
1374
|
+
message: `Tax category '${taxCategory.id}' is missing a tax rate for country '${country}'.`,
|
|
1375
|
+
taxCategoryId: taxCategory.id
|
|
1376
|
+
});
|
|
1377
|
+
const zoneRate = method.zoneRates.find((rate) => rate.zone.obj?.locations.some((loc) => loc.country === country));
|
|
1378
|
+
if (!zoneRate) throw new Error("Zone rate not found");
|
|
1379
|
+
const shippingRate = zoneRate.shippingRates[0];
|
|
1380
|
+
if (!shippingRate) throw new Error("Shipping rate not found");
|
|
1381
|
+
const shippingRateTier = shippingRate.tiers.find((tier) => tier.isMatching);
|
|
1382
|
+
if (shippingRateTier && shippingRateTier.type !== "CartValue") throw new Error("Non-CartValue shipping rate tier is not supported");
|
|
1383
|
+
let shippingPrice = shippingRateTier ? createCentPrecisionMoney(shippingRateTier.price) : shippingRate.price;
|
|
1384
|
+
if (shippingRate.freeAbove && shippingRate.freeAbove.currencyCode === resource.totalPrice.currencyCode && resource.totalPrice.centAmount >= shippingRate.freeAbove.centAmount) shippingPrice = {
|
|
1385
|
+
...shippingPrice,
|
|
1386
|
+
centAmount: 0
|
|
1387
|
+
};
|
|
1388
|
+
const totalGross = taxRate.includedInPrice ? shippingPrice : {
|
|
1389
|
+
...shippingPrice,
|
|
1390
|
+
centAmount: roundDecimal(new Decimal(shippingPrice.centAmount).mul(1 + taxRate.amount), resource.taxRoundingMode).toNumber()
|
|
1391
|
+
};
|
|
1392
|
+
const totalNet = taxRate.includedInPrice ? {
|
|
1393
|
+
...shippingPrice,
|
|
1394
|
+
centAmount: roundDecimal(new Decimal(shippingPrice.centAmount).div(1 + taxRate.amount), resource.taxRoundingMode).toNumber()
|
|
1395
|
+
} : shippingPrice;
|
|
1396
|
+
const taxPortions = [{
|
|
1397
|
+
name: taxRate.name,
|
|
1398
|
+
rate: taxRate.amount,
|
|
1399
|
+
amount: {
|
|
1400
|
+
...shippingPrice,
|
|
1401
|
+
centAmount: totalGross.centAmount - totalNet.centAmount
|
|
1402
|
+
}
|
|
1403
|
+
}];
|
|
1404
|
+
const totalTax = {
|
|
1405
|
+
...shippingPrice,
|
|
1406
|
+
centAmount: taxPortions.reduce((acc, portion) => acc + portion.amount.centAmount, 0)
|
|
1407
|
+
};
|
|
1408
|
+
const taxedPrice = {
|
|
1409
|
+
totalNet,
|
|
1410
|
+
totalGross,
|
|
1411
|
+
taxPortions,
|
|
1412
|
+
totalTax
|
|
1413
|
+
};
|
|
1414
|
+
return {
|
|
1415
|
+
shippingMethod: {
|
|
1416
|
+
typeId: "shipping-method",
|
|
1417
|
+
id: method.id
|
|
1418
|
+
},
|
|
1419
|
+
shippingMethodName: method.name,
|
|
1420
|
+
price: shippingPrice,
|
|
1421
|
+
shippingRate,
|
|
1422
|
+
taxedPrice,
|
|
1423
|
+
taxRate,
|
|
1424
|
+
taxCategory: method.taxCategory,
|
|
1425
|
+
shippingMethodState: "MatchesCart"
|
|
1426
|
+
};
|
|
1427
|
+
}
|
|
1383
1428
|
};
|
|
1384
1429
|
|
|
1385
1430
|
//#endregion
|
|
@@ -1461,6 +1506,34 @@ var OrderUpdateHandler = class extends AbstractUpdateHandler {
|
|
|
1461
1506
|
if (!resource.shippingInfo) throw new Error("Resource has no shipping info");
|
|
1462
1507
|
for (const delivery of resource.shippingInfo.deliveries || []) if (delivery.id === deliveryId && delivery.custom?.fields) delivery.custom.fields[name] = value;
|
|
1463
1508
|
}
|
|
1509
|
+
setLineItemCustomField(context, resource, { lineItemId, lineItemKey, name, value, action }) {
|
|
1510
|
+
const lineItem = resource.lineItems.find((x) => lineItemId && x.id === lineItemId || lineItemKey && x.key === lineItemKey);
|
|
1511
|
+
if (!lineItem) throw new CommercetoolsError({
|
|
1512
|
+
code: "General",
|
|
1513
|
+
message: lineItemKey ? `A line item with key '${lineItemKey}' not found.` : `A line item with ID '${lineItemId}' not found.`
|
|
1514
|
+
});
|
|
1515
|
+
if (!lineItem.custom) throw new Error("Resource has no custom field");
|
|
1516
|
+
lineItem.custom.fields[name] = value;
|
|
1517
|
+
}
|
|
1518
|
+
setLineItemCustomType(context, resource, { lineItemId, lineItemKey, type, fields }) {
|
|
1519
|
+
const lineItem = resource.lineItems.find((x) => lineItemId && x.id === lineItemId || lineItemKey && x.key === lineItemKey);
|
|
1520
|
+
if (!lineItem) throw new CommercetoolsError({
|
|
1521
|
+
code: "General",
|
|
1522
|
+
message: lineItemKey ? `A line item with key '${lineItemKey}' not found.` : `A line item with ID '${lineItemId}' not found.`
|
|
1523
|
+
});
|
|
1524
|
+
if (!type) lineItem.custom = void 0;
|
|
1525
|
+
else {
|
|
1526
|
+
const resolvedType = this._storage.getByResourceIdentifier(context.projectKey, type);
|
|
1527
|
+
if (!resolvedType) throw new Error(`Type ${type} not found`);
|
|
1528
|
+
lineItem.custom = {
|
|
1529
|
+
type: {
|
|
1530
|
+
typeId: "type",
|
|
1531
|
+
id: resolvedType.id
|
|
1532
|
+
},
|
|
1533
|
+
fields: fields || {}
|
|
1534
|
+
};
|
|
1535
|
+
}
|
|
1536
|
+
}
|
|
1464
1537
|
setLocale(context, resource, { locale }) {
|
|
1465
1538
|
resource.locale = locale;
|
|
1466
1539
|
}
|
|
@@ -1638,7 +1711,8 @@ var OrderRepository = class extends AbstractResourceRepository {
|
|
|
1638
1711
|
variant: {
|
|
1639
1712
|
id: variant.id,
|
|
1640
1713
|
sku: variant.sku,
|
|
1641
|
-
price: createPrice(draft.price)
|
|
1714
|
+
price: createPrice(draft.price),
|
|
1715
|
+
attributes: variant.attributes
|
|
1642
1716
|
}
|
|
1643
1717
|
};
|
|
1644
1718
|
return lineItem;
|