n8n-nodes-zalo-loma-funnel 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 (79) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +82 -0
  3. package/dist/bridge/zalo-bridge.d.ts +46 -0
  4. package/dist/bridge/zalo-bridge.d.ts.map +1 -0
  5. package/dist/bridge/zalo-bridge.js +213 -0
  6. package/dist/bridge/zalo-bridge.js.map +1 -0
  7. package/dist/credentials/zalo-api.credentials.d.ts +8 -0
  8. package/dist/credentials/zalo-api.credentials.d.ts.map +1 -0
  9. package/dist/credentials/zalo-api.credentials.js +82 -0
  10. package/dist/credentials/zalo-api.credentials.js.map +1 -0
  11. package/dist/index.d.ts +9 -0
  12. package/dist/index.d.ts.map +1 -0
  13. package/dist/index.js +36 -0
  14. package/dist/index.js.map +1 -0
  15. package/dist/interfaces/auth.interface.d.ts +33 -0
  16. package/dist/interfaces/auth.interface.d.ts.map +1 -0
  17. package/dist/interfaces/auth.interface.js +3 -0
  18. package/dist/interfaces/auth.interface.js.map +1 -0
  19. package/dist/interfaces/config.interface.d.ts +37 -0
  20. package/dist/interfaces/config.interface.d.ts.map +1 -0
  21. package/dist/interfaces/config.interface.js +3 -0
  22. package/dist/interfaces/config.interface.js.map +1 -0
  23. package/dist/interfaces/index.d.ts +4 -0
  24. package/dist/interfaces/index.d.ts.map +1 -0
  25. package/dist/interfaces/index.js +20 -0
  26. package/dist/interfaces/index.js.map +1 -0
  27. package/dist/interfaces/zalo.interface.d.ts +74 -0
  28. package/dist/interfaces/zalo.interface.d.ts.map +1 -0
  29. package/dist/interfaces/zalo.interface.js +14 -0
  30. package/dist/interfaces/zalo.interface.js.map +1 -0
  31. package/dist/nodes/ZaloManage/zalo-manage.node.d.ts +6 -0
  32. package/dist/nodes/ZaloManage/zalo-manage.node.d.ts.map +1 -0
  33. package/dist/nodes/ZaloManage/zalo-manage.node.js +426 -0
  34. package/dist/nodes/ZaloManage/zalo-manage.node.js.map +1 -0
  35. package/dist/nodes/ZaloSend/zalo-send.node.d.ts +6 -0
  36. package/dist/nodes/ZaloSend/zalo-send.node.d.ts.map +1 -0
  37. package/dist/nodes/ZaloSend/zalo-send.node.js +538 -0
  38. package/dist/nodes/ZaloSend/zalo-send.node.js.map +1 -0
  39. package/dist/nodes/ZaloTrigger/zalo-trigger.node.d.ts +6 -0
  40. package/dist/nodes/ZaloTrigger/zalo-trigger.node.d.ts.map +1 -0
  41. package/dist/nodes/ZaloTrigger/zalo-trigger.node.js +308 -0
  42. package/dist/nodes/ZaloTrigger/zalo-trigger.node.js.map +1 -0
  43. package/dist/queues/in-memory-queue.d.ts +20 -0
  44. package/dist/queues/in-memory-queue.d.ts.map +1 -0
  45. package/dist/queues/in-memory-queue.js +68 -0
  46. package/dist/queues/in-memory-queue.js.map +1 -0
  47. package/dist/queues/index.d.ts +4 -0
  48. package/dist/queues/index.d.ts.map +1 -0
  49. package/dist/queues/index.js +8 -0
  50. package/dist/queues/index.js.map +1 -0
  51. package/dist/queues/queue.interface.d.ts +15 -0
  52. package/dist/queues/queue.interface.d.ts.map +1 -0
  53. package/dist/queues/queue.interface.js +3 -0
  54. package/dist/queues/queue.interface.js.map +1 -0
  55. package/dist/queues/redis-queue.d.ts +22 -0
  56. package/dist/queues/redis-queue.d.ts.map +1 -0
  57. package/dist/queues/redis-queue.js +65 -0
  58. package/dist/queues/redis-queue.js.map +1 -0
  59. package/dist/services/error-handler.service.d.ts +67 -0
  60. package/dist/services/error-handler.service.d.ts.map +1 -0
  61. package/dist/services/error-handler.service.js +201 -0
  62. package/dist/services/error-handler.service.js.map +1 -0
  63. package/dist/services/index.d.ts +4 -0
  64. package/dist/services/index.d.ts.map +1 -0
  65. package/dist/services/index.js +13 -0
  66. package/dist/services/index.js.map +1 -0
  67. package/dist/services/rate-limiter.service.d.ts +68 -0
  68. package/dist/services/rate-limiter.service.d.ts.map +1 -0
  69. package/dist/services/rate-limiter.service.js +149 -0
  70. package/dist/services/rate-limiter.service.js.map +1 -0
  71. package/dist/services/zalo-connection-manager.service.d.ts +85 -0
  72. package/dist/services/zalo-connection-manager.service.d.ts.map +1 -0
  73. package/dist/services/zalo-connection-manager.service.js +243 -0
  74. package/dist/services/zalo-connection-manager.service.js.map +1 -0
  75. package/dist/utils/auth-helpers.d.ts +25 -0
  76. package/dist/utils/auth-helpers.d.ts.map +1 -0
  77. package/dist/utils/auth-helpers.js +66 -0
  78. package/dist/utils/auth-helpers.js.map +1 -0
  79. package/package.json +75 -0
@@ -0,0 +1,538 @@
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 () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.ZaloSend = void 0;
37
+ const n8n_workflow_1 = require("n8n-workflow");
38
+ const zca_js_1 = require("zca-js");
39
+ const zalo_connection_manager_service_1 = require("../../services/zalo-connection-manager.service");
40
+ const rate_limiter_service_1 = require("../../services/rate-limiter.service");
41
+ const error_handler_service_1 = require("../../services/error-handler.service");
42
+ class ZaloSend {
43
+ constructor() {
44
+ this.description = {
45
+ displayName: 'Zalo Send',
46
+ name: 'zaloSend',
47
+ icon: 'file:zalo.svg',
48
+ group: ['output'],
49
+ version: 1,
50
+ subtitle: '={{$parameter["operation"]}}',
51
+ description: 'Send messages via Zalo (text, images, files, stickers)',
52
+ defaults: {
53
+ name: 'Zalo Send',
54
+ },
55
+ inputs: ['main'],
56
+ outputs: ['main'],
57
+ credentials: [
58
+ {
59
+ name: 'zaloApi',
60
+ required: true,
61
+ },
62
+ ],
63
+ properties: [
64
+ {
65
+ displayName: 'Operation',
66
+ name: 'operation',
67
+ type: 'options',
68
+ noDataExpression: true,
69
+ options: [
70
+ {
71
+ name: 'Send Text',
72
+ value: 'sendText',
73
+ description: 'Send a text message',
74
+ action: 'Send a text message',
75
+ },
76
+ {
77
+ name: 'Send Image',
78
+ value: 'sendImage',
79
+ description: 'Send an image',
80
+ action: 'Send an image',
81
+ },
82
+ {
83
+ name: 'Send File',
84
+ value: 'sendFile',
85
+ description: 'Send a file',
86
+ action: 'Send a file',
87
+ },
88
+ {
89
+ name: 'Send Sticker',
90
+ value: 'sendSticker',
91
+ description: 'Send a sticker',
92
+ action: 'Send a sticker',
93
+ },
94
+ {
95
+ name: 'Send GIF',
96
+ value: 'sendGif',
97
+ description: 'Send a GIF',
98
+ action: 'Send a GIF',
99
+ },
100
+ ],
101
+ default: 'sendText',
102
+ },
103
+ {
104
+ displayName: 'Thread Type',
105
+ name: 'threadType',
106
+ type: 'options',
107
+ options: [
108
+ {
109
+ name: 'User (Direct Message)',
110
+ value: 'user',
111
+ },
112
+ {
113
+ name: 'Group',
114
+ value: 'group',
115
+ },
116
+ ],
117
+ default: 'user',
118
+ description: 'Whether to send to a user or group',
119
+ },
120
+ {
121
+ displayName: 'Thread ID',
122
+ name: 'threadId',
123
+ type: 'string',
124
+ default: '',
125
+ required: true,
126
+ description: 'The user ID or group ID to send message to',
127
+ },
128
+ // Text message options
129
+ {
130
+ displayName: 'Message',
131
+ name: 'message',
132
+ type: 'string',
133
+ typeOptions: {
134
+ rows: 4,
135
+ },
136
+ default: '',
137
+ required: true,
138
+ displayOptions: {
139
+ show: {
140
+ operation: ['sendText'],
141
+ },
142
+ },
143
+ description: 'The text message to send',
144
+ },
145
+ // Image options
146
+ {
147
+ displayName: 'Image Source',
148
+ name: 'imageSource',
149
+ type: 'options',
150
+ options: [
151
+ {
152
+ name: 'URL',
153
+ value: 'url',
154
+ },
155
+ {
156
+ name: 'Binary Data',
157
+ value: 'binary',
158
+ },
159
+ ],
160
+ default: 'url',
161
+ displayOptions: {
162
+ show: {
163
+ operation: ['sendImage'],
164
+ },
165
+ },
166
+ },
167
+ {
168
+ displayName: 'Image URL',
169
+ name: 'imageUrl',
170
+ type: 'string',
171
+ default: '',
172
+ required: true,
173
+ displayOptions: {
174
+ show: {
175
+ operation: ['sendImage'],
176
+ imageSource: ['url'],
177
+ },
178
+ },
179
+ description: 'URL of the image to send',
180
+ },
181
+ {
182
+ displayName: 'Binary Property',
183
+ name: 'binaryPropertyImage',
184
+ type: 'string',
185
+ default: 'data',
186
+ displayOptions: {
187
+ show: {
188
+ operation: ['sendImage'],
189
+ imageSource: ['binary'],
190
+ },
191
+ },
192
+ description: 'Name of the binary property containing the image',
193
+ },
194
+ // File options
195
+ {
196
+ displayName: 'File Source',
197
+ name: 'fileSource',
198
+ type: 'options',
199
+ options: [
200
+ {
201
+ name: 'URL',
202
+ value: 'url',
203
+ },
204
+ {
205
+ name: 'Binary Data',
206
+ value: 'binary',
207
+ },
208
+ ],
209
+ default: 'url',
210
+ displayOptions: {
211
+ show: {
212
+ operation: ['sendFile'],
213
+ },
214
+ },
215
+ },
216
+ {
217
+ displayName: 'File URL',
218
+ name: 'fileUrl',
219
+ type: 'string',
220
+ default: '',
221
+ required: true,
222
+ displayOptions: {
223
+ show: {
224
+ operation: ['sendFile'],
225
+ fileSource: ['url'],
226
+ },
227
+ },
228
+ description: 'URL of the file to send',
229
+ },
230
+ {
231
+ displayName: 'Binary Property',
232
+ name: 'binaryPropertyFile',
233
+ type: 'string',
234
+ default: 'data',
235
+ displayOptions: {
236
+ show: {
237
+ operation: ['sendFile'],
238
+ fileSource: ['binary'],
239
+ },
240
+ },
241
+ description: 'Name of the binary property containing the file',
242
+ },
243
+ // Sticker options
244
+ {
245
+ displayName: 'Sticker ID',
246
+ name: 'stickerId',
247
+ type: 'string',
248
+ default: '',
249
+ required: true,
250
+ displayOptions: {
251
+ show: {
252
+ operation: ['sendSticker'],
253
+ },
254
+ },
255
+ description: 'The sticker ID to send',
256
+ },
257
+ // GIF options
258
+ {
259
+ displayName: 'GIF Source',
260
+ name: 'gifSource',
261
+ type: 'options',
262
+ options: [
263
+ {
264
+ name: 'URL',
265
+ value: 'url',
266
+ },
267
+ {
268
+ name: 'Binary Data',
269
+ value: 'binary',
270
+ },
271
+ ],
272
+ default: 'url',
273
+ displayOptions: {
274
+ show: {
275
+ operation: ['sendGif'],
276
+ },
277
+ },
278
+ },
279
+ {
280
+ displayName: 'GIF URL',
281
+ name: 'gifUrl',
282
+ type: 'string',
283
+ default: '',
284
+ required: true,
285
+ displayOptions: {
286
+ show: {
287
+ operation: ['sendGif'],
288
+ gifSource: ['url'],
289
+ },
290
+ },
291
+ description: 'URL of the GIF to send',
292
+ },
293
+ {
294
+ displayName: 'Binary Property',
295
+ name: 'binaryPropertyGif',
296
+ type: 'string',
297
+ default: 'data',
298
+ displayOptions: {
299
+ show: {
300
+ operation: ['sendGif'],
301
+ gifSource: ['binary'],
302
+ },
303
+ },
304
+ description: 'Name of the binary property containing the GIF',
305
+ },
306
+ // Additional options
307
+ {
308
+ displayName: 'Options',
309
+ name: 'options',
310
+ type: 'collection',
311
+ placeholder: 'Add Option',
312
+ default: {},
313
+ options: [
314
+ {
315
+ displayName: 'Quote Message ID',
316
+ name: 'quoteMessageId',
317
+ type: 'string',
318
+ default: '',
319
+ description: 'ID of message to reply to (quote)',
320
+ },
321
+ {
322
+ displayName: 'Simulate Typing',
323
+ name: 'simulateTyping',
324
+ type: 'boolean',
325
+ default: false,
326
+ description: 'Whether to show typing indicator before sending',
327
+ },
328
+ {
329
+ displayName: 'Typing Duration (ms)',
330
+ name: 'typingDuration',
331
+ type: 'number',
332
+ default: 2000,
333
+ displayOptions: {
334
+ show: {
335
+ simulateTyping: [true],
336
+ },
337
+ },
338
+ description: 'How long to show typing indicator',
339
+ },
340
+ {
341
+ displayName: 'Rate Limit Mode',
342
+ name: 'rateLimitMode',
343
+ type: 'options',
344
+ options: [
345
+ {
346
+ name: 'Memory',
347
+ value: 'memory',
348
+ },
349
+ {
350
+ name: 'Redis',
351
+ value: 'redis',
352
+ },
353
+ ],
354
+ default: 'memory',
355
+ description: 'Where to store rate limit state',
356
+ },
357
+ {
358
+ displayName: 'Redis URL',
359
+ name: 'redisUrl',
360
+ type: 'string',
361
+ default: '',
362
+ displayOptions: {
363
+ show: {
364
+ rateLimitMode: ['redis'],
365
+ },
366
+ },
367
+ description: 'Redis connection URL for rate limiting',
368
+ },
369
+ {
370
+ displayName: 'Min Delay (ms)',
371
+ name: 'minDelay',
372
+ type: 'number',
373
+ default: 1000,
374
+ description: 'Minimum delay between messages',
375
+ },
376
+ {
377
+ displayName: 'Max Delay (ms)',
378
+ name: 'maxDelay',
379
+ type: 'number',
380
+ default: 5000,
381
+ description: 'Maximum delay between messages',
382
+ },
383
+ ],
384
+ },
385
+ ],
386
+ };
387
+ }
388
+ async execute() {
389
+ const items = this.getInputData();
390
+ const returnData = [];
391
+ // Get credentials
392
+ const credentials = (await this.getCredentials('zaloApi'));
393
+ // Initialize services
394
+ const connectionManager = zalo_connection_manager_service_1.ZaloConnectionManager.getInstance();
395
+ const errorHandler = (0, error_handler_service_1.createDefaultErrorHandler)();
396
+ // Get options for rate limiter
397
+ const options = this.getNodeParameter('options', 0, {});
398
+ const rateLimiter = new rate_limiter_service_1.RateLimiter({
399
+ mode: options.rateLimitMode || 'memory',
400
+ redisUrl: options.redisUrl,
401
+ minDelayMs: options.minDelay || 1000,
402
+ maxDelayMs: options.maxDelay || 5000,
403
+ });
404
+ try {
405
+ // Connect to Zalo
406
+ const api = await errorHandler.withRetry(() => connectionManager.connect(credentials));
407
+ const accountId = credentials.accountId || 'default';
408
+ for (let i = 0; i < items.length; i++) {
409
+ try {
410
+ const operation = this.getNodeParameter('operation', i);
411
+ const threadType = this.getNodeParameter('threadType', i);
412
+ const threadId = this.getNodeParameter('threadId', i);
413
+ const itemOptions = this.getNodeParameter('options', i, {});
414
+ // Apply rate limiting
415
+ await rateLimiter.acquire(accountId);
416
+ // Simulate typing if enabled
417
+ if (itemOptions.simulateTyping) {
418
+ await sleep(itemOptions.typingDuration || 2000);
419
+ }
420
+ let result;
421
+ const zcaThreadType = threadType === 'user' ? zca_js_1.ThreadType.User : zca_js_1.ThreadType.Group;
422
+ switch (operation) {
423
+ case 'sendText': {
424
+ const message = this.getNodeParameter('message', i);
425
+ result = (await errorHandler.withRetry(async () => {
426
+ return api.sendMessage(message, threadId, zcaThreadType);
427
+ }));
428
+ break;
429
+ }
430
+ case 'sendImage': {
431
+ const imageSource = this.getNodeParameter('imageSource', i);
432
+ let imagePath;
433
+ if (imageSource === 'url') {
434
+ imagePath = this.getNodeParameter('imageUrl', i);
435
+ }
436
+ else {
437
+ const binaryProperty = this.getNodeParameter('binaryPropertyImage', i);
438
+ const binaryData = this.helpers.assertBinaryData(i, binaryProperty);
439
+ const buffer = await this.helpers.getBinaryDataBuffer(i, binaryProperty);
440
+ const tempPath = `/tmp/zalo_image_${Date.now()}_${binaryData.fileName || 'image.png'}`;
441
+ const fs = await Promise.resolve().then(() => __importStar(require('fs/promises')));
442
+ await fs.writeFile(tempPath, buffer);
443
+ imagePath = tempPath;
444
+ }
445
+ result = (await errorHandler.withRetry(async () => {
446
+ return api.sendMessage({ msg: '', attachments: [imagePath] }, threadId, zcaThreadType);
447
+ }));
448
+ break;
449
+ }
450
+ case 'sendFile': {
451
+ const fileSource = this.getNodeParameter('fileSource', i);
452
+ let filePath;
453
+ if (fileSource === 'url') {
454
+ filePath = this.getNodeParameter('fileUrl', i);
455
+ }
456
+ else {
457
+ const binaryProperty = this.getNodeParameter('binaryPropertyFile', i);
458
+ const binaryData = this.helpers.assertBinaryData(i, binaryProperty);
459
+ const buffer = await this.helpers.getBinaryDataBuffer(i, binaryProperty);
460
+ const tempPath = `/tmp/zalo_file_${Date.now()}_${binaryData.fileName || 'file'}`;
461
+ const fs = await Promise.resolve().then(() => __importStar(require('fs/promises')));
462
+ await fs.writeFile(tempPath, buffer);
463
+ filePath = tempPath;
464
+ }
465
+ result = (await errorHandler.withRetry(async () => {
466
+ return api.sendMessage({ msg: '', attachments: [filePath] }, threadId, zcaThreadType);
467
+ }));
468
+ break;
469
+ }
470
+ case 'sendSticker': {
471
+ const stickerId = this.getNodeParameter('stickerId', i);
472
+ // Note: sendSticker requires {id, cateId, type} payload
473
+ // For simplicity, we use default cateId and type
474
+ result = (await errorHandler.withRetry(async () => {
475
+ return api.sendSticker({ id: parseInt(stickerId, 10), cateId: 0, type: 0 }, threadId, zcaThreadType);
476
+ }));
477
+ break;
478
+ }
479
+ case 'sendGif': {
480
+ const gifSource = this.getNodeParameter('gifSource', i);
481
+ let gifPath;
482
+ if (gifSource === 'url') {
483
+ gifPath = this.getNodeParameter('gifUrl', i);
484
+ }
485
+ else {
486
+ const binaryProperty = this.getNodeParameter('binaryPropertyGif', i);
487
+ const binaryData = this.helpers.assertBinaryData(i, binaryProperty);
488
+ const buffer = await this.helpers.getBinaryDataBuffer(i, binaryProperty);
489
+ const tempPath = `/tmp/zalo_gif_${Date.now()}_${binaryData.fileName || 'image.gif'}`;
490
+ const fs = await Promise.resolve().then(() => __importStar(require('fs/promises')));
491
+ await fs.writeFile(tempPath, buffer);
492
+ gifPath = tempPath;
493
+ }
494
+ result = (await errorHandler.withRetry(async () => {
495
+ return api.sendMessage({ msg: '', attachments: [gifPath] }, threadId, zcaThreadType);
496
+ }));
497
+ break;
498
+ }
499
+ default:
500
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Unknown operation: ${operation}`);
501
+ }
502
+ returnData.push({
503
+ json: {
504
+ success: true,
505
+ operation,
506
+ threadId,
507
+ threadType,
508
+ result,
509
+ },
510
+ pairedItem: { item: i },
511
+ });
512
+ }
513
+ catch (error) {
514
+ if (this.continueOnFail()) {
515
+ returnData.push({
516
+ json: {
517
+ success: false,
518
+ error: error.message,
519
+ },
520
+ pairedItem: { item: i },
521
+ });
522
+ continue;
523
+ }
524
+ throw error;
525
+ }
526
+ }
527
+ }
528
+ finally {
529
+ await rateLimiter.close();
530
+ }
531
+ return [returnData];
532
+ }
533
+ }
534
+ exports.ZaloSend = ZaloSend;
535
+ function sleep(ms) {
536
+ return new Promise((resolve) => setTimeout(resolve, ms));
537
+ }
538
+ //# sourceMappingURL=zalo-send.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zalo-send.node.js","sourceRoot":"","sources":["../../../src/nodes/ZaloSend/zalo-send.node.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { ITriggerFunctions, INodeType, INodeTypeDescription, ITriggerResponse } from 'n8n-workflow';
2
+ export declare class ZaloTrigger implements INodeType {
3
+ description: INodeTypeDescription;
4
+ trigger(this: ITriggerFunctions): Promise<ITriggerResponse>;
5
+ }
6
+ //# sourceMappingURL=zalo-trigger.node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zalo-trigger.node.d.ts","sourceRoot":"","sources":["../../../src/nodes/ZaloTrigger/zalo-trigger.node.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,SAAS,EACT,oBAAoB,EACpB,gBAAgB,EAEjB,MAAM,cAAc,CAAC;AAUtB,qBAAa,WAAY,YAAW,SAAS;IAC3C,WAAW,EAAE,oBAAoB,CA+J/B;IAEI,OAAO,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAiJlE"}