n8n 1.103.0 → 1.103.2

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.
@@ -0,0 +1,11 @@
1
+ import type { IWebhookData, INode, IWorkflowDataProxyAdditionalKeys, Workflow, WorkflowExecuteMode, IExecuteData, IWebhookDescription, NodeParameterValueType } from 'n8n-workflow';
2
+ export declare class WebhookExecutionContext {
3
+ readonly workflow: Workflow;
4
+ readonly workflowStartNode: INode;
5
+ readonly webhookData: IWebhookData;
6
+ readonly executionMode: WorkflowExecuteMode;
7
+ readonly additionalKeys: IWorkflowDataProxyAdditionalKeys;
8
+ constructor(workflow: Workflow, workflowStartNode: INode, webhookData: IWebhookData, executionMode: WorkflowExecuteMode, additionalKeys: IWorkflowDataProxyAdditionalKeys);
9
+ evaluateSimpleWebhookDescriptionExpression<T extends boolean | number | string | unknown[]>(propertyName: keyof IWebhookDescription, executeData?: IExecuteData, defaultValue?: T): T | undefined;
10
+ evaluateComplexWebhookDescriptionExpression<T extends NodeParameterValueType>(propertyName: keyof IWebhookDescription, executeData?: IExecuteData, defaultValue?: T): T | undefined;
11
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WebhookExecutionContext = void 0;
4
+ class WebhookExecutionContext {
5
+ constructor(workflow, workflowStartNode, webhookData, executionMode, additionalKeys) {
6
+ this.workflow = workflow;
7
+ this.workflowStartNode = workflowStartNode;
8
+ this.webhookData = webhookData;
9
+ this.executionMode = executionMode;
10
+ this.additionalKeys = additionalKeys;
11
+ }
12
+ evaluateSimpleWebhookDescriptionExpression(propertyName, executeData, defaultValue) {
13
+ return this.workflow.expression.getSimpleParameterValue(this.workflowStartNode, this.webhookData.webhookDescription[propertyName], this.executionMode, this.additionalKeys, executeData, defaultValue);
14
+ }
15
+ evaluateComplexWebhookDescriptionExpression(propertyName, executeData, defaultValue) {
16
+ return this.workflow.expression.getComplexParameterValue(this.workflowStartNode, this.webhookData.webhookDescription[propertyName], this.executionMode, this.additionalKeys, executeData, defaultValue);
17
+ }
18
+ }
19
+ exports.WebhookExecutionContext = WebhookExecutionContext;
20
+ //# sourceMappingURL=webhook-execution-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhook-execution-context.js","sourceRoot":"","sources":["../../src/webhooks/webhook-execution-context.ts"],"names":[],"mappings":";;;AAeA,MAAa,uBAAuB;IACnC,YACU,QAAkB,EAClB,iBAAwB,EACxB,WAAyB,EACzB,aAAkC,EAClC,cAAgD;QAJhD,aAAQ,GAAR,QAAQ,CAAU;QAClB,sBAAiB,GAAjB,iBAAiB,CAAO;QACxB,gBAAW,GAAX,WAAW,CAAc;QACzB,kBAAa,GAAb,aAAa,CAAqB;QAClC,mBAAc,GAAd,cAAc,CAAkC;IACvD,CAAC;IAKJ,0CAA0C,CACzC,YAAuC,EACvC,WAA0B,EAC1B,YAAgB;QAEhB,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,uBAAuB,CACtD,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,YAAY,CAAC,EACjD,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,cAAc,EACnB,WAAW,EACX,YAAY,CACK,CAAC;IACpB,CAAC;IAKD,2CAA2C,CAC1C,YAAuC,EACvC,WAA0B,EAC1B,YAAgB;QAEhB,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,wBAAwB,CACvD,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,YAAY,CAAC,EACjD,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,cAAc,EACnB,WAAW,EACX,YAAY,CACK,CAAC;IACpB,CAAC;CACD;AA5CD,0DA4CC"}
@@ -1,13 +1,13 @@
1
1
  import type express from 'express';
2
- import type { IDeferredPromise, IN8nHttpFullResponse, INode, IPinData, IRunExecutionData, IWebhookData, IWebhookResponseData, IWorkflowExecuteAdditionalData, WebhookResponseMode, Workflow, WorkflowExecuteMode, IWorkflowBase, WebhookResponseData } from 'n8n-workflow';
2
+ import type { IDeferredPromise, IN8nHttpFullResponse, INode, IPinData, IRunExecutionData, IWebhookData, IWebhookResponseData, IWorkflowExecuteAdditionalData, WebhookResponseMode, Workflow, WorkflowExecuteMode, IWorkflowBase } from 'n8n-workflow';
3
3
  import type { IWebhookResponseCallbackData, WebhookRequest } from './webhook.types';
4
+ import type { WebhookResponse } from '../webhooks/webhook-response';
4
5
  export declare function getWorkflowWebhooks(workflow: Workflow, additionalData: IWorkflowExecuteAdditionalData, destinationNode?: string, ignoreRestartWebhooks?: boolean): IWebhookData[];
5
6
  export declare function autoDetectResponseMode(workflowStartNode: INode, workflow: Workflow, method: string): WebhookResponseMode | undefined;
6
7
  export declare const handleFormRedirectionCase: (data: IWebhookResponseCallbackData, workflowStartNode: INode) => IWebhookResponseCallbackData;
7
- export declare function getResponseOnReceived(responseData: WebhookResponseData | string | undefined, webhookResultData: IWebhookResponseData, responseCode: number): IWebhookResponseCallbackData;
8
8
  export declare function setupResponseNodePromise(responsePromise: IDeferredPromise<IN8nHttpFullResponse>, res: express.Response, responseCallback: (error: Error | null, data: IWebhookResponseCallbackData) => void, workflowStartNode: INode, executionId: string | undefined, workflow: Workflow): void;
9
9
  export declare function prepareExecutionData(executionMode: WorkflowExecuteMode, workflowStartNode: INode, webhookResultData: IWebhookResponseData, runExecutionData: IRunExecutionData | undefined, runExecutionDataMerge?: object, destinationNode?: string, executionId?: string, workflowData?: IWorkflowBase): {
10
10
  runExecutionData: IRunExecutionData;
11
11
  pinData: IPinData | undefined;
12
12
  };
13
- export declare function executeWebhook(workflow: Workflow, webhookData: IWebhookData, workflowData: IWorkflowBase, workflowStartNode: INode, executionMode: WorkflowExecuteMode, pushRef: string | undefined, runExecutionData: IRunExecutionData | undefined, executionId: string | undefined, req: WebhookRequest, res: express.Response, responseCallback: (error: Error | null, data: IWebhookResponseCallbackData) => void, destinationNode?: string): Promise<string | undefined>;
13
+ export declare function executeWebhook(workflow: Workflow, webhookData: IWebhookData, workflowData: IWorkflowBase, workflowStartNode: INode, executionMode: WorkflowExecuteMode, pushRef: string | undefined, runExecutionData: IRunExecutionData | undefined, executionId: string | undefined, req: WebhookRequest, res: express.Response, responseCallback: (error: Error | null, data: IWebhookResponseCallbackData | WebhookResponse) => void, destinationNode?: string): Promise<string | undefined>;
@@ -32,24 +32,20 @@ var __importStar = (this && this.__importStar) || (function () {
32
32
  return result;
33
33
  };
34
34
  })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
35
  Object.defineProperty(exports, "__esModule", { value: true });
39
36
  exports.handleFormRedirectionCase = void 0;
40
37
  exports.getWorkflowWebhooks = getWorkflowWebhooks;
41
38
  exports.autoDetectResponseMode = autoDetectResponseMode;
42
- exports.getResponseOnReceived = getResponseOnReceived;
43
39
  exports.setupResponseNodePromise = setupResponseNodePromise;
44
40
  exports.prepareExecutionData = prepareExecutionData;
45
41
  exports.executeWebhook = executeWebhook;
46
42
  const backend_common_1 = require("@n8n/backend-common");
47
43
  const config_1 = require("@n8n/config");
48
44
  const di_1 = require("@n8n/di");
49
- const get_1 = __importDefault(require("lodash/get"));
50
45
  const n8n_core_1 = require("n8n-core");
51
46
  const n8n_workflow_1 = require("n8n-workflow");
52
47
  const promises_1 = require("stream/promises");
48
+ const webhook_service_1 = require("./webhook.service");
53
49
  const active_executions_1 = require("../active-executions");
54
50
  const constants_1 = require("../constants");
55
51
  const internal_server_error_1 = require("../errors/response-errors/internal-server.error");
@@ -59,11 +55,14 @@ const middlewares_1 = require("../middlewares");
59
55
  const ownership_service_1 = require("../services/ownership.service");
60
56
  const workflow_statistics_service_1 = require("../services/workflow-statistics.service");
61
57
  const wait_tracker_1 = require("../wait-tracker");
58
+ const webhook_execution_context_1 = require("../webhooks/webhook-execution-context");
62
59
  const webhook_form_data_1 = require("../webhooks/webhook-form-data");
60
+ const webhook_last_node_response_extractor_1 = require("../webhooks/webhook-last-node-response-extractor");
61
+ const webhook_on_received_response_extractor_1 = require("../webhooks/webhook-on-received-response-extractor");
62
+ const webhook_response_1 = require("../webhooks/webhook-response");
63
63
  const WorkflowExecuteAdditionalData = __importStar(require("../workflow-execute-additional-data"));
64
64
  const WorkflowHelpers = __importStar(require("../workflow-helpers"));
65
65
  const workflow_runner_1 = require("../workflow-runner");
66
- const webhook_service_1 = require("./webhook.service");
67
66
  function getWorkflowWebhooks(workflow, additionalData, destinationNode, ignoreRestartWebhooks = false) {
68
67
  const returnData = [];
69
68
  let parentNodes;
@@ -140,21 +139,6 @@ const handleFormRedirectionCase = (data, workflowStartNode) => {
140
139
  exports.handleFormRedirectionCase = handleFormRedirectionCase;
141
140
  const { formDataFileSizeMax } = di_1.Container.get(config_1.GlobalConfig).endpoints;
142
141
  const parseFormData = (0, webhook_form_data_1.createMultiFormDataParser)(formDataFileSizeMax);
143
- function getResponseOnReceived(responseData, webhookResultData, responseCode) {
144
- const callbackData = { responseCode };
145
- if (responseData === 'noData') {
146
- }
147
- else if (responseData) {
148
- callbackData.data = responseData;
149
- }
150
- else if (webhookResultData.webhookResponse !== undefined) {
151
- callbackData.data = webhookResultData.webhookResponse;
152
- }
153
- else {
154
- callbackData.data = { message: 'Workflow was started' };
155
- }
156
- return callbackData;
157
- }
158
142
  function setupResponseNodePromise(responsePromise, res, responseCallback, workflowStartNode, executionId, workflow) {
159
143
  void responsePromise.promise
160
144
  .then(async (response) => {
@@ -232,6 +216,7 @@ async function executeWebhook(workflow, webhookData, workflowData, workflowStart
232
216
  const additionalKeys = {
233
217
  $executionId: executionId,
234
218
  };
219
+ const context = new webhook_execution_context_1.WebhookExecutionContext(workflow, workflowStartNode, webhookData, executionMode, additionalKeys);
235
220
  let project = undefined;
236
221
  try {
237
222
  project = await di_1.Container.get(ownership_service_1.OwnershipService).getWorkflowProjectCached(workflowData.id);
@@ -320,14 +305,10 @@ async function executeWebhook(workflow, webhookData, workflowData, workflowStart
320
305
  workflowData: [[{ json: {} }]],
321
306
  };
322
307
  }
323
- if (webhookData.webhookDescription.responseHeaders !== undefined) {
324
- const responseHeaders = workflow.expression.getComplexParameterValue(workflowStartNode, webhookData.webhookDescription.responseHeaders, executionMode, additionalKeys, undefined, undefined);
325
- if (!res.headersSent) {
326
- if (responseHeaders?.entries !== undefined) {
327
- for (const item of responseHeaders.entries) {
328
- res.setHeader(item.name, item.value);
329
- }
330
- }
308
+ const responseHeaders = evaluateResponseHeaders(context);
309
+ if (!res.headersSent && responseHeaders) {
310
+ for (const [name, value] of responseHeaders.entries()) {
311
+ res.setHeader(name, value);
331
312
  }
332
313
  }
333
314
  if (webhookResultData.noWebhookResponse === true && !didSendResponse) {
@@ -360,8 +341,9 @@ async function executeWebhook(workflow, webhookData, workflowData, workflowStart
360
341
  return;
361
342
  }
362
343
  if (responseMode === 'onReceived' && !didSendResponse) {
363
- const callbackData = getResponseOnReceived(responseData, webhookResultData, responseCode);
364
- responseCallback(null, callbackData);
344
+ const responseBody = (0, webhook_on_received_response_extractor_1.extractWebhookOnReceivedResponse)(responseData, webhookResultData);
345
+ const webhookResponse = (0, webhook_response_1.createStaticResponse)(responseBody, responseCode, responseHeaders);
346
+ responseCallback(null, webhookResponse);
365
347
  didSendResponse = true;
366
348
  }
367
349
  const { runExecutionData: preparedRunExecutionData, pinData } = prepareExecutionData(executionMode, workflowStartNode, webhookResultData, runExecutionData, runExecutionDataMerge, destinationNode, executionId, workflowData);
@@ -406,8 +388,8 @@ async function executeWebhook(workflow, webhookData, workflowData, workflowStart
406
388
  }
407
389
  if (!didSendResponse) {
408
390
  executePromise
409
- .then(async (data) => {
410
- if (data === undefined) {
391
+ .then(async (runData) => {
392
+ if (runData === undefined) {
411
393
  if (!didSendResponse) {
412
394
  responseCallback(null, {
413
395
  data: {
@@ -420,10 +402,10 @@ async function executeWebhook(workflow, webhookData, workflowData, workflowStart
420
402
  return undefined;
421
403
  }
422
404
  if (pinData) {
423
- data.data.resultData.pinData = pinData;
405
+ runData.data.resultData.pinData = pinData;
424
406
  }
425
- const returnData = WorkflowHelpers.getDataLastExecutedNodeData(data);
426
- if (data.data.resultData.error || returnData?.error !== undefined) {
407
+ const lastNodeTaskData = WorkflowHelpers.getDataLastExecutedNodeData(runData);
408
+ if (runData.data.resultData.error || lastNodeTaskData?.error !== undefined) {
427
409
  if (!didSendResponse) {
428
410
  responseCallback(null, {
429
411
  data: {
@@ -433,13 +415,13 @@ async function executeWebhook(workflow, webhookData, workflowData, workflowStart
433
415
  });
434
416
  }
435
417
  didSendResponse = true;
436
- return data;
418
+ return runData;
437
419
  }
438
420
  if (responseMode === 'responseNode' && responsePromise) {
439
421
  await Promise.allSettled([responsePromise.promise]);
440
422
  return undefined;
441
423
  }
442
- if (returnData === undefined) {
424
+ if (lastNodeTaskData === undefined) {
443
425
  if (!didSendResponse) {
444
426
  responseCallback(null, {
445
427
  data: {
@@ -449,94 +431,26 @@ async function executeWebhook(workflow, webhookData, workflowData, workflowStart
449
431
  });
450
432
  }
451
433
  didSendResponse = true;
452
- return data;
434
+ return runData;
453
435
  }
454
- if (!didSendResponse) {
455
- let data;
456
- if (responseData === 'firstEntryJson') {
457
- if (returnData.data.main[0][0] === undefined) {
458
- responseCallback(new n8n_workflow_1.OperationalError('No item to return got found'), {});
459
- didSendResponse = true;
460
- return undefined;
461
- }
462
- data = returnData.data.main[0][0].json;
463
- const responsePropertyName = workflow.expression.getSimpleParameterValue(workflowStartNode, webhookData.webhookDescription.responsePropertyName, executionMode, additionalKeys, undefined, undefined);
464
- if (responsePropertyName !== undefined) {
465
- data = (0, get_1.default)(data, responsePropertyName);
466
- }
467
- const responseContentType = workflow.expression.getSimpleParameterValue(workflowStartNode, webhookData.webhookDescription.responseContentType, executionMode, additionalKeys, undefined, undefined);
468
- if (responseContentType !== undefined) {
469
- res.setHeader('Content-Type', responseContentType);
470
- if (data !== null &&
471
- data !== undefined &&
472
- ['Buffer', 'String'].includes(data.constructor.name)) {
473
- res.end(data);
474
- }
475
- else {
476
- res.end(JSON.stringify(data));
477
- }
478
- responseCallback(null, {
479
- noWebhookResponse: true,
480
- });
481
- didSendResponse = true;
482
- }
483
- }
484
- else if (responseData === 'firstEntryBinary') {
485
- data = returnData.data.main[0][0];
486
- if (data === undefined) {
487
- responseCallback(new n8n_workflow_1.OperationalError('No item was found to return'), {});
488
- didSendResponse = true;
489
- return undefined;
490
- }
491
- if (data.binary === undefined) {
492
- responseCallback(new n8n_workflow_1.OperationalError('No binary data was found to return'), {});
493
- didSendResponse = true;
494
- return undefined;
495
- }
496
- const responseBinaryPropertyName = workflow.expression.getSimpleParameterValue(workflowStartNode, webhookData.webhookDescription.responseBinaryPropertyName, executionMode, additionalKeys, undefined, 'data');
497
- if (responseBinaryPropertyName === undefined && !didSendResponse) {
498
- responseCallback(new n8n_workflow_1.OperationalError("No 'responseBinaryPropertyName' is set"), {});
499
- didSendResponse = true;
500
- }
501
- const binaryData = data.binary[responseBinaryPropertyName];
502
- if (binaryData === undefined && !didSendResponse) {
503
- responseCallback(new n8n_workflow_1.OperationalError(`The binary property '${responseBinaryPropertyName}' which should be returned does not exist`), {});
504
- didSendResponse = true;
505
- }
506
- if (!didSendResponse) {
507
- res.setHeader('Content-Type', binaryData.mimeType);
508
- if (binaryData.id) {
509
- const stream = await di_1.Container.get(n8n_core_1.BinaryDataService).getAsStream(binaryData.id);
510
- stream.pipe(res, { end: false });
511
- await (0, promises_1.finished)(stream);
512
- }
513
- else {
514
- res.write(Buffer.from(binaryData.data, n8n_workflow_1.BINARY_ENCODING));
515
- }
516
- responseCallback(null, {
517
- noWebhookResponse: true,
518
- });
519
- process.nextTick(() => res.end());
520
- }
521
- }
522
- else if (responseData === 'noData') {
523
- data = undefined;
524
- }
525
- else {
526
- data = [];
527
- for (const entry of returnData.data.main[0]) {
528
- data.push(entry.json);
529
- }
530
- }
531
- if (!didSendResponse) {
532
- responseCallback(null, {
533
- data,
534
- responseCode,
535
- });
536
- }
436
+ if (didSendResponse) {
437
+ return runData;
537
438
  }
439
+ const result = await (0, webhook_last_node_response_extractor_1.extractWebhookLastNodeResponse)(context, responseData, lastNodeTaskData);
440
+ if (!result.ok) {
441
+ responseCallback(result.error, {});
442
+ didSendResponse = true;
443
+ return runData;
444
+ }
445
+ const response = result.result;
446
+ if (response.contentType) {
447
+ responseHeaders.set('content-type', response.contentType);
448
+ }
449
+ responseCallback(null, response.type === 'static'
450
+ ? (0, webhook_response_1.createStaticResponse)(response.body, responseCode, responseHeaders)
451
+ : (0, webhook_response_1.createStreamResponse)(response.stream, responseCode, responseHeaders));
538
452
  didSendResponse = true;
539
- return data;
453
+ return runData;
540
454
  })
541
455
  .catch((e) => {
542
456
  if (!didSendResponse) {
@@ -599,4 +513,18 @@ async function parseRequestBody(req, workflowStartNode, workflow, executionMode,
599
513
  }
600
514
  }
601
515
  }
516
+ function evaluateResponseHeaders(context) {
517
+ const headers = new Map();
518
+ if (context.webhookData.webhookDescription.responseHeaders === undefined) {
519
+ return headers;
520
+ }
521
+ const evaluatedHeaders = context.evaluateComplexWebhookDescriptionExpression('responseHeaders');
522
+ if (evaluatedHeaders?.entries === undefined) {
523
+ return headers;
524
+ }
525
+ for (const entry of evaluatedHeaders.entries) {
526
+ headers.set(entry.name.toLowerCase(), entry.value);
527
+ }
528
+ return headers;
529
+ }
602
530
  //# sourceMappingURL=webhook-helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"webhook-helpers.js","sourceRoot":"","sources":["../../src/webhooks/webhook-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webhook-helpers.js","sourceRoot":"","sources":["../../src/webhooks/webhook-helpers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2EA,kDAoCC;AAGD,wDA+DC;AA+BD,4DA8CC;AAED,oDAyDC;AAMD,wCA6ZC;AArtBD,wDAA6C;AAC7C,wCAA2C;AAE3C,gCAAoC;AAEpC,uCAA4D;AAqB5D,+CASsB;AACtB,8CAA2C;AAE3C,uDAAmD;AAQnD,2DAAuD;AACvD,2CAAoD;AACpD,0FAAqF;AACrF,8EAAyE;AACzE,sFAAyF;AACzF,+CAA0C;AAC1C,oEAAgE;AAChE,wFAAmF;AACnF,iDAA6C;AAC7C,oFAA+E;AAC/E,oEAAyE;AACzE,0GAAiG;AACjG,8GAAqG;AAErG,kEAAyF;AACzF,kGAAoF;AACpF,oEAAsD;AACtD,uDAAmD;AAKnD,SAAgB,mBAAmB,CAClC,QAAkB,EAClB,cAA8C,EAC9C,eAAwB,EACxB,qBAAqB,GAAG,KAAK;IAI7B,MAAM,UAAU,GAAmB,EAAE,CAAC;IAEtC,IAAI,WAAiC,CAAC;IACtC,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;QACnC,WAAW,GAAG,QAAQ,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;QAEvD,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAClD,IAAI,WAAW,KAAK,SAAS,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAInE,SAAS;QACV,CAAC;QACD,UAAU,CAAC,IAAI,CAAC,KAAK,CACpB,UAAU,EACV,cAAS,CAAC,GAAG,CAAC,gCAAc,CAAC,CAAC,eAAe,CAC5C,QAAQ,EACR,IAAI,EACJ,cAAc,EACd,qBAAqB,CACrB,CACD,CAAC;IACH,CAAC;IAED,OAAO,UAAU,CAAC;AACnB,CAAC;AAGD,SAAgB,sBAAsB,CACrC,iBAAwB,EACxB,QAAkB,EAClB,MAAc;IAEd,IAAI,iBAAiB,CAAC,IAAI,KAAK,qCAAsB,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QAC5E,MAAM,cAAc,GAAG,QAAQ,CAAC,aAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAEtE,KAAK,MAAM,QAAQ,IAAI,cAAc,EAAE,CAAC;YACvC,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAEtC,IAAI,IAAI,CAAC,IAAI,KAAK,6BAAc,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBACvE,SAAS;YACV,CAAC;YAED,IAAI,CAAC,6BAAc,EAAE,6BAAc,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC5E,OAAO,UAAU,CAAC;YACnB,CAAC;QACF,CAAC;IACF,CAAC;IAKD,IAAI,iBAAiB,CAAC,IAAI,KAAK,6BAAc,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACpE,MAAM,cAAc,GAAG,QAAQ,CAAC,aAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAEtE,KAAK,MAAM,QAAQ,IAAI,cAAc,EAAE,CAAC;YACvC,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAEtC,IAAI,IAAI,CAAC,IAAI,KAAK,6BAAc,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACpD,OAAO,UAAU,CAAC;YACnB,CAAC;QACF,CAAC;IACF,CAAC;IAED,IAAI,iBAAiB,CAAC,IAAI,KAAK,6BAAc,IAAI,iBAAiB,CAAC,UAAU,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QACjG,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,IACC,iBAAiB,CAAC,IAAI,KAAK,6BAAc;QACzC,iBAAiB,CAAC,UAAU,CAAC,SAAS,KAAK,YAAY,EACtD,CAAC;QACF,OAAO,YAAY,CAAC;IACrB,CAAC;IACD,IAAI,CAAC,6BAAc,EAAE,6BAAc,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QAC5F,MAAM,cAAc,GAAG,QAAQ,CAAC,aAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAEtE,KAAK,MAAM,QAAQ,IAAI,cAAc,EAAE,CAAC;YACvC,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAEtC,IAAI,IAAI,CAAC,IAAI,KAAK,6BAAc,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBACvE,SAAS;YACV,CAAC;YAED,IAAI,CAAC,6BAAc,EAAE,6BAAc,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC5E,OAAO,cAAc,CAAC;YACvB,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,SAAS,CAAC;AAClB,CAAC;AAKM,MAAM,yBAAyB,GAAG,CACxC,IAAkC,EAClC,iBAAwB,EACvB,EAAE;IACH,IAAI,iBAAiB,CAAC,IAAI,KAAK,6BAAc,IAAI,iBAAiB,CAAC,UAAU,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QACjG,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IACC,CAAC,6BAAc,EAAE,qCAAsB,EAAE,6BAAc,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC;QACxF,IAAI,EAAE,OAAuB,EAAE,QAAQ;QACxC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EACzC,CAAC;QACF,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG;YACX,WAAW,EAAG,IAAI,EAAE,OAAuB,EAAE,QAAQ;SACrD,CAAC;QACD,IAAI,CAAC,OAAuB,CAAC,QAAQ,GAAG,SAAS,CAAC;IACpD,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC,CAAC;AArBW,QAAA,yBAAyB,6BAqBpC;AAEF,MAAM,EAAE,mBAAmB,EAAE,GAAG,cAAS,CAAC,GAAG,CAAC,qBAAY,CAAC,CAAC,SAAS,CAAC;AACtE,MAAM,aAAa,GAAG,IAAA,6CAAyB,EAAC,mBAAmB,CAAC,CAAC;AAErE,SAAgB,wBAAwB,CACvC,eAAuD,EACvD,GAAqB,EACrB,gBAAmF,EACnF,iBAAwB,EACxB,WAA+B,EAC/B,QAAkB;IAElB,KAAK,eAAe,CAAC,OAAO;SAC1B,IAAI,CAAC,KAAK,EAAE,QAA8B,EAAE,EAAE;QAC9C,MAAM,UAAU,GAAI,QAAQ,CAAC,IAAoB,EAAE,UAAyB,CAAC;QAC7E,IAAI,UAAU,EAAE,EAAE,EAAE,CAAC;YACpB,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC7B,MAAM,MAAM,GAAG,MAAM,cAAS,CAAC,GAAG,CAAC,4BAAiB,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YACjF,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;YACjC,MAAM,IAAA,mBAAQ,EAAC,MAAM,CAAC,CAAC;YACvB,gBAAgB,CAAC,IAAI,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,CAAC;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3C,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC7B,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvB,gBAAgB,CAAC,IAAI,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,CAAC;aAAM,CAAC;YAIP,IAAI,IAAI,GAAiC;gBACxC,IAAI,EAAE,QAAQ,CAAC,IAAmB;gBAClC,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,YAAY,EAAE,QAAQ,CAAC,UAAU;aACjC,CAAC;YAEF,IAAI,GAAG,IAAA,iCAAyB,EAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;YAE1D,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC9B,CAAC;QAED,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;IACnC,CAAC,CAAC;SACD,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACtB,cAAS,CAAC,GAAG,CAAC,wBAAa,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1C,cAAS,CAAC,GAAG,CAAC,uBAAM,CAAC,CAAC,KAAK,CAC1B,8CAA8C,WAAW,OAAO,KAAK,CAAC,OAAO,GAAG,EAChF,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,EAAE,CACxC,CAAC;QACF,gBAAgB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,oBAAoB,CACnC,aAAkC,EAClC,iBAAwB,EACxB,iBAAuC,EACvC,gBAA+C,EAC/C,wBAAgC,EAAE,EAClC,eAAwB,EACxB,WAAoB,EACpB,YAA4B;IAG5B,MAAM,kBAAkB,GAAmB;QAC1C;YACC,IAAI,EAAE,iBAAiB;YACvB,IAAI,EAAE;gBACL,IAAI,EAAE,iBAAiB,CAAC,YAAY,IAAI,EAAE;aAC1C;YACD,MAAM,EAAE,IAAI;SACZ;KACD,CAAC;IAEF,gBAAgB,KAAK;QACpB,SAAS,EAAE,EAAE;QACb,UAAU,EAAE;YACX,OAAO,EAAE,EAAE;SACX;QACD,aAAa,EAAE;YACd,WAAW,EAAE,EAAE;YACf,kBAAkB;YAClB,gBAAgB,EAAE,EAAE;SACpB;KACoB,CAAC;IAEvB,IAAI,eAAe,IAAI,gBAAgB,CAAC,SAAS,EAAE,CAAC;QACnD,gBAAgB,CAAC,SAAS,CAAC,eAAe,GAAG,eAAe,CAAC;IAC9D,CAAC;IAED,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAG/B,gBAAgB,CAAC,aAAc,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI;YAC9D,iBAAiB,CAAC,YAAY,IAAI,EAAE,CAAC;IACvC,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAErD,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,OAA6B,CAAC;IAClC,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACpE,IAAI,UAAU,EAAE,CAAC;QAChB,OAAO,GAAG,YAAY,EAAE,OAAO,CAAC;QAChC,gBAAgB,CAAC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;IAC/C,CAAC;IAED,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,CAAC;AACtC,CAAC;AAMM,KAAK,UAAU,cAAc,CACnC,QAAkB,EAClB,WAAyB,EACzB,YAA2B,EAC3B,iBAAwB,EACxB,aAAkC,EAClC,OAA2B,EAC3B,gBAA+C,EAC/C,WAA+B,EAC/B,GAAmB,EACnB,GAAqB,EACrB,gBAGS,EACT,eAAwB;IAGxB,MAAM,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,mBAAmB,CACtD,iBAAiB,CAAC,IAAI,EACtB,iBAAiB,CAAC,WAAW,CAC7B,CAAC;IAEF,MAAM,cAAc,GAAqC;QACxD,YAAY,EAAE,WAAW;KACzB,CAAC;IAEF,MAAM,OAAO,GAAG,IAAI,mDAAuB,CAC1C,QAAQ,EACR,iBAAiB,EACjB,WAAW,EACX,aAAa,EACb,cAAc,CACd,CAAC;IAEF,IAAI,OAAO,GAAwB,SAAS,CAAC;IAC7C,IAAI,CAAC;QACJ,OAAO,GAAG,MAAM,cAAS,CAAC,GAAG,CAAC,oCAAgB,CAAC,CAAC,wBAAwB,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IAC3F,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,IAAI,+BAAa,CAAC,sBAAsB,CAAC,CAAC;IACjD,CAAC;IAGD,MAAM,cAAc,GAAG,MAAM,6BAA6B,CAAC,OAAO,EAAE,CAAC;IAErE,IAAI,WAAW,EAAE,CAAC;QACjB,cAAc,CAAC,WAAW,GAAG,WAAW,CAAC;IAC1C,CAAC;IAED,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,uBAAuB,CAC3E,iBAAiB,EACjB,QAAQ,EACR,GAAG,EACH,WAAW,EACX,aAAa,EACb,cAAc,CACd,CAAC;IAEF,IAAI,CAAC,CAAC,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QAIjG,MAAM,YAAY,GAAG,sBAAsB,YAAY,iBAAiB,CAAC;QACzE,gBAAgB,CAAC,IAAI,8BAAe,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC;QACxD,MAAM,IAAI,2CAAmB,CAAC,YAAY,CAAC,CAAC;IAC7C,CAAC;IAGD,cAAc,CAAC,WAAW,GAAG,GAAG,CAAC;IACjC,cAAc,CAAC,YAAY,GAAG,GAAG,CAAC;IAElC,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,IAAI,qBAAqB,GAAG,EAAE,CAAC;IAC/B,IAAI,CAAC;QAGJ,IAAI,iBAAuC,CAAC;QAE5C,MAAM,gBAAgB,CAAC,GAAG,EAAE,iBAAiB,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;QAGxF,IAAI,iBAAiB,CAAC,IAAI,KAAK,iCAAqB,EAAE,CAAC;YAEtD,MAAM,kBAAkB,GAAmB,EAAE,CAAC;YAC9C,kBAAkB,CAAC,IAAI,CAAC;gBACvB,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE;oBACL,IAAI,EAAE,EAAE;iBACR;gBACD,MAAM,EAAE,IAAI;aACZ,CAAC,CAAC;YACH,gBAAgB;gBACf,gBAAgB;oBACf;wBACA,SAAS,EAAE,EAAE;wBACb,UAAU,EAAE;4BACX,OAAO,EAAE,EAAE;yBACX;wBACD,aAAa,EAAE;4BACd,WAAW,EAAE,EAAE;4BACf,kBAAkB;4BAClB,gBAAgB,EAAE,EAAE;yBACpB;qBACqB,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC;YACJ,iBAAiB,GAAG,MAAM,cAAS,CAAC,GAAG,CAAC,gCAAc,CAAC,CAAC,UAAU,CACjE,QAAQ,EACR,WAAW,EACX,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,gBAAgB,IAAI,IAAI,CACxB,CAAC;YACF,cAAS,CAAC,GAAG,CAAC,uDAAyB,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE;gBAChE,UAAU,EAAE,QAAQ,CAAC,EAAE;gBACvB,IAAI,EAAE,iBAAiB;aACvB,CAAC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YAEd,MAAM,WAAW,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC;gBAC9E,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,SAAS,CAAC;YACb,IAAI,YAAY,GAAG,YAAY,WAAW,wCAAwC,CAAC;YAGnF,IAAI,GAAG,YAAY,iCAAkB,IAAI,GAAG,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;gBAC1E,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC;YAC5B,CAAC;YAED,cAAS,CAAC,GAAG,CAAC,wBAAa,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBACvC,KAAK,EAAE;oBACN,QAAQ,EAAE,iBAAiB,CAAC,IAAI;oBAChC,QAAQ,EAAE,iBAAiB,CAAC,IAAI;oBAChC,WAAW,EAAE,iBAAiB,CAAC,WAAW;oBAC1C,UAAU,EAAE,QAAQ,CAAC,EAAE;iBACvB;aACD,CAAC,CAAC;YAEH,gBAAgB,CAAC,IAAI,8BAAe,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC;YACxD,eAAe,GAAG,IAAI,CAAC;YAGvB,qBAAqB,GAAG;gBACvB,UAAU,EAAE;oBACX,OAAO,EAAE,EAAE;oBACX,gBAAgB,EAAE,iBAAiB,CAAC,IAAI;oBACxC,KAAK,EAAE;wBACN,GAAG,GAAG;wBACN,OAAO,EAAE,GAAG,CAAC,OAAO;wBACpB,KAAK,EAAE,GAAG,CAAC,KAAK;qBAChB;iBACD;aACD,CAAC;YAEF,iBAAiB,GAAG;gBACnB,iBAAiB,EAAE,IAAI;gBAGvB,YAAY,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;aAC9B,CAAC;QACH,CAAC;QAED,MAAM,eAAe,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;QAEzD,IAAI,CAAC,GAAG,CAAC,WAAW,IAAI,eAAe,EAAE,CAAC;YAEzC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,eAAe,CAAC,OAAO,EAAE,EAAE,CAAC;gBACvD,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC5B,CAAC;QACF,CAAC;QAED,IAAI,iBAAiB,CAAC,iBAAiB,KAAK,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAEtE,gBAAgB,CAAC,IAAI,EAAE;gBACtB,iBAAiB,EAAE,IAAI;aACvB,CAAC,CAAC;YACH,eAAe,GAAG,IAAI,CAAC;QACxB,CAAC;QAED,IAAI,iBAAiB,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YAElD,IAAI,iBAAiB,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;gBAErD,IAAI,CAAC,eAAe,EAAE,CAAC;oBACtB,gBAAgB,CAAC,IAAI,EAAE;wBACtB,IAAI,EAAE,iBAAiB,CAAC,eAAe;wBACvC,YAAY;qBACZ,CAAC,CAAC;oBACH,eAAe,GAAG,IAAI,CAAC;gBACxB,CAAC;YACF,CAAC;iBAAM,CAAC;gBAGP,IAAI,CAAC,eAAe,EAAE,CAAC;oBACtB,gBAAgB,CAAC,IAAI,EAAE;wBACtB,IAAI,EAAE;4BACL,OAAO,EAAE,uBAAuB;yBAChC;wBACD,YAAY;qBACZ,CAAC,CAAC;oBACH,eAAe,GAAG,IAAI,CAAC;gBACxB,CAAC;YACF,CAAC;YACD,OAAO;QACR,CAAC;QAID,IAAI,YAAY,KAAK,YAAY,IAAI,CAAC,eAAe,EAAE,CAAC;YACvD,MAAM,YAAY,GAAG,IAAA,yEAAgC,EAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;YACvF,MAAM,eAAe,GAAG,IAAA,uCAAoB,EAAC,YAAY,EAAE,YAAY,EAAE,eAAe,CAAC,CAAC;YAC1F,gBAAgB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YACxC,eAAe,GAAG,IAAI,CAAC;QACxB,CAAC;QAGD,MAAM,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,OAAO,EAAE,GAAG,oBAAoB,CACnF,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,WAAW,EACX,YAAY,CACZ,CAAC;QACF,gBAAgB,GAAG,wBAAwB,CAAC;QAE5C,MAAM,OAAO,GAAkC;YAC9C,aAAa;YACb,aAAa,EAAE,gBAAgB;YAC/B,OAAO;YACP,YAAY;YACZ,OAAO;YACP,SAAS,EAAE,OAAO,EAAE,EAAE;SACtB,CAAC;QAGF,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACtB,OAAO,CAAC,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC;QAC5C,CAAC;QAED,IAAI,eAAmE,CAAC;QACxE,IAAI,YAAY,KAAK,cAAc,EAAE,CAAC;YACrC,eAAe,GAAG,IAAA,oCAAqB,GAAwB,CAAC;YAChE,wBAAwB,CACvB,eAAe,EACf,GAAG,EACH,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,QAAQ,CACR,CAAC;QACH,CAAC;QAED,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;YAClC,cAAS,CAAC,GAAG,CAAC,uBAAM,CAAC,CAAC,KAAK,CAC1B,0BAA0B,QAAQ,CAAC,IAAI,kBAAkB,WAAW,sBAAsB,EAC1F,EAAE,WAAW,EAAE,CACf,CAAC;YAEF,OAAO,CAAC,YAAY,GAAG,GAAG,CAAC;YAC3B,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAChC,eAAe,GAAG,IAAI,CAAC;QACxB,CAAC;QAGD,WAAW,GAAG,MAAM,cAAS,CAAC,GAAG,CAAC,gCAAc,CAAC,CAAC,GAAG,CACpD,OAAO,EACP,IAAI,EACJ,CAAC,eAAe,EAChB,WAAW,EACX,eAAe,CACf,CAAC;QAEF,IAAI,YAAY,KAAK,UAAU,IAAI,CAAC,eAAe,EAAE,CAAC;YACrD,GAAG,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,GAAG,cAAc,CAAC,kBAAkB,IAAI,WAAW,EAAE,EAAE,CAAC,CAAC;YACpF,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;YAClC,eAAe,GAAG,IAAI,CAAC;QACxB,CAAC;QAED,cAAS,CAAC,GAAG,CAAC,uBAAM,CAAC,CAAC,KAAK,CAC1B,kCAAkC,QAAQ,CAAC,IAAI,oCAAoC,WAAW,EAAE,EAChG,EAAE,WAAW,EAAE,CACf,CAAC;QAEF,MAAM,gBAAgB,GAAG,cAAS,CAAC,GAAG,CAAC,oCAAgB,CAAC,CAAC;QAGzD,MAAM,cAAc,GAAG,gBAAgB,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;QAE3E,MAAM,EAAE,eAAe,EAAE,GAAG,gBAAgB,CAAC;QAC7C,IAAI,eAAe,EAAE,CAAC;YAErB,KAAK,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC7B,MAAM,WAAW,GAAG,cAAS,CAAC,GAAG,CAAC,0BAAW,CAAC,CAAC;gBAC/C,KAAK,WAAW,CAAC,cAAc,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YAC9D,CAAC,CAAC,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,eAAe,EAAE,CAAC;YACtB,cAAc;iBACZ,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;gBACvB,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC3B,IAAI,CAAC,eAAe,EAAE,CAAC;wBACtB,gBAAgB,CAAC,IAAI,EAAE;4BACtB,IAAI,EAAE;gCACL,OAAO,EAAE,yDAAyD;6BAClE;4BACD,YAAY;yBACZ,CAAC,CAAC;wBACH,eAAe,GAAG,IAAI,CAAC;oBACxB,CAAC;oBACD,OAAO,SAAS,CAAC;gBAClB,CAAC;gBAED,IAAI,OAAO,EAAE,CAAC;oBACb,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;gBAC3C,CAAC;gBAED,MAAM,gBAAgB,GAAG,eAAe,CAAC,2BAA2B,CAAC,OAAO,CAAC,CAAC;gBAC9E,IAAI,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,gBAAgB,EAAE,KAAK,KAAK,SAAS,EAAE,CAAC;oBAC5E,IAAI,CAAC,eAAe,EAAE,CAAC;wBACtB,gBAAgB,CAAC,IAAI,EAAE;4BACtB,IAAI,EAAE;gCACL,OAAO,EAAE,mBAAmB;6BAC5B;4BACD,YAAY,EAAE,GAAG;yBACjB,CAAC,CAAC;oBACJ,CAAC;oBACD,eAAe,GAAG,IAAI,CAAC;oBACvB,OAAO,OAAO,CAAC;gBAChB,CAAC;gBAGD,IAAI,YAAY,KAAK,cAAc,IAAI,eAAe,EAAE,CAAC;oBACxD,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;oBACpD,OAAO,SAAS,CAAC;gBAClB,CAAC;gBAED,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;oBACpC,IAAI,CAAC,eAAe,EAAE,CAAC;wBACtB,gBAAgB,CAAC,IAAI,EAAE;4BACtB,IAAI,EAAE;gCACL,OAAO,EACN,0EAA0E;6BAC3E;4BACD,YAAY;yBACZ,CAAC,CAAC;oBACJ,CAAC;oBACD,eAAe,GAAG,IAAI,CAAC;oBACvB,OAAO,OAAO,CAAC;gBAChB,CAAC;gBAED,IAAI,eAAe,EAAE,CAAC;oBACrB,OAAO,OAAO,CAAC;gBAChB,CAAC;gBAED,MAAM,MAAM,GAAG,MAAM,IAAA,qEAA8B,EAClD,OAAO,EACP,YAAmC,EACnC,gBAAgB,CAChB,CAAC;gBACF,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;oBAChB,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;oBACnC,eAAe,GAAG,IAAI,CAAC;oBACvB,OAAO,OAAO,CAAC;gBAChB,CAAC;gBAED,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC;gBAE/B,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;oBAC1B,eAAe,CAAC,GAAG,CAAC,cAAc,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;gBAC3D,CAAC;gBAED,gBAAgB,CACf,IAAI,EACJ,QAAQ,CAAC,IAAI,KAAK,QAAQ;oBACzB,CAAC,CAAC,IAAA,uCAAoB,EAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,eAAe,CAAC;oBACpE,CAAC,CAAC,IAAA,uCAAoB,EAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,EAAE,eAAe,CAAC,CACvE,CAAC;gBACF,eAAe,GAAG,IAAI,CAAC;gBACvB,OAAO,OAAO,CAAC;YAChB,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;gBACZ,IAAI,CAAC,eAAe,EAAE,CAAC;oBACtB,gBAAgB,CACf,IAAI,+BAAgB,CAAC,4CAA4C,EAAE;wBAClE,KAAK,EAAE,CAAC;qBACR,CAAC,EACF,EAAE,CACF,CAAC;gBACH,CAAC;gBAED,MAAM,mBAAmB,GAAG,IAAI,2CAAmB,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;gBAClE,IAAI,CAAC,YAAY,sCAAuB;oBAAE,mBAAmB,CAAC,KAAK,GAAG,SAAS,CAAC;gBAChF,MAAM,mBAAmB,CAAC;YAC3B,CAAC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,WAAW,CAAC;IACpB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,MAAM,KAAK,GACV,CAAC,YAAY,+CAAyB;YACrC,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,IAAI,+BAAgB,CAAC,4CAA4C,EAAE;gBACnE,KAAK,EAAE,CAAC;aACR,CAAC,CAAC;QACN,IAAI,eAAe;YAAE,MAAM,KAAK,CAAC;QACjC,gBAAgB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC5B,OAAO;IACR,CAAC;AACF,CAAC;AAKD,SAAS,uBAAuB,CAC/B,iBAAwB,EACxB,QAAkB,EAClB,GAAmB,EACnB,WAAyB,EACzB,aAAkC,EAClC,cAAgD;IAGhD,MAAM,YAAY,GACjB,sBAAsB,CAAC,iBAAiB,EAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC;QAC9D,QAAQ,CAAC,UAAU,CAAC,uBAAuB,CAC3C,iBAAiB,EACjB,WAAW,CAAC,kBAAkB,CAAC,YAAY,EAC3C,aAAa,EACb,cAAc,EACd,SAAS,EACT,YAAY,CACY,CAAC;IAE3B,MAAM,YAAY,GAAG,QAAQ,CAAC,UAAU,CAAC,uBAAuB,CAC/D,iBAAiB,EACjB,WAAW,CAAC,kBAAkB,CAAC,YAAsB,EACrD,aAAa,EACb,cAAc,EACd,SAAS,EACT,GAAG,CACO,CAAC;IAKZ,MAAM,YAAY,GAAG,QAAQ,CAAC,UAAU,CAAC,wBAAwB,CAChE,iBAAiB,EACjB,WAAW,CAAC,kBAAkB,CAAC,YAAY,EAC3C,aAAa,EACb,cAAc,EACd,SAAS,EACT,gBAAgB,CAC4B,CAAC;IAE9C,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC;AACrD,CAAC;AAMD,KAAK,UAAU,gBAAgB,CAC9B,GAAmB,EACnB,iBAAwB,EACxB,QAAkB,EAClB,aAAkC,EAClC,cAAgD;IAEhD,IAAI,UAA6D,CAAC;IAElE,MAAM,WAAW,GAAG,iBAAiB,CAAC,WAAW,CAAC;IAClD,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;QAEvB,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,uBAAuB,CACvD,iBAAiB,EACjB,0CAA0C,EAC1C,aAAa,EACb,cAAc,EACd,SAAS,EACT,KAAK,CACL,CAAC;IACH,CAAC;IAID,IAAI,UAAU,EAAE,CAAC;QAChB,OAAO;IACR,CAAC;IAED,MAAM,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC;IAC5B,IAAI,WAAW,KAAK,qBAAqB,EAAE,CAAC;QAC3C,GAAG,CAAC,IAAI,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;SAAM,CAAC;QACP,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YACrB,IACC,WAAW,EAAE,UAAU,CAAC,kBAAkB,CAAC;gBAC3C,WAAW,EAAE,UAAU,CAAC,YAAY,CAAC;gBACrC,WAAW,EAAE,UAAU,CAAC,mCAAmC,CAAC;gBAC5D,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC;gBAC7B,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,EAC5B,CAAC;gBACF,MAAM,IAAA,uBAAS,EAAC,GAAG,CAAC,CAAC;YACtB,CAAC;QACF,CAAC;aAAM,CAAC;YACP,MAAM,IAAA,uBAAS,EAAC,GAAG,CAAC,CAAC;QACtB,CAAC;IACF,CAAC;AACF,CAAC;AAKD,SAAS,uBAAuB,CAAC,OAAgC;IAChE,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE1C,IAAI,OAAO,CAAC,WAAW,CAAC,kBAAkB,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QAC1E,OAAO,OAAO,CAAC;IAChB,CAAC;IAED,MAAM,gBAAgB,GACrB,OAAO,CAAC,2CAA2C,CAClD,iBAAiB,CACjB,CAAC;IACH,IAAI,gBAAgB,EAAE,OAAO,KAAK,SAAS,EAAE,CAAC;QAC7C,OAAO,OAAO,CAAC;IAChB,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACpD,CAAC;IAED,OAAO,OAAO,CAAC;AAChB,CAAC"}
@@ -0,0 +1,16 @@
1
+ import type { ITaskData, Result, WebhookResponseData } from 'n8n-workflow';
2
+ import { OperationalError } from 'n8n-workflow';
3
+ import type { Readable } from 'node:stream';
4
+ import type { WebhookExecutionContext } from '../webhooks/webhook-execution-context';
5
+ type StaticResponse = {
6
+ type: 'static';
7
+ body: unknown;
8
+ contentType: string | undefined;
9
+ };
10
+ type StreamResponse = {
11
+ type: 'stream';
12
+ stream: Readable;
13
+ contentType: string | undefined;
14
+ };
15
+ export declare function extractWebhookLastNodeResponse(context: WebhookExecutionContext, responseDataType: WebhookResponseData | undefined, lastNodeTaskData: ITaskData): Promise<Result<StaticResponse | StreamResponse, OperationalError>>;
16
+ export {};
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.extractWebhookLastNodeResponse = extractWebhookLastNodeResponse;
7
+ const di_1 = require("@n8n/di");
8
+ const get_1 = __importDefault(require("lodash/get"));
9
+ const n8n_core_1 = require("n8n-core");
10
+ const n8n_workflow_1 = require("n8n-workflow");
11
+ async function extractWebhookLastNodeResponse(context, responseDataType, lastNodeTaskData) {
12
+ if (responseDataType === 'firstEntryJson') {
13
+ return extractFirstEntryJsonFromTaskData(context, lastNodeTaskData);
14
+ }
15
+ if (responseDataType === 'firstEntryBinary') {
16
+ return await extractFirstEntryBinaryFromTaskData(context, lastNodeTaskData);
17
+ }
18
+ if (responseDataType === 'noData') {
19
+ return (0, n8n_workflow_1.createResultOk)({
20
+ type: 'static',
21
+ body: undefined,
22
+ contentType: undefined,
23
+ });
24
+ }
25
+ return extractAllEntriesJsonFromTaskData(lastNodeTaskData);
26
+ }
27
+ function extractFirstEntryJsonFromTaskData(context, lastNodeTaskData) {
28
+ if (lastNodeTaskData.data.main[0][0] === undefined) {
29
+ return (0, n8n_workflow_1.createResultError)(new n8n_workflow_1.OperationalError('No item to return was found'));
30
+ }
31
+ let lastNodeFirstJsonItem = lastNodeTaskData.data.main[0][0].json;
32
+ const responsePropertyName = context.evaluateSimpleWebhookDescriptionExpression('responsePropertyName');
33
+ if (responsePropertyName !== undefined) {
34
+ lastNodeFirstJsonItem = (0, get_1.default)(lastNodeFirstJsonItem, responsePropertyName);
35
+ }
36
+ const responseContentType = context.evaluateSimpleWebhookDescriptionExpression('responseContentType');
37
+ return (0, n8n_workflow_1.createResultOk)({
38
+ type: 'static',
39
+ body: lastNodeFirstJsonItem,
40
+ contentType: responseContentType,
41
+ });
42
+ }
43
+ async function extractFirstEntryBinaryFromTaskData(context, lastNodeTaskData) {
44
+ const lastNodeFirstJsonItem = lastNodeTaskData.data.main[0][0];
45
+ if (lastNodeFirstJsonItem === undefined) {
46
+ return (0, n8n_workflow_1.createResultError)(new n8n_workflow_1.OperationalError('No item was found to return'));
47
+ }
48
+ if (lastNodeFirstJsonItem.binary === undefined) {
49
+ return (0, n8n_workflow_1.createResultError)(new n8n_workflow_1.OperationalError('No binary data was found to return'));
50
+ }
51
+ const responseBinaryPropertyName = context.evaluateSimpleWebhookDescriptionExpression('responseBinaryPropertyName', undefined, 'data');
52
+ if (responseBinaryPropertyName === undefined) {
53
+ return (0, n8n_workflow_1.createResultError)(new n8n_workflow_1.OperationalError("No 'responseBinaryPropertyName' is set"));
54
+ }
55
+ else if (typeof responseBinaryPropertyName !== 'string') {
56
+ return (0, n8n_workflow_1.createResultError)(new n8n_workflow_1.OperationalError("'responseBinaryPropertyName' is not a string"));
57
+ }
58
+ const binaryData = lastNodeFirstJsonItem.binary[responseBinaryPropertyName];
59
+ if (binaryData === undefined) {
60
+ return (0, n8n_workflow_1.createResultError)(new n8n_workflow_1.OperationalError(`The binary property '${responseBinaryPropertyName}' which should be returned does not exist`));
61
+ }
62
+ if (binaryData.id) {
63
+ const stream = await di_1.Container.get(n8n_core_1.BinaryDataService).getAsStream(binaryData.id);
64
+ return (0, n8n_workflow_1.createResultOk)({
65
+ type: 'stream',
66
+ stream,
67
+ contentType: binaryData.mimeType,
68
+ });
69
+ }
70
+ else {
71
+ return (0, n8n_workflow_1.createResultOk)({
72
+ type: 'static',
73
+ body: Buffer.from(binaryData.data, n8n_workflow_1.BINARY_ENCODING),
74
+ contentType: binaryData.mimeType,
75
+ });
76
+ }
77
+ }
78
+ function extractAllEntriesJsonFromTaskData(lastNodeTaskData) {
79
+ const data = [];
80
+ for (const entry of lastNodeTaskData.data.main[0]) {
81
+ data.push(entry.json);
82
+ }
83
+ return (0, n8n_workflow_1.createResultOk)({
84
+ type: 'static',
85
+ body: data,
86
+ contentType: undefined,
87
+ });
88
+ }
89
+ //# sourceMappingURL=webhook-last-node-response-extractor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhook-last-node-response-extractor.js","sourceRoot":"","sources":["../../src/webhooks/webhook-last-node-response-extractor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { IWebhookResponseData, WebhookResponseData } from 'n8n-workflow';
2
+ export declare function extractWebhookOnReceivedResponse(responseData: Extract<WebhookResponseData, 'noData'> | string | undefined, webhookResultData: IWebhookResponseData): unknown;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractWebhookOnReceivedResponse = extractWebhookOnReceivedResponse;
4
+ function extractWebhookOnReceivedResponse(responseData, webhookResultData) {
5
+ if (responseData === 'noData') {
6
+ return undefined;
7
+ }
8
+ if (responseData) {
9
+ return responseData;
10
+ }
11
+ if (webhookResultData.webhookResponse !== undefined) {
12
+ return webhookResultData.webhookResponse;
13
+ }
14
+ return { message: 'Workflow was started' };
15
+ }
16
+ //# sourceMappingURL=webhook-on-received-response-extractor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhook-on-received-response-extractor.js","sourceRoot":"","sources":["../../src/webhooks/webhook-on-received-response-extractor.ts"],"names":[],"mappings":";;AAYA,4EAoBC;AApBD,SAAgB,gCAAgC,CAE/C,YAAyE,EACzE,iBAAuC;IAGvC,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,IAAI,YAAY,EAAE,CAAC;QAClB,OAAO,YAAY,CAAC;IACrB,CAAC;IAED,IAAI,iBAAiB,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QAErD,OAAO,iBAAiB,CAAC,eAA0B,CAAC;IACrD,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,sBAAsB,EAAE,CAAC;AAC5C,CAAC"}