@or-sdk/billing 10.27.0 → 10.27.1-beta.1981.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/api/customersApi/index.js +36 -5
- package/dist/cjs/api/customersApi/index.js.map +1 -1
- package/dist/esm/api/customersApi/index.js +22 -2
- package/dist/esm/api/customersApi/index.js.map +1 -1
- package/dist/types/api/customersApi/index.d.ts +3 -1
- package/dist/types/api/customersApi/index.d.ts.map +1 -1
- package/dist/types/api/customersApi/types.d.ts +4 -0
- package/dist/types/api/customersApi/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/api/customersApi/index.ts +32 -1
- package/src/api/customersApi/types.ts +3 -0
|
@@ -73,15 +73,15 @@ var CustomersApi = (function (_super) {
|
|
|
73
73
|
CustomersApi.prototype.getCustomers = function (params_1) {
|
|
74
74
|
return __awaiter(this, arguments, void 0, function (params, options) {
|
|
75
75
|
var _params, response;
|
|
76
|
-
var _a, _b, _c, _d;
|
|
76
|
+
var _a, _b, _c, _d, _e, _f;
|
|
77
77
|
if (options === void 0) { options = {}; }
|
|
78
|
-
return __generator(this, function (
|
|
79
|
-
switch (
|
|
78
|
+
return __generator(this, function (_g) {
|
|
79
|
+
switch (_g.label) {
|
|
80
80
|
case 0:
|
|
81
|
-
_params = __assign(__assign({}, params), {
|
|
81
|
+
_params = __assign(__assign({}, params), { ids: (_b = (_a = params === null || params === void 0 ? void 0 : params.ids) === null || _a === void 0 ? void 0 : _a.join(',')) !== null && _b !== void 0 ? _b : undefined, domains: (_d = (_c = params === null || params === void 0 ? void 0 : params.domains) === null || _c === void 0 ? void 0 : _c.join(',')) !== null && _d !== void 0 ? _d : undefined, approver: (_f = (_e = params === null || params === void 0 ? void 0 : params.approver) === null || _e === void 0 ? void 0 : _e.join(',')) !== null && _f !== void 0 ? _f : undefined });
|
|
82
82
|
return [4, this.apiCall(__assign({ method: 'GET', route: "".concat(this.apiBasePath), params: _params }, options))];
|
|
83
83
|
case 1:
|
|
84
|
-
response =
|
|
84
|
+
response = _g.sent();
|
|
85
85
|
return [2, response];
|
|
86
86
|
}
|
|
87
87
|
});
|
|
@@ -175,6 +175,37 @@ var CustomersApi = (function (_super) {
|
|
|
175
175
|
});
|
|
176
176
|
});
|
|
177
177
|
};
|
|
178
|
+
CustomersApi.prototype.chunk = function (arr, size) {
|
|
179
|
+
var out = [];
|
|
180
|
+
for (var i = 0; i < arr.length; i += size)
|
|
181
|
+
out.push(arr.slice(i, i + size));
|
|
182
|
+
return out;
|
|
183
|
+
};
|
|
184
|
+
CustomersApi.prototype.getCustomersByIdsChunked = function (ids_1) {
|
|
185
|
+
return __awaiter(this, arguments, void 0, function (ids, options, chunkSize) {
|
|
186
|
+
var unique, chunks, calls, results, all, dedup;
|
|
187
|
+
var _this = this;
|
|
188
|
+
if (options === void 0) { options = {}; }
|
|
189
|
+
if (chunkSize === void 0) { chunkSize = 50; }
|
|
190
|
+
return __generator(this, function (_a) {
|
|
191
|
+
switch (_a.label) {
|
|
192
|
+
case 0:
|
|
193
|
+
unique = Array.from(new Set((ids !== null && ids !== void 0 ? ids : []).filter(Boolean)));
|
|
194
|
+
if (!unique.length) {
|
|
195
|
+
return [2, { data: [] }];
|
|
196
|
+
}
|
|
197
|
+
chunks = this.chunk(unique, Math.max(1, chunkSize));
|
|
198
|
+
calls = chunks.map(function (c) { return _this.getCustomers({ ids: c }, options); });
|
|
199
|
+
return [4, Promise.all(calls)];
|
|
200
|
+
case 1:
|
|
201
|
+
results = _a.sent();
|
|
202
|
+
all = results.flatMap(function (r) { var _a; return (_a = r.data) !== null && _a !== void 0 ? _a : []; });
|
|
203
|
+
dedup = Array.from(new Map(all.map(function (c) { return [c.id, c]; })).values());
|
|
204
|
+
return [2, { data: dedup }];
|
|
205
|
+
}
|
|
206
|
+
});
|
|
207
|
+
});
|
|
208
|
+
};
|
|
178
209
|
return CustomersApi;
|
|
179
210
|
}(baseApi_1.BaseApi));
|
|
180
211
|
exports.default = CustomersApi;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/api/customersApi/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,sCAAqC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/api/customersApi/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,8 +15,8 @@ export default class CustomersApi extends BaseApi {
|
|
|
15
15
|
}
|
|
16
16
|
getCustomers(params_1) {
|
|
17
17
|
return __awaiter(this, arguments, void 0, function* (params, options = {}) {
|
|
18
|
-
var _a, _b, _c, _d;
|
|
19
|
-
const _params = Object.assign(Object.assign({}, params), {
|
|
18
|
+
var _a, _b, _c, _d, _e, _f;
|
|
19
|
+
const _params = Object.assign(Object.assign({}, params), { ids: (_b = (_a = params === null || params === void 0 ? void 0 : params.ids) === null || _a === void 0 ? void 0 : _a.join(',')) !== null && _b !== void 0 ? _b : undefined, domains: (_d = (_c = params === null || params === void 0 ? void 0 : params.domains) === null || _c === void 0 ? void 0 : _c.join(',')) !== null && _d !== void 0 ? _d : undefined, approver: (_f = (_e = params === null || params === void 0 ? void 0 : params.approver) === null || _e === void 0 ? void 0 : _e.join(',')) !== null && _f !== void 0 ? _f : undefined });
|
|
20
20
|
const response = yield this.apiCall(Object.assign({ method: 'GET', route: `${this.apiBasePath}`, params: _params }, options));
|
|
21
21
|
return response;
|
|
22
22
|
});
|
|
@@ -78,5 +78,25 @@ export default class CustomersApi extends BaseApi {
|
|
|
78
78
|
});
|
|
79
79
|
});
|
|
80
80
|
}
|
|
81
|
+
chunk(arr, size) {
|
|
82
|
+
const out = [];
|
|
83
|
+
for (let i = 0; i < arr.length; i += size)
|
|
84
|
+
out.push(arr.slice(i, i + size));
|
|
85
|
+
return out;
|
|
86
|
+
}
|
|
87
|
+
getCustomersByIdsChunked(ids_1) {
|
|
88
|
+
return __awaiter(this, arguments, void 0, function* (ids, options = {}, chunkSize = 50) {
|
|
89
|
+
const unique = Array.from(new Set((ids !== null && ids !== void 0 ? ids : []).filter(Boolean)));
|
|
90
|
+
if (!unique.length) {
|
|
91
|
+
return { data: [] };
|
|
92
|
+
}
|
|
93
|
+
const chunks = this.chunk(unique, Math.max(1, chunkSize));
|
|
94
|
+
const calls = chunks.map((c) => this.getCustomers({ ids: c }, options));
|
|
95
|
+
const results = yield Promise.all(calls);
|
|
96
|
+
const all = results.flatMap((r) => { var _a; return (_a = r.data) !== null && _a !== void 0 ? _a : []; });
|
|
97
|
+
const dedup = Array.from(new Map(all.map((c) => [c.id, c])).values());
|
|
98
|
+
return { data: dedup };
|
|
99
|
+
});
|
|
100
|
+
}
|
|
81
101
|
}
|
|
82
102
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/api/customersApi/index.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/api/customersApi/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { OptionalApiParams } from '../../types';
|
|
2
2
|
import { BaseApi } from '../baseApi';
|
|
3
|
-
import { GetCustomersParams, Customer, CreateCustomerParams, UpdateCustomerParams, GetCustomersResponse, PaymentsCustomersResponse, PaymentsCustomerRequest, CustomerForPayments, QueryPaymentsCustomer } from './types';
|
|
3
|
+
import { GetCustomersParams, Customer, CreateCustomerParams, UpdateCustomerParams, GetCustomersResponse, PaymentsCustomersResponse, PaymentsCustomerRequest, CustomerForPayments, QueryPaymentsCustomer, CustomersBatchResponse } from './types';
|
|
4
4
|
export default class CustomersApi extends BaseApi {
|
|
5
5
|
private readonly apiBasePath;
|
|
6
6
|
getCustomers(params?: GetCustomersParams, options?: OptionalApiParams): Promise<GetCustomersResponse>;
|
|
@@ -9,5 +9,7 @@ export default class CustomersApi extends BaseApi {
|
|
|
9
9
|
createCustomer(data: CreateCustomerParams): Promise<Customer>;
|
|
10
10
|
updateCustomer(id: string, data: UpdateCustomerParams): Promise<Customer>;
|
|
11
11
|
deleteCustomer(id: string, softDelete?: boolean): Promise<void>;
|
|
12
|
+
private chunk;
|
|
13
|
+
getCustomersByIdsChunked(ids: string[], options?: OptionalApiParams, chunkSize?: number): Promise<CustomersBatchResponse>;
|
|
12
14
|
}
|
|
13
15
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/customersApi/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,OAAO,EACL,kBAAkB,EAClB,QAAQ,EACR,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,yBAAyB,EACzB,uBAAuB,EACvB,mBAAmB,EACnB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/api/customersApi/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,OAAO,EACL,kBAAkB,EAClB,QAAQ,EACR,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,yBAAyB,EACzB,uBAAuB,EACvB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,SAAS,CAAC;AAEjB,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,OAAO;IAC/C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAe;IAQ9B,YAAY,CACvB,MAAM,CAAC,EAAE,kBAAkB,EAC3B,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,oBAAoB,CAAC;IA+BnB,oBAAoB,CAAC,MAAM,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAsB1F,mBAAmB,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IAuDvF,cAAc,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAiD7D,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAiBzE,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,UAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAazE,OAAO,CAAC,KAAK;IASA,wBAAwB,CACnC,GAAG,EAAE,MAAM,EAAE,EACb,OAAO,GAAE,iBAAsB,EAC/B,SAAS,SAAK,GACb,OAAO,CAAC,sBAAsB,CAAC;CAanC"}
|
|
@@ -49,9 +49,13 @@ export type CreateCustomerParams = Omit<Customer, 'id' | 'vendors'> & {
|
|
|
49
49
|
vendors?: UpdateMappedVendor[];
|
|
50
50
|
};
|
|
51
51
|
export type GetCustomersResponse = ResponseDto<Customer>;
|
|
52
|
+
export type CustomersBatchResponse = {
|
|
53
|
+
data: Customer[];
|
|
54
|
+
};
|
|
52
55
|
export type UpdateCustomerParams = CreateCustomerParams;
|
|
53
56
|
export type GetCustomersParams = {
|
|
54
57
|
id?: string;
|
|
58
|
+
ids?: string[];
|
|
55
59
|
name?: string;
|
|
56
60
|
billable?: boolean;
|
|
57
61
|
chargeCreditCard?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/api/customersApi/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/api/customersApi/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -11,6 +11,7 @@ import {
|
|
|
11
11
|
PaymentsCustomerRequest,
|
|
12
12
|
CustomerForPayments,
|
|
13
13
|
QueryPaymentsCustomer,
|
|
14
|
+
CustomersBatchResponse,
|
|
14
15
|
} from './types';
|
|
15
16
|
|
|
16
17
|
export default class CustomersApi extends BaseApi {
|
|
@@ -28,9 +29,10 @@ export default class CustomersApi extends BaseApi {
|
|
|
28
29
|
): Promise<GetCustomersResponse> {
|
|
29
30
|
const _params = {
|
|
30
31
|
...params,
|
|
32
|
+
ids: params?.ids?.join(',') ?? undefined,
|
|
31
33
|
domains: params?.domains?.join(',') ?? undefined,
|
|
32
34
|
approver: params?.approver?.join(',') ?? undefined,
|
|
33
|
-
}
|
|
35
|
+
} as Record<string, unknown>;
|
|
34
36
|
const response = await this.apiCall<GetCustomersResponse>({
|
|
35
37
|
method: 'GET',
|
|
36
38
|
route: `${this.apiBasePath}`,
|
|
@@ -208,4 +210,33 @@ export default class CustomersApi extends BaseApi {
|
|
|
208
210
|
},
|
|
209
211
|
});
|
|
210
212
|
}
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
// Internal helper to chunk an array
|
|
216
|
+
private chunk<T>(arr: T[], size: number) {
|
|
217
|
+
const out: T[][] = [];
|
|
218
|
+
for (let i = 0;i < arr.length;i += size) out.push(arr.slice(i, i + size));
|
|
219
|
+
return out;
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
/**
|
|
223
|
+
* Batch-fetch customers by ids with chunking. Uses GET /customers?ids=CSV per chunk by default.
|
|
224
|
+
*/
|
|
225
|
+
public async getCustomersByIdsChunked(
|
|
226
|
+
ids: string[],
|
|
227
|
+
options: OptionalApiParams = {},
|
|
228
|
+
chunkSize = 50,
|
|
229
|
+
): Promise<CustomersBatchResponse> {
|
|
230
|
+
const unique = Array.from(new Set((ids ?? []).filter(Boolean)));
|
|
231
|
+
if (!unique.length) {
|
|
232
|
+
return { data: [] };
|
|
233
|
+
}
|
|
234
|
+
const chunks = this.chunk(unique, Math.max(1, chunkSize));
|
|
235
|
+
|
|
236
|
+
const calls = chunks.map((c) => this.getCustomers({ ids: c }, options));
|
|
237
|
+
const results = await Promise.all(calls);
|
|
238
|
+
const all = results.flatMap((r) => r.data ?? []);
|
|
239
|
+
const dedup = Array.from(new Map(all.map((c) => [c.id, c])).values());
|
|
240
|
+
return { data: dedup };
|
|
241
|
+
}
|
|
211
242
|
}
|
|
@@ -55,10 +55,13 @@ export type CreateCustomerParams = Omit<Customer, 'id' | 'vendors'> & {
|
|
|
55
55
|
|
|
56
56
|
export type GetCustomersResponse = ResponseDto<Customer>;
|
|
57
57
|
|
|
58
|
+
export type CustomersBatchResponse = { data: Customer[] };
|
|
59
|
+
|
|
58
60
|
export type UpdateCustomerParams = CreateCustomerParams;
|
|
59
61
|
|
|
60
62
|
export type GetCustomersParams = {
|
|
61
63
|
id?: string;
|
|
64
|
+
ids?: string[];
|
|
62
65
|
name?: string;
|
|
63
66
|
billable?: boolean;
|
|
64
67
|
chargeCreditCard?: boolean;
|