@tehw0lf/n8n-nodes-toon 1.3.3 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isRepresentableString = isRepresentableString;
4
+ exports.assertNoLoneSurrogate = assertNoLoneSurrogate;
3
5
  exports.escapeString = escapeString;
4
6
  exports.unescapeString = unescapeString;
7
+ exports.tryUnescapeString = tryUnescapeString;
5
8
  exports.getDelimiterChar = getDelimiterChar;
6
9
  exports.needsQuoting = needsQuoting;
7
10
  exports.canonicalizeNumber = canonicalizeNumber;
@@ -11,12 +14,55 @@ exports.isValidKey = isValidKey;
11
14
  exports.keyNeedsQuoting = keyNeedsQuoting;
12
15
  exports.indent = indent;
13
16
  exports.parseNumber = parseNumber;
17
+ exports.splitDelimited = splitDelimited;
18
+ exports.trimSpaces = trimSpaces;
19
+ exports.findUnquoted = findUnquoted;
20
+ exports.parseFieldList = parseFieldList;
14
21
  exports.parseToken = parseToken;
22
+ exports.tryParseHeader = tryParseHeader;
23
+ exports.parseHeader = parseHeader;
15
24
  exports.isPlainObject = isPlainObject;
25
+ exports.setDecodedKey = setDecodedKey;
16
26
  exports.isSafeKey = isSafeKey;
17
27
  exports.isArrayOfPrimitives = isArrayOfPrimitives;
18
- exports.isUniformArray = isUniformArray;
28
+ exports.isPrimitive = isPrimitive;
29
+ exports.buildFieldTree = buildFieldTree;
30
+ exports.getTabularFields = getTabularFields;
31
+ exports.getKeyedTabularFields = getKeyedTabularFields;
32
+ exports.leafFields = leafFields;
33
+ exports.countLeafFields = countLeafFields;
34
+ exports.collectLeafValues = collectLeafValues;
35
+ exports.findDuplicateFieldName = findDuplicateFieldName;
36
+ exports.delimiterSymbol = delimiterSymbol;
37
+ exports.encodeKey = encodeKey;
38
+ exports.serializeFields = serializeFields;
39
+ function isRepresentableString(str) {
40
+ try {
41
+ assertNoLoneSurrogate(str);
42
+ return true;
43
+ }
44
+ catch {
45
+ return false;
46
+ }
47
+ }
48
+ function assertNoLoneSurrogate(str) {
49
+ for (let i = 0; i < str.length; i++) {
50
+ const code = str.charCodeAt(i);
51
+ if (code >= 0xd800 && code <= 0xdbff) {
52
+ const next = i + 1 < str.length ? str.charCodeAt(i + 1) : 0;
53
+ if (next < 0xdc00 || next > 0xdfff) {
54
+ throw new Error(`Unpaired surrogate at position ${i}: string is not representable in TOON`);
55
+ }
56
+ i++;
57
+ continue;
58
+ }
59
+ if (code >= 0xdc00 && code <= 0xdfff) {
60
+ throw new Error(`Unpaired surrogate at position ${i}: string is not representable in TOON`);
61
+ }
62
+ }
63
+ }
19
64
  function escapeString(str) {
65
+ assertNoLoneSurrogate(str);
20
66
  let result = '';
21
67
  for (let i = 0; i < str.length; i++) {
22
68
  const ch = str[i];
@@ -102,6 +148,14 @@ function unescapeString(str) {
102
148
  }
103
149
  return result;
104
150
  }
151
+ function tryUnescapeString(str) {
152
+ try {
153
+ return { value: unescapeString(str), error: null };
154
+ }
155
+ catch (error) {
156
+ return { value: null, error: error.message };
157
+ }
158
+ }
105
159
  function getDelimiterChar(option) {
106
160
  switch (option) {
107
161
  case 'comma':
@@ -118,16 +172,13 @@ function needsQuoting(value, activeDelimiter, documentDelimiter, context) {
118
172
  if (value === '') {
119
173
  return true;
120
174
  }
121
- if (/^[\s]|[\s]$/.test(value)) {
175
+ if (/^[ \t]|[ \t]$/.test(value)) {
122
176
  return true;
123
177
  }
124
178
  if (value === 'true' || value === 'false' || value === 'null') {
125
179
  return true;
126
180
  }
127
- if (/^-?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?$/.test(value)) {
128
- return true;
129
- }
130
- if (/^0\d+$/.test(value)) {
181
+ if (/^[+-]?[0-9]+(?:\.[0-9]+)?(?:e[+-]?[0-9]+)?$/i.test(value)) {
131
182
  return true;
132
183
  }
133
184
  if (/[:"\\[\]{}]/.test(value)) {
@@ -136,7 +187,10 @@ function needsQuoting(value, activeDelimiter, documentDelimiter, context) {
136
187
  if (/[\x00-\x1f]/.test(value)) {
137
188
  return true;
138
189
  }
139
- if (value === '-' || /^-[^\d]/.test(value)) {
190
+ if (value.startsWith('-')) {
191
+ return true;
192
+ }
193
+ if (value.startsWith('#')) {
140
194
  return true;
141
195
  }
142
196
  const relevantDelimiter = context === 'array' ? activeDelimiter : documentDelimiter;
@@ -209,7 +263,140 @@ function parseNumber(token) {
209
263
  if (isNaN(num)) {
210
264
  throw new Error(`Invalid number: ${token}`);
211
265
  }
212
- return num;
266
+ return Object.is(num, -0) ? 0 : num;
267
+ }
268
+ function splitDelimited(text, delimiter) {
269
+ const tokens = [];
270
+ let current = '';
271
+ let inQuotes = false;
272
+ let i = 0;
273
+ while (i < text.length) {
274
+ const char = text[i];
275
+ if (inQuotes && char === '\\' && i + 1 < text.length) {
276
+ current += char + text[i + 1];
277
+ i += 2;
278
+ continue;
279
+ }
280
+ if (char === '"') {
281
+ inQuotes = !inQuotes;
282
+ current += char;
283
+ i++;
284
+ continue;
285
+ }
286
+ if (!inQuotes && char === delimiter) {
287
+ tokens.push(trimSpaces(current));
288
+ current = '';
289
+ i++;
290
+ continue;
291
+ }
292
+ current += char;
293
+ i++;
294
+ }
295
+ tokens.push(trimSpaces(current));
296
+ return tokens;
297
+ }
298
+ function trimSpaces(text) {
299
+ return text.replace(/^ +/, '').replace(/ +$/, '');
300
+ }
301
+ function findUnquoted(text, target) {
302
+ let inQuotes = false;
303
+ let i = 0;
304
+ while (i < text.length) {
305
+ const char = text[i];
306
+ if (inQuotes && char === '\\' && i + 1 < text.length) {
307
+ i += 2;
308
+ continue;
309
+ }
310
+ if (char === '"') {
311
+ inQuotes = !inQuotes;
312
+ i++;
313
+ continue;
314
+ }
315
+ if (!inQuotes && char === target) {
316
+ return i;
317
+ }
318
+ i++;
319
+ }
320
+ return -1;
321
+ }
322
+ function parseFieldList(body, delimiter) {
323
+ const entries = splitFieldEntries(body, delimiter);
324
+ if (entries.length === 0 || (entries.length === 1 && entries[0] === '')) {
325
+ throw new Error('Empty field list in header');
326
+ }
327
+ return entries.map((entry) => {
328
+ const bracePos = findUnquotedBrace(entry);
329
+ if (bracePos < 0) {
330
+ return { name: decodeFieldName(entry), children: null };
331
+ }
332
+ if (!entry.endsWith('}')) {
333
+ throw new Error(`Unmatched braces in field list: ${entry}`);
334
+ }
335
+ const name = decodeFieldName(entry.slice(0, bracePos));
336
+ const nested = entry.slice(bracePos + 1, -1);
337
+ return { name, children: parseFieldList(nested, delimiter) };
338
+ });
339
+ }
340
+ function decodeFieldName(token) {
341
+ const trimmed = trimSpaces(token);
342
+ if (trimmed === '') {
343
+ throw new Error('Empty field name in header');
344
+ }
345
+ if (trimmed.startsWith('"')) {
346
+ if (!trimmed.endsWith('"') || trimmed.length < 2) {
347
+ throw new Error(`Unterminated quoted field name: ${trimmed}`);
348
+ }
349
+ return unescapeString(trimmed.slice(1, -1));
350
+ }
351
+ return trimmed;
352
+ }
353
+ function findUnquotedBrace(text) {
354
+ return findUnquoted(text, '{');
355
+ }
356
+ function splitFieldEntries(body, delimiter) {
357
+ const entries = [];
358
+ let current = '';
359
+ let inQuotes = false;
360
+ let braceDepth = 0;
361
+ let i = 0;
362
+ while (i < body.length) {
363
+ const char = body[i];
364
+ if (inQuotes && char === '\\' && i + 1 < body.length) {
365
+ current += char + body[i + 1];
366
+ i += 2;
367
+ continue;
368
+ }
369
+ if (char === '"') {
370
+ inQuotes = !inQuotes;
371
+ current += char;
372
+ i++;
373
+ continue;
374
+ }
375
+ if (!inQuotes) {
376
+ if (char === '{') {
377
+ braceDepth++;
378
+ }
379
+ else if (char === '}') {
380
+ braceDepth--;
381
+ if (braceDepth < 0) {
382
+ throw new Error('Unmatched closing brace in field list');
383
+ }
384
+ }
385
+ else if (char === delimiter && braceDepth === 0) {
386
+ entries.push(trimSpaces(current));
387
+ current = '';
388
+ i++;
389
+ continue;
390
+ }
391
+ }
392
+ current += char;
393
+ i++;
394
+ }
395
+ if (braceDepth !== 0) {
396
+ throw new Error('Unmatched opening brace in field list');
397
+ }
398
+ entries.push(trimSpaces(current));
399
+ return entries;
213
400
  }
214
401
  function parseToken(token) {
215
402
  if (token === 'true') {
@@ -226,9 +413,138 @@ function parseToken(token) {
226
413
  }
227
414
  return token;
228
415
  }
416
+ function tryParseHeader(content) {
417
+ try {
418
+ return { header: parseHeader(content), error: null };
419
+ }
420
+ catch (error) {
421
+ return { header: null, error: error.message };
422
+ }
423
+ }
424
+ function parseHeader(content) {
425
+ const firstColon = findUnquoted(content, ':');
426
+ const firstBracket = findUnquoted(content, '[');
427
+ if (firstBracket < 0 || (firstColon >= 0 && firstColon < firstBracket)) {
428
+ return null;
429
+ }
430
+ const keyPart = content.slice(0, firstBracket);
431
+ const rest = content.slice(firstBracket);
432
+ const closing = rest.indexOf(']');
433
+ if (closing < 0) {
434
+ return null;
435
+ }
436
+ const segment = rest.slice(1, closing);
437
+ if (/\s/.test(keyPart)) {
438
+ throw new Error(`Whitespace between key and bracket segment: ${content}`);
439
+ }
440
+ const parsedSegment = parseBracketSegment(segment);
441
+ if (parsedSegment === null) {
442
+ return null;
443
+ }
444
+ const { length, delimiter, keyed } = parsedSegment;
445
+ let key = null;
446
+ if (keyPart !== '') {
447
+ if (keyPart.startsWith('"')) {
448
+ if (!keyPart.endsWith('"') || keyPart.length < 2) {
449
+ throw new Error(`Unterminated quoted key in header: ${content}`);
450
+ }
451
+ key = unescapeString(keyPart.slice(1, -1));
452
+ }
453
+ else {
454
+ key = keyPart;
455
+ }
456
+ }
457
+ let after = rest.slice(closing + 1);
458
+ let fields = null;
459
+ if (after.startsWith('{')) {
460
+ const closeBrace = findMatchingBrace(after);
461
+ if (closeBrace < 0) {
462
+ throw new Error(`Unmatched brace in header field list: ${content}`);
463
+ }
464
+ fields = parseFieldList(after.slice(1, closeBrace), delimiter);
465
+ after = after.slice(closeBrace + 1);
466
+ }
467
+ if (!after.startsWith(':')) {
468
+ throw new Error(`Missing or misplaced colon in header: ${content}`);
469
+ }
470
+ if (keyed && fields === null) {
471
+ throw new Error(`Keyed header requires a field list: ${content}`);
472
+ }
473
+ if (fields !== null) {
474
+ const duplicate = findDuplicateFieldName(fields);
475
+ if (duplicate !== null) {
476
+ throw new Error(`Duplicate field name in header field list: ${duplicate}`);
477
+ }
478
+ }
479
+ return {
480
+ key,
481
+ length,
482
+ delimiter,
483
+ fields,
484
+ keyed,
485
+ inline: trimSpaces(after.slice(1)),
486
+ };
487
+ }
488
+ function parseBracketSegment(segment) {
489
+ const match = segment.match(/^(\d+)(:)?([\t|])?$/);
490
+ if (!match) {
491
+ if (/^\d/.test(segment) || segment === '') {
492
+ throw new Error(`Malformed bracket segment: [${segment}]`);
493
+ }
494
+ return null;
495
+ }
496
+ const [, digits, keyedMarker, delimSym] = match;
497
+ if (digits.length > 1 && digits.startsWith('0')) {
498
+ throw new Error(`Leading zeros are not allowed in bracket length: [${segment}]`);
499
+ }
500
+ const delimiter = delimSym === '\t' ? '\t' : delimSym === '|' ? '|' : ',';
501
+ return {
502
+ length: parseInt(digits, 10),
503
+ delimiter,
504
+ keyed: keyedMarker === ':',
505
+ };
506
+ }
507
+ function findMatchingBrace(text) {
508
+ let depth = 0;
509
+ let inQuotes = false;
510
+ let i = 0;
511
+ while (i < text.length) {
512
+ const char = text[i];
513
+ if (inQuotes && char === '\\' && i + 1 < text.length) {
514
+ i += 2;
515
+ continue;
516
+ }
517
+ if (char === '"') {
518
+ inQuotes = !inQuotes;
519
+ i++;
520
+ continue;
521
+ }
522
+ if (!inQuotes) {
523
+ if (char === '{') {
524
+ depth++;
525
+ }
526
+ else if (char === '}') {
527
+ depth--;
528
+ if (depth === 0) {
529
+ return i;
530
+ }
531
+ }
532
+ }
533
+ i++;
534
+ }
535
+ return -1;
536
+ }
229
537
  function isPlainObject(value) {
230
538
  return typeof value === 'object' && value !== null && !Array.isArray(value);
231
539
  }
540
+ function setDecodedKey(obj, key, value) {
541
+ Object.defineProperty(obj, key, {
542
+ value,
543
+ writable: true,
544
+ enumerable: true,
545
+ configurable: true,
546
+ });
547
+ }
232
548
  function isSafeKey(key) {
233
549
  return key !== '__proto__' && key !== 'constructor' && key !== 'prototype';
234
550
  }
@@ -242,41 +558,139 @@ function isArrayOfPrimitives(arr) {
242
558
  type === 'undefined');
243
559
  });
244
560
  }
245
- function isUniformArray(arr) {
246
- if (arr.length === 0) {
247
- return false;
248
- }
249
- if (!arr.every((item) => isPlainObject(item))) {
250
- return false;
251
- }
252
- const objects = arr;
253
- const firstKeys = Object.keys(objects[0]).sort();
254
- if (firstKeys.length === 0) {
255
- return false;
256
- }
561
+ function isPrimitive(value) {
562
+ const type = typeof value;
563
+ return (value === null ||
564
+ value === undefined ||
565
+ type === 'string' ||
566
+ type === 'number' ||
567
+ type === 'boolean');
568
+ }
569
+ function haveSameKeySet(objects) {
570
+ const firstKeys = Object.keys(objects[0]);
571
+ const reference = new Set(firstKeys);
257
572
  for (let i = 1; i < objects.length; i++) {
258
- const keys = Object.keys(objects[i]).sort();
573
+ const keys = Object.keys(objects[i]);
259
574
  if (keys.length !== firstKeys.length) {
260
575
  return false;
261
576
  }
262
- for (let j = 0; j < keys.length; j++) {
263
- if (keys[j] !== firstKeys[j]) {
577
+ for (const key of keys) {
578
+ if (!reference.has(key)) {
264
579
  return false;
265
580
  }
266
581
  }
267
582
  }
268
- for (const obj of objects) {
269
- for (const value of Object.values(obj)) {
270
- const type = typeof value;
271
- if (value !== null &&
272
- type !== 'string' &&
273
- type !== 'number' &&
274
- type !== 'boolean' &&
275
- type !== 'undefined') {
276
- return false;
583
+ return true;
584
+ }
585
+ function buildFieldTree(objects) {
586
+ if (objects.length === 0) {
587
+ return null;
588
+ }
589
+ if (objects.some((obj) => Object.keys(obj).length === 0)) {
590
+ return null;
591
+ }
592
+ if (!haveSameKeySet(objects)) {
593
+ return null;
594
+ }
595
+ const fields = [];
596
+ for (const name of Object.keys(objects[0])) {
597
+ const column = objects.map((obj) => obj[name]);
598
+ if (column.every((value) => isPrimitive(value))) {
599
+ fields.push({ name, children: null });
600
+ continue;
601
+ }
602
+ if (!column.every((value) => isPlainObject(value))) {
603
+ return null;
604
+ }
605
+ const children = buildFieldTree(column);
606
+ if (children === null) {
607
+ return null;
608
+ }
609
+ fields.push({ name, children });
610
+ }
611
+ return fields;
612
+ }
613
+ function getTabularFields(arr) {
614
+ if (arr.length === 0) {
615
+ return null;
616
+ }
617
+ if (!arr.every((item) => isPlainObject(item))) {
618
+ return null;
619
+ }
620
+ return buildFieldTree(arr);
621
+ }
622
+ function getKeyedTabularFields(obj) {
623
+ const values = Object.values(obj);
624
+ if (values.length < 2) {
625
+ return null;
626
+ }
627
+ if (!values.every((value) => isPlainObject(value))) {
628
+ return null;
629
+ }
630
+ return buildFieldTree(values);
631
+ }
632
+ function leafFields(fields) {
633
+ const leaves = [];
634
+ for (const field of fields) {
635
+ if (field.children === null) {
636
+ leaves.push(field);
637
+ }
638
+ else {
639
+ leaves.push(...leafFields(field.children));
640
+ }
641
+ }
642
+ return leaves;
643
+ }
644
+ function countLeafFields(fields) {
645
+ return leafFields(fields).length;
646
+ }
647
+ function collectLeafValues(obj, fields) {
648
+ const values = [];
649
+ for (const field of fields) {
650
+ const value = obj[field.name];
651
+ if (field.children === null) {
652
+ values.push(value);
653
+ }
654
+ else {
655
+ values.push(...collectLeafValues(value, field.children));
656
+ }
657
+ }
658
+ return values;
659
+ }
660
+ function findDuplicateFieldName(fields) {
661
+ const seen = new Set();
662
+ for (const field of fields) {
663
+ if (seen.has(field.name)) {
664
+ return field.name;
665
+ }
666
+ seen.add(field.name);
667
+ if (field.children !== null) {
668
+ const nested = findDuplicateFieldName(field.children);
669
+ if (nested !== null) {
670
+ return nested;
277
671
  }
278
672
  }
279
673
  }
280
- return true;
674
+ return null;
675
+ }
676
+ function delimiterSymbol(delimiter) {
677
+ return delimiter === ',' ? '' : delimiter;
678
+ }
679
+ function encodeKey(key) {
680
+ if (keyNeedsQuoting(key)) {
681
+ return `"${escapeString(key)}"`;
682
+ }
683
+ assertNoLoneSurrogate(key);
684
+ return key;
685
+ }
686
+ function serializeFields(fields, delimiter) {
687
+ return fields
688
+ .map((field) => {
689
+ const name = encodeKey(field.name);
690
+ return field.children === null
691
+ ? name
692
+ : `${name}{${serializeFields(field.children, delimiter)}}`;
693
+ })
694
+ .join(delimiter);
281
695
  }
282
696
  //# sourceMappingURL=ToonUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ToonUtils.js","sourceRoot":"","sources":["../../../nodes/Toon/ToonUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ToonUtils.js","sourceRoot":"","sources":["../../../nodes/Toon/ToonUtils.ts"],"names":[],"mappings":"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"}
@@ -13,11 +13,17 @@ export interface DecoderOptions {
13
13
  strict: boolean;
14
14
  expandPaths: PathExpansionMode;
15
15
  }
16
+ export interface FieldEntry {
17
+ name: string;
18
+ children: FieldEntry[] | null;
19
+ }
16
20
  export interface HeaderInfo {
17
21
  key: string | null;
18
22
  length: number;
19
23
  delimiter: Delimiter;
20
- fields: string[] | null;
24
+ fields: FieldEntry[] | null;
25
+ keyed: boolean;
26
+ inline: string;
21
27
  rawLine: string;
22
28
  lineNumber: number;
23
29
  }
@@ -26,6 +32,7 @@ export interface ParsedLine {
26
32
  indent: number;
27
33
  lineNumber: number;
28
34
  isEmpty: boolean;
35
+ blankBefore: boolean;
29
36
  }
30
37
  export declare class ToonEncodingError extends Error {
31
38
  readonly context?: {
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../nodes/Toon/types.ts"],"names":[],"mappings":";;;AAsFA,MAAa,iBAAkB,SAAQ,KAAK;IAC1C,YACE,OAAe,EACC,OAIf;QAED,KAAK,CAAC,OAAO,CAAC,CAAC;QANC,YAAO,GAAP,OAAO,CAItB;QAGD,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF;AAZD,8CAYC;AAKD,MAAa,iBAAkB,SAAQ,KAAK;IAC1C,YACE,OAAe,EACC,OAKf;QAED,KAAK,CAAC,OAAO,CAAC,CAAC;QAPC,YAAO,GAAP,OAAO,CAKtB;QAGD,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF;AAbD,8CAaC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../nodes/Toon/types.ts"],"names":[],"mappings":";;;AAwGA,MAAa,iBAAkB,SAAQ,KAAK;IAC1C,YACE,OAAe,EACC,OAIf;QAED,KAAK,CAAC,OAAO,CAAC,CAAC;QANC,YAAO,GAAP,OAAO,CAItB;QAGD,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF;AAZD,8CAYC;AAKD,MAAa,iBAAkB,SAAQ,KAAK;IAC1C,YACE,OAAe,EACC,OAKf;QAED,KAAK,CAAC,OAAO,CAAC,CAAC;QAPC,YAAO,GAAP,OAAO,CAKtB;QAGD,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF;AAbD,8CAaC"}
package/dist/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@tehw0lf/n8n-nodes-toon",
3
- "version": "1.3.3",
3
+ "version": "1.4.0",
4
4
  "description": "n8n node for TOON (Token-Oriented Object Notation) format conversion - bidirectional conversion between TOON and JSON with zero external dependencies",
5
- "toonSpecVersion": "3.3.2",
5
+ "toonSpecVersion": "4.1.0",
6
6
  "license": "MIT",
7
7
  "homepage": "https://github.com/tehw0lf/n8n-nodes-toon#readme",
8
8
  "keywords": [