@medusajs/medusa 1.1.62 → 1.1.63-adminc.21

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 (150) hide show
  1. package/dist/api/routes/admin/collections/list-collections.d.ts +16 -3
  2. package/dist/api/routes/admin/collections/list-collections.js +88 -10
  3. package/dist/api/routes/admin/collections/list-collections.js.map +1 -1
  4. package/dist/api/routes/admin/discounts/list-discounts.d.ts +6 -0
  5. package/dist/api/routes/admin/discounts/list-discounts.js +45 -8
  6. package/dist/api/routes/admin/discounts/list-discounts.js.map +1 -1
  7. package/dist/api/routes/admin/orders/list-orders.js +1 -1
  8. package/dist/api/routes/admin/orders/list-orders.js.map +1 -1
  9. package/dist/api/routes/admin/products/list-products.js +1 -2
  10. package/dist/api/routes/admin/products/list-products.js.map +1 -1
  11. package/dist/api/routes/admin/tax-rates/add-to-product-types.d.ts +29 -0
  12. package/dist/api/routes/admin/tax-rates/add-to-product-types.js +177 -0
  13. package/dist/api/routes/admin/tax-rates/add-to-product-types.js.map +1 -0
  14. package/dist/api/routes/admin/tax-rates/add-to-products.d.ts +29 -0
  15. package/dist/api/routes/admin/tax-rates/add-to-products.js +173 -0
  16. package/dist/api/routes/admin/tax-rates/add-to-products.js.map +1 -0
  17. package/dist/api/routes/admin/tax-rates/add-to-shipping-options.d.ts +29 -0
  18. package/dist/api/routes/admin/tax-rates/add-to-shipping-options.js +177 -0
  19. package/dist/api/routes/admin/tax-rates/add-to-shipping-options.js.map +1 -0
  20. package/dist/api/routes/admin/tax-rates/create-tax-rate.d.ts +35 -0
  21. package/dist/api/routes/admin/tax-rates/create-tax-rate.js +286 -0
  22. package/dist/api/routes/admin/tax-rates/create-tax-rate.js.map +1 -0
  23. package/dist/api/routes/admin/tax-rates/delete-tax-rate.d.ts +28 -0
  24. package/dist/api/routes/admin/tax-rates/delete-tax-rate.js +84 -0
  25. package/dist/api/routes/admin/tax-rates/delete-tax-rate.js.map +1 -0
  26. package/dist/api/routes/admin/tax-rates/get-tax-rate.d.ts +26 -0
  27. package/dist/api/routes/admin/tax-rates/get-tax-rate.js +106 -0
  28. package/dist/api/routes/admin/tax-rates/get-tax-rate.js.map +1 -0
  29. package/dist/api/routes/admin/tax-rates/index.d.ts +21 -0
  30. package/dist/api/routes/admin/tax-rates/index.js +74 -0
  31. package/dist/api/routes/admin/tax-rates/index.js.map +1 -0
  32. package/dist/api/routes/admin/tax-rates/list-tax-rates.d.ts +44 -0
  33. package/dist/api/routes/admin/tax-rates/list-tax-rates.js +178 -0
  34. package/dist/api/routes/admin/tax-rates/list-tax-rates.js.map +1 -0
  35. package/dist/api/routes/admin/tax-rates/update-tax-rate.d.ts +35 -0
  36. package/dist/api/routes/admin/tax-rates/update-tax-rate.js +286 -0
  37. package/dist/api/routes/admin/tax-rates/update-tax-rate.js.map +1 -0
  38. package/dist/api/routes/admin/tax-rates/utils/get-query-config.d.ts +7 -0
  39. package/dist/api/routes/admin/tax-rates/utils/get-query-config.js +91 -0
  40. package/dist/api/routes/admin/tax-rates/utils/get-query-config.js.map +1 -0
  41. package/dist/api/routes/store/carts/calculate-taxes.d.ts +24 -0
  42. package/dist/api/routes/store/carts/calculate-taxes.js +153 -0
  43. package/dist/api/routes/store/carts/calculate-taxes.js.map +1 -0
  44. package/dist/interfaces/cart-completion-strategy.d.ts +20 -0
  45. package/dist/interfaces/cart-completion-strategy.js +10 -0
  46. package/dist/interfaces/cart-completion-strategy.js.map +1 -0
  47. package/dist/interfaces/index.d.ts +3 -0
  48. package/dist/interfaces/index.js +16 -0
  49. package/dist/interfaces/index.js.map +1 -0
  50. package/dist/interfaces/tax-calculation-strategy.d.ts +16 -0
  51. package/dist/interfaces/tax-calculation-strategy.js +10 -0
  52. package/dist/interfaces/tax-calculation-strategy.js.map +1 -0
  53. package/dist/interfaces/tax-service.d.ts +51 -0
  54. package/dist/interfaces/tax-service.js +3 -0
  55. package/dist/interfaces/tax-service.js.map +1 -0
  56. package/dist/loaders/strategies.d.ts +12 -0
  57. package/dist/loaders/strategies.js +32 -0
  58. package/dist/loaders/strategies.js.map +1 -0
  59. package/dist/migrations/1641636508055-new_tax_system.d.ts +6 -0
  60. package/dist/migrations/1641636508055-new_tax_system.js +248 -0
  61. package/dist/migrations/1641636508055-new_tax_system.js.map +1 -0
  62. package/dist/models/discount.js +2 -1
  63. package/dist/models/discount.js.map +1 -1
  64. package/dist/models/line-item-tax-line.d.ts +7 -0
  65. package/dist/models/line-item-tax-line.js +65 -0
  66. package/dist/models/line-item-tax-line.js.map +1 -0
  67. package/dist/models/product-tax-rate.d.ts +40 -0
  68. package/dist/models/product-tax-rate.js +88 -0
  69. package/dist/models/product-tax-rate.js.map +1 -0
  70. package/dist/models/product-type-tax-rate.d.ts +40 -0
  71. package/dist/models/product-type-tax-rate.js +88 -0
  72. package/dist/models/product-type-tax-rate.js.map +1 -0
  73. package/dist/models/shipping-method-tax-line.d.ts +7 -0
  74. package/dist/models/shipping-method-tax-line.js +65 -0
  75. package/dist/models/shipping-method-tax-line.js.map +1 -0
  76. package/dist/models/shipping-tax-rate.d.ts +40 -0
  77. package/dist/models/shipping-tax-rate.js +88 -0
  78. package/dist/models/shipping-tax-rate.js.map +1 -0
  79. package/dist/models/tax-line.d.ts +39 -0
  80. package/dist/models/tax-line.js +79 -0
  81. package/dist/models/tax-line.js.map +1 -0
  82. package/dist/models/tax-provider.d.ts +17 -0
  83. package/dist/models/tax-provider.js +44 -0
  84. package/dist/models/tax-provider.js.map +1 -0
  85. package/dist/models/tax-rate.d.ts +58 -0
  86. package/dist/models/tax-rate.js +159 -0
  87. package/dist/models/tax-rate.js.map +1 -0
  88. package/dist/repositories/line-item-tax-line.d.ts +4 -0
  89. package/dist/repositories/line-item-tax-line.js +38 -0
  90. package/dist/repositories/line-item-tax-line.js.map +1 -0
  91. package/dist/repositories/product-tax-rate.d.ts +4 -0
  92. package/dist/repositories/product-tax-rate.js +38 -0
  93. package/dist/repositories/product-tax-rate.js.map +1 -0
  94. package/dist/repositories/shipping-method-tax-line.d.ts +4 -0
  95. package/dist/repositories/shipping-method-tax-line.js +38 -0
  96. package/dist/repositories/shipping-method-tax-line.js.map +1 -0
  97. package/dist/repositories/shipping-tax-rate.d.ts +4 -0
  98. package/dist/repositories/shipping-tax-rate.js +38 -0
  99. package/dist/repositories/shipping-tax-rate.js.map +1 -0
  100. package/dist/repositories/tax-rate.d.ts +18 -0
  101. package/dist/repositories/tax-rate.js +359 -0
  102. package/dist/repositories/tax-rate.js.map +1 -0
  103. package/dist/services/product-tax-rate.d.ts +25 -0
  104. package/dist/services/product-tax-rate.js +104 -0
  105. package/dist/services/product-tax-rate.js.map +1 -0
  106. package/dist/services/product-type.d.ts +27 -0
  107. package/dist/services/product-type.js +112 -0
  108. package/dist/services/product-type.js.map +1 -0
  109. package/dist/services/shipping-tax-rate.d.ts +26 -0
  110. package/dist/services/shipping-tax-rate.js +105 -0
  111. package/dist/services/shipping-tax-rate.js.map +1 -0
  112. package/dist/services/system-tax.d.ts +9 -0
  113. package/dist/services/system-tax.js +89 -0
  114. package/dist/services/system-tax.js.map +1 -0
  115. package/dist/services/tax-provider.d.ts +105 -0
  116. package/dist/services/tax-provider.js +455 -0
  117. package/dist/services/tax-provider.js.map +1 -0
  118. package/dist/services/tax-rate.d.ts +31 -0
  119. package/dist/services/tax-rate.js +405 -0
  120. package/dist/services/tax-rate.js.map +1 -0
  121. package/dist/strategies/cart-completion.d.ts +17 -0
  122. package/dist/strategies/cart-completion.js +336 -0
  123. package/dist/strategies/cart-completion.js.map +1 -0
  124. package/dist/strategies/tax-calculation.d.ts +11 -0
  125. package/dist/strategies/tax-calculation.js +147 -0
  126. package/dist/strategies/tax-calculation.js.map +1 -0
  127. package/dist/types/discount.js.map +1 -1
  128. package/dist/types/orders.js +1 -1
  129. package/dist/types/orders.js.map +1 -1
  130. package/dist/types/product-tax-rate.d.ts +10 -0
  131. package/dist/types/product-tax-rate.js +13 -0
  132. package/dist/types/product-tax-rate.js.map +1 -0
  133. package/dist/types/request.d.ts +3 -0
  134. package/dist/types/request.js +3 -0
  135. package/dist/types/request.js.map +1 -0
  136. package/dist/types/shipping-tax-rate.d.ts +10 -0
  137. package/dist/types/shipping-tax-rate.js +13 -0
  138. package/dist/types/shipping-tax-rate.js.map +1 -0
  139. package/dist/types/tax-rate.d.ts +25 -0
  140. package/dist/types/tax-rate.js +3 -0
  141. package/dist/types/tax-rate.js.map +1 -0
  142. package/dist/types/tax-service.d.ts +34 -0
  143. package/dist/types/tax-service.js +3 -0
  144. package/dist/types/tax-service.js.map +1 -0
  145. package/dist/types/totals.d.ts +42 -0
  146. package/dist/types/totals.js +3 -0
  147. package/dist/types/totals.js.map +1 -0
  148. package/jest.config.js +17 -0
  149. package/package.json +3 -3
  150. package/yarn-error.log +79 -5
@@ -0,0 +1,44 @@
1
+ import { NumericalComparisonOperator } from "../../../../types/common";
2
+ declare const _default: (req: any, res: any) => Promise<void>;
3
+ /**
4
+ * @oas [get] /tax-rates
5
+ * operationId: "GetTaxRates"
6
+ * summary: "List Tax Rates"
7
+ * description: "Retrieves a list of TaxRates"
8
+ * x-authenticated: true
9
+ * parameters:
10
+ * - (query) q {string} Query used for searching orders.
11
+ * - (query) id {string} Id of the order to search for.
12
+ * - (query) region_id {string} to search for.
13
+ * - (query) code {string} to search for.
14
+ * - (query) rate {string} to search for.
15
+ * - (query) created_at {DateComparisonOperator} Date comparison for when resulting orders was created, i.e. less than, greater than etc.
16
+ * - (query) updated_at {DateComparisonOperator} Date comparison for when resulting orders was updated, i.e. less than, greater than etc.
17
+ * - (query) offset {string} How many orders to skip in the result.
18
+ * - (query) limit {string} Limit the number of orders returned.
19
+ * - (query) fields {string} (Comma separated) Which fields should be included in each order of the result.
20
+ * tags:
21
+ * - Order
22
+ * responses:
23
+ * 200:
24
+ * description: OK
25
+ * content:
26
+ * application/json:
27
+ * schema:
28
+ * properties:
29
+ * orders:
30
+ * type: array
31
+ * items:
32
+ * $ref: "#/components/schemas/order"
33
+ */
34
+ export default _default;
35
+ export declare class AdminGetTaxRatesParams {
36
+ region_id?: string | string[];
37
+ name?: string;
38
+ code?: string;
39
+ rate?: number | NumericalComparisonOperator;
40
+ offset: number;
41
+ limit: number;
42
+ expand?: string[];
43
+ fields?: string[];
44
+ }
@@ -0,0 +1,178 @@
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
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
12
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
13
+ return new (P || (P = Promise))(function (resolve, reject) {
14
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
15
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
16
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
17
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
18
+ });
19
+ };
20
+ var __generator = (this && this.__generator) || function (thisArg, body) {
21
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
22
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
23
+ function verb(n) { return function (v) { return step([n, v]); }; }
24
+ function step(op) {
25
+ if (f) throw new TypeError("Generator is already executing.");
26
+ while (_) try {
27
+ 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;
28
+ if (y = 0, t) op = [op[0] & 2, t.value];
29
+ switch (op[0]) {
30
+ case 0: case 1: t = op; break;
31
+ case 4: _.label++; return { value: op[1], done: false };
32
+ case 5: _.label++; y = op[1]; op = [0]; continue;
33
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
34
+ default:
35
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
36
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
37
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
38
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
39
+ if (t[2]) _.ops.pop();
40
+ _.trys.pop(); continue;
41
+ }
42
+ op = body.call(thisArg, _);
43
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
44
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
45
+ }
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
+ };
63
+ 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");
67
+ var class_transformer_1 = require("class-transformer");
68
+ var lodash_1 = require("lodash");
69
+ var common_1 = require("../../../../types/common");
70
+ var is_type_1 = require("../../../../utils/validators/is-type");
71
+ var validator_1 = require("../../../../utils/validator");
72
+ /**
73
+ * @oas [get] /tax-rates
74
+ * operationId: "GetTaxRates"
75
+ * summary: "List Tax Rates"
76
+ * description: "Retrieves a list of TaxRates"
77
+ * x-authenticated: true
78
+ * 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.
89
+ * tags:
90
+ * - Order
91
+ * 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"
102
+ */
103
+ 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)];
108
+ 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
+ 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 });
124
+ return [2 /*return*/];
125
+ }
126
+ });
127
+ }); });
128
+ var AdminGetTaxRatesParams = /** @class */ (function () {
129
+ function AdminGetTaxRatesParams() {
130
+ this.offset = 0;
131
+ this.limit = 50;
132
+ }
133
+ __decorate([
134
+ (0, class_validator_1.IsOptional)(),
135
+ (0, is_type_1.IsType)([String, [String]]),
136
+ __metadata("design:type", Object)
137
+ ], AdminGetTaxRatesParams.prototype, "region_id", void 0);
138
+ __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)(),
145
+ (0, class_validator_1.IsOptional)(),
146
+ __metadata("design:type", String)
147
+ ], AdminGetTaxRatesParams.prototype, "code", void 0);
148
+ __decorate([
149
+ (0, is_type_1.IsType)([common_1.NumericalComparisonOperator, Number]),
150
+ (0, class_validator_1.IsOptional)(),
151
+ __metadata("design:type", Object)
152
+ ], AdminGetTaxRatesParams.prototype, "rate", void 0);
153
+ __decorate([
154
+ (0, class_validator_1.IsNumber)(),
155
+ (0, class_validator_1.IsOptional)(),
156
+ (0, class_transformer_1.Type)(function () { return Number; }),
157
+ __metadata("design:type", Object)
158
+ ], AdminGetTaxRatesParams.prototype, "offset", void 0);
159
+ __decorate([
160
+ (0, class_validator_1.IsNumber)(),
161
+ (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);
165
+ __decorate([
166
+ (0, class_validator_1.IsArray)(),
167
+ (0, class_validator_1.IsOptional)(),
168
+ __metadata("design:type", Array)
169
+ ], AdminGetTaxRatesParams.prototype, "expand", void 0);
170
+ __decorate([
171
+ (0, class_validator_1.IsArray)(),
172
+ (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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-tax-rates.js","sourceRoot":"","sources":["../../../../../src/api/routes/admin/tax-rates/list-tax-rates.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6DAAsE;AACtE,mDAMwB;AACxB,uDAAwC;AACxC,iCAAqD;AAGrD,mDAGiC;AAEjC,gEAA6D;AAC7D,yDAAuD;AAEvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,mBAAe,UAAO,GAAG,EAAE,GAAG;;;;oBACd,qBAAM,IAAA,qBAAS,EAAC,sBAAsB,EAAE,GAAG,CAAC,KAAK,CAAC,EAAA;;gBAA1D,KAAK,GAAG,SAAkD;gBAE1D,WAAW,GAAmB,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;gBAEjE,UAAU,GAAG,IAAA,gCAAa,GAAE,CAAA;gBAE5B,gBAAgB,GAAG,IAAA,aAAI,EAAC,KAAK,EAAE;oBACnC,OAAO;oBACP,QAAQ;oBACR,QAAQ;oBACR,QAAQ;oBACR,OAAO;iBACR,CAAC,CAAA;gBAEqB,qBAAM,WAAW,CAAC,YAAY,CACnD,IAAA,eAAM,EAAC,gBAAgB,EAAE,iBAAQ,CAAC,EAClC,UAAU,CACX,EAAA;;gBAHK,KAAA,sBAAiB,SAGtB,KAAA,EAHM,KAAK,QAAA,EAAE,KAAK,QAAA;gBAKb,IAAI,GAAG,IAAA,+BAAY,EAAU,KAAK,EAAE,UAAU,CAAC,CAAA;gBAErD,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,OAAA,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAA;;;;KAC/E,EAAA;AAED;IAAA;QAoBE,WAAM,GAAG,CAAC,CAAA;QAKV,UAAK,GAAG,EAAE,CAAA;IASZ,CAAC;IA/BC;QAFC,IAAA,4BAAU,GAAE;QACZ,IAAA,gBAAM,EAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;;6DACE;IAI7B;QAFC,IAAA,0BAAQ,GAAE;QACV,IAAA,4BAAU,GAAE;;wDACA;IAIb;QAFC,IAAA,0BAAQ,GAAE;QACV,IAAA,4BAAU,GAAE;;wDACA;IAIb;QAFC,IAAA,gBAAM,EAAC,CAAC,oCAA2B,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAA,4BAAU,GAAE;;wDAC8B;IAK3C;QAHC,IAAA,0BAAQ,GAAE;QACV,IAAA,4BAAU,GAAE;QACZ,IAAA,wBAAI,EAAC,cAAM,OAAA,MAAM,EAAN,CAAM,CAAC;;0DACT;IAKV;QAHC,IAAA,0BAAQ,GAAE;QACV,IAAA,4BAAU,GAAE;QACZ,IAAA,wBAAI,EAAC,cAAM,OAAA,MAAM,EAAN,CAAM,CAAC;;yDACT;IAIV;QAFC,IAAA,yBAAO,GAAE;QACT,IAAA,4BAAU,GAAE;;0DACI;IAIjB;QAFC,IAAA,yBAAO,GAAE;QACT,IAAA,4BAAU,GAAE;;0DACI;IACnB,6BAAC;CAAA,AAlCD,IAkCC;AAlCY,wDAAsB"}
@@ -0,0 +1,35 @@
1
+ declare const _default: (req: any, res: any) => Promise<void>;
2
+ /**
3
+ * @oas [post] /tax-rates/:id
4
+ * operationId: "PostTaxRatesTaxRate"
5
+ * summary: "Update a Tax Rate"
6
+ * description: "Updates a Tax Rate"
7
+ * x-authenticated: true
8
+ * tags:
9
+ * - Tax Rates
10
+ * responses:
11
+ * 200:
12
+ * description: OK
13
+ * content:
14
+ * application/json:
15
+ * schema:
16
+ * properties:
17
+ * tax_rate:
18
+ * type: array
19
+ * items:
20
+ * $ref: "#/components/schemas/tax_rate"
21
+ */
22
+ export default _default;
23
+ export declare class AdminPostTaxRatesTaxRateReq {
24
+ code?: string;
25
+ name?: string;
26
+ region_id?: string;
27
+ rate?: number | null;
28
+ products?: string[];
29
+ shipping_options?: string[];
30
+ product_types?: string[];
31
+ }
32
+ export declare class AdminPostTaxRatesTaxRateParams {
33
+ expand?: string[];
34
+ fields?: string[];
35
+ }
@@ -0,0 +1,286 @@
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
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
12
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
13
+ return new (P || (P = Promise))(function (resolve, reject) {
14
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
15
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
16
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
17
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
18
+ });
19
+ };
20
+ var __generator = (this && this.__generator) || function (thisArg, body) {
21
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
22
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
23
+ function verb(n) { return function (v) { return step([n, v]); }; }
24
+ function step(op) {
25
+ if (f) throw new TypeError("Generator is already executing.");
26
+ while (_) try {
27
+ 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;
28
+ if (y = 0, t) op = [op[0] & 2, t.value];
29
+ switch (op[0]) {
30
+ case 0: case 1: t = op; break;
31
+ case 4: _.label++; return { value: op[1], done: false };
32
+ case 5: _.label++; y = op[1]; op = [0]; continue;
33
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
34
+ default:
35
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
36
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
37
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
38
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
39
+ if (t[2]) _.ops.pop();
40
+ _.trys.pop(); continue;
41
+ }
42
+ op = body.call(thisArg, _);
43
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
44
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
45
+ }
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
+ };
63
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
64
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
65
+ if (ar || !(i in from)) {
66
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
67
+ ar[i] = from[i];
68
+ }
69
+ }
70
+ return to.concat(ar || Array.prototype.slice.call(from));
71
+ };
72
+ Object.defineProperty(exports, "__esModule", { value: true });
73
+ exports.AdminPostTaxRatesTaxRateParams = exports.AdminPostTaxRatesTaxRateReq = void 0;
74
+ var class_validator_1 = require("class-validator");
75
+ var lodash_1 = require("lodash");
76
+ var get_query_config_1 = require("./utils/get-query-config");
77
+ var validator_1 = require("../../../../utils/validator");
78
+ var is_type_1 = require("../../../../utils/validators/is-type");
79
+ /**
80
+ * @oas [post] /tax-rates/:id
81
+ * operationId: "PostTaxRatesTaxRate"
82
+ * summary: "Update a Tax Rate"
83
+ * description: "Updates a Tax Rate"
84
+ * x-authenticated: true
85
+ * tags:
86
+ * - Tax Rates
87
+ * responses:
88
+ * 200:
89
+ * description: OK
90
+ * content:
91
+ * application/json:
92
+ * schema:
93
+ * properties:
94
+ * tax_rate:
95
+ * type: array
96
+ * items:
97
+ * $ref: "#/components/schemas/tax_rate"
98
+ */
99
+ exports.default = (function (req, res) { return __awaiter(void 0, void 0, void 0, function () {
100
+ var value, query, manager, rateService, productService, productTypeService, shippingOptionService, config, rate, data;
101
+ return __generator(this, function (_a) {
102
+ switch (_a.label) {
103
+ case 0: return [4 /*yield*/, (0, validator_1.validator)(AdminPostTaxRatesTaxRateReq, req.body)];
104
+ case 1:
105
+ value = _a.sent();
106
+ return [4 /*yield*/, (0, validator_1.validator)(AdminPostTaxRatesTaxRateParams, req.query)];
107
+ case 2:
108
+ query = _a.sent();
109
+ manager = req.scope.resolve("manager");
110
+ rateService = req.scope.resolve("taxRateService");
111
+ productService = req.scope.resolve("productService");
112
+ productTypeService = req.scope.resolve("productTypeService");
113
+ shippingOptionService = req.scope.resolve("shippingOptionService");
114
+ return [4 /*yield*/, manager.transaction(function (tx) { return __awaiter(void 0, void 0, void 0, function () {
115
+ var txRateService, err_1, err_2, err_3;
116
+ return __generator(this, function (_a) {
117
+ switch (_a.label) {
118
+ case 0:
119
+ txRateService = rateService.withTransaction(tx);
120
+ return [4 /*yield*/, txRateService.update(req.params.id, (0, lodash_1.omit)(value, ["products", "product_types", "shipping_options"]))];
121
+ case 1:
122
+ _a.sent();
123
+ if (!(typeof value.products !== "undefined")) return [3 /*break*/, 7];
124
+ _a.label = 2;
125
+ case 2:
126
+ _a.trys.push([2, 4, , 7]);
127
+ return [4 /*yield*/, txRateService.addToProduct(req.params.id, value.products)];
128
+ case 3:
129
+ _a.sent();
130
+ return [3 /*break*/, 7];
131
+ case 4:
132
+ err_1 = _a.sent();
133
+ if (!(err_1.code === "23503")) return [3 /*break*/, 6];
134
+ // A foreign key constraint failed meaning some thing doesn't exist
135
+ // either it is a product or the tax rate itself. Using Promise.all
136
+ // will try to retrieve all of the resources and will fail when
137
+ // something is not found.
138
+ return [4 /*yield*/, Promise.all(__spreadArray([
139
+ txRateService.retrieve(req.params.id, { select: ["id"] })
140
+ ], __read(value.products.map(function (pId) {
141
+ return productService.retrieve(pId, { select: ["id"] });
142
+ })), false))];
143
+ case 5:
144
+ // A foreign key constraint failed meaning some thing doesn't exist
145
+ // either it is a product or the tax rate itself. Using Promise.all
146
+ // will try to retrieve all of the resources and will fail when
147
+ // something is not found.
148
+ _a.sent();
149
+ _a.label = 6;
150
+ case 6: throw err_1;
151
+ case 7:
152
+ if (!(typeof value.product_types !== "undefined")) return [3 /*break*/, 13];
153
+ _a.label = 8;
154
+ case 8:
155
+ _a.trys.push([8, 10, , 13]);
156
+ return [4 /*yield*/, txRateService.addToProductType(req.params.id, value.product_types)];
157
+ case 9:
158
+ _a.sent();
159
+ return [3 /*break*/, 13];
160
+ case 10:
161
+ err_2 = _a.sent();
162
+ if (!(err_2.code === "23503")) return [3 /*break*/, 12];
163
+ // A foreign key constraint failed meaning some thing doesn't exist
164
+ // either it is a product or the tax rate itself. Using Promise.all
165
+ // will try to retrieve all of the resources and will fail when
166
+ // something is not found.
167
+ return [4 /*yield*/, Promise.all(__spreadArray([
168
+ txRateService.retrieve(req.params.id, {
169
+ select: ["id"],
170
+ })
171
+ ], __read(value.product_types.map(function (pId) {
172
+ return productTypeService.retrieve(pId, {
173
+ select: ["id"],
174
+ });
175
+ })), false))];
176
+ case 11:
177
+ // A foreign key constraint failed meaning some thing doesn't exist
178
+ // either it is a product or the tax rate itself. Using Promise.all
179
+ // will try to retrieve all of the resources and will fail when
180
+ // something is not found.
181
+ _a.sent();
182
+ _a.label = 12;
183
+ case 12: throw err_2;
184
+ case 13:
185
+ if (!(typeof value.shipping_options !== "undefined")) return [3 /*break*/, 19];
186
+ _a.label = 14;
187
+ case 14:
188
+ _a.trys.push([14, 16, , 19]);
189
+ return [4 /*yield*/, txRateService.addToShippingOption(req.params.id, value.shipping_options)];
190
+ case 15:
191
+ _a.sent();
192
+ return [3 /*break*/, 19];
193
+ case 16:
194
+ err_3 = _a.sent();
195
+ if (!(err_3.code === "23503")) return [3 /*break*/, 18];
196
+ // A foreign key constraint failed meaning some thing doesn't exist
197
+ // either it is a product or the tax rate itself. Using Promise.all
198
+ // will try to retrieve all of the resources and will fail when
199
+ // something is not found.
200
+ return [4 /*yield*/, Promise.all(__spreadArray([
201
+ txRateService.retrieve(req.params.id, { select: ["id"] })
202
+ ], __read(value.shipping_options.map(function (sId) {
203
+ return shippingOptionService.retrieve(sId, { select: ["id"] });
204
+ })), false))];
205
+ case 17:
206
+ // A foreign key constraint failed meaning some thing doesn't exist
207
+ // either it is a product or the tax rate itself. Using Promise.all
208
+ // will try to retrieve all of the resources and will fail when
209
+ // something is not found.
210
+ _a.sent();
211
+ _a.label = 18;
212
+ case 18: throw err_3;
213
+ case 19: return [2 /*return*/];
214
+ }
215
+ });
216
+ }); })];
217
+ case 3:
218
+ _a.sent();
219
+ config = (0, get_query_config_1.getRetrieveConfig)(query.fields, query.expand);
220
+ return [4 /*yield*/, rateService.retrieve(req.params.id, config)];
221
+ case 4:
222
+ rate = _a.sent();
223
+ data = (0, get_query_config_1.pickByConfig)(rate, config);
224
+ res.json({ tax_rate: data });
225
+ return [2 /*return*/];
226
+ }
227
+ });
228
+ }); });
229
+ var AdminPostTaxRatesTaxRateReq = /** @class */ (function () {
230
+ function AdminPostTaxRatesTaxRateReq() {
231
+ }
232
+ __decorate([
233
+ (0, class_validator_1.IsOptional)(),
234
+ (0, class_validator_1.IsString)(),
235
+ __metadata("design:type", String)
236
+ ], AdminPostTaxRatesTaxRateReq.prototype, "code", void 0);
237
+ __decorate([
238
+ (0, class_validator_1.IsOptional)(),
239
+ (0, class_validator_1.IsString)(),
240
+ __metadata("design:type", String)
241
+ ], AdminPostTaxRatesTaxRateReq.prototype, "name", void 0);
242
+ __decorate([
243
+ (0, class_validator_1.IsOptional)(),
244
+ (0, class_validator_1.IsString)(),
245
+ __metadata("design:type", String)
246
+ ], AdminPostTaxRatesTaxRateReq.prototype, "region_id", void 0);
247
+ __decorate([
248
+ (0, class_validator_1.IsOptional)(),
249
+ (0, is_type_1.IsType)([Number, null]),
250
+ __metadata("design:type", Object)
251
+ ], AdminPostTaxRatesTaxRateReq.prototype, "rate", void 0);
252
+ __decorate([
253
+ (0, class_validator_1.IsOptional)(),
254
+ (0, class_validator_1.IsArray)(),
255
+ __metadata("design:type", Array)
256
+ ], AdminPostTaxRatesTaxRateReq.prototype, "products", void 0);
257
+ __decorate([
258
+ (0, class_validator_1.IsOptional)(),
259
+ (0, class_validator_1.IsArray)(),
260
+ __metadata("design:type", Array)
261
+ ], AdminPostTaxRatesTaxRateReq.prototype, "shipping_options", void 0);
262
+ __decorate([
263
+ (0, class_validator_1.IsOptional)(),
264
+ (0, class_validator_1.IsArray)(),
265
+ __metadata("design:type", Array)
266
+ ], AdminPostTaxRatesTaxRateReq.prototype, "product_types", void 0);
267
+ return AdminPostTaxRatesTaxRateReq;
268
+ }());
269
+ exports.AdminPostTaxRatesTaxRateReq = AdminPostTaxRatesTaxRateReq;
270
+ var AdminPostTaxRatesTaxRateParams = /** @class */ (function () {
271
+ function AdminPostTaxRatesTaxRateParams() {
272
+ }
273
+ __decorate([
274
+ (0, class_validator_1.IsArray)(),
275
+ (0, class_validator_1.IsOptional)(),
276
+ __metadata("design:type", Array)
277
+ ], AdminPostTaxRatesTaxRateParams.prototype, "expand", void 0);
278
+ __decorate([
279
+ (0, class_validator_1.IsArray)(),
280
+ (0, class_validator_1.IsOptional)(),
281
+ __metadata("design:type", Array)
282
+ ], AdminPostTaxRatesTaxRateParams.prototype, "fields", void 0);
283
+ return AdminPostTaxRatesTaxRateParams;
284
+ }());
285
+ exports.AdminPostTaxRatesTaxRateParams = AdminPostTaxRatesTaxRateParams;
286
+ //# sourceMappingURL=update-tax-rate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-tax-rate.js","sourceRoot":"","sources":["../../../../../src/api/routes/admin/tax-rates/update-tax-rate.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,mDAA+D;AAC/D,iCAA6B;AAE7B,6DAA0E;AAQ1E,yDAAuD;AACvD,gEAA6D;AAE7D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,mBAAe,UAAO,GAAG,EAAE,GAAG;;;;oBACd,qBAAM,IAAA,qBAAS,EAAC,2BAA2B,EAAE,GAAG,CAAC,IAAI,CAAC,EAAA;;gBAA9D,KAAK,GAAG,SAAsD;gBAEtD,qBAAM,IAAA,qBAAS,EAAC,8BAA8B,EAAE,GAAG,CAAC,KAAK,CAAC,EAAA;;gBAAlE,KAAK,GAAG,SAA0D;gBAElE,OAAO,GAAkB,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;gBACrD,WAAW,GAAmB,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;gBACjE,cAAc,GAAmB,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;gBACpE,kBAAkB,GACtB,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAA;gBACnC,qBAAqB,GAA0B,GAAG,CAAC,KAAK,CAAC,OAAO,CACpE,uBAAuB,CACxB,CAAA;gBAED,qBAAM,OAAO,CAAC,WAAW,CAAC,UAAO,EAAE;;;;;oCAC3B,aAAa,GAAG,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC,CAAA;oCACrD,qBAAM,aAAa,CAAC,MAAM,CACxB,GAAG,CAAC,MAAM,CAAC,EAAE,EACb,IAAA,aAAI,EAAC,KAAK,EAAE,CAAC,UAAU,EAAE,eAAe,EAAE,kBAAkB,CAAC,CAAC,CAC/D,EAAA;;oCAHD,SAGC,CAAA;yCAEG,CAAA,OAAO,KAAK,CAAC,QAAQ,KAAK,WAAW,CAAA,EAArC,wBAAqC;;;;oCAErC,qBAAM,aAAa,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAA;;oCAA/D,SAA+D,CAAA;;;;yCAE3D,CAAA,KAAG,CAAC,IAAI,KAAK,OAAO,CAAA,EAApB,wBAAoB;oCACtB,mEAAmE;oCACnE,mEAAmE;oCACnE,+DAA+D;oCAC/D,0BAA0B;oCAC1B,qBAAM,OAAO,CAAC,GAAG;4CACf,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;kDACtD,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,GAAG;4CACxB,OAAA,cAAc,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;wCAAhD,CAAgD,CACjD,UACD,EAAA;;oCATF,mEAAmE;oCACnE,mEAAmE;oCACnE,+DAA+D;oCAC/D,0BAA0B;oCAC1B,SAKE,CAAA;;wCAGJ,MAAM,KAAG,CAAA;;yCAIT,CAAA,OAAO,KAAK,CAAC,aAAa,KAAK,WAAW,CAAA,EAA1C,yBAA0C;;;;oCAE1C,qBAAM,aAAa,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,aAAa,CAAC,EAAA;;oCAAxE,SAAwE,CAAA;;;;yCAEpE,CAAA,KAAG,CAAC,IAAI,KAAK,OAAO,CAAA,EAApB,yBAAoB;oCACtB,mEAAmE;oCACnE,mEAAmE;oCACnE,+DAA+D;oCAC/D,0BAA0B;oCAC1B,qBAAM,OAAO,CAAC,GAAG;4CACf,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE;gDACpC,MAAM,EAAE,CAAC,IAAI,CAAC;6CACf,CAAqB;kDACnB,KAAK,CAAC,aAAa,CAAC,GAAG,CACxB,UAAC,GAAG;4CACF,OAAA,kBAAkB,CAAC,QAAQ,CAAC,GAAG,EAAE;gDAC/B,MAAM,EAAE,CAAC,IAAI,CAAC;6CACf,CAAqB;wCAFtB,CAEsB,CACzB,UACD,EAAA;;oCAdF,mEAAmE;oCACnE,mEAAmE;oCACnE,+DAA+D;oCAC/D,0BAA0B;oCAC1B,SAUE,CAAA;;yCAGJ,MAAM,KAAG,CAAA;;yCAIT,CAAA,OAAO,KAAK,CAAC,gBAAgB,KAAK,WAAW,CAAA,EAA7C,yBAA6C;;;;oCAE7C,qBAAM,aAAa,CAAC,mBAAmB,CACrC,GAAG,CAAC,MAAM,CAAC,EAAE,EACb,KAAK,CAAC,gBAAgB,CACvB,EAAA;;oCAHD,SAGC,CAAA;;;;yCAEG,CAAA,KAAG,CAAC,IAAI,KAAK,OAAO,CAAA,EAApB,yBAAoB;oCACtB,mEAAmE;oCACnE,mEAAmE;oCACnE,+DAA+D;oCAC/D,0BAA0B;oCAC1B,qBAAM,OAAO,CAAC,GAAG;4CACf,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;kDACtD,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAC,GAAG;4CAChC,OAAA,qBAAqB,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;wCAAvD,CAAuD,CACxD,UACD,EAAA;;oCATF,mEAAmE;oCACnE,mEAAmE;oCACnE,+DAA+D;oCAC/D,0BAA0B;oCAC1B,SAKE,CAAA;;yCAGJ,MAAM,KAAG,CAAA;;;;yBAGd,CAAC,EAAA;;gBA7EF,SA6EE,CAAA;gBAEI,MAAM,GAAG,IAAA,oCAAiB,EAC9B,KAAK,CAAC,MAA2B,EACjC,KAAK,CAAC,MAAM,CACb,CAAA;gBAEY,qBAAM,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,EAAA;;gBAAxD,IAAI,GAAG,SAAiD;gBACxD,IAAI,GAAG,IAAA,+BAAY,EAAC,IAAI,EAAE,MAAM,CAAC,CAAA;gBAEvC,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;;;;KAC7B,EAAA;AAED;IAAA;IA4BA,CAAC;IAzBC;QAFC,IAAA,4BAAU,GAAE;QACZ,IAAA,0BAAQ,GAAE;;6DACE;IAIb;QAFC,IAAA,4BAAU,GAAE;QACZ,IAAA,0BAAQ,GAAE;;6DACE;IAIb;QAFC,IAAA,4BAAU,GAAE;QACZ,IAAA,0BAAQ,GAAE;;kEACO;IAIlB;QAFC,IAAA,4BAAU,GAAE;QACZ,IAAA,gBAAM,EAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;;6DACH;IAIpB;QAFC,IAAA,4BAAU,GAAE;QACZ,IAAA,yBAAO,GAAE;;iEACS;IAInB;QAFC,IAAA,4BAAU,GAAE;QACZ,IAAA,yBAAO,GAAE;;yEACiB;IAI3B;QAFC,IAAA,4BAAU,GAAE;QACZ,IAAA,yBAAO,GAAE;;sEACc;IAC1B,kCAAC;CAAA,AA5BD,IA4BC;AA5BY,kEAA2B;AA8BxC;IAAA;IAQA,CAAC;IALC;QAFC,IAAA,yBAAO,GAAE;QACT,IAAA,4BAAU,GAAE;;kEACI;IAIjB;QAFC,IAAA,yBAAO,GAAE;QACT,IAAA,4BAAU,GAAE;;kEACI;IACnB,qCAAC;CAAA,AARD,IAQC;AARY,wEAA8B"}
@@ -0,0 +1,7 @@
1
+ import { FindConfig } from "../../../../../types/common";
2
+ import { TaxRate } from "../../../../..";
3
+ export declare function pickByConfig<T>(obj: T | T[], config: FindConfig<T>): Partial<T> | Partial<T>[];
4
+ export declare function getRetrieveConfig(fields?: (keyof TaxRate)[], expand?: string[]): FindConfig<TaxRate>;
5
+ export declare function getListConfig(fields?: (keyof TaxRate)[], expand?: string[], limit?: number, offset?: number, order?: {
6
+ [k: symbol]: "DESC" | "ASC";
7
+ }): FindConfig<TaxRate>;
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ var __read = (this && this.__read) || function (o, n) {
3
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
4
+ if (!m) return o;
5
+ var i = m.call(o), r, ar = [], e;
6
+ try {
7
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
8
+ }
9
+ catch (error) { e = { error: error }; }
10
+ finally {
11
+ try {
12
+ if (r && !r.done && (m = i["return"])) m.call(i);
13
+ }
14
+ finally { if (e) throw e.error; }
15
+ }
16
+ return ar;
17
+ };
18
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
19
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
20
+ if (ar || !(i in from)) {
21
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
22
+ ar[i] = from[i];
23
+ }
24
+ }
25
+ return to.concat(ar || Array.prototype.slice.call(from));
26
+ };
27
+ Object.defineProperty(exports, "__esModule", { value: true });
28
+ exports.getListConfig = exports.getRetrieveConfig = exports.pickByConfig = void 0;
29
+ var __1 = require("../");
30
+ var lodash_1 = require("lodash");
31
+ function pickByConfig(obj, config) {
32
+ var _a, _b;
33
+ var fields = __spreadArray(__spreadArray([], __read(((_a = config.select) !== null && _a !== void 0 ? _a : [])), false), __read(((_b = config.relations) !== null && _b !== void 0 ? _b : [])), false);
34
+ if (fields.length) {
35
+ if (Array.isArray(obj)) {
36
+ return obj.map(function (o) { return (0, lodash_1.pick)(o, fields); });
37
+ }
38
+ else {
39
+ return (0, lodash_1.pick)(obj, fields);
40
+ }
41
+ }
42
+ return obj;
43
+ }
44
+ exports.pickByConfig = pickByConfig;
45
+ function getRetrieveConfig(fields, expand) {
46
+ var includeFields = [];
47
+ if (typeof fields !== "undefined") {
48
+ var fieldSet = new Set(fields);
49
+ fieldSet.add("id");
50
+ includeFields = Array.from(fieldSet);
51
+ }
52
+ var expandFields = [];
53
+ if (typeof expand !== "undefined") {
54
+ expandFields = expand;
55
+ }
56
+ return {
57
+ select: includeFields.length ? includeFields : __1.defaultAdminTaxRatesFields,
58
+ relations: expandFields.length
59
+ ? expandFields
60
+ : __1.defaultAdminTaxRatesRelations,
61
+ };
62
+ }
63
+ exports.getRetrieveConfig = getRetrieveConfig;
64
+ function getListConfig(fields, expand, limit, offset, order) {
65
+ if (limit === void 0) { limit = 50; }
66
+ if (offset === void 0) { offset = 0; }
67
+ var includeFields = [];
68
+ if (typeof fields !== "undefined") {
69
+ var fieldSet = new Set(fields);
70
+ // Ensure created_at is included, since we are sorting on this
71
+ fieldSet.add("created_at");
72
+ fieldSet.add("id");
73
+ includeFields = Array.from(fieldSet);
74
+ }
75
+ var expandFields = [];
76
+ if (typeof expand !== "undefined") {
77
+ expandFields = expand;
78
+ }
79
+ var orderBy = order !== null && order !== void 0 ? order : { created_at: "DESC" };
80
+ return {
81
+ select: includeFields.length ? includeFields : __1.defaultAdminTaxRatesFields,
82
+ relations: expandFields.length
83
+ ? expandFields
84
+ : __1.defaultAdminTaxRatesRelations,
85
+ skip: offset,
86
+ take: limit,
87
+ order: orderBy,
88
+ };
89
+ }
90
+ exports.getListConfig = getListConfig;
91
+ //# sourceMappingURL=get-query-config.js.map