n8n-nodes-pragma-bitrix24 1.0.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 (51) hide show
  1. package/LICENSE +51 -0
  2. package/README.md +340 -0
  3. package/dist/credentials/Bitrix24Api.credentials.js +55 -0
  4. package/dist/nodes/Bitrix24/Bitrix24.node.js +1410 -0
  5. package/dist/nodes/Bitrix24/Company.js +17 -0
  6. package/dist/nodes/Bitrix24/Contact.js +31 -0
  7. package/dist/nodes/Bitrix24/Deal.js +17 -0
  8. package/dist/nodes/Bitrix24/Helpers.js +300 -0
  9. package/dist/nodes/Bitrix24/Lead.js +17 -0
  10. package/dist/nodes/Bitrix24/SmartProcess.js +1 -0
  11. package/dist/nodes/Bitrix24/bitrix24.svg +7 -0
  12. package/dist/nodes/Bitrix24/types.js +58 -0
  13. package/dist/nodes/Bitrix24AI/Bitrix24AI.node.js +205 -0
  14. package/dist/nodes/Bitrix24App/Bitrix24App.node.js +179 -0
  15. package/dist/nodes/Bitrix24Auxiliary/Bitrix24Auxiliary.node.js +566 -0
  16. package/dist/nodes/Bitrix24Booking/Bitrix24Booking.node.js +871 -0
  17. package/dist/nodes/Bitrix24Calendar/Bitrix24Calendar.node.js +471 -0
  18. package/dist/nodes/Bitrix24ChatBot/Bitrix24ChatBot.node.js +522 -0
  19. package/dist/nodes/Bitrix24Commerce/Bitrix24Commerce.node.js +431 -0
  20. package/dist/nodes/Bitrix24Department/Bitrix24Department.node.js +317 -0
  21. package/dist/nodes/Bitrix24Disk/Bitrix24Disk.node.js +334 -0
  22. package/dist/nodes/Bitrix24Document/Bitrix24Document.node.js +280 -0
  23. package/dist/nodes/Bitrix24Entity/Bitrix24Entity.node.js +263 -0
  24. package/dist/nodes/Bitrix24Group/Bitrix24Group.node.js +327 -0
  25. package/dist/nodes/Bitrix24Lists/Bitrix24Lists.node.js +406 -0
  26. package/dist/nodes/Bitrix24Log/Bitrix24Log.node.js +309 -0
  27. package/dist/nodes/Bitrix24Mail/Bitrix24Mail.node.js +109 -0
  28. package/dist/nodes/Bitrix24MessageService/Bitrix24MessageService.node.js +218 -0
  29. package/dist/nodes/Bitrix24OpenChannels/Bitrix24OpenChannels.node.js +379 -0
  30. package/dist/nodes/Bitrix24PaySystem/Bitrix24PaySystem.node.js +241 -0
  31. package/dist/nodes/Bitrix24Pipeline/Bitrix24Pipeline.node.js +553 -0
  32. package/dist/nodes/Bitrix24Pipeline/bitrix24.svg +7 -0
  33. package/dist/nodes/Bitrix24Sale/Bitrix24Sale.node.js +391 -0
  34. package/dist/nodes/Bitrix24Scrum/Bitrix24Scrum.node.js +555 -0
  35. package/dist/nodes/Bitrix24Scrum/bitrix24.svg +7 -0
  36. package/dist/nodes/Bitrix24Sign/Bitrix24Sign.node.js +132 -0
  37. package/dist/nodes/Bitrix24Social/Bitrix24Social.node.js +224 -0
  38. package/dist/nodes/Bitrix24Task/Bitrix24Task.node.js +444 -0
  39. package/dist/nodes/Bitrix24Telephony/Bitrix24Telephony.node.js +511 -0
  40. package/dist/nodes/Bitrix24Timeman/Bitrix24Timeman.node.js +196 -0
  41. package/dist/nodes/Bitrix24Tool/Bitrix24Tool.node.js +1035 -0
  42. package/dist/nodes/Bitrix24Tool/bitrix24.svg +7 -0
  43. package/dist/nodes/Bitrix24Trigger/Bitrix24Trigger.node.js +184 -0
  44. package/dist/nodes/Bitrix24User/Bitrix24User.node.js +351 -0
  45. package/dist/nodes/Bitrix24UserField/Bitrix24UserField.node.js +386 -0
  46. package/dist/nodes/Bitrix24UserField/bitrix24.svg +7 -0
  47. package/dist/nodes/shared/bitrix24.svg +7 -0
  48. package/dist/nodes/shared/localization.js +189 -0
  49. package/dist/nodes/shared/types.js +22 -0
  50. package/index.js +10 -0
  51. package/package.json +108 -0
@@ -0,0 +1,555 @@
1
+ "use strict";
2
+ /**
3
+ * Bitrix24 Scrum — Нода управления Scrum-проектами
4
+ *
5
+ * Bitrix24 PRAGMA.by nodes for n8n
6
+ * Профессиональная интеграция с Битрикс24.
7
+ *
8
+ * @author PRAGMA & Азбука Решений
9
+ * @copyright 2026 PRAGMA (https://pragma.by/) & Азбука Решений (https://abc-solution.ru/)
10
+ *
11
+ * Контакты:
12
+ * 🇧🇾 PRAGMA: +375 (44) 702-70-90 | https://pragma.by/
13
+ * 🇷🇺 Азбука Решений: +7 (939) 555-19-60 | https://abc-solution.ru/
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.Bitrix24Scrum = void 0;
17
+ const n8n_workflow_1 = require("n8n-workflow");
18
+ const Helpers_1 = require("../Bitrix24/Helpers");
19
+ class Bitrix24Scrum {
20
+ constructor() {
21
+ this.description = {
22
+ displayName: 'Bitrix24 Скрам',
23
+ name: 'bitrix24Scrum',
24
+ icon: 'file:bitrix24.svg',
25
+ group: ['transform'],
26
+ version: 1,
27
+ subtitle: '={{$parameter["resource"] + ": " + $parameter["operation"]}}',
28
+ description: 'Управление Scrum-проектами: спринты, бэклог, эпики, Kanban-доска',
29
+ defaults: {
30
+ name: 'Bitrix24 Скрам',
31
+ },
32
+ inputs: ['main'],
33
+ outputs: ['main'],
34
+ credentials: [
35
+ {
36
+ name: 'bitrix24Api',
37
+ required: true,
38
+ },
39
+ ],
40
+ properties: [
41
+ {
42
+ displayName: 'Ресурс',
43
+ name: 'resource',
44
+ type: 'options',
45
+ noDataExpression: true,
46
+ options: [
47
+ {
48
+ name: 'Спринт',
49
+ value: 'sprint',
50
+ description: 'Управление спринтами: создание, обновление, завершение',
51
+ },
52
+ {
53
+ name: 'Бэклог',
54
+ value: 'backlog',
55
+ description: 'Элементы бэклога продукта',
56
+ },
57
+ {
58
+ name: 'Эпик',
59
+ value: 'epic',
60
+ description: 'Эпики — крупные функциональные блоки',
61
+ },
62
+ {
63
+ name: 'Kanban',
64
+ value: 'kanban',
65
+ description: 'Стадии Kanban-доски проекта',
66
+ },
67
+ ],
68
+ default: 'sprint',
69
+ required: true,
70
+ },
71
+ {
72
+ displayName: 'Операция',
73
+ name: 'operation',
74
+ type: 'options',
75
+ noDataExpression: true,
76
+ options: [
77
+ // Операции со спринтами
78
+ {
79
+ name: 'Создать',
80
+ value: 'create',
81
+ action: 'Создать спринт',
82
+ description: 'Создать новый спринт в проекте',
83
+ displayOptions: { show: { resource: ['sprint'] } },
84
+ },
85
+ {
86
+ name: 'Получить',
87
+ value: 'get',
88
+ action: 'Получить спринт',
89
+ description: 'Получить спринт по ID',
90
+ displayOptions: { show: { resource: ['sprint'] } },
91
+ },
92
+ {
93
+ name: 'Список',
94
+ value: 'list',
95
+ action: 'Получить список спринтов',
96
+ description: 'Получить все спринты проекта',
97
+ displayOptions: { show: { resource: ['sprint'] } },
98
+ },
99
+ {
100
+ name: 'Обновить',
101
+ value: 'update',
102
+ action: 'Обновить спринт',
103
+ description: 'Изменить название, сроки или статус спринта',
104
+ displayOptions: { show: { resource: ['sprint'] } },
105
+ },
106
+ {
107
+ name: 'Завершить',
108
+ value: 'complete',
109
+ action: 'Завершить спринт',
110
+ description: 'Закрыть спринт и переместить незавершённые задачи',
111
+ displayOptions: { show: { resource: ['sprint'] } },
112
+ },
113
+ {
114
+ name: 'Запустить',
115
+ value: 'start',
116
+ action: 'Запустить спринт',
117
+ description: 'Активировать спринт для работы команды',
118
+ displayOptions: { show: { resource: ['sprint'] } },
119
+ },
120
+ // Операции с бэклогом
121
+ {
122
+ name: 'Добавить элемент',
123
+ value: 'add_item',
124
+ action: 'Добавить в бэклог',
125
+ description: 'Добавить задачу или элемент в бэклог',
126
+ displayOptions: { show: { resource: ['backlog'] } },
127
+ },
128
+ {
129
+ name: 'Список элементов',
130
+ value: 'list',
131
+ action: 'Получить бэклог',
132
+ description: 'Получить все элементы бэклога',
133
+ displayOptions: { show: { resource: ['backlog'] } },
134
+ },
135
+ {
136
+ name: 'Переместить в спринт',
137
+ value: 'move_to_sprint',
138
+ action: 'Переместить в спринт',
139
+ description: 'Переместить элемент бэклога в активный спринт',
140
+ displayOptions: { show: { resource: ['backlog'] } },
141
+ },
142
+ {
143
+ name: 'Приоритизировать',
144
+ value: 'prioritize',
145
+ action: 'Изменить приоритет',
146
+ description: 'Изменить порядок элементов в бэклоге',
147
+ displayOptions: { show: { resource: ['backlog'] } },
148
+ },
149
+ // Операции с эпиками
150
+ {
151
+ name: 'Создать',
152
+ value: 'create',
153
+ action: 'Создать эпик',
154
+ description: 'Создать новый эпик проекта',
155
+ displayOptions: { show: { resource: ['epic'] } },
156
+ },
157
+ {
158
+ name: 'Получить',
159
+ value: 'get',
160
+ action: 'Получить эпик',
161
+ description: 'Получить эпик по ID',
162
+ displayOptions: { show: { resource: ['epic'] } },
163
+ },
164
+ {
165
+ name: 'Список',
166
+ value: 'list',
167
+ action: 'Получить список эпиков',
168
+ description: 'Получить все эпики проекта',
169
+ displayOptions: { show: { resource: ['epic'] } },
170
+ },
171
+ {
172
+ name: 'Обновить',
173
+ value: 'update',
174
+ action: 'Обновить эпик',
175
+ description: 'Изменить название или описание эпика',
176
+ displayOptions: { show: { resource: ['epic'] } },
177
+ },
178
+ // Операции с Kanban
179
+ {
180
+ name: 'Получить стадии',
181
+ value: 'get_stages',
182
+ action: 'Получить стадии Kanban',
183
+ description: 'Получить все стадии Kanban-доски',
184
+ displayOptions: { show: { resource: ['kanban'] } },
185
+ },
186
+ {
187
+ name: 'Переместить задачу',
188
+ value: 'move_task',
189
+ action: 'Переместить задачу',
190
+ description: 'Переместить задачу между стадиями Kanban',
191
+ displayOptions: { show: { resource: ['kanban'] } },
192
+ },
193
+ ],
194
+ default: 'list',
195
+ required: true,
196
+ },
197
+ // Поля спринта
198
+ {
199
+ displayName: 'ID проекта',
200
+ name: 'groupId',
201
+ type: 'string',
202
+ default: '',
203
+ required: true,
204
+ placeholder: '123',
205
+ displayOptions: {
206
+ show: {
207
+ resource: ['sprint', 'backlog', 'epic', 'kanban'],
208
+ },
209
+ },
210
+ description: 'ID рабочей группы (проекта) в Битрикс24',
211
+ hint: 'Проект должен быть в режиме Scrum для использования этих методов',
212
+ },
213
+ {
214
+ displayName: 'ID спринта',
215
+ name: 'sprintId',
216
+ type: 'string',
217
+ default: '',
218
+ required: true,
219
+ placeholder: '456',
220
+ displayOptions: {
221
+ show: {
222
+ resource: ['sprint'],
223
+ operation: ['get', 'update', 'complete', 'start'],
224
+ },
225
+ },
226
+ description: 'Уникальный идентификатор спринта',
227
+ },
228
+ {
229
+ displayName: 'Название спринта',
230
+ name: 'name',
231
+ type: 'string',
232
+ default: '',
233
+ required: true,
234
+ placeholder: 'Спринт 1 — MVP',
235
+ displayOptions: {
236
+ show: {
237
+ resource: ['sprint'],
238
+ operation: ['create'],
239
+ },
240
+ },
241
+ description: 'Название спринта, отображаемое в Kanban-доске',
242
+ hint: 'Рекомендуется: "Спринт N — Цель"',
243
+ },
244
+ {
245
+ displayName: 'Дата начала',
246
+ name: 'dateStart',
247
+ type: 'dateTime',
248
+ default: '',
249
+ displayOptions: {
250
+ show: {
251
+ resource: ['sprint'],
252
+ operation: ['create', 'update'],
253
+ },
254
+ },
255
+ description: 'Дата и время начала спринта',
256
+ hint: 'Формат: YYYY-MM-DD или выберите из календаря',
257
+ },
258
+ {
259
+ displayName: 'Дата окончания',
260
+ name: 'dateEnd',
261
+ type: 'dateTime',
262
+ default: '',
263
+ displayOptions: {
264
+ show: {
265
+ resource: ['sprint'],
266
+ operation: ['create', 'update'],
267
+ },
268
+ },
269
+ description: 'Дата и время окончания спринта',
270
+ hint: 'Обычно 1-4 недели после начала',
271
+ },
272
+ // Поля бэклога
273
+ {
274
+ displayName: 'ID задачи',
275
+ name: 'taskId',
276
+ type: 'string',
277
+ default: '',
278
+ required: true,
279
+ placeholder: '789',
280
+ displayOptions: {
281
+ show: {
282
+ resource: ['backlog'],
283
+ operation: ['add_item', 'move_to_sprint', 'prioritize'],
284
+ },
285
+ },
286
+ description: 'ID задачи для добавления в бэклог или перемещения',
287
+ },
288
+ {
289
+ displayName: 'Целевой спринт',
290
+ name: 'targetSprintId',
291
+ type: 'string',
292
+ default: '',
293
+ required: true,
294
+ placeholder: '456',
295
+ displayOptions: {
296
+ show: {
297
+ resource: ['backlog'],
298
+ operation: ['move_to_sprint'],
299
+ },
300
+ },
301
+ description: 'ID спринта, в который переместить задачу',
302
+ },
303
+ {
304
+ displayName: 'Новый приоритет',
305
+ name: 'priority',
306
+ type: 'number',
307
+ default: 1,
308
+ displayOptions: {
309
+ show: {
310
+ resource: ['backlog'],
311
+ operation: ['prioritize'],
312
+ },
313
+ },
314
+ description: 'Позиция элемента в бэклоге (1 = самый высокий приоритет)',
315
+ hint: 'Чем меньше число, тем выше приоритет',
316
+ },
317
+ // Поля эпика
318
+ {
319
+ displayName: 'ID эпика',
320
+ name: 'epicId',
321
+ type: 'string',
322
+ default: '',
323
+ required: true,
324
+ placeholder: '101',
325
+ displayOptions: {
326
+ show: {
327
+ resource: ['epic'],
328
+ operation: ['get', 'update'],
329
+ },
330
+ },
331
+ description: 'Уникальный идентификатор эпика',
332
+ },
333
+ {
334
+ displayName: 'Название эпика',
335
+ name: 'epicName',
336
+ type: 'string',
337
+ default: '',
338
+ required: true,
339
+ placeholder: 'Модуль авторизации',
340
+ displayOptions: {
341
+ show: {
342
+ resource: ['epic'],
343
+ operation: ['create'],
344
+ },
345
+ },
346
+ description: 'Название эпика — крупного функционального блока',
347
+ hint: 'Эпик объединяет связанные пользовательские истории',
348
+ },
349
+ {
350
+ displayName: 'Описание эпика',
351
+ name: 'epicDescription',
352
+ type: 'string',
353
+ typeOptions: {
354
+ rows: 4,
355
+ },
356
+ default: '',
357
+ displayOptions: {
358
+ show: {
359
+ resource: ['epic'],
360
+ operation: ['create', 'update'],
361
+ },
362
+ },
363
+ description: 'Подробное описание эпика и его целей',
364
+ },
365
+ {
366
+ displayName: 'Цвет эпика',
367
+ name: 'epicColor',
368
+ type: 'color',
369
+ default: '#22B9FF',
370
+ displayOptions: {
371
+ show: {
372
+ resource: ['epic'],
373
+ operation: ['create', 'update'],
374
+ },
375
+ },
376
+ description: 'Цвет для визуального выделения эпика на доске',
377
+ },
378
+ // Поля Kanban
379
+ {
380
+ displayName: 'ID стадии',
381
+ name: 'stageId',
382
+ type: 'string',
383
+ default: '',
384
+ required: true,
385
+ placeholder: '202',
386
+ displayOptions: {
387
+ show: {
388
+ resource: ['kanban'],
389
+ operation: ['move_task'],
390
+ },
391
+ },
392
+ description: 'ID целевой стадии Kanban-доски',
393
+ },
394
+ ],
395
+ };
396
+ }
397
+ async execute() {
398
+ const items = this.getInputData();
399
+ const returnData = [];
400
+ const resource = this.getNodeParameter('resource', 0);
401
+ const operation = this.getNodeParameter('operation', 0);
402
+ for (let i = 0; i < items.length; i++) {
403
+ try {
404
+ let result = {};
405
+ const groupId = this.getNodeParameter('groupId', i);
406
+ if (resource === 'sprint') {
407
+ if (operation === 'list') {
408
+ // Получить список спринтов проекта
409
+ result = await Helpers_1.bitrixRequestWithRetry.call(this, 'POST', 'tasks.api.scrum.sprint.list', {
410
+ filter: { GROUP_ID: groupId },
411
+ });
412
+ }
413
+ else if (operation === 'get') {
414
+ const sprintId = this.getNodeParameter('sprintId', i);
415
+ result = await Helpers_1.bitrixRequestWithRetry.call(this, 'POST', 'tasks.api.scrum.sprint.get', {
416
+ id: sprintId,
417
+ });
418
+ }
419
+ else if (operation === 'create') {
420
+ const name = this.getNodeParameter('name', i);
421
+ const dateStart = this.getNodeParameter('dateStart', i);
422
+ const dateEnd = this.getNodeParameter('dateEnd', i);
423
+ result = await Helpers_1.bitrixRequestWithRetry.call(this, 'POST', 'tasks.api.scrum.sprint.add', {
424
+ fields: {
425
+ GROUP_ID: groupId,
426
+ NAME: name,
427
+ DATE_START: dateStart,
428
+ DATE_END: dateEnd,
429
+ },
430
+ });
431
+ }
432
+ else if (operation === 'update') {
433
+ const sprintId = this.getNodeParameter('sprintId', i);
434
+ const fields = {};
435
+ const name = this.getNodeParameter('name', i, '');
436
+ const dateStart = this.getNodeParameter('dateStart', i, '');
437
+ const dateEnd = this.getNodeParameter('dateEnd', i, '');
438
+ if (name)
439
+ fields.NAME = name;
440
+ if (dateStart)
441
+ fields.DATE_START = dateStart;
442
+ if (dateEnd)
443
+ fields.DATE_END = dateEnd;
444
+ result = await Helpers_1.bitrixRequestWithRetry.call(this, 'POST', 'tasks.api.scrum.sprint.update', {
445
+ id: sprintId,
446
+ fields,
447
+ });
448
+ }
449
+ else if (operation === 'start') {
450
+ const sprintId = this.getNodeParameter('sprintId', i);
451
+ result = await Helpers_1.bitrixRequestWithRetry.call(this, 'POST', 'tasks.api.scrum.sprint.start', {
452
+ id: sprintId,
453
+ });
454
+ }
455
+ else if (operation === 'complete') {
456
+ const sprintId = this.getNodeParameter('sprintId', i);
457
+ result = await Helpers_1.bitrixRequestWithRetry.call(this, 'POST', 'tasks.api.scrum.sprint.complete', {
458
+ id: sprintId,
459
+ });
460
+ }
461
+ }
462
+ else if (resource === 'backlog') {
463
+ if (operation === 'list') {
464
+ result = await Helpers_1.bitrixRequestWithRetry.call(this, 'POST', 'tasks.api.scrum.backlog.get', {
465
+ id: groupId,
466
+ });
467
+ }
468
+ else if (operation === 'add_item') {
469
+ const taskId = this.getNodeParameter('taskId', i);
470
+ result = await Helpers_1.bitrixRequestWithRetry.call(this, 'POST', 'tasks.api.scrum.backlog.add', {
471
+ id: groupId,
472
+ taskId,
473
+ });
474
+ }
475
+ else if (operation === 'move_to_sprint') {
476
+ const taskId = this.getNodeParameter('taskId', i);
477
+ const targetSprintId = this.getNodeParameter('targetSprintId', i);
478
+ result = await Helpers_1.bitrixRequestWithRetry.call(this, 'POST', 'tasks.api.scrum.item.update', {
479
+ id: taskId,
480
+ fields: { ENTITY_ID: targetSprintId },
481
+ });
482
+ }
483
+ }
484
+ else if (resource === 'epic') {
485
+ if (operation === 'list') {
486
+ result = await Helpers_1.bitrixRequestWithRetry.call(this, 'POST', 'tasks.api.scrum.epic.list', {
487
+ filter: { GROUP_ID: groupId },
488
+ });
489
+ }
490
+ else if (operation === 'get') {
491
+ const epicId = this.getNodeParameter('epicId', i);
492
+ result = await Helpers_1.bitrixRequestWithRetry.call(this, 'POST', 'tasks.api.scrum.epic.get', {
493
+ id: epicId,
494
+ });
495
+ }
496
+ else if (operation === 'create') {
497
+ const epicName = this.getNodeParameter('epicName', i);
498
+ const epicDescription = this.getNodeParameter('epicDescription', i, '');
499
+ const epicColor = this.getNodeParameter('epicColor', i, '#22B9FF');
500
+ result = await Helpers_1.bitrixRequestWithRetry.call(this, 'POST', 'tasks.api.scrum.epic.add', {
501
+ fields: {
502
+ GROUP_ID: groupId,
503
+ NAME: epicName,
504
+ DESCRIPTION: epicDescription,
505
+ COLOR: epicColor,
506
+ },
507
+ });
508
+ }
509
+ else if (operation === 'update') {
510
+ const epicId = this.getNodeParameter('epicId', i);
511
+ const fields = {};
512
+ const epicName = this.getNodeParameter('epicName', i, '');
513
+ const epicDescription = this.getNodeParameter('epicDescription', i, '');
514
+ const epicColor = this.getNodeParameter('epicColor', i, '');
515
+ if (epicName)
516
+ fields.NAME = epicName;
517
+ if (epicDescription)
518
+ fields.DESCRIPTION = epicDescription;
519
+ if (epicColor)
520
+ fields.COLOR = epicColor;
521
+ result = await Helpers_1.bitrixRequestWithRetry.call(this, 'POST', 'tasks.api.scrum.epic.update', {
522
+ id: epicId,
523
+ fields,
524
+ });
525
+ }
526
+ }
527
+ else if (resource === 'kanban') {
528
+ if (operation === 'get_stages') {
529
+ result = await Helpers_1.bitrixRequestWithRetry.call(this, 'POST', 'tasks.api.scrum.kanban.getStages', {
530
+ id: groupId,
531
+ });
532
+ }
533
+ else if (operation === 'move_task') {
534
+ const taskId = this.getNodeParameter('taskId', i);
535
+ const stageId = this.getNodeParameter('stageId', i);
536
+ result = await Helpers_1.bitrixRequestWithRetry.call(this, 'POST', 'tasks.api.scrum.kanban.moveTask', {
537
+ taskId,
538
+ stageId,
539
+ });
540
+ }
541
+ }
542
+ returnData.push({ json: result });
543
+ }
544
+ catch (error) {
545
+ if (this.continueOnFail()) {
546
+ returnData.push({ json: { error: error.message } });
547
+ continue;
548
+ }
549
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), error, { itemIndex: i });
550
+ }
551
+ }
552
+ return [returnData];
553
+ }
554
+ }
555
+ exports.Bitrix24Scrum = Bitrix24Scrum;
@@ -0,0 +1,7 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="32px" height="32px" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg">
3
+ <g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
4
+ <path d="M16,0 C24.8365,0 32,7.1635 32,16 C32,24.8365 24.8365,32 16,32 C7.1635,32 0,24.8365 0,16 C0,7.1635 7.1635,0 16,0" fill="#2FC7F7"/>
5
+ <path d="M13.3333,8 L18.6667,8 C21.6122,8 24,10.3878 24,13.3333 L24,18.6667 C24,21.6122 21.6122,24 18.6667,24 L13.3333,24 C10.3878,24 8,21.6122 8,18.6667 L8,13.3333 C8,10.3878 10.3878,8 13.3333,8" fill="#FFFFFF"/>
6
+ </g>
7
+ </svg>