@medusajs/medusa 1.2.1 → 1.2.2-dev.56

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 (166) hide show
  1. package/dist/api/index.d.ts +1 -0
  2. package/dist/api/index.js +1 -0
  3. package/dist/api/index.js.map +1 -1
  4. package/dist/api/middlewares/error-handler.js +6 -0
  5. package/dist/api/middlewares/error-handler.js.map +1 -1
  6. package/dist/api/routes/admin/customer-groups/add-customers-batch.d.ts +27 -0
  7. package/dist/{db-subscribers/region.js → api/routes/admin/customer-groups/add-customers-batch.js} +60 -38
  8. package/dist/api/routes/admin/customer-groups/add-customers-batch.js.map +1 -0
  9. package/dist/api/routes/admin/customer-groups/get-customer-group-customers.d.ts +20 -0
  10. package/dist/{subscribers/region.js → api/routes/admin/customer-groups/get-customer-group-customers.js} +38 -27
  11. package/dist/api/routes/admin/customer-groups/get-customer-group-customers.js.map +1 -0
  12. package/dist/api/routes/admin/customer-groups/get-customer-group.d.ts +1 -1
  13. package/dist/api/routes/admin/customer-groups/get-customer-group.js +1 -1
  14. package/dist/api/routes/admin/customer-groups/index.d.ts +5 -0
  15. package/dist/api/routes/admin/customer-groups/index.js +8 -0
  16. package/dist/api/routes/admin/customer-groups/index.js.map +1 -1
  17. package/dist/api/routes/admin/customer-groups/list-customer-groups.d.ts +38 -0
  18. package/dist/api/routes/admin/customer-groups/list-customer-groups.js +200 -0
  19. package/dist/api/routes/admin/customer-groups/list-customer-groups.js.map +1 -0
  20. package/dist/api/routes/admin/customers/index.js +1 -1
  21. package/dist/api/routes/admin/customers/index.js.map +1 -1
  22. package/dist/api/routes/admin/customers/list-customers.js +12 -46
  23. package/dist/api/routes/admin/customers/list-customers.js.map +1 -1
  24. package/dist/api/routes/admin/discounts/update-discount.d.ts +2 -2
  25. package/dist/api/routes/admin/discounts/update-discount.js +3 -3
  26. package/dist/api/routes/admin/discounts/update-discount.js.map +1 -1
  27. package/dist/api/routes/admin/index.js +21 -19
  28. package/dist/api/routes/admin/index.js.map +1 -1
  29. package/dist/api/routes/admin/price-lists/add-prices-batch.d.ts +70 -0
  30. package/dist/api/routes/admin/{orders/receive-swap.js → price-lists/add-prices-batch.js} +77 -78
  31. package/dist/api/routes/admin/price-lists/add-prices-batch.js.map +1 -0
  32. package/dist/api/routes/admin/price-lists/create-price-list.d.ts +87 -0
  33. package/dist/api/routes/admin/price-lists/create-price-list.js +193 -0
  34. package/dist/api/routes/admin/price-lists/create-price-list.js.map +1 -0
  35. package/dist/api/routes/admin/price-lists/delete-price-list.d.ts +28 -0
  36. package/dist/api/routes/admin/price-lists/delete-price-list.js +84 -0
  37. package/dist/api/routes/admin/price-lists/delete-price-list.js.map +1 -0
  38. package/dist/api/routes/admin/price-lists/delete-prices-batch.d.ts +43 -0
  39. package/dist/api/routes/admin/price-lists/delete-prices-batch.js +118 -0
  40. package/dist/api/routes/admin/price-lists/delete-prices-batch.js.map +1 -0
  41. package/dist/api/routes/admin/price-lists/get-price-list.d.ts +22 -0
  42. package/dist/api/routes/admin/price-lists/get-price-list.js +78 -0
  43. package/dist/api/routes/admin/price-lists/get-price-list.js.map +1 -0
  44. package/dist/api/routes/admin/price-lists/index.d.ts +21 -0
  45. package/dist/api/routes/admin/price-lists/index.js +52 -0
  46. package/dist/api/routes/admin/price-lists/index.js.map +1 -0
  47. package/dist/api/routes/admin/price-lists/list-price-lists.d.ts +38 -0
  48. package/dist/api/routes/admin/price-lists/list-price-lists.js +197 -0
  49. package/dist/api/routes/admin/price-lists/list-price-lists.js.map +1 -0
  50. package/dist/api/routes/admin/price-lists/update-price-list.d.ts +92 -0
  51. package/dist/api/routes/admin/price-lists/update-price-list.js +211 -0
  52. package/dist/api/routes/admin/price-lists/update-price-list.js.map +1 -0
  53. package/dist/api/routes/admin/products/create-product.d.ts +2 -7
  54. package/dist/api/routes/admin/products/create-product.js +2 -24
  55. package/dist/api/routes/admin/products/create-product.js.map +1 -1
  56. package/dist/api/routes/admin/products/create-variant.d.ts +7 -9
  57. package/dist/api/routes/admin/products/create-variant.js +7 -26
  58. package/dist/api/routes/admin/products/create-variant.js.map +1 -1
  59. package/dist/api/routes/admin/products/index.d.ts +1 -1
  60. package/dist/api/routes/admin/products/index.js +7 -1
  61. package/dist/api/routes/admin/products/index.js.map +1 -1
  62. package/dist/api/routes/admin/products/update-product.d.ts +2 -7
  63. package/dist/api/routes/admin/products/update-product.js +2 -24
  64. package/dist/api/routes/admin/products/update-product.js.map +1 -1
  65. package/dist/api/routes/admin/products/update-variant.d.ts +10 -9
  66. package/dist/api/routes/admin/products/update-variant.js +10 -26
  67. package/dist/api/routes/admin/products/update-variant.js.map +1 -1
  68. package/dist/api/routes/store/auth/exists.js +4 -2
  69. package/dist/api/routes/store/auth/exists.js.map +1 -1
  70. package/dist/api/routes/store/collections/list-collections.d.ts +3 -0
  71. package/dist/api/routes/store/collections/list-collections.js +33 -16
  72. package/dist/api/routes/store/collections/list-collections.js.map +1 -1
  73. package/dist/api/routes/store/products/list-products.d.ts +3 -2
  74. package/dist/api/routes/store/products/list-products.js +39 -10
  75. package/dist/api/routes/store/products/list-products.js.map +1 -1
  76. package/dist/api/routes/store/regions/list-regions.d.ts +3 -0
  77. package/dist/api/routes/store/regions/list-regions.js +22 -7
  78. package/dist/api/routes/store/regions/list-regions.js.map +1 -1
  79. package/dist/api/routes/store/variants/list-variants.d.ts +4 -0
  80. package/dist/api/routes/store/variants/list-variants.js +33 -9
  81. package/dist/api/routes/store/variants/list-variants.js.map +1 -1
  82. package/dist/controllers/customers/index.d.ts +4 -0
  83. package/dist/controllers/customers/index.js +8 -0
  84. package/dist/controllers/customers/index.js.map +1 -0
  85. package/dist/controllers/customers/list-customers.d.ts +3 -0
  86. package/dist/controllers/customers/list-customers.js +96 -0
  87. package/dist/controllers/customers/list-customers.js.map +1 -0
  88. package/dist/index.d.ts +1 -0
  89. package/dist/index.js +1 -0
  90. package/dist/index.js.map +1 -1
  91. package/dist/migrations/1646915480108-update_money_amount_add_price_list.d.ts +6 -0
  92. package/dist/migrations/1646915480108-update_money_amount_add_price_list.js +143 -0
  93. package/dist/migrations/1646915480108-update_money_amount_add_price_list.js.map +1 -0
  94. package/dist/models/customer-group.d.ts +3 -1
  95. package/dist/models/customer-group.js +7 -13
  96. package/dist/models/customer-group.js.map +1 -1
  97. package/dist/models/customer.js +3 -1
  98. package/dist/models/customer.js.map +1 -1
  99. package/dist/models/money-amount.d.ts +10 -3
  100. package/dist/models/money-amount.js +22 -5
  101. package/dist/models/money-amount.js.map +1 -1
  102. package/dist/models/price-list.d.ts +57 -0
  103. package/dist/models/price-list.js +142 -0
  104. package/dist/models/price-list.js.map +1 -0
  105. package/dist/repositories/customer-group.d.ts +1 -0
  106. package/dist/repositories/customer-group.js +24 -0
  107. package/dist/repositories/customer-group.js.map +1 -1
  108. package/dist/repositories/customer.d.ts +1 -0
  109. package/dist/repositories/customer.js +65 -0
  110. package/dist/repositories/customer.js.map +1 -1
  111. package/dist/repositories/money-amount.d.ts +6 -2
  112. package/dist/repositories/money-amount.js +102 -2
  113. package/dist/repositories/money-amount.js.map +1 -1
  114. package/dist/repositories/price-list.d.ts +4 -0
  115. package/dist/repositories/price-list.js +38 -0
  116. package/dist/repositories/price-list.js.map +1 -0
  117. package/dist/repositories/product.d.ts +1 -0
  118. package/dist/repositories/product.js +6 -2
  119. package/dist/repositories/product.js.map +1 -1
  120. package/dist/services/customer-group.d.ts +24 -1
  121. package/dist/services/customer-group.js +95 -2
  122. package/dist/services/customer-group.js.map +1 -1
  123. package/dist/services/customer.d.ts +1 -3
  124. package/dist/services/customer.js +40 -44
  125. package/dist/services/customer.js.map +1 -1
  126. package/dist/services/discount.js +19 -11
  127. package/dist/services/discount.js.map +1 -1
  128. package/dist/services/price-list.d.ts +86 -0
  129. package/dist/services/price-list.js +469 -0
  130. package/dist/services/price-list.js.map +1 -0
  131. package/dist/services/product-collection.js +29 -8
  132. package/dist/services/product-collection.js.map +1 -1
  133. package/dist/services/product-variant.d.ts +16 -9
  134. package/dist/services/product-variant.js +37 -33
  135. package/dist/services/product-variant.js.map +1 -1
  136. package/dist/services/product.js +38 -26
  137. package/dist/services/product.js.map +1 -1
  138. package/dist/types/customer-groups.d.ts +5 -1
  139. package/dist/types/customer-groups.js +25 -0
  140. package/dist/types/customer-groups.js.map +1 -1
  141. package/dist/types/customers.d.ts +1 -0
  142. package/dist/types/customers.js +5 -0
  143. package/dist/types/customers.js.map +1 -1
  144. package/dist/types/price-list.d.ts +70 -0
  145. package/dist/types/price-list.js +152 -0
  146. package/dist/types/price-list.js.map +1 -0
  147. package/dist/types/product-variant.d.ts +20 -3
  148. package/dist/types/product-variant.js +69 -5
  149. package/dist/types/product-variant.js.map +1 -1
  150. package/dist/utils/exception-formatter.d.ts +5 -0
  151. package/dist/utils/exception-formatter.js +29 -0
  152. package/dist/utils/exception-formatter.js.map +1 -0
  153. package/package.json +7 -7
  154. package/yarn-error.log +79 -5
  155. package/dist/api/routes/admin/orders/receive-swap.d.ts +0 -46
  156. package/dist/api/routes/admin/orders/receive-swap.js.map +0 -1
  157. package/dist/db-subscribers/region.d.ts +0 -6
  158. package/dist/db-subscribers/region.js.map +0 -1
  159. package/dist/entity-subscribers/region.d.ts +0 -6
  160. package/dist/entity-subscribers/region.js +0 -27
  161. package/dist/entity-subscribers/region.js.map +0 -1
  162. package/dist/loaders/db-subscribers.d.ts +0 -6
  163. package/dist/loaders/db-subscribers.js +0 -53
  164. package/dist/loaders/db-subscribers.js.map +0 -1
  165. package/dist/subscribers/region.d.ts +0 -14
  166. package/dist/subscribers/region.js.map +0 -1
@@ -1,8 +1,10 @@
1
- import { Customer } from "..";
1
+ import { Customer } from "./customer";
2
+ import { PriceList } from "./price-list";
2
3
  export declare class CustomerGroup {
3
4
  id: string;
4
5
  name: string;
5
6
  customers: Customer[];
7
+ price_lists: PriceList[];
6
8
  created_at: Date;
7
9
  updated_at: Date;
8
10
  deleted_at: Date;
@@ -12,8 +12,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.CustomerGroup = void 0;
13
13
  var typeorm_1 = require("typeorm");
14
14
  var ulid_1 = require("ulid");
15
- var __1 = require("..");
16
15
  var db_aware_column_1 = require("../utils/db-aware-column");
16
+ var customer_1 = require("./customer");
17
+ var price_list_1 = require("./price-list");
17
18
  var CustomerGroup = /** @class */ (function () {
18
19
  function CustomerGroup() {
19
20
  }
@@ -34,22 +35,15 @@ var CustomerGroup = /** @class */ (function () {
34
35
  __metadata("design:type", String)
35
36
  ], CustomerGroup.prototype, "name", void 0);
36
37
  __decorate([
37
- (0, typeorm_1.ManyToMany)(function () { return __1.Customer; }, function (customer) { return customer.groups; }, {
38
+ (0, typeorm_1.ManyToMany)(function () { return customer_1.Customer; }, function (customer) { return customer.groups; }, {
38
39
  onDelete: "CASCADE",
39
40
  }),
40
- (0, typeorm_1.JoinTable)({
41
- name: "customer_group_customers",
42
- joinColumn: {
43
- name: "customer_group_id",
44
- referencedColumnName: "id",
45
- },
46
- inverseJoinColumn: {
47
- name: "customer_id",
48
- referencedColumnName: "id",
49
- },
50
- }),
51
41
  __metadata("design:type", Array)
52
42
  ], CustomerGroup.prototype, "customers", void 0);
43
+ __decorate([
44
+ (0, typeorm_1.ManyToMany)(function () { return price_list_1.PriceList; }, function (priceList) { return priceList.customer_groups; }, { onDelete: "CASCADE" }),
45
+ __metadata("design:type", Array)
46
+ ], CustomerGroup.prototype, "price_lists", void 0);
53
47
  __decorate([
54
48
  (0, typeorm_1.CreateDateColumn)({ type: (0, db_aware_column_1.resolveDbType)("timestamptz") }),
55
49
  __metadata("design:type", Date)
@@ -1 +1 @@
1
- {"version":3,"file":"customer-group.js","sourceRoot":"","sources":["../../src/models/customer-group.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAWgB;AAChB,6BAA2B;AAC3B,wBAA6B;AAC7B,4DAAuE;AAGvE;IAAA;IA4CA,CAAC;IAPS,oCAAY,GAApB;QACE,IAAI,IAAI,CAAC,EAAE,EAAE;YACX,OAAM;SACP;QACD,IAAM,EAAE,GAAG,IAAA,WAAI,GAAE,CAAA;QACjB,IAAI,CAAC,EAAE,GAAG,eAAQ,EAAE,CAAE,CAAA;IACxB,CAAC;IAzCD;QADC,IAAA,uBAAa,GAAE;;6CACN;IAIV;QAFC,IAAA,eAAK,EAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC;QACpD,IAAA,gBAAM,GAAE;;+CACG;IAgBZ;QAdC,IAAA,oBAAU,EAAC,cAAM,OAAA,YAAQ,EAAR,CAAQ,EAAE,UAAC,QAAQ,IAAK,OAAA,QAAQ,CAAC,MAAM,EAAf,CAAe,EAAE;YACzD,QAAQ,EAAE,SAAS;SACpB,CAAC;QACD,IAAA,mBAAS,EAAC;YACT,IAAI,EAAE,0BAA0B;YAChC,UAAU,EAAE;gBACV,IAAI,EAAE,mBAAmB;gBACzB,oBAAoB,EAAE,IAAI;aAC3B;YACD,iBAAiB,EAAE;gBACjB,IAAI,EAAE,aAAa;gBACnB,oBAAoB,EAAE,IAAI;aAC3B;SACF,CAAC;;oDACmB;IAGrB;QADC,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,IAAA,+BAAa,EAAC,aAAa,CAAC,EAAE,CAAC;kCAC7C,IAAI;qDAAA;IAGhB;QADC,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,IAAA,+BAAa,EAAC,aAAa,CAAC,EAAE,CAAC;kCAC7C,IAAI;qDAAA;IAGhB;QADC,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,IAAA,+BAAa,EAAC,aAAa,CAAC,EAAE,CAAC;kCAC7C,IAAI;qDAAA;IAGhB;QADC,IAAA,+BAAa,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACpC;IAGb;QADC,IAAA,sBAAY,GAAE;;;;qDAOd;IA3CU,aAAa;QADzB,IAAA,gBAAM,GAAE;OACI,aAAa,CA4CzB;IAAD,oBAAC;CAAA,AA5CD,IA4CC;AA5CY,sCAAa"}
1
+ {"version":3,"file":"customer-group.js","sourceRoot":"","sources":["../../src/models/customer-group.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAUgB;AAChB,6BAA2B;AAC3B,4DAAuE;AACvE,uCAAqC;AACrC,2CAAwC;AAGxC;IAAA;IA4CA,CAAC;IAPS,oCAAY,GAApB;QACE,IAAI,IAAI,CAAC,EAAE,EAAE;YACX,OAAM;SACP;QACD,IAAM,EAAE,GAAG,IAAA,WAAI,GAAE,CAAA;QACjB,IAAI,CAAC,EAAE,GAAG,eAAQ,EAAE,CAAE,CAAA;IACxB,CAAC;IAzCD;QADC,IAAA,uBAAa,GAAE;;6CACN;IAIV;QAFC,IAAA,eAAK,EAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC;QACpD,IAAA,gBAAM,GAAE;;+CACG;IASZ;QAPC,IAAA,oBAAU,EACT,cAAM,OAAA,mBAAQ,EAAR,CAAQ,EACd,UAAC,QAAQ,IAAK,OAAA,QAAQ,CAAC,MAAM,EAAf,CAAe,EAC7B;YACE,QAAQ,EAAE,SAAS;SACpB,CACF;;oDACoB;IAOrB;QALC,IAAA,oBAAU,EACT,cAAM,OAAA,sBAAS,EAAT,CAAS,EACf,UAAC,SAAS,IAAK,OAAA,SAAS,CAAC,eAAe,EAAzB,CAAyB,EACxC,EAAE,QAAQ,EAAE,SAAS,EAAE,CACxB;;sDACuB;IAGxB;QADC,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,IAAA,+BAAa,EAAC,aAAa,CAAC,EAAE,CAAC;kCAC7C,IAAI;qDAAA;IAGhB;QADC,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,IAAA,+BAAa,EAAC,aAAa,CAAC,EAAE,CAAC;kCAC7C,IAAI;qDAAA;IAGhB;QADC,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,IAAA,+BAAa,EAAC,aAAa,CAAC,EAAE,CAAC;kCAC7C,IAAI;qDAAA;IAGhB;QADC,IAAA,+BAAa,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACpC;IAGb;QADC,IAAA,sBAAY,GAAE;;;;qDAOd;IA3CU,aAAa;QADzB,IAAA,gBAAM,GAAE;OACI,aAAa,CA4CzB;IAAD,oBAAC;CAAA,AA5CD,IA4CC;AA5CY,sCAAa"}
@@ -85,7 +85,9 @@ var Customer = /** @class */ (function () {
85
85
  referencedColumnName: "id",
86
86
  },
87
87
  }),
88
- (0, typeorm_1.ManyToMany)(function () { return customer_group_1.CustomerGroup; }, function (cg) { return cg.customers; }, { cascade: true }),
88
+ (0, typeorm_1.ManyToMany)(function () { return customer_group_1.CustomerGroup; }, function (cg) { return cg.customers; }, {
89
+ onDelete: "CASCADE",
90
+ }),
89
91
  __metadata("design:type", Array)
90
92
  ], Customer.prototype, "groups", void 0);
91
93
  __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"customer.js","sourceRoot":"","sources":["../../src/models/customer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"customer.js","sourceRoot":"","sources":["../../src/models/customer.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { Currency } from "./currency";
2
+ import { PriceList } from "./price-list";
2
3
  import { ProductVariant } from "./product-variant";
3
4
  import { Region } from "./region";
4
5
  export declare class MoneyAmount {
@@ -6,7 +7,10 @@ export declare class MoneyAmount {
6
7
  currency_code: string;
7
8
  currency: Currency;
8
9
  amount: number;
9
- sale_amount?: number;
10
+ min_quantity: number | null;
11
+ max_quantity: number | null;
12
+ price_list_id: string | null;
13
+ price_list: PriceList | null;
10
14
  variant_id: string;
11
15
  variant: ProductVariant;
12
16
  region_id: string;
@@ -31,8 +35,11 @@ export declare class MoneyAmount {
31
35
  * amount:
32
36
  * description: "The amount in the smallest currecny unit (e.g. cents 100 cents to charge $1) that the Product Variant will cost."
33
37
  * type: integer
34
- * sale_amount:
35
- * description: "An optional sale amount that the Product Variant will be available for when defined."
38
+ * min_quantity:
39
+ * description: "The minimum quantity that the Money Amount applies to. If this value is not set, the Money Amount applies to all quantities."
40
+ * type: integer
41
+ * max_quantity:
42
+ * description: "The maximum quantity that the Money Amount applies to. If this value is not set, the Money Amount applies to all quantities."
36
43
  * type: integer
37
44
  * variant_id:
38
45
  * description: "The id of the Product Variant that the Money Amount belongs to."
@@ -14,6 +14,7 @@ var typeorm_1 = require("typeorm");
14
14
  var ulid_1 = require("ulid");
15
15
  var db_aware_column_1 = require("../utils/db-aware-column");
16
16
  var currency_1 = require("./currency");
17
+ var price_list_1 = require("./price-list");
17
18
  var product_variant_1 = require("./product-variant");
18
19
  var region_1 = require("./region");
19
20
  var MoneyAmount = /** @class */ (function () {
@@ -44,9 +45,22 @@ var MoneyAmount = /** @class */ (function () {
44
45
  __metadata("design:type", Number)
45
46
  ], MoneyAmount.prototype, "amount", void 0);
46
47
  __decorate([
47
- (0, typeorm_1.Column)({ type: "int", nullable: true, default: null }),
48
- __metadata("design:type", Number)
49
- ], MoneyAmount.prototype, "sale_amount", void 0);
48
+ (0, typeorm_1.Column)({ type: "int", nullable: true }),
49
+ __metadata("design:type", Object)
50
+ ], MoneyAmount.prototype, "min_quantity", void 0);
51
+ __decorate([
52
+ (0, typeorm_1.Column)({ type: "int", nullable: true }),
53
+ __metadata("design:type", Object)
54
+ ], MoneyAmount.prototype, "max_quantity", void 0);
55
+ __decorate([
56
+ (0, typeorm_1.Column)({ nullable: true }),
57
+ __metadata("design:type", Object)
58
+ ], MoneyAmount.prototype, "price_list_id", void 0);
59
+ __decorate([
60
+ (0, typeorm_1.ManyToOne)(function () { return price_list_1.PriceList; }, function (priceList) { return priceList.prices; }, { cascade: true, onDelete: "CASCADE" }),
61
+ (0, typeorm_1.JoinColumn)({ name: "price_list_id" }),
62
+ __metadata("design:type", Object)
63
+ ], MoneyAmount.prototype, "price_list", void 0);
50
64
  __decorate([
51
65
  (0, typeorm_1.Index)(),
52
66
  (0, typeorm_1.Column)({ nullable: true }),
@@ -108,8 +122,11 @@ exports.MoneyAmount = MoneyAmount;
108
122
  * amount:
109
123
  * description: "The amount in the smallest currecny unit (e.g. cents 100 cents to charge $1) that the Product Variant will cost."
110
124
  * type: integer
111
- * sale_amount:
112
- * description: "An optional sale amount that the Product Variant will be available for when defined."
125
+ * min_quantity:
126
+ * description: "The minimum quantity that the Money Amount applies to. If this value is not set, the Money Amount applies to all quantities."
127
+ * type: integer
128
+ * max_quantity:
129
+ * description: "The maximum quantity that the Money Amount applies to. If this value is not set, the Money Amount applies to all quantities."
113
130
  * type: integer
114
131
  * variant_id:
115
132
  * description: "The id of the Product Variant that the Money Amount belongs to."
@@ -1 +1 @@
1
- {"version":3,"file":"money-amount.js","sourceRoot":"","sources":["../../src/models/money-amount.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAWgB;AAChB,6BAA2B;AAC3B,4DAAwD;AACxD,uCAAqC;AACrC,qDAAkD;AAClD,mCAAiC;AAGjC;IAAA;IAoDA,CAAC;IAPS,kCAAY,GAApB;QACE,IAAI,IAAI,CAAC,EAAE,EAAE;YACX,OAAM;SACP;QACD,IAAM,EAAE,GAAG,IAAA,WAAI,GAAE,CAAA;QACjB,IAAI,CAAC,EAAE,GAAG,aAAM,EAAE,CAAE,CAAA;IACtB,CAAC;IAjDD;QADC,IAAA,uBAAa,GAAE;;2CACN;IAGV;QADC,IAAA,gBAAM,GAAE;;sDACY;IAIrB;QAFC,IAAA,mBAAS,EAAC,cAAM,OAAA,mBAAQ,EAAR,CAAQ,CAAC;QACzB,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,EAAE,CAAC;kCAC1D,mBAAQ;iDAAA;IAGlB;QADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;+CACV;IAGd;QADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;;oDACnC;IAIpB;QAFC,IAAA,eAAK,GAAE;QACP,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACT;IAMlB;QAJC,IAAA,mBAAS,EAAC,cAAM,OAAA,gCAAc,EAAd,CAAc,EAAE,UAAC,OAAO,IAAK,OAAA,OAAO,CAAC,MAAM,EAAd,CAAc,EAAE;YAC5D,QAAQ,EAAE,SAAS;SACpB,CAAC;QACD,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;kCAC1B,gCAAc;gDAAA;IAIvB;QAFC,IAAA,eAAK,GAAE;QACP,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDACV;IAIjB;QAFC,IAAA,mBAAS,EAAC,cAAM,OAAA,eAAM,EAAN,CAAM,CAAC;QACvB,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;kCAC1B,eAAM;+CAAA;IAGd;QADC,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,IAAA,+BAAa,EAAC,aAAa,CAAC,EAAE,CAAC;kCAC7C,IAAI;mDAAA;IAGhB;QADC,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,IAAA,+BAAa,EAAC,aAAa,CAAC,EAAE,CAAC;kCAC7C,IAAI;mDAAA;IAGhB;QADC,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,IAAA,+BAAa,EAAC,aAAa,CAAC,EAAE,CAAC;kCAC7C,IAAI;mDAAA;IAGhB;QADC,IAAA,sBAAY,GAAE;;;;mDAOd;IAnDU,WAAW;QADvB,IAAA,gBAAM,GAAE;OACI,WAAW,CAoDvB;IAAD,kBAAC;CAAA,AApDD,IAoDC;AApDY,kCAAW;AAsDxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG"}
1
+ {"version":3,"file":"money-amount.js","sourceRoot":"","sources":["../../src/models/money-amount.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAWgB;AAChB,6BAA2B;AAC3B,4DAAwD;AACxD,uCAAqC;AACrC,2CAAwC;AACxC,qDAAkD;AAClD,mCAAiC;AAGjC;IAAA;IAsEA,CAAC;IAPS,kCAAY,GAApB;QACE,IAAI,IAAI,CAAC,EAAE,EAAE;YACX,OAAM;SACP;QACD,IAAM,EAAE,GAAG,IAAA,WAAI,GAAE,CAAA;QACjB,IAAI,CAAC,EAAE,GAAG,aAAM,EAAE,CAAE,CAAA;IACtB,CAAC;IAnED;QADC,IAAA,uBAAa,GAAE;;2CACN;IAGV;QADC,IAAA,gBAAM,GAAE;;sDACY;IAIrB;QAFC,IAAA,mBAAS,EAAC,cAAM,OAAA,mBAAQ,EAAR,CAAQ,CAAC;QACzB,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,EAAE,CAAC;kCAC1D,mBAAQ;iDAAA;IAGlB;QADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;+CACV;IAGd;QADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACb;IAG3B;QADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACb;IAG3B;QADC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;sDACC;IAQ5B;QANC,IAAA,mBAAS,EACR,cAAM,OAAA,sBAAS,EAAT,CAAS,EACf,UAAC,SAAS,IAAK,OAAA,SAAS,CAAC,MAAM,EAAhB,CAAgB,EAC/B,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CACvC;QACA,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;;mDACV;IAI5B;QAFC,IAAA,eAAK,GAAE;QACP,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACT;IAUlB;QARC,IAAA,mBAAS,EACR,cAAM,OAAA,gCAAc,EAAd,CAAc,EACpB,UAAC,OAAO,IAAK,OAAA,OAAO,CAAC,MAAM,EAAd,CAAc,EAC3B;YACE,QAAQ,EAAE,SAAS;SACpB,CACF;QACA,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;kCAC1B,gCAAc;gDAAA;IAIvB;QAFC,IAAA,eAAK,GAAE;QACP,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDACV;IAIjB;QAFC,IAAA,mBAAS,EAAC,cAAM,OAAA,eAAM,EAAN,CAAM,CAAC;QACvB,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;kCAC1B,eAAM;+CAAA;IAGd;QADC,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,IAAA,+BAAa,EAAC,aAAa,CAAC,EAAE,CAAC;kCAC7C,IAAI;mDAAA;IAGhB;QADC,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,IAAA,+BAAa,EAAC,aAAa,CAAC,EAAE,CAAC;kCAC7C,IAAI;mDAAA;IAGhB;QADC,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,IAAA,+BAAa,EAAC,aAAa,CAAC,EAAE,CAAC;kCAC7C,IAAI;mDAAA;IAGhB;QADC,IAAA,sBAAY,GAAE;;;;mDAOd;IArEU,WAAW;QADvB,IAAA,gBAAM,GAAE;OACI,WAAW,CAsEvB;IAAD,kBAAC;CAAA,AAtED,IAsEC;AAtEY,kCAAW;AAwExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG"}
@@ -0,0 +1,57 @@
1
+ import { PriceListStatus, PriceListType } from "../types/price-list";
2
+ import { CustomerGroup } from "./customer-group";
3
+ import { MoneyAmount } from "./money-amount";
4
+ export declare class PriceList {
5
+ id: string;
6
+ name: string;
7
+ description: string;
8
+ type: PriceListType;
9
+ status: PriceListStatus;
10
+ starts_at: Date;
11
+ ends_at: Date;
12
+ customer_groups: CustomerGroup[];
13
+ prices: MoneyAmount[];
14
+ created_at: Date;
15
+ updated_at: Date;
16
+ deleted_at: Date;
17
+ private beforeInsert;
18
+ }
19
+ /**
20
+ * @schema price_list
21
+ * title: "Price List"
22
+ * description: "Price Lists represents a set of prices that overrides the default price for one or more product variants."
23
+ * x-resourceId: price_list
24
+ * properties:
25
+ * id:
26
+ * description: "The id of the Price List. This value will be prefixed by `pl_`."
27
+ * type: string
28
+ * type:
29
+ * description: "The type of Price List. This can be one of either `sale` or `override`."
30
+ * type: string
31
+ * enum:
32
+ * - sale
33
+ * - override
34
+ * starts_at:
35
+ * description: "The date with timezone that the Price List starts being valid."
36
+ * type: date-time
37
+ * ends_at:
38
+ * description: "The date with timezone that the Price List stops being valid."
39
+ * type: date-time
40
+ * customer_groups:
41
+ * description: "The Customer Groups that the Price List applies to."
42
+ * type: array
43
+ * items:
44
+ * $ref: "#/components/schemas/customer_group"
45
+ * created_at:
46
+ * description: "The date with timezone at which the resource was created."
47
+ * type: string
48
+ * format: date-time
49
+ * updated_at:
50
+ * description: "The date with timezone at which the resource was last updated."
51
+ * type: string
52
+ * format: date-time
53
+ * deleted_at:
54
+ * description: "The date with timezone at which the resource was deleted."
55
+ * type: string
56
+ * format: date-time
57
+ */
@@ -0,0 +1,142 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.PriceList = void 0;
13
+ var typeorm_1 = require("typeorm");
14
+ var ulid_1 = require("ulid");
15
+ var price_list_1 = require("../types/price-list");
16
+ var db_aware_column_1 = require("../utils/db-aware-column");
17
+ var customer_group_1 = require("./customer-group");
18
+ var money_amount_1 = require("./money-amount");
19
+ var PriceList = /** @class */ (function () {
20
+ function PriceList() {
21
+ }
22
+ PriceList.prototype.beforeInsert = function () {
23
+ if (this.id) {
24
+ return;
25
+ }
26
+ var id = (0, ulid_1.ulid)();
27
+ this.id = "pl_".concat(id);
28
+ };
29
+ __decorate([
30
+ (0, typeorm_1.PrimaryColumn)(),
31
+ __metadata("design:type", String)
32
+ ], PriceList.prototype, "id", void 0);
33
+ __decorate([
34
+ (0, typeorm_1.Column)(),
35
+ __metadata("design:type", String)
36
+ ], PriceList.prototype, "name", void 0);
37
+ __decorate([
38
+ (0, typeorm_1.Column)(),
39
+ __metadata("design:type", String)
40
+ ], PriceList.prototype, "description", void 0);
41
+ __decorate([
42
+ (0, db_aware_column_1.DbAwareColumn)({ type: "enum", enum: price_list_1.PriceListType, default: "sale" }),
43
+ __metadata("design:type", String)
44
+ ], PriceList.prototype, "type", void 0);
45
+ __decorate([
46
+ (0, db_aware_column_1.DbAwareColumn)({ type: "enum", enum: price_list_1.PriceListStatus, default: "draft" }),
47
+ __metadata("design:type", String)
48
+ ], PriceList.prototype, "status", void 0);
49
+ __decorate([
50
+ (0, typeorm_1.Column)({
51
+ type: (0, db_aware_column_1.resolveDbType)("timestamptz"),
52
+ nullable: true,
53
+ }),
54
+ __metadata("design:type", Date)
55
+ ], PriceList.prototype, "starts_at", void 0);
56
+ __decorate([
57
+ (0, typeorm_1.Column)({ type: (0, db_aware_column_1.resolveDbType)("timestamptz"), nullable: true }),
58
+ __metadata("design:type", Date)
59
+ ], PriceList.prototype, "ends_at", void 0);
60
+ __decorate([
61
+ (0, typeorm_1.JoinTable)({
62
+ name: "price_list_customer_groups",
63
+ joinColumn: {
64
+ name: "price_list_id",
65
+ referencedColumnName: "id",
66
+ },
67
+ inverseJoinColumn: {
68
+ name: "customer_group_id",
69
+ referencedColumnName: "id",
70
+ },
71
+ }),
72
+ (0, typeorm_1.ManyToMany)(function () { return customer_group_1.CustomerGroup; }, function (cg) { return cg.price_lists; }, { onDelete: "CASCADE" }),
73
+ __metadata("design:type", Array)
74
+ ], PriceList.prototype, "customer_groups", void 0);
75
+ __decorate([
76
+ (0, typeorm_1.OneToMany)(function () { return money_amount_1.MoneyAmount; }, function (moneyAmount) { return moneyAmount.price_list; }, { onDelete: "CASCADE" }),
77
+ __metadata("design:type", Array)
78
+ ], PriceList.prototype, "prices", void 0);
79
+ __decorate([
80
+ (0, typeorm_1.CreateDateColumn)({ type: (0, db_aware_column_1.resolveDbType)("timestamptz") }),
81
+ __metadata("design:type", Date)
82
+ ], PriceList.prototype, "created_at", void 0);
83
+ __decorate([
84
+ (0, typeorm_1.UpdateDateColumn)({ type: (0, db_aware_column_1.resolveDbType)("timestamptz") }),
85
+ __metadata("design:type", Date)
86
+ ], PriceList.prototype, "updated_at", void 0);
87
+ __decorate([
88
+ (0, typeorm_1.DeleteDateColumn)({ type: (0, db_aware_column_1.resolveDbType)("timestamptz") }),
89
+ __metadata("design:type", Date)
90
+ ], PriceList.prototype, "deleted_at", void 0);
91
+ __decorate([
92
+ (0, typeorm_1.BeforeInsert)(),
93
+ __metadata("design:type", Function),
94
+ __metadata("design:paramtypes", []),
95
+ __metadata("design:returntype", Object)
96
+ ], PriceList.prototype, "beforeInsert", null);
97
+ PriceList = __decorate([
98
+ (0, typeorm_1.Entity)()
99
+ ], PriceList);
100
+ return PriceList;
101
+ }());
102
+ exports.PriceList = PriceList;
103
+ /**
104
+ * @schema price_list
105
+ * title: "Price List"
106
+ * description: "Price Lists represents a set of prices that overrides the default price for one or more product variants."
107
+ * x-resourceId: price_list
108
+ * properties:
109
+ * id:
110
+ * description: "The id of the Price List. This value will be prefixed by `pl_`."
111
+ * type: string
112
+ * type:
113
+ * description: "The type of Price List. This can be one of either `sale` or `override`."
114
+ * type: string
115
+ * enum:
116
+ * - sale
117
+ * - override
118
+ * starts_at:
119
+ * description: "The date with timezone that the Price List starts being valid."
120
+ * type: date-time
121
+ * ends_at:
122
+ * description: "The date with timezone that the Price List stops being valid."
123
+ * type: date-time
124
+ * customer_groups:
125
+ * description: "The Customer Groups that the Price List applies to."
126
+ * type: array
127
+ * items:
128
+ * $ref: "#/components/schemas/customer_group"
129
+ * created_at:
130
+ * description: "The date with timezone at which the resource was created."
131
+ * type: string
132
+ * format: date-time
133
+ * updated_at:
134
+ * description: "The date with timezone at which the resource was last updated."
135
+ * type: string
136
+ * format: date-time
137
+ * deleted_at:
138
+ * description: "The date with timezone at which the resource was deleted."
139
+ * type: string
140
+ * format: date-time
141
+ */
142
+ //# sourceMappingURL=price-list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"price-list.js","sourceRoot":"","sources":["../../src/models/price-list.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAWgB;AAChB,6BAA2B;AAC3B,kDAAoE;AACpE,4DAAuE;AACvE,mDAAgD;AAChD,+CAA4C;AAG5C;IAAA;IAmEA,CAAC;IAPS,gCAAY,GAApB;QACE,IAAI,IAAI,CAAC,EAAE,EAAE;YACX,OAAM;SACP;QACD,IAAM,EAAE,GAAG,IAAA,WAAI,GAAE,CAAA;QACjB,IAAI,CAAC,EAAE,GAAG,aAAM,EAAE,CAAE,CAAA;IACtB,CAAC;IAhED;QADC,IAAA,uBAAa,GAAE;;yCACN;IAGV;QADC,IAAA,gBAAM,GAAE;;2CACG;IAGZ;QADC,IAAA,gBAAM,GAAE;;kDACU;IAGnB;QADC,IAAA,+BAAa,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,0BAAa,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;;2CACnD;IAGnB;QADC,IAAA,+BAAa,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4BAAe,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;;6CAClD;IAMvB;QAJC,IAAA,gBAAM,EAAC;YACN,IAAI,EAAE,IAAA,+BAAa,EAAC,aAAa,CAAC;YAClC,QAAQ,EAAE,IAAI;SACf,CAAC;kCACS,IAAI;gDAAA;IAGf;QADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,IAAA,+BAAa,EAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;kCACtD,IAAI;8CAAA;IAkBb;QAhBC,IAAA,mBAAS,EAAC;YACT,IAAI,EAAE,4BAA4B;YAClC,UAAU,EAAE;gBACV,IAAI,EAAE,eAAe;gBACrB,oBAAoB,EAAE,IAAI;aAC3B;YACD,iBAAiB,EAAE;gBACjB,IAAI,EAAE,mBAAmB;gBACzB,oBAAoB,EAAE,IAAI;aAC3B;SACF,CAAC;QACD,IAAA,oBAAU,EACT,cAAM,OAAA,8BAAa,EAAb,CAAa,EACnB,UAAC,EAAE,IAAK,OAAA,EAAE,CAAC,WAAW,EAAd,CAAc,EACtB,EAAE,QAAQ,EAAE,SAAS,EAAE,CACxB;;sDAC+B;IAOhC;QALC,IAAA,mBAAS,EACR,cAAM,OAAA,0BAAW,EAAX,CAAW,EACjB,UAAC,WAAW,IAAK,OAAA,WAAW,CAAC,UAAU,EAAtB,CAAsB,EACvC,EAAE,QAAQ,EAAE,SAAS,EAAE,CACxB;;6CACoB;IAGrB;QADC,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,IAAA,+BAAa,EAAC,aAAa,CAAC,EAAE,CAAC;kCAC7C,IAAI;iDAAA;IAGhB;QADC,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,IAAA,+BAAa,EAAC,aAAa,CAAC,EAAE,CAAC;kCAC7C,IAAI;iDAAA;IAGhB;QADC,IAAA,0BAAgB,EAAC,EAAE,IAAI,EAAE,IAAA,+BAAa,EAAC,aAAa,CAAC,EAAE,CAAC;kCAC7C,IAAI;iDAAA;IAGhB;QADC,IAAA,sBAAY,GAAE;;;;iDAOd;IAlEU,SAAS;QADrB,IAAA,gBAAM,GAAE;OACI,SAAS,CAmErB;IAAD,gBAAC;CAAA,AAnED,IAmEC;AAnEY,8BAAS;AAqEtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG"}
@@ -1,5 +1,6 @@
1
1
  import { DeleteResult, Repository } from "typeorm";
2
2
  import { CustomerGroup } from "../models/customer-group";
3
3
  export declare class CustomerGroupRepository extends Repository<CustomerGroup> {
4
+ addCustomers(groupId: string, customerIds: string[]): Promise<CustomerGroup>;
4
5
  removeCustomers(groupId: string, customerIds: string[]): Promise<DeleteResult>;
5
6
  }
@@ -65,6 +65,30 @@ var CustomerGroupRepository = /** @class */ (function (_super) {
65
65
  function CustomerGroupRepository() {
66
66
  return _super !== null && _super.apply(this, arguments) || this;
67
67
  }
68
+ CustomerGroupRepository.prototype.addCustomers = function (groupId, customerIds) {
69
+ return __awaiter(this, void 0, void 0, function () {
70
+ var customerGroup;
71
+ return __generator(this, function (_a) {
72
+ switch (_a.label) {
73
+ case 0: return [4 /*yield*/, this.findOne(groupId)];
74
+ case 1:
75
+ customerGroup = _a.sent();
76
+ return [4 /*yield*/, this.createQueryBuilder()
77
+ .insert()
78
+ .into("customer_group_customers")
79
+ .values(customerIds.map(function (id) { return ({
80
+ customer_id: id,
81
+ customer_group_id: groupId,
82
+ }); }))
83
+ .orIgnore()
84
+ .execute()];
85
+ case 2:
86
+ _a.sent();
87
+ return [2 /*return*/, customerGroup];
88
+ }
89
+ });
90
+ });
91
+ };
68
92
  CustomerGroupRepository.prototype.removeCustomers = function (groupId, customerIds) {
69
93
  return __awaiter(this, void 0, void 0, function () {
70
94
  return __generator(this, function (_a) {
@@ -1 +1 @@
1
- {"version":3,"file":"customer-group.js","sourceRoot":"","sources":["../../src/repositories/customer-group.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mCAAwE;AACxE,2DAAwD;AAGxD;IAA6C,2CAAyB;IAAtE;;IAcA,CAAC;IAbO,iDAAe,GAArB,UACE,OAAe,EACf,WAAqB;;;;4BAEd,qBAAM,IAAI,CAAC,kBAAkB,EAAE;6BACnC,MAAM,EAAE;6BACR,IAAI,CAAC,0BAA0B,CAAC;6BAChC,KAAK,CAAC;4BACL,iBAAiB,EAAE,OAAO;4BAC1B,WAAW,EAAE,IAAA,YAAE,EAAC,WAAW,CAAC;yBAC7B,CAAC;6BACD,OAAO,EAAE,EAAA;4BAPZ,sBAAO,SAOK,EAAA;;;;KACb;IAbU,uBAAuB;QADnC,IAAA,0BAAgB,EAAC,8BAAa,CAAC;OACnB,uBAAuB,CAcnC;IAAD,8BAAC;CAAA,AAdD,CAA6C,oBAAU,GActD;AAdY,0DAAuB"}
1
+ {"version":3,"file":"customer-group.js","sourceRoot":"","sources":["../../src/repositories/customer-group.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mCAAwE;AACxE,2DAAwD;AAGxD;IAA6C,2CAAyB;IAAtE;;IAmCA,CAAC;IAlCO,8CAAY,GAAlB,UACE,OAAe,EACf,WAAqB;;;;;4BAEC,qBAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAA;;wBAA3C,aAAa,GAAG,SAA2B;wBAEjD,qBAAM,IAAI,CAAC,kBAAkB,EAAE;iCAC5B,MAAM,EAAE;iCACR,IAAI,CAAC,0BAA0B,CAAC;iCAChC,MAAM,CACL,WAAW,CAAC,GAAG,CAAC,UAAC,EAAE,IAAK,OAAA,CAAC;gCACvB,WAAW,EAAE,EAAE;gCACf,iBAAiB,EAAE,OAAO;6BAC3B,CAAC,EAHsB,CAGtB,CAAC,CACJ;iCACA,QAAQ,EAAE;iCACV,OAAO,EAAE,EAAA;;wBAVZ,SAUY,CAAA;wBAEZ,sBAAO,aAA8B,EAAA;;;;KACtC;IAEK,iDAAe,GAArB,UACE,OAAe,EACf,WAAqB;;;;4BAEd,qBAAM,IAAI,CAAC,kBAAkB,EAAE;6BACnC,MAAM,EAAE;6BACR,IAAI,CAAC,0BAA0B,CAAC;6BAChC,KAAK,CAAC;4BACL,iBAAiB,EAAE,OAAO;4BAC1B,WAAW,EAAE,IAAA,YAAE,EAAC,WAAW,CAAC;yBAC7B,CAAC;6BACD,OAAO,EAAE,EAAA;4BAPZ,sBAAO,SAOK,EAAA;;;;KACb;IAlCU,uBAAuB;QADnC,IAAA,0BAAgB,EAAC,8BAAa,CAAC;OACnB,uBAAuB,CAmCnC;IAAD,8BAAC;CAAA,AAnCD,CAA6C,oBAAU,GAmCtD;AAnCY,0DAAuB"}
@@ -1,4 +1,5 @@
1
1
  import { Repository } from "typeorm";
2
2
  import { Customer } from "../models/customer";
3
3
  export declare class CustomerRepository extends Repository<Customer> {
4
+ listAndCount(query: any): Promise<[Customer[], number]>;
4
5
  }
@@ -20,6 +20,42 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
20
20
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
21
21
  return c > 3 && r && Object.defineProperty(target, key, r), r;
22
22
  };
23
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
24
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
25
+ return new (P || (P = Promise))(function (resolve, reject) {
26
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
27
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
28
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
29
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
30
+ });
31
+ };
32
+ var __generator = (this && this.__generator) || function (thisArg, body) {
33
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
34
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
35
+ function verb(n) { return function (v) { return step([n, v]); }; }
36
+ function step(op) {
37
+ if (f) throw new TypeError("Generator is already executing.");
38
+ while (_) try {
39
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
40
+ if (y = 0, t) op = [op[0] & 2, t.value];
41
+ switch (op[0]) {
42
+ case 0: case 1: t = op; break;
43
+ case 4: _.label++; return { value: op[1], done: false };
44
+ case 5: _.label++; y = op[1]; op = [0]; continue;
45
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
46
+ default:
47
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
48
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
49
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
50
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
51
+ if (t[2]) _.ops.pop();
52
+ _.trys.pop(); continue;
53
+ }
54
+ op = body.call(thisArg, _);
55
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
56
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
57
+ }
58
+ };
23
59
  Object.defineProperty(exports, "__esModule", { value: true });
24
60
  exports.CustomerRepository = void 0;
25
61
  var typeorm_1 = require("typeorm");
@@ -29,6 +65,35 @@ var CustomerRepository = /** @class */ (function (_super) {
29
65
  function CustomerRepository() {
30
66
  return _super !== null && _super.apply(this, arguments) || this;
31
67
  }
68
+ CustomerRepository.prototype.listAndCount = function (query) {
69
+ var _a, _b, _c;
70
+ return __awaiter(this, void 0, void 0, function () {
71
+ var groups, qb;
72
+ return __generator(this, function (_d) {
73
+ switch (_d.label) {
74
+ case 0:
75
+ groups = (_a = query === null || query === void 0 ? void 0 : query.where) === null || _a === void 0 ? void 0 : _a.groups;
76
+ (_b = query === null || query === void 0 ? void 0 : query.where) === null || _b === void 0 ? true : delete _b.groups;
77
+ qb = this.createQueryBuilder("customer")
78
+ .where(query.where)
79
+ .skip(query.skip)
80
+ .take(query.take);
81
+ if (groups) {
82
+ qb = qb
83
+ .leftJoinAndSelect("customer.groups", "group")
84
+ .andWhere("group.id IN (:...ids)", { ids: groups.value });
85
+ }
86
+ if ((_c = query.relations) === null || _c === void 0 ? void 0 : _c.length) {
87
+ query.relations.forEach(function (rel) {
88
+ qb = qb.leftJoinAndSelect("customer.".concat(rel), rel);
89
+ });
90
+ }
91
+ return [4 /*yield*/, qb.getManyAndCount()];
92
+ case 1: return [2 /*return*/, _d.sent()];
93
+ }
94
+ });
95
+ });
96
+ };
32
97
  CustomerRepository = __decorate([
33
98
  (0, typeorm_1.EntityRepository)(customer_1.Customer)
34
99
  ], CustomerRepository);
@@ -1 +1 @@
1
- {"version":3,"file":"customer.js","sourceRoot":"","sources":["../../src/repositories/customer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,mCAAsD;AACtD,+CAA6C;AAG7C;IAAwC,sCAAoB;IAA5D;;IAA8D,CAAC;IAAlD,kBAAkB;QAD9B,IAAA,0BAAgB,EAAC,mBAAQ,CAAC;OACd,kBAAkB,CAAgC;IAAD,yBAAC;CAAA,AAA/D,CAAwC,oBAAU,GAAa;AAAlD,gDAAkB"}
1
+ {"version":3,"file":"customer.js","sourceRoot":"","sources":["../../src/repositories/customer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mCAAsD;AACtD,+CAA6C;AAG7C;IAAwC,sCAAoB;IAA5D;;IAwBA,CAAC;IAvBO,yCAAY,GAAlB,UAAmB,KAAK;;;;;;;wBAChB,MAAM,GAAG,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,0CAAE,MAAM,CAAA;wBAC5B,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,+CAAE,MAAM,CAAA;wBAEvB,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC;6BACzC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;6BAClB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;6BAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;wBAEnB,IAAI,MAAM,EAAE;4BACV,EAAE,GAAG,EAAE;iCACJ,iBAAiB,CAAC,iBAAiB,EAAE,OAAO,CAAC;iCAC7C,QAAQ,CAAC,uBAAuB,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAA;yBAC5D;wBAED,IAAI,MAAA,KAAK,CAAC,SAAS,0CAAE,MAAM,EAAE;4BAC3B,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,UAAC,GAAG;gCAC1B,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,mBAAY,GAAG,CAAE,EAAE,GAAG,CAAC,CAAA;4BACnD,CAAC,CAAC,CAAA;yBACH;wBAEM,qBAAM,EAAE,CAAC,eAAe,EAAE,EAAA;4BAAjC,sBAAO,SAA0B,EAAA;;;;KAClC;IAvBU,kBAAkB;QAD9B,IAAA,0BAAgB,EAAC,mBAAQ,CAAC;OACd,kBAAkB,CAwB9B;IAAD,yBAAC;CAAA,AAxBD,CAAwC,oBAAU,GAwBjD;AAxBY,gDAAkB"}
@@ -1,10 +1,14 @@
1
1
  import { Repository } from "typeorm";
2
2
  import { MoneyAmount } from "../models/money-amount";
3
- declare type Price = Partial<Pick<MoneyAmount, "currency_code" | "region_id" | "sale_amount" | "currency_code">> & {
3
+ import { PriceListPriceCreateInput, PriceListPriceUpdateInput } from "../types/price-list";
4
+ declare type Price = Partial<Omit<MoneyAmount, "created_at" | "updated_at" | "deleted_at">> & {
4
5
  amount: number;
5
6
  };
6
7
  export declare class MoneyAmountRepository extends Repository<MoneyAmount> {
7
8
  findVariantPricesNotIn(variantId: string, prices: Price[]): Promise<MoneyAmount[]>;
8
- upsertCurrencyPrice(variantId: string, price: Price): Promise<MoneyAmount>;
9
+ upsertVariantCurrencyPrice(variantId: string, price: Price): Promise<MoneyAmount>;
10
+ addPriceListPrices(priceListId: string, prices: PriceListPriceCreateInput[], overrideExisting?: boolean): Promise<MoneyAmount[]>;
11
+ deletePriceListPrices(priceListId: string, moneyAmountIds: string[]): Promise<void>;
12
+ updatePriceListPrices(priceListId: string, updates: PriceListPriceUpdateInput[]): Promise<MoneyAmount[]>;
9
13
  }
10
14
  export {};