n8n-nodes-matrix42 0.1.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.
Files changed (37) hide show
  1. package/LICENSE.md +21 -0
  2. package/README.md +111 -0
  3. package/dist/credentials/Matrix42BasicApi.credentials.d.ts +10 -0
  4. package/dist/credentials/Matrix42BasicApi.credentials.js +56 -0
  5. package/dist/credentials/Matrix42BasicApi.credentials.js.map +1 -0
  6. package/dist/credentials/Matrix42TokenApi.credentials.d.ts +12 -0
  7. package/dist/credentials/Matrix42TokenApi.credentials.js +71 -0
  8. package/dist/credentials/Matrix42TokenApi.credentials.js.map +1 -0
  9. package/dist/nodes/Matrix42/GenericFunctions.d.ts +3 -0
  10. package/dist/nodes/Matrix42/GenericFunctions.js +30 -0
  11. package/dist/nodes/Matrix42/GenericFunctions.js.map +1 -0
  12. package/dist/nodes/Matrix42/Matrix42.node.d.ts +19 -0
  13. package/dist/nodes/Matrix42/Matrix42.node.js +486 -0
  14. package/dist/nodes/Matrix42/Matrix42.node.js.map +1 -0
  15. package/dist/nodes/Matrix42/Matrix42AsqlFunctions.d.ts +17 -0
  16. package/dist/nodes/Matrix42/Matrix42AsqlFunctions.js +96 -0
  17. package/dist/nodes/Matrix42/Matrix42AsqlFunctions.js.map +1 -0
  18. package/dist/nodes/Matrix42/Matrix42AsqlOperations.d.ts +3 -0
  19. package/dist/nodes/Matrix42/Matrix42AsqlOperations.js +374 -0
  20. package/dist/nodes/Matrix42/Matrix42AsqlOperations.js.map +1 -0
  21. package/dist/nodes/Matrix42/Matrix42ImportFunctions.d.ts +2 -0
  22. package/dist/nodes/Matrix42/Matrix42ImportFunctions.js +19 -0
  23. package/dist/nodes/Matrix42/Matrix42ImportFunctions.js.map +1 -0
  24. package/dist/nodes/Matrix42/Matrix42ImportOperations.d.ts +3 -0
  25. package/dist/nodes/Matrix42/Matrix42ImportOperations.js +47 -0
  26. package/dist/nodes/Matrix42/Matrix42ImportOperations.js.map +1 -0
  27. package/dist/nodes/Matrix42/Matrix42TicketFunctions.d.ts +4 -0
  28. package/dist/nodes/Matrix42/Matrix42TicketFunctions.js +107 -0
  29. package/dist/nodes/Matrix42/Matrix42TicketFunctions.js.map +1 -0
  30. package/dist/nodes/Matrix42/Matrix42TicketOperations.d.ts +3 -0
  31. package/dist/nodes/Matrix42/Matrix42TicketOperations.js +615 -0
  32. package/dist/nodes/Matrix42/Matrix42TicketOperations.js.map +1 -0
  33. package/dist/nodes/Matrix42/matrix42.svg +6 -0
  34. package/dist/package.json +56 -0
  35. package/dist/tsconfig.tsbuildinfo +1 -0
  36. package/index.js +0 -0
  37. package/package.json +56 -0
@@ -0,0 +1,486 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Matrix42 = void 0;
4
+ const n8n_workflow_1 = require("n8n-workflow");
5
+ const Matrix42ImportOperations_1 = require("./Matrix42ImportOperations");
6
+ const Matrix42AsqlOperations_1 = require("./Matrix42AsqlOperations");
7
+ const Matrix42TicketOperations_1 = require("./Matrix42TicketOperations");
8
+ const Matrix42AsqlFunctions_1 = require("./Matrix42AsqlFunctions");
9
+ const GenericFunctions_1 = require("./GenericFunctions");
10
+ const Matrix42TicketFunctions_1 = require("./Matrix42TicketFunctions");
11
+ const Matrix42ImportFunctions_1 = require("./Matrix42ImportFunctions");
12
+ class Matrix42 {
13
+ constructor() {
14
+ this.description = {
15
+ displayName: 'Matrix42',
16
+ name: 'matrix42',
17
+ icon: { light: 'file:matrix42.svg', dark: 'file:matrix42.svg' },
18
+ group: ['transform'],
19
+ version: 1,
20
+ subtitle: '={{$parameter["operation"] + ": " + $parameter["resource"]}}',
21
+ description: 'Interact with Matrix42.',
22
+ defaults: {
23
+ name: 'Matrix42',
24
+ },
25
+ inputs: ["main"],
26
+ outputs: ["main"],
27
+ credentials: [
28
+ {
29
+ name: 'matrix42TokenApi',
30
+ displayName: 'Matrix42 Webservice Token Auth',
31
+ required: true,
32
+ displayOptions: {
33
+ show: {
34
+ authentication: ['webserviceToken'],
35
+ },
36
+ },
37
+ },
38
+ {
39
+ name: 'matrix42BasicApi',
40
+ displayName: 'Matrix42 Basic Auth',
41
+ required: true,
42
+ displayOptions: {
43
+ show: {
44
+ authentication: ['basic'],
45
+ },
46
+ },
47
+ },
48
+ ],
49
+ usableAsTool: true,
50
+ properties: [
51
+ {
52
+ displayName: 'Authentication',
53
+ name: 'authentication',
54
+ type: 'options',
55
+ options: [
56
+ {
57
+ name: 'Webservice Token',
58
+ value: 'webserviceToken',
59
+ },
60
+ {
61
+ name: 'Basic',
62
+ value: 'basic',
63
+ },
64
+ ],
65
+ default: 'webserviceToken',
66
+ },
67
+ {
68
+ displayName: 'Resource',
69
+ name: 'resource',
70
+ type: 'options',
71
+ noDataExpression: true,
72
+ options: [
73
+ {
74
+ name: 'ASQL',
75
+ value: 'asql',
76
+ },
77
+ {
78
+ name: 'Import',
79
+ value: 'import',
80
+ },
81
+ {
82
+ name: 'Ticket',
83
+ value: 'ticket',
84
+ },
85
+ ],
86
+ default: 'ticket',
87
+ },
88
+ ...Matrix42AsqlOperations_1.matrix42AsqlOperations,
89
+ ...Matrix42AsqlOperations_1.matrix42AsqlFields,
90
+ ...Matrix42ImportOperations_1.matrix42ImportOperations,
91
+ ...Matrix42ImportOperations_1.matrix42ImportFields,
92
+ ...Matrix42TicketOperations_1.matrix42TicketOperations,
93
+ ...Matrix42TicketOperations_1.matrix42TicketFields,
94
+ ],
95
+ };
96
+ this.methods = {
97
+ loadOptions: {
98
+ async getUsers() {
99
+ var _a, _b;
100
+ const responseData = await GenericFunctions_1.matrix42ApiRequest.call(this, 'GET', '/data/fragments/SPSUserClassBase', {}, {
101
+ columns: "ID, FirstName, LastName",
102
+ });
103
+ if (responseData === undefined) {
104
+ throw new n8n_workflow_1.NodeApiError(this.getNode(), responseData, {
105
+ message: 'No data got returned',
106
+ });
107
+ }
108
+ const returnData = [];
109
+ for (const userData of responseData) {
110
+ const userName = `${(_a = userData.FirstName) !== null && _a !== void 0 ? _a : ''} ${(_b = userData.LastName) !== null && _b !== void 0 ? _b : ''}`;
111
+ const userId = userData.ID;
112
+ returnData.push({
113
+ name: userName,
114
+ value: userId,
115
+ });
116
+ }
117
+ returnData.sort((a, b) => {
118
+ if (a.name < b.name) {
119
+ return -1;
120
+ }
121
+ if (a.name > b.name) {
122
+ return 1;
123
+ }
124
+ return 0;
125
+ });
126
+ const emptyUser = { name: 'None (Check Description)', value: '00000000-0000-0000-0000-000000000000' };
127
+ returnData.unshift(emptyUser);
128
+ return returnData;
129
+ },
130
+ async getTicketUrgencies() {
131
+ const responseData = await GenericFunctions_1.matrix42ApiRequest.call(this, 'GET', '/data/fragments/SVMActivityPickupUrgency', {}, {
132
+ columns: "ID, Position, Value, DisplayString",
133
+ });
134
+ if (responseData === undefined) {
135
+ throw new n8n_workflow_1.NodeApiError(this.getNode(), responseData, {
136
+ message: 'No data got returned',
137
+ });
138
+ }
139
+ const returnData = [];
140
+ for (const urgenciesData of responseData) {
141
+ const urgencyName = urgenciesData.DisplayString;
142
+ const urgencyValue = urgenciesData.Value;
143
+ returnData.push({
144
+ name: urgencyName,
145
+ value: urgencyValue,
146
+ });
147
+ }
148
+ returnData.sort((a, b) => {
149
+ if (a.name < b.name) {
150
+ return -1;
151
+ }
152
+ if (a.name > b.name) {
153
+ return 1;
154
+ }
155
+ return 0;
156
+ });
157
+ return returnData;
158
+ },
159
+ async getTicketImpacts() {
160
+ const responseData = await GenericFunctions_1.matrix42ApiRequest.call(this, 'GET', '/data/fragments/SVMActivityPickupImpact', {}, {
161
+ columns: "ID, Position, Value, DisplayString",
162
+ });
163
+ if (responseData === undefined) {
164
+ throw new n8n_workflow_1.NodeApiError(this.getNode(), responseData, {
165
+ message: 'No data got returned',
166
+ });
167
+ }
168
+ const returnData = [];
169
+ for (const impactData of responseData) {
170
+ const impactName = impactData.DisplayString;
171
+ const impactValue = impactData.Value;
172
+ returnData.push({
173
+ name: impactName,
174
+ value: impactValue,
175
+ });
176
+ }
177
+ returnData.sort((a, b) => {
178
+ if (a.name < b.name) {
179
+ return -1;
180
+ }
181
+ if (a.name > b.name) {
182
+ return 1;
183
+ }
184
+ return 0;
185
+ });
186
+ return returnData;
187
+ },
188
+ async getTicketCategories() {
189
+ var _a;
190
+ const responseData = await GenericFunctions_1.matrix42ApiRequest.call(this, 'GET', '/data/fragments/SPSScCategoryClassBase', {}, {
191
+ where: "Recursive(Parent).ID = 'd0f04f85-458f-40bd-aeb0-e97b08b933b5' AND Hidden = 0",
192
+ columns: "ID, Parent, Name, DefaultRecipientRole",
193
+ });
194
+ if (responseData === undefined) {
195
+ throw new n8n_workflow_1.NodeApiError(this.getNode(), responseData, {
196
+ message: 'No data got returned',
197
+ });
198
+ }
199
+ const byId = new Map();
200
+ const childrenMap = new Map();
201
+ for (const cat of responseData) {
202
+ byId.set(cat.ID, cat);
203
+ const parent = (_a = cat.Parent) !== null && _a !== void 0 ? _a : null;
204
+ if (!childrenMap.has(parent)) {
205
+ childrenMap.set(parent, []);
206
+ }
207
+ childrenMap.get(parent).push(cat);
208
+ }
209
+ for (const arr of childrenMap.values()) {
210
+ arr.sort((a, b) => a.Name.localeCompare(b.Name));
211
+ }
212
+ const returnData = [];
213
+ function traverse(nodes, prefix = '') {
214
+ for (const node of nodes) {
215
+ const fullName = prefix ? `${prefix} / ${node.Name}` : node.Name;
216
+ returnData.push({
217
+ name: fullName,
218
+ value: node.ID,
219
+ });
220
+ const kids = childrenMap.get(node.ID);
221
+ if (kids) {
222
+ traverse(kids, fullName);
223
+ }
224
+ }
225
+ }
226
+ const roots = childrenMap.get(null) || [];
227
+ traverse(roots);
228
+ return returnData;
229
+ },
230
+ async getTicketRoles() {
231
+ const categoryId = this.getNodeParameter('category');
232
+ if (!categoryId) {
233
+ throw new n8n_workflow_1.NodeApiError(this.getNode(), { categoryId }, {
234
+ message: 'No category selected',
235
+ });
236
+ }
237
+ const responseData = await GenericFunctions_1.matrix42ApiRequest.call(this, 'GET', '/data/fragments/SPSScRoleClassBase', {}, {
238
+ columns: "T(SPSSecurityClassRole).Name as Name, ID, [Expression-ObjectID]",
239
+ });
240
+ if (responseData === undefined) {
241
+ throw new n8n_workflow_1.NodeApiError(this.getNode(), responseData, {
242
+ message: 'No data got returned',
243
+ });
244
+ }
245
+ const returnData = [];
246
+ for (const roleData of responseData) {
247
+ const roleName = roleData.Name;
248
+ const roleId = roleData.ID;
249
+ returnData.push({
250
+ name: roleName,
251
+ value: roleId,
252
+ });
253
+ }
254
+ const responseDataCategory = await GenericFunctions_1.matrix42ApiRequest.call(this, 'GET', '/data/fragments/SPSScCategoryClassBase', {}, {
255
+ where: `ID = '${categoryId}' AND Hidden = 0`,
256
+ columns: "ID, Parent, Name, DefaultRecipientRole",
257
+ });
258
+ let defaultOption;
259
+ if (Array.isArray(responseDataCategory) && responseDataCategory.length) {
260
+ const defaultRoleId = responseDataCategory[0].DefaultRecipientRole;
261
+ if (defaultRoleId) {
262
+ const idx = returnData.findIndex(opt => opt.value === defaultRoleId);
263
+ if (idx !== -1) {
264
+ defaultOption = returnData.splice(idx, 1)[0];
265
+ defaultOption.name = `${defaultOption.name} (Category Default)`;
266
+ }
267
+ }
268
+ }
269
+ returnData.sort((a, b) => a.name.localeCompare(b.name));
270
+ if (defaultOption) {
271
+ returnData.unshift(defaultOption);
272
+ }
273
+ const emptyRole = { name: 'None (Check Description)', value: '00000000-0000-0000-0000-000000000000' };
274
+ returnData.unshift(emptyRole);
275
+ return returnData;
276
+ },
277
+ async getTicketSlas() {
278
+ const responseData = await GenericFunctions_1.matrix42ApiRequest.call(this, 'GET', '/data/fragments/SVCServiceLevelAgreementClassBase', {}, {
279
+ where: 'SLA_Type = 10',
280
+ columns: "ID, [Expression-ObjectID], Name, FulfillmentResponsibleRole",
281
+ });
282
+ if (responseData === undefined) {
283
+ throw new n8n_workflow_1.NodeApiError(this.getNode(), responseData, {
284
+ message: 'No data got returned',
285
+ });
286
+ }
287
+ const returnData = [];
288
+ for (const slaData of responseData) {
289
+ const slaName = slaData.Name;
290
+ const slaId = slaData.ID;
291
+ returnData.push({
292
+ name: slaName,
293
+ value: slaId,
294
+ });
295
+ }
296
+ returnData.sort((a, b) => {
297
+ if (a.name < b.name) {
298
+ return -1;
299
+ }
300
+ if (a.name > b.name) {
301
+ return 1;
302
+ }
303
+ return 0;
304
+ });
305
+ const defaultSla = { name: 'None (Check Description)', value: '00000000-0000-0000-0000-000000000000' };
306
+ returnData.unshift(defaultSla);
307
+ return returnData;
308
+ },
309
+ async getTicketOlas() {
310
+ const responseData = await GenericFunctions_1.matrix42ApiRequest.call(this, 'GET', '/data/fragments/SVCServiceLevelAgreementClassBase', {}, {
311
+ where: 'SLA_Type = 20',
312
+ columns: "ID, [Expression-ObjectID], Name, FulfillmentResponsibleRole",
313
+ });
314
+ if (responseData === undefined) {
315
+ throw new n8n_workflow_1.NodeApiError(this.getNode(), responseData, {
316
+ message: 'No data got returned',
317
+ });
318
+ }
319
+ const returnData = [];
320
+ for (const olaData of responseData) {
321
+ const olaName = olaData.Name;
322
+ const olaId = olaData.ID;
323
+ returnData.push({
324
+ name: olaName,
325
+ value: olaId,
326
+ });
327
+ }
328
+ returnData.sort((a, b) => {
329
+ if (a.name < b.name) {
330
+ return -1;
331
+ }
332
+ if (a.name > b.name) {
333
+ return 1;
334
+ }
335
+ return 0;
336
+ });
337
+ const defaultOla = { name: 'None (Check Description)', value: '00000000-0000-0000-0000-000000000000' };
338
+ returnData.unshift(defaultOla);
339
+ return returnData;
340
+ },
341
+ async getTicketCloseReasons() {
342
+ const responseData = await GenericFunctions_1.matrix42ApiRequest.call(this, 'GET', '/data/fragments/SPSCommonPickupObjectStateReason', {}, {
343
+ where: 'StateGroup = 7 AND State = 204',
344
+ columns: "ID, Position, Value, DisplayString, StateGroup",
345
+ });
346
+ if (responseData === undefined) {
347
+ throw new n8n_workflow_1.NodeApiError(this.getNode(), responseData, {
348
+ message: 'No data got returned',
349
+ });
350
+ }
351
+ const returnData = [];
352
+ for (const closeReasonData of responseData) {
353
+ const closeReasonName = closeReasonData.DisplayString;
354
+ const closeReasonValue = closeReasonData.Value;
355
+ returnData.push({
356
+ name: closeReasonName,
357
+ value: closeReasonValue,
358
+ });
359
+ }
360
+ returnData.sort((a, b) => {
361
+ if (a.name < b.name) {
362
+ return -1;
363
+ }
364
+ if (a.name > b.name) {
365
+ return 1;
366
+ }
367
+ return 0;
368
+ });
369
+ return returnData;
370
+ },
371
+ async getTicketCloseErrorTypes() {
372
+ const responseData = await GenericFunctions_1.matrix42ApiRequest.call(this, 'GET', '/data/fragments/SVMActivityPickupErrorType', {}, {
373
+ columns: "ID, Position, Value, DisplayString",
374
+ });
375
+ if (responseData === undefined) {
376
+ throw new n8n_workflow_1.NodeApiError(this.getNode(), responseData, {
377
+ message: 'No data got returned',
378
+ });
379
+ }
380
+ const returnData = [];
381
+ for (const errorTypeData of responseData) {
382
+ const errorTypeName = errorTypeData.DisplayString;
383
+ const errorTypeValue = errorTypeData.Value;
384
+ returnData.push({
385
+ name: errorTypeName,
386
+ value: errorTypeValue,
387
+ });
388
+ }
389
+ returnData.sort((a, b) => {
390
+ if (a.name < b.name) {
391
+ return -1;
392
+ }
393
+ if (a.name > b.name) {
394
+ return 1;
395
+ }
396
+ return 0;
397
+ });
398
+ return returnData;
399
+ },
400
+ async getImportDefinitions() {
401
+ const responseData = await GenericFunctions_1.matrix42ApiRequest.call(this, 'GET', '/data/fragments/GDIEImportClassBase', {}, {
402
+ columns: "ID, Name, [Expression-ObjectID] as eoid",
403
+ });
404
+ if (responseData === undefined) {
405
+ throw new n8n_workflow_1.NodeApiError(this.getNode(), responseData, {
406
+ message: 'No data got returned',
407
+ });
408
+ }
409
+ const returnData = [];
410
+ for (const importDefinitionsData of responseData) {
411
+ const importDefinitionName = importDefinitionsData.Name;
412
+ const importDefinitionValue = importDefinitionsData.eoid;
413
+ returnData.push({
414
+ name: importDefinitionName,
415
+ value: importDefinitionValue,
416
+ });
417
+ }
418
+ returnData.sort((a, b) => {
419
+ if (a.name < b.name) {
420
+ return -1;
421
+ }
422
+ if (a.name > b.name) {
423
+ return 1;
424
+ }
425
+ return 0;
426
+ });
427
+ return returnData;
428
+ }
429
+ }
430
+ };
431
+ }
432
+ async execute() {
433
+ const items = this.getInputData();
434
+ const resource = this.getNodeParameter('resource', 0);
435
+ const operation = this.getNodeParameter('operation', 0);
436
+ let returnData = [];
437
+ for (let i = 0; i < items.length; i++) {
438
+ if (resource === 'asql') {
439
+ if (operation === 'getFragments') {
440
+ returnData = await Matrix42AsqlFunctions_1.getFragments.call(this, i);
441
+ }
442
+ else if (operation === 'addFragment') {
443
+ returnData = await Matrix42AsqlFunctions_1.addFragment.call(this, i);
444
+ }
445
+ else if (operation === 'updateFragment') {
446
+ returnData = await Matrix42AsqlFunctions_1.updateFragment.call(this, i);
447
+ }
448
+ else if (operation === 'deleteFragment') {
449
+ returnData = await Matrix42AsqlFunctions_1.deleteFragment.call(this, i);
450
+ }
451
+ else if (operation === 'addObject') {
452
+ returnData = await Matrix42AsqlFunctions_1.addObject.call(this, i);
453
+ }
454
+ else if (operation === 'getObject') {
455
+ returnData = await Matrix42AsqlFunctions_1.getObject.call(this, i);
456
+ }
457
+ else if (operation === 'updateObject') {
458
+ returnData = await Matrix42AsqlFunctions_1.updateObject.call(this, i);
459
+ }
460
+ else if (operation === 'deleteObject') {
461
+ returnData = await Matrix42AsqlFunctions_1.deleteObject.call(this, i);
462
+ }
463
+ }
464
+ if (resource === 'ticket') {
465
+ if (operation === 'createTicket') {
466
+ returnData = await Matrix42TicketFunctions_1.createTicket.call(this, i);
467
+ }
468
+ else if (operation === 'closeTicket') {
469
+ returnData = await Matrix42TicketFunctions_1.closeTicket.call(this, i);
470
+ }
471
+ else if (operation === 'transformTicket') {
472
+ returnData = await Matrix42TicketFunctions_1.transformTicket.call(this, i);
473
+ }
474
+ }
475
+ if (resource === 'import') {
476
+ if (operation === 'executeImportDefinition') {
477
+ returnData = await Matrix42ImportFunctions_1.executeImportDefinition.call(this, i);
478
+ }
479
+ }
480
+ }
481
+ const executionData = this.helpers.returnJsonArray(returnData);
482
+ return [executionData];
483
+ }
484
+ }
485
+ exports.Matrix42 = Matrix42;
486
+ //# sourceMappingURL=Matrix42.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Matrix42.node.js","sourceRoot":"","sources":["../../../nodes/Matrix42/Matrix42.node.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { type IDataObject, type IExecuteFunctions } from "n8n-workflow";
2
+ export declare function getFragments(this: IExecuteFunctions, i: number): Promise<IDataObject[]>;
3
+ export declare function addFragment(this: IExecuteFunctions, i: number): Promise<IDataObject[]>;
4
+ export declare function updateFragment(this: IExecuteFunctions, i: number): Promise<{
5
+ Message: string;
6
+ }[]>;
7
+ export declare function deleteFragment(this: IExecuteFunctions, i: number): Promise<{
8
+ Message: string;
9
+ }[]>;
10
+ export declare function addObject(this: IExecuteFunctions, i: number): Promise<IDataObject[]>;
11
+ export declare function getObject(this: IExecuteFunctions, i: number): Promise<IDataObject[]>;
12
+ export declare function updateObject(this: IExecuteFunctions, i: number): Promise<{
13
+ Message: string;
14
+ }[]>;
15
+ export declare function deleteObject(this: IExecuteFunctions, i: number): Promise<{
16
+ Message: string;
17
+ }[]>;
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getFragments = getFragments;
4
+ exports.addFragment = addFragment;
5
+ exports.updateFragment = updateFragment;
6
+ exports.deleteFragment = deleteFragment;
7
+ exports.addObject = addObject;
8
+ exports.getObject = getObject;
9
+ exports.updateObject = updateObject;
10
+ exports.deleteObject = deleteObject;
11
+ const GenericFunctions_1 = require("./GenericFunctions");
12
+ async function getFragments(i) {
13
+ const returnData = [];
14
+ const ddname = this.getNodeParameter('dataDefinition', i);
15
+ const where = this.getNodeParameter('where', i);
16
+ const columns = this.getNodeParameter('columns', i);
17
+ const additionalFields = this.getNodeParameter('additionalFields', i, {});
18
+ const qs = {
19
+ where,
20
+ columns,
21
+ };
22
+ if (additionalFields.pageSize !== undefined) {
23
+ qs.pagesize = additionalFields.pageSize;
24
+ }
25
+ if (additionalFields.pageNumber !== undefined) {
26
+ qs.pagenumber = additionalFields.pageNumber;
27
+ }
28
+ if (additionalFields.sort) {
29
+ qs.sort = additionalFields.sort;
30
+ }
31
+ const response = await GenericFunctions_1.matrix42ApiRequest.call(this, 'GET', `/data/fragments/${ddname}`, {}, qs);
32
+ if (Array.isArray(response)) {
33
+ returnData.push(...response);
34
+ }
35
+ else {
36
+ returnData.push(response);
37
+ }
38
+ return returnData;
39
+ }
40
+ async function addFragment(i) {
41
+ const returnData = [];
42
+ const ddname = this.getNodeParameter('dataDefinition', i);
43
+ const fragmentData = this.getNodeParameter('fragmentData', i);
44
+ const response = await GenericFunctions_1.matrix42ApiRequest.call(this, 'POST', `/data/fragments/${ddname}`, fragmentData, {});
45
+ returnData.push({ "fragmentId": response });
46
+ return returnData;
47
+ }
48
+ async function updateFragment(i) {
49
+ const ddname = this.getNodeParameter('dataDefinition', i);
50
+ const fragmentData = this.getNodeParameter('fragmentData', i);
51
+ await GenericFunctions_1.matrix42ApiRequest.call(this, 'PUT', `/data/fragments/${ddname}`, fragmentData, {});
52
+ return [{ "Message": "Success" }];
53
+ }
54
+ async function deleteFragment(i) {
55
+ const ddname = this.getNodeParameter('dataDefinition', i);
56
+ const fragmentId = this.getNodeParameter('fragmentId', i);
57
+ await GenericFunctions_1.matrix42ApiRequest.call(this, 'DELETE', `/data/fragments/${ddname}/${fragmentId}`, {}, {});
58
+ return [{ "Message": "Success" }];
59
+ }
60
+ async function addObject(i) {
61
+ const returnData = [];
62
+ const ciname = this.getNodeParameter('configurationItem', i);
63
+ const objectData = this.getNodeParameter('objectData', i);
64
+ const response = await GenericFunctions_1.matrix42ApiRequest.call(this, 'POST', `/data/objects/${ciname}`, objectData, {});
65
+ returnData.push({ "objectId": response });
66
+ return returnData;
67
+ }
68
+ async function getObject(i) {
69
+ const returnData = [];
70
+ const ciname = this.getNodeParameter('configurationItem', i);
71
+ const objectId = this.getNodeParameter('objectId', i);
72
+ const full = this.getNodeParameter('full', i);
73
+ const qs = {
74
+ full
75
+ };
76
+ const response = await GenericFunctions_1.matrix42ApiRequest.call(this, 'GET', `/data/objects/${ciname}/${objectId}`, {}, qs);
77
+ returnData.push(response);
78
+ return returnData;
79
+ }
80
+ async function updateObject(i) {
81
+ const ciname = this.getNodeParameter('configurationItem', i);
82
+ const objectData = this.getNodeParameter('objectData', i);
83
+ const full = this.getNodeParameter('full', i);
84
+ const qs = {
85
+ full
86
+ };
87
+ await GenericFunctions_1.matrix42ApiRequest.call(this, 'PUT', `/data/objects/${ciname}`, objectData, qs);
88
+ return [{ "Message": "Success" }];
89
+ }
90
+ async function deleteObject(i) {
91
+ const ciname = this.getNodeParameter('configurationItem', i);
92
+ const objectId = this.getNodeParameter('objectId', i);
93
+ await GenericFunctions_1.matrix42ApiRequest.call(this, 'DELETE', `/data/objects/${ciname}/${objectId}`, {}, {});
94
+ return [{ "Message": "Success" }];
95
+ }
96
+ //# sourceMappingURL=Matrix42AsqlFunctions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Matrix42AsqlFunctions.js","sourceRoot":"","sources":["../../../nodes/Matrix42/Matrix42AsqlFunctions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { INodeProperties } from "n8n-workflow";
2
+ export declare const matrix42AsqlOperations: INodeProperties[];
3
+ export declare const matrix42AsqlFields: INodeProperties[];