@medusajs/medusa 1.1.63-alpha.4 → 1.1.64

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 (177) hide show
  1. package/CHANGELOG.md +29 -24
  2. package/dist/api/index.d.ts +1 -0
  3. package/dist/api/index.js +1 -0
  4. package/dist/api/index.js.map +1 -1
  5. package/dist/api/routes/admin/collections/get-collection.js +6 -2
  6. package/dist/api/routes/admin/collections/get-collection.js.map +1 -1
  7. package/dist/api/routes/admin/collections/index.d.ts +1 -1
  8. package/dist/api/routes/admin/collections/index.js +2 -2
  9. package/dist/api/routes/admin/collections/index.js.map +1 -1
  10. package/dist/api/routes/admin/collections/list-collections.d.ts +1 -0
  11. package/dist/api/routes/admin/collections/list-collections.js +5 -0
  12. package/dist/api/routes/admin/collections/list-collections.js.map +1 -1
  13. package/dist/api/routes/admin/index.js +2 -0
  14. package/dist/api/routes/admin/index.js.map +1 -1
  15. package/dist/api/routes/admin/orders/create-swap.d.ts +2 -0
  16. package/dist/api/routes/admin/orders/create-swap.js +11 -0
  17. package/dist/api/routes/admin/orders/create-swap.js.map +1 -1
  18. package/dist/api/routes/admin/product-tags/index.d.ts +15 -0
  19. package/dist/api/routes/admin/product-tags/index.js +40 -0
  20. package/dist/api/routes/admin/product-tags/index.js.map +1 -0
  21. package/dist/api/routes/admin/product-tags/list-product-tags.d.ts +39 -0
  22. package/dist/api/routes/admin/{tax-rates/list-tax-rates.js → product-tags/list-product-tags.js} +112 -79
  23. package/dist/api/routes/admin/product-tags/list-product-tags.js.map +1 -0
  24. package/dist/api/routes/admin/products/list-products.js +27 -28
  25. package/dist/api/routes/admin/products/list-products.js.map +1 -1
  26. package/dist/api/routes/admin/variants/list-variants.js +24 -8
  27. package/dist/api/routes/admin/variants/list-variants.js.map +1 -1
  28. package/dist/repositories/product-variant.d.ts +12 -1
  29. package/dist/repositories/product-variant.js +304 -0
  30. package/dist/repositories/product-variant.js.map +1 -1
  31. package/dist/services/product-collection.js +22 -2
  32. package/dist/services/product-collection.js.map +1 -1
  33. package/dist/services/product-tag.d.ts +48 -0
  34. package/dist/services/product-tag.js +180 -0
  35. package/dist/services/product-tag.js.map +1 -0
  36. package/dist/services/product-variant.d.ts +30 -1
  37. package/dist/services/product-variant.js +92 -0
  38. package/dist/services/product-variant.js.map +1 -1
  39. package/dist/services/store.js +28 -16
  40. package/dist/services/store.js.map +1 -1
  41. package/dist/types/common.d.ts +3 -1
  42. package/dist/types/product.d.ts +7 -0
  43. package/dist/types/product.js +37 -1
  44. package/dist/types/product.js.map +1 -1
  45. package/jest.config.js +17 -0
  46. package/package.json +3 -3
  47. package/dist/api/routes/admin/tax-rates/add-to-product-types.d.ts +0 -29
  48. package/dist/api/routes/admin/tax-rates/add-to-product-types.js +0 -177
  49. package/dist/api/routes/admin/tax-rates/add-to-product-types.js.map +0 -1
  50. package/dist/api/routes/admin/tax-rates/add-to-products.d.ts +0 -29
  51. package/dist/api/routes/admin/tax-rates/add-to-products.js +0 -173
  52. package/dist/api/routes/admin/tax-rates/add-to-products.js.map +0 -1
  53. package/dist/api/routes/admin/tax-rates/add-to-shipping-options.d.ts +0 -29
  54. package/dist/api/routes/admin/tax-rates/add-to-shipping-options.js +0 -177
  55. package/dist/api/routes/admin/tax-rates/add-to-shipping-options.js.map +0 -1
  56. package/dist/api/routes/admin/tax-rates/create-tax-rate.d.ts +0 -35
  57. package/dist/api/routes/admin/tax-rates/create-tax-rate.js +0 -286
  58. package/dist/api/routes/admin/tax-rates/create-tax-rate.js.map +0 -1
  59. package/dist/api/routes/admin/tax-rates/delete-tax-rate.d.ts +0 -28
  60. package/dist/api/routes/admin/tax-rates/delete-tax-rate.js +0 -84
  61. package/dist/api/routes/admin/tax-rates/delete-tax-rate.js.map +0 -1
  62. package/dist/api/routes/admin/tax-rates/get-tax-rate.d.ts +0 -26
  63. package/dist/api/routes/admin/tax-rates/get-tax-rate.js +0 -106
  64. package/dist/api/routes/admin/tax-rates/get-tax-rate.js.map +0 -1
  65. package/dist/api/routes/admin/tax-rates/index.d.ts +0 -21
  66. package/dist/api/routes/admin/tax-rates/index.js +0 -74
  67. package/dist/api/routes/admin/tax-rates/index.js.map +0 -1
  68. package/dist/api/routes/admin/tax-rates/list-tax-rates.d.ts +0 -44
  69. package/dist/api/routes/admin/tax-rates/list-tax-rates.js.map +0 -1
  70. package/dist/api/routes/admin/tax-rates/update-tax-rate.d.ts +0 -35
  71. package/dist/api/routes/admin/tax-rates/update-tax-rate.js +0 -286
  72. package/dist/api/routes/admin/tax-rates/update-tax-rate.js.map +0 -1
  73. package/dist/api/routes/admin/tax-rates/utils/get-query-config.d.ts +0 -7
  74. package/dist/api/routes/admin/tax-rates/utils/get-query-config.js +0 -91
  75. package/dist/api/routes/admin/tax-rates/utils/get-query-config.js.map +0 -1
  76. package/dist/api/routes/store/carts/calculate-taxes.d.ts +0 -24
  77. package/dist/api/routes/store/carts/calculate-taxes.js +0 -153
  78. package/dist/api/routes/store/carts/calculate-taxes.js.map +0 -1
  79. package/dist/interfaces/cart-completion-strategy.d.ts +0 -20
  80. package/dist/interfaces/cart-completion-strategy.js +0 -10
  81. package/dist/interfaces/cart-completion-strategy.js.map +0 -1
  82. package/dist/interfaces/index.d.ts +0 -3
  83. package/dist/interfaces/index.js +0 -16
  84. package/dist/interfaces/index.js.map +0 -1
  85. package/dist/interfaces/tax-calculation-strategy.d.ts +0 -16
  86. package/dist/interfaces/tax-calculation-strategy.js +0 -10
  87. package/dist/interfaces/tax-calculation-strategy.js.map +0 -1
  88. package/dist/interfaces/tax-service.d.ts +0 -51
  89. package/dist/interfaces/tax-service.js +0 -3
  90. package/dist/interfaces/tax-service.js.map +0 -1
  91. package/dist/loaders/strategies.d.ts +0 -12
  92. package/dist/loaders/strategies.js +0 -32
  93. package/dist/loaders/strategies.js.map +0 -1
  94. package/dist/migrations/1641636508055-new_tax_system.d.ts +0 -6
  95. package/dist/migrations/1641636508055-new_tax_system.js +0 -248
  96. package/dist/migrations/1641636508055-new_tax_system.js.map +0 -1
  97. package/dist/models/line-item-tax-line.d.ts +0 -7
  98. package/dist/models/line-item-tax-line.js +0 -65
  99. package/dist/models/line-item-tax-line.js.map +0 -1
  100. package/dist/models/product-tax-rate.d.ts +0 -40
  101. package/dist/models/product-tax-rate.js +0 -88
  102. package/dist/models/product-tax-rate.js.map +0 -1
  103. package/dist/models/product-type-tax-rate.d.ts +0 -40
  104. package/dist/models/product-type-tax-rate.js +0 -88
  105. package/dist/models/product-type-tax-rate.js.map +0 -1
  106. package/dist/models/shipping-method-tax-line.d.ts +0 -7
  107. package/dist/models/shipping-method-tax-line.js +0 -65
  108. package/dist/models/shipping-method-tax-line.js.map +0 -1
  109. package/dist/models/shipping-tax-rate.d.ts +0 -40
  110. package/dist/models/shipping-tax-rate.js +0 -88
  111. package/dist/models/shipping-tax-rate.js.map +0 -1
  112. package/dist/models/tax-line.d.ts +0 -39
  113. package/dist/models/tax-line.js +0 -79
  114. package/dist/models/tax-line.js.map +0 -1
  115. package/dist/models/tax-provider.d.ts +0 -17
  116. package/dist/models/tax-provider.js +0 -44
  117. package/dist/models/tax-provider.js.map +0 -1
  118. package/dist/models/tax-rate.d.ts +0 -58
  119. package/dist/models/tax-rate.js +0 -159
  120. package/dist/models/tax-rate.js.map +0 -1
  121. package/dist/repositories/line-item-tax-line.d.ts +0 -4
  122. package/dist/repositories/line-item-tax-line.js +0 -38
  123. package/dist/repositories/line-item-tax-line.js.map +0 -1
  124. package/dist/repositories/product-tax-rate.d.ts +0 -4
  125. package/dist/repositories/product-tax-rate.js +0 -38
  126. package/dist/repositories/product-tax-rate.js.map +0 -1
  127. package/dist/repositories/shipping-method-tax-line.d.ts +0 -4
  128. package/dist/repositories/shipping-method-tax-line.js +0 -38
  129. package/dist/repositories/shipping-method-tax-line.js.map +0 -1
  130. package/dist/repositories/shipping-tax-rate.d.ts +0 -4
  131. package/dist/repositories/shipping-tax-rate.js +0 -38
  132. package/dist/repositories/shipping-tax-rate.js.map +0 -1
  133. package/dist/repositories/tax-rate.d.ts +0 -18
  134. package/dist/repositories/tax-rate.js +0 -359
  135. package/dist/repositories/tax-rate.js.map +0 -1
  136. package/dist/services/product-tax-rate.d.ts +0 -25
  137. package/dist/services/product-tax-rate.js +0 -104
  138. package/dist/services/product-tax-rate.js.map +0 -1
  139. package/dist/services/product-type.d.ts +0 -27
  140. package/dist/services/product-type.js +0 -112
  141. package/dist/services/product-type.js.map +0 -1
  142. package/dist/services/shipping-tax-rate.d.ts +0 -26
  143. package/dist/services/shipping-tax-rate.js +0 -105
  144. package/dist/services/shipping-tax-rate.js.map +0 -1
  145. package/dist/services/system-tax.d.ts +0 -9
  146. package/dist/services/system-tax.js +0 -89
  147. package/dist/services/system-tax.js.map +0 -1
  148. package/dist/services/tax-provider.d.ts +0 -105
  149. package/dist/services/tax-provider.js +0 -455
  150. package/dist/services/tax-provider.js.map +0 -1
  151. package/dist/services/tax-rate.d.ts +0 -31
  152. package/dist/services/tax-rate.js +0 -405
  153. package/dist/services/tax-rate.js.map +0 -1
  154. package/dist/strategies/cart-completion.d.ts +0 -17
  155. package/dist/strategies/cart-completion.js +0 -336
  156. package/dist/strategies/cart-completion.js.map +0 -1
  157. package/dist/strategies/tax-calculation.d.ts +0 -11
  158. package/dist/strategies/tax-calculation.js +0 -147
  159. package/dist/strategies/tax-calculation.js.map +0 -1
  160. package/dist/types/product-tax-rate.d.ts +0 -10
  161. package/dist/types/product-tax-rate.js +0 -13
  162. package/dist/types/product-tax-rate.js.map +0 -1
  163. package/dist/types/request.d.ts +0 -3
  164. package/dist/types/request.js +0 -3
  165. package/dist/types/request.js.map +0 -1
  166. package/dist/types/shipping-tax-rate.d.ts +0 -10
  167. package/dist/types/shipping-tax-rate.js +0 -13
  168. package/dist/types/shipping-tax-rate.js.map +0 -1
  169. package/dist/types/tax-rate.d.ts +0 -25
  170. package/dist/types/tax-rate.js +0 -3
  171. package/dist/types/tax-rate.js.map +0 -1
  172. package/dist/types/tax-service.d.ts +0 -34
  173. package/dist/types/tax-service.js +0 -3
  174. package/dist/types/tax-service.js.map +0 -1
  175. package/dist/types/totals.d.ts +0 -42
  176. package/dist/types/totals.js +0 -3
  177. package/dist/types/totals.js.map +0 -1
@@ -1,4 +1,19 @@
1
1
  "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
2
17
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
18
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
19
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -61,118 +76,136 @@ var __read = (this && this.__read) || function (o, n) {
61
76
  return ar;
62
77
  };
63
78
  Object.defineProperty(exports, "__esModule", { value: true });
64
- exports.AdminGetTaxRatesParams = void 0;
65
- var get_query_config_1 = require("./utils/get-query-config");
66
- var class_validator_1 = require("class-validator");
79
+ exports.AdminGetProductTagsParams = exports.AdminGetProductTagsPaginationParams = void 0;
67
80
  var class_transformer_1 = require("class-transformer");
81
+ var medusa_core_utils_1 = require("medusa-core-utils");
82
+ var class_validator_1 = require("class-validator");
68
83
  var lodash_1 = require("lodash");
84
+ var _1 = require(".");
69
85
  var common_1 = require("../../../../types/common");
70
- var is_type_1 = require("../../../../utils/validators/is-type");
71
86
  var validator_1 = require("../../../../utils/validator");
87
+ var is_type_1 = require("../../../../utils/validators/is-type");
72
88
  /**
73
- * @oas [get] /tax-rates
74
- * operationId: "GetTaxRates"
75
- * summary: "List Tax Rates"
76
- * description: "Retrieves a list of TaxRates"
89
+ * @oas [get] /product-tags
90
+ * operationId: "GetProductTags"
91
+ * summary: "List Product Tags"
92
+ * description: "Retrieve a list of Product Tags."
77
93
  * x-authenticated: true
78
94
  * parameters:
79
- * - (query) q {string} Query used for searching orders.
80
- * - (query) id {string} Id of the order to search for.
81
- * - (query) region_id {string} to search for.
82
- * - (query) code {string} to search for.
83
- * - (query) rate {string} to search for.
84
- * - (query) created_at {DateComparisonOperator} Date comparison for when resulting orders was created, i.e. less than, greater than etc.
85
- * - (query) updated_at {DateComparisonOperator} Date comparison for when resulting orders was updated, i.e. less than, greater than etc.
86
- * - (query) offset {string} How many orders to skip in the result.
87
- * - (query) limit {string} Limit the number of orders returned.
88
- * - (query) fields {string} (Comma separated) Which fields should be included in each order of the result.
95
+ * - (query) limit {string} The number of tags to return.
96
+ * - (query) offset {string} The offset of tags to return.
97
+ * - (query) value {string} The value of tags to return.
98
+ * - (query) id {string} The id of tags to return.
99
+ * - (query) created_at {DateComparisonOperator} Date comparison for when resulting tas was created, i.e. less than, greater than etc.
100
+ * - (query) updated_at {DateComparisonOperator} Date comparison for when resulting tas was updated, i.e. less than, greater than etc.
89
101
  * tags:
90
- * - Order
102
+ * - Product Tag
91
103
  * responses:
92
- * 200:
93
- * description: OK
94
- * content:
95
- * application/json:
96
- * schema:
97
- * properties:
98
- * orders:
99
- * type: array
100
- * items:
101
- * $ref: "#/components/schemas/order"
104
+ * "200":
105
+ * description: OK
106
+ * content:
107
+ * application/json:
108
+ * schema:
109
+ * properties:
110
+ * tags:
111
+ * $ref: "#/components/schemas/product_tag"
102
112
  */
103
113
  exports.default = (function (req, res) { return __awaiter(void 0, void 0, void 0, function () {
104
- var value, rateService, listConfig, filterableFields, _a, rates, count, data;
105
- return __generator(this, function (_b) {
106
- switch (_b.label) {
107
- case 0: return [4 /*yield*/, (0, validator_1.validator)(AdminGetTaxRatesParams, req.query)];
114
+ var validated, tagService, listConfig, orderField, _a, field, filterableFields, _b, tags, count;
115
+ var _c, _d;
116
+ return __generator(this, function (_e) {
117
+ switch (_e.label) {
118
+ case 0: return [4 /*yield*/, (0, validator_1.validator)(AdminGetProductTagsParams, req.query)];
108
119
  case 1:
109
- value = _b.sent();
110
- rateService = req.scope.resolve("taxRateService");
111
- listConfig = (0, get_query_config_1.getListConfig)();
112
- filterableFields = (0, lodash_1.omit)(value, [
113
- "limit",
114
- "offset",
115
- "expand",
116
- "fields",
117
- "order",
118
- ]);
119
- return [4 /*yield*/, rateService.listAndCount((0, lodash_1.pickBy)(filterableFields, lodash_1.identity), listConfig)];
120
+ validated = _e.sent();
121
+ tagService = req.scope.resolve("productTagService");
122
+ listConfig = {
123
+ select: _1.defaultAdminProductTagsFields,
124
+ relations: _1.defaultAdminProductTagsRelations,
125
+ skip: validated.offset,
126
+ take: validated.limit,
127
+ };
128
+ if (typeof validated.order !== "undefined") {
129
+ orderField = validated.order;
130
+ if (validated.order.startsWith("-")) {
131
+ _a = __read(validated.order.split("-"), 2), field = _a[1];
132
+ orderField = field;
133
+ listConfig.order = (_c = {}, _c[field] = "DESC", _c);
134
+ }
135
+ else {
136
+ listConfig.order = (_d = {}, _d[validated.order] = "ASC", _d);
137
+ }
138
+ if (!_1.allowedAdminProductTagsFields.includes(orderField)) {
139
+ throw new medusa_core_utils_1.MedusaError(medusa_core_utils_1.MedusaError.Types.INVALID_DATA, "Order field must be a valid product tag field");
140
+ }
141
+ }
142
+ filterableFields = (0, lodash_1.omit)(validated, ["limit", "offset"]);
143
+ return [4 /*yield*/, tagService.listAndCount((0, lodash_1.pickBy)(filterableFields, lodash_1.identity), listConfig)];
120
144
  case 2:
121
- _a = __read.apply(void 0, [_b.sent(), 2]), rates = _a[0], count = _a[1];
122
- data = (0, get_query_config_1.pickByConfig)(rates, listConfig);
123
- res.json({ tax_rates: data, count: count, offset: value.offset, limit: value.limit });
145
+ _b = __read.apply(void 0, [_e.sent(), 2]), tags = _b[0], count = _b[1];
146
+ res.status(200).json({
147
+ product_tags: tags,
148
+ count: count,
149
+ offset: validated.offset,
150
+ limit: validated.limit,
151
+ });
124
152
  return [2 /*return*/];
125
153
  }
126
154
  });
127
155
  }); });
128
- var AdminGetTaxRatesParams = /** @class */ (function () {
129
- function AdminGetTaxRatesParams() {
156
+ var AdminGetProductTagsPaginationParams = /** @class */ (function () {
157
+ function AdminGetProductTagsPaginationParams() {
158
+ this.limit = 10;
130
159
  this.offset = 0;
131
- this.limit = 50;
132
160
  }
133
161
  __decorate([
162
+ (0, class_validator_1.IsNumber)(),
134
163
  (0, class_validator_1.IsOptional)(),
135
- (0, is_type_1.IsType)([String, [String]]),
164
+ (0, class_transformer_1.Type)(function () { return Number; }),
136
165
  __metadata("design:type", Object)
137
- ], AdminGetTaxRatesParams.prototype, "region_id", void 0);
166
+ ], AdminGetProductTagsPaginationParams.prototype, "limit", void 0);
138
167
  __decorate([
139
- (0, class_validator_1.IsString)(),
140
- (0, class_validator_1.IsOptional)(),
141
- __metadata("design:type", String)
142
- ], AdminGetTaxRatesParams.prototype, "name", void 0);
143
- __decorate([
144
- (0, class_validator_1.IsString)(),
168
+ (0, class_validator_1.IsNumber)(),
145
169
  (0, class_validator_1.IsOptional)(),
146
- __metadata("design:type", String)
147
- ], AdminGetTaxRatesParams.prototype, "code", void 0);
170
+ (0, class_transformer_1.Type)(function () { return Number; }),
171
+ __metadata("design:type", Object)
172
+ ], AdminGetProductTagsPaginationParams.prototype, "offset", void 0);
173
+ return AdminGetProductTagsPaginationParams;
174
+ }());
175
+ exports.AdminGetProductTagsPaginationParams = AdminGetProductTagsPaginationParams;
176
+ var AdminGetProductTagsParams = /** @class */ (function (_super) {
177
+ __extends(AdminGetProductTagsParams, _super);
178
+ function AdminGetProductTagsParams() {
179
+ return _super !== null && _super.apply(this, arguments) || this;
180
+ }
148
181
  __decorate([
149
- (0, is_type_1.IsType)([common_1.NumericalComparisonOperator, Number]),
182
+ (0, class_validator_1.ValidateNested)(),
183
+ (0, is_type_1.IsType)([String, [String], common_1.StringComparisonOperator]),
150
184
  (0, class_validator_1.IsOptional)(),
151
185
  __metadata("design:type", Object)
152
- ], AdminGetTaxRatesParams.prototype, "rate", void 0);
186
+ ], AdminGetProductTagsParams.prototype, "id", void 0);
153
187
  __decorate([
154
- (0, class_validator_1.IsNumber)(),
188
+ (0, class_validator_1.ValidateNested)(),
189
+ (0, is_type_1.IsType)([String, [String], common_1.StringComparisonOperator]),
155
190
  (0, class_validator_1.IsOptional)(),
156
- (0, class_transformer_1.Type)(function () { return Number; }),
157
191
  __metadata("design:type", Object)
158
- ], AdminGetTaxRatesParams.prototype, "offset", void 0);
192
+ ], AdminGetProductTagsParams.prototype, "value", void 0);
159
193
  __decorate([
160
- (0, class_validator_1.IsNumber)(),
194
+ (0, is_type_1.IsType)([common_1.DateComparisonOperator]),
161
195
  (0, class_validator_1.IsOptional)(),
162
- (0, class_transformer_1.Type)(function () { return Number; }),
163
- __metadata("design:type", Object)
164
- ], AdminGetTaxRatesParams.prototype, "limit", void 0);
196
+ __metadata("design:type", common_1.DateComparisonOperator)
197
+ ], AdminGetProductTagsParams.prototype, "created_at", void 0);
165
198
  __decorate([
166
- (0, class_validator_1.IsArray)(),
199
+ (0, is_type_1.IsType)([common_1.DateComparisonOperator]),
167
200
  (0, class_validator_1.IsOptional)(),
168
- __metadata("design:type", Array)
169
- ], AdminGetTaxRatesParams.prototype, "expand", void 0);
201
+ __metadata("design:type", common_1.DateComparisonOperator)
202
+ ], AdminGetProductTagsParams.prototype, "updated_at", void 0);
170
203
  __decorate([
171
- (0, class_validator_1.IsArray)(),
204
+ (0, class_validator_1.IsString)(),
172
205
  (0, class_validator_1.IsOptional)(),
173
- __metadata("design:type", Array)
174
- ], AdminGetTaxRatesParams.prototype, "fields", void 0);
175
- return AdminGetTaxRatesParams;
176
- }());
177
- exports.AdminGetTaxRatesParams = AdminGetTaxRatesParams;
178
- //# sourceMappingURL=list-tax-rates.js.map
206
+ __metadata("design:type", String)
207
+ ], AdminGetProductTagsParams.prototype, "order", void 0);
208
+ return AdminGetProductTagsParams;
209
+ }(AdminGetProductTagsPaginationParams));
210
+ exports.AdminGetProductTagsParams = AdminGetProductTagsParams;
211
+ //# sourceMappingURL=list-product-tags.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-product-tags.js","sourceRoot":"","sources":["../../../../../src/api/routes/admin/product-tags/list-product-tags.ts"],"names":[],"mappings":"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"}
@@ -14,31 +14,12 @@ var __extends = (this && this.__extends) || (function () {
14
14
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
15
  };
16
16
  })();
17
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
- if (k2 === undefined) k2 = k;
19
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
20
- }) : (function(o, m, k, k2) {
21
- if (k2 === undefined) k2 = k;
22
- o[k2] = m[k];
23
- }));
24
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
- Object.defineProperty(o, "default", { enumerable: true, value: v });
26
- }) : function(o, v) {
27
- o["default"] = v;
28
- });
29
17
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
30
18
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
31
19
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
32
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;
33
21
  return c > 3 && r && Object.defineProperty(target, key, r), r;
34
22
  };
35
- var __importStar = (this && this.__importStar) || function (mod) {
36
- if (mod && mod.__esModule) return mod;
37
- var result = {};
38
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
39
- __setModuleDefault(result, mod);
40
- return result;
41
- };
42
23
  var __metadata = (this && this.__metadata) || function (k, v) {
43
24
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
44
25
  };
@@ -98,7 +79,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
98
79
  exports.AdminGetProductsParams = exports.AdminGetProductsPaginationParams = exports.ProductStatus = void 0;
99
80
  var class_transformer_1 = require("class-transformer");
100
81
  var class_validator_1 = require("class-validator");
101
- var _ = __importStar(require("lodash"));
82
+ var lodash_1 = require("lodash");
83
+ var medusa_core_utils_1 = require("medusa-core-utils");
102
84
  var _1 = require(".");
103
85
  var common_1 = require("../../../../types/common");
104
86
  var validator_1 = require("../../../../utils/validator");
@@ -151,12 +133,13 @@ var validator_1 = require("../../../../utils/validator");
151
133
  * $ref: "#/components/schemas/product"
152
134
  */
153
135
  exports.default = (function (req, res) { return __awaiter(void 0, void 0, void 0, function () {
154
- var validatedParams, productService, includeFields, expandFields, listConfig, filterableFields, _a, products, count;
155
- return __generator(this, function (_b) {
156
- switch (_b.label) {
136
+ var validatedParams, productService, includeFields, expandFields, listConfig, orderField, _a, field, filterableFields, _b, products, count;
137
+ var _c, _d;
138
+ return __generator(this, function (_e) {
139
+ switch (_e.label) {
157
140
  case 0: return [4 /*yield*/, (0, validator_1.validator)(AdminGetProductsParams, req.query)];
158
141
  case 1:
159
- validatedParams = _b.sent();
142
+ validatedParams = _e.sent();
160
143
  productService = req.scope.resolve("productService");
161
144
  includeFields = [];
162
145
  if (validatedParams.fields) {
@@ -167,23 +150,39 @@ exports.default = (function (req, res) { return __awaiter(void 0, void 0, void 0
167
150
  expandFields = validatedParams.expand.split(",");
168
151
  }
169
152
  listConfig = {
170
- select: includeFields.length ? includeFields : _1.defaultAdminProductFields,
153
+ select: (includeFields.length
154
+ ? includeFields
155
+ : _1.defaultAdminProductFields),
171
156
  relations: expandFields.length
172
157
  ? expandFields
173
158
  : _1.defaultAdminProductRelations,
174
159
  skip: validatedParams.offset,
175
160
  take: validatedParams.limit,
176
161
  };
177
- filterableFields = _.omit(validatedParams, [
162
+ if (typeof validatedParams.order !== "undefined") {
163
+ orderField = validatedParams.order;
164
+ if (validatedParams.order.startsWith("-")) {
165
+ _a = __read(validatedParams.order.split("-"), 2), field = _a[1];
166
+ orderField = field;
167
+ listConfig.order = (_c = {}, _c[field] = "DESC", _c);
168
+ }
169
+ else {
170
+ listConfig.order = (_d = {}, _d[validatedParams.order] = "ASC", _d);
171
+ }
172
+ if (!_1.allowedAdminProductFields.includes(orderField)) {
173
+ throw new medusa_core_utils_1.MedusaError(medusa_core_utils_1.MedusaError.Types.INVALID_DATA, "Order field must be a valid product field");
174
+ }
175
+ }
176
+ filterableFields = (0, lodash_1.omit)(validatedParams, [
178
177
  "limit",
179
178
  "offset",
180
179
  "expand",
181
180
  "fields",
182
181
  "order",
183
182
  ]);
184
- return [4 /*yield*/, productService.listAndCount(_.pickBy(filterableFields, function (val) { return typeof val !== "undefined"; }), listConfig)];
183
+ return [4 /*yield*/, productService.listAndCount((0, lodash_1.pickBy)(filterableFields, function (val) { return typeof val !== "undefined"; }), listConfig)];
185
184
  case 2:
186
- _a = __read.apply(void 0, [_b.sent(), 2]), products = _a[0], count = _a[1];
185
+ _b = __read.apply(void 0, [_e.sent(), 2]), products = _b[0], count = _b[1];
187
186
  res.json({
188
187
  products: products,
189
188
  count: count,
@@ -1 +1 @@
1
- {"version":3,"file":"list-products.js","sourceRoot":"","sources":["../../../../../src/api/routes/admin/products/list-products.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"list-products.js","sourceRoot":"","sources":["../../../../../src/api/routes/admin/products/list-products.ts"],"names":[],"mappings":"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"}
@@ -44,6 +44,22 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
44
44
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
45
45
  }
46
46
  };
47
+ var __read = (this && this.__read) || function (o, n) {
48
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
49
+ if (!m) return o;
50
+ var i = m.call(o), r, ar = [], e;
51
+ try {
52
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
53
+ }
54
+ catch (error) { e = { error: error }; }
55
+ finally {
56
+ try {
57
+ if (r && !r.done && (m = i["return"])) m.call(i);
58
+ }
59
+ finally { if (e) throw e.error; }
60
+ }
61
+ return ar;
62
+ };
47
63
  Object.defineProperty(exports, "__esModule", { value: true });
48
64
  exports.AdminGetVariantsParams = void 0;
49
65
  var _1 = require("./");
@@ -75,17 +91,17 @@ var class_validator_1 = require("class-validator");
75
91
  * $ref: "#/components/schemas/product_variant"
76
92
  */
77
93
  exports.default = (function (req, res) { return __awaiter(void 0, void 0, void 0, function () {
78
- var variantService, _a, offset, limit, q, selector, listConfig, variants;
79
- return __generator(this, function (_b) {
80
- switch (_b.label) {
94
+ var variantService, _a, offset, limit, q, selector, listConfig, _b, variants, count;
95
+ return __generator(this, function (_c) {
96
+ switch (_c.label) {
81
97
  case 0:
82
98
  variantService = req.scope.resolve("productVariantService");
83
99
  return [4 /*yield*/, (0, validator_1.validator)(AdminGetVariantsParams, req.query)];
84
100
  case 1:
85
- _a = _b.sent(), offset = _a.offset, limit = _a.limit, q = _a.q;
101
+ _a = _c.sent(), offset = _a.offset, limit = _a.limit, q = _a.q;
86
102
  selector = {};
87
103
  if ("q" in req.query) {
88
- selector.q = req.query.q;
104
+ selector.q = q;
89
105
  }
90
106
  listConfig = {
91
107
  select: _1.defaultAdminVariantFields,
@@ -93,10 +109,10 @@ exports.default = (function (req, res) { return __awaiter(void 0, void 0, void 0
93
109
  skip: offset,
94
110
  take: limit,
95
111
  };
96
- return [4 /*yield*/, variantService.list(selector, listConfig)];
112
+ return [4 /*yield*/, variantService.listAndCount(selector, listConfig)];
97
113
  case 2:
98
- variants = _b.sent();
99
- res.json({ variants: variants, count: variants.length, offset: offset, limit: limit });
114
+ _b = __read.apply(void 0, [_c.sent(), 2]), variants = _b[0], count = _b[1];
115
+ res.json({ variants: variants, count: count, offset: offset, limit: limit });
100
116
  return [2 /*return*/];
101
117
  }
102
118
  });
@@ -1 +1 @@
1
- {"version":3,"file":"list-variants.js","sourceRoot":"","sources":["../../../../../src/api/routes/admin/variants/list-variants.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uBAA4E;AAM5E,yDAAuD;AACvD,uDAAwC;AACxC,mDAA6D;AAC7D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,mBAAe,UAAO,GAAG,EAAE,GAAG;;;;;gBACtB,cAAc,GAA0B,GAAG,CAAC,KAAK,CAAC,OAAO,CAC7D,uBAAuB,CACxB,CAAA;gBAE4B,qBAAM,IAAA,qBAAS,EAC1C,sBAAsB,EACtB,GAAG,CAAC,KAAK,CACV,EAAA;;gBAHK,KAAuB,SAG5B,EAHO,MAAM,YAAA,EAAE,KAAK,WAAA,EAAE,CAAC,OAAA;gBAKlB,QAAQ,GAAkC,EAAE,CAAA;gBAElD,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,EAAE;oBACpB,QAAQ,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;iBACzB;gBAEK,UAAU,GAA+B;oBAC7C,MAAM,EAAE,4BAAyB;oBACjC,SAAS,EAAE,+BAA4B;oBACvC,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,KAAK;iBACZ,CAAA;gBAEgB,qBAAM,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAA;;gBAA1D,QAAQ,GAAG,SAA+C;gBAEhE,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,UAAA,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,QAAA,EAAE,KAAK,OAAA,EAAE,CAAC,CAAA;;;;KAC9D,EAAA;AAED;IAAA;QAQE,UAAK,GAAY,EAAE,CAAA;QAKnB,WAAM,GAAY,CAAC,CAAA;IACrB,CAAC;IAXC;QAFC,IAAA,0BAAQ,GAAE;QACV,IAAA,4BAAU,GAAE;;qDACH;IAKV;QAHC,IAAA,uBAAK,GAAE;QACP,IAAA,4BAAU,GAAE;QACZ,IAAA,wBAAI,EAAC,cAAM,OAAA,MAAM,EAAN,CAAM,CAAC;;yDACA;IAKnB;QAHC,IAAA,uBAAK,GAAE;QACP,IAAA,4BAAU,GAAE;QACZ,IAAA,wBAAI,EAAC,cAAM,OAAA,MAAM,EAAN,CAAM,CAAC;;0DACA;IACrB,6BAAC;CAAA,AAdD,IAcC;AAdY,wDAAsB"}
1
+ {"version":3,"file":"list-variants.js","sourceRoot":"","sources":["../../../../../src/api/routes/admin/variants/list-variants.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uBAA4E;AAM5E,yDAAuD;AACvD,uDAAwC;AACxC,mDAA6D;AAC7D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,mBAAe,UAAO,GAAG,EAAE,GAAG;;;;;gBACtB,cAAc,GAA0B,GAAG,CAAC,KAAK,CAAC,OAAO,CAC7D,uBAAuB,CACxB,CAAA;gBAE4B,qBAAM,IAAA,qBAAS,EAC1C,sBAAsB,EACtB,GAAG,CAAC,KAAK,CACV,EAAA;;gBAHK,KAAuB,SAG5B,EAHO,MAAM,YAAA,EAAE,KAAK,WAAA,EAAE,CAAC,OAAA;gBAKlB,QAAQ,GAAkC,EAAE,CAAA;gBAElD,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,EAAE;oBACpB,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAA;iBACf;gBAEK,UAAU,GAA+B;oBAC7C,MAAM,EAAE,4BAAyB;oBACjC,SAAS,EAAE,+BAA4B;oBACvC,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,KAAK;iBACZ,CAAA;gBAEyB,qBAAM,cAAc,CAAC,YAAY,CACzD,QAAQ,EACR,UAAU,CACX,EAAA;;gBAHK,KAAA,sBAAoB,SAGzB,KAAA,EAHM,QAAQ,QAAA,EAAE,KAAK,QAAA;gBAKtB,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,UAAA,EAAE,KAAK,OAAA,EAAE,MAAM,QAAA,EAAE,KAAK,OAAA,EAAE,CAAC,CAAA;;;;KAC7C,EAAA;AAED;IAAA;QAQE,UAAK,GAAY,EAAE,CAAA;QAKnB,WAAM,GAAY,CAAC,CAAA;IACrB,CAAC;IAXC;QAFC,IAAA,0BAAQ,GAAE;QACV,IAAA,4BAAU,GAAE;;qDACH;IAKV;QAHC,IAAA,uBAAK,GAAE;QACP,IAAA,4BAAU,GAAE;QACZ,IAAA,wBAAI,EAAC,cAAM,OAAA,MAAM,EAAN,CAAM,CAAC;;yDACA;IAKnB;QAHC,IAAA,uBAAK,GAAE;QACP,IAAA,4BAAU,GAAE;QACZ,IAAA,wBAAI,EAAC,cAAM,OAAA,MAAM,EAAN,CAAM,CAAC;;0DACA;IACrB,6BAAC;CAAA,AAdD,IAcC;AAdY,wDAAsB"}
@@ -1,4 +1,15 @@
1
- import { Repository } from "typeorm";
1
+ import { FindManyOptions, OrderByCondition, Repository } from "typeorm";
2
2
  import { ProductVariant } from "../models/product-variant";
3
+ export declare type FindWithRelationsOptions = FindManyOptions<ProductVariant> & {
4
+ order?: OrderByCondition;
5
+ withDeleted?: boolean;
6
+ };
3
7
  export declare class ProductVariantRepository extends Repository<ProductVariant> {
8
+ private mergeEntitiesWithRelations;
9
+ private queryProductsVariants;
10
+ private getGroupedRelations;
11
+ private queryProductVariantsWithIds;
12
+ findWithRelationsAndCount(relations?: string[], idsOrOptionsWithoutRelations?: FindWithRelationsOptions | string[], withDeleted?: boolean): Promise<[ProductVariant[], number]>;
13
+ findWithRelations(relations?: string[], idsOrOptionsWithoutRelations?: FindWithRelationsOptions | string[], withDeleted?: boolean): Promise<ProductVariant[]>;
14
+ findOneWithRelations(relations?: Array<keyof ProductVariant>, optionsWithoutRelations?: FindWithRelationsOptions): Promise<ProductVariant>;
4
15
  }