@mercurjs/core 2.2.0 → 2.2.1-canary.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.
Files changed (77) hide show
  1. package/.medusa/server/src/api/admin/middlewares.js +17 -15
  2. package/.medusa/server/src/api/admin/promotions/[id]/[rule_type]/route.d.ts +2 -0
  3. package/.medusa/server/src/api/admin/promotions/[id]/[rule_type]/route.js +107 -0
  4. package/.medusa/server/src/api/admin/promotions/[id]/cost/route.d.ts +3 -0
  5. package/.medusa/server/src/api/admin/promotions/[id]/cost/route.js +19 -0
  6. package/.medusa/server/src/api/admin/promotions/[id]/cost/validators.d.ts +12 -0
  7. package/.medusa/server/src/api/admin/promotions/[id]/cost/validators.js +9 -0
  8. package/.medusa/server/src/api/admin/promotions/helpers.d.ts +2 -0
  9. package/.medusa/server/src/api/admin/promotions/helpers.js +35 -0
  10. package/.medusa/server/src/api/admin/promotions/middlewares.d.ts +2 -0
  11. package/.medusa/server/src/api/admin/promotions/middlewares.js +58 -0
  12. package/.medusa/server/src/api/admin/promotions/rule-attribute-options/[rule_type]/route.d.ts +3 -0
  13. package/.medusa/server/src/api/admin/promotions/rule-attribute-options/[rule_type]/route.js +20 -0
  14. package/.medusa/server/src/api/admin/promotions/rule-value-options/[rule_type]/[rule_attribute_id]/route.d.ts +3 -0
  15. package/.medusa/server/src/api/admin/promotions/rule-value-options/[rule_type]/[rule_attribute_id]/route.js +49 -0
  16. package/.medusa/server/src/api/admin/promotions/utils/index.d.ts +5 -0
  17. package/.medusa/server/src/api/admin/promotions/utils/index.js +22 -0
  18. package/.medusa/server/src/api/admin/promotions/utils/operators-map.d.ts +18 -0
  19. package/.medusa/server/src/api/admin/promotions/utils/operators-map.js +22 -0
  20. package/.medusa/server/src/api/admin/promotions/utils/rule-attributes-map.d.ts +11 -0
  21. package/.medusa/server/src/api/admin/promotions/utils/rule-attributes-map.js +163 -0
  22. package/.medusa/server/src/api/admin/promotions/utils/rule-query-configuration.d.ts +5 -0
  23. package/.medusa/server/src/api/admin/promotions/utils/rule-query-configuration.js +66 -0
  24. package/.medusa/server/src/api/admin/promotions/utils/validate-rule-attribute.d.ts +8 -0
  25. package/.medusa/server/src/api/admin/promotions/utils/validate-rule-attribute.js +18 -0
  26. package/.medusa/server/src/api/admin/promotions/utils/validate-rule-type.d.ts +1 -0
  27. package/.medusa/server/src/api/admin/promotions/utils/validate-rule-type.js +12 -0
  28. package/.medusa/server/src/api/store/carts/[id]/line-items/route.js +2 -1
  29. package/.medusa/server/src/api/store/offers/middlewares.js +13 -2
  30. package/.medusa/server/src/api/store/order-groups/query-config.js +29 -8
  31. package/.medusa/server/src/api/store/products/middlewares.js +30 -1
  32. package/.medusa/server/src/api/store/products/validators.d.ts +8 -2
  33. package/.medusa/server/src/api/store/products/validators.js +5 -2
  34. package/.medusa/server/src/api/vendor/promotions/query-config.js +3 -1
  35. package/.medusa/server/src/api/vendor/promotions/rule-value-options/[rule_type]/[rule_attribute_id]/route.js +19 -9
  36. package/.medusa/server/src/api/vendor/promotions/utils/rule-attributes-map.js +4 -4
  37. package/.medusa/server/src/api/vendor/promotions/utils/rule-query-configuration.d.ts +1 -0
  38. package/.medusa/server/src/api/vendor/promotions/utils/rule-query-configuration.js +10 -1
  39. package/.medusa/server/src/api/vendor/promotions/validators.d.ts +292 -25
  40. package/.medusa/server/src/api/vendor/promotions/validators.js +26 -7
  41. package/.medusa/server/src/links/promotion-cost-link.d.ts +2 -0
  42. package/.medusa/server/src/links/promotion-cost-link.js +18 -0
  43. package/.medusa/server/src/modules/payout/services/payout-module-service.js +9 -2
  44. package/.medusa/server/src/modules/promotion-cost/index.d.ts +21 -0
  45. package/.medusa/server/src/modules/promotion-cost/index.js +12 -0
  46. package/.medusa/server/src/modules/promotion-cost/migrations/Migration20260722120000.d.ts +5 -0
  47. package/.medusa/server/src/modules/promotion-cost/migrations/Migration20260722120000.js +16 -0
  48. package/.medusa/server/src/modules/promotion-cost/models/index.d.ts +1 -0
  49. package/.medusa/server/src/modules/promotion-cost/models/index.js +9 -0
  50. package/.medusa/server/src/modules/promotion-cost/models/promotion-cost.d.ts +8 -0
  51. package/.medusa/server/src/modules/promotion-cost/models/promotion-cost.js +21 -0
  52. package/.medusa/server/src/modules/promotion-cost/service.d.ts +24 -0
  53. package/.medusa/server/src/modules/promotion-cost/service.js +38 -0
  54. package/.medusa/server/src/utils/disable-medusa-middlewares.js +2 -1
  55. package/.medusa/server/src/workflows/cart/steps/prepare-adjustments-from-promotion-actions.js +3 -3
  56. package/.medusa/server/src/workflows/cart/utils/fields.js +2 -1
  57. package/.medusa/server/src/workflows/cart/workflows/complete-cart-with-split-orders.js +10 -2
  58. package/.medusa/server/src/workflows/cart/workflows/list-seller-shipping-options-for-cart.js +3 -1
  59. package/.medusa/server/src/workflows/index.d.ts +1 -0
  60. package/.medusa/server/src/workflows/index.js +2 -1
  61. package/.medusa/server/src/workflows/offer/workflows/create-offers.js +47 -1
  62. package/.medusa/server/src/workflows/product-attribute/workflows/create-and-link-product-attributes.js +12 -2
  63. package/.medusa/server/src/workflows/product-attribute/workflows/remove-product-attributes-from-product.d.ts +2 -0
  64. package/.medusa/server/src/workflows/product-attribute/workflows/remove-product-attributes-from-product.js +11 -6
  65. package/.medusa/server/src/workflows/product-attribute/workflows/upsert-product-attribute-values.js +54 -3
  66. package/.medusa/server/src/workflows/promotion/workflows/create-seller-promotions.js +11 -3
  67. package/.medusa/server/src/workflows/promotion-cost/index.d.ts +2 -0
  68. package/.medusa/server/src/workflows/promotion-cost/index.js +19 -0
  69. package/.medusa/server/src/workflows/promotion-cost/steps/index.d.ts +1 -0
  70. package/.medusa/server/src/workflows/promotion-cost/steps/index.js +18 -0
  71. package/.medusa/server/src/workflows/promotion-cost/steps/upsert-promotion-costs.d.ts +12 -0
  72. package/.medusa/server/src/workflows/promotion-cost/steps/upsert-promotion-costs.js +40 -0
  73. package/.medusa/server/src/workflows/promotion-cost/workflows/index.d.ts +1 -0
  74. package/.medusa/server/src/workflows/promotion-cost/workflows/index.js +18 -0
  75. package/.medusa/server/src/workflows/promotion-cost/workflows/upsert-promotion-costs.d.ts +12 -0
  76. package/.medusa/server/src/workflows/promotion-cost/workflows/upsert-promotion-costs.js +10 -0
  77. package/package.json +4 -4
@@ -13,13 +13,14 @@ const middlewares_6 = require("./sellers/middlewares");
13
13
  const middlewares_7 = require("./members/middlewares");
14
14
  const middlewares_8 = require("./commission-rates/middlewares");
15
15
  const middlewares_9 = require("./products/middlewares");
16
- const middlewares_10 = require("./collections/middlewares");
17
- const middlewares_11 = require("./product-categories/middlewares");
18
- const middlewares_12 = require("./product-attributes/middlewares");
19
- const middlewares_13 = require("./product-changes/middlewares");
20
- const middlewares_14 = require("./stock-locations/middlewares");
21
- const middlewares_15 = require("./shipping-options/middlewares");
22
- const middlewares_16 = require("./shipping-profiles/middlewares");
16
+ const middlewares_10 = require("./promotions/middlewares");
17
+ const middlewares_11 = require("./collections/middlewares");
18
+ const middlewares_12 = require("./product-categories/middlewares");
19
+ const middlewares_13 = require("./product-attributes/middlewares");
20
+ const middlewares_14 = require("./product-changes/middlewares");
21
+ const middlewares_15 = require("./stock-locations/middlewares");
22
+ const middlewares_16 = require("./shipping-options/middlewares");
23
+ const middlewares_17 = require("./shipping-profiles/middlewares");
23
24
  exports.adminMiddlewares = [
24
25
  ...middlewares_1.adminOrderGroupsMiddlewares,
25
26
  {
@@ -37,12 +38,13 @@ exports.adminMiddlewares = [
37
38
  ...middlewares_7.adminMembersMiddlewares,
38
39
  ...middlewares_8.adminCommissionRatesMiddlewares,
39
40
  ...middlewares_9.adminProductsMiddlewares,
40
- ...middlewares_10.adminCollectionsMiddlewares,
41
- ...middlewares_11.adminProductCategoriesMiddlewares,
42
- ...middlewares_12.adminProductAttributesMiddlewares,
43
- ...middlewares_13.adminProductChangesMiddlewares,
44
- ...middlewares_14.adminStockLocationsMiddlewares,
45
- ...middlewares_15.adminShippingOptionsMiddlewares,
46
- ...middlewares_16.adminShippingProfilesMiddlewares,
41
+ ...middlewares_10.adminPromotionsMiddlewares,
42
+ ...middlewares_11.adminCollectionsMiddlewares,
43
+ ...middlewares_12.adminProductCategoriesMiddlewares,
44
+ ...middlewares_13.adminProductAttributesMiddlewares,
45
+ ...middlewares_14.adminProductChangesMiddlewares,
46
+ ...middlewares_15.adminStockLocationsMiddlewares,
47
+ ...middlewares_16.adminShippingOptionsMiddlewares,
48
+ ...middlewares_17.adminShippingProfilesMiddlewares,
47
49
  ];
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL21pZGRsZXdhcmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLG1EQUErRDtBQUUvRCw0REFBd0U7QUFDeEUsOERBQXdFO0FBQ3hFLDBEQUFvRTtBQUNwRSxzREFBNkQ7QUFDN0QsK0RBQThFO0FBQzlFLHNEQUE2RDtBQUM3RCx1REFBK0Q7QUFDL0QsdURBQStEO0FBQy9ELHVEQUErRDtBQUMvRCxnRUFBZ0Y7QUFFaEYsd0RBQWlFO0FBQ2pFLDREQUF1RTtBQUN2RSxtRUFBb0Y7QUFDcEYsbUVBQW9GO0FBQ3BGLGdFQUE4RTtBQUM5RSxnRUFBOEU7QUFDOUUsaUVBQWdGO0FBQ2hGLGtFQUFrRjtBQUVyRSxRQUFBLGdCQUFnQixHQUFzQjtJQUNqRCxHQUFHLHlDQUEyQjtJQUM5QjtRQUNFLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQztRQUNmLE9BQU8sRUFBRSwrQkFBK0I7UUFDeEMsV0FBVyxFQUFFO1lBQ1gsSUFBQSxxQ0FBeUIsRUFDdkIscUNBQXdCLEVBQ3hCLHlDQUEwQixDQUFDLFFBQVEsQ0FDcEM7U0FDRjtLQUNGO0lBQ0QsR0FBRyxvQ0FBc0I7SUFDekIsR0FBRyw0Q0FBOEI7SUFDakMsR0FBRyxvQ0FBc0I7SUFDekIsR0FBRyxxQ0FBdUI7SUFDMUIsR0FBRyxxQ0FBdUI7SUFDMUIsR0FBRyxxQ0FBdUI7SUFDMUIsR0FBRyw2Q0FBK0I7SUFDbEMsR0FBRyxzQ0FBd0I7SUFDM0IsR0FBRywwQ0FBMkI7SUFDOUIsR0FBRyxnREFBaUM7SUFDcEMsR0FBRyxnREFBaUM7SUFDcEMsR0FBRyw2Q0FBOEI7SUFDakMsR0FBRyw2Q0FBOEI7SUFDakMsR0FBRyw4Q0FBK0I7SUFDbEMsR0FBRywrQ0FBZ0M7Q0FDcEMsQ0FBQSJ9
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL21pZGRsZXdhcmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLG1EQUErRDtBQUUvRCw0REFBd0U7QUFDeEUsOERBQXdFO0FBQ3hFLDBEQUFvRTtBQUNwRSxzREFBNkQ7QUFDN0QsK0RBQThFO0FBQzlFLHNEQUE2RDtBQUM3RCx1REFBK0Q7QUFDL0QsdURBQStEO0FBQy9ELHVEQUErRDtBQUMvRCxnRUFBZ0Y7QUFFaEYsd0RBQWlFO0FBQ2pFLDJEQUFxRTtBQUNyRSw0REFBdUU7QUFDdkUsbUVBQW9GO0FBQ3BGLG1FQUFvRjtBQUNwRixnRUFBOEU7QUFDOUUsZ0VBQThFO0FBQzlFLGlFQUFnRjtBQUNoRixrRUFBa0Y7QUFFckUsUUFBQSxnQkFBZ0IsR0FBc0I7SUFDakQsR0FBRyx5Q0FBMkI7SUFDOUI7UUFDRSxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUM7UUFDZixPQUFPLEVBQUUsK0JBQStCO1FBQ3hDLFdBQVcsRUFBRTtZQUNYLElBQUEscUNBQXlCLEVBQ3ZCLHFDQUF3QixFQUN4Qix5Q0FBMEIsQ0FBQyxRQUFRLENBQ3BDO1NBQ0Y7S0FDRjtJQUNELEdBQUcsb0NBQXNCO0lBQ3pCLEdBQUcsNENBQThCO0lBQ2pDLEdBQUcsb0NBQXNCO0lBQ3pCLEdBQUcscUNBQXVCO0lBQzFCLEdBQUcscUNBQXVCO0lBQzFCLEdBQUcscUNBQXVCO0lBQzFCLEdBQUcsNkNBQStCO0lBQ2xDLEdBQUcsc0NBQXdCO0lBQzNCLEdBQUcseUNBQTBCO0lBQzdCLEdBQUcsMENBQTJCO0lBQzlCLEdBQUcsZ0RBQWlDO0lBQ3BDLEdBQUcsZ0RBQWlDO0lBQ3BDLEdBQUcsNkNBQThCO0lBQ2pDLEdBQUcsNkNBQThCO0lBQ2pDLEdBQUcsOENBQStCO0lBQ2xDLEdBQUcsK0NBQWdDO0NBQ3BDLENBQUEifQ==
@@ -0,0 +1,2 @@
1
+ import { AuthenticatedMedusaRequest, MedusaResponse } from "@medusajs/framework/http";
2
+ export declare const GET: (req: AuthenticatedMedusaRequest, res: MedusaResponse) => Promise<void>;
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GET = void 0;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ const utils_2 = require("../../utils");
6
+ const GET = async (req, res) => {
7
+ const { id, rule_type: ruleType } = req.params;
8
+ (0, utils_2.validateRuleType)(ruleType);
9
+ const query = req.scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
10
+ const dasherizedRuleType = ruleType.split("-").join("_");
11
+ const { data: [promotion], } = await query.graph({
12
+ entity: "promotion",
13
+ filters: { id },
14
+ fields: [...req.queryConfig.fields, "seller.id"],
15
+ });
16
+ const ownerSellerId = promotion?.seller?.id;
17
+ const ruleAttributes = (0, utils_2.getRuleAttributesMap)({
18
+ promotionType: promotion?.type || req.query.promotion_type,
19
+ applicationMethodType: promotion?.application_method?.type ||
20
+ req.query.application_method_type,
21
+ applicationMethodTargetType: promotion?.application_method?.target_type ||
22
+ req.query.application_method_target_type,
23
+ })[ruleType];
24
+ const promotionRules = [];
25
+ if (dasherizedRuleType === utils_1.RuleType.RULES) {
26
+ promotionRules.push(...(promotion?.rules || []));
27
+ }
28
+ else if (dasherizedRuleType === utils_1.RuleType.TARGET_RULES) {
29
+ promotionRules.push(...(promotion?.application_method?.target_rules || []));
30
+ }
31
+ else if (dasherizedRuleType === utils_1.RuleType.BUY_RULES) {
32
+ promotionRules.push(...(promotion?.application_method?.buy_rules || []));
33
+ }
34
+ const transformedRules = [];
35
+ const disguisedRules = ruleAttributes.filter((attr) => !!attr.disguised);
36
+ for (const disguisedRule of disguisedRules) {
37
+ const getValues = () => {
38
+ const value = promotion?.application_method?.[disguisedRule.id];
39
+ if (disguisedRule.field_type === "number") {
40
+ return value;
41
+ }
42
+ if (value) {
43
+ return [{ label: value, value }];
44
+ }
45
+ return [];
46
+ };
47
+ const required = disguisedRule.required ?? true;
48
+ const applicationMethod = promotion?.application_method;
49
+ const recordValue = applicationMethod?.[disguisedRule.id];
50
+ if (required || recordValue) {
51
+ transformedRules.push({
52
+ ...disguisedRule,
53
+ id: undefined,
54
+ attribute: disguisedRule.id,
55
+ attribute_label: disguisedRule.label,
56
+ operator: utils_1.RuleOperator.EQ,
57
+ operator_label: utils_2.operatorsMap[utils_1.RuleOperator.EQ].label,
58
+ value: undefined,
59
+ values: getValues(),
60
+ });
61
+ }
62
+ }
63
+ for (const promotionRule of [...promotionRules, ...transformedRules]) {
64
+ const currentRuleAttribute = ruleAttributes.find((attr) => attr.value === promotionRule.attribute);
65
+ if (!currentRuleAttribute) {
66
+ continue;
67
+ }
68
+ const queryConfig = utils_2.ruleQueryConfigurations[currentRuleAttribute.id];
69
+ if (!queryConfig) {
70
+ continue;
71
+ }
72
+ const filters = {
73
+ [queryConfig.valueAttr]: promotionRule.values?.map((v) => v.value),
74
+ };
75
+ if (queryConfig.entryPoint === "offer" && ownerSellerId) {
76
+ filters.seller_id = ownerSellerId;
77
+ }
78
+ const { data: rows } = await query.graph({
79
+ entity: queryConfig.entryPoint,
80
+ filters,
81
+ fields: [queryConfig.labelAttr, queryConfig.valueAttr],
82
+ });
83
+ const valueLabelMap = new Map(rows.map((row) => [
84
+ row[queryConfig.valueAttr],
85
+ row[queryConfig.labelAttr],
86
+ ]));
87
+ promotionRule.values =
88
+ promotionRule.values?.map((value) => ({
89
+ value: value.value,
90
+ label: valueLabelMap.get(value.value) || value.value,
91
+ })) || promotionRule.values;
92
+ if (!currentRuleAttribute.hydrate) {
93
+ transformedRules.push({
94
+ ...currentRuleAttribute,
95
+ ...promotionRule,
96
+ attribute_label: currentRuleAttribute.label,
97
+ operator_label: utils_2.operatorsMap[promotionRule.operator]
98
+ ?.label || promotionRule.operator,
99
+ });
100
+ }
101
+ }
102
+ res.json({
103
+ rules: transformedRules,
104
+ });
105
+ };
106
+ exports.GET = GET;
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Byb21vdGlvbnMvW2lkXS9bcnVsZV90eXBlXS9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFJQSxxREFJa0M7QUFFbEMsdUNBS29CO0FBRWIsTUFBTSxHQUFHLEdBQUcsS0FBSyxFQUN0QixHQUErQixFQUMvQixHQUFtQixFQUNuQixFQUFFO0lBQ0YsTUFBTSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQTtJQUU5QyxJQUFBLHdCQUFnQixFQUFDLFFBQVEsQ0FBQyxDQUFBO0lBRTFCLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGlDQUF5QixDQUFDLEtBQUssQ0FBQyxDQUFBO0lBRWhFLE1BQU0sa0JBQWtCLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUE7SUFFeEQsTUFBTSxFQUNKLElBQUksRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUNsQixHQUFHLE1BQU0sS0FBSyxDQUFDLEtBQUssQ0FBQztRQUNwQixNQUFNLEVBQUUsV0FBVztRQUNuQixPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUU7UUFDZixNQUFNLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQztLQUNqRCxDQUFDLENBQUE7SUFFRixNQUFNLGFBQWEsR0FBRyxTQUFTLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQTtJQUUzQyxNQUFNLGNBQWMsR0FBRyxJQUFBLDRCQUFvQixFQUFDO1FBQzFDLGFBQWEsRUFBRSxTQUFTLEVBQUUsSUFBSSxJQUFLLEdBQUcsQ0FBQyxLQUFLLENBQUMsY0FBc0I7UUFDbkUscUJBQXFCLEVBQ25CLFNBQVMs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
@@ -0,0 +1,3 @@
1
+ import { AuthenticatedMedusaRequest, MedusaResponse } from "@medusajs/framework/http";
2
+ import { AdminUpsertPromotionCostType } from "./validators";
3
+ export declare const POST: (req: AuthenticatedMedusaRequest<AdminUpsertPromotionCostType>, res: MedusaResponse) => Promise<void>;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.POST = void 0;
4
+ const promotion_cost_1 = require("../../../../../workflows/promotion-cost");
5
+ const POST = async (req, res) => {
6
+ const { id } = req.params;
7
+ const { cost_bearer, shared_marketplace_percentage } = req.validatedBody;
8
+ const { result } = await (0, promotion_cost_1.upsertPromotionCostsWorkflow)(req.scope).run({
9
+ input: {
10
+ promotion_id: id,
11
+ cost_bearer,
12
+ shared_marketplace_percentage: cost_bearer === "shared" ? shared_marketplace_percentage ?? null : null,
13
+ },
14
+ });
15
+ const [promotion_cost] = Array.isArray(result) ? result : [result];
16
+ res.json({ promotion_cost });
17
+ };
18
+ exports.POST = POST;
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Byb21vdGlvbnMvW2lkXS9jb3N0L3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUtBLDRFQUFzRjtBQUcvRSxNQUFNLElBQUksR0FBRyxLQUFLLEVBQ3ZCLEdBQTZELEVBQzdELEdBQW1CLEVBQ25CLEVBQUU7SUFDRixNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQTtJQUN6QixNQUFNLEVBQUUsV0FBVyxFQUFFLDZCQUE2QixFQUFFLEdBQUcsR0FBRyxDQUFDLGFBQWEsQ0FBQTtJQUV4RSxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsTUFBTSxJQUFBLDZDQUE0QixFQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUM7UUFDbkUsS0FBSyxFQUFFO1lBQ0wsWUFBWSxFQUFFLEVBQUU7WUFDaEIsV0FBVztZQUNYLDZCQUE2QixFQUMzQixXQUFXLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyw2QkFBNkIsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUk7U0FDMUU7S0FDRixDQUFDLENBQUE7SUFFRixNQUFNLENBQUMsY0FBYyxDQUFDLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBRWxFLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxjQUFjLEVBQUUsQ0FBQyxDQUFBO0FBQzlCLENBQUMsQ0FBQTtBQW5CWSxRQUFBLElBQUksUUFtQmhCIn0=
@@ -0,0 +1,12 @@
1
+ import { z } from "zod";
2
+ export declare const AdminUpsertPromotionCost: z.ZodObject<{
3
+ cost_bearer: z.ZodEnum<["store", "marketplace", "shared"]>;
4
+ shared_marketplace_percentage: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
5
+ }, "strip", z.ZodTypeAny, {
6
+ cost_bearer: "shared" | "store" | "marketplace";
7
+ shared_marketplace_percentage?: number | null | undefined;
8
+ }, {
9
+ cost_bearer: "shared" | "store" | "marketplace";
10
+ shared_marketplace_percentage?: number | null | undefined;
11
+ }>;
12
+ export type AdminUpsertPromotionCostType = z.infer<typeof AdminUpsertPromotionCost>;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AdminUpsertPromotionCost = void 0;
4
+ const zod_1 = require("zod");
5
+ exports.AdminUpsertPromotionCost = zod_1.z.object({
6
+ cost_bearer: zod_1.z.enum(["store", "marketplace", "shared"]),
7
+ shared_marketplace_percentage: zod_1.z.number().min(0).max(100).nullish(),
8
+ });
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcGkvYWRtaW4vcHJvbW90aW9ucy9baWRdL2Nvc3QvdmFsaWRhdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2QkFBdUI7QUFFVixRQUFBLHdCQUF3QixHQUFHLE9BQUMsQ0FBQyxNQUFNLENBQUM7SUFDL0MsV0FBVyxFQUFFLE9BQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3ZELDZCQUE2QixFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRTtDQUNwRSxDQUFDLENBQUEifQ==
@@ -0,0 +1,2 @@
1
+ import { AuthenticatedMedusaRequest, MedusaNextFunction, MedusaResponse } from "@medusajs/framework/http";
2
+ export declare const applyPromotionSellerFilter: (req: AuthenticatedMedusaRequest, _res: MedusaResponse, next: MedusaNextFunction) => Promise<void>;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.applyPromotionSellerFilter = void 0;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ const PLATFORM_OWNER = "platform";
6
+ const applyPromotionSellerFilter = async (req, _res, next) => {
7
+ const filterableFields = req.filterableFields ?? {};
8
+ const sellerId = filterableFields.seller_id;
9
+ if (!sellerId) {
10
+ return next();
11
+ }
12
+ delete filterableFields.seller_id;
13
+ const query = req.scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
14
+ const wantsPlatform = sellerId === PLATFORM_OWNER ||
15
+ (Array.isArray(sellerId) && sellerId.includes(PLATFORM_OWNER));
16
+ if (wantsPlatform) {
17
+ const { data: links } = await query.graph({
18
+ entity: "promotion_seller",
19
+ fields: ["promotion_id"],
20
+ });
21
+ const ownedIds = links.map((l) => l.promotion_id);
22
+ filterableFields.id = ownedIds.length ? { $nin: ownedIds } : undefined;
23
+ return next();
24
+ }
25
+ const { data: links } = await query.graph({
26
+ entity: "promotion_seller",
27
+ fields: ["promotion_id"],
28
+ filters: { seller_id: sellerId },
29
+ });
30
+ const promotionIds = links.map((l) => l.promotion_id);
31
+ filterableFields.id = promotionIds.length ? promotionIds : ["__no_match__"];
32
+ return next();
33
+ };
34
+ exports.applyPromotionSellerFilter = applyPromotionSellerFilter;
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcGkvYWRtaW4vcHJvbW90aW9ucy9oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUtBLHFEQUFxRTtBQUVyRSxNQUFNLGNBQWMsR0FBRyxVQUFVLENBQUE7QUFFMUIsTUFBTSwwQkFBMEIsR0FBRyxLQUFLLEVBQzdDLEdBQStCLEVBQy9CLElBQW9CLEVBQ3BCLElBQXdCLEVBQ3hCLEVBQUU7SUFDRixNQUFNLGdCQUFnQixHQUFHLEdBQUcsQ0FBQyxnQkFBZ0IsSUFBSSxFQUFFLENBQUE7SUFDbkQsTUFBTSxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsU0FBMEMsQ0FBQTtJQUU1RSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDZCxPQUFPLElBQUksRUFBRSxDQUFBO0lBQ2YsQ0FBQztJQUVELE9BQU8sZ0JBQWdCLENBQUMsU0FBUyxDQUFBO0lBRWpDLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGlDQUF5QixDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ2hFLE1BQU0sYUFBYSxHQUNqQixRQUFRLEtBQUssY0FBYztRQUMzQixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksUUFBUSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFBO0lBRWhFLElBQUksYUFBYSxFQUFFLENBQUM7UUFDbEIsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDeEMsTUFBTSxFQUFFLGtCQUFrQjtZQUMxQixNQUFNLEVBQUUsQ0FBQyxjQUFjLENBQUM7U0FDekIsQ0FBQyxDQUFBO1FBQ0YsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQTJCLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUUzRSxnQkFBZ0IsQ0FBQyxFQUFFLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQTtRQUN0RSxPQUFPLElBQUksRUFBRSxDQUFBO0lBQ2YsQ0FBQztJQUVELE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQUcsTUFBTSxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQ3hDLE1BQU0sRUFBRSxrQkFBa0I7UUFDMUIsTUFBTSxFQUFFLENBQUMsY0FBYyxDQUFDO1FBQ3hCLE9BQU8sRUFBRSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUU7S0FDakMsQ0FBQyxDQUFBO0lBQ0YsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FDNUIsQ0FBQyxDQUEyQixFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUNoRCxDQUFBO0lBRUQsZ0JBQWdCLENBQUMsRUFBRSxHQUFHLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQTtJQUMzRSxPQUFPLElBQUksRUFBRSxDQUFBO0FBQ2YsQ0FBQyxDQUFBO0FBekNZLFFBQUEsMEJBQTBCLDhCQXlDdEMifQ==
@@ -0,0 +1,2 @@
1
+ import { MiddlewareRoute } from "@medusajs/framework/http";
2
+ export declare const adminPromotionsMiddlewares: MiddlewareRoute[];
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.adminPromotionsMiddlewares = void 0;
4
+ const framework_1 = require("@medusajs/framework");
5
+ const query_config_1 = require("@medusajs/medusa/api/admin/promotions/query-config");
6
+ const validators_1 = require("@medusajs/medusa/api/admin/promotions/validators");
7
+ const zod_1 = require("zod");
8
+ const disable_medusa_middlewares_1 = require("../../../utils/disable-medusa-middlewares");
9
+ const validators_2 = require("./[id]/cost/validators");
10
+ const helpers_1 = require("./helpers");
11
+ const RULE_VALUE_MATCHER = "/admin/promotions/rule-value-options/:rule_type/:rule_attribute_id";
12
+ const LIST_MATCHER = "/admin/promotions";
13
+ const capturedBase = (disable_medusa_middlewares_1.ORIGINAL_MIDDLEWARES["dist/api/admin/promotions/middlewares.js"] ?? []);
14
+ const routeHasGet = (route) => {
15
+ const methods = Array.isArray(route.method)
16
+ ? route.method
17
+ : route.method
18
+ ? [route.method]
19
+ : [];
20
+ return methods.includes("GET");
21
+ };
22
+ const baseWithoutOverrides = capturedBase.filter((route) => {
23
+ if (route.matcher === RULE_VALUE_MATCHER && routeHasGet(route)) {
24
+ return false;
25
+ }
26
+ if (route.matcher === LIST_MATCHER && routeHasGet(route)) {
27
+ return false;
28
+ }
29
+ return true;
30
+ });
31
+ const AdminGetPromotionsRuleValueWithSeller = validators_1.AdminGetPromotionsRuleValueParams.merge(zod_1.z.object({ seller_id: zod_1.z.string().optional() }));
32
+ const AdminGetPromotionsWithSeller = validators_1.AdminGetPromotionsParams.merge(zod_1.z.object({
33
+ seller_id: zod_1.z.union([zod_1.z.string(), zod_1.z.array(zod_1.z.string())]).optional(),
34
+ }));
35
+ exports.adminPromotionsMiddlewares = [
36
+ ...baseWithoutOverrides,
37
+ {
38
+ method: ["GET"],
39
+ matcher: LIST_MATCHER,
40
+ middlewares: [
41
+ (0, framework_1.validateAndTransformQuery)(AdminGetPromotionsWithSeller, query_config_1.listTransformQueryConfig),
42
+ helpers_1.applyPromotionSellerFilter,
43
+ ],
44
+ },
45
+ {
46
+ method: ["GET"],
47
+ matcher: RULE_VALUE_MATCHER,
48
+ middlewares: [
49
+ (0, framework_1.validateAndTransformQuery)(AdminGetPromotionsRuleValueWithSeller, query_config_1.listRuleValueTransformQueryConfig),
50
+ ],
51
+ },
52
+ {
53
+ method: ["POST"],
54
+ matcher: "/admin/promotions/:id/cost",
55
+ middlewares: [(0, framework_1.validateAndTransformBody)(validators_2.AdminUpsertPromotionCost)],
56
+ },
57
+ ];
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Byb21vdGlvbnMvbWlkZGxld2FyZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbURBRzRCO0FBRTVCLHFGQUcyRDtBQUMzRCxpRkFHeUQ7QUFDekQsNkJBQXVCO0FBRXZCLDBGQUFnRjtBQUNoRix1REFBaUU7QUFDakUsdUNBQXNEO0FBRXRELE1BQU0sa0JBQWtCLEdBQ3RCLG9FQUFvRSxDQUFBO0FBQ3RFLE1BQU0sWUFBWSxHQUFHLG1CQUFtQixDQUFBO0FBRXhDLE1BQU0sWUFBWSxHQUFHLENBQUMsaURBQW9CLENBQ3hDLDBDQUEwQyxDQUMzQyxJQUFJLEVBQUUsQ0FBc0IsQ0FBQTtBQUU3QixNQUFNLFdBQVcsR0FBRyxDQUFDLEtBQXNCLEVBQUUsRUFBRTtJQUM3QyxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDekMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNO1FBQ2QsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNO1lBQ2QsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztZQUNoQixDQUFDLENBQUMsRUFBRSxDQUFBO0lBQ04sT0FBTyxPQUFPLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFBO0FBQ2hDLENBQUMsQ0FBQTtBQUVELE1BQU0sb0JBQW9CLEdBQUcsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO0lBQ3pELElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxrQkFBa0IsSUFBSSxXQUFXLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUMvRCxPQUFPLEtBQUssQ0FBQTtJQUNkLENBQUM7SUFDRCxJQUFJLEtBQUssQ0FBQyxPQUFPLEtBQUssWUFBWSxJQUFJLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3pELE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQztJQUNELE9BQU8sSUFBSSxDQUFBO0FBQ2IsQ0FBQyxDQUFDLENBQUE7QUFFRixNQUFNLHFDQUFxQyxHQUN6Qyw4Q0FBaUMsQ0FBQyxLQUFLLENBQ3JDLE9BQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FDL0MsQ0FBQTtBQUVILE1BQU0sNEJBQTRCLEdBQUcscUNBQXdCLENBQUMsS0FBSyxDQUNqRSxPQUFDLENBQUMsTUFBTSxDQUFDO0lBQ1AsU0FBUyxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFO0NBQ2pFLENBQUMsQ0FDSCxDQUFBO0FBRVksUUFBQSwwQkFBMEIsR0FBc0I7SUFDM0QsR0FBRyxvQkFBb0I7SUFDdkI7UUFDRSxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUM7UUFDZixPQUFPLEVBQUUsWUFBWTtRQUNyQixXQUFXLEVBQUU7WUFDWCxJQUFBLHFDQUF5QixFQUN2Qiw0QkFBNEIsRUFDNUIsdUNBQXdCLENBQ3pCO1lBQ0Qsb0NBQTBCO1NBQzNCO0tBQ0Y7SUFDRDtRQUNFLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQztRQUNmLE9BQU8sRUFBRSxrQkFBa0I7UUFDM0IsV0FBVyxFQUFFO1lBQ1gsSUFBQSxxQ0FBeUIsRUFDdkIscUNBQXFDLEVBQ3JDLGdEQUFpQyxDQUNsQztTQUNGO0tBQ0Y7SUFDRDtRQUNFLE1BQU0sRUFBRSxDQUFDLE1BQU0sQ0FBQztRQUNoQixPQUFPLEVBQUUsNEJBQTRCO1FBQ3JDLFdBQVcsRUFBRSxDQUFDLElBQUEsb0NBQXdCLEVBQUMscUNBQXdCLENBQUMsQ0FBQztLQUNsRTtDQUNGLENBQUEifQ==
@@ -0,0 +1,3 @@
1
+ import { AuthenticatedMedusaRequest, MedusaResponse } from "@medusajs/framework/http";
2
+ import { HttpTypes } from "@medusajs/types";
3
+ export declare const GET: (req: AuthenticatedMedusaRequest, res: MedusaResponse<HttpTypes.AdminRuleAttributeOptionsListResponse>) => Promise<void>;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GET = void 0;
4
+ const utils_1 = require("../../utils");
5
+ const GET = async (req, res) => {
6
+ const { rule_type: ruleType } = req.params;
7
+ (0, utils_1.validateRuleType)(ruleType);
8
+ const attributes = (0, utils_1.getRuleAttributesMap)({
9
+ promotionType: req.query.promotion_type,
10
+ applicationMethodType: req.query
11
+ .application_method_type,
12
+ applicationMethodTargetType: req.query
13
+ .application_method_target_type,
14
+ })[ruleType] || [];
15
+ res.json({
16
+ attributes,
17
+ });
18
+ };
19
+ exports.GET = GET;
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Byb21vdGlvbnMvcnVsZS1hdHRyaWJ1dGUtb3B0aW9ucy9bcnVsZV90eXBlXS9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFXQSx1Q0FBb0U7QUFFN0QsTUFBTSxHQUFHLEdBQUcsS0FBSyxFQUN0QixHQUErQixFQUMvQixHQUFvRSxFQUNwRSxFQUFFO0lBQ0YsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFBO0lBRTFDLElBQUEsd0JBQWdCLEVBQUMsUUFBUSxDQUFDLENBQUE7SUFFMUIsTUFBTSxVQUFVLEdBQ2QsSUFBQSw0QkFBb0IsRUFBQztRQUNuQixhQUFhLEVBQUUsR0FBRyxDQUFDLEtBQUssQ0FBQyxjQUFxQztRQUM5RCxxQkFBcUIsRUFBRSxHQUFHLENBQUMsS0FBSzthQUM3Qix1QkFBc0Q7UUFDekQsMkJBQTJCLEVBQUUsR0FBRyxDQUFDLEtBQUs7YUFDbkMsOEJBQW1FO0tBQ3ZFLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUE7SUFFcEIsR0FBRyxDQUFDLElBQUksQ0FBQztRQUNQLFVBQVU7S0FDWCxDQUFDLENBQUE7QUFDSixDQUFDLENBQUE7QUFwQlksUUFBQSxHQUFHLE9Bb0JmIn0=
@@ -0,0 +1,3 @@
1
+ import { AuthenticatedMedusaRequest, MedusaResponse } from "@medusajs/framework/http";
2
+ import { HttpTypes } from "@medusajs/types";
3
+ export declare const GET: (req: AuthenticatedMedusaRequest, res: MedusaResponse<HttpTypes.AdminRuleValueOptionsListResponse>) => Promise<void>;
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GET = void 0;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ const utils_2 = require("../../../utils");
6
+ const GET = async (req, res) => {
7
+ const { rule_type: ruleType, rule_attribute_id: ruleAttributeId } = req.params;
8
+ const queryConfig = utils_2.ruleQueryConfigurations[ruleAttributeId];
9
+ const query = req.scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
10
+ const filterableFields = { ...req.filterableFields };
11
+ if (filterableFields.value) {
12
+ filterableFields[queryConfig.valueAttr] = filterableFields.value;
13
+ delete filterableFields.value;
14
+ }
15
+ (0, utils_2.validateRuleType)(ruleType);
16
+ (0, utils_2.validateRuleAttribute)({
17
+ ruleType: ruleType,
18
+ ruleAttributeId,
19
+ promotionType: undefined,
20
+ applicationMethodType: undefined,
21
+ applicationMethodTargetType: filterableFields.application_method_target_type,
22
+ });
23
+ if (filterableFields.application_method_target_type) {
24
+ delete filterableFields.application_method_target_type;
25
+ }
26
+ // Offers are seller-owned; scope them to a store when the admin picks one
27
+ // (offer carries `seller_id` as a read-only column).
28
+ if (queryConfig.entryPoint === "offer" && req.query.seller_id) {
29
+ filterableFields.seller_id = req.query.seller_id;
30
+ }
31
+ const { data: rows, metadata } = await query.graph({
32
+ entity: queryConfig.entryPoint,
33
+ filters: filterableFields,
34
+ fields: [queryConfig.labelAttr, queryConfig.valueAttr],
35
+ pagination: req.queryConfig.pagination,
36
+ });
37
+ const values = rows.map((r) => ({
38
+ label: r[queryConfig.labelAttr],
39
+ value: r[queryConfig.valueAttr],
40
+ }));
41
+ res.json({
42
+ values,
43
+ count: metadata?.count ?? 0,
44
+ offset: metadata?.skip ?? 0,
45
+ limit: metadata?.take ?? 0,
46
+ });
47
+ };
48
+ exports.GET = GET;
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Byb21vdGlvbnMvcnVsZS12YWx1ZS1vcHRpb25zL1tydWxlX3R5cGVdL1tydWxlX2F0dHJpYnV0ZV9pZF0vcm91dGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBSUEscURBQXFFO0FBT3JFLDBDQUl1QjtBQUVoQixNQUFNLEdBQUcsR0FBRyxLQUFLLEVBQ3RCLEdBQStCLEVBQy9CLEdBQWdFLEVBQ2hFLEVBQUU7SUFDRixNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFBO0lBQzlFLE1BQU0sV0FBVyxHQUFHLCtCQUF1QixDQUFDLGVBQWUsQ0FBQyxDQUFBO0lBQzVELE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGlDQUF5QixDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ2hFLE1BQU0sZ0JBQWdCLEdBQXdCLEVBQUUsR0FBRyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQTtJQUV6RSxJQUFJLGdCQUFnQixDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzNCLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUE7UUFDaEUsT0FBTyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUE7SUFDL0IsQ0FBQztJQUVELElBQUEsd0JBQWdCLEVBQUMsUUFBUSxDQUFDLENBQUE7SUFDMUIsSUFBQSw2QkFBcUIsRUFBQztRQUNwQixRQUFRLEVBQUUsUUFBMEI7UUFDcEMsZUFBZTtRQUNmLGFBQWEsRUFBRSxTQUFTO1FBQ3hCLHFCQUFxQixFQUFFLFNBQVM7UUFDaEMsMkJBQTJCLEVBQ3pCLGdCQUFnQixDQUFDLDhCQUVKO0tBQ2hCLENBQUMsQ0FBQTtJQUVGLElBQUksZ0JBQWdCLENBQUMsOEJBQThCLEVBQUUsQ0FBQztRQUNwRCxPQUFPLGdCQUFnQixDQUFDLDhCQUE4QixDQUFBO0lBQ3hELENBQUM7SUFFRCwwRUFBMEU7SUFDMUUscURBQXFEO0lBQ3JELElBQUksV0FBVyxDQUFDLFVBQVUsS0FBSyxPQUFPLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUM5RCxnQkFBZ0IsQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUE7SUFDbEQsQ0FBQztJQUVELE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxHQUFHLE1BQU0sS0FBSyxDQUFDLEtBQUssQ0FBQztRQUNqRCxNQUFNLEVBQUUsV0FBVyxDQUFDLFVBQVU7UUFDOUIsT0FBTyxFQUFFLGdCQUFnQjtRQUN6QixNQUFNLEVBQUUsQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxTQUFTLENBQUM7UUFDdEQsVUFBVSxFQUFFLEdBQUcsQ0FBQyxXQUFXLENBQUMsVUFBVTtLQUN2QyxDQUFDLENBQUE7SUFFRixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ25DLEtBQUssRUFBRSxDQUFDLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQztRQUMvQixLQUFLLEVBQUUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUM7S0FDaEMsQ0FBQyxDQUFDLENBQUE7SUFFSCxHQUFHLENBQUMsSUFBSSxDQUFDO1FBQ1AsTUFBTTtRQUNOLEtBQUssRUFBRSxRQUFRLEVBQUUsS0FBSyxJQUFJLENBQUM7UUFDM0IsTUFBTSxFQUFFLFFBQVEsRUFBRSxJQUFJLElBQUksQ0FBQztRQUMzQixLQUFLLEVBQUUsUUFBUSxFQUFFLElBQUksSUFBSSxDQUFDO0tBQzNCLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQTtBQXREWSxRQUFBLEdBQUcsT0FzRGYifQ==
@@ -0,0 +1,5 @@
1
+ export * from "./operators-map";
2
+ export * from "./rule-attributes-map";
3
+ export * from "./rule-query-configuration";
4
+ export * from "./validate-rule-attribute";
5
+ export * from "./validate-rule-type";
@@ -0,0 +1,22 @@
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("./operators-map"), exports);
18
+ __exportStar(require("./rule-attributes-map"), exports);
19
+ __exportStar(require("./rule-query-configuration"), exports);
20
+ __exportStar(require("./validate-rule-attribute"), exports);
21
+ __exportStar(require("./validate-rule-type"), exports);
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Byb21vdGlvbnMvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGtEQUErQjtBQUMvQix3REFBcUM7QUFDckMsNkRBQTBDO0FBQzFDLDREQUF5QztBQUN6Qyx1REFBb0MifQ==
@@ -0,0 +1,18 @@
1
+ import { RuleOperator } from "@medusajs/framework/utils";
2
+ export declare const operatorsMap: {
3
+ in: {
4
+ id: RuleOperator;
5
+ value: RuleOperator;
6
+ label: string;
7
+ };
8
+ eq: {
9
+ id: RuleOperator;
10
+ value: RuleOperator;
11
+ label: string;
12
+ };
13
+ ne: {
14
+ id: RuleOperator;
15
+ value: RuleOperator;
16
+ label: string;
17
+ };
18
+ };
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.operatorsMap = void 0;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ exports.operatorsMap = {
6
+ [utils_1.RuleOperator.IN]: {
7
+ id: utils_1.RuleOperator.IN,
8
+ value: utils_1.RuleOperator.IN,
9
+ label: "In",
10
+ },
11
+ [utils_1.RuleOperator.EQ]: {
12
+ id: utils_1.RuleOperator.EQ,
13
+ value: utils_1.RuleOperator.EQ,
14
+ label: "Equals",
15
+ },
16
+ [utils_1.RuleOperator.NE]: {
17
+ id: utils_1.RuleOperator.NE,
18
+ value: utils_1.RuleOperator.NE,
19
+ label: "Not In",
20
+ },
21
+ };
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0b3JzLW1hcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcGkvYWRtaW4vcHJvbW90aW9ucy91dGlscy9vcGVyYXRvcnMtbWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFEQUF3RDtBQUUzQyxRQUFBLFlBQVksR0FBRztJQUMxQixDQUFDLG9CQUFZLENBQUMsRUFBRSxDQUFDLEVBQUU7UUFDakIsRUFBRSxFQUFFLG9CQUFZLENBQUMsRUFBRTtRQUNuQixLQUFLLEVBQUUsb0JBQVksQ0FBQyxFQUFFO1FBQ3RCLEtBQUssRUFBRSxJQUFJO0tBQ1o7SUFDRCxDQUFDLG9CQUFZLENBQUMsRUFBRSxDQUFDLEVBQUU7UUFDakIsRUFBRSxFQUFFLG9CQUFZLENBQUMsRUFBRTtRQUNuQixLQUFLLEVBQUUsb0JBQVksQ0FBQyxFQUFFO1FBQ3RCLEtBQUssRUFBRSxRQUFRO0tBQ2hCO0lBQ0QsQ0FBQyxvQkFBWSxDQUFDLEVBQUUsQ0FBQyxFQUFFO1FBQ2pCLEVBQUUsRUFBRSxvQkFBWSxDQUFDLEVBQUU7UUFDbkIsS0FBSyxFQUFFLG9CQUFZLENBQUMsRUFBRTtRQUN0QixLQUFLLEVBQUUsUUFBUTtLQUNoQjtDQUNGLENBQUEifQ==
@@ -0,0 +1,11 @@
1
+ import { ApplicationMethodTargetTypeValues, ApplicationMethodTypeValues, PromotionTypeValues } from "@medusajs/types";
2
+ export declare enum DisguisedRule {
3
+ APPLY_TO_QUANTITY = "apply_to_quantity",
4
+ BUY_RULES_MIN_QUANTITY = "buy_rules_min_quantity",
5
+ CURRENCY_CODE = "currency_code"
6
+ }
7
+ export declare const getRuleAttributesMap: ({ promotionType, applicationMethodType, applicationMethodTargetType, }: {
8
+ promotionType?: PromotionTypeValues;
9
+ applicationMethodType?: ApplicationMethodTypeValues;
10
+ applicationMethodTargetType?: ApplicationMethodTargetTypeValues;
11
+ }) => Record<string, any[]>;