@tehw0lf/n8n-nodes-toon 1.0.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.
@@ -0,0 +1,287 @@
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.ToonEncoder = void 0;
37
+ const utils = __importStar(require("./ToonUtils"));
38
+ class ToonEncoder {
39
+ constructor(options) {
40
+ this.options = options;
41
+ this.documentDelimiter = options.delimiter;
42
+ }
43
+ encode(value) {
44
+ const normalized = this.normalizeValue(value);
45
+ const folded = this.options.keyFolding === 'safe' && utils.isPlainObject(normalized)
46
+ ? this.foldKeys(normalized)
47
+ : normalized;
48
+ const lines = this.encodeValue(folded, 0);
49
+ return lines.join('\n');
50
+ }
51
+ normalizeValue(value) {
52
+ if (value === undefined || value === null) {
53
+ return null;
54
+ }
55
+ if (typeof value === 'function' || typeof value === 'symbol') {
56
+ return null;
57
+ }
58
+ if (typeof value === 'number') {
59
+ if (!isFinite(value)) {
60
+ return null;
61
+ }
62
+ return value;
63
+ }
64
+ if (Array.isArray(value)) {
65
+ return value.map((item) => this.normalizeValue(item));
66
+ }
67
+ if (utils.isPlainObject(value)) {
68
+ const result = {};
69
+ for (const [key, val] of Object.entries(value)) {
70
+ result[key] = this.normalizeValue(val);
71
+ }
72
+ return result;
73
+ }
74
+ return value;
75
+ }
76
+ encodeValue(value, depth, activeDelimiter) {
77
+ if (value === null) {
78
+ return ['null'];
79
+ }
80
+ if (typeof value === 'boolean') {
81
+ return [value.toString()];
82
+ }
83
+ if (typeof value === 'number') {
84
+ return [utils.canonicalizeNumber(value)];
85
+ }
86
+ if (typeof value === 'string') {
87
+ return [this.encodeString(value, activeDelimiter || this.documentDelimiter, 'object')];
88
+ }
89
+ if (Array.isArray(value)) {
90
+ return this.encodeArray(value, null, depth);
91
+ }
92
+ if (utils.isPlainObject(value)) {
93
+ return this.encodeObject(value, depth);
94
+ }
95
+ return ['null'];
96
+ }
97
+ encodeString(value, delimiter, context) {
98
+ if (utils.needsQuoting(value, delimiter, this.documentDelimiter, context)) {
99
+ return `"${utils.escapeString(value)}"`;
100
+ }
101
+ return value;
102
+ }
103
+ encodeObject(obj, depth) {
104
+ const lines = [];
105
+ const indentStr = utils.indent(depth, this.options.indent);
106
+ for (const [key, value] of Object.entries(obj)) {
107
+ const encodedKey = utils.keyNeedsQuoting(key)
108
+ ? `"${utils.escapeString(key)}"`
109
+ : key;
110
+ if (value === null) {
111
+ lines.push(`${indentStr}${encodedKey}: null`);
112
+ }
113
+ else if (typeof value === 'boolean') {
114
+ lines.push(`${indentStr}${encodedKey}: ${value.toString()}`);
115
+ }
116
+ else if (typeof value === 'number') {
117
+ lines.push(`${indentStr}${encodedKey}: ${utils.canonicalizeNumber(value)}`);
118
+ }
119
+ else if (typeof value === 'string') {
120
+ const encodedValue = this.encodeString(value, this.documentDelimiter, 'object');
121
+ lines.push(`${indentStr}${encodedKey}: ${encodedValue}`);
122
+ }
123
+ else if (Array.isArray(value)) {
124
+ const arrayLines = this.encodeArray(value, key, depth);
125
+ lines.push(...arrayLines);
126
+ }
127
+ else if (utils.isPlainObject(value)) {
128
+ lines.push(`${indentStr}${encodedKey}:`);
129
+ const nestedLines = this.encodeObject(value, depth + 1);
130
+ lines.push(...nestedLines);
131
+ }
132
+ else {
133
+ lines.push(`${indentStr}${encodedKey}: null`);
134
+ }
135
+ }
136
+ return lines;
137
+ }
138
+ encodeArray(arr, key, depth) {
139
+ if (utils.isUniformArray(arr)) {
140
+ return this.encodeTabular(arr, key, depth);
141
+ }
142
+ if (utils.isArrayOfPrimitives(arr)) {
143
+ return this.encodePrimitiveArray(arr, key, depth);
144
+ }
145
+ return this.encodeMixedArray(arr, key, depth);
146
+ }
147
+ encodePrimitiveArray(arr, key, depth) {
148
+ const lines = [];
149
+ const indentStr = utils.indent(depth, this.options.indent);
150
+ const delimiter = this.options.delimiter;
151
+ const delimiterSym = delimiter === ',' ? '' : delimiter === '\t' ? '\t' : '|';
152
+ const keyPart = key ? (utils.keyNeedsQuoting(key) ? `"${utils.escapeString(key)}"` : key) : '';
153
+ const header = `${indentStr}${keyPart}[${arr.length}${delimiterSym}]:`;
154
+ const encodedValues = arr.map((item) => this.encodePrimitiveValue(item, delimiter));
155
+ const inlineValues = encodedValues.join(delimiter === ',' ? ', ' : delimiter);
156
+ const inlineLine = `${header} ${inlineValues}`;
157
+ if (inlineLine.length < 80 && !inlineValues.includes('\n')) {
158
+ return [inlineLine];
159
+ }
160
+ lines.push(header);
161
+ const valueIndentStr = utils.indent(depth + 1, this.options.indent);
162
+ for (const encoded of encodedValues) {
163
+ lines.push(`${valueIndentStr}${encoded}`);
164
+ }
165
+ return lines;
166
+ }
167
+ encodePrimitiveValue(value, delimiter) {
168
+ if (value === null) {
169
+ return 'null';
170
+ }
171
+ if (typeof value === 'boolean') {
172
+ return value.toString();
173
+ }
174
+ if (typeof value === 'number') {
175
+ return utils.canonicalizeNumber(value);
176
+ }
177
+ if (typeof value === 'string') {
178
+ return this.encodeString(value, delimiter, 'array');
179
+ }
180
+ return 'null';
181
+ }
182
+ encodeTabular(arr, key, depth) {
183
+ const lines = [];
184
+ const delimiter = this.options.delimiter;
185
+ const indentStr = utils.indent(depth, this.options.indent);
186
+ const fields = Object.keys(arr[0]).sort();
187
+ const delimiterSym = delimiter === ',' ? '' : delimiter === '\t' ? '\t' : '|';
188
+ const keyPart = key ? (utils.keyNeedsQuoting(key) ? `"${utils.escapeString(key)}"` : key) : '';
189
+ const encodedFields = fields.map((field) => utils.keyNeedsQuoting(field) ? `"${utils.escapeString(field)}"` : field);
190
+ const fieldsStr = encodedFields.join(delimiter === ',' ? ', ' : delimiter);
191
+ const header = `${indentStr}${keyPart}[${arr.length}${delimiterSym}]{${fieldsStr}}:`;
192
+ lines.push(header);
193
+ const valueIndentStr = utils.indent(depth + 1, this.options.indent);
194
+ for (const obj of arr) {
195
+ const values = fields.map((field) => this.encodePrimitiveValue(obj[field], delimiter));
196
+ const rowStr = values.join(delimiter === ',' ? ', ' : delimiter);
197
+ lines.push(`${valueIndentStr}${rowStr}`);
198
+ }
199
+ return lines;
200
+ }
201
+ encodeMixedArray(arr, key, depth) {
202
+ const lines = [];
203
+ const indentStr = utils.indent(depth, this.options.indent);
204
+ const delimiter = this.options.delimiter;
205
+ const delimiterSym = delimiter === ',' ? '' : delimiter === '\t' ? '\t' : '|';
206
+ const keyPart = key ? (utils.keyNeedsQuoting(key) ? `"${utils.escapeString(key)}"` : key) : '';
207
+ const header = `${indentStr}${keyPart}[${arr.length}${delimiterSym}]:`;
208
+ lines.push(header);
209
+ for (const item of arr) {
210
+ if (item === null || typeof item === 'boolean' || typeof item === 'number' || typeof item === 'string') {
211
+ const valueIndentStr = utils.indent(depth + 1, this.options.indent);
212
+ const encoded = this.encodePrimitiveValue(item, delimiter);
213
+ lines.push(`${valueIndentStr}${encoded}`);
214
+ }
215
+ else if (Array.isArray(item)) {
216
+ const nestedLines = this.encodeArray(item, null, depth + 1);
217
+ lines.push(...nestedLines);
218
+ }
219
+ else if (utils.isPlainObject(item)) {
220
+ const objLines = this.encodeObject(item, depth + 1);
221
+ lines.push(...objLines);
222
+ }
223
+ else {
224
+ const valueIndentStr = utils.indent(depth + 1, this.options.indent);
225
+ lines.push(`${valueIndentStr}null`);
226
+ }
227
+ }
228
+ return lines;
229
+ }
230
+ foldKeys(obj) {
231
+ const result = {};
232
+ const maxDepth = this.options.flattenDepth;
233
+ for (const [key, value] of Object.entries(obj)) {
234
+ const chain = this.extractFoldableChain(key, value, maxDepth);
235
+ if (chain.length > 1 && this.isChainSafe(chain)) {
236
+ const foldedKey = chain.join('.');
237
+ const leafValue = this.getLeafValue(value, chain.length - 1);
238
+ result[foldedKey] = leafValue;
239
+ }
240
+ else {
241
+ if (utils.isPlainObject(value)) {
242
+ result[key] = this.foldKeys(value);
243
+ }
244
+ else {
245
+ result[key] = value;
246
+ }
247
+ }
248
+ }
249
+ return result;
250
+ }
251
+ extractFoldableChain(key, value, maxDepth) {
252
+ const chain = [key];
253
+ let current = value;
254
+ let depth = 1;
255
+ while (depth < maxDepth &&
256
+ utils.isPlainObject(current)) {
257
+ const keys = Object.keys(current);
258
+ if (keys.length !== 1) {
259
+ break;
260
+ }
261
+ const nextKey = keys[0];
262
+ chain.push(nextKey);
263
+ current = current[nextKey];
264
+ depth++;
265
+ }
266
+ return chain;
267
+ }
268
+ isChainSafe(chain) {
269
+ return chain.every((segment) => utils.isIdentifierSegment(segment));
270
+ }
271
+ getLeafValue(value, depth) {
272
+ let current = value;
273
+ for (let i = 0; i < depth; i++) {
274
+ if (!utils.isPlainObject(current)) {
275
+ return current;
276
+ }
277
+ const keys = Object.keys(current);
278
+ if (keys.length !== 1) {
279
+ return current;
280
+ }
281
+ current = current[keys[0]];
282
+ }
283
+ return current;
284
+ }
285
+ }
286
+ exports.ToonEncoder = ToonEncoder;
287
+ //# sourceMappingURL=ToonEncoder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToonEncoder.js","sourceRoot":"","sources":["../../../nodes/Toon/ToonEncoder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import type { Delimiter } from './types';
2
+ export declare function escapeString(str: string): string;
3
+ export declare function unescapeString(str: string): string;
4
+ export declare function getDelimiterChar(option: 'comma' | 'tab' | 'pipe'): Delimiter;
5
+ export declare function needsQuoting(value: string, activeDelimiter: string, documentDelimiter: string, context: 'array' | 'object'): boolean;
6
+ export declare function canonicalizeNumber(num: number): string;
7
+ export declare function isNumericToken(token: string): boolean;
8
+ export declare function isIdentifierSegment(segment: string): boolean;
9
+ export declare function isValidKey(key: string): boolean;
10
+ export declare function keyNeedsQuoting(key: string): boolean;
11
+ export declare function indent(level: number, size: number): string;
12
+ export declare function parseNumber(token: string): number;
13
+ export declare function parseToken(token: string): unknown;
14
+ export declare function isPlainObject(value: unknown): value is Record<string, unknown>;
15
+ export declare function isArrayOfPrimitives(arr: unknown[]): boolean;
16
+ export declare function isUniformArray(arr: unknown[]): arr is Record<string, unknown>[];
@@ -0,0 +1,244 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.escapeString = escapeString;
4
+ exports.unescapeString = unescapeString;
5
+ exports.getDelimiterChar = getDelimiterChar;
6
+ exports.needsQuoting = needsQuoting;
7
+ exports.canonicalizeNumber = canonicalizeNumber;
8
+ exports.isNumericToken = isNumericToken;
9
+ exports.isIdentifierSegment = isIdentifierSegment;
10
+ exports.isValidKey = isValidKey;
11
+ exports.keyNeedsQuoting = keyNeedsQuoting;
12
+ exports.indent = indent;
13
+ exports.parseNumber = parseNumber;
14
+ exports.parseToken = parseToken;
15
+ exports.isPlainObject = isPlainObject;
16
+ exports.isArrayOfPrimitives = isArrayOfPrimitives;
17
+ exports.isUniformArray = isUniformArray;
18
+ function escapeString(str) {
19
+ return str
20
+ .replace(/\\/g, '\\\\')
21
+ .replace(/"/g, '\\"')
22
+ .replace(/\n/g, '\\n')
23
+ .replace(/\r/g, '\\r')
24
+ .replace(/\t/g, '\\t');
25
+ }
26
+ function unescapeString(str) {
27
+ let result = '';
28
+ let i = 0;
29
+ while (i < str.length) {
30
+ if (str[i] === '\\') {
31
+ if (i + 1 >= str.length) {
32
+ throw new Error(`Invalid escape sequence: trailing backslash at position ${i}`);
33
+ }
34
+ const nextChar = str[i + 1];
35
+ switch (nextChar) {
36
+ case '\\':
37
+ result += '\\';
38
+ break;
39
+ case '"':
40
+ result += '"';
41
+ break;
42
+ case 'n':
43
+ result += '\n';
44
+ break;
45
+ case 'r':
46
+ result += '\r';
47
+ break;
48
+ case 't':
49
+ result += '\t';
50
+ break;
51
+ default:
52
+ throw new Error(`Invalid escape sequence: \\${nextChar} at position ${i}. Only \\\\, \\", \\n, \\r, \\t are allowed`);
53
+ }
54
+ i += 2;
55
+ }
56
+ else {
57
+ result += str[i];
58
+ i++;
59
+ }
60
+ }
61
+ return result;
62
+ }
63
+ function getDelimiterChar(option) {
64
+ switch (option) {
65
+ case 'comma':
66
+ return ',';
67
+ case 'tab':
68
+ return '\t';
69
+ case 'pipe':
70
+ return '|';
71
+ default:
72
+ return ',';
73
+ }
74
+ }
75
+ function needsQuoting(value, activeDelimiter, documentDelimiter, context) {
76
+ if (value === '') {
77
+ return true;
78
+ }
79
+ if (/^[\s]|[\s]$/.test(value)) {
80
+ return true;
81
+ }
82
+ if (value === 'true' || value === 'false' || value === 'null') {
83
+ return true;
84
+ }
85
+ if (/^-?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?$/.test(value)) {
86
+ return true;
87
+ }
88
+ if (/^0\d+$/.test(value)) {
89
+ return true;
90
+ }
91
+ if (/[:"\\[\]{}]/.test(value)) {
92
+ return true;
93
+ }
94
+ if (/[\n\r\t]/.test(value)) {
95
+ return true;
96
+ }
97
+ if (value === '-' || /^-[^\d]/.test(value)) {
98
+ return true;
99
+ }
100
+ const relevantDelimiter = context === 'array' ? activeDelimiter : documentDelimiter;
101
+ if (value.includes(relevantDelimiter)) {
102
+ return true;
103
+ }
104
+ return false;
105
+ }
106
+ function canonicalizeNumber(num) {
107
+ if (!isFinite(num)) {
108
+ return 'null';
109
+ }
110
+ if (Object.is(num, -0)) {
111
+ return '0';
112
+ }
113
+ let str;
114
+ const basicStr = num.toString();
115
+ if (basicStr.includes('e') || basicStr.includes('E')) {
116
+ str = expandExponentialNotation(num);
117
+ }
118
+ else {
119
+ str = basicStr;
120
+ }
121
+ if (str.includes('.')) {
122
+ str = str.replace(/\.?0+$/, '');
123
+ }
124
+ if (str !== '0' && !str.startsWith('0.')) {
125
+ str = str.replace(/^(-?)0+(\d)/, '$1$2');
126
+ }
127
+ return str;
128
+ }
129
+ function expandExponentialNotation(num) {
130
+ const absNum = Math.abs(num);
131
+ if (absNum >= 1e21 || (absNum < 1e-6 && absNum > 0)) {
132
+ const str = num.toExponential();
133
+ const match = str.match(/^(-?\d\.?\d*)e([+-]\d+)$/);
134
+ if (match) {
135
+ const [, mantissa, exponent] = match;
136
+ const exp = parseInt(exponent, 10);
137
+ const mantissaNum = parseFloat(mantissa);
138
+ if (exp >= 0) {
139
+ const shifted = mantissaNum * Math.pow(10, exp);
140
+ return shifted.toString().replace(/\.?0+$/, '');
141
+ }
142
+ else {
143
+ const precision = Math.abs(exp) + 10;
144
+ return mantissaNum.toFixed(precision).replace(/\.?0+$/, '');
145
+ }
146
+ }
147
+ }
148
+ if (Number.isInteger(num)) {
149
+ return num.toString();
150
+ }
151
+ const str = num.toString();
152
+ if (!str.includes('e') && !str.includes('E')) {
153
+ return str;
154
+ }
155
+ return num.toFixed(20).replace(/\.?0+$/, '');
156
+ }
157
+ function isNumericToken(token) {
158
+ return /^-?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?$/.test(token) && token !== '' && token !== '-';
159
+ }
160
+ function isIdentifierSegment(segment) {
161
+ return /^[A-Za-z_][A-Za-z0-9_]*$/.test(segment);
162
+ }
163
+ function isValidKey(key) {
164
+ return /^[A-Za-z_][A-Za-z0-9_.]*$/.test(key);
165
+ }
166
+ function keyNeedsQuoting(key) {
167
+ return !isValidKey(key);
168
+ }
169
+ function indent(level, size) {
170
+ return ' '.repeat(level * size);
171
+ }
172
+ function parseNumber(token) {
173
+ const num = Number(token);
174
+ if (isNaN(num)) {
175
+ throw new Error(`Invalid number: ${token}`);
176
+ }
177
+ return num;
178
+ }
179
+ function parseToken(token) {
180
+ if (token === 'true') {
181
+ return true;
182
+ }
183
+ if (token === 'false') {
184
+ return false;
185
+ }
186
+ if (token === 'null') {
187
+ return null;
188
+ }
189
+ if (isNumericToken(token)) {
190
+ return parseNumber(token);
191
+ }
192
+ return token;
193
+ }
194
+ function isPlainObject(value) {
195
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
196
+ }
197
+ function isArrayOfPrimitives(arr) {
198
+ return arr.every((item) => {
199
+ const type = typeof item;
200
+ return (item === null ||
201
+ type === 'string' ||
202
+ type === 'number' ||
203
+ type === 'boolean' ||
204
+ type === 'undefined');
205
+ });
206
+ }
207
+ function isUniformArray(arr) {
208
+ if (arr.length === 0) {
209
+ return false;
210
+ }
211
+ if (!arr.every((item) => isPlainObject(item))) {
212
+ return false;
213
+ }
214
+ const objects = arr;
215
+ const firstKeys = Object.keys(objects[0]).sort();
216
+ if (firstKeys.length === 0) {
217
+ return false;
218
+ }
219
+ for (let i = 1; i < objects.length; i++) {
220
+ const keys = Object.keys(objects[i]).sort();
221
+ if (keys.length !== firstKeys.length) {
222
+ return false;
223
+ }
224
+ for (let j = 0; j < keys.length; j++) {
225
+ if (keys[j] !== firstKeys[j]) {
226
+ return false;
227
+ }
228
+ }
229
+ }
230
+ for (const obj of objects) {
231
+ for (const value of Object.values(obj)) {
232
+ const type = typeof value;
233
+ if (value !== null &&
234
+ type !== 'string' &&
235
+ type !== 'number' &&
236
+ type !== 'boolean' &&
237
+ type !== 'undefined') {
238
+ return false;
239
+ }
240
+ }
241
+ }
242
+ return true;
243
+ }
244
+ //# sourceMappingURL=ToonUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToonUtils.js","sourceRoot":"","sources":["../../../nodes/Toon/ToonUtils.ts"],"names":[],"mappings":";;AAWA,oCAOC;AAKD,wCAwCC;AAKD,4CAWC;AASD,oCAuDC;AASD,gDAkCC;AAiDD,wCAEC;AAMD,kDAEC;AAMD,gCAEC;AAMD,0CAEC;AAKD,wBAEC;AAKD,kCAMC;AAKD,gCAqBC;AAKD,sCAEC;AAKD,kDAWC;AAKD,wCAmDC;AArXD,SAAgB,YAAY,CAAC,GAAW;IACvC,OAAO,GAAG;SACR,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;SACpB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;SACrB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;SACrB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACzB,CAAC;AAKD,SAAgB,cAAc,CAAC,GAAW;IACzC,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,CAAC,GAAG,CAAC,CAAC;IAEV,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;QACvB,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,EAAE,CAAC,CAAC;YACjF,CAAC;YAED,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5B,QAAQ,QAAQ,EAAE,CAAC;gBAClB,KAAK,IAAI;oBACR,MAAM,IAAI,IAAI,CAAC;oBACf,MAAM;gBACP,KAAK,GAAG;oBACP,MAAM,IAAI,GAAG,CAAC;oBACd,MAAM;gBACP,KAAK,GAAG;oBACP,MAAM,IAAI,IAAI,CAAC;oBACf,MAAM;gBACP,KAAK,GAAG;oBACP,MAAM,IAAI,IAAI,CAAC;oBACf,MAAM;gBACP,KAAK,GAAG;oBACP,MAAM,IAAI,IAAI,CAAC;oBACf,MAAM;gBACP;oBACC,MAAM,IAAI,KAAK,CACd,8BAA8B,QAAQ,gBAAgB,CAAC,6CAA6C,CACpG,CAAC;YACJ,CAAC;YACD,CAAC,IAAI,CAAC,CAAC;QACR,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;YACjB,CAAC,EAAE,CAAC;QACL,CAAC;IACF,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC;AAKD,SAAgB,gBAAgB,CAAC,MAAgC;IAChE,QAAQ,MAAM,EAAE,CAAC;QAChB,KAAK,OAAO;YACX,OAAO,GAAG,CAAC;QACZ,KAAK,KAAK;YACT,OAAO,IAAI,CAAC;QACb,KAAK,MAAM;YACV,OAAO,GAAG,CAAC;QACZ;YACC,OAAO,GAAG,CAAC;IACb,CAAC;AACF,CAAC;AASD,SAAgB,YAAY,CAC3B,KAAa,EACb,eAAuB,EACvB,iBAAyB,EACzB,OAA2B;IAG3B,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC;IACb,CAAC;IAGD,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC;IACb,CAAC;IAGD,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;QAC/D,OAAO,IAAI,CAAC;IACb,CAAC;IAGD,IAAI,oCAAoC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACtD,OAAO,IAAI,CAAC;IACb,CAAC;IAGD,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC;IACb,CAAC;IAGD,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC;IACb,CAAC;IAGD,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IACb,CAAC;IAGD,IAAI,KAAK,KAAK,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5C,OAAO,IAAI,CAAC;IACb,CAAC;IAKD,MAAM,iBAAiB,GAAG,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,iBAAiB,CAAC;IACpF,IAAI,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACvC,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO,KAAK,CAAC;AACd,CAAC;AASD,SAAgB,kBAAkB,CAAC,GAAW;IAE7C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,MAAM,CAAC;IACf,CAAC;IAGD,IAAI,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxB,OAAO,GAAG,CAAC;IACZ,CAAC;IAGD,IAAI,GAAW,CAAC;IAGhB,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;IAChC,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAEtD,GAAG,GAAG,yBAAyB,CAAC,GAAG,CAAC,CAAC;IACtC,CAAC;SAAM,CAAC;QACP,GAAG,GAAG,QAAQ,CAAC;IAChB,CAAC;IAGD,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACjC,CAAC;IAGD,IAAI,GAAG,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1C,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED,OAAO,GAAG,CAAC;AACZ,CAAC;AAKD,SAAS,yBAAyB,CAAC,GAAW;IAE7C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAE7B,IAAI,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,IAAI,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;QAErD,MAAM,GAAG,GAAG,GAAG,CAAC,aAAa,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAEpD,IAAI,KAAK,EAAE,CAAC;YACX,MAAM,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC;YACrC,MAAM,GAAG,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACnC,MAAM,WAAW,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;YAEzC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;gBAEd,MAAM,OAAO,GAAG,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;gBAChD,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACjD,CAAC;iBAAM,CAAC;gBAEP,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;gBACrC,OAAO,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YAC7D,CAAC;QACF,CAAC;IACF,CAAC;IAGD,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3B,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;IACvB,CAAC;IAGD,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;IAC3B,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9C,OAAO,GAAG,CAAC;IACZ,CAAC;IAGD,OAAO,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AAC9C,CAAC;AAKD,SAAgB,cAAc,CAAC,KAAa;IAC3C,OAAO,oCAAoC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,GAAG,CAAC;AAC1F,CAAC;AAMD,SAAgB,mBAAmB,CAAC,OAAe;IAClD,OAAO,0BAA0B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACjD,CAAC;AAMD,SAAgB,UAAU,CAAC,GAAW;IACrC,OAAO,2BAA2B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC9C,CAAC;AAMD,SAAgB,eAAe,CAAC,GAAW;IAC1C,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAKD,SAAgB,MAAM,CAAC,KAAa,EAAE,IAAY;IACjD,OAAO,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;AACjC,CAAC;AAKD,SAAgB,WAAW,CAAC,KAAa;IACxC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1B,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,mBAAmB,KAAK,EAAE,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAKD,SAAgB,UAAU,CAAC,KAAa;IAEvC,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACb,CAAC;IACD,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;QACvB,OAAO,KAAK,CAAC;IACd,CAAC;IAGD,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACb,CAAC;IAGD,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAGD,OAAO,KAAK,CAAC;AACd,CAAC;AAKD,SAAgB,aAAa,CAAC,KAAc;IAC3C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC7E,CAAC;AAKD,SAAgB,mBAAmB,CAAC,GAAc;IACjD,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE;QACzB,MAAM,IAAI,GAAG,OAAO,IAAI,CAAC;QACzB,OAAO,CACN,IAAI,KAAK,IAAI;YACb,IAAI,KAAK,QAAQ;YACjB,IAAI,KAAK,QAAQ;YACjB,IAAI,KAAK,SAAS;YAClB,IAAI,KAAK,WAAW,CACpB,CAAC;IACH,CAAC,CAAC,CAAC;AACJ,CAAC;AAKD,SAAgB,cAAc,CAAC,GAAc;IAC5C,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,KAAK,CAAC;IACd,CAAC;IAGD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAC/C,OAAO,KAAK,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAAG,GAAgC,CAAC;IAGjD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAEjD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAC;IACd,CAAC;IAGD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAE5C,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,MAAM,EAAE,CAAC;YACtC,OAAO,KAAK,CAAC;QACd,CAAC;QAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9B,OAAO,KAAK,CAAC;YACd,CAAC;QACF,CAAC;IACF,CAAC;IAGD,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC3B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC;YAC1B,IACC,KAAK,KAAK,IAAI;gBACd,IAAI,KAAK,QAAQ;gBACjB,IAAI,KAAK,QAAQ;gBACjB,IAAI,KAAK,SAAS;gBAClB,IAAI,KAAK,WAAW,EACnB,CAAC;gBACF,OAAO,KAAK,CAAC;YACd,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC"}
@@ -0,0 +1,4 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" width="64" height="64">
2
+ <rect width="64" height="64" fill="#6b46c1" rx="8"/>
3
+ <text x="32" y="42" font-family="Arial, sans-serif" font-size="28" font-weight="bold" fill="#ffffff" text-anchor="middle">T</text>
4
+ </svg>
@@ -0,0 +1,55 @@
1
+ export type Delimiter = ',' | '\t' | '|';
2
+ export type DelimiterOption = 'comma' | 'tab' | 'pipe';
3
+ export type KeyFoldingMode = 'off' | 'safe';
4
+ export type PathExpansionMode = 'off' | 'safe';
5
+ export interface EncoderOptions {
6
+ indent: number;
7
+ delimiter: Delimiter;
8
+ keyFolding: KeyFoldingMode;
9
+ flattenDepth: number;
10
+ }
11
+ export interface DecoderOptions {
12
+ indent: number;
13
+ strict: boolean;
14
+ expandPaths: PathExpansionMode;
15
+ }
16
+ export interface HeaderInfo {
17
+ key: string | null;
18
+ length: number;
19
+ delimiter: Delimiter;
20
+ fields: string[] | null;
21
+ rawLine: string;
22
+ lineNumber: number;
23
+ }
24
+ export interface ParsedLine {
25
+ content: string;
26
+ indent: number;
27
+ lineNumber: number;
28
+ isEmpty: boolean;
29
+ }
30
+ export declare class ToonEncodingError extends Error {
31
+ readonly context?: {
32
+ path?: string;
33
+ value?: unknown;
34
+ key?: string;
35
+ } | undefined;
36
+ constructor(message: string, context?: {
37
+ path?: string;
38
+ value?: unknown;
39
+ key?: string;
40
+ } | undefined);
41
+ }
42
+ export declare class ToonDecodingError extends Error {
43
+ readonly context?: {
44
+ lineNumber?: number;
45
+ line?: string;
46
+ expected?: string;
47
+ actual?: string;
48
+ } | undefined;
49
+ constructor(message: string, context?: {
50
+ lineNumber?: number;
51
+ line?: string;
52
+ expected?: string;
53
+ actual?: string;
54
+ } | undefined);
55
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ToonDecodingError = exports.ToonEncodingError = void 0;
4
+ class ToonEncodingError extends Error {
5
+ constructor(message, context) {
6
+ super(message);
7
+ this.context = context;
8
+ this.name = 'ToonEncodingError';
9
+ }
10
+ }
11
+ exports.ToonEncodingError = ToonEncodingError;
12
+ class ToonDecodingError extends Error {
13
+ constructor(message, context) {
14
+ super(message);
15
+ this.context = context;
16
+ this.name = 'ToonDecodingError';
17
+ }
18
+ }
19
+ exports.ToonDecodingError = ToonDecodingError;
20
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../nodes/Toon/types.ts"],"names":[],"mappings":";;;AAsFA,MAAa,iBAAkB,SAAQ,KAAK;IAC3C,YACC,OAAe,EACC,OAIf;QAED,KAAK,CAAC,OAAO,CAAC,CAAC;QANC,YAAO,GAAP,OAAO,CAItB;QAGD,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IACjC,CAAC;CACD;AAZD,8CAYC;AAKD,MAAa,iBAAkB,SAAQ,KAAK;IAC3C,YACC,OAAe,EACC,OAKf;QAED,KAAK,CAAC,OAAO,CAAC,CAAC;QAPC,YAAO,GAAP,OAAO,CAKtB;QAGD,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IACjC,CAAC;CACD;AAbD,8CAaC"}