@cogitator-ai/wasm-tools 0.4.2 → 0.5.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.
Files changed (70) hide show
  1. package/README.md +141 -6
  2. package/dist/index.d.ts +227 -0
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +194 -0
  5. package/dist/index.js.map +1 -1
  6. package/dist/plugins/compression.d.ts +2 -0
  7. package/dist/plugins/compression.d.ts.map +1 -0
  8. package/dist/plugins/compression.js +530 -0
  9. package/dist/plugins/compression.js.map +1 -0
  10. package/dist/plugins/csv.d.ts +2 -0
  11. package/dist/plugins/csv.d.ts.map +1 -0
  12. package/dist/plugins/csv.js +138 -0
  13. package/dist/plugins/csv.js.map +1 -0
  14. package/dist/plugins/datetime.d.ts +2 -0
  15. package/dist/plugins/datetime.d.ts.map +1 -0
  16. package/dist/plugins/datetime.js +184 -0
  17. package/dist/plugins/datetime.js.map +1 -0
  18. package/dist/plugins/diff.d.ts +2 -0
  19. package/dist/plugins/diff.d.ts.map +1 -0
  20. package/dist/plugins/diff.js +187 -0
  21. package/dist/plugins/diff.js.map +1 -0
  22. package/dist/plugins/markdown.d.ts +2 -0
  23. package/dist/plugins/markdown.d.ts.map +1 -0
  24. package/dist/plugins/markdown.js +203 -0
  25. package/dist/plugins/markdown.js.map +1 -0
  26. package/dist/plugins/regex.d.ts +2 -0
  27. package/dist/plugins/regex.d.ts.map +1 -0
  28. package/dist/plugins/regex.js +119 -0
  29. package/dist/plugins/regex.js.map +1 -0
  30. package/dist/plugins/signing.d.ts +2 -0
  31. package/dist/plugins/signing.d.ts.map +1 -0
  32. package/dist/plugins/signing.js +565 -0
  33. package/dist/plugins/signing.js.map +1 -0
  34. package/dist/plugins/slug.d.ts +2 -0
  35. package/dist/plugins/slug.d.ts.map +1 -0
  36. package/dist/plugins/slug.js +180 -0
  37. package/dist/plugins/slug.js.map +1 -0
  38. package/dist/plugins/validation.d.ts +2 -0
  39. package/dist/plugins/validation.d.ts.map +1 -0
  40. package/dist/plugins/validation.js +105 -0
  41. package/dist/plugins/validation.js.map +1 -0
  42. package/dist/plugins/xml.d.ts +2 -0
  43. package/dist/plugins/xml.d.ts.map +1 -0
  44. package/dist/plugins/xml.js +293 -0
  45. package/dist/plugins/xml.js.map +1 -0
  46. package/dist/temp/compression.js +614 -0
  47. package/dist/temp/csv.js +154 -0
  48. package/dist/temp/datetime.js +196 -0
  49. package/dist/temp/diff.js +198 -0
  50. package/dist/temp/markdown.js +220 -0
  51. package/dist/temp/regex.js +140 -0
  52. package/dist/temp/signing.js +569 -0
  53. package/dist/temp/slug.js +198 -0
  54. package/dist/temp/validation.js +125 -0
  55. package/dist/temp/xml.js +289 -0
  56. package/dist/wasm/base64.wasm +0 -0
  57. package/dist/wasm/calc.wasm +0 -0
  58. package/dist/wasm/compression.wasm +0 -0
  59. package/dist/wasm/csv.wasm +0 -0
  60. package/dist/wasm/datetime.wasm +0 -0
  61. package/dist/wasm/diff.wasm +0 -0
  62. package/dist/wasm/hash.wasm +0 -0
  63. package/dist/wasm/json.wasm +0 -0
  64. package/dist/wasm/markdown.wasm +0 -0
  65. package/dist/wasm/regex.wasm +0 -0
  66. package/dist/wasm/signing.wasm +0 -0
  67. package/dist/wasm/slug.wasm +0 -0
  68. package/dist/wasm/validation.wasm +0 -0
  69. package/dist/wasm/xml.wasm +0 -0
  70. package/package.json +1 -1
@@ -0,0 +1,530 @@
1
+ const BASE64_CHARS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
2
+ function base64Encode(bytes) {
3
+ let result = '';
4
+ const len = bytes.length;
5
+ for (let i = 0; i < len; i += 3) {
6
+ const b1 = bytes[i];
7
+ const b2 = i + 1 < len ? bytes[i + 1] : 0;
8
+ const b3 = i + 2 < len ? bytes[i + 2] : 0;
9
+ result += BASE64_CHARS[b1 >> 2];
10
+ result += BASE64_CHARS[((b1 & 3) << 4) | (b2 >> 4)];
11
+ result += i + 1 < len ? BASE64_CHARS[((b2 & 15) << 2) | (b3 >> 6)] : '=';
12
+ result += i + 2 < len ? BASE64_CHARS[b3 & 63] : '=';
13
+ }
14
+ return result;
15
+ }
16
+ function base64Decode(str) {
17
+ const cleanStr = str.replace(/[^A-Za-z0-9+/]/g, '');
18
+ const len = cleanStr.length;
19
+ const outputLen = Math.floor((len * 3) / 4) - (str.endsWith('==') ? 2 : str.endsWith('=') ? 1 : 0);
20
+ const bytes = new Uint8Array(outputLen);
21
+ const lookup = {};
22
+ for (let i = 0; i < BASE64_CHARS.length; i++) {
23
+ lookup[BASE64_CHARS[i]] = i;
24
+ }
25
+ let byteIdx = 0;
26
+ for (let i = 0; i < len; i += 4) {
27
+ const b1 = lookup[cleanStr[i]] || 0;
28
+ const b2 = lookup[cleanStr[i + 1]] || 0;
29
+ const b3 = lookup[cleanStr[i + 2]] || 0;
30
+ const b4 = lookup[cleanStr[i + 3]] || 0;
31
+ bytes[byteIdx++] = (b1 << 2) | (b2 >> 4);
32
+ if (byteIdx < outputLen)
33
+ bytes[byteIdx++] = ((b2 & 15) << 4) | (b3 >> 2);
34
+ if (byteIdx < outputLen)
35
+ bytes[byteIdx++] = ((b3 & 3) << 6) | b4;
36
+ }
37
+ return bytes;
38
+ }
39
+ function utf8Encode(str) {
40
+ const bytes = [];
41
+ for (let i = 0; i < str.length; i++) {
42
+ let c = str.charCodeAt(i);
43
+ if (c < 0x80) {
44
+ bytes.push(c);
45
+ }
46
+ else if (c < 0x800) {
47
+ bytes.push(0xc0 | (c >> 6));
48
+ bytes.push(0x80 | (c & 0x3f));
49
+ }
50
+ else if (c >= 0xd800 && c < 0xdc00 && i + 1 < str.length) {
51
+ const c2 = str.charCodeAt(++i);
52
+ c = 0x10000 + ((c & 0x3ff) << 10) + (c2 & 0x3ff);
53
+ bytes.push(0xf0 | (c >> 18));
54
+ bytes.push(0x80 | ((c >> 12) & 0x3f));
55
+ bytes.push(0x80 | ((c >> 6) & 0x3f));
56
+ bytes.push(0x80 | (c & 0x3f));
57
+ }
58
+ else {
59
+ bytes.push(0xe0 | (c >> 12));
60
+ bytes.push(0x80 | ((c >> 6) & 0x3f));
61
+ bytes.push(0x80 | (c & 0x3f));
62
+ }
63
+ }
64
+ return new Uint8Array(bytes);
65
+ }
66
+ function utf8Decode(bytes) {
67
+ let result = '';
68
+ let i = 0;
69
+ while (i < bytes.length) {
70
+ const b = bytes[i++];
71
+ if (b < 0x80) {
72
+ result += String.fromCharCode(b);
73
+ }
74
+ else if (b < 0xe0) {
75
+ result += String.fromCharCode(((b & 0x1f) << 6) | (bytes[i++] & 0x3f));
76
+ }
77
+ else if (b < 0xf0) {
78
+ result += String.fromCharCode(((b & 0x0f) << 12) | ((bytes[i++] & 0x3f) << 6) | (bytes[i++] & 0x3f));
79
+ }
80
+ else {
81
+ const cp = ((b & 0x07) << 18) |
82
+ ((bytes[i++] & 0x3f) << 12) |
83
+ ((bytes[i++] & 0x3f) << 6) |
84
+ (bytes[i++] & 0x3f);
85
+ result += String.fromCodePoint(cp);
86
+ }
87
+ }
88
+ return result;
89
+ }
90
+ function deflateRaw(data, level = 6) {
91
+ const output = [];
92
+ const len = data.length;
93
+ if (level === 0 || len < 10) {
94
+ let pos = 0;
95
+ while (pos < len) {
96
+ const blockLen = Math.min(65535, len - pos);
97
+ const isLast = pos + blockLen >= len;
98
+ output.push(isLast ? 1 : 0);
99
+ output.push(blockLen & 0xff);
100
+ output.push((blockLen >> 8) & 0xff);
101
+ output.push(~blockLen & 0xff);
102
+ output.push((~blockLen >> 8) & 0xff);
103
+ for (let i = 0; i < blockLen; i++) {
104
+ output.push(data[pos + i]);
105
+ }
106
+ pos += blockLen;
107
+ }
108
+ return new Uint8Array(output);
109
+ }
110
+ const windowSize = 32768;
111
+ const hashTable = new Map();
112
+ const getHash = (pos) => {
113
+ if (pos + 2 >= len)
114
+ return 0;
115
+ return ((data[pos] << 16) | (data[pos + 1] << 8) | data[pos + 2]) >>> 0;
116
+ };
117
+ const findMatch = (pos) => {
118
+ if (pos + 2 >= len)
119
+ return null;
120
+ const hash = getHash(pos);
121
+ const candidates = hashTable.get(hash) || [];
122
+ let bestDist = 0;
123
+ let bestLen = 0;
124
+ for (let i = candidates.length - 1; i >= 0 && i >= candidates.length - 16; i--) {
125
+ const candPos = candidates[i];
126
+ const dist = pos - candPos;
127
+ if (dist > windowSize || dist <= 0)
128
+ continue;
129
+ let matchLen = 0;
130
+ while (matchLen < 258 &&
131
+ pos + matchLen < len &&
132
+ data[candPos + matchLen] === data[pos + matchLen]) {
133
+ matchLen++;
134
+ }
135
+ if (matchLen >= 3 && matchLen > bestLen) {
136
+ bestDist = dist;
137
+ bestLen = matchLen;
138
+ }
139
+ }
140
+ if (bestLen >= 3) {
141
+ return { distance: bestDist, length: bestLen };
142
+ }
143
+ return null;
144
+ };
145
+ const literals = [];
146
+ const distances = [];
147
+ const lengths = [];
148
+ let pos = 0;
149
+ while (pos < len) {
150
+ const match = level > 3 ? findMatch(pos) : null;
151
+ const hash = getHash(pos);
152
+ if (!hashTable.has(hash)) {
153
+ hashTable.set(hash, []);
154
+ }
155
+ hashTable.get(hash).push(pos);
156
+ if (hashTable.get(hash).length > 64) {
157
+ hashTable.get(hash).shift();
158
+ }
159
+ if (match && match.length >= 3) {
160
+ literals.push(256 + match.length - 3);
161
+ distances.push(match.distance);
162
+ lengths.push(match.length);
163
+ for (let i = 1; i < match.length; i++) {
164
+ const h = getHash(pos + i);
165
+ if (!hashTable.has(h))
166
+ hashTable.set(h, []);
167
+ hashTable.get(h).push(pos + i);
168
+ }
169
+ pos += match.length;
170
+ }
171
+ else {
172
+ literals.push(data[pos]);
173
+ distances.push(0);
174
+ lengths.push(0);
175
+ pos++;
176
+ }
177
+ }
178
+ literals.push(256);
179
+ let bitBuf = 0;
180
+ let bitCount = 0;
181
+ const writeBits = (value, bits) => {
182
+ bitBuf |= value << bitCount;
183
+ bitCount += bits;
184
+ while (bitCount >= 8) {
185
+ output.push(bitBuf & 0xff);
186
+ bitBuf >>= 8;
187
+ bitCount -= 8;
188
+ }
189
+ };
190
+ writeBits(1, 1);
191
+ writeBits(1, 2);
192
+ for (let i = 0; i < literals.length; i++) {
193
+ const lit = literals[i];
194
+ const dist = distances[i];
195
+ if (lit < 144) {
196
+ writeBits(reverseBits(0x30 + lit, 8), 8);
197
+ }
198
+ else if (lit < 256) {
199
+ writeBits(reverseBits(0x190 + lit - 144, 9), 9);
200
+ }
201
+ else if (lit === 256) {
202
+ writeBits(reverseBits(0, 7), 7);
203
+ }
204
+ else {
205
+ const lengthCode = lit - 256;
206
+ if (lengthCode < 8) {
207
+ writeBits(reverseBits(1 + lengthCode, 7), 7);
208
+ }
209
+ else {
210
+ writeBits(reverseBits(0xc0 + lengthCode - 8, 8), 8);
211
+ }
212
+ if (dist > 0) {
213
+ let distCode = 0;
214
+ let distBits = 0;
215
+ let distBase = 1;
216
+ if (dist <= 4) {
217
+ distCode = dist - 1;
218
+ }
219
+ else {
220
+ let d = dist - 1;
221
+ let extra = 0;
222
+ while (d >= 2 << extra) {
223
+ extra++;
224
+ }
225
+ distCode = 2 + extra * 2 + (d >= 3 << (extra - 1) ? 1 : 0);
226
+ distBits = extra > 0 ? extra - 1 : 0;
227
+ distBase = (1 << (distBits + 1)) + 1;
228
+ }
229
+ writeBits(reverseBits(distCode, 5), 5);
230
+ if (distBits > 0) {
231
+ writeBits(dist - distBase, distBits);
232
+ }
233
+ }
234
+ }
235
+ }
236
+ if (bitCount > 0) {
237
+ output.push(bitBuf & 0xff);
238
+ }
239
+ return new Uint8Array(output);
240
+ }
241
+ function reverseBits(value, bits) {
242
+ let result = 0;
243
+ for (let i = 0; i < bits; i++) {
244
+ result = (result << 1) | ((value >> i) & 1);
245
+ }
246
+ return result;
247
+ }
248
+ function inflateRaw(data) {
249
+ const output = [];
250
+ let pos = 0;
251
+ let bitBuf = 0;
252
+ let bitCount = 0;
253
+ const readBits = (n) => {
254
+ while (bitCount < n) {
255
+ if (pos >= data.length)
256
+ throw new Error('Unexpected end of data');
257
+ bitBuf |= data[pos++] << bitCount;
258
+ bitCount += 8;
259
+ }
260
+ const result = bitBuf & ((1 << n) - 1);
261
+ bitBuf >>= n;
262
+ bitCount -= n;
263
+ return result;
264
+ };
265
+ const LITLEN_BASE = [
266
+ 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131,
267
+ 163, 195, 227, 258,
268
+ ];
269
+ const LITLEN_EXTRA = [
270
+ 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0,
271
+ ];
272
+ const DIST_BASE = [
273
+ 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049,
274
+ 3073, 4097, 6145, 8193, 12289, 16385, 24577,
275
+ ];
276
+ const DIST_EXTRA = [
277
+ 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13,
278
+ 13,
279
+ ];
280
+ let bfinal = 0;
281
+ while (!bfinal) {
282
+ bfinal = readBits(1);
283
+ const btype = readBits(2);
284
+ if (btype === 0) {
285
+ bitBuf = 0;
286
+ bitCount = 0;
287
+ const len = data[pos] | (data[pos + 1] << 8);
288
+ pos += 4;
289
+ for (let i = 0; i < len; i++) {
290
+ output.push(data[pos++]);
291
+ }
292
+ }
293
+ else if (btype === 1 || btype === 2) {
294
+ let litlenCodes;
295
+ let distCodes;
296
+ if (btype === 1) {
297
+ litlenCodes = [];
298
+ for (let i = 0; i <= 143; i++)
299
+ litlenCodes[i] = 8;
300
+ for (let i = 144; i <= 255; i++)
301
+ litlenCodes[i] = 9;
302
+ for (let i = 256; i <= 279; i++)
303
+ litlenCodes[i] = 7;
304
+ for (let i = 280; i <= 287; i++)
305
+ litlenCodes[i] = 8;
306
+ distCodes = new Array(32).fill(5);
307
+ }
308
+ else {
309
+ const hlit = readBits(5) + 257;
310
+ const hdist = readBits(5) + 1;
311
+ const hclen = readBits(4) + 4;
312
+ const clenOrder = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15];
313
+ const clenLens = new Array(19).fill(0);
314
+ for (let i = 0; i < hclen; i++) {
315
+ clenLens[clenOrder[i]] = readBits(3);
316
+ }
317
+ const clenTree = buildHuffmanTree(clenLens);
318
+ const allLens = [];
319
+ while (allLens.length < hlit + hdist) {
320
+ const sym = decodeSymbol(clenTree, readBits.bind(null, 1));
321
+ if (sym < 16) {
322
+ allLens.push(sym);
323
+ }
324
+ else if (sym === 16) {
325
+ const repeat = readBits(2) + 3;
326
+ const last = allLens[allLens.length - 1] || 0;
327
+ for (let i = 0; i < repeat; i++)
328
+ allLens.push(last);
329
+ }
330
+ else if (sym === 17) {
331
+ const repeat = readBits(3) + 3;
332
+ for (let i = 0; i < repeat; i++)
333
+ allLens.push(0);
334
+ }
335
+ else if (sym === 18) {
336
+ const repeat = readBits(7) + 11;
337
+ for (let i = 0; i < repeat; i++)
338
+ allLens.push(0);
339
+ }
340
+ }
341
+ litlenCodes = allLens.slice(0, hlit);
342
+ distCodes = allLens.slice(hlit);
343
+ }
344
+ const litlenTree = buildHuffmanTree(litlenCodes);
345
+ const distTree = buildHuffmanTree(distCodes);
346
+ while (true) {
347
+ const sym = decodeSymbol(litlenTree, () => readBits(1));
348
+ if (sym < 256) {
349
+ output.push(sym);
350
+ }
351
+ else if (sym === 256) {
352
+ break;
353
+ }
354
+ else {
355
+ const lenIdx = sym - 257;
356
+ const length = LITLEN_BASE[lenIdx] + readBits(LITLEN_EXTRA[lenIdx]);
357
+ const distSym = decodeSymbol(distTree, () => readBits(1));
358
+ const distance = DIST_BASE[distSym] + readBits(DIST_EXTRA[distSym]);
359
+ const start = output.length - distance;
360
+ for (let i = 0; i < length; i++) {
361
+ output.push(output[start + i]);
362
+ }
363
+ }
364
+ }
365
+ }
366
+ else {
367
+ throw new Error('Invalid block type');
368
+ }
369
+ }
370
+ return new Uint8Array(output);
371
+ }
372
+ function buildHuffmanTree(codeLens) {
373
+ const maxLen = Math.max(...codeLens, 1);
374
+ const blCount = new Array(maxLen + 1).fill(0);
375
+ for (const len of codeLens) {
376
+ if (len > 0)
377
+ blCount[len]++;
378
+ }
379
+ const nextCode = new Array(maxLen + 1).fill(0);
380
+ let code = 0;
381
+ for (let bits = 1; bits <= maxLen; bits++) {
382
+ code = (code + blCount[bits - 1]) << 1;
383
+ nextCode[bits] = code;
384
+ }
385
+ const root = {};
386
+ for (let sym = 0; sym < codeLens.length; sym++) {
387
+ const len = codeLens[sym];
388
+ if (len === 0)
389
+ continue;
390
+ const codeVal = nextCode[len]++;
391
+ let node = root;
392
+ for (let i = len - 1; i >= 0; i--) {
393
+ const bit = (codeVal >> i) & 1;
394
+ if (bit === 0) {
395
+ if (!node.left)
396
+ node.left = {};
397
+ node = node.left;
398
+ }
399
+ else {
400
+ if (!node.right)
401
+ node.right = {};
402
+ node = node.right;
403
+ }
404
+ }
405
+ node.symbol = sym;
406
+ }
407
+ return root;
408
+ }
409
+ function decodeSymbol(tree, readBit) {
410
+ let node = tree;
411
+ while (node.symbol === undefined) {
412
+ const bit = readBit();
413
+ node = bit === 0 ? node.left : node.right;
414
+ if (!node)
415
+ throw new Error('Invalid huffman code');
416
+ }
417
+ return node.symbol;
418
+ }
419
+ function crc32(data) {
420
+ let crc = 0xffffffff;
421
+ for (let i = 0; i < data.length; i++) {
422
+ crc ^= data[i];
423
+ for (let j = 0; j < 8; j++) {
424
+ crc = (crc >>> 1) ^ (crc & 1 ? 0xedb88320 : 0);
425
+ }
426
+ }
427
+ return (crc ^ 0xffffffff) >>> 0;
428
+ }
429
+ function gzipCompress(data, level) {
430
+ const deflated = deflateRaw(data, level);
431
+ const crc = crc32(data);
432
+ const output = new Uint8Array(10 + deflated.length + 8);
433
+ output[0] = 0x1f;
434
+ output[1] = 0x8b;
435
+ output[2] = 8;
436
+ output[3] = 0;
437
+ output[4] = output[5] = output[6] = output[7] = 0;
438
+ output[8] = level >= 9 ? 2 : level <= 1 ? 4 : 0;
439
+ output[9] = 255;
440
+ output.set(deflated, 10);
441
+ const pos = 10 + deflated.length;
442
+ output[pos] = crc & 0xff;
443
+ output[pos + 1] = (crc >> 8) & 0xff;
444
+ output[pos + 2] = (crc >> 16) & 0xff;
445
+ output[pos + 3] = (crc >> 24) & 0xff;
446
+ output[pos + 4] = data.length & 0xff;
447
+ output[pos + 5] = (data.length >> 8) & 0xff;
448
+ output[pos + 6] = (data.length >> 16) & 0xff;
449
+ output[pos + 7] = (data.length >> 24) & 0xff;
450
+ return output;
451
+ }
452
+ function gzipDecompress(data) {
453
+ if (data[0] !== 0x1f || data[1] !== 0x8b) {
454
+ throw new Error('Invalid gzip header');
455
+ }
456
+ if (data[2] !== 8) {
457
+ throw new Error('Unsupported compression method');
458
+ }
459
+ const flags = data[3];
460
+ let pos = 10;
461
+ if (flags & 4) {
462
+ const xlen = data[pos] | (data[pos + 1] << 8);
463
+ pos += 2 + xlen;
464
+ }
465
+ if (flags & 8) {
466
+ while (data[pos++] !== 0)
467
+ ;
468
+ }
469
+ if (flags & 16) {
470
+ while (data[pos++] !== 0)
471
+ ;
472
+ }
473
+ if (flags & 2) {
474
+ pos += 2;
475
+ }
476
+ const deflatedData = data.slice(pos, data.length - 8);
477
+ return inflateRaw(deflatedData);
478
+ }
479
+ export function compression() {
480
+ try {
481
+ const inputStr = Host.inputString();
482
+ const input = JSON.parse(inputStr);
483
+ const inputEncoding = input.inputEncoding ?? 'utf8';
484
+ const outputEncoding = input.outputEncoding ?? 'base64';
485
+ const level = input.level ?? 6;
486
+ let inputBytes;
487
+ if (inputEncoding === 'base64') {
488
+ inputBytes = base64Decode(input.data);
489
+ }
490
+ else {
491
+ inputBytes = utf8Encode(input.data);
492
+ }
493
+ let resultBytes;
494
+ if (input.operation === 'compress') {
495
+ resultBytes = gzipCompress(inputBytes, level);
496
+ }
497
+ else {
498
+ resultBytes = gzipDecompress(inputBytes);
499
+ }
500
+ let result;
501
+ if (outputEncoding === 'base64') {
502
+ result = base64Encode(resultBytes);
503
+ }
504
+ else {
505
+ result = utf8Decode(resultBytes);
506
+ }
507
+ const ratio = input.operation === 'compress'
508
+ ? resultBytes.length / inputBytes.length
509
+ : inputBytes.length / resultBytes.length;
510
+ const output = {
511
+ result,
512
+ originalSize: inputBytes.length,
513
+ resultSize: resultBytes.length,
514
+ ratio: Math.round(ratio * 100) / 100,
515
+ };
516
+ Host.outputString(JSON.stringify(output));
517
+ return 0;
518
+ }
519
+ catch (error) {
520
+ const output = {
521
+ result: '',
522
+ originalSize: 0,
523
+ resultSize: 0,
524
+ error: error instanceof Error ? error.message : String(error),
525
+ };
526
+ Host.outputString(JSON.stringify(output));
527
+ return 1;
528
+ }
529
+ }
530
+ //# sourceMappingURL=compression.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compression.js","sourceRoot":"","sources":["../../src/plugins/compression.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function csv(): number;
2
+ //# sourceMappingURL=csv.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"csv.d.ts","sourceRoot":"","sources":["../../src/plugins/csv.ts"],"names":[],"mappings":"AAkJA,wBAAgB,GAAG,IAAI,MAAM,CA8C5B"}