@marcmeese/n8n-nodes-communityapi-ai-client 0.3.8

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 (92) hide show
  1. package/LICENSE.md +19 -0
  2. package/README.md +290 -0
  3. package/dist/config/endpoints.d.ts +84 -0
  4. package/dist/config/endpoints.js +162 -0
  5. package/dist/config/endpoints.js.map +1 -0
  6. package/dist/credentials/CommunityAPIAIServer.credentials.d.ts +9 -0
  7. package/dist/credentials/CommunityAPIAIServer.credentials.js +36 -0
  8. package/dist/credentials/CommunityAPIAIServer.credentials.js.map +1 -0
  9. package/dist/credentials/marcmeeselogo.png +0 -0
  10. package/dist/index.d.ts +19 -0
  11. package/dist/index.js +38 -0
  12. package/dist/index.js.map +1 -0
  13. package/dist/nodes/CommunityAPIAIServer/AdvancedVoice/AdvancedVoice.node.d.ts +6 -0
  14. package/dist/nodes/CommunityAPIAIServer/AdvancedVoice/AdvancedVoice.node.js +191 -0
  15. package/dist/nodes/CommunityAPIAIServer/AdvancedVoice/AdvancedVoice.node.js.map +1 -0
  16. package/dist/nodes/CommunityAPIAIServer/AdvancedVoice/marcmeeselogo.png +0 -0
  17. package/dist/nodes/CommunityAPIAIServer/AudioDatasetCreator/AudioDatasetCreator.node.d.ts +6 -0
  18. package/dist/nodes/CommunityAPIAIServer/AudioDatasetCreator/AudioDatasetCreator.node.js +186 -0
  19. package/dist/nodes/CommunityAPIAIServer/AudioDatasetCreator/AudioDatasetCreator.node.js.map +1 -0
  20. package/dist/nodes/CommunityAPIAIServer/AudioDatasetCreator/marcmeeselogo.png +0 -0
  21. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageModifyFaceswapDetailer/ComfyuiImageModifyFaceswapDetailer.node.d.ts +6 -0
  22. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageModifyFaceswapDetailer/ComfyuiImageModifyFaceswapDetailer.node.js +142 -0
  23. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageModifyFaceswapDetailer/ComfyuiImageModifyFaceswapDetailer.node.js.map +1 -0
  24. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageModifyFaceswapDetailer/marcmeeselogo.png +0 -0
  25. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageUpscaleFluxMagnific/ComfyuiImageUpscaleFluxMagnific.node.d.ts +6 -0
  26. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageUpscaleFluxMagnific/ComfyuiImageUpscaleFluxMagnific.node.js +160 -0
  27. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageUpscaleFluxMagnific/ComfyuiImageUpscaleFluxMagnific.node.js.map +1 -0
  28. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageUpscaleFluxMagnific/marcmeeselogo.png +0 -0
  29. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageUpscaleSdxlClarity/ComfyuiImageUpscaleSdxlClarity.node.d.ts +6 -0
  30. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageUpscaleSdxlClarity/ComfyuiImageUpscaleSdxlClarity.node.js +160 -0
  31. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageUpscaleSdxlClarity/ComfyuiImageUpscaleSdxlClarity.node.js.map +1 -0
  32. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageUpscaleSdxlClarity/marcmeeselogo.png +0 -0
  33. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageUpscaleSeedvr2/ComfyuiImageUpscaleSeedvr2.node.d.ts +6 -0
  34. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageUpscaleSeedvr2/ComfyuiImageUpscaleSeedvr2.node.js +170 -0
  35. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageUpscaleSeedvr2/ComfyuiImageUpscaleSeedvr2.node.js.map +1 -0
  36. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageUpscaleSeedvr2/marcmeeselogo.png +0 -0
  37. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageUpscaleStablesr/ComfyuiImageUpscaleStablesr.node.d.ts +6 -0
  38. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageUpscaleStablesr/ComfyuiImageUpscaleStablesr.node.js +170 -0
  39. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageUpscaleStablesr/ComfyuiImageUpscaleStablesr.node.js.map +1 -0
  40. package/dist/nodes/CommunityAPIAIServer/ComfyuiImageUpscaleStablesr/marcmeeselogo.png +0 -0
  41. package/dist/nodes/CommunityAPIAIServer/DownloadJob/DownloadJob.node.d.ts +6 -0
  42. package/dist/nodes/CommunityAPIAIServer/DownloadJob/DownloadJob.node.js +147 -0
  43. package/dist/nodes/CommunityAPIAIServer/DownloadJob/DownloadJob.node.js.map +1 -0
  44. package/dist/nodes/CommunityAPIAIServer/DownloadJob/marcmeeselogo.png +0 -0
  45. package/dist/nodes/CommunityAPIAIServer/ElevenLabsSTS/ElevenLabsSTS.node.d.ts +6 -0
  46. package/dist/nodes/CommunityAPIAIServer/ElevenLabsSTS/ElevenLabsSTS.node.js +266 -0
  47. package/dist/nodes/CommunityAPIAIServer/ElevenLabsSTS/ElevenLabsSTS.node.js.map +1 -0
  48. package/dist/nodes/CommunityAPIAIServer/ElevenLabsSTS/marcmeeselogo.png +0 -0
  49. package/dist/nodes/CommunityAPIAIServer/ElevenLabsTTS/ElevenLabsTTS.node.d.ts +6 -0
  50. package/dist/nodes/CommunityAPIAIServer/ElevenLabsTTS/ElevenLabsTTS.node.js +285 -0
  51. package/dist/nodes/CommunityAPIAIServer/ElevenLabsTTS/ElevenLabsTTS.node.js.map +1 -0
  52. package/dist/nodes/CommunityAPIAIServer/ElevenLabsTTS/marcmeeselogo.png +0 -0
  53. package/dist/nodes/CommunityAPIAIServer/GetJob/GetJob.node.d.ts +6 -0
  54. package/dist/nodes/CommunityAPIAIServer/GetJob/GetJob.node.js +51 -0
  55. package/dist/nodes/CommunityAPIAIServer/GetJob/GetJob.node.js.map +1 -0
  56. package/dist/nodes/CommunityAPIAIServer/GetJob/marcmeeselogo.png +0 -0
  57. package/dist/nodes/CommunityAPIAIServer/GetUserInfo/GetUserInfo.node.d.ts +6 -0
  58. package/dist/nodes/CommunityAPIAIServer/GetUserInfo/GetUserInfo.node.js +41 -0
  59. package/dist/nodes/CommunityAPIAIServer/GetUserInfo/GetUserInfo.node.js.map +1 -0
  60. package/dist/nodes/CommunityAPIAIServer/GetUserInfo/marcmeeselogo.png +0 -0
  61. package/dist/nodes/CommunityAPIAIServer/GptVision/marcmeeselogo.png +0 -0
  62. package/dist/nodes/CommunityAPIAIServer/MultimediaTranscriber/MultimediaTranscriber.node.d.ts +6 -0
  63. package/dist/nodes/CommunityAPIAIServer/MultimediaTranscriber/MultimediaTranscriber.node.js +157 -0
  64. package/dist/nodes/CommunityAPIAIServer/MultimediaTranscriber/MultimediaTranscriber.node.js.map +1 -0
  65. package/dist/nodes/CommunityAPIAIServer/MultimediaTranscriber/marcmeeselogo.png +0 -0
  66. package/dist/nodes/CommunityAPIAIServer/Soundstorm/Soundstorm.node.d.ts +6 -0
  67. package/dist/nodes/CommunityAPIAIServer/Soundstorm/Soundstorm.node.js +191 -0
  68. package/dist/nodes/CommunityAPIAIServer/Soundstorm/Soundstorm.node.js.map +1 -0
  69. package/dist/nodes/CommunityAPIAIServer/Soundstorm/marcmeeselogo.png +0 -0
  70. package/dist/nodes/CommunityAPIAIServer/TopazVideoUpscale/TopazVideoUpscale.node.d.ts +6 -0
  71. package/dist/nodes/CommunityAPIAIServer/TopazVideoUpscale/TopazVideoUpscale.node.js +163 -0
  72. package/dist/nodes/CommunityAPIAIServer/TopazVideoUpscale/TopazVideoUpscale.node.js.map +1 -0
  73. package/dist/nodes/CommunityAPIAIServer/TopazVideoUpscale/marcmeeselogo.png +0 -0
  74. package/dist/nodes/CommunityAPIAIServer/UploadFile/UploadFile.node.d.ts +6 -0
  75. package/dist/nodes/CommunityAPIAIServer/UploadFile/UploadFile.node.js +115 -0
  76. package/dist/nodes/CommunityAPIAIServer/UploadFile/UploadFile.node.js.map +1 -0
  77. package/dist/nodes/CommunityAPIAIServer/UploadFile/marcmeeselogo.png +0 -0
  78. package/dist/nodes/CommunityAPIAIServer/UploadFiles/UploadFiles.node.d.ts +6 -0
  79. package/dist/nodes/CommunityAPIAIServer/UploadFiles/UploadFiles.node.js +132 -0
  80. package/dist/nodes/CommunityAPIAIServer/UploadFiles/UploadFiles.node.js.map +1 -0
  81. package/dist/nodes/CommunityAPIAIServer/UploadFiles/marcmeeselogo.png +0 -0
  82. package/dist/nodes/CommunityAPIAIServer/WebpageScraper/WebpageScraper.node.d.ts +6 -0
  83. package/dist/nodes/CommunityAPIAIServer/WebpageScraper/WebpageScraper.node.js +147 -0
  84. package/dist/nodes/CommunityAPIAIServer/WebpageScraper/WebpageScraper.node.js.map +1 -0
  85. package/dist/nodes/CommunityAPIAIServer/WebpageScraper/marcmeeselogo.png +0 -0
  86. package/dist/utils/fileUploads.d.ts +37 -0
  87. package/dist/utils/fileUploads.js +166 -0
  88. package/dist/utils/fileUploads.js.map +1 -0
  89. package/dist/utils/inputProcessing.d.ts +29 -0
  90. package/dist/utils/inputProcessing.js +147 -0
  91. package/dist/utils/inputProcessing.js.map +1 -0
  92. package/package.json +69 -0
@@ -0,0 +1,170 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ComfyuiImageUpscaleStablesr = void 0;
4
+ const endpoints_1 = require("../../../config/endpoints");
5
+ const inputProcessing_1 = require("../../../utils/inputProcessing");
6
+ class ComfyuiImageUpscaleStablesr {
7
+ constructor() {
8
+ this.description = {
9
+ displayName: '(AI) Upscale StableSR',
10
+ name: 'aiToolsComfyuiImageUpscaleStablesr',
11
+ icon: 'file:marcmeeselogo.png',
12
+ group: ['transform'],
13
+ version: 1,
14
+ description: 'Upscale images using ComfyUI with StableSR style',
15
+ defaults: { name: 'ComfyuiImageUpscaleStablesr' },
16
+ inputs: ['main'],
17
+ outputs: ['main'],
18
+ credentials: [
19
+ {
20
+ name: 'CommunityAPIAIServer',
21
+ required: true,
22
+ },
23
+ ],
24
+ properties: [
25
+ {
26
+ displayName: 'Input Image Paths',
27
+ name: 'input_images',
28
+ type: 'string',
29
+ typeOptions: {
30
+ multipleValues: true,
31
+ },
32
+ required: true,
33
+ default: [],
34
+ description: (0, inputProcessing_1.getInputDescription)('Bild', true),
35
+ },
36
+ {
37
+ displayName: 'Width',
38
+ name: 'width',
39
+ type: 'number',
40
+ required: false,
41
+ default: -1,
42
+ description: 'Zielbreite in Pixel. Verwenden Sie -1, um das ursprüngliche Seitenverhältnis beizubehalten (Höhe ist erforderlich, wenn -1 verwendet wird)',
43
+ },
44
+ {
45
+ displayName: 'Height',
46
+ name: 'height',
47
+ type: 'number',
48
+ required: false,
49
+ default: -1,
50
+ description: 'Zielhöhe in Pixel. Verwenden Sie -1, um das ursprüngliche Seitenverhältnis beizubehalten (Breite ist erforderlich, wenn -1 verwendet wird)',
51
+ },
52
+ {
53
+ displayName: 'Crop',
54
+ name: 'crop',
55
+ type: 'boolean',
56
+ required: false,
57
+ default: true,
58
+ description: 'Das Bild zuschneiden, anstatt es zu strecken oder zu komprimieren, wenn Breite und Höhe festgelegt sind.',
59
+ },
60
+ {
61
+ displayName: 'Profile',
62
+ name: 'profile',
63
+ type: 'string',
64
+ required: false,
65
+ default: 'soft',
66
+ description: 'Das Profil, das für die Bildbearbeitung verwendet werden soll.',
67
+ },
68
+ {
69
+ displayName: 'Callback URL',
70
+ name: 'callback_url',
71
+ type: 'string',
72
+ required: false,
73
+ default: '',
74
+ description: 'Eine optionale URL, die aufgerufen wird, wenn der Job abgeschlossen ist',
75
+ typeOptions: {
76
+ alwaysOpenEditWindow: true,
77
+ },
78
+ },
79
+ {
80
+ displayName: 'Callback Data',
81
+ name: 'callback_payload',
82
+ type: 'fixedCollection',
83
+ placeholder: 'Add Callback Data',
84
+ description: 'Custom data that will be returned with the job completion notification',
85
+ default: {},
86
+ typeOptions: {
87
+ multipleValues: true,
88
+ },
89
+ options: [
90
+ {
91
+ displayName: 'Parameters',
92
+ name: 'parameters',
93
+ values: [
94
+ {
95
+ displayName: 'Key',
96
+ name: 'key',
97
+ type: 'string',
98
+ default: '',
99
+ description: 'Parameter key',
100
+ required: true,
101
+ },
102
+ {
103
+ displayName: 'Value',
104
+ name: 'value',
105
+ type: 'string',
106
+ default: '',
107
+ description: 'Parameter value (can be mapped from previous nodes)',
108
+ required: true,
109
+ },
110
+ ],
111
+ }
112
+ ]
113
+ },
114
+ ],
115
+ };
116
+ }
117
+ async execute() {
118
+ const items = this.getInputData();
119
+ const returnData = [];
120
+ for (let i = 0; i < items.length; i++) {
121
+ const inputImagePaths = this.getNodeParameter('input_images', i);
122
+ const width = this.getNodeParameter('width', i);
123
+ const height = this.getNodeParameter('height', i);
124
+ const crop = this.getNodeParameter('crop', i);
125
+ const profile = this.getNodeParameter('profile', i);
126
+ const callbackUrl = this.getNodeParameter('callback_url', i);
127
+ const callbackPayloadRaw = this.getNodeParameter('callback_payload', i);
128
+ const validExtensions = [...endpoints_1.SUPPORTED_FORMATS.IMAGE];
129
+ // Eingabe intelligent verarbeiten mit inputProcessing Utils
130
+ const processedInputImagePaths = await (0, inputProcessing_1.processMediaInputs)(this, inputImagePaths, validExtensions);
131
+ // Debug-Informationen loggen
132
+ (0, inputProcessing_1.logInputsProcessing)(inputImagePaths, processedInputImagePaths);
133
+ // Job erstellen mit file_id
134
+ const formData = {
135
+ input_images: processedInputImagePaths,
136
+ width: width,
137
+ height: height,
138
+ crop: crop,
139
+ profile: profile,
140
+ };
141
+ if (callbackUrl) {
142
+ formData['callback_url'] = callbackUrl;
143
+ }
144
+ // Callback Payload von fixedCollection in JSON umwandeln
145
+ if (callbackPayloadRaw && callbackPayloadRaw.parameters) {
146
+ const callbackPayload = {};
147
+ // Jedes Key-Value Paar aus der fixedCollection in ein Objekt umwandeln
148
+ for (const param of callbackPayloadRaw.parameters) {
149
+ if (param.key && param.value !== undefined) {
150
+ callbackPayload[param.key] = param.value;
151
+ }
152
+ }
153
+ // Nur hinzufügen wenn es tatsächlich Daten gibt
154
+ if (Object.keys(callbackPayload).length > 0) {
155
+ formData['callback_payload'] = JSON.stringify(callbackPayload);
156
+ }
157
+ }
158
+ const response = await this.helpers.requestWithAuthentication.call(this, 'CommunityAPIAIServer', {
159
+ method: 'POST',
160
+ url: endpoints_1.EndpointBuilder.getComfyuiImageUpscaleStablesrUrl(),
161
+ form: formData,
162
+ json: true
163
+ });
164
+ returnData.push({ json: response });
165
+ }
166
+ return this.prepareOutputData(returnData);
167
+ }
168
+ }
169
+ exports.ComfyuiImageUpscaleStablesr = ComfyuiImageUpscaleStablesr;
170
+ //# sourceMappingURL=ComfyuiImageUpscaleStablesr.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ComfyuiImageUpscaleStablesr.node.js","sourceRoot":"","sources":["../../../../src/nodes/CommunityAPIAIServer/ComfyuiImageUpscaleStablesr/ComfyuiImageUpscaleStablesr.node.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { IExecuteFunctions } from 'n8n-workflow';
2
+ import { INodeExecutionData, INodeType, INodeTypeDescription } from 'n8n-workflow';
3
+ export declare class DownloadJob implements INodeType {
4
+ description: INodeTypeDescription;
5
+ execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
6
+ }
@@ -0,0 +1,147 @@
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.DownloadJob = void 0;
37
+ const endpoints_1 = require("../../../config/endpoints");
38
+ const https = __importStar(require("https"));
39
+ const fs = __importStar(require("fs"));
40
+ const path = __importStar(require("path"));
41
+ async function downloadFile(url, destPath) {
42
+ return new Promise((resolve, reject) => {
43
+ const file = fs.createWriteStream(destPath);
44
+ https.get(url, (response) => {
45
+ if (response.statusCode !== 200) {
46
+ file.close();
47
+ fs.unlink(destPath, () => { }); // Cleanup bei Fehler
48
+ reject(new Error(`Download failed with status code ${response.statusCode}`));
49
+ return;
50
+ }
51
+ response.pipe(file);
52
+ file.on('finish', () => {
53
+ file.close();
54
+ resolve();
55
+ });
56
+ file.on('error', (err) => {
57
+ file.close();
58
+ fs.unlink(destPath, () => { }); // Cleanup bei Fehler
59
+ reject(err);
60
+ });
61
+ }).on('error', (err) => {
62
+ file.close();
63
+ fs.unlink(destPath, () => { }); // Cleanup bei Fehler
64
+ reject(err);
65
+ });
66
+ });
67
+ }
68
+ class DownloadJob {
69
+ constructor() {
70
+ this.description = {
71
+ displayName: '(AI) Download Job',
72
+ name: 'communityAPIAIDownloadJob',
73
+ icon: 'file:marcmeeselogo.png', // Fix: Icon korrigiert
74
+ group: ['transform'],
75
+ version: 1,
76
+ description: 'Lädt die Dateien eines abgeschlossenen AI Jobs herunter',
77
+ defaults: { name: 'Download Job' },
78
+ inputs: ['main'],
79
+ outputs: ['main'],
80
+ credentials: [
81
+ {
82
+ name: 'CommunityAPIAIServer',
83
+ required: true,
84
+ },
85
+ ],
86
+ properties: [
87
+ {
88
+ displayName: 'Job ID',
89
+ name: 'jobId',
90
+ type: 'string',
91
+ required: true,
92
+ default: '',
93
+ description: 'ID des Jobs, dessen Ergebnisse heruntergeladen werden sollen',
94
+ },
95
+ {
96
+ displayName: 'Output Folder',
97
+ name: 'outputFolder',
98
+ type: 'string',
99
+ required: true,
100
+ default: '/data/',
101
+ description: 'Zielordner für die gespeicherten Dateien',
102
+ },
103
+ ],
104
+ };
105
+ }
106
+ async execute() {
107
+ const items = this.getInputData();
108
+ const returnData = [];
109
+ for (let i = 0; i < items.length; i++) {
110
+ const jobId = this.getNodeParameter('jobId', i);
111
+ const outputFolder = this.getNodeParameter('outputFolder', i);
112
+ // Stelle sicher, dass Zielordner existiert
113
+ fs.mkdirSync(outputFolder, { recursive: true });
114
+ // Hole Job-Details
115
+ const jobResponse = await this.helpers.requestWithAuthentication.call(this, 'CommunityAPIAIServer', {
116
+ url: endpoints_1.EndpointBuilder.getJobDetailsUrl(jobId),
117
+ method: 'GET',
118
+ json: true,
119
+ });
120
+ if (!jobResponse || jobResponse.state !== 'DONE') {
121
+ throw new Error(`Job ${jobId} ist nicht abgeschlossen (aktueller Status: ${jobResponse.state})`);
122
+ }
123
+ const results = jobResponse.results || [];
124
+ if (results.length === 0) {
125
+ throw new Error(`Job ${jobId} hat keine herunterladbaren Ergebnisse.`);
126
+ }
127
+ const savedFiles = [];
128
+ for (let j = 0; j < results.length; j++) {
129
+ const presigned_url = results[j].presigned_url;
130
+ const source_filename = results[j].source_filename;
131
+ const fullPath = path.join(outputFolder, source_filename);
132
+ await downloadFile(presigned_url, fullPath);
133
+ savedFiles.push(fullPath);
134
+ }
135
+ // Ergebnis für n8n zusammenbauen
136
+ returnData.push({
137
+ json: {
138
+ jobId,
139
+ savedFiles,
140
+ },
141
+ });
142
+ }
143
+ return this.prepareOutputData(returnData);
144
+ }
145
+ }
146
+ exports.DownloadJob = DownloadJob;
147
+ //# sourceMappingURL=DownloadJob.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DownloadJob.node.js","sourceRoot":"","sources":["../../../../src/nodes/CommunityAPIAIServer/DownloadJob/DownloadJob.node.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,yDAA4D;AAE5D,6CAA+B;AAC/B,uCAAyB;AACzB,2CAA6B;AAS7B,KAAK,UAAU,YAAY,CAAC,GAAW,EAAE,QAAgB;IACxD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACtC,MAAM,IAAI,GAAG,EAAE,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAE5C,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE;YAC3B,IAAI,QAAQ,CAAC,UAAU,KAAK,GAAG,EAAE,CAAC;gBACjC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACb,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,qBAAqB;gBACrD,MAAM,CAAC,IAAI,KAAK,CAAC,oCAAoC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;gBAC7E,OAAO;YACR,CAAC;YAED,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEpB,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;gBACtB,IAAI,CAAC,KAAK,EAAE,CAAC;gBACb,OAAO,EAAE,CAAC;YACX,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBACxB,IAAI,CAAC,KAAK,EAAE,CAAC;gBACb,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,qBAAqB;gBACrD,MAAM,CAAC,GAAG,CAAC,CAAC;YACb,CAAC,CAAC,CAAC;QAEJ,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YACtB,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,qBAAqB;YACrD,MAAM,CAAC,GAAG,CAAC,CAAC;QACb,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,MAAa,WAAW;IAAxB;QACC,gBAAW,GAAyB;YACnC,WAAW,EAAE,mBAAmB;YAChC,IAAI,EAAE,2BAA2B;YACjC,IAAI,EAAE,wBAAwB,EAAE,uBAAuB;YACvD,KAAK,EAAE,CAAC,WAAW,CAAC;YACpB,OAAO,EAAE,CAAC;YACV,WAAW,EAAE,yDAAyD;YACtE,QAAQ,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE;YAClC,MAAM,EAAE,CAAC,MAAM,CAAC;YAChB,OAAO,EAAE,CAAC,MAAM,CAAC;YACjB,WAAW,EAAE;gBACZ;oBACC,IAAI,EAAE,sBAAsB;oBAC5B,QAAQ,EAAE,IAAI;iBACd;aACD;YACD,UAAU,EAAE;gBACX;oBACC,WAAW,EAAE,QAAQ;oBACrB,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE,EAAE;oBACX,WAAW,EAAE,8DAA8D;iBAC3E;gBACD;oBACC,WAAW,EAAE,eAAe;oBAC5B,IAAI,EAAE,cAAc;oBACpB,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE,QAAQ;oBACjB,WAAW,EAAE,0CAA0C;iBACvD;aACD;SACD,CAAC;IAwDH,CAAC;IAtDA,KAAK,CAAC,OAAO;QACZ,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAClC,MAAM,UAAU,GAAyB,EAAE,CAAC;QAE5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAW,CAAC;YAC1D,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,CAAC,CAAW,CAAC;YAExE,2CAA2C;YAC3C,EAAE,CAAC,SAAS,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAEhD,mBAAmB;YACnB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,IAAI,CACpE,IAAI,EACJ,sBAAsB,EACtB;gBACC,GAAG,EAAE,2BAAe,CAAC,gBAAgB,CAAC,KAAK,CAAC;gBAC5C,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,IAAI;aACH,CACR,CAAC;YAEF,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;gBAClD,MAAM,IAAI,KAAK,CAAC,OAAO,KAAK,+CAA+C,WAAW,CAAC,KAAK,GAAG,CAAC,CAAC;YAClG,CAAC;YAED,MAAM,OAAO,GAAgB,WAAW,CAAC,OAAO,IAAI,EAAE,CAAC;YACvD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,OAAO,KAAK,yCAAyC,CAAC,CAAC;YACxE,CAAC;YAED,MAAM,UAAU,GAAa,EAAE,CAAC;YAEhC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACzC,MAAM,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;gBAC/C,MAAM,eAAe,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC;gBACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;gBAE1D,MAAM,YAAY,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;gBAE5C,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC3B,CAAC;YAED,iCAAiC;YACjC,UAAU,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE;oBACL,KAAK;oBACL,UAAU;iBACV;aACD,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC;CACD;AA3FD,kCA2FC"}
@@ -0,0 +1,6 @@
1
+ import type { IExecuteFunctions } from 'n8n-workflow';
2
+ import { INodeExecutionData, INodeType, INodeTypeDescription } from 'n8n-workflow';
3
+ export declare class ElevenLabsSTS implements INodeType {
4
+ description: INodeTypeDescription;
5
+ execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
6
+ }
@@ -0,0 +1,266 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ElevenLabsSTS = void 0;
4
+ const endpoints_1 = require("../../../config/endpoints");
5
+ const inputProcessing_1 = require("../../../utils/inputProcessing");
6
+ class ElevenLabsSTS {
7
+ constructor() {
8
+ this.description = {
9
+ displayName: '(AI) ElevenLabs STS',
10
+ name: 'aiToolsElevenLabsSTS',
11
+ icon: 'file:marcmeeselogo.png',
12
+ group: ['transform'],
13
+ version: 1,
14
+ description: 'Convert speech to speech using ElevenLabs AI models',
15
+ defaults: { name: 'ElevenLabs STS' },
16
+ inputs: ['main'],
17
+ outputs: ['main'],
18
+ credentials: [
19
+ {
20
+ name: 'CommunityAPIAIServer',
21
+ required: true,
22
+ },
23
+ ],
24
+ properties: [
25
+ {
26
+ displayName: 'Input Audio Paths',
27
+ name: 'input_audios',
28
+ type: 'string',
29
+ typeOptions: {
30
+ multipleValues: true,
31
+ },
32
+ required: true,
33
+ default: [],
34
+ description: (0, inputProcessing_1.getInputDescription)('Audio', true),
35
+ },
36
+ {
37
+ displayName: 'Voice Selection',
38
+ name: 'voiceSelection',
39
+ type: 'options',
40
+ required: true,
41
+ options: [
42
+ { name: 'Voice ID', value: 'voiceId' },
43
+ { name: 'Voice Name', value: 'voiceName' },
44
+ ],
45
+ default: 'voiceId',
46
+ description: 'Select voice by ID or by name',
47
+ },
48
+ {
49
+ displayName: 'Voice ID',
50
+ name: 'voice_id',
51
+ type: 'string',
52
+ required: true,
53
+ default: '',
54
+ description: 'The ID of the voice to use',
55
+ displayOptions: {
56
+ show: {
57
+ voiceSelection: ['voiceId'],
58
+ },
59
+ },
60
+ },
61
+ {
62
+ displayName: 'Voice Name',
63
+ name: 'voice_name',
64
+ type: 'string',
65
+ required: true,
66
+ default: '',
67
+ description: 'The name of the voice to use',
68
+ displayOptions: {
69
+ show: {
70
+ voiceSelection: ['voiceName'],
71
+ },
72
+ },
73
+ },
74
+ {
75
+ displayName: 'Model',
76
+ name: 'model',
77
+ type: 'options',
78
+ required: true,
79
+ options: [
80
+ { name: 'Eleven Multilingual v2', value: 'Eleven Multilingual v2' },
81
+ { name: 'Eleven Multilingual v1', value: 'Eleven Multilingual v1' },
82
+ { name: 'Eleven Monolingual v1', value: 'Eleven Monolingual v1' },
83
+ { name: 'Eleven Turbo v2', value: 'Eleven Turbo v2' },
84
+ ],
85
+ default: 'Eleven Multilingual v2',
86
+ description: 'The ElevenLabs model to use for speech synthesis',
87
+ },
88
+ {
89
+ displayName: 'Target Format',
90
+ name: 'target_format',
91
+ type: 'options',
92
+ required: true,
93
+ options: [
94
+ { name: 'mp3', value: 'mp3' },
95
+ { name: 'wav', value: 'wav' },
96
+ { name: 'ogg', value: 'ogg' },
97
+ { name: 'flac', value: 'flac' },
98
+ ],
99
+ default: 'mp3',
100
+ description: 'Target audio format for the output file',
101
+ },
102
+ {
103
+ displayName: 'Stability',
104
+ name: 'stability',
105
+ type: 'number',
106
+ required: false,
107
+ default: 0.65,
108
+ description: 'Voice stability (0.0 - 1.0). Higher values make the voice more consistent',
109
+ typeOptions: {
110
+ minValue: 0.0,
111
+ maxValue: 1.0,
112
+ numberPrecision: 2,
113
+ },
114
+ },
115
+ {
116
+ displayName: 'Similarity',
117
+ name: 'similarity',
118
+ type: 'number',
119
+ required: false,
120
+ default: 0.35,
121
+ description: 'Voice similarity boost (0.0 - 1.0). Higher values make the voice more similar to the original',
122
+ typeOptions: {
123
+ minValue: 0.0,
124
+ maxValue: 1.0,
125
+ numberPrecision: 2,
126
+ },
127
+ },
128
+ {
129
+ displayName: 'Use HD',
130
+ name: 'use_hd',
131
+ type: 'boolean',
132
+ required: false,
133
+ default: false,
134
+ description: 'Use high-definition processing for better audio quality',
135
+ },
136
+ {
137
+ displayName: 'Remove Background Noise',
138
+ name: 'remove_background_noise',
139
+ type: 'boolean',
140
+ required: false,
141
+ default: false,
142
+ description: 'Remove background noise from the input audio',
143
+ },
144
+ {
145
+ displayName: 'Callback URL',
146
+ name: 'callback_url',
147
+ type: 'string',
148
+ required: false,
149
+ default: '',
150
+ description: 'Optional URL that will be called when the job is completed',
151
+ typeOptions: {
152
+ alwaysOpenEditWindow: true,
153
+ },
154
+ },
155
+ {
156
+ displayName: 'Callback Data',
157
+ name: 'callback_payload',
158
+ type: 'fixedCollection',
159
+ placeholder: 'Add Callback Data',
160
+ description: 'Custom data that will be returned with the job completion notification',
161
+ default: {},
162
+ typeOptions: {
163
+ multipleValues: true,
164
+ },
165
+ options: [
166
+ {
167
+ displayName: 'Parameters',
168
+ name: 'parameters',
169
+ values: [
170
+ {
171
+ displayName: 'Key',
172
+ name: 'key',
173
+ type: 'string',
174
+ default: '',
175
+ description: 'Parameter key',
176
+ required: true,
177
+ },
178
+ {
179
+ displayName: 'Value',
180
+ name: 'value',
181
+ type: 'string',
182
+ default: '',
183
+ description: 'Parameter value (can be mapped from previous nodes)',
184
+ required: true,
185
+ },
186
+ ],
187
+ },
188
+ ],
189
+ },
190
+ ],
191
+ };
192
+ }
193
+ async execute() {
194
+ const items = this.getInputData();
195
+ const returnData = [];
196
+ for (let i = 0; i < items.length; i++) {
197
+ const inputAudioPaths = this.getNodeParameter('input_audios', i);
198
+ const voiceSelection = this.getNodeParameter('voiceSelection', i);
199
+ const model = this.getNodeParameter('model', i);
200
+ const targetFormat = this.getNodeParameter('target_format', i);
201
+ const stability = this.getNodeParameter('stability', i);
202
+ const similarity = this.getNodeParameter('similarity', i);
203
+ const useHd = this.getNodeParameter('use_hd', i);
204
+ const removeBackgroundNoise = this.getNodeParameter('remove_background_noise', i);
205
+ const callbackUrl = this.getNodeParameter('callback_url', i);
206
+ const callbackPayloadRaw = this.getNodeParameter('callback_payload', i);
207
+ // Voice ID oder Voice Name basierend auf Auswahl
208
+ let voiceId;
209
+ let voiceName;
210
+ if (voiceSelection === 'voiceId') {
211
+ voiceId = this.getNodeParameter('voice_id', i);
212
+ }
213
+ else {
214
+ voiceName = this.getNodeParameter('voice_name', i);
215
+ }
216
+ const validExtensions = [...endpoints_1.SUPPORTED_FORMATS.AUDIO];
217
+ // Eingabe intelligent verarbeiten mit inputProcessing Utils
218
+ const processedInputAudioPaths = await (0, inputProcessing_1.processMediaInputs)(this, inputAudioPaths, validExtensions);
219
+ // Debug-Informationen loggen
220
+ (0, inputProcessing_1.logInputsProcessing)(inputAudioPaths, processedInputAudioPaths);
221
+ // Form Data erstellen
222
+ const formData = {
223
+ input_audios: processedInputAudioPaths,
224
+ model: model,
225
+ target_format: targetFormat,
226
+ stability: stability,
227
+ similarity: similarity,
228
+ use_hd: String(useHd),
229
+ remove_background_noise: String(removeBackgroundNoise),
230
+ };
231
+ if (voiceId) {
232
+ formData['voice_id'] = voiceId;
233
+ }
234
+ if (voiceName) {
235
+ formData['voice_name'] = voiceName;
236
+ }
237
+ if (callbackUrl) {
238
+ formData['callback_url'] = callbackUrl;
239
+ }
240
+ // Callback Payload von fixedCollection in JSON umwandeln
241
+ if (callbackPayloadRaw && callbackPayloadRaw.parameters) {
242
+ const callbackPayload = {};
243
+ // Jedes Key-Value Paar aus der fixedCollection in ein Objekt umwandeln
244
+ for (const param of callbackPayloadRaw.parameters) {
245
+ if (param.key && param.value !== undefined) {
246
+ callbackPayload[param.key] = param.value;
247
+ }
248
+ }
249
+ // Nur hinzufügen wenn es tatsächlich Daten gibt
250
+ if (Object.keys(callbackPayload).length > 0) {
251
+ formData['callback_payload'] = JSON.stringify(callbackPayload);
252
+ }
253
+ }
254
+ const response = await this.helpers.requestWithAuthentication.call(this, 'CommunityAPIAIServer', {
255
+ method: 'POST',
256
+ url: endpoints_1.EndpointBuilder.getElevenLabsSTSUrl(),
257
+ formData: formData,
258
+ json: true,
259
+ });
260
+ returnData.push({ json: response });
261
+ }
262
+ return this.prepareOutputData(returnData);
263
+ }
264
+ }
265
+ exports.ElevenLabsSTS = ElevenLabsSTS;
266
+ //# sourceMappingURL=ElevenLabsSTS.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ElevenLabsSTS.node.js","sourceRoot":"","sources":["../../../../src/nodes/CommunityAPIAIServer/ElevenLabsSTS/ElevenLabsSTS.node.ts"],"names":[],"mappings":";;;AAOA,yDAA+E;AAC/E,oEAIwC;AAExC,MAAa,aAAa;IAA1B;QACC,gBAAW,GAAyB;YACnC,WAAW,EAAE,qBAAqB;YAClC,IAAI,EAAE,sBAAsB;YAC5B,IAAI,EAAE,wBAAwB;YAC9B,KAAK,EAAE,CAAC,WAAW,CAAC;YACpB,OAAO,EAAE,CAAC;YACV,WAAW,EAAE,qDAAqD;YAClE,QAAQ,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE;YACpC,MAAM,EAAE,CAAC,MAAM,CAAC;YAChB,OAAO,EAAE,CAAC,MAAM,CAAC;YACjB,WAAW,EAAE;gBACZ;oBACC,IAAI,EAAE,sBAAsB;oBAC5B,QAAQ,EAAE,IAAI;iBACd;aACD;YACD,UAAU,EAAE;gBACX;oBACC,WAAW,EAAE,mBAAmB;oBAChC,IAAI,EAAE,cAAc;oBACpB,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE;wBACZ,cAAc,EAAE,IAAI;qBACpB;oBACD,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE,EAAE;oBACX,WAAW,EAAE,IAAA,qCAAmB,EAAC,OAAO,EAAE,IAAI,CAAC;iBAC/C;gBACD;oBACC,WAAW,EAAE,iBAAiB;oBAC9B,IAAI,EAAE,gBAAgB;oBACtB,IAAI,EAAE,SAAS;oBACf,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE;wBACR,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE;wBACtC,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE;qBAC1C;oBACD,OAAO,EAAE,SAAS;oBAClB,WAAW,EAAE,+BAA+B;iBAC5C;gBACD;oBACC,WAAW,EAAE,UAAU;oBACvB,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE,EAAE;oBACX,WAAW,EAAE,4BAA4B;oBACzC,cAAc,EAAE;wBACf,IAAI,EAAE;4BACL,cAAc,EAAE,CAAC,SAAS,CAAC;yBAC3B;qBACD;iBACD;gBACD;oBACC,WAAW,EAAE,YAAY;oBACzB,IAAI,EAAE,YAAY;oBAClB,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE,EAAE;oBACX,WAAW,EAAE,8BAA8B;oBAC3C,cAAc,EAAE;wBACf,IAAI,EAAE;4BACL,cAAc,EAAE,CAAC,WAAW,CAAC;yBAC7B;qBACD;iBACD;gBACD;oBACC,WAAW,EAAE,OAAO;oBACpB,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,SAAS;oBACf,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE;wBACR,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,wBAAwB,EAAE;wBACnE,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,wBAAwB,EAAE;wBACnE,EAAE,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,uBAAuB,EAAE;wBACjE,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,iBAAiB,EAAE;qBACrD;oBACD,OAAO,EAAE,wBAAwB;oBACjC,WAAW,EAAE,kDAAkD;iBAC/D;gBACD;oBACC,WAAW,EAAE,eAAe;oBAC5B,IAAI,EAAE,eAAe;oBACrB,IAAI,EAAE,SAAS;oBACf,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE;wBACR,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;wBAC7B,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;wBAC7B,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;wBAC7B,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;qBAC/B;oBACD,OAAO,EAAE,KAAK;oBACd,WAAW,EAAE,yCAAyC;iBACtD;gBACD;oBACC,WAAW,EAAE,WAAW;oBACxB,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,KAAK;oBACf,OAAO,EAAE,IAAI;oBACb,WAAW,EAAE,2EAA2E;oBACxF,WAAW,EAAE;wBACZ,QAAQ,EAAE,GAAG;wBACb,QAAQ,EAAE,GAAG;wBACb,eAAe,EAAE,CAAC;qBAClB;iBACD;gBACD;oBACC,WAAW,EAAE,YAAY;oBACzB,IAAI,EAAE,YAAY;oBAClB,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,KAAK;oBACf,OAAO,EAAE,IAAI;oBACb,WAAW,EAAE,+FAA+F;oBAC5G,WAAW,EAAE;wBACZ,QAAQ,EAAE,GAAG;wBACb,QAAQ,EAAE,GAAG;wBACb,eAAe,EAAE,CAAC;qBAClB;iBACD;gBACD;oBACC,WAAW,EAAE,QAAQ;oBACrB,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,SAAS;oBACf,QAAQ,EAAE,KAAK;oBACf,OAAO,EAAE,KAAK;oBACd,WAAW,EAAE,yDAAyD;iBACtE;gBACD;oBACC,WAAW,EAAE,yBAAyB;oBACtC,IAAI,EAAE,yBAAyB;oBAC/B,IAAI,EAAE,SAAS;oBACf,QAAQ,EAAE,KAAK;oBACf,OAAO,EAAE,KAAK;oBACd,WAAW,EAAE,8CAA8C;iBAC3D;gBACD;oBACC,WAAW,EAAE,cAAc;oBAC3B,IAAI,EAAE,cAAc;oBACpB,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,KAAK;oBACf,OAAO,EAAE,EAAE;oBACX,WAAW,EAAE,4DAA4D;oBACzE,WAAW,EAAE;wBACZ,oBAAoB,EAAE,IAAI;qBAC1B;iBACD;gBACD;oBACC,WAAW,EAAE,eAAe;oBAC5B,IAAI,EAAE,kBAAkB;oBACxB,IAAI,EAAE,iBAAiB;oBACvB,WAAW,EAAE,mBAAmB;oBAChC,WAAW,EAAE,wEAAwE;oBACrF,OAAO,EAAE,EAAE;oBACX,WAAW,EAAE;wBACZ,cAAc,EAAE,IAAI;qBACpB;oBACD,OAAO,EAAE;wBACR;4BACC,WAAW,EAAE,YAAY;4BACzB,IAAI,EAAE,YAAY;4BAClB,MAAM,EAAE;gCACP;oCACC,WAAW,EAAE,KAAK;oCAClB,IAAI,EAAE,KAAK;oCACX,IAAI,EAAE,QAAQ;oCACd,OAAO,EAAE,EAAE;oCACX,WAAW,EAAE,eAAe;oCAC5B,QAAQ,EAAE,IAAI;iCACd;gCACD;oCACC,WAAW,EAAE,OAAO;oCACpB,IAAI,EAAE,OAAO;oCACb,IAAI,EAAE,QAAQ;oCACd,OAAO,EAAE,EAAE;oCACX,WAAW,EAAE,qDAAqD;oCAClE,QAAQ,EAAE,IAAI;iCACd;6BACD;yBACD;qBACD;iBACD;aACD;SACD,CAAC;IA4FH,CAAC;IA1FA,KAAK,CAAC,OAAO;QACZ,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAClC,MAAM,UAAU,GAAyB,EAAE,CAAC;QAE5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,CAAC,CAAa,CAAC;YAC7E,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC,CAAW,CAAC;YAC5E,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAW,CAAC;YAC1D,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,EAAE,CAAC,CAAW,CAAC;YACzE,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,CAAW,CAAC;YAClE,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC,CAAW,CAAC;YACpE,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAY,CAAC;YAC5D,MAAM,qBAAqB,GAAG,IAAI,CAAC,gBAAgB,CAAC,yBAAyB,EAAE,CAAC,CAAY,CAAC;YAC7F,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,CAAC,CAAW,CAAC;YACvE,MAAM,kBAAkB,GAAG,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,CAAC,CAAQ,CAAC;YAE/E,iDAAiD;YACjD,IAAI,OAA2B,CAAC;YAChC,IAAI,SAA6B,CAAC;YAElC,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;gBAClC,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC,CAAW,CAAC;YAC1D,CAAC;iBAAM,CAAC;gBACP,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC,CAAW,CAAC;YAC9D,CAAC;YAED,MAAM,eAAe,GAAG,CAAC,GAAG,6BAAiB,CAAC,KAAK,CAAC,CAAC;YAErD,4DAA4D;YAC5D,MAAM,wBAAwB,GAAG,MAAM,IAAA,oCAAkB,EAAC,IAAI,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC;YAElG,6BAA6B;YAC7B,IAAA,qCAAmB,EAAC,eAAe,EAAE,wBAAwB,CAAC,CAAC;YAE/D,sBAAsB;YACtB,MAAM,QAAQ,GAAgB;gBAC7B,YAAY,EAAE,wBAAwB;gBACtC,KAAK,EAAE,KAAK;gBACZ,aAAa,EAAE,YAAY;gBAC3B,SAAS,EAAE,SAAS;gBACpB,UAAU,EAAE,UAAU;gBACtB,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC;gBACrB,uBAAuB,EAAE,MAAM,CAAC,qBAAqB,CAAC;aACtD,CAAC;YAEF,IAAI,OAAO,EAAE,CAAC;gBACb,QAAQ,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;YAChC,CAAC;YAED,IAAI,SAAS,EAAE,CAAC;gBACf,QAAQ,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC;YACpC,CAAC;YAED,IAAI,WAAW,EAAE,CAAC;gBACjB,QAAQ,CAAC,cAAc,CAAC,GAAG,WAAW,CAAC;YACxC,CAAC;YAED,yDAAyD;YACzD,IAAI,kBAAkB,IAAI,kBAAkB,CAAC,UAAU,EAAE,CAAC;gBACzD,MAAM,eAAe,GAAgB,EAAE,CAAC;gBAExC,uEAAuE;gBACvE,KAAK,MAAM,KAAK,IAAI,kBAAkB,CAAC,UAAU,EAAE,CAAC;oBACnD,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;wBAC5C,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;oBAC1C,CAAC;gBACF,CAAC;gBAED,gDAAgD;gBAChD,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC7C,QAAQ,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;gBAChE,CAAC;YACF,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,IAAI,CACjE,IAAI,EACJ,sBAAsB,EACtB;gBACC,MAAM,EAAE,MAAM;gBACd,GAAG,EAAE,2BAAe,CAAC,mBAAmB,EAAE;gBAC1C,QAAQ,EAAE,QAAQ;gBAClB,IAAI,EAAE,IAAI;aACV,CACD,CAAC;YAEF,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAuB,EAAE,CAAC,CAAC;QACpD,CAAC;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC;CACD;AApRD,sCAoRC"}
@@ -0,0 +1,6 @@
1
+ import type { IExecuteFunctions } from 'n8n-workflow';
2
+ import { INodeExecutionData, INodeType, INodeTypeDescription } from 'n8n-workflow';
3
+ export declare class ElevenLabsTTS implements INodeType {
4
+ description: INodeTypeDescription;
5
+ execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
6
+ }