@chift/chift-nodejs 1.0.7 → 1.0.9
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/.eslintcache +1 -0
- package/.github/workflows/ci.yml +2 -1
- package/CHANGELOG.md +28 -0
- package/coverage/clover.xml +1645 -0
- package/coverage/coverage-final.json +19 -0
- package/coverage/lcov-report/base.css +224 -0
- package/coverage/lcov-report/block-navigation.js +87 -0
- package/coverage/lcov-report/favicon.png +0 -0
- package/coverage/lcov-report/index.html +146 -0
- package/coverage/lcov-report/prettify.css +1 -0
- package/coverage/lcov-report/prettify.js +2 -0
- package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/lcov-report/sorter.js +196 -0
- package/coverage/lcov-report/src/helpers/index.html +131 -0
- package/coverage/lcov-report/src/helpers/openapi.ts.html +151 -0
- package/coverage/lcov-report/src/helpers/settings.ts.html +94 -0
- package/coverage/lcov-report/src/index.html +116 -0
- package/coverage/lcov-report/src/index.ts.html +88 -0
- package/coverage/lcov-report/src/modules/accounting.ts.html +1156 -0
- package/coverage/lcov-report/src/modules/api.ts.html +190 -0
- package/coverage/lcov-report/src/modules/consumer.ts.html +616 -0
- package/coverage/lcov-report/src/modules/consumers.ts.html +331 -0
- package/coverage/lcov-report/src/modules/custom.ts.html +193 -0
- package/coverage/lcov-report/src/modules/datastores.ts.html +142 -0
- package/coverage/lcov-report/src/modules/ecommerce.ts.html +331 -0
- package/coverage/lcov-report/src/modules/flow.ts.html +589 -0
- package/coverage/lcov-report/src/modules/index.html +326 -0
- package/coverage/lcov-report/src/modules/integrations.ts.html +151 -0
- package/coverage/lcov-report/src/modules/internalApi.ts.html +586 -0
- package/coverage/lcov-report/src/modules/invoicing.ts.html +391 -0
- package/coverage/lcov-report/src/modules/pos.ts.html +421 -0
- package/coverage/lcov-report/src/modules/sync.ts.html +316 -0
- package/coverage/lcov-report/src/modules/syncs.ts.html +169 -0
- package/coverage/lcov-report/src/modules/webhooks.ts.html +343 -0
- package/coverage/lcov.info +1976 -0
- package/dist/src/modules/accounting.d.ts +6 -6
- package/dist/src/modules/accounting.js +11 -17
- package/dist/src/modules/api.d.ts +27909 -1622
- package/dist/src/modules/consumer.d.ts +46 -320
- package/dist/src/modules/consumer.js +0 -10
- package/dist/src/modules/consumers.d.ts +230 -1620
- package/dist/src/modules/ecommerce.d.ts +0 -8
- package/dist/src/modules/ecommerce.js +0 -28
- package/dist/src/modules/flow.js +1 -1
- package/dist/src/modules/pos.d.ts +1 -3
- package/dist/src/modules/pos.js +0 -7
- package/dist/src/modules/sync.d.ts +184 -1296
- package/dist/src/modules/syncs.d.ts +27677 -8
- package/dist/src/modules/syncs.js +0 -10
- package/dist/test/modules/accounting.test.js +11 -0
- package/dist/test/modules/ecommerce.test.js +7 -34
- package/dist/test/modules/flow.test.d.ts +1 -0
- package/dist/test/modules/flow.test.js +69 -0
- package/dist/test/modules/pos.test.js +5 -10
- package/package.json +1 -1
- package/src/modules/accounting.ts +95 -22
- package/src/modules/integrations.ts +4 -2
- package/test/modules/accounting.test.ts +31 -0
|
@@ -21,19 +21,9 @@ const Syncs = (internalApi) => {
|
|
|
21
21
|
const { data } = yield _internalApi.get(`/syncs/${syncid}`);
|
|
22
22
|
return (0, sync_1.Sync)(_internalApi, data);
|
|
23
23
|
});
|
|
24
|
-
const createSync = (body) => __awaiter(void 0, void 0, void 0, function* () {
|
|
25
|
-
const { data, } = yield _internalApi.post('/syncs', body);
|
|
26
|
-
return (0, sync_1.Sync)(_internalApi, data);
|
|
27
|
-
});
|
|
28
|
-
const updateSync = (body) => __awaiter(void 0, void 0, void 0, function* () {
|
|
29
|
-
const { data, } = yield _internalApi.patch('/syncs', body);
|
|
30
|
-
return (0, sync_1.Sync)(_internalApi, data);
|
|
31
|
-
});
|
|
32
24
|
return {
|
|
33
|
-
createSync,
|
|
34
25
|
getSyncs,
|
|
35
26
|
getSyncById,
|
|
36
|
-
updateSync,
|
|
37
27
|
};
|
|
38
28
|
};
|
|
39
29
|
exports.Syncs = Syncs;
|
|
@@ -377,6 +377,17 @@ let analyticAccounts;
|
|
|
377
377
|
const analyticAccountsWithMultiplePlans = yield consumer.accounting.getAnalyticAccountsWithMultiplePlans();
|
|
378
378
|
(0, globals_1.expect)(analyticAccountsWithMultiplePlans).toBeInstanceOf(Array);
|
|
379
379
|
}));
|
|
380
|
+
(0, globals_1.test)('getAnalyticLinesOfAccount', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
381
|
+
const analyticLinesOfAccount = yield consumer.accounting.getAnalyticLinesOfAccount(analyticAccounts[0].id);
|
|
382
|
+
(0, globals_1.expect)(analyticLinesOfAccount).toBeInstanceOf(Array);
|
|
383
|
+
if (analyticLinesOfAccount.length > 0) {
|
|
384
|
+
(0, globals_1.expect)(analyticLinesOfAccount[0]).toHaveProperty('account_id', analyticAccounts[0].id);
|
|
385
|
+
(0, globals_1.expect)(analyticLinesOfAccount[0]).toHaveProperty('description', globals_1.expect.any(String));
|
|
386
|
+
(0, globals_1.expect)(analyticLinesOfAccount[0]).toHaveProperty('amount', globals_1.expect.any(Number));
|
|
387
|
+
(0, globals_1.expect)(analyticLinesOfAccount[0]).toHaveProperty('date', globals_1.expect.any(String));
|
|
388
|
+
(0, globals_1.expect)(analyticLinesOfAccount[0]).toHaveProperty('id', globals_1.expect.any(String));
|
|
389
|
+
}
|
|
390
|
+
}));
|
|
380
391
|
(0, globals_1.test)('createJournalEntry', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
381
392
|
const journal = journals.find((journal) => journal.journal_type === 'customer_invoice');
|
|
382
393
|
if (!journal) {
|
|
@@ -122,9 +122,9 @@ let locations;
|
|
|
122
122
|
(0, globals_1.expect)(product).toBeTruthy();
|
|
123
123
|
(0, globals_1.expect)(product).toHaveProperty('available_quantity', globals_1.expect.any(Number));
|
|
124
124
|
}));
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
const order =
|
|
125
|
+
/*
|
|
126
|
+
test('createOrder', async () => {
|
|
127
|
+
const order = await consumer.ecommerce.createOrder({
|
|
128
128
|
customer: {
|
|
129
129
|
email: 'test@test.com',
|
|
130
130
|
},
|
|
@@ -155,9 +155,10 @@ globals_1.test.skip('createOrder', () => __awaiter(void 0, void 0, void 0, funct
|
|
|
155
155
|
],
|
|
156
156
|
payment_method: 'bank-transfer',
|
|
157
157
|
});
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
})
|
|
158
|
+
expect(order).toBeTruthy();
|
|
159
|
+
expect(order).toHaveProperty('id', expect.any(String));
|
|
160
|
+
});
|
|
161
|
+
*/
|
|
161
162
|
let orders;
|
|
162
163
|
(0, globals_1.test)('getOrders', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
163
164
|
orders = yield consumer.ecommerce.getOrders({
|
|
@@ -190,31 +191,3 @@ let orders;
|
|
|
190
191
|
(0, globals_1.expect)(order).toHaveProperty('lines', globals_1.expect.any(Array));
|
|
191
192
|
(0, globals_1.expect)(order).toHaveProperty('other_fees');
|
|
192
193
|
}));
|
|
193
|
-
(0, globals_1.test)('getPaymentMethods', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
194
|
-
const paymentMethods = yield consumer.ecommerce.getPaymentMethods();
|
|
195
|
-
(0, globals_1.expect)(paymentMethods).toBeInstanceOf(Array);
|
|
196
|
-
(0, globals_1.expect)(paymentMethods.length).toBeGreaterThan(0);
|
|
197
|
-
(0, globals_1.expect)(paymentMethods[0]).toHaveProperty('id', globals_1.expect.any(String));
|
|
198
|
-
(0, globals_1.expect)(paymentMethods[0]).toHaveProperty('name', globals_1.expect.any(String));
|
|
199
|
-
}));
|
|
200
|
-
(0, globals_1.test)('getProductCategories', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
201
|
-
const productCategories = yield consumer.ecommerce.getProductCategories();
|
|
202
|
-
(0, globals_1.expect)(productCategories).toBeInstanceOf(Array);
|
|
203
|
-
(0, globals_1.expect)(productCategories.length).toBeGreaterThan(0);
|
|
204
|
-
(0, globals_1.expect)(productCategories[0]).toHaveProperty('id', globals_1.expect.any(String));
|
|
205
|
-
(0, globals_1.expect)(productCategories[0]).toHaveProperty('name', globals_1.expect.any(String));
|
|
206
|
-
}));
|
|
207
|
-
(0, globals_1.test)('getCountries', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
208
|
-
const countries = yield consumer.ecommerce.getCountries();
|
|
209
|
-
(0, globals_1.expect)(countries).toBeInstanceOf(Array);
|
|
210
|
-
(0, globals_1.expect)(countries.length).toBeGreaterThan(0);
|
|
211
|
-
(0, globals_1.expect)(countries[0]).toHaveProperty('code', globals_1.expect.any(String));
|
|
212
|
-
(0, globals_1.expect)(countries[0]).toHaveProperty('name', globals_1.expect.any(String));
|
|
213
|
-
}));
|
|
214
|
-
(0, globals_1.test)('getTaxes', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
215
|
-
const taxes = yield consumer.ecommerce.getTaxes();
|
|
216
|
-
(0, globals_1.expect)(taxes).toBeInstanceOf(Array);
|
|
217
|
-
(0, globals_1.expect)(taxes.length).toBeGreaterThan(0);
|
|
218
|
-
(0, globals_1.expect)(taxes[0]).toHaveProperty('id', globals_1.expect.any(String));
|
|
219
|
-
(0, globals_1.expect)(taxes[0]).toHaveProperty('rate', globals_1.expect.any(Number));
|
|
220
|
-
}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
+
const globals_1 = require("@jest/globals");
|
|
36
|
+
const chift = __importStar(require("../../src/index"));
|
|
37
|
+
const dotenv = __importStar(require("dotenv"));
|
|
38
|
+
dotenv.config();
|
|
39
|
+
const client = new chift.API({
|
|
40
|
+
baseUrl: process.env.CHIFT_BASE_URL,
|
|
41
|
+
clientId: process.env.CHIFT_CLIENT_ID,
|
|
42
|
+
clientSecret: process.env.CHIFT_CLIENT_SECRET,
|
|
43
|
+
accountId: process.env.CHIFT_ACCOUNT_ID,
|
|
44
|
+
});
|
|
45
|
+
let flow;
|
|
46
|
+
(0, globals_1.beforeAll)(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
47
|
+
const syncId = process.env.CHIFT_TEST_SYNC_ID;
|
|
48
|
+
const sync = yield client.Syncs.getSyncById(syncId);
|
|
49
|
+
flow = yield sync.createFlow({
|
|
50
|
+
name: 'Je suis un flux de test',
|
|
51
|
+
description: 'Flux de test',
|
|
52
|
+
execution: {
|
|
53
|
+
type: 'code',
|
|
54
|
+
},
|
|
55
|
+
trigger: {
|
|
56
|
+
type: 'event',
|
|
57
|
+
},
|
|
58
|
+
config: {},
|
|
59
|
+
}, (consumer, flowContext) => __awaiter(void 0, void 0, void 0, function* () {
|
|
60
|
+
console.log(`Mon flow_id : ${flowContext.flow_id}`);
|
|
61
|
+
console.log(`Bonjour, ceci est un test, on exécute le flux pour consumer: ${consumer}`);
|
|
62
|
+
}));
|
|
63
|
+
}));
|
|
64
|
+
(0, globals_1.test)('executeLocal', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
65
|
+
flow.execute({ context: { logs: true, local: true } });
|
|
66
|
+
}));
|
|
67
|
+
(0, globals_1.test)('execute', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
68
|
+
flow.execute({ context: { logs: true, local: false } });
|
|
69
|
+
}));
|
|
@@ -45,14 +45,14 @@ const client = new chift.API({
|
|
|
45
45
|
// Split testing between two APIs to support all endpoints
|
|
46
46
|
const cashpadConsumerId = process.env.CHIFT_CASHPAD_CONSUMER_ID;
|
|
47
47
|
const lightspeedConsumerId = process.env.CHIFT_LIGHTSPEED_CONSUMER_ID;
|
|
48
|
-
const
|
|
48
|
+
const zeltyConsumerId = process.env.CHIFT_ZELTY_CONSUMER_ID;
|
|
49
49
|
let cashpadConsumer;
|
|
50
50
|
let lightspeedConsumer;
|
|
51
|
-
let
|
|
51
|
+
let zeltyConsumer;
|
|
52
52
|
(0, globals_1.beforeAll)(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
53
53
|
cashpadConsumer = yield client.Consumers.getConsumerById(cashpadConsumerId);
|
|
54
54
|
lightspeedConsumer = yield client.Consumers.getConsumerById(lightspeedConsumerId);
|
|
55
|
-
|
|
55
|
+
zeltyConsumer = yield client.Consumers.getConsumerById(zeltyConsumerId);
|
|
56
56
|
}));
|
|
57
57
|
(0, globals_1.test)('getLocations', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
58
58
|
const locations = yield lightspeedConsumer.pos.getLocations();
|
|
@@ -166,17 +166,12 @@ globals_1.test.skip('updateOrder', () => __awaiter(void 0, void 0, void 0, funct
|
|
|
166
166
|
(0, globals_1.expect)(order).toHaveProperty('id', globals_1.expect.any(String));
|
|
167
167
|
}));
|
|
168
168
|
(0, globals_1.test)('getProducts', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
169
|
-
const products = yield
|
|
169
|
+
const products = yield zeltyConsumer.pos.getProducts();
|
|
170
170
|
(0, globals_1.expect)(products).toBeInstanceOf(Array);
|
|
171
171
|
(0, globals_1.expect)(products.length).toBeGreaterThan(0);
|
|
172
172
|
}));
|
|
173
173
|
(0, globals_1.test)('getProductCategories', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
174
|
-
const productCategories = yield
|
|
174
|
+
const productCategories = yield zeltyConsumer.pos.getProductCategories();
|
|
175
175
|
(0, globals_1.expect)(productCategories).toBeInstanceOf(Array);
|
|
176
176
|
(0, globals_1.expect)(productCategories.length).toBeGreaterThan(0);
|
|
177
177
|
}));
|
|
178
|
-
(0, globals_1.test)('getAccountingCategories', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
179
|
-
const accountingCategories = yield popinaConsumer.pos.getAccountingCategories();
|
|
180
|
-
(0, globals_1.expect)(accountingCategories).toBeInstanceOf(Array);
|
|
181
|
-
(0, globals_1.expect)(accountingCategories.length).toBeGreaterThan(0);
|
|
182
|
-
}));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@chift/chift-nodejs",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.9",
|
|
4
4
|
"description": "The Chift NodeJS library provides convenient access to the Chift API from applications written in the NodeJS language (Javascript/Typescript).",
|
|
5
5
|
"main": "dist/src/index.js",
|
|
6
6
|
"types": "dist/src/index.d.ts",
|
|
@@ -37,14 +37,20 @@ type getOutstandingsParams = Omit<
|
|
|
37
37
|
>;
|
|
38
38
|
|
|
39
39
|
const accountingFactory = {
|
|
40
|
-
getAnalyticPlans(
|
|
40
|
+
getAnalyticPlans(
|
|
41
|
+
params: operations['accounting_get_analytic_plans']['parameters']['query']
|
|
42
|
+
): RequestData<components['schemas']['AnalyticPlanItem'][]> {
|
|
41
43
|
return {
|
|
44
|
+
params,
|
|
42
45
|
method: 'get',
|
|
43
46
|
url: '/consumers/{consumer_id}/accounting/analytic-plans',
|
|
44
47
|
};
|
|
45
48
|
},
|
|
46
|
-
getClients(
|
|
49
|
+
getClients(
|
|
50
|
+
params: operations['accounting_get_clients']['parameters']['query']
|
|
51
|
+
): RequestData<components['schemas']['ClientItemOut'][]> {
|
|
47
52
|
return {
|
|
53
|
+
params,
|
|
48
54
|
method: 'get',
|
|
49
55
|
url: '/consumers/{consumer_id}/accounting/clients',
|
|
50
56
|
};
|
|
@@ -54,30 +60,39 @@ const accountingFactory = {
|
|
|
54
60
|
params: operations['accounting_create_client']['parameters']['query']
|
|
55
61
|
): RequestData<components['schemas']['ClientItemOut']> {
|
|
56
62
|
return {
|
|
63
|
+
params,
|
|
57
64
|
method: 'post',
|
|
58
65
|
url: '/consumers/{consumer_id}/accounting/clients',
|
|
59
66
|
body: client,
|
|
60
|
-
params: params,
|
|
61
67
|
};
|
|
62
68
|
},
|
|
63
|
-
getClient(
|
|
69
|
+
getClient(
|
|
70
|
+
clientId: string,
|
|
71
|
+
params: operations['accounting_get_client']['parameters']['query']
|
|
72
|
+
): RequestData<components['schemas']['ClientItemOut']> {
|
|
64
73
|
return {
|
|
74
|
+
params,
|
|
65
75
|
method: 'get',
|
|
66
76
|
url: `/consumers/{consumer_id}/accounting/clients/${clientId}`,
|
|
67
77
|
};
|
|
68
78
|
},
|
|
69
79
|
updateClient(
|
|
70
80
|
clientId: string,
|
|
71
|
-
client: components['schemas']['ClientItemUpdate']
|
|
81
|
+
client: components['schemas']['ClientItemUpdate'],
|
|
82
|
+
params: operations['accounting_update_client']['parameters']['query']
|
|
72
83
|
): RequestData<components['schemas']['ClientItemOut']> {
|
|
73
84
|
return {
|
|
85
|
+
params,
|
|
74
86
|
method: 'patch',
|
|
75
87
|
url: `/consumers/{consumer_id}/accounting/clients/${clientId}`,
|
|
76
88
|
body: client,
|
|
77
89
|
};
|
|
78
90
|
},
|
|
79
|
-
getSuppliers(
|
|
91
|
+
getSuppliers(
|
|
92
|
+
params: operations['accounting_get_suppliers']['parameters']['query']
|
|
93
|
+
): RequestData<components['schemas']['SupplierItemOut'][]> {
|
|
80
94
|
return {
|
|
95
|
+
params,
|
|
81
96
|
method: 'get',
|
|
82
97
|
url: '/consumers/{consumer_id}/accounting/suppliers',
|
|
83
98
|
};
|
|
@@ -87,23 +102,29 @@ const accountingFactory = {
|
|
|
87
102
|
params: operations['accounting_create_supplier']['parameters']['query']
|
|
88
103
|
): RequestData<components['schemas']['SupplierItemOut']> {
|
|
89
104
|
return {
|
|
105
|
+
params,
|
|
90
106
|
method: 'post',
|
|
91
107
|
url: '/consumers/{consumer_id}/accounting/suppliers',
|
|
92
108
|
body: supplier,
|
|
93
|
-
params: params,
|
|
94
109
|
};
|
|
95
110
|
},
|
|
96
|
-
getSupplier(
|
|
111
|
+
getSupplier(
|
|
112
|
+
supplierId: string,
|
|
113
|
+
params: operations['accounting_get_supplier']['parameters']['query']
|
|
114
|
+
): RequestData<components['schemas']['SupplierItemOut']> {
|
|
97
115
|
return {
|
|
116
|
+
params,
|
|
98
117
|
method: 'get',
|
|
99
118
|
url: `/consumers/{consumer_id}/accounting/suppliers/${supplierId}`,
|
|
100
119
|
};
|
|
101
120
|
},
|
|
102
121
|
updateSupplier(
|
|
103
122
|
supplierId: string,
|
|
104
|
-
supplier: components['schemas']['SupplierItemUpdate']
|
|
123
|
+
supplier: components['schemas']['SupplierItemUpdate'],
|
|
124
|
+
params: operations['accounting_update_supplier']['parameters']['query']
|
|
105
125
|
): RequestData<components['schemas']['SupplierItemOut']> {
|
|
106
126
|
return {
|
|
127
|
+
params,
|
|
107
128
|
method: 'patch',
|
|
108
129
|
url: `/consumers/{consumer_id}/accounting/suppliers/${supplierId}`,
|
|
109
130
|
body: supplier,
|
|
@@ -172,43 +193,54 @@ const accountingFactory = {
|
|
|
172
193
|
};
|
|
173
194
|
},
|
|
174
195
|
createAnalyticAccount(
|
|
175
|
-
analyticAccount: components['schemas']['AnalyticAccountItemIn']
|
|
196
|
+
analyticAccount: components['schemas']['AnalyticAccountItemIn'],
|
|
197
|
+
params: operations['accounting_create_analytic_account']['parameters']['query']
|
|
176
198
|
): RequestData<components['schemas']['AnalyticAccountItemOut']> {
|
|
177
199
|
return {
|
|
200
|
+
params,
|
|
178
201
|
method: 'post',
|
|
179
202
|
url: '/consumers/{consumer_id}/accounting/analytic-accounts',
|
|
180
203
|
body: analyticAccount,
|
|
181
204
|
};
|
|
182
205
|
},
|
|
183
|
-
getAnalyticAccounts(
|
|
206
|
+
getAnalyticAccounts(
|
|
207
|
+
params: operations['accounting_get_analytic_accounts']['parameters']['query']
|
|
208
|
+
): RequestData<components['schemas']['AnalyticAccountItemOut'][]> {
|
|
184
209
|
return {
|
|
210
|
+
params,
|
|
185
211
|
method: 'get',
|
|
186
212
|
url: '/consumers/{consumer_id}/accounting/analytic-accounts',
|
|
187
213
|
};
|
|
188
214
|
},
|
|
189
215
|
createAnalyticAccountWithMultiplePlans(
|
|
190
216
|
analytic_plan: string,
|
|
191
|
-
analyticAccount: components['schemas']['AnalyticAccountItemIn']
|
|
217
|
+
analyticAccount: components['schemas']['AnalyticAccountItemIn'],
|
|
218
|
+
params: operations['accounting_create_analytic_account_multi_plans']['parameters']['query']
|
|
192
219
|
): RequestData<components['schemas']['AnalyticAccountItemOutMultiAnalyticPlans']> {
|
|
193
220
|
return {
|
|
221
|
+
params,
|
|
194
222
|
method: 'post',
|
|
195
223
|
url: `/consumers/{consumer_id}/accounting/analytic-accounts/multi-analytic-plans/${analytic_plan}`,
|
|
196
224
|
body: analyticAccount,
|
|
197
225
|
};
|
|
198
226
|
},
|
|
199
227
|
getAnalyticAccount(
|
|
200
|
-
analytic_account_id: string
|
|
228
|
+
analytic_account_id: string,
|
|
229
|
+
params: operations['accounting_get_analytic_account']['parameters']['query']
|
|
201
230
|
): RequestData<components['schemas']['AnalyticAccountItemOut']> {
|
|
202
231
|
return {
|
|
232
|
+
params,
|
|
203
233
|
method: 'get',
|
|
204
234
|
url: `/consumers/{consumer_id}/accounting/analytic-accounts/${analytic_account_id}`,
|
|
205
235
|
};
|
|
206
236
|
},
|
|
207
237
|
updateAnalyticAccount(
|
|
208
238
|
analytic_account_id: string,
|
|
209
|
-
analyticAccount: components['schemas']['AnalyticAccountItemUpdate']
|
|
239
|
+
analyticAccount: components['schemas']['AnalyticAccountItemUpdate'],
|
|
240
|
+
params: operations['accounting_update_analytic_account']['parameters']['query']
|
|
210
241
|
): RequestData<components['schemas']['AnalyticAccountItemOut']> {
|
|
211
242
|
return {
|
|
243
|
+
params,
|
|
212
244
|
method: 'patch',
|
|
213
245
|
url: `/consumers/{consumer_id}/accounting/analytic-accounts/${analytic_account_id}`,
|
|
214
246
|
body: analyticAccount,
|
|
@@ -216,9 +248,11 @@ const accountingFactory = {
|
|
|
216
248
|
},
|
|
217
249
|
getAnalyticAccountWithMultiplePlans(
|
|
218
250
|
analytic_account_id: string,
|
|
219
|
-
analytic_plan: string
|
|
251
|
+
analytic_plan: string,
|
|
252
|
+
params: operations['accounting_get_analytic_account_multi_plans']['parameters']['query']
|
|
220
253
|
): RequestData<components['schemas']['AnalyticAccountItemOutMultiAnalyticPlans']> {
|
|
221
254
|
return {
|
|
255
|
+
params,
|
|
222
256
|
method: 'get',
|
|
223
257
|
url: `/consumers/{consumer_id}/accounting/analytic-accounts/${analytic_account_id}/multi-analytic-plans/${analytic_plan}`,
|
|
224
258
|
};
|
|
@@ -226,18 +260,21 @@ const accountingFactory = {
|
|
|
226
260
|
updateAnalyticAccountWithMultiplePlans(
|
|
227
261
|
analytic_account_id: string,
|
|
228
262
|
analytic_plan: string,
|
|
229
|
-
analyticAccount: components['schemas']['AnalyticAccountItemUpdate']
|
|
263
|
+
analyticAccount: components['schemas']['AnalyticAccountItemUpdate'],
|
|
264
|
+
params: operations['accounting_update_analytic_account_multi_plans']['parameters']['query']
|
|
230
265
|
): RequestData<components['schemas']['AnalyticAccountItemOutMultiAnalyticPlans']> {
|
|
231
266
|
return {
|
|
267
|
+
params,
|
|
232
268
|
method: 'patch',
|
|
233
269
|
url: `/consumers/{consumer_id}/accounting/analytic-accounts/${analytic_account_id}/multi-analytic-plans/${analytic_plan}`,
|
|
234
270
|
body: analyticAccount,
|
|
235
271
|
};
|
|
236
272
|
},
|
|
237
|
-
getAnalyticAccountsWithMultiplePlans(
|
|
238
|
-
|
|
239
|
-
> {
|
|
273
|
+
getAnalyticAccountsWithMultiplePlans(
|
|
274
|
+
params: operations['accounting_get_analytic_accounts_multi_plans']['parameters']['query']
|
|
275
|
+
): RequestData<components['schemas']['AnalyticAccountItemOutMultiAnalyticPlans'][]> {
|
|
240
276
|
return {
|
|
277
|
+
params,
|
|
241
278
|
method: 'get',
|
|
242
279
|
url: '/consumers/{consumer_id}/accounting/analytic-accounts/multi-analytic-plans',
|
|
243
280
|
};
|
|
@@ -260,20 +297,30 @@ const accountingFactory = {
|
|
|
260
297
|
url: `/consumers/{consumer_id}/accounting/journal/entries/multi-analytic-plans`,
|
|
261
298
|
};
|
|
262
299
|
},
|
|
263
|
-
getPaymentsByInvoiceId(
|
|
300
|
+
getPaymentsByInvoiceId(
|
|
301
|
+
invoice_id: string,
|
|
302
|
+
params: operations['accounting_get_payments_by_invoice']['parameters']['query']
|
|
303
|
+
): RequestData<components['schemas']['Payment'][]> {
|
|
264
304
|
return {
|
|
305
|
+
params,
|
|
265
306
|
method: 'get',
|
|
266
307
|
url: `/consumers/{consumer_id}/accounting/invoices/id/${invoice_id}/payments`,
|
|
267
308
|
};
|
|
268
309
|
},
|
|
269
|
-
getJournals(
|
|
310
|
+
getJournals(
|
|
311
|
+
params: operations['accounting_get_journals']['parameters']['query']
|
|
312
|
+
): RequestData<components['schemas']['Journal'][]> {
|
|
270
313
|
return {
|
|
314
|
+
params,
|
|
271
315
|
method: 'get',
|
|
272
316
|
url: `/consumers/{consumer_id}/accounting/journals`,
|
|
273
317
|
};
|
|
274
318
|
},
|
|
275
|
-
getVatCodes(
|
|
319
|
+
getVatCodes(
|
|
320
|
+
params: operations['accounting_get_vat_codes']['parameters']['query']
|
|
321
|
+
): RequestData<components['schemas']['app__routers__accounting__VatCode'][]> {
|
|
276
322
|
return {
|
|
323
|
+
params,
|
|
277
324
|
method: 'get',
|
|
278
325
|
url: `/consumers/{consumer_id}/accounting/vat-codes`,
|
|
279
326
|
};
|
|
@@ -320,6 +367,15 @@ const accountingFactory = {
|
|
|
320
367
|
body: attachment,
|
|
321
368
|
};
|
|
322
369
|
},
|
|
370
|
+
getAttachments(
|
|
371
|
+
params: operations['accounting_get_attachments']['parameters']['query']
|
|
372
|
+
): RequestData<components['schemas']['AttachmentItem'][]> {
|
|
373
|
+
return {
|
|
374
|
+
params,
|
|
375
|
+
method: 'get',
|
|
376
|
+
url: `/consumers/{consumer_id}/accounting/attachments`,
|
|
377
|
+
};
|
|
378
|
+
},
|
|
323
379
|
getChartOfAccounts(
|
|
324
380
|
params: getChartOfAccountsParams
|
|
325
381
|
): RequestData<components['schemas']['AccountItem'][]> {
|
|
@@ -403,6 +459,23 @@ const accountingFactory = {
|
|
|
403
459
|
body: journal_entry,
|
|
404
460
|
};
|
|
405
461
|
},
|
|
462
|
+
matchEntries(
|
|
463
|
+
body: components['schemas']['MatchingIn'],
|
|
464
|
+
params: operations['accounting_match_entries']['parameters']['query']
|
|
465
|
+
): RequestData<components['schemas']['MatchingOut']> {
|
|
466
|
+
return {
|
|
467
|
+
params,
|
|
468
|
+
body,
|
|
469
|
+
method: 'post',
|
|
470
|
+
url: '/consumers/{consumer_id}/accounting/matching',
|
|
471
|
+
};
|
|
472
|
+
},
|
|
473
|
+
getFolders(): RequestData<components['schemas']['FolderItem'][]> {
|
|
474
|
+
return {
|
|
475
|
+
method: 'get',
|
|
476
|
+
url: '/consumers/{consumer_id}/accounting/folders',
|
|
477
|
+
};
|
|
478
|
+
},
|
|
406
479
|
};
|
|
407
480
|
|
|
408
481
|
export { accountingFactory };
|
|
@@ -5,12 +5,14 @@ import { chiftOperations } from '../types/public-api/mappings';
|
|
|
5
5
|
const Integrations = (internalApi: InternalAPI) => {
|
|
6
6
|
const _internalApi: InternalAPI = internalApi;
|
|
7
7
|
|
|
8
|
-
const getIntegrations = async (
|
|
8
|
+
const getIntegrations = async (
|
|
9
|
+
params: operations[chiftOperations['getIntegrations']]['parameters']['query'] = {}
|
|
10
|
+
) => {
|
|
9
11
|
const {
|
|
10
12
|
data,
|
|
11
13
|
}: {
|
|
12
14
|
data: operations[chiftOperations['getIntegrations']]['responses'][200]['content']['application/json'];
|
|
13
|
-
} = await _internalApi.get('/integrations');
|
|
15
|
+
} = await _internalApi.get('/integrations', { params });
|
|
14
16
|
return data;
|
|
15
17
|
};
|
|
16
18
|
|
|
@@ -595,3 +595,34 @@ test('createFinancialEntryOld', async () => {
|
|
|
595
595
|
expect(financialEntry).toBeTruthy();
|
|
596
596
|
expect(financialEntry).toHaveProperty('journal_id', journal.id);
|
|
597
597
|
});
|
|
598
|
+
|
|
599
|
+
let folders: components['schemas']['FolderItem'][] = [];
|
|
600
|
+
test('getFolders', async () => {
|
|
601
|
+
folders = await consumer.accounting.getFolders();
|
|
602
|
+
expect(folders).toBeInstanceOf(Array);
|
|
603
|
+
expect(folders.length).toBeGreaterThan(0);
|
|
604
|
+
expect(folders[0]).toHaveProperty('id', expect.any(String));
|
|
605
|
+
expect(folders[0]).toHaveProperty('name', expect.any(String));
|
|
606
|
+
});
|
|
607
|
+
|
|
608
|
+
test.skip('getAttachments', async () => {
|
|
609
|
+
const attachments = await consumer.accounting.getAttachments({
|
|
610
|
+
// TODO: Add documentId from test account
|
|
611
|
+
documentId: '',
|
|
612
|
+
type: 'invoice',
|
|
613
|
+
});
|
|
614
|
+
expect(attachments).toBeInstanceOf(Array);
|
|
615
|
+
expect(attachments.length).toBeGreaterThan(0);
|
|
616
|
+
expect(attachments[0]).toHaveProperty('id', expect.any(String));
|
|
617
|
+
expect(attachments[0]).toHaveProperty('base64_string', expect.any(String));
|
|
618
|
+
});
|
|
619
|
+
|
|
620
|
+
test.skip('matchEntries', async () => {
|
|
621
|
+
const match = await consumer.accounting.matchEntries({
|
|
622
|
+
// TODO: Change params with test account values
|
|
623
|
+
entries: [],
|
|
624
|
+
partner_id: '',
|
|
625
|
+
});
|
|
626
|
+
expect(match).toHaveProperty('matching_number', expect.any(String));
|
|
627
|
+
expect(match).toHaveProperty('balance', expect.any(Number));
|
|
628
|
+
});
|