@medusajs/pricing 0.1.8 → 0.1.9-next-20240208080225

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 (32) hide show
  1. package/dist/joiner-config.js +12 -23
  2. package/dist/schema/index.d.ts +2 -0
  3. package/dist/schema/index.js +19 -0
  4. package/dist/scripts/bin/run-seed.js +0 -0
  5. package/dist/services/index.d.ts +0 -6
  6. package/dist/services/index.js +1 -13
  7. package/dist/services/price-list-rule-value.d.ts +3 -8
  8. package/dist/services/price-list-rule-value.js +3 -2
  9. package/dist/services/price-list-rule.d.ts +5 -10
  10. package/dist/services/price-list-rule.js +7 -3
  11. package/dist/services/price-list.d.ts +4 -6
  12. package/dist/services/price-list.js +7 -3
  13. package/dist/services/price-rule.d.ts +2 -7
  14. package/dist/services/price-rule.js +4 -3
  15. package/dist/services/pricing-module.d.ts +44 -54
  16. package/dist/services/pricing-module.js +35 -492
  17. package/dist/services/rule-type.d.ts +5 -10
  18. package/dist/services/rule-type.js +15 -8
  19. package/dist/types/repositories/index.d.ts +0 -68
  20. package/package.json +4 -4
  21. package/dist/services/currency.d.ts +0 -18
  22. package/dist/services/currency.js +0 -11
  23. package/dist/services/money-amount.d.ts +0 -18
  24. package/dist/services/money-amount.js +0 -11
  25. package/dist/services/price-set-money-amount-rules.d.ts +0 -18
  26. package/dist/services/price-set-money-amount-rules.js +0 -11
  27. package/dist/services/price-set-money-amount.d.ts +0 -18
  28. package/dist/services/price-set-money-amount.js +0 -11
  29. package/dist/services/price-set-rule-type.d.ts +0 -18
  30. package/dist/services/price-set-rule-type.js +0 -11
  31. package/dist/services/price-set.d.ts +0 -18
  32. package/dist/services/price-set.js +0 -11
@@ -1,8 +1,12 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.joinerConfig = exports.entityNameToLinkableKeysMap = exports.LinkableKeys = void 0;
4
7
  const modules_sdk_1 = require("@medusajs/modules-sdk");
5
8
  const _models_1 = require("./models");
9
+ const schema_1 = __importDefault(require("./schema"));
6
10
  exports.LinkableKeys = {
7
11
  money_amount_id: _models_1.MoneyAmount.name,
8
12
  currency_code: _models_1.Currency.name,
@@ -23,45 +27,30 @@ exports.joinerConfig = {
23
27
  serviceName: modules_sdk_1.Modules.PRICING,
24
28
  primaryKeys: ["id"],
25
29
  linkableKeys: exports.LinkableKeys,
30
+ schema: schema_1.default,
26
31
  alias: [
27
32
  {
28
- name: "price_set",
29
- },
30
- {
31
- name: "price_sets",
32
- },
33
- {
34
- name: "money_amount",
33
+ name: ["price_set", "price_sets"],
35
34
  args: {
36
- methodSuffix: "MoneyAmounts",
35
+ entity: "PriceSet",
37
36
  },
38
37
  },
39
38
  {
40
- name: "money_amounts",
39
+ name: ["money_amount", "money_amounts"],
41
40
  args: {
42
41
  methodSuffix: "MoneyAmounts",
42
+ entity: "MoneyAmount",
43
43
  },
44
44
  },
45
45
  {
46
- name: "currency",
47
- args: {
48
- methodSuffix: "Currencies",
49
- },
50
- },
51
- {
52
- name: "currencies",
46
+ name: ["currency", "currencies"],
53
47
  args: {
54
48
  methodSuffix: "Currencies",
49
+ entity: "Currency",
55
50
  },
56
51
  },
57
52
  {
58
- name: "price_list",
59
- args: {
60
- methodSuffix: "PriceLists",
61
- },
62
- },
63
- {
64
- name: "price_lists",
53
+ name: ["price_list", "price_lists"],
65
54
  args: {
66
55
  methodSuffix: "PriceLists",
67
56
  },
@@ -0,0 +1,2 @@
1
+ export declare const schema = "\ntype PriceSet {\n id: String!\n money_amounts: [MoneyAmount]\n}\n\ntype MoneyAmount {\n id: String!\n currency_code: String\n currency: Currency\n amount: Float\n min_quantity: Float\n max_quantity: Float\n}\n";
2
+ export default schema;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.schema = void 0;
4
+ exports.schema = `
5
+ type PriceSet {
6
+ id: String!
7
+ money_amounts: [MoneyAmount]
8
+ }
9
+
10
+ type MoneyAmount {
11
+ id: String!
12
+ currency_code: String
13
+ currency: Currency
14
+ amount: Float
15
+ min_quantity: Float
16
+ max_quantity: Float
17
+ }
18
+ `;
19
+ exports.default = exports.schema;
File without changes
@@ -1,12 +1,6 @@
1
- export { default as CurrencyService } from "./currency";
2
- export { default as MoneyAmountService } from "./money-amount";
3
1
  export { default as PriceListService } from "./price-list";
4
2
  export { default as PriceListRuleService } from "./price-list-rule";
5
3
  export { default as PriceListRuleValueService } from "./price-list-rule-value";
6
4
  export { default as PriceRuleService } from "./price-rule";
7
- export { default as PriceSetService } from "./price-set";
8
- export { default as PriceSetMoneyAmountService } from "./price-set-money-amount";
9
- export { default as PriceSetMoneyAmountRulesService } from "./price-set-money-amount-rules";
10
- export { default as PriceSetRuleTypeService } from "./price-set-rule-type";
11
5
  export { default as PricingModuleService } from "./pricing-module";
12
6
  export { default as RuleTypeService } from "./rule-type";
@@ -3,11 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.RuleTypeService = exports.PricingModuleService = exports.PriceSetRuleTypeService = exports.PriceSetMoneyAmountRulesService = exports.PriceSetMoneyAmountService = exports.PriceSetService = exports.PriceRuleService = exports.PriceListRuleValueService = exports.PriceListRuleService = exports.PriceListService = exports.MoneyAmountService = exports.CurrencyService = void 0;
7
- var currency_1 = require("./currency");
8
- Object.defineProperty(exports, "CurrencyService", { enumerable: true, get: function () { return __importDefault(currency_1).default; } });
9
- var money_amount_1 = require("./money-amount");
10
- Object.defineProperty(exports, "MoneyAmountService", { enumerable: true, get: function () { return __importDefault(money_amount_1).default; } });
6
+ exports.RuleTypeService = exports.PricingModuleService = exports.PriceRuleService = exports.PriceListRuleValueService = exports.PriceListRuleService = exports.PriceListService = void 0;
11
7
  var price_list_1 = require("./price-list");
12
8
  Object.defineProperty(exports, "PriceListService", { enumerable: true, get: function () { return __importDefault(price_list_1).default; } });
13
9
  var price_list_rule_1 = require("./price-list-rule");
@@ -16,14 +12,6 @@ var price_list_rule_value_1 = require("./price-list-rule-value");
16
12
  Object.defineProperty(exports, "PriceListRuleValueService", { enumerable: true, get: function () { return __importDefault(price_list_rule_value_1).default; } });
17
13
  var price_rule_1 = require("./price-rule");
18
14
  Object.defineProperty(exports, "PriceRuleService", { enumerable: true, get: function () { return __importDefault(price_rule_1).default; } });
19
- var price_set_1 = require("./price-set");
20
- Object.defineProperty(exports, "PriceSetService", { enumerable: true, get: function () { return __importDefault(price_set_1).default; } });
21
- var price_set_money_amount_1 = require("./price-set-money-amount");
22
- Object.defineProperty(exports, "PriceSetMoneyAmountService", { enumerable: true, get: function () { return __importDefault(price_set_money_amount_1).default; } });
23
- var price_set_money_amount_rules_1 = require("./price-set-money-amount-rules");
24
- Object.defineProperty(exports, "PriceSetMoneyAmountRulesService", { enumerable: true, get: function () { return __importDefault(price_set_money_amount_rules_1).default; } });
25
- var price_set_rule_type_1 = require("./price-set-rule-type");
26
- Object.defineProperty(exports, "PriceSetRuleTypeService", { enumerable: true, get: function () { return __importDefault(price_set_rule_type_1).default; } });
27
15
  var pricing_module_1 = require("./pricing-module");
28
16
  Object.defineProperty(exports, "PricingModuleService", { enumerable: true, get: function () { return __importDefault(pricing_module_1).default; } });
29
17
  var rule_type_1 = require("./rule-type");
@@ -1,18 +1,13 @@
1
1
  import { Context, DAL } from "@medusajs/types";
2
- import { ModulesSdkUtils } from "@medusajs/utils";
3
2
  import { PriceListRuleValue } from "../models";
4
3
  import { ServiceTypes } from "../types";
5
4
  type InjectedDependencies = {
6
5
  priceListRuleValueRepository: DAL.RepositoryService;
7
6
  };
8
- declare const PriceListRuleValueService_base: new <TEntity_1 extends object = any>(container: InjectedDependencies) => ModulesSdkUtils.AbstractService<TEntity_1, InjectedDependencies, {
9
- update: ServiceTypes.UpdatePriceListRuleValueDTO;
10
- }, {
11
- list: ServiceTypes.FilterablePriceListRuleValueProps;
12
- listAndCount: ServiceTypes.FilterablePriceListRuleValueProps;
13
- }>;
7
+ declare const PriceListRuleValueService_base: new <TEntity_1 extends object = any>(container: InjectedDependencies) => import("@medusajs/types").InternalModuleService<TEntity_1, InjectedDependencies>;
14
8
  export default class PriceListRuleValueService<TEntity extends PriceListRuleValue = PriceListRuleValue> extends PriceListRuleValueService_base<TEntity> {
15
9
  constructor(container: InjectedDependencies);
16
- create(data: ServiceTypes.CreatePriceListRuleValueDTO[], context?: Context): Promise<TEntity[]>;
10
+ create(data: ServiceTypes.CreatePriceListRuleValueDTO[], context: Context): Promise<TEntity[]>;
11
+ create(data: ServiceTypes.CreatePriceListRuleValueDTO, context: Context): Promise<TEntity>;
17
12
  }
18
13
  export {};
@@ -2,13 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const utils_1 = require("@medusajs/utils");
4
4
  const _models_1 = require("../models");
5
- class PriceListRuleValueService extends utils_1.ModulesSdkUtils.abstractServiceFactory(_models_1.PriceListRuleValue) {
5
+ class PriceListRuleValueService extends utils_1.ModulesSdkUtils.internalModuleServiceFactory(_models_1.PriceListRuleValue) {
6
6
  constructor(container) {
7
7
  // @ts-ignore
8
8
  super(...arguments);
9
9
  }
10
10
  async create(data, context = {}) {
11
- const priceListRuleValues = data.map((priceRuleValueData) => {
11
+ const data_ = Array.isArray(data) ? data : [data];
12
+ const priceListRuleValues = data_.map((priceRuleValueData) => {
12
13
  const { price_list_rule_id: priceListRuleId, ...priceRuleValue } = priceRuleValueData;
13
14
  if (priceListRuleId) {
14
15
  priceRuleValue.price_list_rule = priceListRuleId;
@@ -1,20 +1,15 @@
1
1
  import { Context, DAL } from "@medusajs/types";
2
- import { ModulesSdkUtils } from "@medusajs/utils";
3
2
  import { PriceListRule } from "../models";
4
3
  import { ServiceTypes } from "../types";
5
4
  type InjectedDependencies = {
6
5
  priceListRuleRepository: DAL.RepositoryService;
7
6
  };
8
- declare const PriceListRuleService_base: new <TEntity_1 extends object = any>(container: InjectedDependencies) => ModulesSdkUtils.AbstractService<TEntity_1, InjectedDependencies, {
9
- create: ServiceTypes.CreatePriceListRuleDTO;
10
- update: ServiceTypes.UpdatePriceListRuleDTO;
11
- }, {
12
- list: ServiceTypes.FilterablePriceListRuleProps;
13
- listAndCount: ServiceTypes.FilterablePriceListRuleProps;
14
- }>;
7
+ declare const PriceListRuleService_base: new <TEntity_1 extends object = any>(container: InjectedDependencies) => import("@medusajs/types").InternalModuleService<TEntity_1, InjectedDependencies>;
15
8
  export default class PriceListRuleService<TEntity extends PriceListRule = PriceListRule> extends PriceListRuleService_base<TEntity> {
16
9
  constructor(container: InjectedDependencies);
17
- create(data: ServiceTypes.CreatePriceListRuleDTO[], context?: Context): Promise<TEntity[]>;
18
- update(data: ServiceTypes.UpdatePriceListRuleDTO[], context?: Context): Promise<TEntity[]>;
10
+ create(data: ServiceTypes.CreatePriceListRuleDTO[], sharedContext?: Context): Promise<TEntity[]>;
11
+ create(data: ServiceTypes.CreatePriceListRuleDTO, sharedContext?: Context): Promise<TEntity>;
12
+ update(data: ServiceTypes.UpdatePriceListRuleDTO[], context: Context): Promise<TEntity[]>;
13
+ update(data: ServiceTypes.UpdatePriceListRuleDTO, context: Context): Promise<TEntity>;
19
14
  }
20
15
  export {};
@@ -2,13 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const utils_1 = require("@medusajs/utils");
4
4
  const _models_1 = require("../models");
5
- class PriceListRuleService extends utils_1.ModulesSdkUtils.abstractServiceFactory(_models_1.PriceListRule) {
5
+ class PriceListRuleService extends utils_1.ModulesSdkUtils.internalModuleServiceFactory(_models_1.PriceListRule) {
6
6
  constructor(container) {
7
7
  // @ts-ignore
8
8
  super(...arguments);
9
9
  }
10
10
  async create(data, context = {}) {
11
- const priceListRule = data.map((priceListRule) => {
11
+ const data_ = Array.isArray(data) ? data : [data];
12
+ const priceListRule = data_.map((priceListRule) => {
12
13
  const { price_list_id: priceListId, rule_type_id: ruleTypeId, ...createData } = priceListRule;
13
14
  if (priceListId) {
14
15
  createData.price_list = priceListId;
@@ -20,8 +21,11 @@ class PriceListRuleService extends utils_1.ModulesSdkUtils.abstractServiceFactor
20
21
  });
21
22
  return await super.create(priceListRule, context);
22
23
  }
24
+ // TODO add support for selector? and then rm ts ignore
25
+ // @ts-ignore
23
26
  async update(data, context = {}) {
24
- const priceListRules = data.map((priceListRule) => {
27
+ const data_ = Array.isArray(data) ? data : [data];
28
+ const priceListRules = data_.map((priceListRule) => {
25
29
  const { price_list_id, rule_type_id, ...priceListRuleData } = priceListRule;
26
30
  if (price_list_id) {
27
31
  priceListRuleData.price_list = price_list_id;
@@ -1,18 +1,16 @@
1
1
  import { Context, DAL } from "@medusajs/types";
2
- import { ModulesSdkUtils } from "@medusajs/utils";
3
2
  import { PriceList } from "../models";
4
3
  import { ServiceTypes } from "../types";
5
4
  type InjectedDependencies = {
6
5
  priceListRepository: DAL.RepositoryService;
7
6
  };
8
- declare const PriceListService_base: new <TEntity_1 extends object = any>(container: InjectedDependencies) => ModulesSdkUtils.AbstractService<TEntity_1, InjectedDependencies, {}, {
9
- list: ServiceTypes.FilterablePriceListProps;
10
- listAndCount: ServiceTypes.FilterablePriceListProps;
11
- }>;
7
+ declare const PriceListService_base: new <TEntity_1 extends object = any>(container: InjectedDependencies) => import("@medusajs/types").InternalModuleService<TEntity_1, InjectedDependencies>;
12
8
  export default class PriceListService<TEntity extends PriceList = PriceList> extends PriceListService_base<TEntity> {
13
9
  constructor(container: InjectedDependencies);
14
10
  create(data: ServiceTypes.CreatePriceListDTO[], sharedContext?: Context): Promise<TEntity[]>;
15
- update(data: ServiceTypes.UpdatePriceListDTO[], sharedContext?: Context): Promise<TEntity[]>;
11
+ create(data: ServiceTypes.CreatePriceListDTO, sharedContext?: Context): Promise<TEntity>;
12
+ update(data: any[], sharedContext?: Context): Promise<TEntity[]>;
13
+ update(data: any, sharedContext?: Context): Promise<TEntity>;
16
14
  protected normalizePriceListDate(data: (ServiceTypes.UpdatePriceListDTO | ServiceTypes.CreatePriceListDTO)[]): any[];
17
15
  }
18
16
  export {};
@@ -2,17 +2,21 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const utils_1 = require("@medusajs/utils");
4
4
  const _models_1 = require("../models");
5
- class PriceListService extends utils_1.ModulesSdkUtils.abstractServiceFactory(_models_1.PriceList) {
5
+ class PriceListService extends utils_1.ModulesSdkUtils.internalModuleServiceFactory(_models_1.PriceList) {
6
6
  constructor(container) {
7
7
  // @ts-ignore
8
8
  super(...arguments);
9
9
  }
10
10
  async create(data, sharedContext) {
11
- const priceLists = this.normalizePriceListDate(data);
11
+ const data_ = Array.isArray(data) ? data : [data];
12
+ const priceLists = this.normalizePriceListDate(data_);
12
13
  return await super.create(priceLists, sharedContext);
13
14
  }
15
+ // TODO: Add support for selector? and then rm ts ignore
16
+ // @ts-ignore
14
17
  async update(data, sharedContext) {
15
- const priceLists = this.normalizePriceListDate(data);
18
+ const data_ = Array.isArray(data) ? data : [data];
19
+ const priceLists = this.normalizePriceListDate(data_);
16
20
  return await super.update(priceLists, sharedContext);
17
21
  }
18
22
  normalizePriceListDate(data) {
@@ -1,18 +1,13 @@
1
1
  import { Context, DAL } from "@medusajs/types";
2
- import { ModulesSdkUtils } from "@medusajs/utils";
3
2
  import { PriceRule } from "../models";
4
3
  import { ServiceTypes } from "../types";
5
4
  type InjectedDependencies = {
6
5
  priceRuleRepository: DAL.RepositoryService;
7
6
  };
8
- declare const PriceRuleService_base: new <TEntity_1 extends object = any>(container: InjectedDependencies) => ModulesSdkUtils.AbstractService<TEntity_1, InjectedDependencies, {
9
- update: ServiceTypes.UpdatePriceRuleDTO;
10
- }, {
11
- list: ServiceTypes.FilterablePriceRuleProps;
12
- listAndCount: ServiceTypes.FilterablePriceRuleProps;
13
- }>;
7
+ declare const PriceRuleService_base: new <TEntity_1 extends object = any>(container: InjectedDependencies) => import("@medusajs/types").InternalModuleService<TEntity_1, InjectedDependencies>;
14
8
  export default class PriceRuleService<TEntity extends PriceRule = PriceRule> extends PriceRuleService_base<TEntity> {
15
9
  constructor(container: InjectedDependencies);
16
10
  create(data: ServiceTypes.CreatePriceRuleDTO[], sharedContext?: Context): Promise<TEntity[]>;
11
+ create(data: ServiceTypes.CreatePriceRuleDTO, sharedContext?: Context): Promise<TEntity>;
17
12
  }
18
13
  export {};
@@ -2,13 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const utils_1 = require("@medusajs/utils");
4
4
  const _models_1 = require("../models");
5
- class PriceRuleService extends utils_1.ModulesSdkUtils.abstractServiceFactory(_models_1.PriceRule) {
5
+ class PriceRuleService extends utils_1.ModulesSdkUtils.internalModuleServiceFactory(_models_1.PriceRule) {
6
6
  constructor(container) {
7
7
  // @ts-ignore
8
8
  super(...arguments);
9
9
  }
10
- async create(data, sharedContext) {
11
- const toCreate = data.map((ruleData) => {
10
+ async create(data, sharedContext = {}) {
11
+ const data_ = Array.isArray(data) ? data : [data];
12
+ const toCreate = data_.map((ruleData) => {
12
13
  const ruleDataClone = { ...ruleData };
13
14
  ruleDataClone.rule_type ?? (ruleDataClone.rule_type = ruleData.rule_type_id);
14
15
  ruleDataClone.price_set ?? (ruleDataClone.price_set = ruleData.price_set_id);
@@ -1,43 +1,66 @@
1
- import { AddPricesDTO, Context, DAL, FindConfig, InternalModuleDeclaration, ModuleJoinerConfig, MoneyAmountDTO, PriceSetDTO, PricingContext, PricingFilters, PricingRepositoryService, PricingTypes, RestoreReturn } from "@medusajs/types";
1
+ import { AddPricesDTO, Context, DAL, InternalModuleDeclaration, ModuleJoinerConfig, ModulesSdkTypes, PriceSetDTO, PricingContext, PricingFilters, PricingRepositoryService, PricingTypes, RuleTypeDTO } from "@medusajs/types";
2
+ import { ModulesSdkUtils } from "@medusajs/utils";
2
3
  import { Currency, MoneyAmount, PriceList, PriceListRule, PriceListRuleValue, PriceRule, PriceSet, PriceSetMoneyAmount, PriceSetMoneyAmountRules, PriceSetRuleType, RuleType } from "../models";
3
- import { CurrencyService, MoneyAmountService, PriceListRuleService, PriceListRuleValueService, PriceListService, PriceRuleService, PriceSetMoneyAmountRulesService, PriceSetMoneyAmountService, PriceSetRuleTypeService, PriceSetService, RuleTypeService } from ".";
4
- import { LinkableKeys } from "../joiner-config";
4
+ import { PriceListRuleService, PriceListRuleValueService, PriceListService, PriceRuleService, RuleTypeService } from ".";
5
5
  type InjectedDependencies = {
6
6
  baseRepository: DAL.RepositoryService;
7
7
  pricingRepository: PricingRepositoryService;
8
- currencyService: CurrencyService<any>;
9
- moneyAmountService: MoneyAmountService<any>;
10
- priceSetService: PriceSetService<any>;
11
- priceSetMoneyAmountRulesService: PriceSetMoneyAmountRulesService<any>;
8
+ currencyService: ModulesSdkTypes.InternalModuleService<any>;
9
+ moneyAmountService: ModulesSdkTypes.InternalModuleService<any>;
10
+ priceSetService: ModulesSdkTypes.InternalModuleService<any>;
11
+ priceSetMoneyAmountRulesService: ModulesSdkTypes.InternalModuleService<any>;
12
12
  ruleTypeService: RuleTypeService<any>;
13
13
  priceRuleService: PriceRuleService<any>;
14
- priceSetRuleTypeService: PriceSetRuleTypeService<any>;
15
- priceSetMoneyAmountService: PriceSetMoneyAmountService<any>;
14
+ priceSetRuleTypeService: ModulesSdkTypes.InternalModuleService<any>;
15
+ priceSetMoneyAmountService: ModulesSdkTypes.InternalModuleService<any>;
16
16
  priceListService: PriceListService<any>;
17
17
  priceListRuleService: PriceListRuleService<any>;
18
18
  priceListRuleValueService: PriceListRuleValueService<any>;
19
19
  };
20
- export default class PricingModuleService<TPriceSet extends PriceSet = PriceSet, TMoneyAmount extends MoneyAmount = MoneyAmount, TCurrency extends Currency = Currency, TRuleType extends RuleType = RuleType, TPriceSetMoneyAmountRules extends PriceSetMoneyAmountRules = PriceSetMoneyAmountRules, TPriceRule extends PriceRule = PriceRule, TPriceSetRuleType extends PriceSetRuleType = PriceSetRuleType, TPriceSetMoneyAmount extends PriceSetMoneyAmount = PriceSetMoneyAmount, TPriceList extends PriceList = PriceList, TPriceListRule extends PriceListRule = PriceListRule, TPriceListRuleValue extends PriceListRuleValue = PriceListRuleValue> implements PricingTypes.IPricingModuleService {
20
+ declare const PricingModuleService_base: new (container: InjectedDependencies) => ModulesSdkUtils.AbstractModuleService<InjectedDependencies, PriceSetDTO, {
21
+ Currency: {
22
+ dto: PricingTypes.CurrencyDTO;
23
+ };
24
+ MoneyAmount: {
25
+ dto: PricingTypes.MoneyAmountDTO;
26
+ };
27
+ PriceSetMoneyAmount: {
28
+ dto: PricingTypes.PriceSetMoneyAmountDTO;
29
+ };
30
+ PriceSetMoneyAmountRules: {
31
+ dto: PricingTypes.PriceSetMoneyAmountRulesDTO;
32
+ };
33
+ PriceRule: {
34
+ dto: PricingTypes.PriceRuleDTO;
35
+ };
36
+ RuleType: {
37
+ dto: PricingTypes.RuleTypeDTO;
38
+ };
39
+ PriceList: {
40
+ dto: PricingTypes.PriceListDTO;
41
+ };
42
+ PriceListRule: {
43
+ dto: PricingTypes.PriceListRuleDTO;
44
+ };
45
+ }>;
46
+ export default class PricingModuleService<TPriceSet extends PriceSet = PriceSet, TMoneyAmount extends MoneyAmount = MoneyAmount, TCurrency extends Currency = Currency, TRuleType extends RuleType = RuleType, TPriceSetMoneyAmountRules extends PriceSetMoneyAmountRules = PriceSetMoneyAmountRules, TPriceRule extends PriceRule = PriceRule, TPriceSetRuleType extends PriceSetRuleType = PriceSetRuleType, TPriceSetMoneyAmount extends PriceSetMoneyAmount = PriceSetMoneyAmount, TPriceList extends PriceList = PriceList, TPriceListRule extends PriceListRule = PriceListRule, TPriceListRuleValue extends PriceListRuleValue = PriceListRuleValue> extends PricingModuleService_base implements PricingTypes.IPricingModuleService {
21
47
  protected readonly moduleDeclaration: InternalModuleDeclaration;
22
48
  protected baseRepository_: DAL.RepositoryService;
23
49
  protected readonly pricingRepository_: PricingRepositoryService;
24
- protected readonly currencyService_: CurrencyService<TCurrency>;
25
- protected readonly moneyAmountService_: MoneyAmountService<TMoneyAmount>;
50
+ protected readonly currencyService_: ModulesSdkTypes.InternalModuleService<TCurrency>;
51
+ protected readonly moneyAmountService_: ModulesSdkTypes.InternalModuleService<TMoneyAmount>;
26
52
  protected readonly ruleTypeService_: RuleTypeService<TRuleType>;
27
- protected readonly priceSetService_: PriceSetService<TPriceSet>;
28
- protected readonly priceSetMoneyAmountRulesService_: PriceSetMoneyAmountRulesService<TPriceSetMoneyAmountRules>;
53
+ protected readonly priceSetService_: ModulesSdkTypes.InternalModuleService<TPriceSet>;
54
+ protected readonly priceSetMoneyAmountRulesService_: ModulesSdkTypes.InternalModuleService<TPriceSetMoneyAmountRules>;
29
55
  protected readonly priceRuleService_: PriceRuleService<TPriceRule>;
30
- protected readonly priceSetRuleTypeService_: PriceSetRuleTypeService<TPriceSetRuleType>;
31
- protected readonly priceSetMoneyAmountService_: PriceSetMoneyAmountService<TPriceSetMoneyAmount>;
56
+ protected readonly priceSetRuleTypeService_: ModulesSdkTypes.InternalModuleService<TPriceSetRuleType>;
57
+ protected readonly priceSetMoneyAmountService_: ModulesSdkTypes.InternalModuleService<TPriceSetMoneyAmount>;
32
58
  protected readonly priceListService_: PriceListService<TPriceList>;
33
59
  protected readonly priceListRuleService_: PriceListRuleService<TPriceListRule>;
34
60
  protected readonly priceListRuleValueService_: PriceListRuleValueService<TPriceListRuleValue>;
35
61
  constructor({ baseRepository, pricingRepository, moneyAmountService, currencyService, ruleTypeService, priceSetService, priceSetMoneyAmountRulesService, priceRuleService, priceSetRuleTypeService, priceSetMoneyAmountService, priceListService, priceListRuleService, priceListRuleValueService, }: InjectedDependencies, moduleDeclaration: InternalModuleDeclaration);
36
62
  __joinerConfig(): ModuleJoinerConfig;
37
63
  calculatePrices(pricingFilters: PricingFilters, pricingContext?: PricingContext, sharedContext?: Context): Promise<PricingTypes.CalculatedPriceSet[]>;
38
- retrieve(id: string, config?: FindConfig<PricingTypes.PriceSetDTO>, sharedContext?: Context): Promise<PricingTypes.PriceSetDTO>;
39
- list(filters?: PricingTypes.FilterablePriceSetProps, config?: FindConfig<PricingTypes.PriceSetDTO>, sharedContext?: Context): Promise<PricingTypes.PriceSetDTO[]>;
40
- listAndCount(filters?: PricingTypes.FilterablePriceSetProps, config?: FindConfig<PricingTypes.PriceSetDTO>, sharedContext?: Context): Promise<[PricingTypes.PriceSetDTO[], number]>;
41
64
  create(data: PricingTypes.CreatePriceSetDTO, sharedContext?: Context): Promise<PriceSetDTO>;
42
65
  create(data: PricingTypes.CreatePriceSetDTO[], sharedContext?: Context): Promise<PriceSetDTO[]>;
43
66
  protected create_(data: PricingTypes.CreatePriceSetDTO[], sharedContext?: Context): Promise<TPriceSet[]>;
@@ -49,56 +72,23 @@ export default class PricingModuleService<TPriceSet extends PriceSet = PriceSet,
49
72
  protected addPrices_(input: AddPricesDTO[], sharedContext?: Context): Promise<void>;
50
73
  removeRules(data: PricingTypes.RemovePriceSetRulesDTO[], sharedContext?: Context): Promise<void>;
51
74
  update(data: PricingTypes.UpdatePriceSetDTO[], sharedContext?: Context): Promise<PriceSetDTO[]>;
52
- delete(ids: string[], sharedContext?: Context): Promise<void>;
53
- retrieveMoneyAmount(id: string, config?: FindConfig<PricingTypes.MoneyAmountDTO>, sharedContext?: Context): Promise<PricingTypes.MoneyAmountDTO>;
54
- listMoneyAmounts(filters?: PricingTypes.FilterableMoneyAmountProps, config?: FindConfig<PricingTypes.MoneyAmountDTO>, sharedContext?: Context): Promise<PricingTypes.MoneyAmountDTO[]>;
55
- listAndCountMoneyAmounts(filters?: PricingTypes.FilterableMoneyAmountProps, config?: FindConfig<PricingTypes.MoneyAmountDTO>, sharedContext?: Context): Promise<[PricingTypes.MoneyAmountDTO[], number]>;
56
- createMoneyAmounts(data: PricingTypes.CreateMoneyAmountDTO[], sharedContext?: Context): Promise<MoneyAmountDTO[]>;
57
- updateMoneyAmounts(data: PricingTypes.UpdateMoneyAmountDTO[], sharedContext?: Context): Promise<MoneyAmountDTO[]>;
58
- deleteMoneyAmounts(ids: string[], sharedContext?: Context): Promise<void>;
59
- softDeleteMoneyAmounts(ids: string[], sharedContext?: Context): Promise<void>;
60
- restoreDeletedMoneyAmounts<TReturnableLinkableKeys extends string = Lowercase<keyof typeof LinkableKeys>>(ids: string[], { returnLinkableKeys }?: RestoreReturn<TReturnableLinkableKeys>, sharedContext?: Context): Promise<Record<Lowercase<keyof typeof LinkableKeys>, string[]> | void>;
61
- retrieveCurrency(code: string, config?: FindConfig<PricingTypes.CurrencyDTO>, sharedContext?: Context): Promise<PricingTypes.CurrencyDTO>;
62
- listCurrencies(filters?: PricingTypes.FilterableCurrencyProps, config?: FindConfig<PricingTypes.CurrencyDTO>, sharedContext?: Context): Promise<PricingTypes.CurrencyDTO[]>;
63
- listAndCountCurrencies(filters?: PricingTypes.FilterableCurrencyProps, config?: FindConfig<PricingTypes.CurrencyDTO>, sharedContext?: Context): Promise<[PricingTypes.CurrencyDTO[], number]>;
75
+ createMoneyAmounts(data: PricingTypes.CreateMoneyAmountDTO[], sharedContext?: Context): Promise<PricingTypes.MoneyAmountDTO[]>;
76
+ updateMoneyAmounts(data: PricingTypes.UpdateMoneyAmountDTO[], sharedContext?: Context): Promise<PricingTypes.MoneyAmountDTO[]>;
64
77
  createCurrencies(data: PricingTypes.CreateCurrencyDTO[], sharedContext?: Context): Promise<PricingTypes.CurrencyDTO[]>;
65
78
  updateCurrencies(data: PricingTypes.UpdateCurrencyDTO[], sharedContext?: Context): Promise<PricingTypes.CurrencyDTO[]>;
66
- deleteCurrencies(currencyCodes: string[], sharedContext?: Context): Promise<void>;
67
- retrieveRuleType(id: string, config?: FindConfig<PricingTypes.RuleTypeDTO>, sharedContext?: Context): Promise<PricingTypes.RuleTypeDTO>;
68
- listRuleTypes(filters?: PricingTypes.FilterableRuleTypeProps, config?: FindConfig<PricingTypes.RuleTypeDTO>, sharedContext?: Context): Promise<PricingTypes.RuleTypeDTO[]>;
69
- listAndCountRuleTypes(filters?: PricingTypes.FilterableRuleTypeProps, config?: FindConfig<PricingTypes.RuleTypeDTO>, sharedContext?: Context): Promise<[PricingTypes.RuleTypeDTO[], number]>;
70
79
  createRuleTypes(data: PricingTypes.CreateRuleTypeDTO[], sharedContext?: Context): Promise<PricingTypes.RuleTypeDTO[]>;
71
80
  updateRuleTypes(data: PricingTypes.UpdateRuleTypeDTO[], sharedContext?: Context): Promise<PricingTypes.RuleTypeDTO[]>;
72
- deleteRuleTypes(ruleTypeIds: string[], sharedContext?: Context): Promise<void>;
73
- retrievePriceSetMoneyAmountRules(id: string, config?: FindConfig<PricingTypes.PriceSetMoneyAmountRulesDTO>, sharedContext?: Context): Promise<PricingTypes.PriceSetMoneyAmountRulesDTO>;
74
- listPriceSetMoneyAmountRules(filters?: PricingTypes.FilterablePriceSetMoneyAmountRulesProps, config?: FindConfig<PricingTypes.PriceSetMoneyAmountRulesDTO>, sharedContext?: Context): Promise<PricingTypes.PriceSetMoneyAmountRulesDTO[]>;
75
- listAndCountPriceSetMoneyAmountRules(filters?: PricingTypes.FilterablePriceSetMoneyAmountRulesProps, config?: FindConfig<PricingTypes.PriceSetMoneyAmountRulesDTO>, sharedContext?: Context): Promise<[PricingTypes.PriceSetMoneyAmountRulesDTO[], number]>;
76
- listPriceSetMoneyAmounts(filters?: PricingTypes.FilterablePriceSetMoneyAmountProps, config?: FindConfig<PricingTypes.PriceSetMoneyAmountDTO>, sharedContext?: Context): Promise<PricingTypes.PriceSetMoneyAmountDTO[]>;
77
- listAndCountPriceSetMoneyAmounts(filters?: PricingTypes.FilterablePriceSetMoneyAmountProps, config?: FindConfig<PricingTypes.PriceSetMoneyAmountDTO>, sharedContext?: Context): Promise<[PricingTypes.PriceSetMoneyAmountDTO[], number]>;
78
81
  createPriceSetMoneyAmountRules(data: PricingTypes.CreatePriceSetMoneyAmountRulesDTO[], sharedContext?: Context): Promise<PricingTypes.PriceSetMoneyAmountRulesDTO[]>;
79
82
  updatePriceSetMoneyAmountRules(data: PricingTypes.UpdatePriceSetMoneyAmountRulesDTO[], sharedContext?: Context): Promise<PricingTypes.PriceSetMoneyAmountRulesDTO[]>;
80
- deletePriceSetMoneyAmountRules(ids: string[], sharedContext?: Context): Promise<void>;
81
- retrievePriceRule(id: string, config?: FindConfig<PricingTypes.PriceRuleDTO>, sharedContext?: Context): Promise<PricingTypes.PriceRuleDTO>;
82
- listPriceRules(filters?: PricingTypes.FilterablePriceRuleProps, config?: FindConfig<PricingTypes.PriceRuleDTO>, sharedContext?: Context): Promise<PricingTypes.PriceRuleDTO[]>;
83
- listAndCountPriceRules(filters?: PricingTypes.FilterablePriceRuleProps, config?: FindConfig<PricingTypes.PriceRuleDTO>, sharedContext?: Context): Promise<[PricingTypes.PriceRuleDTO[], number]>;
84
83
  createPriceRules(data: PricingTypes.CreatePriceRuleDTO[], sharedContext?: Context): Promise<PricingTypes.PriceRuleDTO[]>;
85
84
  updatePriceRules(data: PricingTypes.UpdatePriceRuleDTO[], sharedContext?: Context): Promise<PricingTypes.PriceRuleDTO[]>;
86
- deletePriceRules(priceRuleIds: string[], sharedContext?: Context): Promise<void>;
87
- retrievePriceList(id: string, config?: FindConfig<PricingTypes.PriceListDTO>, sharedContext?: Context): Promise<PricingTypes.PriceListDTO>;
88
- listPriceLists(filters?: PricingTypes.FilterablePriceListProps, config?: FindConfig<PricingTypes.PriceListDTO>, sharedContext?: Context): Promise<PricingTypes.PriceListDTO[]>;
89
- listAndCountPriceLists(filters?: PricingTypes.FilterablePriceListProps, config?: FindConfig<PricingTypes.PriceListDTO>, sharedContext?: Context): Promise<[PricingTypes.PriceListDTO[], number]>;
90
85
  createPriceLists(data: PricingTypes.CreatePriceListDTO[], sharedContext?: Context): Promise<PricingTypes.PriceListDTO[]>;
91
86
  protected createPriceLists_(data: PricingTypes.CreatePriceListDTO[], sharedContext?: Context): Promise<PricingTypes.PriceListDTO[]>;
92
87
  updatePriceLists(data: PricingTypes.UpdatePriceListDTO[], sharedContext?: Context): Promise<PricingTypes.PriceListDTO[]>;
93
88
  protected updatePriceLists_(data: PricingTypes.UpdatePriceListDTO[], sharedContext?: Context): Promise<PricingTypes.PriceListDTO[]>;
94
- deletePriceLists(priceListIds: string[], sharedContext?: Context): Promise<void>;
95
- retrievePriceListRule(id: string, config?: FindConfig<PricingTypes.PriceListRuleDTO>, sharedContext?: Context): Promise<PricingTypes.PriceListRuleDTO>;
96
- listPriceListRules(filters?: PricingTypes.FilterablePriceListRuleProps, config?: FindConfig<PricingTypes.PriceListRuleDTO>, sharedContext?: Context): Promise<PricingTypes.PriceListRuleDTO[]>;
97
- listAndCountPriceListRules(filters?: PricingTypes.FilterablePriceListRuleProps, config?: FindConfig<PricingTypes.PriceListRuleDTO>, sharedContext?: Context): Promise<[PricingTypes.PriceListRuleDTO[], number]>;
98
89
  createPriceListRules(data: PricingTypes.CreatePriceListRuleDTO[], sharedContext?: Context): Promise<PricingTypes.PriceListRuleDTO[]>;
99
90
  createPriceListRules_(data: PricingTypes.CreatePriceListRuleDTO[], sharedContext?: Context): Promise<TPriceListRule[]>;
100
91
  updatePriceListRules(data: PricingTypes.UpdatePriceListRuleDTO[], sharedContext?: Context): Promise<PricingTypes.PriceListRuleDTO[]>;
101
- deletePriceListRules(priceListRuleIds: string[], sharedContext?: Context): Promise<void>;
102
92
  addPriceListPrices(data: PricingTypes.AddPriceListPricesDTO[], sharedContext?: Context): Promise<PricingTypes.PriceListDTO[]>;
103
93
  protected addPriceListPrices_(data: PricingTypes.AddPriceListPricesDTO[], sharedContext?: Context): Promise<PricingTypes.PriceListDTO[]>;
104
94
  setPriceListRules(data: PricingTypes.SetPriceListRulesDTO, sharedContext?: Context): Promise<PricingTypes.PriceListDTO>;