@chift/chift-nodejs 1.0.16 → 1.0.18

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 (145) hide show
  1. package/README.md +3 -3
  2. package/package.json +5 -2
  3. package/src/types/public-api/schema.d.ts +4071 -850
  4. package/src/types/sync.ts +20 -5
  5. package/.eslintcache +0 -1
  6. package/.eslintignore +0 -1
  7. package/.eslintrc.json +0 -25
  8. package/.github/workflows/ci.yml +0 -75
  9. package/.husky/pre-commit +0 -4
  10. package/.prettierignore +0 -1
  11. package/.prettierrc.json +0 -7
  12. package/CHANGELOG.md +0 -98
  13. package/coverage/clover.xml +0 -1645
  14. package/coverage/coverage-final.json +0 -19
  15. package/coverage/lcov-report/base.css +0 -224
  16. package/coverage/lcov-report/block-navigation.js +0 -87
  17. package/coverage/lcov-report/favicon.png +0 -0
  18. package/coverage/lcov-report/index.html +0 -146
  19. package/coverage/lcov-report/prettify.css +0 -1
  20. package/coverage/lcov-report/prettify.js +0 -2
  21. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  22. package/coverage/lcov-report/sorter.js +0 -196
  23. package/coverage/lcov-report/src/helpers/index.html +0 -131
  24. package/coverage/lcov-report/src/helpers/openapi.ts.html +0 -151
  25. package/coverage/lcov-report/src/helpers/settings.ts.html +0 -94
  26. package/coverage/lcov-report/src/index.html +0 -116
  27. package/coverage/lcov-report/src/index.ts.html +0 -88
  28. package/coverage/lcov-report/src/modules/accounting.ts.html +0 -1156
  29. package/coverage/lcov-report/src/modules/api.ts.html +0 -190
  30. package/coverage/lcov-report/src/modules/consumer.ts.html +0 -616
  31. package/coverage/lcov-report/src/modules/consumers.ts.html +0 -331
  32. package/coverage/lcov-report/src/modules/custom.ts.html +0 -193
  33. package/coverage/lcov-report/src/modules/datastores.ts.html +0 -142
  34. package/coverage/lcov-report/src/modules/ecommerce.ts.html +0 -331
  35. package/coverage/lcov-report/src/modules/flow.ts.html +0 -589
  36. package/coverage/lcov-report/src/modules/index.html +0 -326
  37. package/coverage/lcov-report/src/modules/integrations.ts.html +0 -151
  38. package/coverage/lcov-report/src/modules/internalApi.ts.html +0 -586
  39. package/coverage/lcov-report/src/modules/invoicing.ts.html +0 -391
  40. package/coverage/lcov-report/src/modules/pos.ts.html +0 -421
  41. package/coverage/lcov-report/src/modules/sync.ts.html +0 -316
  42. package/coverage/lcov-report/src/modules/syncs.ts.html +0 -169
  43. package/coverage/lcov-report/src/modules/webhooks.ts.html +0 -343
  44. package/coverage/lcov.info +0 -1976
  45. package/dist/src/helpers/openapi.d.ts +0 -3
  46. package/dist/src/helpers/openapi.js +0 -18
  47. package/dist/src/helpers/settings.d.ts +0 -4
  48. package/dist/src/helpers/settings.js +0 -5
  49. package/dist/src/index.d.ts +0 -1
  50. package/dist/src/modules/accounting.d.ts +0 -68
  51. package/dist/src/modules/accounting.js +0 -326
  52. package/dist/src/modules/api.d.ts +0 -16795
  53. package/dist/src/modules/api.js +0 -36
  54. package/dist/src/modules/consumer.d.ts +0 -3313
  55. package/dist/src/modules/consumer.js +0 -139
  56. package/dist/src/modules/consumers.d.ts +0 -16684
  57. package/dist/src/modules/consumers.js +0 -51
  58. package/dist/src/modules/custom.d.ts +0 -8
  59. package/dist/src/modules/custom.js +0 -36
  60. package/dist/src/modules/datastores.d.ts +0 -18
  61. package/dist/src/modules/datastores.js +0 -23
  62. package/dist/src/modules/ecommerce.d.ts +0 -24
  63. package/dist/src/modules/ecommerce.js +0 -97
  64. package/dist/src/modules/flow.d.ts +0 -15
  65. package/dist/src/modules/flow.js +0 -156
  66. package/dist/src/modules/integrations.d.ts +0 -23
  67. package/dist/src/modules/integrations.js +0 -23
  68. package/dist/src/modules/internalApi.d.ts +0 -24
  69. package/dist/src/modules/internalApi.js +0 -175
  70. package/dist/src/modules/invoicing.d.ts +0 -20
  71. package/dist/src/modules/invoicing.js +0 -90
  72. package/dist/src/modules/pms.d.ts +0 -15
  73. package/dist/src/modules/pms.js +0 -47
  74. package/dist/src/modules/pos.d.ts +0 -26
  75. package/dist/src/modules/pos.js +0 -101
  76. package/dist/src/modules/sync.d.ts +0 -13414
  77. package/dist/src/modules/sync.js +0 -73
  78. package/dist/src/modules/syncs.d.ts +0 -11
  79. package/dist/src/modules/syncs.js +0 -39
  80. package/dist/src/modules/webhooks.d.ts +0 -55
  81. package/dist/src/modules/webhooks.js +0 -53
  82. package/dist/src/types/api.d.ts +0 -29
  83. package/dist/src/types/api.js +0 -2
  84. package/dist/src/types/consumers.d.ts +0 -8
  85. package/dist/src/types/consumers.js +0 -2
  86. package/dist/src/types/public-api/mappings.d.ts +0 -21
  87. package/dist/src/types/public-api/mappings.js +0 -2
  88. package/dist/src/types/public-api/schema.d.ts +0 -12003
  89. package/dist/src/types/public-api/schema.js +0 -6
  90. package/dist/src/types/sync.d.ts +0 -20
  91. package/dist/src/types/sync.js +0 -2
  92. package/dist/test/modules/accounting.test.d.ts +0 -1
  93. package/dist/test/modules/accounting.test.js +0 -582
  94. package/dist/test/modules/consumer.test.d.ts +0 -1
  95. package/dist/test/modules/consumer.test.js +0 -89
  96. package/dist/test/modules/consumers.test.d.ts +0 -1
  97. package/dist/test/modules/consumers.test.js +0 -109
  98. package/dist/test/modules/ecommerce.test.d.ts +0 -1
  99. package/dist/test/modules/ecommerce.test.js +0 -220
  100. package/dist/test/modules/integrations.test.d.ts +0 -1
  101. package/dist/test/modules/integrations.test.js +0 -54
  102. package/dist/test/modules/invoicing.test.d.ts +0 -1
  103. package/dist/test/modules/invoicing.test.js +0 -108
  104. package/dist/test/modules/pos.test.d.ts +0 -1
  105. package/dist/test/modules/pos.test.js +0 -182
  106. package/dist/test/modules/sync.test.d.ts +0 -1
  107. package/dist/test/modules/sync.test.js +0 -81
  108. package/dist/test/modules/syncs.test.d.ts +0 -1
  109. package/dist/test/modules/syncs.test.js +0 -53
  110. package/dist/test/modules/webhooks.test.d.ts +0 -1
  111. package/dist/test/modules/webhooks.test.js +0 -120
  112. package/jest.config.ts +0 -195
  113. package/src/helpers/openapi.ts +0 -22
  114. package/src/helpers/settings.ts +0 -3
  115. package/src/index.ts +0 -1
  116. package/src/modules/accounting.ts +0 -510
  117. package/src/modules/api.ts +0 -35
  118. package/src/modules/consumer.ts +0 -213
  119. package/src/modules/consumers.ts +0 -82
  120. package/src/modules/custom.ts +0 -36
  121. package/src/modules/datastores.ts +0 -19
  122. package/src/modules/ecommerce.ts +0 -127
  123. package/src/modules/flow.ts +0 -168
  124. package/src/modules/integrations.ts +0 -24
  125. package/src/modules/internalApi.ts +0 -182
  126. package/src/modules/invoicing.ts +0 -114
  127. package/src/modules/pms.ts +0 -67
  128. package/src/modules/pos.ts +0 -144
  129. package/src/modules/sync.ts +0 -77
  130. package/src/modules/syncs.ts +0 -59
  131. package/src/modules/webhooks.ts +0 -86
  132. package/src/types/public-api/schema.ts +0 -12073
  133. package/test/data/accounting_invoice.pdf +0 -0
  134. package/test/modules/accounting.test.ts +0 -628
  135. package/test/modules/consumer.test.ts +0 -68
  136. package/test/modules/consumers.test.ts +0 -85
  137. package/test/modules/ecommerce.test.ts +0 -208
  138. package/test/modules/integrations.test.ts +0 -22
  139. package/test/modules/invoicing.test.ts +0 -88
  140. package/test/modules/pos.test.ts +0 -166
  141. package/test/modules/sync.test.ts +0 -60
  142. package/test/modules/syncs.test.ts +0 -23
  143. package/test/modules/webhooks.test.ts +0 -92
  144. package/test/set_envs.sh +0 -14
  145. package/tsconfig.json +0 -107
@@ -1,51 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.Consumers = void 0;
13
- const consumer_1 = require("./consumer");
14
- const Consumers = (internalApi) => {
15
- const _internalApi = internalApi;
16
- const getConsumers = () => __awaiter(void 0, void 0, void 0, function* () {
17
- const { data, } = yield _internalApi.get('/consumers');
18
- return data.map((consumer) => (0, consumer_1.Consumer)(_internalApi, consumer));
19
- });
20
- const createConsumer = (body) => __awaiter(void 0, void 0, void 0, function* () {
21
- const { data, } = yield _internalApi.post('/consumers', body);
22
- return (0, consumer_1.Consumer)(_internalApi, data);
23
- });
24
- const getConsumerById = (consumerId) => __awaiter(void 0, void 0, void 0, function* () {
25
- const { data, } = yield _internalApi.get(`/consumers/${consumerId}`);
26
- return (0, consumer_1.Consumer)(_internalApi, Object.assign({}, data));
27
- });
28
- const getConsumersByName = (consumerName) => __awaiter(void 0, void 0, void 0, function* () {
29
- const { data, } = yield _internalApi.get('/consumers');
30
- return data
31
- .filter((consumer) => consumer.name.toLowerCase().indexOf(consumerName.toLocaleLowerCase()) !== -1)
32
- .map((consumer) => (0, consumer_1.Consumer)(_internalApi, consumer));
33
- });
34
- const updateConsumerById = (consumerId, body) => __awaiter(void 0, void 0, void 0, function* () {
35
- const { data, } = yield _internalApi.patch(`/consumers/${consumerId}`, body);
36
- return (0, consumer_1.Consumer)(_internalApi, data);
37
- });
38
- const deleteConsumerById = (consumerId) => __awaiter(void 0, void 0, void 0, function* () {
39
- const { data, } = yield _internalApi.delete(`/consumers/${consumerId}`);
40
- return data;
41
- });
42
- return {
43
- getConsumers,
44
- createConsumer,
45
- getConsumerById,
46
- getConsumersByName,
47
- updateConsumerById,
48
- deleteConsumerById,
49
- };
50
- };
51
- exports.Consumers = Consumers;
@@ -1,8 +0,0 @@
1
- import { RequestData } from '../types/api';
2
- declare const customFactory: {
3
- get(name: string, resource: string, params?: any): RequestData<any>;
4
- post(name: string, resource: string, body: any, params?: any): RequestData<any>;
5
- patch(name: string, resource: string, body: any, params?: any): RequestData<any>;
6
- delete(name: string, resource: string, params?: any): RequestData<any>;
7
- };
8
- export { customFactory };
@@ -1,36 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.customFactory = void 0;
4
- const customFactory = {
5
- get(name, resource, params) {
6
- return {
7
- method: 'get',
8
- url: `/consumers/{consumer_id}/custom/${name}/${resource}`,
9
- params: params,
10
- };
11
- },
12
- post(name, resource, body, params) {
13
- return {
14
- method: 'post',
15
- url: `/consumers/{consumer_id}/custom/${name}/${resource}`,
16
- body: body,
17
- params: params,
18
- };
19
- },
20
- patch(name, resource, body, params) {
21
- return {
22
- method: 'patch',
23
- url: `/consumers/{consumer_id}/custom/${name}/${resource}`,
24
- body: body,
25
- params: params,
26
- };
27
- },
28
- delete(name, resource, params) {
29
- return {
30
- method: 'delete',
31
- url: `/consumers/{consumer_id}/custom/${name}/${resource}`,
32
- params: params,
33
- };
34
- },
35
- };
36
- exports.customFactory = customFactory;
@@ -1,18 +0,0 @@
1
- import { InternalAPI } from './internalApi';
2
- declare const DataStores: (internalApi: InternalAPI) => {
3
- getDataStores: () => Promise<{
4
- id: string;
5
- name: string;
6
- status?: "active" | "inactive" | undefined;
7
- definition: {
8
- columns: {
9
- name: string;
10
- title: string;
11
- type: string;
12
- optional?: boolean | undefined;
13
- }[];
14
- search_column?: string | undefined;
15
- };
16
- }[]>;
17
- };
18
- export { DataStores };
@@ -1,23 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.DataStores = void 0;
13
- const DataStores = (internalApi) => {
14
- const _internalApi = internalApi;
15
- const getDataStores = () => __awaiter(void 0, void 0, void 0, function* () {
16
- const { data } = yield _internalApi.get('/datastores');
17
- return data;
18
- });
19
- return {
20
- getDataStores,
21
- };
22
- };
23
- exports.DataStores = DataStores;
@@ -1,24 +0,0 @@
1
- import { operations, components } from '../types/public-api/schema';
2
- import { AutoPaginatedParams, RequestData } from '../types/api';
3
- type GetOrdersParams = AutoPaginatedParams<operations['ecommerce_get_orders']['parameters']['query']>;
4
- type GetPaymentMethodsParams = AutoPaginatedParams<operations['ecommerce_get_payments_methods']['parameters']['query']>;
5
- type GetProductCategoriesParams = AutoPaginatedParams<operations['ecommerce_get_product_categories']['parameters']['query']>;
6
- type GetTaxesParams = AutoPaginatedParams<operations['ecommerce_get_taxes']['parameters']['query']>;
7
- type GetCountriesParams = AutoPaginatedParams<operations['ecommerce_get_countries']['parameters']['query']>;
8
- declare const ecommerceFactory: {
9
- getCustomers(): RequestData<components['schemas']['CommerceCustomerItem'][]>;
10
- getProducts(): RequestData<components['schemas']['app__routers__commerce__ProductItem'][]>;
11
- getCustomer(customerId: string): RequestData<components['schemas']['CommerceCustomerItem']>;
12
- getProduct(productId: string): RequestData<components['schemas']['app__routers__commerce__ProductItem']>;
13
- getProductVariantById(variantId: string): RequestData<components['schemas']['VariantItem']>;
14
- updateAvailableQuantity(variantId: string, inventoryDetails: components['schemas']['InventoryDetailsUpdate']): RequestData<components['schemas']['InventoryDetailsItem']>;
15
- getLocations(): RequestData<components['schemas']['CommerceLocationItem'][]>;
16
- getOrders(params?: GetOrdersParams): RequestData<components['schemas']['OrderItemOut'][]>;
17
- createOrder(order: components['schemas']['OrderItemIn']): RequestData<components['schemas']['OrderItemOut']>;
18
- getOrder(orderId: string): RequestData<components['schemas']['OrderItemOut']>;
19
- getPaymentMethods(params?: GetPaymentMethodsParams): RequestData<components['schemas']['PaymentMethodItem'][]>;
20
- getProductCategories(params?: GetProductCategoriesParams): RequestData<components['schemas']['CategoryItem'][]>;
21
- getTaxes(params?: GetTaxesParams): RequestData<components['schemas']['TaxRateItem'][]>;
22
- getCountries(params?: GetCountriesParams): RequestData<components['schemas']['CountryItem'][]>;
23
- };
24
- export { ecommerceFactory };
@@ -1,97 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ecommerceFactory = void 0;
4
- const ecommerceFactory = {
5
- getCustomers() {
6
- return {
7
- method: 'get',
8
- url: '/consumers/{consumer_id}/commerce/customers',
9
- };
10
- },
11
- getProducts() {
12
- return {
13
- method: 'get',
14
- url: '/consumers/{consumer_id}/commerce/products',
15
- };
16
- },
17
- getCustomer(customerId) {
18
- return {
19
- method: 'get',
20
- url: `/consumers/{consumer_id}/commerce/customers/${customerId}`,
21
- };
22
- },
23
- getProduct(productId) {
24
- return {
25
- method: 'get',
26
- url: `/consumers/{consumer_id}/commerce/products/${productId}`,
27
- };
28
- },
29
- getProductVariantById(variantId) {
30
- return {
31
- method: 'get',
32
- url: `/consumers/{consumer_id}/commerce/variants/${variantId}`,
33
- };
34
- },
35
- updateAvailableQuantity(variantId, inventoryDetails) {
36
- return {
37
- method: 'post',
38
- url: `/consumers/{consumer_id}/commerce/variants/set_quantity/${variantId}`,
39
- body: inventoryDetails,
40
- };
41
- },
42
- getLocations() {
43
- return {
44
- method: 'get',
45
- url: '/consumers/{consumer_id}/commerce/locations',
46
- };
47
- },
48
- getOrders(params) {
49
- return {
50
- method: 'get',
51
- url: '/consumers/{consumer_id}/commerce/orders',
52
- params: params,
53
- };
54
- },
55
- createOrder(order) {
56
- return {
57
- method: 'post',
58
- url: `/consumers/{consumer_id}/commerce/orders`,
59
- body: order,
60
- };
61
- },
62
- getOrder(orderId) {
63
- return {
64
- method: 'get',
65
- url: `/consumers/{consumer_id}/commerce/orders/${orderId}`,
66
- };
67
- },
68
- getPaymentMethods(params) {
69
- return {
70
- params,
71
- method: 'get',
72
- url: `/consumers/{consumer_id}/commerce/payment-methods`,
73
- };
74
- },
75
- getProductCategories(params) {
76
- return {
77
- params,
78
- method: 'get',
79
- url: `/consumers/{consumer_id}/commerce/product-categories`,
80
- };
81
- },
82
- getTaxes(params) {
83
- return {
84
- params,
85
- method: 'get',
86
- url: `/consumers/{consumer_id}/commerce/taxes`,
87
- };
88
- },
89
- getCountries(params) {
90
- return {
91
- params,
92
- method: 'get',
93
- url: `/consumers/{consumer_id}/commerce/countries`,
94
- };
95
- },
96
- };
97
- exports.ecommerceFactory = ecommerceFactory;
@@ -1,15 +0,0 @@
1
- import { components } from '../types/public-api/schema';
2
- import { Consumer } from './consumer';
3
- declare const Flow: (internalApi: any, body: components['schemas']['ReadFlowItem'], syncid: string, consumers: string[], process?: ((consumer: any, context: any) => any) | undefined) => {
4
- execute: ({ testData, context }: any) => Promise<void>;
5
- getExecution: (executionId: string) => Promise<{
6
- id: string;
7
- start: string;
8
- end?: string | undefined;
9
- status: string;
10
- }>;
11
- executeLocal: (process: (consumer: typeof Consumer, context: any) => any, log?: boolean) => Promise<void>;
12
- flowId: string;
13
- name: string;
14
- };
15
- export { Flow };
@@ -1,156 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.Flow = void 0;
13
- const consumers_1 = require("./consumers");
14
- const Flow = (internalApi, body, syncid, consumers, process) => {
15
- const _internalApi = internalApi;
16
- const data = body;
17
- const _syncid = syncid;
18
- const _consumers = consumers;
19
- const _process = process;
20
- const sendEvent = (payload) => __awaiter(void 0, void 0, void 0, function* () {
21
- const { data: response } = yield _internalApi.post(`/syncs/${_syncid}/flows/${data.id}/event`, payload);
22
- return response;
23
- });
24
- const getExecution = (executionId) => __awaiter(void 0, void 0, void 0, function* () {
25
- const { data: response } = yield _internalApi.get(`/syncs/${_syncid}/flows/${data.id}/executions/${executionId}`);
26
- return response;
27
- });
28
- /**
29
- * Internal use: Function used to execute a flow while testing locally or by calling the sendEvent function
30
- */
31
- const execute = ({ testData = {}, context = {} }) => __awaiter(void 0, void 0, void 0, function* () {
32
- // first create the process in Chift (it will check if it's already created or not and execute it)
33
- yield _internalApi.post(`/syncs/${_syncid}/flows`, {
34
- name: data.name,
35
- description: data.description,
36
- execution: data.execution,
37
- triggers: data.triggers,
38
- config: data.config,
39
- });
40
- // execute locally or remotely by sending an event to execute the flow
41
- if (context.local) {
42
- // when you execute locally you need to have a process defined
43
- const logs = context.logs || false;
44
- if (_process)
45
- executeLocal(_process, logs);
46
- else
47
- throw Error('Process is not defined it cannot be executed');
48
- }
49
- else {
50
- yield sendEvent(testData);
51
- }
52
- });
53
- /**
54
- * Internal use: Function used to execute a flow locally based on the configured consumers.
55
- */
56
- const localExecution = (process) => __awaiter(void 0, void 0, void 0, function* () {
57
- var _a;
58
- _internalApi.debug = true;
59
- for (let i = 0; i < _consumers.length; i++) {
60
- // we do not care about the customer
61
- let consumer;
62
- try {
63
- consumer = yield (0, consumers_1.Consumers)(_internalApi).getConsumerById(_consumers[i]);
64
- }
65
- catch (err) {
66
- console.log(`Cannot run for consumer ${_consumers[i]} as it cannot be found; probably part of an external account ? Use the platform to debug.`);
67
- }
68
- if (consumer) {
69
- const syncData = yield consumer.getSyncData(_syncid);
70
- const flow = (_a = syncData.enabled_flows) === null || _a === void 0 ? void 0 : _a.find((flow) => flow.id === data.id);
71
- if (flow && syncData.status === 'active') {
72
- const context = Object.assign(Object.assign({}, syncData), { flow_id: flow.id, flow_name: flow.name, flow_values: flow.values, flow_config: flow.config });
73
- delete context['enabled_flows'];
74
- yield process(consumer, context);
75
- }
76
- else {
77
- console.log(`Cannot run for consumer ${_consumers[i]} as the flow is not activated or not correctly configured`);
78
- }
79
- }
80
- }
81
- _internalApi.debug = false;
82
- });
83
- /**
84
- * Internal use: Function used to execute a flow locally for debugging purposes. It will create the executions server-side on Chift to be able to follow-up the execution through Chift's UI.
85
- * It will call localExecution to execute the flow for the configured consumers
86
- */
87
- const executeLocal = (process, log = false) => __awaiter(void 0, void 0, void 0, function* () {
88
- if (log) {
89
- // create executions on the platform to add the logs to the server
90
- const { data: response } = yield _internalApi.post(`/syncs/${_syncid}/flows/${data.id}/local`, { type: 'START' });
91
- if (response.data) {
92
- const { executionid, chainexecutionid } = response.data;
93
- _internalApi.setRelatedChainExecutionId(chainexecutionid);
94
- try {
95
- yield localExecution(process);
96
- yield _internalApi.post(`/syncs/${_syncid}/flows/${data.id}/local`, {
97
- type: 'END',
98
- executionid: executionid,
99
- chainexecutionid: chainexecutionid,
100
- });
101
- }
102
- catch (err) {
103
- if (err.error) {
104
- // it's an error from the one api
105
- const error_message = `Error when executing request with url ${err.url} for consumer ${err.consumerName} (${err.consumerId})`;
106
- console.log(`[ERROR]: ${error_message}: ${JSON.stringify(err.error)}`);
107
- yield _internalApi.post(`/syncs/${_syncid}/flows/${data.id}/local`, {
108
- type: 'END',
109
- executionid: executionid,
110
- chainexecutionid: chainexecutionid,
111
- error: true,
112
- error_message: error_message,
113
- technical_error_message: JSON.stringify(err.error),
114
- });
115
- }
116
- else {
117
- console.log('[ERROR]: ' + err.toString());
118
- yield _internalApi.post(`/syncs/${_syncid}/flows/${data.id}/local`, {
119
- type: 'END',
120
- executionid: executionid,
121
- chainexecutionid: chainexecutionid,
122
- error: true,
123
- technical_error_message: err.toString(),
124
- });
125
- }
126
- }
127
- _internalApi.setRelatedChainExecutionId('');
128
- }
129
- else {
130
- throw Error('Execution could not be executed');
131
- }
132
- }
133
- else {
134
- try {
135
- yield localExecution(process);
136
- }
137
- catch (err) {
138
- if (err.error) {
139
- const error_message = `Error when executing request with url ${err.url} for consumer ${err.consumerName} (${err.consumerId})`;
140
- console.log(`[ERROR] ${error_message}: ${JSON.stringify(err.error)}`);
141
- }
142
- else {
143
- console.log('[ERROR]: ' + err.toString());
144
- }
145
- }
146
- }
147
- });
148
- return {
149
- execute,
150
- getExecution,
151
- executeLocal,
152
- flowId: data.id,
153
- name: data.name,
154
- };
155
- };
156
- exports.Flow = Flow;
@@ -1,23 +0,0 @@
1
- import { operations } from '../types/public-api/schema';
2
- import { InternalAPI } from './internalApi';
3
- import { chiftOperations } from '../types/public-api/mappings';
4
- declare const Integrations: (internalApi: InternalAPI) => {
5
- getIntegrations: (params?: operations[chiftOperations['getIntegrations']]['parameters']['query']) => Promise<{
6
- integrationid: number;
7
- name: string;
8
- status: "active" | "inactive";
9
- api: "Point of Sale" | "eCommerce" | "Accounting" | "Invoicing" | "Communication" | "Banking" | "Custom" | "Payment" | "Property Management System";
10
- logo_url: string;
11
- icon_url: string;
12
- post_connections?: {
13
- title: string;
14
- optional: boolean;
15
- resource: string;
16
- }[] | undefined;
17
- credentials?: {
18
- name: string;
19
- optional?: boolean | undefined;
20
- }[] | undefined;
21
- }[]>;
22
- };
23
- export { Integrations };
@@ -1,23 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.Integrations = void 0;
13
- const Integrations = (internalApi) => {
14
- const _internalApi = internalApi;
15
- const getIntegrations = (params = {}) => __awaiter(void 0, void 0, void 0, function* () {
16
- const { data, } = yield _internalApi.get('/integrations', { params });
17
- return data;
18
- });
19
- return {
20
- getIntegrations,
21
- };
22
- };
23
- exports.Integrations = Integrations;
@@ -1,24 +0,0 @@
1
- import { AxiosInstance } from 'axios';
2
- import { AuthType, TokenType, RequestData } from '../types/api';
3
- declare class InternalAPI {
4
- instance: AxiosInstance;
5
- auth: AuthType;
6
- token?: TokenType;
7
- debug: boolean;
8
- relatedChainExecutionId?: string;
9
- connectionId?: string;
10
- integrationId?: string;
11
- get: <T = any, R = import("axios").AxiosResponse<T, any>, D = any>(url: string, config?: import("axios").AxiosRequestConfig<D> | undefined) => Promise<R>;
12
- post: <T = any, R = import("axios").AxiosResponse<T, any>, D = any>(url: string, data?: D | undefined, config?: import("axios").AxiosRequestConfig<D> | undefined) => Promise<R>;
13
- patch: <T = any, R = import("axios").AxiosResponse<T, any>, D = any>(url: string, data?: D | undefined, config?: import("axios").AxiosRequestConfig<D> | undefined) => Promise<R>;
14
- delete: <T = any, R = import("axios").AxiosResponse<T, any>, D = any>(url: string, config?: import("axios").AxiosRequestConfig<D> | undefined) => Promise<R>;
15
- constructor(auth: AuthType);
16
- getToken: () => Promise<void>;
17
- getPaginationParams: (currPage: number) => {
18
- page: number;
19
- size: number;
20
- };
21
- setRelatedChainExecutionId(chainExecutionId: string): void;
22
- makeRequest<TResponse>(requestData: RequestData<TResponse>): Promise<any>;
23
- }
24
- export { InternalAPI };