@mercurjs/b2c-core 1.5.0 → 1.5.2
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/.medusa/server/src/api/admin/custom/middlewares.d.ts +2 -0
- package/.medusa/server/src/api/admin/custom/middlewares.js +8 -0
- package/.medusa/server/src/api/admin/custom/product-variants/middlewares.d.ts +2 -0
- package/.medusa/server/src/api/admin/custom/product-variants/middlewares.js +16 -0
- package/.medusa/server/src/api/admin/custom/product-variants/query-config.d.ts +7 -0
- package/.medusa/server/src/api/admin/custom/product-variants/query-config.js +48 -0
- package/.medusa/server/src/api/admin/custom/product-variants/route.d.ts +100 -0
- package/.medusa/server/src/api/admin/custom/product-variants/route.js +133 -0
- package/.medusa/server/src/api/admin/custom/product-variants/utils.d.ts +19 -0
- package/.medusa/server/src/api/admin/custom/product-variants/utils.js +31 -0
- package/.medusa/server/src/api/admin/custom/product-variants/validators.d.ts +327 -0
- package/.medusa/server/src/api/admin/custom/product-variants/validators.js +34 -0
- package/.medusa/server/src/api/admin/inventory-items/[id]/location-levels/[location_id]/route.d.ts +3 -0
- package/.medusa/server/src/api/admin/inventory-items/[id]/location-levels/[location_id]/route.js +36 -0
- package/.medusa/server/src/api/admin/middlewares.js +13 -7
- package/.medusa/server/src/api/admin/notifications/route.js +8 -8
- package/.medusa/server/src/api/admin/orders/[id]/route.d.ts +3 -3
- package/.medusa/server/src/api/admin/orders/[id]/route.js +6 -6
- package/.medusa/server/src/api/admin/orders/middlewares.d.ts +2 -0
- package/.medusa/server/src/api/admin/orders/middlewares.js +17 -0
- package/.medusa/server/src/api/admin/products/validators.d.ts +98 -98
- package/.medusa/server/src/api/admin/reservations/middlewares.d.ts +2 -0
- package/.medusa/server/src/api/admin/reservations/middlewares.js +12 -0
- package/.medusa/server/src/api/admin/sellers/validators.d.ts +2 -2
- package/.medusa/server/src/api/admin/sellers/validators.js +9 -7
- package/.medusa/server/src/api/store/carts/[id]/line-items/[line_id]/route.js +2 -2
- package/.medusa/server/src/api/store/carts/[id]/promotions/route.js +3 -4
- package/.medusa/server/src/api/store/carts/[id]/route.d.ts +6 -0
- package/.medusa/server/src/api/store/carts/[id]/route.js +32 -0
- package/.medusa/server/src/api/store/carts/middlewares.js +4 -5
- package/.medusa/server/src/api/store/middlewares.js +11 -9
- package/.medusa/server/src/api/store/products/middlewares.d.ts +2 -0
- package/.medusa/server/src/api/store/products/middlewares.js +13 -0
- package/.medusa/server/src/api/store/products/search/route.d.ts +81 -0
- package/.medusa/server/src/api/store/products/search/route.js +170 -0
- package/.medusa/server/src/api/store/products/validators.d.ts +36 -0
- package/.medusa/server/src/api/store/products/validators.js +17 -0
- package/.medusa/server/src/api/store/wishlist/middlewares.d.ts +1 -1
- package/.medusa/server/src/api/store/wishlist/middlewares.js +47 -25
- package/.medusa/server/src/api/store/wishlist/{[id]/product → product}/[reference_id]/route.d.ts +3 -9
- package/.medusa/server/src/api/store/wishlist/product/[reference_id]/route.js +65 -0
- package/.medusa/server/src/api/store/wishlist/route.d.ts +789 -28
- package/.medusa/server/src/api/store/wishlist/route.js +816 -37
- package/.medusa/server/src/api/vendor/campaigns/[id]/promotions/route.d.ts +22 -44
- package/.medusa/server/src/api/vendor/campaigns/[id]/promotions/route.js +31 -46
- package/.medusa/server/src/api/vendor/campaigns/middlewares.js +30 -18
- package/.medusa/server/src/api/vendor/campaigns/query-config.js +2 -2
- package/.medusa/server/src/api/vendor/campaigns/validators.d.ts +11 -0
- package/.medusa/server/src/api/vendor/campaigns/validators.js +6 -5
- package/.medusa/server/src/api/vendor/customer-groups/validators.js +1 -1
- package/.medusa/server/src/api/vendor/customers/route.js +2 -2
- package/.medusa/server/src/api/vendor/inventory-items/[id]/location-levels/[location_id]/route.d.ts +1 -2
- package/.medusa/server/src/api/vendor/inventory-items/[id]/location-levels/[location_id]/route.js +2 -5
- package/.medusa/server/src/api/vendor/inventory-items/[id]/location-levels/batch/route.js +2 -2
- package/.medusa/server/src/api/vendor/inventory-items/validators.d.ts +8 -8
- package/.medusa/server/src/api/vendor/me/route.d.ts +1 -2
- package/.medusa/server/src/api/vendor/me/route.js +1 -1
- package/.medusa/server/src/api/vendor/members/[id]/route.js +3 -3
- package/.medusa/server/src/api/vendor/orders/validators.d.ts +4 -4
- package/.medusa/server/src/api/vendor/payout-account/route.js +3 -2
- package/.medusa/server/src/api/vendor/price-lists/[id]/prices/route.d.ts +2 -2
- package/.medusa/server/src/api/vendor/price-lists/[id]/prices/route.js +2 -2
- package/.medusa/server/src/api/vendor/price-lists/route.d.ts +1 -1
- package/.medusa/server/src/api/vendor/price-lists/route.js +27 -8
- package/.medusa/server/src/api/vendor/price-lists/validators.d.ts +2 -2
- package/.medusa/server/src/api/vendor/product-collections/middlewares.js +2 -2
- package/.medusa/server/src/api/vendor/product-collections/route.d.ts +18 -0
- package/.medusa/server/src/api/vendor/product-collections/route.js +19 -1
- package/.medusa/server/src/api/vendor/product-collections/validators.d.ts +404 -15
- package/.medusa/server/src/api/vendor/product-collections/validators.js +18 -3
- package/.medusa/server/src/api/vendor/product-tags/route.d.ts +4 -1
- package/.medusa/server/src/api/vendor/product-tags/route.js +8 -8
- package/.medusa/server/src/api/vendor/product-types/validators.d.ts +153 -1
- package/.medusa/server/src/api/vendor/product-types/validators.js +6 -3
- package/.medusa/server/src/api/vendor/products/[id]/variants/[variant_id]/media/route.d.ts +3 -0
- package/.medusa/server/src/api/vendor/products/[id]/variants/[variant_id]/media/route.js +20 -0
- package/.medusa/server/src/api/vendor/products/batch/route.d.ts +34 -0
- package/.medusa/server/src/api/vendor/products/batch/route.js +79 -0
- package/.medusa/server/src/api/vendor/products/middlewares.js +19 -5
- package/.medusa/server/src/api/vendor/products/route.d.ts +8 -2
- package/.medusa/server/src/api/vendor/products/route.js +29 -21
- package/.medusa/server/src/api/vendor/products/utils.d.ts +35 -1
- package/.medusa/server/src/api/vendor/products/utils.js +148 -6
- package/.medusa/server/src/api/vendor/products/validators.d.ts +275 -99
- package/.medusa/server/src/api/vendor/products/validators.js +58 -2
- package/.medusa/server/src/api/vendor/promotions/route.d.ts +86 -2
- package/.medusa/server/src/api/vendor/promotions/route.js +116 -7
- package/.medusa/server/src/api/vendor/promotions/validators.d.ts +237 -38
- package/.medusa/server/src/api/vendor/promotions/validators.js +23 -5
- package/.medusa/server/src/api/vendor/reservations/middlewares.d.ts +4 -1
- package/.medusa/server/src/api/vendor/reservations/middlewares.js +23 -3
- package/.medusa/server/src/api/vendor/reservations/route.js +5 -3
- package/.medusa/server/src/api/vendor/reservations/validators.d.ts +45 -3
- package/.medusa/server/src/api/vendor/reservations/validators.js +5 -1
- package/.medusa/server/src/api/vendor/sellers/validators.js +1 -1
- package/.medusa/server/src/api/vendor/shipping-profiles/route.d.ts +31 -2
- package/.medusa/server/src/api/vendor/shipping-profiles/route.js +61 -10
- package/.medusa/server/src/api/vendor/shipping-profiles/validators.d.ts +92 -3
- package/.medusa/server/src/api/vendor/shipping-profiles/validators.js +10 -2
- package/.medusa/server/src/api/vendor/stock-locations/[id]/route.d.ts +1 -2
- package/.medusa/server/src/api/vendor/stock-locations/[id]/route.js +1 -1
- package/.medusa/server/src/api/vendor/stock-locations/validators.d.ts +10 -10
- package/.medusa/server/src/links/wishlist-product.js +3 -3
- package/.medusa/server/src/modules/payout/services/provider.js +1 -2
- package/.medusa/server/src/modules/seller/migrations/Migration20260114091400.d.ts +5 -0
- package/.medusa/server/src/modules/seller/migrations/Migration20260114091400.js +32 -0
- package/.medusa/server/src/modules/seller/service.js +2 -2
- package/.medusa/server/src/modules/seller/utils.d.ts +1 -1
- package/.medusa/server/src/modules/seller/utils.js +37 -10
- package/.medusa/server/src/shared/infra/http/middlewares/check-ownership.d.ts +16 -7
- package/.medusa/server/src/shared/infra/http/middlewares/check-ownership.js +26 -18
- package/.medusa/server/src/shared/infra/http/middlewares/index.d.ts +1 -0
- package/.medusa/server/src/shared/infra/http/middlewares/index.js +2 -1
- package/.medusa/server/src/shared/infra/http/middlewares/reject-seller-linked-stock-location.d.ts +19 -0
- package/.medusa/server/src/shared/infra/http/middlewares/reject-seller-linked-stock-location.js +28 -0
- package/.medusa/server/src/shared/infra/http/middlewares/vendor-promotions-rule-attribute-options-path-params-guard.js +2 -2
- package/.medusa/server/src/shared/infra/http/middlewares/vendor-promotions-rule-value-options-path-params-guard.js +2 -2
- package/.medusa/server/src/shared/infra/http/utils/products.js +9 -3
- package/.medusa/server/src/shared/infra/http/utils/unless-base-url.d.ts +1 -3
- package/.medusa/server/src/shared/infra/http/utils/unless-base-url.js +1 -1
- package/.medusa/server/src/subscribers/notification-seller-new-order.d.ts +1 -1
- package/.medusa/server/src/subscribers/notification-seller-new-order.js +44 -37
- package/.medusa/server/src/subscribers/payout-webhook.js +1 -1
- package/.medusa/server/src/subscribers/seller-status-changed.js +2 -3
- package/.medusa/server/src/utils/stock-locations.d.ts +9 -0
- package/.medusa/server/src/utils/stock-locations.js +231 -0
- package/.medusa/server/src/workflows/attribute/steps/update-attributes.js +1 -1
- package/.medusa/server/src/workflows/attribute/steps/validate-attribute-value.js +7 -3
- package/.medusa/server/src/workflows/attribute/utils/products-updated-handler.d.ts +3 -3
- package/.medusa/server/src/workflows/attribute/utils/products-updated-handler.js +17 -15
- package/.medusa/server/src/workflows/attribute/utils/validate-attribute-values-to-link.js +2 -2
- package/.medusa/server/src/workflows/cart/steps/create-order-set.js +1 -1
- package/.medusa/server/src/workflows/cart/utils/prepare-confirm-inventory-input.js +1 -1
- package/.medusa/server/src/workflows/cart/workflows/split-and-complete-cart.js +5 -7
- package/.medusa/server/src/workflows/configuration/steps/create-configuration-rule.js +1 -1
- package/.medusa/server/src/workflows/fulfillment-set/create-vendor-service-zone.js +2 -2
- package/.medusa/server/src/workflows/hooks/add-order-line-items-pricing-context.d.ts +1 -0
- package/.medusa/server/src/workflows/hooks/add-order-line-items-pricing-context.js +75 -0
- package/.medusa/server/src/workflows/hooks/fetch-shipping-option-pricing-context.d.ts +1 -0
- package/.medusa/server/src/workflows/hooks/fetch-shipping-option-pricing-context.js +97 -0
- package/.medusa/server/src/workflows/hooks/product-deleted.js +12 -5
- package/.medusa/server/src/workflows/order/steps/create-payout.js +1 -1
- package/.medusa/server/src/workflows/order/steps/validate-seller-payout-account.js +2 -2
- package/.medusa/server/src/workflows/payout/steps/update-payout-account.js +1 -1
- package/.medusa/server/src/workflows/price-list/steps/validate-vendor-price-list-prices.js +2 -2
- package/.medusa/server/src/workflows/price-list/workflows/create-vendor-price-list.js +2 -2
- package/.medusa/server/src/workflows/product/steps/update-product-status.js +7 -1
- package/.medusa/server/src/workflows/product-variants/helpers/product-variant-filter-helper.d.ts +24 -0
- package/.medusa/server/src/workflows/product-variants/helpers/product-variant-filter-helper.js +39 -0
- package/.medusa/server/src/workflows/product-variants/index.d.ts +3 -0
- package/.medusa/server/src/workflows/product-variants/index.js +20 -0
- package/.medusa/server/src/workflows/product-variants/steps/filter-variants-combined.d.ts +4 -0
- package/.medusa/server/src/workflows/product-variants/steps/filter-variants-combined.js +63 -0
- package/.medusa/server/src/workflows/product-variants/steps/get-seller-product-ids.d.ts +4 -0
- package/.medusa/server/src/workflows/product-variants/steps/get-seller-product-ids.js +28 -0
- package/.medusa/server/src/workflows/product-variants/steps/index.d.ts +2 -0
- package/.medusa/server/src/workflows/product-variants/steps/index.js +19 -0
- package/.medusa/server/src/workflows/product-variants/types.d.ts +10 -0
- package/.medusa/server/src/workflows/product-variants/types.js +3 -0
- package/.medusa/server/src/workflows/product-variants/workflows/index.d.ts +1 -0
- package/.medusa/server/src/workflows/product-variants/workflows/index.js +18 -0
- package/.medusa/server/src/workflows/product-variants/workflows/list-filtered-product-variants.d.ts +31 -0
- package/.medusa/server/src/workflows/product-variants/workflows/list-filtered-product-variants.js +115 -0
- package/.medusa/server/src/workflows/promotions/steps/ensure-seller-product-rule-after-deletion.d.ts +8 -0
- package/.medusa/server/src/workflows/promotions/steps/ensure-seller-product-rule-after-deletion.js +87 -0
- package/.medusa/server/src/workflows/promotions/steps/index.d.ts +2 -0
- package/.medusa/server/src/workflows/promotions/steps/index.js +3 -1
- package/.medusa/server/src/workflows/promotions/steps/inject-seller-product-rule.d.ts +6 -0
- package/.medusa/server/src/workflows/promotions/steps/inject-seller-product-rule.js +43 -0
- package/.medusa/server/src/workflows/promotions/steps/verify-vendor-target-promotion-rules.d.ts +5 -0
- package/.medusa/server/src/workflows/promotions/steps/verify-vendor-target-promotion-rules.js +27 -11
- package/.medusa/server/src/workflows/promotions/utils/sync-seller-product-rule-values.d.ts +2 -0
- package/.medusa/server/src/workflows/promotions/utils/sync-seller-product-rule-values.js +165 -0
- package/.medusa/server/src/workflows/promotions/workflows/batch-vendor-promotion-rules.js +7 -2
- package/.medusa/server/src/workflows/promotions/workflows/create-vendor-promotion.js +4 -3
- package/.medusa/server/src/workflows/seller/steps/create-member.js +1 -1
- package/.medusa/server/src/workflows/seller/steps/create-payment-account.js +1 -1
- package/.medusa/server/src/workflows/seller/steps/create-payout-onboarding.js +1 -1
- package/.medusa/server/src/workflows/seller/steps/sync-stripe-account.js +1 -1
- package/.medusa/server/src/workflows/seller/steps/update-member-invite.js +3 -3
- package/.medusa/server/src/workflows/seller/steps/update-seller.js +2 -3
- package/.medusa/server/src/workflows/seller/steps/validate-products-to-import.d.ts +28 -23
- package/.medusa/server/src/workflows/seller/workflows/import-seller-products.js +2 -2
- package/.medusa/server/src/workflows/wishlist/steps/create-wishlist.js +1 -1
- package/package.json +1 -1
- package/.medusa/server/src/api/store/wishlist/[id]/product/[reference_id]/route.js +0 -61
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
6
|
+
/**
|
|
7
|
+
* This hook provides the pricing context for adding line items to orders in RMA flows (claims, returns, exchanges).
|
|
8
|
+
*
|
|
9
|
+
* In a marketplace scenario, when an admin creates a claim and adds outbound (replacement) items,
|
|
10
|
+
* the variant prices need to be calculated using the order's region context.
|
|
11
|
+
*
|
|
12
|
+
* This hook also validates that all variants have prices in the order's currency.
|
|
13
|
+
* If any variant is missing a price, it throws a 400 error - this is a vendor responsibility.
|
|
14
|
+
*/
|
|
15
|
+
core_flows_1.addOrderLineItemsWorkflow.hooks.setPricingContext(async ({ order, variantIds, region, customerData, additional_data }, { container }) => {
|
|
16
|
+
const query = container.resolve(utils_1.ContainerRegistrationKeys.QUERY);
|
|
17
|
+
const currencyCode = order?.currency_code || region?.currency_code;
|
|
18
|
+
if (variantIds?.length && currencyCode) {
|
|
19
|
+
const { data: variants } = await query.graph({
|
|
20
|
+
entity: 'variant',
|
|
21
|
+
fields: [
|
|
22
|
+
'id',
|
|
23
|
+
'title',
|
|
24
|
+
'product.title',
|
|
25
|
+
'price_set.prices.currency_code'
|
|
26
|
+
],
|
|
27
|
+
filters: {
|
|
28
|
+
id: variantIds
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
const variantsWithoutPrice = [];
|
|
32
|
+
for (const variant of variants) {
|
|
33
|
+
const prices = variant.price_set?.prices || [];
|
|
34
|
+
const currencyCodes = prices.map((p) => p.currency_code);
|
|
35
|
+
if (!currencyCodes.includes(currencyCode)) {
|
|
36
|
+
const productTitle = variant.product?.title || 'Unknown';
|
|
37
|
+
const variantTitle = variant.title || variant.id;
|
|
38
|
+
variantsWithoutPrice.push(`${productTitle} - ${variantTitle}`);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
if (variantsWithoutPrice.length > 0) {
|
|
42
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, `The following variants do not have a price in ${currencyCode.toUpperCase()}. ` +
|
|
43
|
+
`Please ask the vendor to add prices for these products: ${variantsWithoutPrice.join(', ')}`);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
if (region?.id) {
|
|
47
|
+
return new workflows_sdk_1.StepResponse({
|
|
48
|
+
region_id: region.id,
|
|
49
|
+
currency_code: region.currency_code
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
if (order?.region_id) {
|
|
53
|
+
const { data: regions } = await query.graph({
|
|
54
|
+
entity: 'region',
|
|
55
|
+
fields: ['id', 'currency_code'],
|
|
56
|
+
filters: {
|
|
57
|
+
id: order.region_id
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
const orderRegion = regions[0];
|
|
61
|
+
if (orderRegion) {
|
|
62
|
+
return new workflows_sdk_1.StepResponse({
|
|
63
|
+
region_id: orderRegion.id,
|
|
64
|
+
currency_code: orderRegion.currency_code
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
if (order?.currency_code) {
|
|
69
|
+
return new workflows_sdk_1.StepResponse({
|
|
70
|
+
currency_code: order.currency_code
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
return new workflows_sdk_1.StepResponse({});
|
|
74
|
+
});
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLW9yZGVyLWxpbmUtaXRlbXMtcHJpY2luZy1jb250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9ob29rcy9hZGQtb3JkZXItbGluZS1pdGVtcy1wcmljaW5nLWNvbnRleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFPQSxxREFHa0M7QUFDbEMscUVBQWdFO0FBQ2hFLDREQUF1RTtBQVd2RTs7Ozs7Ozs7R0FRRztBQUNILHNDQUF5QixDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FDL0MsS0FBSyxFQUNILEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxFQUM1RCxFQUFFLFNBQVMsRUFBRSxFQUNiLEVBQUU7SUFDRixNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLGlDQUF5QixDQUFDLEtBQUssQ0FBQyxDQUFBO0lBRWhFLE1BQU0sWUFBWSxHQUFHLEtBQUssRUFBRSxhQUFhLElBQUksTUFBTSxFQUFFLGFBQWEsQ0FBQTtJQUVsRSxJQUFJLFVBQVUsRUFBRSxNQUFNLElBQUksWUFBWSxFQUFFLENBQUM7UUFDdkMsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDM0MsTUFBTSxFQUFFLFNBQVM7WUFDakIsTUFBTSxFQUFFO2dCQUNOLElBQUk7Z0JBQ0osT0FBTztnQkFDUCxlQUFlO2dCQUNmLGdDQUFnQzthQUNqQztZQUNELE9BQU8sRUFBRTtnQkFDUCxFQUFFLEVBQUUsVUFBVTthQUNmO1NBQ0YsQ0FBQyxDQUFBO1FBRUYsTUFBTSxvQkFBb0IsR0FBYSxFQUFFLENBQUE7UUFFekMsS0FBSyxNQUFNLE9BQU8sSUFBSSxRQUFnQyxFQUFFLENBQUM7WUFDdkQsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLFNBQVMsRUFBRSxNQUFNLElBQUksRUFBRSxDQUFBO1lBQzlDLE1BQU0sYUFBYSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQTtZQUV4RCxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDO2dCQUMxQyxNQUFNLFlBQVksR0FBRyxPQUFPLENBQUMsT0FBTyxFQUFFLEtBQUssSUFBSSxTQUFTLENBQUE7Z0JBQ3hELE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxLQUFLLElBQUksT0FBTyxDQUFDLEVBQUUsQ0FBQTtnQkFDaEQsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEdBQUcsWUFBWSxNQUFNLFlBQVksRUFBRSxDQUFDLENBQUE7WUFDaEUsQ0FBQztRQUNILENBQUM7UUFFRCxJQUFJLG9CQUFvQixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksbUJBQVcsQ0FDbkIsbUJBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUM5QixpREFBaUQsWUFBWSxDQUFDLFdBQVcsRUFBRSxJQUFJO2dCQUM3RSwyREFBMkQsb0JBQW9CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQy9GLENBQUE7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUksTUFBTSxFQUFFLEVBQUUsRUFBRSxDQUFDO1FBQ2YsT0FBTyxJQUFJLDRCQUFZLENBQUM7WUFDdEIsU0FBUyxFQUFFLE1BQU0sQ0FBQyxFQUFFO1lBQ3BCLGFBQWEsRUFBRSxNQUFNLENBQUMsYUFBYTtTQUNwQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsSUFBSSxLQUFLLEVBQUUsU0FBUyxFQUFFLENBQUM7UUFDckIsTUFBTSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDMUMsTUFBTSxFQUFFLFFBQVE7WUFDaEIsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLGVBQWUsQ0FBQztZQUMvQixPQUFPLEVBQUU7Z0JBQ1AsRUFBRSxFQUFFLEtBQUssQ0FBQyxTQUFTO2FBQ3BCO1NBQ0YsQ0FBQyxDQUFBO1FBRUYsTUFBTSxXQUFXLEdBQUksT0FBZ0MsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUV4RCxJQUFJLFdBQVcsRUFBRSxDQUFDO1lBQ2hCLE9BQU8sSUFBSSw0QkFBWSxDQUFDO2dCQUN0QixTQUFTLEVBQUUsV0FBVyxDQUFDLEVBQUU7Z0JBQ3pCLGFBQWEsRUFBRSxXQUFXLENBQUMsYUFBYTthQUN6QyxDQUFDLENBQUE7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUksS0FBSyxFQUFFLGFBQWEsRUFBRSxDQUFDO1FBQ3pCLE9BQU8sSUFBSSw0QkFBWSxDQUFDO1lBQ3RCLGFBQWEsRUFBRSxLQUFLLENBQUMsYUFBYTtTQUNuQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsT0FBTyxJQUFJLDRCQUFZLENBQUMsRUFBRSxDQUFDLENBQUE7QUFDN0IsQ0FBQyxDQUNGLENBQUEifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
7
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
8
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
9
|
+
const seller_order_1 = __importDefault(require("../../links/seller-order"));
|
|
10
|
+
const seller_shipping_option_1 = __importDefault(require("../../links/seller-shipping-option"));
|
|
11
|
+
const seller_stock_location_1 = __importDefault(require("../../links/seller-stock-location"));
|
|
12
|
+
/**
|
|
13
|
+
* This hook provides the pricing context for shipping options in RMA flows (claims, returns, exchanges).
|
|
14
|
+
*
|
|
15
|
+
* In a marketplace scenario, shipping options are linked to seller stock locations.
|
|
16
|
+
* When an admin creates a claim on a seller's order, the shipping option's price needs
|
|
17
|
+
* to be calculated using the seller's stock location context.
|
|
18
|
+
*
|
|
19
|
+
* Without this hook, the pricing calculation fails because:
|
|
20
|
+
* 1. The shipping option belongs to a seller's fulfillment set/stock location
|
|
21
|
+
* 2. The default pricing context doesn't include the stock location
|
|
22
|
+
* 3. The calculated_price returns null, causing the workflow to fail
|
|
23
|
+
*/
|
|
24
|
+
core_flows_1.fetchShippingOptionForOrderWorkflow.hooks.setPricingContext(async ({ shipping_option_id, order_id }, { container }) => {
|
|
25
|
+
const query = container.resolve(utils_1.ContainerRegistrationKeys.QUERY);
|
|
26
|
+
const { data: sellerOrderLinks } = await query.graph({
|
|
27
|
+
entity: seller_order_1.default.entryPoint,
|
|
28
|
+
fields: ["seller_id"],
|
|
29
|
+
filters: {
|
|
30
|
+
order_id,
|
|
31
|
+
},
|
|
32
|
+
});
|
|
33
|
+
if (!sellerOrderLinks.length) {
|
|
34
|
+
return new workflows_sdk_1.StepResponse({});
|
|
35
|
+
}
|
|
36
|
+
const { data: orderData } = await query.graph({
|
|
37
|
+
entity: "order",
|
|
38
|
+
fields: ["id", "region_id"],
|
|
39
|
+
filters: {
|
|
40
|
+
id: order_id,
|
|
41
|
+
},
|
|
42
|
+
});
|
|
43
|
+
const regionId = orderData[0]?.region_id;
|
|
44
|
+
const { data: shippingOptionData } = await query.graph({
|
|
45
|
+
entity: "shipping_option",
|
|
46
|
+
fields: [
|
|
47
|
+
"id",
|
|
48
|
+
"service_zone.fulfillment_set.location.id",
|
|
49
|
+
"service_zone.fulfillment_set.location.name",
|
|
50
|
+
],
|
|
51
|
+
filters: {
|
|
52
|
+
id: shipping_option_id,
|
|
53
|
+
},
|
|
54
|
+
});
|
|
55
|
+
const shippingOption = shippingOptionData[0];
|
|
56
|
+
const locationFromOption = shippingOption?.service_zone?.fulfillment_set?.location;
|
|
57
|
+
if (locationFromOption?.id) {
|
|
58
|
+
return new workflows_sdk_1.StepResponse({
|
|
59
|
+
location_id: locationFromOption.id,
|
|
60
|
+
...(regionId && { region_id: regionId }),
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
const { data: shippingOptionSeller } = await query.graph({
|
|
64
|
+
entity: seller_shipping_option_1.default.entryPoint,
|
|
65
|
+
fields: ["seller_id"],
|
|
66
|
+
filters: {
|
|
67
|
+
shipping_option_id,
|
|
68
|
+
},
|
|
69
|
+
});
|
|
70
|
+
const shippingOptionSellerId = shippingOptionSeller[0]?.seller_id;
|
|
71
|
+
if (shippingOptionSellerId) {
|
|
72
|
+
const { data: sellerLocations } = await query.graph({
|
|
73
|
+
entity: seller_stock_location_1.default.entryPoint,
|
|
74
|
+
fields: [
|
|
75
|
+
"stock_location_id",
|
|
76
|
+
"stock_location.fulfillment_sets.id",
|
|
77
|
+
"stock_location.fulfillment_sets.service_zones.shipping_options.id",
|
|
78
|
+
],
|
|
79
|
+
filters: {
|
|
80
|
+
seller_id: shippingOptionSellerId,
|
|
81
|
+
},
|
|
82
|
+
});
|
|
83
|
+
for (const location of sellerLocations) {
|
|
84
|
+
const hasShippingOption = location.stock_location?.fulfillment_sets?.some((fs) => fs.service_zones?.some((sz) => sz.shipping_options?.some((so) => so.id === shipping_option_id)));
|
|
85
|
+
if (hasShippingOption) {
|
|
86
|
+
return new workflows_sdk_1.StepResponse({
|
|
87
|
+
location_id: location.stock_location_id,
|
|
88
|
+
...(regionId && { region_id: regionId }),
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
return new workflows_sdk_1.StepResponse({
|
|
94
|
+
...(regionId && { region_id: regionId }),
|
|
95
|
+
});
|
|
96
|
+
});
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2gtc2hpcHBpbmctb3B0aW9uLXByaWNpbmctY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvaG9va3MvZmV0Y2gtc2hpcHBpbmctb3B0aW9uLXByaWNpbmctY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHFEQUFzRTtBQUN0RSw0REFBa0Y7QUFDbEYscUVBQWlFO0FBRWpFLDRFQUFtRDtBQUNuRCxnR0FBc0U7QUFDdEUsOEZBQW9FO0FBcUJwRTs7Ozs7Ozs7Ozs7R0FXRztBQUNILGdEQUFtQyxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FDekQsS0FBSyxFQUNILEVBQUUsa0JBQWtCLEVBQUUsUUFBUSxFQUFFLEVBQ2hDLEVBQUUsU0FBUyxFQUFFLEVBQ2IsRUFBRTtJQUNGLE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsaUNBQXlCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFakUsTUFBTSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxHQUFHLE1BQU0sS0FBSyxDQUFDLEtBQUssQ0FBQztRQUNuRCxNQUFNLEVBQUUsc0JBQVcsQ0FBQyxVQUFVO1FBQzlCLE1BQU0sRUFBRSxDQUFDLFdBQVcsQ0FBQztRQUNyQixPQUFPLEVBQUU7WUFDUCxRQUFRO1NBQ1Q7S0FDRixDQUFDLENBQUM7SUFFSCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDN0IsT0FBTyxJQUFJLDRCQUFZLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELE1BQU0sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEdBQUcsTUFBTSxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQzVDLE1BQU0sRUFBRSxPQUFPO1FBQ2YsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQztRQUMzQixPQUFPLEVBQUU7WUFDUCxFQUFFLEVBQUUs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
|
|
@@ -3,10 +3,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const utils_1 = require("@medusajs/framework/utils");
|
|
4
4
|
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
5
5
|
const framework_1 = require("@mercurjs/framework");
|
|
6
|
+
const sync_seller_product_rule_values_1 = require("../promotions/utils/sync-seller-product-rule-values");
|
|
6
7
|
core_flows_1.deleteProductsWorkflow.hooks.productsDeleted(async ({ ids }, { container }) => {
|
|
7
|
-
await
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
await (0, sync_seller_product_rule_values_1.syncSellersPromotionsDefaultProductRuleValues)(container, ids, "remove");
|
|
9
|
+
await container.resolve(utils_1.Modules.EVENT_BUS).emit([{
|
|
10
|
+
name: framework_1.AlgoliaEvents.PRODUCTS_DELETED,
|
|
11
|
+
data: { ids }
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
name: framework_1.ProductRequestUpdatedEvent.DELETED,
|
|
15
|
+
data: { ids }
|
|
16
|
+
}
|
|
17
|
+
]);
|
|
11
18
|
});
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1kZWxldGVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9ob29rcy9wcm9kdWN0LWRlbGV0ZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxxREFBb0Q7QUFDcEQsNERBQXFFO0FBRXJFLG1EQUFnRjtBQUNoRix5R0FBb0g7QUFFcEgsbUNBQXNCLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDNUUsTUFBTSxJQUFBLCtFQUE2QyxFQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFFOUUsTUFBTSxTQUFTLENBQUMsT0FBTyxDQUFDLGVBQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM3QyxJQUFJLEVBQUUseUJBQWEsQ0FBQyxnQkFBZ0I7WUFDcEMsSUFBSSxFQUFFLEVBQUUsR0FBRyxFQUFFO1NBQ2Q7UUFDRDtZQUNFLElBQUksRUFBRSxzQ0FBMEIsQ0FBQyxPQUFPO1lBQ3hDLElBQUksRUFBRSxFQUFFLEdBQUcsRUFBRTtTQUNkO0tBQ0YsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMifQ==
|
|
@@ -18,4 +18,4 @@ exports.createPayoutStep = (0, workflows_sdk_1.createStep)("create-payout", asyn
|
|
|
18
18
|
err,
|
|
19
19
|
});
|
|
20
20
|
});
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXBheW91dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3Mvb3JkZXIvc3RlcHMvY3JlYXRlLXBheW91dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxRUFBNkU7QUFHN0Usb0RBQTZFO0FBRWhFLFFBQUEsZ0JBQWdCLEdBQUcsSUFBQSwwQkFBVSxFQUN4QyxlQUFlLEVBQ2YsS0FBSyxFQUFFLEtBQXNCLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFO0lBQzlDLE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQXNCLHNCQUFhLENBQUMsQ0FBQztJQUV0RSxJQUFJLE1BQU0sR0FBcUIsSUFBSSxDQUFDO0lBQ3BDLElBQUksR0FBRyxHQUFHLEtBQUssQ0FBQztJQUVoQixJQUFJLENBQUM7UUFDSCxNQUFNLEdBQUcsTUFBTSxPQUFPLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFBQyxNQUFNLENBQUM7UUFDUCxHQUFHLEdBQUcsSUFBSSxDQUFDO0lBQ2IsQ0FBQztJQUVELE9BQU8sSUFBSSw0QkFBWSxDQUFDO1FBQ3RCLE1BQU07UUFDTixHQUFHO0tBQ0osQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUNGLENBQUMifQ==
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.validateSellerPayoutAccountStep = void 0;
|
|
4
4
|
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
-
const utils_1 = require("@medusajs/utils");
|
|
6
5
|
const framework_1 = require("@mercurjs/framework");
|
|
6
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
7
7
|
exports.validateSellerPayoutAccountStep = (0, workflows_sdk_1.createStep)("validate-seller-payout-account", async (seller) => {
|
|
8
8
|
if (!seller.payout_account) {
|
|
9
9
|
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Seller has no payout account");
|
|
@@ -12,4 +12,4 @@ exports.validateSellerPayoutAccountStep = (0, workflows_sdk_1.createStep)("valid
|
|
|
12
12
|
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Seller payout account is not active");
|
|
13
13
|
}
|
|
14
14
|
});
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGUtc2VsbGVyLXBheW91dC1hY2NvdW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9vcmRlci9zdGVwcy92YWxpZGF0ZS1zZWxsZXItcGF5b3V0LWFjY291bnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUVBQStEO0FBRS9ELG1EQUFzRjtBQUN0RixxREFBd0Q7QUFFM0MsUUFBQSwrQkFBK0IsR0FBRyxJQUFBLDBCQUFVLEVBQ3ZELGdDQUFnQyxFQUNoQyxLQUFLLEVBQUUsTUFBa0MsRUFBRSxFQUFFO0lBQzNDLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDM0IsTUFBTSxJQUFJLG1CQUFXLENBQ25CLG1CQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksRUFDOUIsOEJBQThCLENBQy9CLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sS0FBSywrQkFBbUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNoRSxNQUFNLElBQUksbUJBQVcsQ0FDbkIsbUJBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUM5QixxQ0FBcUMsQ0FDdEMsQ0FBQztJQUNKLENBQUM7QUFDSCxDQUFDLENBQ0YsQ0FBQyJ9
|
|
@@ -12,4 +12,4 @@ exports.updatePayoutAccountStep = (0, workflows_sdk_1.createStep)("update-payout
|
|
|
12
12
|
const service = container.resolve(payout_1.PAYOUT_MODULE);
|
|
13
13
|
await service.updatePayoutAccounts(previousData);
|
|
14
14
|
});
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLXBheW91dC1hY2NvdW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9wYXlvdXQvc3RlcHMvdXBkYXRlLXBheW91dC1hY2NvdW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUE2RTtBQUc3RSxvREFBNkU7QUFFaEUsUUFBQSx1QkFBdUIsR0FBRyxJQUFBLDBCQUFVLEVBQy9DLHVCQUF1QixFQUN2QixLQUFLLEVBQUUsS0FBNkIsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDckQsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBc0Isc0JBQWEsQ0FBQyxDQUFDO0lBRXRFLE1BQU0sWUFBWSxHQUFHLE1BQU0sT0FBTyxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUVuRSxNQUFNLGNBQWMsR0FDbEIsTUFBTSxPQUFPLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFNUMsT0FBTyxJQUFJLDRCQUFZLENBQUMsY0FBYyxFQUFFLFlBQVksQ0FBQyxDQUFDO0FBQ3hELENBQUMsRUFDRCxLQUFLLEVBQUUsWUFBOEIsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDdEQsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBc0Isc0JBQWEsQ0FBQyxDQUFDO0lBRXRFLE1BQU0sT0FBTyxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxDQUFDO0FBQ25ELENBQUMsQ0FDRixDQUFDIn0=
|
|
@@ -21,7 +21,7 @@ async function validateVariantOwnership(container, seller_id, variantIds) {
|
|
|
21
21
|
entity: seller_product_1.default.entryPoint,
|
|
22
22
|
fields: ['id'],
|
|
23
23
|
filters: {
|
|
24
|
-
seller_id
|
|
24
|
+
seller_id,
|
|
25
25
|
product_id: productIds
|
|
26
26
|
}
|
|
27
27
|
});
|
|
@@ -57,4 +57,4 @@ exports.validateVendorPriceListPricesStep = (0, workflows_sdk_1.createStep)('val
|
|
|
57
57
|
}
|
|
58
58
|
return new workflows_sdk_1.StepResponse();
|
|
59
59
|
});
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGUtdmVuZG9yLXByaWNlLWxpc3QtcHJpY2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9wcmljZS1saXN0L3N0ZXBzL3ZhbGlkYXRlLXZlbmRvci1wcmljZS1saXN0LXByaWNlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFLQSxxREFHa0M7QUFDbEMscUVBQTRFO0FBRTVFLG1GQUF5RDtBQUV6RCxLQUFLLFVBQVUsd0JBQXdCLENBQ3JDLFNBQTBCLEVBQzFCLFNBQWlCLEVBQ2pCLFVBQW9CO0lBRXBCLE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsaUNBQXlCLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDaEUsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDM0MsTUFBTSxFQUFFLGlCQUFpQjtRQUN6QixNQUFNLEVBQUUsQ0FBQyxZQUFZLENBQUM7UUFDdEIsT0FBTyxFQUFFO1lBQ1AsRUFBRSxFQUFFLFVBQVU7U0FDZjtLQUNGLENBQUMsQ0FBQTtJQUVGLE1BQU0sVUFBVSxHQUFHLENBQUMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBRWxFLE1BQU0sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEdBQUcsTUFBTSxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQzVDLE1BQU0sRUFBRSx3QkFBYSxDQUFDLFVBQVU7UUFDaEMsTUFBTSxFQUFFLENBQUMsSUFBSSxDQUFDO1FBQ2QsT0FBTyxFQUFFO1lBQ1AsU0FBUztZQUNULFVBQVUsRUFBRSxVQUFVO1NBQ3ZCO0tBQ0YsQ0FBQyxDQUFBO0lBRUYsSUFBSSxTQUFTLENBQUMsTUFBTSxLQUFLLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMzQyxNQUFNLElBQUksbUJBQVcsQ0FDbkIsbUJBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUM5Qix5REFBeUQsQ0FDMUQsQ0FBQTtJQUNILENBQUM7QUFDSCxDQUFDO0FBRUQsS0FBSyxVQUFVLGNBQWMsQ0FDM0IsU0FBMEIsRUFDMUIsUUFBa0IsRUFDbEIsYUFBc0I7SUFFdEIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ25CLE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQzlCLGdDQUFnQyxDQUNqQyxDQUFBO0lBQ0gsQ0FBQztJQUVELE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsaUNBQXlCLENBQUMsS0FBSyxDQUFDLENBQUE7SUFFaEUsTUFBTSxFQUNKLElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyxFQUNiLEdBQUcsTUFBTSxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQ3BCLE1BQU0sRUFBRSxZQUFZO1FBQ3BCLE1BQU0sRUFBRSxDQUFDLFdBQVcsQ0FBQztRQUNyQixPQUFPLEVBQUU7WUFDUCxFQUFFLEVBQUUsYUFBYTtTQUNsQjtLQUNGLENBQUMsQ0FBQTtJQUVGLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFhLENBQUE7SUFFdkQsS0FBSyxNQUFNLEtBQUssSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzVCLE1BQU0sSUFBSSxtQkFBVyxDQUFDLG1CQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxtQkFBbUIsQ0FBQyxDQUFBO1FBQzVFLENBQUM7SUFDSCxDQUFDO0FBQ0gsQ0FBQztBQUVZLFFBQUEsaUNBQWlDLEdBQUcsSUFBQSwwQkFBVSxFQUN6RCxtQ0FBbUMsRUFDbkMsS0FBSyxFQUNILEtBS0MsRUFDRCxFQUFFLFNBQVMsRUFBRSxFQUNiLEVBQUU7SUFDRixJQUFJLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNqQixNQUFNLHdCQUF3QixDQUM1QixTQUFTLEVBQ1QsS0FBSyxDQUFDLFNBQVMsRUFDZixLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUM5QyxDQUFBO0lBQ0gsQ0FBQztJQUVELElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2pCLE1BQU0sY0FBYyxDQUNsQixTQUFTLEVBQ1QsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDN0IsS0FBSyxDQUFDLGFBQWEsQ0FDcEIsQ0FBQTtJQUNILENBQUM7SUFFRCxPQUFPLElBQUksNEJBQVksRUFBRSxDQUFBO0FBQzNCLENBQUMsQ0FDRixDQUFBIn0=
|
|
@@ -20,7 +20,7 @@ exports.createVendorPriceListWorkflow = (0, workflows_sdk_1.createWorkflow)("cre
|
|
|
20
20
|
return result.map((list) => {
|
|
21
21
|
return {
|
|
22
22
|
[seller_1.SELLER_MODULE]: {
|
|
23
|
-
seller_id
|
|
23
|
+
seller_id,
|
|
24
24
|
},
|
|
25
25
|
[utils_1.Modules.PRICING]: {
|
|
26
26
|
price_list_id: list.id,
|
|
@@ -31,4 +31,4 @@ exports.createVendorPriceListWorkflow = (0, workflows_sdk_1.createWorkflow)("cre
|
|
|
31
31
|
(0, core_flows_1.createRemoteLinkStep)(links);
|
|
32
32
|
return new workflows_sdk_1.WorkflowResponse(result);
|
|
33
33
|
});
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXZlbmRvci1wcmljZS1saXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9wcmljZS1saXN0L3dvcmtmbG93cy9jcmVhdGUtdmVuZG9yLXByaWNlLWxpc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EscURBQW9EO0FBQ3BELDREQUdxQztBQUNyQywyREFJaUM7QUFFakMsb0RBQXdEO0FBRXhELG9DQUE2RDtBQUVoRCxRQUFBLDZCQUE2QixHQUFHLElBQUEsOEJBQWMsRUFDekQsMEJBQTBCLEVBQzFCLFVBQVUsRUFDUixnQkFBZ0IsRUFDaEIsU0FBUyxHQUlWO0lBQ0MsSUFBQSx5Q0FBaUMsRUFBQztRQUNoQyxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsTUFBTTtRQUMvQixTQUFTO0tBQ1YsQ0FBQyxDQUFDO0lBRUgsTUFBTSxNQUFNLEdBQUcscUNBQXdCLENBQUMsU0FBUyxDQUFDO1FBQ2hELEtBQUssRUFBRTtZQUNMLGdCQUFnQixFQUFFLENBQUMsZ0JBQWdCLENBQUM7U0FDckM7S0FDRixDQUFDLENBQUM7SUFFSCxNQUFNLEtBQUssR0FBRyxJQUFBLHlCQUFTLEVBQUMsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFO1FBQ3ZFLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ3pCLE9BQU87Z0JBQ0wsQ0FBQyxzQkFBYSxDQUFDLEVBQUU7b0JBQ2YsU0FBUztpQkFDVjtnQkFDRCxDQUFDLGVBQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtvQkFDakIsYUFBYSxFQUFFLElBQUksQ0FBQyxFQUFFO2lCQUN2QjthQUNGLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBQSxpQ0FBb0IsRUFBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixPQUFPLElBQUksZ0NBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDdEMsQ0FBQyxDQUNGLENBQUMifQ==
|
|
@@ -3,11 +3,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.updateProductStatusStep = void 0;
|
|
4
4
|
const utils_1 = require("@medusajs/framework/utils");
|
|
5
5
|
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
6
|
+
const framework_1 = require("@mercurjs/framework");
|
|
6
7
|
exports.updateProductStatusStep = (0, workflows_sdk_1.createStep)('update-product-status', async (input, { container }) => {
|
|
7
8
|
const service = container.resolve(utils_1.Modules.PRODUCT);
|
|
9
|
+
const eventBus = container.resolve(utils_1.Modules.EVENT_BUS);
|
|
8
10
|
const product = await service.updateProducts(input.id, {
|
|
9
11
|
status: input.status
|
|
10
12
|
});
|
|
13
|
+
await eventBus.emit({
|
|
14
|
+
name: framework_1.AlgoliaEvents.PRODUCTS_CHANGED,
|
|
15
|
+
data: { ids: [input.id] }
|
|
16
|
+
});
|
|
11
17
|
return new workflows_sdk_1.StepResponse(product, product.id);
|
|
12
18
|
});
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLXByb2R1Y3Qtc3RhdHVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9wcm9kdWN0L3N0ZXBzL3VwZGF0ZS1wcm9kdWN0LXN0YXR1cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxREFBa0U7QUFDbEUscUVBQTRFO0FBRTVFLG1EQUFtRDtBQUV0QyxRQUFBLHVCQUF1QixHQUFHLElBQUEsMEJBQVUsRUFDL0MsdUJBQXVCLEVBQ3ZCLEtBQUssRUFBRSxLQUE0QyxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRTtJQUNwRSxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLGVBQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUNsRCxNQUFNLFFBQVEsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLGVBQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQTtJQUVyRCxNQUFNLE9BQU8sR0FBRyxNQUFNLE9BQU8sQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRTtRQUNyRCxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07S0FDckIsQ0FBQyxDQUFBO0lBRUYsTUFBTSxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQ2xCLElBQUksRUFBRSx5QkFBYSxDQUFDLGdCQUFnQjtRQUNwQyxJQUFJLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUU7S0FDMUIsQ0FBQyxDQUFBO0lBRUYsT0FBTyxJQUFJLDRCQUFZLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQTtBQUM5QyxDQUFDLENBQ0YsQ0FBQSJ9
|
package/.medusa/server/src/workflows/product-variants/helpers/product-variant-filter-helper.d.ts
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Knex } from "@mikro-orm/postgresql";
|
|
2
|
+
export interface ProductVariantFilters {
|
|
3
|
+
seller_id?: string;
|
|
4
|
+
has_price?: boolean;
|
|
5
|
+
has_inventory?: boolean;
|
|
6
|
+
/**
|
|
7
|
+
* Whether the variant has at least one inventory level (inventory_item at any location).
|
|
8
|
+
* This follows the chain: ProductVariant -> InventoryItem (pivot) -> InventoryLevel(location_id).
|
|
9
|
+
*/
|
|
10
|
+
has_stock_location?: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Whether the variant has at least one admin-owned stock location.
|
|
13
|
+
* Admin-owned stock location = stock location that is NOT linked to any seller.
|
|
14
|
+
*
|
|
15
|
+
* Note: This filter requires looking up seller-stock-location links, so it's applied
|
|
16
|
+
* in the workflow step (not purely in this helper) where both Knex and Query are available.
|
|
17
|
+
*/
|
|
18
|
+
has_admin_stock_location?: boolean;
|
|
19
|
+
}
|
|
20
|
+
export declare class ProductVariantFilterHelper {
|
|
21
|
+
private knex;
|
|
22
|
+
constructor(knex: Knex);
|
|
23
|
+
getFilteredVariantIds(filters: ProductVariantFilters): Promise<string[]>;
|
|
24
|
+
}
|
package/.medusa/server/src/workflows/product-variants/helpers/product-variant-filter-helper.js
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ProductVariantFilterHelper = void 0;
|
|
4
|
+
class ProductVariantFilterHelper {
|
|
5
|
+
constructor(knex) {
|
|
6
|
+
this.knex = knex;
|
|
7
|
+
}
|
|
8
|
+
async getFilteredVariantIds(filters) {
|
|
9
|
+
let query = this.knex
|
|
10
|
+
.select("pv.id")
|
|
11
|
+
.from("product_variant as pv")
|
|
12
|
+
.distinct();
|
|
13
|
+
if (filters.seller_id) {
|
|
14
|
+
query = query
|
|
15
|
+
.join("seller_seller_product_product as sspp", "sspp.product_id", "pv.product_id")
|
|
16
|
+
.where("sspp.seller_id", filters.seller_id)
|
|
17
|
+
.whereNull("sspp.deleted_at");
|
|
18
|
+
}
|
|
19
|
+
if (filters.has_price !== undefined) {
|
|
20
|
+
query = query.whereRaw(filters.has_price
|
|
21
|
+
? "EXISTS (SELECT 1 FROM product_variant_price_set pvps INNER JOIN price p ON p.price_set_id = pvps.price_set_id WHERE pvps.variant_id = pv.id AND p.deleted_at IS NULL AND pvps.deleted_at IS NULL)"
|
|
22
|
+
: "NOT EXISTS (SELECT 1 FROM product_variant_price_set pvps INNER JOIN price p ON p.price_set_id = pvps.price_set_id WHERE pvps.variant_id = pv.id AND p.deleted_at IS NULL AND pvps.deleted_at IS NULL)");
|
|
23
|
+
}
|
|
24
|
+
if (filters.has_inventory !== undefined) {
|
|
25
|
+
query = query.whereRaw(filters.has_inventory
|
|
26
|
+
? "EXISTS (SELECT 1 FROM product_variant_inventory_item WHERE product_variant_inventory_item.variant_id = pv.id AND product_variant_inventory_item.deleted_at IS NULL)"
|
|
27
|
+
: "NOT EXISTS (SELECT 1 FROM product_variant_inventory_item WHERE product_variant_inventory_item.variant_id = pv.id AND product_variant_inventory_item.deleted_at IS NULL)");
|
|
28
|
+
}
|
|
29
|
+
if (filters.has_stock_location !== undefined) {
|
|
30
|
+
query = query.whereRaw(filters.has_stock_location
|
|
31
|
+
? "EXISTS (SELECT 1 FROM product_variant_inventory_item pvii INNER JOIN inventory_level il ON il.inventory_item_id = pvii.inventory_item_id WHERE pvii.variant_id = pv.id AND pvii.deleted_at IS NULL AND il.location_id IS NOT NULL)"
|
|
32
|
+
: "NOT EXISTS (SELECT 1 FROM product_variant_inventory_item pvii INNER JOIN inventory_level il ON il.inventory_item_id = pvii.inventory_item_id WHERE pvii.variant_id = pv.id AND pvii.deleted_at IS NULL AND il.location_id IS NOT NULL)");
|
|
33
|
+
}
|
|
34
|
+
const results = await query;
|
|
35
|
+
return results.map((r) => r.id);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
exports.ProductVariantFilterHelper = ProductVariantFilterHelper;
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC12YXJpYW50LWZpbHRlci1oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3Byb2R1Y3QtdmFyaWFudHMvaGVscGVycy9wcm9kdWN0LXZhcmlhbnQtZmlsdGVyLWhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFxQkEsTUFBYSwwQkFBMEI7SUFDckMsWUFBb0IsSUFBVTtRQUFWLFNBQUksR0FBSixJQUFJLENBQU07SUFBRyxDQUFDO0lBRWxDLEtBQUssQ0FBQyxxQkFBcUIsQ0FDekIsT0FBOEI7UUFFOUIsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUk7YUFDbEIsTUFBTSxDQUFDLE9BQU8sQ0FBQzthQUNmLElBQUksQ0FBQyx1QkFBdUIsQ0FBQzthQUM3QixRQUFRLEVBQUUsQ0FBQztRQUVkLElBQUksT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3RCLEtBQUssR0FBRyxLQUFLO2lCQUNWLElBQUksQ0FDSCx1Q0FBdUMsRUFDdkMsaUJBQWlCLEVBQ2pCLGVBQWUsQ0FDaEI7aUJBQ0EsS0FBSyxDQUFDLGdCQUFnQixFQUFFLE9BQU8sQ0FBQyxTQUFTLENBQUM7aUJBQzFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2xDLENBQUM7UUFFRCxJQUFJLE9BQU8sQ0FBQyxTQUFTLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDcEMsS0FBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQ3BCLE9BQU8sQ0FBQyxTQUFTO2dCQUNmLENBQUMsQ0FBQyxtTUFBbU07Z0JBQ3JNLENBQUMsQ0FBQyx1TUFBdU0sQ0FDNU0sQ0FBQztRQUNKLENBQUM7UUFFRCxJQUFJLE9BQU8sQ0FBQyxhQUFhLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDeEMsS0FBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQ3BCLE9BQU8sQ0FBQyxhQUFhO2dCQUNuQixDQUFDLENBQUMscUtBQXFLO2dCQUN2SyxDQUFDLENBQUMseUtBQXlLLENBQzlLLENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxPQUFPLENBQUMsa0JBQWtCLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDN0MsS0FBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQ3BCLE9BQU8sQ0FBQyxrQkFBa0I7Z0JBQ3hCLENBQUMsQ0FBQyxvT0FBb087Z0JBQ3RPLENBQUMsQ0FBQyx3T0FBd08sQ0FDN08sQ0FBQztRQUNKLENBQUM7UUFFRCxNQUFNLE9BQU8sR0FBRyxNQUFNLEtBQUssQ0FBQztRQUM1QixPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN2QyxDQUFDO0NBQ0Y7QUFqREQsZ0VBaURDIn0=
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./steps"), exports);
|
|
18
|
+
__exportStar(require("./types"), exports);
|
|
19
|
+
__exportStar(require("./workflows"), exports);
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3Byb2R1Y3QtdmFyaWFudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDBDQUF3QjtBQUN4QiwwQ0FBd0I7QUFDeEIsOENBQTRCIn0=
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.filterVariantsCombinedStep = void 0;
|
|
7
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
8
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
9
|
+
const seller_stock_location_1 = __importDefault(require("../../../links/seller-stock-location"));
|
|
10
|
+
const product_variant_filter_helper_1 = require("../helpers/product-variant-filter-helper");
|
|
11
|
+
exports.filterVariantsCombinedStep = (0, workflows_sdk_1.createStep)("filter-variants-combined", async (input, { container }) => {
|
|
12
|
+
const knex = container.resolve(utils_1.ContainerRegistrationKeys.PG_CONNECTION);
|
|
13
|
+
const query = container.resolve(utils_1.ContainerRegistrationKeys.QUERY);
|
|
14
|
+
const filterHelper = new product_variant_filter_helper_1.ProductVariantFilterHelper(knex);
|
|
15
|
+
let variantIds = await filterHelper.getFilteredVariantIds(input);
|
|
16
|
+
if (input.has_admin_stock_location !== undefined &&
|
|
17
|
+
Array.isArray(variantIds) &&
|
|
18
|
+
variantIds.length > 0) {
|
|
19
|
+
const rows = await knex("product_variant_inventory_item as pvii")
|
|
20
|
+
.distinct("pvii.variant_id as variant_id", "il.location_id as location_id")
|
|
21
|
+
.innerJoin("inventory_level as il", "il.inventory_item_id", "pvii.inventory_item_id")
|
|
22
|
+
.whereIn("pvii.variant_id", variantIds)
|
|
23
|
+
.whereNull("pvii.deleted_at")
|
|
24
|
+
.whereNotNull("il.location_id");
|
|
25
|
+
const locationIds = [
|
|
26
|
+
...new Set(rows
|
|
27
|
+
.map((r) => r?.location_id)
|
|
28
|
+
.filter((id) => typeof id === "string" && id.length > 0)),
|
|
29
|
+
];
|
|
30
|
+
if (!locationIds.length) {
|
|
31
|
+
variantIds = input.has_admin_stock_location ? [] : variantIds;
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
const { data: links } = await query.graph({
|
|
35
|
+
entity: seller_stock_location_1.default.entryPoint,
|
|
36
|
+
fields: ["stock_location_id"],
|
|
37
|
+
filters: { stock_location_id: locationIds },
|
|
38
|
+
});
|
|
39
|
+
const sellerLinkedLocationIdSet = new Set((links ?? [])
|
|
40
|
+
.map((l) => l?.stock_location_id)
|
|
41
|
+
.filter((id) => typeof id === "string" && id.length > 0));
|
|
42
|
+
const variantIdHasAdminSet = new Set();
|
|
43
|
+
for (const r of rows) {
|
|
44
|
+
const variantId = r?.variant_id;
|
|
45
|
+
const locationId = r?.location_id;
|
|
46
|
+
if (typeof variantId === "string" &&
|
|
47
|
+
variantId.length > 0 &&
|
|
48
|
+
typeof locationId === "string" &&
|
|
49
|
+
locationId.length > 0 &&
|
|
50
|
+
!sellerLinkedLocationIdSet.has(locationId)) {
|
|
51
|
+
variantIdHasAdminSet.add(variantId);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
variantIds = input.has_admin_stock_location
|
|
55
|
+
? variantIds.filter((id) => variantIdHasAdminSet.has(id))
|
|
56
|
+
: variantIds.filter((id) => !variantIdHasAdminSet.has(id));
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
return new workflows_sdk_1.StepResponse({
|
|
60
|
+
variantIds,
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLXZhcmlhbnRzLWNvbWJpbmVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9wcm9kdWN0LXZhcmlhbnRzL3N0ZXBzL2ZpbHRlci12YXJpYW50cy1jb21iaW5lZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxxREFBc0U7QUFDdEUscUVBQTZFO0FBRzdFLGlHQUF1RTtBQUN2RSw0RkFHa0Q7QUFFckMsUUFBQSwwQkFBMEIsR0FBRyxJQUFBLDBCQUFVLEVBQ2xELDBCQUEwQixFQUMxQixLQUFLLEVBQUUsS0FBNEIsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDcEQsTUFBTSxJQUFJLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FDNUIsaUNBQXlCLENBQUMsYUFBYSxDQUNoQyxDQUFDO0lBRVYsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxpQ0FBeUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUVqRSxNQUFNLFlBQVksR0FBRyxJQUFJLDBEQUEwQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBRTFELElBQUksVUFBVSxHQUFHLE1BQU0sWUFBWSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRWpFLElBQ0UsS0FBSyxDQUFDLHdCQUF3QixLQUFLLFNBQVM7UUFDNUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUM7UUFDekIsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQ3JCLENBQUM7UUFDRCxNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyx3Q0FBd0MsQ0FBQzthQUM5RCxRQUFRLENBQUMsK0JBQStCLEVBQUUsK0JBQStCLENBQUM7YUFDMUUsU0FBUyxDQUNSLHVCQUF1QixFQUN2QixzQkFBc0IsRUFDdEIsd0JBQXdCLENBQ3pCO2FBQ0EsT0FBTyxDQUFDLGlCQUFpQixFQUFFLFVBQVUsQ0FBQzthQUN0QyxTQUFTLENBQUMsaUJBQWlCLENBQUM7YUFDNUIsWUFBWSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFFbEMsTUFBTSxXQUFXLEdBQUc7WUFDbEIsR0FBRyxJQUFJLEdBQUcsQ0FDUixJQUFJO2lCQUNELEdBQUcsQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLFdBQVcsQ0FBQztpQkFDL0IsTUFBTSxDQUFDLENBQUMsRUFBTyxFQUFFLEVBQUUsQ0FBQyxPQUFPLEVBQUUsS0FBSyxRQUFRLElBQUksRUFBRSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FDaEU7U0FDRixDQUFDO1FBRUYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUN4QixVQUFVLEdBQUcsS0FBSyxDQUFDLHdCQUF3QixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQztRQUNoRSxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQUcsTUFBTSxLQUFLLENBQUMsS0FBSyxDQUFDO2dCQUN4QyxNQUFNLEVBQUUsK0JBQW1CLENBQUMsVUFBVTtnQkFDdEMsTUFBTSxFQUFFLENBQUMsbUJBQW1CLENBQUM7Z0JBQzdCLE9BQU8sRUFBRSxFQUFFLGlCQUFpQixFQUFFLFdBQVcsRUFBRTthQUM1QyxDQUFDLENBQUM7WUFFSCxNQUFNLHlCQUF5QixHQUFHLElBQUksR0FBRyxDQUN2QyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7aUJBQ1YsR0FBRyxDQUFDLENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsaUJBQWlCLENBQUM7aUJBQ3JDLE1BQU0sQ0FBQyxDQUFDLEVBQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxFQUFFLEtBQUssUUFBUSxJQUFJLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQ2hFLENBQUM7WUFFRixNQUFNLG9CQUFvQixHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7WUFDL0MsS0FBSyxNQUFNLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQztnQkFDckIsTUFBTSxTQUFTLEdBQUcsQ0FBQyxFQUFFLFVBQVUsQ0FBQztnQkFDaEMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxFQUFFLFdBQVcsQ0FBQztnQkFDbEMsSUFDRSxPQUFPLFNBQVMsS0FBSyxRQUFRO29CQUM3QixTQUFTLENBQUMsTUFBTSxHQUFHLENBQUM7b0JBQ3BCLE9BQU8sVUFBVSxLQUFLLFFBQVE7b0JBQzlCLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQztvQkFDckIsQ0FBQyx5QkFBeUIsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQzFDLENBQUM7b0JBQ0Qsb0JBQW9CLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUN0QyxDQUFDO1lBQ0gsQ0FBQztZQUVELFVBQVUsR0FBRyxLQUFLLENBQUMsd0JBQXdCO2dCQUN6QyxDQUFDLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUN6RCxDQUFDLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMvRCxDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU8sSUFBSSw0QkFBWSxDQUFDO1FBQ3RCLFVBQVU7S0FDWCxDQUFDLENBQUM7QUFDTCxDQUFDLENBQ0YsQ0FBQyJ9
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getSellerProductIdsStep = void 0;
|
|
7
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
8
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
9
|
+
const seller_product_1 = __importDefault(require("../../../links/seller-product"));
|
|
10
|
+
exports.getSellerProductIdsStep = (0, workflows_sdk_1.createStep)("get-seller-product-ids", async (input, { container }) => {
|
|
11
|
+
if (!input.seller_id) {
|
|
12
|
+
return new workflows_sdk_1.StepResponse([]);
|
|
13
|
+
}
|
|
14
|
+
const query = container.resolve(utils_1.ContainerRegistrationKeys.QUERY);
|
|
15
|
+
const { data: sellerProducts } = await query.graph({
|
|
16
|
+
entity: seller_product_1.default.entryPoint,
|
|
17
|
+
fields: ["product_id"],
|
|
18
|
+
filters: {
|
|
19
|
+
seller_id: input.seller_id,
|
|
20
|
+
deleted_at: {
|
|
21
|
+
$eq: null,
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
});
|
|
25
|
+
const productIds = sellerProducts.map((sp) => sp.product_id);
|
|
26
|
+
return new workflows_sdk_1.StepResponse(productIds);
|
|
27
|
+
});
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXNlbGxlci1wcm9kdWN0LWlkcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvcHJvZHVjdC12YXJpYW50cy9zdGVwcy9nZXQtc2VsbGVyLXByb2R1Y3QtaWRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHFEQUFzRTtBQUN0RSxxRUFBNkU7QUFFN0UsbUZBQThEO0FBVWpELFFBQUEsdUJBQXVCLEdBQUcsSUFBQSwwQkFBVSxFQUMvQyx3QkFBd0IsRUFDeEIsS0FBSyxFQUFFLEtBQStCLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFO0lBQ3ZELElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDckIsT0FBTyxJQUFJLDRCQUFZLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsaUNBQXlCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFakUsTUFBTSxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDakQsTUFBTSxFQUFFLHdCQUFpQixDQUFDLFVBQVU7UUFDcEMsTUFBTSxFQUFFLENBQUMsWUFBWSxDQUFDO1FBQ3RCLE9BQU8sRUFBRTtZQUNQLFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUztZQUMxQixVQUFVLEVBQUU7Z0JBQ1YsR0FBRyxFQUFFLElBQUk7YUFDVjtTQUNGO0tBQ0YsQ0FBQyxDQUFDO0lBRUgsTUFBTSxVQUFVLEdBQUksY0FBa0MsQ0FBQyxHQUFHLENBQ3hELENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUN0QixDQUFDO0lBRUYsT0FBTyxJQUFJLDRCQUFZLENBQUMsVUFBVSxDQUFDLENBQUM7QUFDdEMsQ0FBQyxDQUNGLENBQUMifQ==
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./filter-variants-combined"), exports);
|
|
18
|
+
__exportStar(require("./get-seller-product-ids"), exports);
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3Byb2R1Y3QtdmFyaWFudHMvc3RlcHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZEQUEyQztBQUMzQywyREFBeUMifQ==
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { PriceDTO, ProductVariantDTO } from "@medusajs/framework/types";
|
|
2
|
+
export interface ProductVariantWithRelations extends ProductVariantDTO {
|
|
3
|
+
prices?: PriceDTO[];
|
|
4
|
+
inventory_items?: Array<{
|
|
5
|
+
id: string;
|
|
6
|
+
inventory_item_id: string;
|
|
7
|
+
variant_id: string;
|
|
8
|
+
required_quantity: number;
|
|
9
|
+
}>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3Byb2R1Y3QtdmFyaWFudHMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./list-filtered-product-variants";
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./list-filtered-product-variants"), exports);
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3Byb2R1Y3QtdmFyaWFudHMvd29ya2Zsb3dzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxtRUFBaUQifQ==
|