n8n-mcp 2.7.20 → 2.8.1
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.
- package/README.md +67 -8
- package/data/nodes.db +0 -0
- package/dist/database/node-repository.d.ts +12 -1
- package/dist/database/node-repository.d.ts.map +1 -1
- package/dist/database/node-repository.js +122 -2
- package/dist/database/node-repository.js.map +1 -1
- package/dist/http-server.js +1 -1
- package/dist/http-server.js.map +1 -1
- package/dist/mcp/server.d.ts +1 -0
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +31 -9
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp-engine.d.ts +1 -1
- package/dist/mcp-engine.d.ts.map +1 -1
- package/dist/mcp-tools-engine.d.ts +48 -0
- package/dist/mcp-tools-engine.d.ts.map +1 -0
- package/dist/mcp-tools-engine.js +92 -0
- package/dist/mcp-tools-engine.js.map +1 -0
- package/dist/parsers/node-parser.d.ts.map +1 -1
- package/dist/parsers/node-parser.js +16 -10
- package/dist/parsers/node-parser.js.map +1 -1
- package/dist/parsers/simple-parser.d.ts.map +1 -1
- package/dist/parsers/simple-parser.js +11 -0
- package/dist/parsers/simple-parser.js.map +1 -1
- package/dist/services/config-validator.d.ts +6 -1
- package/dist/services/config-validator.d.ts.map +1 -1
- package/dist/services/config-validator.js +99 -25
- package/dist/services/config-validator.js.map +1 -1
- package/dist/services/enhanced-config-validator.d.ts.map +1 -1
- package/dist/services/enhanced-config-validator.js +4 -1
- package/dist/services/enhanced-config-validator.js.map +1 -1
- package/dist/services/expression-validator.d.ts.map +1 -1
- package/dist/services/expression-validator.js +36 -15
- package/dist/services/expression-validator.js.map +1 -1
- package/dist/services/n8n-validation.d.ts +3 -3
- package/dist/services/n8n-validation.d.ts.map +1 -1
- package/dist/services/n8n-validation.js +16 -12
- package/dist/services/n8n-validation.js.map +1 -1
- package/dist/services/property-filter.d.ts.map +1 -1
- package/dist/services/property-filter.js +35 -11
- package/dist/services/property-filter.js.map +1 -1
- package/dist/services/sqlite-storage-service.d.ts +11 -0
- package/dist/services/sqlite-storage-service.d.ts.map +1 -0
- package/dist/services/sqlite-storage-service.js +74 -0
- package/dist/services/sqlite-storage-service.js.map +1 -0
- package/dist/services/workflow-validator.d.ts +3 -1
- package/dist/services/workflow-validator.d.ts.map +1 -1
- package/dist/services/workflow-validator.js +296 -202
- package/dist/services/workflow-validator.js.map +1 -1
- package/dist/templates/template-repository.js +1 -1
- package/dist/templates/template-repository.js.map +1 -1
- package/dist/utils/logger.d.ts +1 -0
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +2 -1
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/template-sanitizer.d.ts.map +1 -1
- package/dist/utils/template-sanitizer.js +10 -1
- package/dist/utils/template-sanitizer.js.map +1 -1
- package/package.json +1 -1
|
@@ -3,6 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.ConfigValidator = void 0;
|
|
4
4
|
class ConfigValidator {
|
|
5
5
|
static validate(nodeType, config, properties) {
|
|
6
|
+
if (!config || typeof config !== 'object') {
|
|
7
|
+
throw new TypeError('Config must be a non-null object');
|
|
8
|
+
}
|
|
9
|
+
if (!properties || !Array.isArray(properties)) {
|
|
10
|
+
throw new TypeError('Properties must be a non-null array');
|
|
11
|
+
}
|
|
6
12
|
const errors = [];
|
|
7
13
|
const warnings = [];
|
|
8
14
|
const suggestions = [];
|
|
@@ -27,15 +33,31 @@ class ConfigValidator {
|
|
|
27
33
|
autofix: Object.keys(autofix).length > 0 ? autofix : undefined
|
|
28
34
|
};
|
|
29
35
|
}
|
|
36
|
+
static validateBatch(configs) {
|
|
37
|
+
return configs.map(({ nodeType, config, properties }) => this.validate(nodeType, config, properties));
|
|
38
|
+
}
|
|
30
39
|
static checkRequiredProperties(properties, config, errors) {
|
|
31
40
|
for (const prop of properties) {
|
|
32
|
-
if (prop
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
41
|
+
if (!prop || !prop.name)
|
|
42
|
+
continue;
|
|
43
|
+
if (prop.required) {
|
|
44
|
+
const value = config[prop.name];
|
|
45
|
+
if (!(prop.name in config)) {
|
|
46
|
+
errors.push({
|
|
47
|
+
type: 'missing_required',
|
|
48
|
+
property: prop.name,
|
|
49
|
+
message: `Required property '${prop.displayName || prop.name}' is missing`,
|
|
50
|
+
fix: `Add ${prop.name} to your configuration`
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
else if (value === null || value === undefined) {
|
|
54
|
+
errors.push({
|
|
55
|
+
type: 'invalid_type',
|
|
56
|
+
property: prop.name,
|
|
57
|
+
message: `Required property '${prop.displayName || prop.name}' cannot be null or undefined`,
|
|
58
|
+
fix: `Provide a valid value for ${prop.name}`
|
|
59
|
+
});
|
|
60
|
+
}
|
|
39
61
|
}
|
|
40
62
|
}
|
|
41
63
|
}
|
|
@@ -230,7 +252,7 @@ class ConfigValidator {
|
|
|
230
252
|
else {
|
|
231
253
|
this.validateJavaScriptSyntax(code, errors, warnings);
|
|
232
254
|
}
|
|
233
|
-
this.validateN8nCodePatterns(code, config.language || 'javascript', warnings);
|
|
255
|
+
this.validateN8nCodePatterns(code, config.language || 'javascript', errors, warnings);
|
|
234
256
|
}
|
|
235
257
|
static checkCommonIssues(nodeType, config, properties, warnings, suggestions) {
|
|
236
258
|
if (nodeType === 'nodes-base.code') {
|
|
@@ -329,12 +351,32 @@ class ConfigValidator {
|
|
|
329
351
|
});
|
|
330
352
|
if (indentTypes.size > 1) {
|
|
331
353
|
errors.push({
|
|
332
|
-
type: '
|
|
354
|
+
type: 'syntax_error',
|
|
333
355
|
property: 'pythonCode',
|
|
334
|
-
message: 'Mixed tabs and spaces
|
|
356
|
+
message: 'Mixed indentation (tabs and spaces)',
|
|
335
357
|
fix: 'Use either tabs or spaces consistently, not both'
|
|
336
358
|
});
|
|
337
359
|
}
|
|
360
|
+
const openSquare = (code.match(/\[/g) || []).length;
|
|
361
|
+
const closeSquare = (code.match(/\]/g) || []).length;
|
|
362
|
+
if (openSquare !== closeSquare) {
|
|
363
|
+
errors.push({
|
|
364
|
+
type: 'syntax_error',
|
|
365
|
+
property: 'pythonCode',
|
|
366
|
+
message: 'Unmatched bracket - missing ] or extra [',
|
|
367
|
+
fix: 'Check that all [ have matching ]'
|
|
368
|
+
});
|
|
369
|
+
}
|
|
370
|
+
const openCurly = (code.match(/\{/g) || []).length;
|
|
371
|
+
const closeCurly = (code.match(/\}/g) || []).length;
|
|
372
|
+
if (openCurly !== closeCurly) {
|
|
373
|
+
errors.push({
|
|
374
|
+
type: 'syntax_error',
|
|
375
|
+
property: 'pythonCode',
|
|
376
|
+
message: 'Unmatched bracket - missing } or extra {',
|
|
377
|
+
fix: 'Check that all { have matching }'
|
|
378
|
+
});
|
|
379
|
+
}
|
|
338
380
|
const controlStructures = /^\s*(if|elif|else|for|while|def|class|try|except|finally|with)\s+.*[^:]\s*$/gm;
|
|
339
381
|
if (controlStructures.test(code)) {
|
|
340
382
|
warnings.push({
|
|
@@ -344,7 +386,7 @@ class ConfigValidator {
|
|
|
344
386
|
});
|
|
345
387
|
}
|
|
346
388
|
}
|
|
347
|
-
static validateN8nCodePatterns(code, language, warnings) {
|
|
389
|
+
static validateN8nCodePatterns(code, language, errors, warnings) {
|
|
348
390
|
const hasReturn = language === 'python'
|
|
349
391
|
? /return\s+/.test(code)
|
|
350
392
|
: /return\s+/.test(code);
|
|
@@ -379,6 +421,11 @@ class ConfigValidator {
|
|
|
379
421
|
}
|
|
380
422
|
}
|
|
381
423
|
if (language === 'python' && hasReturn) {
|
|
424
|
+
if (code.includes('result = {"data": "value"}')) {
|
|
425
|
+
console.log('DEBUG: Processing Python code with result variable');
|
|
426
|
+
console.log('DEBUG: Language:', language);
|
|
427
|
+
console.log('DEBUG: Has return:', hasReturn);
|
|
428
|
+
}
|
|
382
429
|
if (/return\s+items\s*$/.test(code) && !code.includes('json') && !code.includes('dict')) {
|
|
383
430
|
warnings.push({
|
|
384
431
|
type: 'best_practice',
|
|
@@ -393,6 +440,25 @@ class ConfigValidator {
|
|
|
393
440
|
suggestion: 'Wrap your return dict in a list: return [{"json": {"your": "data"}}]'
|
|
394
441
|
});
|
|
395
442
|
}
|
|
443
|
+
if (/return\s+(?!.*\[).*{(?!.*["']json["'])/.test(code)) {
|
|
444
|
+
warnings.push({
|
|
445
|
+
type: 'invalid_value',
|
|
446
|
+
message: 'Must return array of objects with json key',
|
|
447
|
+
suggestion: 'Use format: return [{"json": {"data": "value"}}]'
|
|
448
|
+
});
|
|
449
|
+
}
|
|
450
|
+
const returnMatch = code.match(/return\s+(\w+)\s*(?:#|$)/m);
|
|
451
|
+
if (returnMatch) {
|
|
452
|
+
const varName = returnMatch[1];
|
|
453
|
+
const assignmentRegex = new RegExp(`${varName}\\s*=\\s*{[^}]+}`, 'm');
|
|
454
|
+
if (assignmentRegex.test(code) && !new RegExp(`${varName}\\s*=\\s*\\[`).test(code)) {
|
|
455
|
+
warnings.push({
|
|
456
|
+
type: 'invalid_value',
|
|
457
|
+
message: 'Must return array of objects with json key',
|
|
458
|
+
suggestion: `Wrap ${varName} in a list with json key: return [{"json": ${varName}}]`
|
|
459
|
+
});
|
|
460
|
+
}
|
|
461
|
+
}
|
|
396
462
|
}
|
|
397
463
|
if (language === 'javascript') {
|
|
398
464
|
if (!code.includes('items') && !code.includes('$input') && !code.includes('$json')) {
|
|
@@ -412,27 +478,35 @@ class ConfigValidator {
|
|
|
412
478
|
const commonVars = ['$node', '$workflow', '$execution', '$prevNode', 'DateTime', 'jmespath'];
|
|
413
479
|
const usedVars = commonVars.filter(v => code.includes(v));
|
|
414
480
|
if (code.includes('$helpers.getWorkflowStaticData')) {
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
481
|
+
if (/\$helpers\.getWorkflowStaticData(?!\s*\()/.test(code)) {
|
|
482
|
+
errors.push({
|
|
483
|
+
type: 'invalid_value',
|
|
484
|
+
property: 'jsCode',
|
|
485
|
+
message: 'getWorkflowStaticData requires parentheses: $helpers.getWorkflowStaticData()',
|
|
486
|
+
fix: 'Add parentheses: $helpers.getWorkflowStaticData()'
|
|
487
|
+
});
|
|
488
|
+
}
|
|
489
|
+
else {
|
|
490
|
+
warnings.push({
|
|
491
|
+
type: 'invalid_value',
|
|
492
|
+
message: '$helpers.getWorkflowStaticData() is incorrect - causes "$helpers is not defined" error',
|
|
493
|
+
suggestion: 'Use $getWorkflowStaticData() as a standalone function (no $helpers prefix)'
|
|
494
|
+
});
|
|
495
|
+
}
|
|
420
496
|
}
|
|
421
497
|
if (code.includes('$helpers') && !code.includes('typeof $helpers')) {
|
|
422
498
|
warnings.push({
|
|
423
499
|
type: 'best_practice',
|
|
424
|
-
message: '$helpers
|
|
500
|
+
message: '$helpers is only available in Code nodes with mode="runOnceForEachItem"',
|
|
425
501
|
suggestion: 'Check availability first: if (typeof $helpers !== "undefined" && $helpers.httpRequest) { ... }'
|
|
426
502
|
});
|
|
427
503
|
}
|
|
428
|
-
if (code.includes('
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
});
|
|
435
|
-
}
|
|
504
|
+
if ((code.includes('fetch(') || code.includes('Promise') || code.includes('.then(')) && !code.includes('await')) {
|
|
505
|
+
warnings.push({
|
|
506
|
+
type: 'best_practice',
|
|
507
|
+
message: 'Async operation without await - will return a Promise instead of actual data',
|
|
508
|
+
suggestion: 'Use await with async operations: const result = await fetch(...);'
|
|
509
|
+
});
|
|
436
510
|
}
|
|
437
511
|
if ((code.includes('crypto.') || code.includes('randomBytes') || code.includes('randomUUID')) && !code.includes('require')) {
|
|
438
512
|
warnings.push({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-validator.js","sourceRoot":"","sources":["../../src/services/config-validator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config-validator.js","sourceRoot":"","sources":["../../src/services/config-validator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enhanced-config-validator.d.ts","sourceRoot":"","sources":["../../src/services/enhanced-config-validator.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAsC,MAAM,oBAAoB,CAAC;AAG3G,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,WAAW,GAAG,SAAS,CAAC;AAC9D,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,SAAS,GAAG,aAAa,GAAG,SAAS,CAAC;AAEjF,MAAM,WAAW,wBAAyB,SAAQ,gBAAgB;IAChE,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,SAAS,CAAC,EAAE;QACV,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,QAAQ,CAAC,EAAE,KAAK,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAC7B,CAAC,CAAC;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,qBAAa,uBAAwB,SAAQ,eAAe;IAI1D,MAAM,CAAC,gBAAgB,CACrB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,UAAU,EAAE,GAAG,EAAE,EACjB,IAAI,GAAE,cAA4B,EAClC,OAAO,GAAE,iBAAiC,GACzC,wBAAwB;
|
|
1
|
+
{"version":3,"file":"enhanced-config-validator.d.ts","sourceRoot":"","sources":["../../src/services/enhanced-config-validator.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAsC,MAAM,oBAAoB,CAAC;AAG3G,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,WAAW,GAAG,SAAS,CAAC;AAC9D,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,SAAS,GAAG,aAAa,GAAG,SAAS,CAAC;AAEjF,MAAM,WAAW,wBAAyB,SAAQ,gBAAgB;IAChE,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,SAAS,CAAC,EAAE;QACV,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,QAAQ,CAAC,EAAE,KAAK,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAC7B,CAAC,CAAC;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,qBAAa,uBAAwB,SAAQ,eAAe;IAI1D,MAAM,CAAC,gBAAgB,CACrB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,UAAU,EAAE,GAAG,EAAE,EACjB,IAAI,GAAE,cAA4B,EAClC,OAAO,GAAE,iBAAiC,GACzC,wBAAwB;IAiD3B,OAAO,CAAC,MAAM,CAAC,uBAAuB;IAYtC,OAAO,CAAC,MAAM,CAAC,sBAAsB;IA6BrC,OAAO,CAAC,MAAM,CAAC,6BAA6B;IAgD5C,OAAO,CAAC,MAAM,CAAC,gCAAgC;IAiE/C,OAAO,CAAC,MAAM,CAAC,sBAAsB;IAyBrC,OAAO,CAAC,MAAM,CAAC,6BAA6B;IAwB5C,OAAO,CAAC,MAAM,CAAC,4BAA4B;IAU3C,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAoChC,OAAO,CAAC,MAAM,CAAC,iBAAiB;IA0BhC,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAkDlC,OAAO,CAAC,MAAM,CAAC,8BAA8B;IAyB7C,OAAO,CAAC,MAAM,CAAC,2BAA2B;CA0B3C"}
|
|
@@ -14,7 +14,10 @@ class EnhancedConfigValidator extends config_validator_1.ConfigValidator {
|
|
|
14
14
|
profile,
|
|
15
15
|
operation: operationContext,
|
|
16
16
|
examples: [],
|
|
17
|
-
nextSteps: []
|
|
17
|
+
nextSteps: [],
|
|
18
|
+
errors: baseResult.errors || [],
|
|
19
|
+
warnings: baseResult.warnings || [],
|
|
20
|
+
suggestions: baseResult.suggestions || []
|
|
18
21
|
};
|
|
19
22
|
this.applyProfileFilters(enhancedResult, profile);
|
|
20
23
|
this.addOperationSpecificEnhancements(nodeType, config, enhancedResult);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enhanced-config-validator.js","sourceRoot":"","sources":["../../src/services/enhanced-config-validator.ts"],"names":[],"mappings":";;;AAOA,yDAA2G;AAC3G,yEAA2F;AA2B3F,MAAa,uBAAwB,SAAQ,kCAAe;IAI1D,MAAM,CAAC,gBAAgB,CACrB,QAAgB,EAChB,MAA2B,EAC3B,UAAiB,EACjB,OAAuB,WAAW,EAClC,UAA6B,aAAa;QAG1C,MAAM,gBAAgB,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC;QAG9D,MAAM,kBAAkB,GAAG,IAAI,CAAC,sBAAsB,CACpD,UAAU,EACV,MAAM,EACN,IAAI,EACJ,gBAAgB,CACjB,CAAC;QAGF,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,kBAAkB,CAAC,CAAC;QAGxE,MAAM,cAAc,GAA6B;YAC/C,GAAG,UAAU;YACb,IAAI;YACJ,OAAO;YACP,SAAS,EAAE,gBAAgB;YAC3B,QAAQ,EAAE,EAAE;YACZ,SAAS,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"enhanced-config-validator.js","sourceRoot":"","sources":["../../src/services/enhanced-config-validator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expression-validator.d.ts","sourceRoot":"","sources":["../../src/services/expression-validator.ts"],"names":[],"mappings":"AAKA,UAAU,0BAA0B;IAClC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACxB;AAED,UAAU,iBAAiB;IACzB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,qBAAa,mBAAmB;IAE9B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,
|
|
1
|
+
{"version":3,"file":"expression-validator.d.ts","sourceRoot":"","sources":["../../src/services/expression-validator.ts"],"names":[],"mappings":"AAKA,UAAU,0BAA0B;IAClC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACxB;AAED,UAAU,iBAAiB;IACzB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,qBAAa,mBAAmB;IAE9B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAyB;IACnE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAcvC;IAKF,MAAM,CAAC,kBAAkB,CACvB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,iBAAiB,GACzB,0BAA0B;IA2C7B,OAAO,CAAC,MAAM,CAAC,iBAAiB;IA+BhC,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAcjC,OAAO,CAAC,MAAM,CAAC,wBAAwB;IA+DvC,OAAO,CAAC,MAAM,CAAC,mBAAmB;IA4ClC,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAgBlC,MAAM,CAAC,uBAAuB,CAC5B,UAAU,EAAE,GAAG,EACf,OAAO,EAAE,iBAAiB,GACzB,0BAA0B;IAmB7B,OAAO,CAAC,MAAM,CAAC,2BAA2B;CAiD3C"}
|
|
@@ -10,6 +10,14 @@ class ExpressionValidator {
|
|
|
10
10
|
usedVariables: new Set(),
|
|
11
11
|
usedNodes: new Set(),
|
|
12
12
|
};
|
|
13
|
+
if (!expression) {
|
|
14
|
+
return result;
|
|
15
|
+
}
|
|
16
|
+
if (!context) {
|
|
17
|
+
result.valid = false;
|
|
18
|
+
result.errors.push('Validation context is required');
|
|
19
|
+
return result;
|
|
20
|
+
}
|
|
13
21
|
const syntaxErrors = this.checkSyntaxErrors(expression);
|
|
14
22
|
result.errors.push(...syntaxErrors);
|
|
15
23
|
const expressions = this.extractExpressions(expression);
|
|
@@ -33,7 +41,8 @@ class ExpressionValidator {
|
|
|
33
41
|
errors.push('Nested expressions are not supported');
|
|
34
42
|
}
|
|
35
43
|
}
|
|
36
|
-
|
|
44
|
+
const emptyExpressionPattern = /\{\{\s*\}\}/;
|
|
45
|
+
if (emptyExpressionPattern.test(expression)) {
|
|
37
46
|
errors.push('Empty expression found');
|
|
38
47
|
}
|
|
39
48
|
return errors;
|
|
@@ -48,24 +57,28 @@ class ExpressionValidator {
|
|
|
48
57
|
}
|
|
49
58
|
static validateSingleExpression(expr, context, result) {
|
|
50
59
|
let match;
|
|
51
|
-
|
|
60
|
+
const jsonPattern = new RegExp(this.VARIABLE_PATTERNS.json.source, this.VARIABLE_PATTERNS.json.flags);
|
|
61
|
+
while ((match = jsonPattern.exec(expr)) !== null) {
|
|
52
62
|
result.usedVariables.add('$json');
|
|
53
63
|
if (!context.hasInputData && !context.isInLoop) {
|
|
54
64
|
result.warnings.push('Using $json but node might not have input data');
|
|
55
65
|
}
|
|
56
66
|
}
|
|
57
|
-
|
|
67
|
+
const nodePattern = new RegExp(this.VARIABLE_PATTERNS.node.source, this.VARIABLE_PATTERNS.node.flags);
|
|
68
|
+
while ((match = nodePattern.exec(expr)) !== null) {
|
|
58
69
|
const nodeName = match[1];
|
|
59
70
|
result.usedNodes.add(nodeName);
|
|
60
71
|
result.usedVariables.add('$node');
|
|
61
72
|
}
|
|
62
|
-
|
|
73
|
+
const inputPattern = new RegExp(this.VARIABLE_PATTERNS.input.source, this.VARIABLE_PATTERNS.input.flags);
|
|
74
|
+
while ((match = inputPattern.exec(expr)) !== null) {
|
|
63
75
|
result.usedVariables.add('$input');
|
|
64
76
|
if (!context.hasInputData) {
|
|
65
|
-
result.
|
|
77
|
+
result.warnings.push('$input is only available when the node has input data');
|
|
66
78
|
}
|
|
67
79
|
}
|
|
68
|
-
|
|
80
|
+
const itemsPattern = new RegExp(this.VARIABLE_PATTERNS.items.source, this.VARIABLE_PATTERNS.items.flags);
|
|
81
|
+
while ((match = itemsPattern.exec(expr)) !== null) {
|
|
69
82
|
const nodeName = match[1];
|
|
70
83
|
result.usedNodes.add(nodeName);
|
|
71
84
|
result.usedVariables.add('$items');
|
|
@@ -73,7 +86,8 @@ class ExpressionValidator {
|
|
|
73
86
|
for (const [varName, pattern] of Object.entries(this.VARIABLE_PATTERNS)) {
|
|
74
87
|
if (['json', 'node', 'input', 'items'].includes(varName))
|
|
75
88
|
continue;
|
|
76
|
-
|
|
89
|
+
const testPattern = new RegExp(pattern.source, pattern.flags);
|
|
90
|
+
if (testPattern.test(expr)) {
|
|
77
91
|
result.usedVariables.add(`$${varName}`);
|
|
78
92
|
}
|
|
79
93
|
}
|
|
@@ -112,19 +126,26 @@ class ExpressionValidator {
|
|
|
112
126
|
usedVariables: new Set(),
|
|
113
127
|
usedNodes: new Set(),
|
|
114
128
|
};
|
|
115
|
-
|
|
129
|
+
const visited = new WeakSet();
|
|
130
|
+
this.validateParametersRecursive(parameters, context, combinedResult, '', visited);
|
|
116
131
|
combinedResult.valid = combinedResult.errors.length === 0;
|
|
117
132
|
return combinedResult;
|
|
118
133
|
}
|
|
119
|
-
static validateParametersRecursive(obj, context, result, path = '') {
|
|
134
|
+
static validateParametersRecursive(obj, context, result, path = '', visited = new WeakSet()) {
|
|
135
|
+
if (obj && typeof obj === 'object') {
|
|
136
|
+
if (visited.has(obj)) {
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
visited.add(obj);
|
|
140
|
+
}
|
|
120
141
|
if (typeof obj === 'string') {
|
|
121
142
|
if (obj.includes('{{')) {
|
|
122
143
|
const validation = this.validateExpression(obj, context);
|
|
123
144
|
validation.errors.forEach(error => {
|
|
124
|
-
result.errors.push(`${path}: ${error}`);
|
|
145
|
+
result.errors.push(path ? `${path}: ${error}` : error);
|
|
125
146
|
});
|
|
126
147
|
validation.warnings.forEach(warning => {
|
|
127
|
-
result.warnings.push(`${path}: ${warning}`);
|
|
148
|
+
result.warnings.push(path ? `${path}: ${warning}` : warning);
|
|
128
149
|
});
|
|
129
150
|
validation.usedVariables.forEach(v => result.usedVariables.add(v));
|
|
130
151
|
validation.usedNodes.forEach(n => result.usedNodes.add(n));
|
|
@@ -132,24 +153,24 @@ class ExpressionValidator {
|
|
|
132
153
|
}
|
|
133
154
|
else if (Array.isArray(obj)) {
|
|
134
155
|
obj.forEach((item, index) => {
|
|
135
|
-
this.validateParametersRecursive(item, context, result, `${path}[${index}]
|
|
156
|
+
this.validateParametersRecursive(item, context, result, `${path}[${index}]`, visited);
|
|
136
157
|
});
|
|
137
158
|
}
|
|
138
159
|
else if (obj && typeof obj === 'object') {
|
|
139
160
|
Object.entries(obj).forEach(([key, value]) => {
|
|
140
161
|
const newPath = path ? `${path}.${key}` : key;
|
|
141
|
-
this.validateParametersRecursive(value, context, result, newPath);
|
|
162
|
+
this.validateParametersRecursive(value, context, result, newPath, visited);
|
|
142
163
|
});
|
|
143
164
|
}
|
|
144
165
|
}
|
|
145
166
|
}
|
|
146
167
|
exports.ExpressionValidator = ExpressionValidator;
|
|
147
|
-
ExpressionValidator.EXPRESSION_PATTERN = /\{\{(
|
|
168
|
+
ExpressionValidator.EXPRESSION_PATTERN = /\{\{([\s\S]+?)\}\}/g;
|
|
148
169
|
ExpressionValidator.VARIABLE_PATTERNS = {
|
|
149
170
|
json: /\$json(\.[a-zA-Z_][\w]*|\["[^"]+"\]|\['[^']+'\]|\[\d+\])*/g,
|
|
150
171
|
node: /\$node\["([^"]+)"\]\.json/g,
|
|
151
172
|
input: /\$input\.item(\.[a-zA-Z_][\w]*|\["[^"]+"\]|\['[^']+'\]|\[\d+\])*/g,
|
|
152
|
-
items: /\$items\("([^"]+)"(?:,\s*(
|
|
173
|
+
items: /\$items\("([^"]+)"(?:,\s*(-?\d+))?\)/g,
|
|
153
174
|
parameter: /\$parameter\["([^"]+)"\]/g,
|
|
154
175
|
env: /\$env\.([a-zA-Z_][\w]*)/g,
|
|
155
176
|
workflow: /\$workflow\.(id|name|active)/g,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expression-validator.js","sourceRoot":"","sources":["../../src/services/expression-validator.ts"],"names":[],"mappings":";;;AAoBA,MAAa,mBAAmB;IAsB9B,MAAM,CAAC,kBAAkB,CACvB,UAAkB,EAClB,OAA0B;QAE1B,MAAM,MAAM,GAA+B;YACzC,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,EAAE;YACV,QAAQ,EAAE,EAAE;YACZ,aAAa,EAAE,IAAI,GAAG,EAAE;YACxB,SAAS,EAAE,IAAI,GAAG,EAAE;SACrB,CAAC;QAGF,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QACxD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;QAGpC,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAExD,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;YAE/B,IAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACvD,CAAC;QAGD,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAE1C,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC;QAC1C,OAAO,MAAM,CAAC;IAChB,CAAC;IAKO,MAAM,CAAC,iBAAiB,CAAC,UAAkB;QACjD,MAAM,MAAM,GAAa,EAAE,CAAC;QAG5B,MAAM,YAAY,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;QAC9D,MAAM,aAAa,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;QAE/D,IAAI,YAAY,KAAK,aAAa,EAAE,CAAC;YACnC,MAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;QACrD,CAAC;QAGD,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACzF,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAC7C,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAGD,IAAI,
|
|
1
|
+
{"version":3,"file":"expression-validator.js","sourceRoot":"","sources":["../../src/services/expression-validator.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ export declare const workflowNodeSchema: z.ZodObject<{
|
|
|
7
7
|
typeVersion: z.ZodNumber;
|
|
8
8
|
position: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
|
|
9
9
|
parameters: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
10
|
-
credentials: z.ZodOptional<z.ZodRecord<z.ZodString, z.
|
|
10
|
+
credentials: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
11
11
|
disabled: z.ZodOptional<z.ZodBoolean>;
|
|
12
12
|
notes: z.ZodOptional<z.ZodString>;
|
|
13
13
|
notesInFlow: z.ZodOptional<z.ZodBoolean>;
|
|
@@ -33,7 +33,7 @@ export declare const workflowNodeSchema: z.ZodObject<{
|
|
|
33
33
|
disabled?: boolean | undefined;
|
|
34
34
|
notes?: string | undefined;
|
|
35
35
|
notesInFlow?: boolean | undefined;
|
|
36
|
-
credentials?: Record<string,
|
|
36
|
+
credentials?: Record<string, unknown> | undefined;
|
|
37
37
|
}, {
|
|
38
38
|
name: string;
|
|
39
39
|
id: string;
|
|
@@ -50,7 +50,7 @@ export declare const workflowNodeSchema: z.ZodObject<{
|
|
|
50
50
|
disabled?: boolean | undefined;
|
|
51
51
|
notes?: string | undefined;
|
|
52
52
|
notesInFlow?: boolean | undefined;
|
|
53
|
-
credentials?: Record<string,
|
|
53
|
+
credentials?: Record<string, unknown> | undefined;
|
|
54
54
|
}>;
|
|
55
55
|
export declare const workflowConnectionSchema: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
56
56
|
main: z.ZodArray<z.ZodArray<z.ZodObject<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"n8n-validation.d.ts","sourceRoot":"","sources":["../../src/services/n8n-validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAI9E,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiB7B,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;GAYpC,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;EASjC,CAAC;AAGH,eAAO,MAAM,uBAAuB;;;;;;CAMnC,CAAC;AAGF,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,YAAY,CAEhE;AAED,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,OAAO,GAAG,kBAAkB,CAEpF;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAElG;AAGD,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAqBrF;AAeD,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAwB5E;AAGD,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"n8n-validation.d.ts","sourceRoot":"","sources":["../../src/services/n8n-validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAI9E,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiB7B,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;GAYpC,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;EASjC,CAAC;AAGH,eAAO,MAAM,uBAAuB;;;;;;CAMnC,CAAC;AAGF,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,YAAY,CAEhE;AAED,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,OAAO,GAAG,kBAAkB,CAEpF;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAElG;AAGD,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAqBrF;AAeD,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAwB5E;AAGD,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE,CAuG/E;AAGD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAK7D;AAGD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI,CAmB/D;AAGD,wBAAgB,2BAA2B,IAAI,MAAM,CA6CpD;AAGD,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAmBpE"}
|
|
@@ -19,7 +19,7 @@ exports.workflowNodeSchema = zod_1.z.object({
|
|
|
19
19
|
typeVersion: zod_1.z.number(),
|
|
20
20
|
position: zod_1.z.tuple([zod_1.z.number(), zod_1.z.number()]),
|
|
21
21
|
parameters: zod_1.z.record(zod_1.z.unknown()),
|
|
22
|
-
credentials: zod_1.z.record(zod_1.z.
|
|
22
|
+
credentials: zod_1.z.record(zod_1.z.unknown()).optional(),
|
|
23
23
|
disabled: zod_1.z.boolean().optional(),
|
|
24
24
|
notes: zod_1.z.string().optional(),
|
|
25
25
|
notesInFlow: zod_1.z.boolean().optional(),
|
|
@@ -137,19 +137,23 @@ function validateWorkflowStructure(workflow) {
|
|
|
137
137
|
errors.push(`Connection references non-existent node: ${sourceName}`);
|
|
138
138
|
}
|
|
139
139
|
}
|
|
140
|
-
connection.main.
|
|
141
|
-
|
|
142
|
-
if (
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
140
|
+
if (connection.main && Array.isArray(connection.main)) {
|
|
141
|
+
connection.main.forEach((outputs, outputIndex) => {
|
|
142
|
+
if (Array.isArray(outputs)) {
|
|
143
|
+
outputs.forEach((target, targetIndex) => {
|
|
144
|
+
if (!nodeNames.has(target.node)) {
|
|
145
|
+
if (nodeIds.has(target.node)) {
|
|
146
|
+
const correctName = nodeIdToName.get(target.node);
|
|
147
|
+
errors.push(`Connection target uses node ID '${target.node}' but must use node name '${correctName}' (from ${sourceName}[${outputIndex}][${targetIndex}])`);
|
|
148
|
+
}
|
|
149
|
+
else {
|
|
150
|
+
errors.push(`Connection references non-existent target node: ${target.node} (from ${sourceName}[${outputIndex}][${targetIndex}])`);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
});
|
|
150
154
|
}
|
|
151
155
|
});
|
|
152
|
-
}
|
|
156
|
+
}
|
|
153
157
|
});
|
|
154
158
|
}
|
|
155
159
|
return errors;
|