@elaraai/east-node-io 0.0.1-beta.0 → 0.0.1-beta.10
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 +38 -0
- package/dist/compression/gzip.d.ts +108 -0
- package/dist/compression/gzip.d.ts.map +1 -0
- package/dist/compression/gzip.js +153 -0
- package/dist/compression/gzip.js.map +1 -0
- package/dist/compression/index.d.ts +308 -0
- package/dist/compression/index.d.ts.map +1 -0
- package/dist/compression/index.js +289 -0
- package/dist/compression/index.js.map +1 -0
- package/dist/compression/tar.d.ts +115 -0
- package/dist/compression/tar.d.ts.map +1 -0
- package/dist/compression/tar.js +254 -0
- package/dist/compression/tar.js.map +1 -0
- package/dist/compression/types.d.ts +124 -0
- package/dist/compression/types.d.ts.map +1 -0
- package/dist/compression/types.js +106 -0
- package/dist/compression/types.js.map +1 -0
- package/dist/compression/zip.d.ts +121 -0
- package/dist/compression/zip.d.ts.map +1 -0
- package/dist/compression/zip.js +200 -0
- package/dist/compression/zip.js.map +1 -0
- package/dist/connection/index.d.ts +78 -0
- package/dist/connection/index.d.ts.map +1 -0
- package/dist/connection/index.js +134 -0
- package/dist/connection/index.js.map +1 -0
- package/dist/format/index.d.ts +421 -0
- package/dist/format/index.d.ts.map +1 -0
- package/dist/format/index.js +326 -0
- package/dist/format/index.js.map +1 -0
- package/dist/format/types.d.ts +176 -0
- package/dist/format/types.d.ts.map +1 -0
- package/dist/format/types.js +122 -0
- package/dist/format/types.js.map +1 -0
- package/dist/format/xlsx.d.ts +178 -0
- package/dist/format/xlsx.d.ts.map +1 -0
- package/dist/format/xlsx.js +313 -0
- package/dist/format/xlsx.js.map +1 -0
- package/dist/format/xml.d.ts +302 -0
- package/dist/format/xml.d.ts.map +1 -0
- package/dist/format/xml.js +602 -0
- package/dist/format/xml.js.map +1 -0
- package/dist/index.d.ts +25 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +32 -0
- package/dist/index.js.map +1 -0
- package/dist/nosql/index.d.ts +503 -0
- package/dist/nosql/index.d.ts.map +1 -0
- package/dist/nosql/index.js +483 -0
- package/dist/nosql/index.js.map +1 -0
- package/dist/nosql/mongodb.d.ts +306 -0
- package/dist/nosql/mongodb.d.ts.map +1 -0
- package/dist/nosql/mongodb.js +552 -0
- package/dist/nosql/mongodb.js.map +1 -0
- package/dist/nosql/redis.d.ts +268 -0
- package/dist/nosql/redis.d.ts.map +1 -0
- package/dist/nosql/redis.js +371 -0
- package/dist/nosql/redis.js.map +1 -0
- package/dist/nosql/types.d.ts +70 -0
- package/dist/nosql/types.d.ts.map +1 -0
- package/dist/nosql/types.js +79 -0
- package/dist/nosql/types.js.map +1 -0
- package/dist/platform.d.ts +12 -0
- package/dist/platform.d.ts.map +1 -0
- package/dist/platform.js +51 -0
- package/dist/platform.js.map +1 -0
- package/dist/sql/index.d.ts +777 -0
- package/dist/sql/index.d.ts.map +1 -0
- package/dist/sql/index.js +515 -0
- package/dist/sql/index.js.map +1 -0
- package/dist/sql/mysql.d.ts +238 -0
- package/dist/sql/mysql.d.ts.map +1 -0
- package/dist/sql/mysql.js +396 -0
- package/dist/sql/mysql.js.map +1 -0
- package/dist/sql/postgres.d.ts +237 -0
- package/dist/sql/postgres.d.ts.map +1 -0
- package/dist/sql/postgres.js +381 -0
- package/dist/sql/postgres.js.map +1 -0
- package/dist/sql/sqlite.d.ts +217 -0
- package/dist/sql/sqlite.d.ts.map +1 -0
- package/dist/sql/sqlite.js +366 -0
- package/dist/sql/sqlite.js.map +1 -0
- package/dist/sql/types.d.ts +205 -0
- package/dist/sql/types.d.ts.map +1 -0
- package/dist/sql/types.js +175 -0
- package/dist/sql/types.js.map +1 -0
- package/dist/storage/index.d.ts +304 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/index.js +234 -0
- package/dist/storage/index.js.map +1 -0
- package/dist/storage/s3.d.ts +373 -0
- package/dist/storage/s3.d.ts.map +1 -0
- package/dist/storage/s3.js +502 -0
- package/dist/storage/s3.js.map +1 -0
- package/dist/storage/types.d.ts +117 -0
- package/dist/storage/types.d.ts.map +1 -0
- package/dist/storage/types.js +94 -0
- package/dist/storage/types.js.map +1 -0
- package/dist/transfer/ftp.d.ts +333 -0
- package/dist/transfer/ftp.d.ts.map +1 -0
- package/dist/transfer/ftp.js +437 -0
- package/dist/transfer/ftp.js.map +1 -0
- package/dist/transfer/index.d.ts +456 -0
- package/dist/transfer/index.d.ts.map +1 -0
- package/dist/transfer/index.js +414 -0
- package/dist/transfer/index.js.map +1 -0
- package/dist/transfer/sftp.d.ts +333 -0
- package/dist/transfer/sftp.d.ts.map +1 -0
- package/dist/transfer/sftp.js +436 -0
- package/dist/transfer/sftp.js.map +1 -0
- package/dist/transfer/types.d.ts +108 -0
- package/dist/transfer/types.d.ts.map +1 -0
- package/dist/transfer/types.js +110 -0
- package/dist/transfer/types.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +17 -9
package/README.md
CHANGED
|
@@ -218,3 +218,41 @@ This project is licensed under the GNU Affero General Public License v3.0 - see
|
|
|
218
218
|
- **Transfer**: `basic-ftp`, `ssh2-sftp-client`
|
|
219
219
|
- **NoSQL**: `ioredis`, `mongodb`
|
|
220
220
|
- **Format**: `xlsx` for Excel file processing
|
|
221
|
+
|
|
222
|
+
|
|
223
|
+
### Ecosystem
|
|
224
|
+
|
|
225
|
+
- **[East Node](https://github.com/elaraai/east-node)**: Node.js platform functions for I/O, databases, and system operations. Connect East programs to filesystems, SQL/NoSQL databases, cloud storage, and network services.
|
|
226
|
+
- [@elaraai/east-node-std](https://www.npmjs.com/package/@elaraai/east-node-std): Filesystem, console, HTTP fetch, crypto, random distributions, timestamps
|
|
227
|
+
- [@elaraai/east-node-io](https://www.npmjs.com/package/@elaraai/east-node-io): SQLite, PostgreSQL, MySQL, MongoDB, S3, FTP, SFTP
|
|
228
|
+
- [@elaraai/east-node-cli](https://www.npmjs.com/package/@elaraai/east-node-cli): CLI for running East IR programs in Node.js
|
|
229
|
+
|
|
230
|
+
- **[East Python](https://github.com/elaraai/east-py)**: Python runtime and platform functions for data science and machine learning. Execute East programs with access to optimization solvers, gradient boosting, neural networks, and model explainability.
|
|
231
|
+
- [@elaraai/east-py-datascience](https://www.npmjs.com/package/@elaraai/east-py-datascience): TypeScript types for optimization, gradient boosting, neural networks, explainability
|
|
232
|
+
|
|
233
|
+
- **[East UI](https://github.com/elaraai/east-ui)**: East types and expressions for building dashboards and interactive layouts. Define UIs as data structures that render consistently across React, web, and other environments.
|
|
234
|
+
- [@elaraai/east-ui](https://www.npmjs.com/package/@elaraai/east-ui): 50+ typed UI components for layouts, forms, charts, tables, dialogs
|
|
235
|
+
- [@elaraai/east-ui-components](https://www.npmjs.com/package/@elaraai/east-ui-components): React renderer with Chakra UI styling
|
|
236
|
+
|
|
237
|
+
- **[e3 - East Execution Engine](https://github.com/elaraai/e3)**: Durable execution engine for running East pipelines at scale. Features Git-like content-addressable storage, automatic memoization, task queuing, and real-time monitoring.
|
|
238
|
+
- [@elaraai/e3](https://www.npmjs.com/package/@elaraai/e3): SDK for authoring e3 packages with typed tasks and pipelines
|
|
239
|
+
- [@elaraai/e3-core](https://www.npmjs.com/package/@elaraai/e3-core): Git-like object store, task queue, result caching
|
|
240
|
+
- [@elaraai/e3-types](https://www.npmjs.com/package/@elaraai/e3-types): Shared type definitions for e3 packages
|
|
241
|
+
- [@elaraai/e3-cli](https://www.npmjs.com/package/@elaraai/e3-cli): `e3 init`, `e3 run`, `e3 logs` commands for managing and monitoring tasks
|
|
242
|
+
- [@elaraai/e3-api-client](https://www.npmjs.com/package/@elaraai/e3-api-client): HTTP client for remote e3 servers
|
|
243
|
+
- [@elaraai/e3-api-server](https://www.npmjs.com/package/@elaraai/e3-api-server): REST API server for e3 repositories
|
|
244
|
+
|
|
245
|
+
## Links
|
|
246
|
+
|
|
247
|
+
- **Website**: [https://elaraai.com/](https://elaraai.com/)
|
|
248
|
+
- **East Repository**: [https://github.com/elaraai/East](https://github.com/elaraai/East)
|
|
249
|
+
- **Issues**: [https://github.com/elaraai/east-node/issues](https://github.com/elaraai/east-node/issues)
|
|
250
|
+
- **Email**: support@elara.ai
|
|
251
|
+
|
|
252
|
+
## About Elara
|
|
253
|
+
|
|
254
|
+
East is developed by [Elara AI Pty Ltd](https://elaraai.com/), an AI-powered platform that creates economic digital twins of businesses that optimize performance. Elara combines business objectives, decisions and data to help organizations make data-driven decisions across operations, purchasing, sales and customer engagement, and project and investment planning. East powers the computational layer of Elara solutions, enabling the expression of complex business logic and data in a simple, type-safe and portable language.
|
|
255
|
+
|
|
256
|
+
---
|
|
257
|
+
|
|
258
|
+
*Developed by [Elara AI Pty Ltd](https://elaraai.com/)*
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
|
+
* Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Gzip compression platform functions for East Node IO.
|
|
7
|
+
*
|
|
8
|
+
* Provides gzip compression and decompression operations for East programs,
|
|
9
|
+
* enabling efficient data compression using the gzip format (RFC 1952).
|
|
10
|
+
*
|
|
11
|
+
* @packageDocumentation
|
|
12
|
+
*/
|
|
13
|
+
import { BlobType } from "@elaraai/east";
|
|
14
|
+
import type { PlatformFunction } from "@elaraai/east/internal";
|
|
15
|
+
/**
|
|
16
|
+
* Compresses data using gzip compression.
|
|
17
|
+
*
|
|
18
|
+
* Applies gzip compression (RFC 1952) to binary data, producing a compressed
|
|
19
|
+
* blob that can be decompressed with {@link gzip_decompress}. The compression
|
|
20
|
+
* level can be controlled via options (0-9, where 0 is no compression and 9
|
|
21
|
+
* is maximum compression).
|
|
22
|
+
*
|
|
23
|
+
* This is a platform function for the East language, enabling gzip compression
|
|
24
|
+
* in East programs running on Node.js.
|
|
25
|
+
*
|
|
26
|
+
* @param data - Uncompressed data to compress
|
|
27
|
+
* @param options - Compression options (level)
|
|
28
|
+
* @returns Compressed data as gzip blob
|
|
29
|
+
*
|
|
30
|
+
* @throws {EastError} When compression fails due to:
|
|
31
|
+
* - Invalid compression level (location: "gzip_compress")
|
|
32
|
+
* - Memory allocation errors (location: "gzip_compress")
|
|
33
|
+
* - Internal zlib errors (location: "gzip_compress")
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* ```ts
|
|
37
|
+
* import { East, BlobType, StringType } from "@elaraai/east";
|
|
38
|
+
* import { Compression } from "@elaraai/east-node-io";
|
|
39
|
+
*
|
|
40
|
+
* const compressText = East.function([StringType], BlobType, ($, text) => {
|
|
41
|
+
* const data = $.let(text.encodeUtf8());
|
|
42
|
+
* const options = $.let({
|
|
43
|
+
* level: { tag: "some", value: 9n },
|
|
44
|
+
* });
|
|
45
|
+
* const compressed = $.let(Compression.Gzip.compress(data, options));
|
|
46
|
+
* return $.return(compressed);
|
|
47
|
+
* });
|
|
48
|
+
*
|
|
49
|
+
* const compiled = East.compileAsync(compressText.toIR(), Compression.Gzip.Implementation);
|
|
50
|
+
* const result = await compiled("Hello, World!"); // Compressed gzip blob
|
|
51
|
+
* ```
|
|
52
|
+
*
|
|
53
|
+
* @remarks
|
|
54
|
+
* - Uses Node.js built-in zlib for compression
|
|
55
|
+
* - Default compression level is 6 if not specified
|
|
56
|
+
* - Level 0 stores data without compression
|
|
57
|
+
* - Higher levels (7-9) provide better compression but are slower
|
|
58
|
+
* - All operations are asynchronous (use East.compileAsync)
|
|
59
|
+
*/
|
|
60
|
+
export declare const gzip_compress: import("@elaraai/east").AsyncPlatformDefinition<[BlobType, import("@elaraai/east").StructType<{
|
|
61
|
+
level: import("@elaraai/east").OptionType<import("@elaraai/east").IntegerType>;
|
|
62
|
+
}>], BlobType>;
|
|
63
|
+
/**
|
|
64
|
+
* Decompresses gzip-compressed data.
|
|
65
|
+
*
|
|
66
|
+
* Decompresses data that was compressed using gzip (RFC 1952), restoring the
|
|
67
|
+
* original uncompressed data. The input must be valid gzip format.
|
|
68
|
+
*
|
|
69
|
+
* This is a platform function for the East language, enabling gzip decompression
|
|
70
|
+
* in East programs running on Node.js.
|
|
71
|
+
*
|
|
72
|
+
* @param compressed - Gzip-compressed data
|
|
73
|
+
* @returns Decompressed original data
|
|
74
|
+
*
|
|
75
|
+
* @throws {EastError} When decompression fails due to:
|
|
76
|
+
* - Invalid gzip format (location: "gzip_decompress")
|
|
77
|
+
* - Corrupted compressed data (location: "gzip_decompress")
|
|
78
|
+
* - Memory allocation errors (location: "gzip_decompress")
|
|
79
|
+
* - Internal zlib errors (location: "gzip_decompress")
|
|
80
|
+
*
|
|
81
|
+
* @example
|
|
82
|
+
* ```ts
|
|
83
|
+
* import { East, BlobType, StringType } from "@elaraai/east";
|
|
84
|
+
* import { Compression } from "@elaraai/east-node-io";
|
|
85
|
+
*
|
|
86
|
+
* const decompressText = East.function([BlobType], StringType, ($, compressed) => {
|
|
87
|
+
* const decompressed = $.let(Compression.Gzip.decompress(compressed));
|
|
88
|
+
* const text = $.let(decompressed.decodeUtf8());
|
|
89
|
+
* return $.return(text);
|
|
90
|
+
* });
|
|
91
|
+
*
|
|
92
|
+
* const compiled = East.compileAsync(decompressText.toIR(), Compression.Gzip.Implementation);
|
|
93
|
+
* const result = await compiled(compressedBlob); // "Hello, World!"
|
|
94
|
+
* ```
|
|
95
|
+
*
|
|
96
|
+
* @remarks
|
|
97
|
+
* - Uses Node.js built-in zlib for decompression
|
|
98
|
+
* - Automatically detects gzip header and validates format
|
|
99
|
+
* - All operations are asynchronous (use East.compileAsync)
|
|
100
|
+
*/
|
|
101
|
+
export declare const gzip_decompress: import("@elaraai/east").AsyncPlatformDefinition<[BlobType], BlobType>;
|
|
102
|
+
/**
|
|
103
|
+
* Node.js implementation of Gzip platform functions.
|
|
104
|
+
*
|
|
105
|
+
* Pass this array to {@link East.compileAsync} to enable gzip compression operations.
|
|
106
|
+
*/
|
|
107
|
+
export declare const GzipImpl: PlatformFunction[];
|
|
108
|
+
//# sourceMappingURL=gzip.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gzip.d.ts","sourceRoot":"","sources":["../../src/compression/gzip.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;GAOG;AAEH,OAAO,EAAQ,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAU/D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,eAAO,MAAM,aAAa;;cAA6E,CAAC;AAExG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,eAAO,MAAM,eAAe,uEAA8D,CAAC;AAE3F;;;;GAIG;AACH,eAAO,MAAM,QAAQ,EAAE,gBAAgB,EA6CtC,CAAC"}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
|
+
* Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Gzip compression platform functions for East Node IO.
|
|
7
|
+
*
|
|
8
|
+
* Provides gzip compression and decompression operations for East programs,
|
|
9
|
+
* enabling efficient data compression using the gzip format (RFC 1952).
|
|
10
|
+
*
|
|
11
|
+
* @packageDocumentation
|
|
12
|
+
*/
|
|
13
|
+
import { East, BlobType } from "@elaraai/east";
|
|
14
|
+
import { EastError } from "@elaraai/east/internal";
|
|
15
|
+
import { gzip as nodeGzip, gunzip as nodeGunzip } from "node:zlib";
|
|
16
|
+
import { promisify } from "node:util";
|
|
17
|
+
import { GzipOptionsType } from "./types.js";
|
|
18
|
+
// Promisify zlib functions
|
|
19
|
+
const gzipAsync = promisify(nodeGzip);
|
|
20
|
+
const gunzipAsync = promisify(nodeGunzip);
|
|
21
|
+
/**
|
|
22
|
+
* Compresses data using gzip compression.
|
|
23
|
+
*
|
|
24
|
+
* Applies gzip compression (RFC 1952) to binary data, producing a compressed
|
|
25
|
+
* blob that can be decompressed with {@link gzip_decompress}. The compression
|
|
26
|
+
* level can be controlled via options (0-9, where 0 is no compression and 9
|
|
27
|
+
* is maximum compression).
|
|
28
|
+
*
|
|
29
|
+
* This is a platform function for the East language, enabling gzip compression
|
|
30
|
+
* in East programs running on Node.js.
|
|
31
|
+
*
|
|
32
|
+
* @param data - Uncompressed data to compress
|
|
33
|
+
* @param options - Compression options (level)
|
|
34
|
+
* @returns Compressed data as gzip blob
|
|
35
|
+
*
|
|
36
|
+
* @throws {EastError} When compression fails due to:
|
|
37
|
+
* - Invalid compression level (location: "gzip_compress")
|
|
38
|
+
* - Memory allocation errors (location: "gzip_compress")
|
|
39
|
+
* - Internal zlib errors (location: "gzip_compress")
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```ts
|
|
43
|
+
* import { East, BlobType, StringType } from "@elaraai/east";
|
|
44
|
+
* import { Compression } from "@elaraai/east-node-io";
|
|
45
|
+
*
|
|
46
|
+
* const compressText = East.function([StringType], BlobType, ($, text) => {
|
|
47
|
+
* const data = $.let(text.encodeUtf8());
|
|
48
|
+
* const options = $.let({
|
|
49
|
+
* level: { tag: "some", value: 9n },
|
|
50
|
+
* });
|
|
51
|
+
* const compressed = $.let(Compression.Gzip.compress(data, options));
|
|
52
|
+
* return $.return(compressed);
|
|
53
|
+
* });
|
|
54
|
+
*
|
|
55
|
+
* const compiled = East.compileAsync(compressText.toIR(), Compression.Gzip.Implementation);
|
|
56
|
+
* const result = await compiled("Hello, World!"); // Compressed gzip blob
|
|
57
|
+
* ```
|
|
58
|
+
*
|
|
59
|
+
* @remarks
|
|
60
|
+
* - Uses Node.js built-in zlib for compression
|
|
61
|
+
* - Default compression level is 6 if not specified
|
|
62
|
+
* - Level 0 stores data without compression
|
|
63
|
+
* - Higher levels (7-9) provide better compression but are slower
|
|
64
|
+
* - All operations are asynchronous (use East.compileAsync)
|
|
65
|
+
*/
|
|
66
|
+
export const gzip_compress = East.asyncPlatform("gzip_compress", [BlobType, GzipOptionsType], BlobType);
|
|
67
|
+
/**
|
|
68
|
+
* Decompresses gzip-compressed data.
|
|
69
|
+
*
|
|
70
|
+
* Decompresses data that was compressed using gzip (RFC 1952), restoring the
|
|
71
|
+
* original uncompressed data. The input must be valid gzip format.
|
|
72
|
+
*
|
|
73
|
+
* This is a platform function for the East language, enabling gzip decompression
|
|
74
|
+
* in East programs running on Node.js.
|
|
75
|
+
*
|
|
76
|
+
* @param compressed - Gzip-compressed data
|
|
77
|
+
* @returns Decompressed original data
|
|
78
|
+
*
|
|
79
|
+
* @throws {EastError} When decompression fails due to:
|
|
80
|
+
* - Invalid gzip format (location: "gzip_decompress")
|
|
81
|
+
* - Corrupted compressed data (location: "gzip_decompress")
|
|
82
|
+
* - Memory allocation errors (location: "gzip_decompress")
|
|
83
|
+
* - Internal zlib errors (location: "gzip_decompress")
|
|
84
|
+
*
|
|
85
|
+
* @example
|
|
86
|
+
* ```ts
|
|
87
|
+
* import { East, BlobType, StringType } from "@elaraai/east";
|
|
88
|
+
* import { Compression } from "@elaraai/east-node-io";
|
|
89
|
+
*
|
|
90
|
+
* const decompressText = East.function([BlobType], StringType, ($, compressed) => {
|
|
91
|
+
* const decompressed = $.let(Compression.Gzip.decompress(compressed));
|
|
92
|
+
* const text = $.let(decompressed.decodeUtf8());
|
|
93
|
+
* return $.return(text);
|
|
94
|
+
* });
|
|
95
|
+
*
|
|
96
|
+
* const compiled = East.compileAsync(decompressText.toIR(), Compression.Gzip.Implementation);
|
|
97
|
+
* const result = await compiled(compressedBlob); // "Hello, World!"
|
|
98
|
+
* ```
|
|
99
|
+
*
|
|
100
|
+
* @remarks
|
|
101
|
+
* - Uses Node.js built-in zlib for decompression
|
|
102
|
+
* - Automatically detects gzip header and validates format
|
|
103
|
+
* - All operations are asynchronous (use East.compileAsync)
|
|
104
|
+
*/
|
|
105
|
+
export const gzip_decompress = East.asyncPlatform("gzip_decompress", [BlobType], BlobType);
|
|
106
|
+
/**
|
|
107
|
+
* Node.js implementation of Gzip platform functions.
|
|
108
|
+
*
|
|
109
|
+
* Pass this array to {@link East.compileAsync} to enable gzip compression operations.
|
|
110
|
+
*/
|
|
111
|
+
export const GzipImpl = [
|
|
112
|
+
gzip_compress.implement(async (data, options) => {
|
|
113
|
+
try {
|
|
114
|
+
// Extract compression level (default to 6)
|
|
115
|
+
const level = options.level.type === "some"
|
|
116
|
+
? Number(options.level.value)
|
|
117
|
+
: 6;
|
|
118
|
+
// Validate level
|
|
119
|
+
if (level < 0 || level > 9) {
|
|
120
|
+
throw new EastError(`Invalid compression level: ${level}. Must be 0-9.`, {
|
|
121
|
+
location: { filename: "gzip_compress", line: 0n, column: 0n }
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
// Compress using zlib
|
|
125
|
+
const compressed = await gzipAsync(data, { level });
|
|
126
|
+
return new Uint8Array(compressed);
|
|
127
|
+
}
|
|
128
|
+
catch (err) {
|
|
129
|
+
if (err instanceof EastError)
|
|
130
|
+
throw err;
|
|
131
|
+
throw new EastError(`Gzip compression failed: ${err.message}`, {
|
|
132
|
+
location: { filename: "gzip_compress", line: 0n, column: 0n },
|
|
133
|
+
cause: err
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
}),
|
|
137
|
+
gzip_decompress.implement(async (compressed) => {
|
|
138
|
+
try {
|
|
139
|
+
// Decompress using zlib
|
|
140
|
+
const decompressed = await gunzipAsync(compressed);
|
|
141
|
+
return new Uint8Array(decompressed);
|
|
142
|
+
}
|
|
143
|
+
catch (err) {
|
|
144
|
+
if (err instanceof EastError)
|
|
145
|
+
throw err;
|
|
146
|
+
throw new EastError(`Gzip decompression failed: ${err.message}`, {
|
|
147
|
+
location: { filename: "gzip_decompress", line: 0n, column: 0n },
|
|
148
|
+
cause: err
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
}),
|
|
152
|
+
];
|
|
153
|
+
//# sourceMappingURL=gzip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gzip.js","sourceRoot":"","sources":["../../src/compression/gzip.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,308 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
|
+
* Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Compression platform functions for East Node IO.
|
|
7
|
+
*
|
|
8
|
+
* Provides functions for compressing and decompressing data using various
|
|
9
|
+
* formats like gzip, zip, and tar.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* import { East, BlobType, StringType } from "@elaraai/east";
|
|
14
|
+
* import { Compression } from "@elaraai/east-node-io";
|
|
15
|
+
*
|
|
16
|
+
* const compressText = East.function([StringType], BlobType, ($, text) => {
|
|
17
|
+
* const data = $.let(text.encodeUtf8());
|
|
18
|
+
* const options = $.let({
|
|
19
|
+
* level: { tag: "some", value: 9n },
|
|
20
|
+
* });
|
|
21
|
+
* const compressed = $.let(Compression.Gzip.compress(data, options));
|
|
22
|
+
* return $.return(compressed);
|
|
23
|
+
* });
|
|
24
|
+
*
|
|
25
|
+
* const compiled = East.compileAsync(compressText.toIR(), Compression.Gzip.Implementation);
|
|
26
|
+
* await compiled("Hello, World!"); // Compressed gzip blob
|
|
27
|
+
* ```
|
|
28
|
+
*
|
|
29
|
+
* @packageDocumentation
|
|
30
|
+
*/
|
|
31
|
+
export * from "./types.js";
|
|
32
|
+
export { gzip_compress, gzip_decompress, GzipImpl } from "./gzip.js";
|
|
33
|
+
export { zip_compress, zip_decompress, ZipImpl } from "./zip.js";
|
|
34
|
+
export { tar_create, tar_extract, TarImpl } from "./tar.js";
|
|
35
|
+
/**
|
|
36
|
+
* Compression platform functions grouped by compression type.
|
|
37
|
+
*
|
|
38
|
+
* Provides organized access to compression-specific operations for compressing
|
|
39
|
+
* and decompressing data in East programs.
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```ts
|
|
43
|
+
* import { East, BlobType, StringType } from "@elaraai/east";
|
|
44
|
+
* import { Compression } from "@elaraai/east-node-io";
|
|
45
|
+
*
|
|
46
|
+
* const compressAndDecompress = East.function([StringType], StringType, ($, text) => {
|
|
47
|
+
* const data = $.let(text.encodeUtf8());
|
|
48
|
+
* const options = $.let({
|
|
49
|
+
* level: { tag: "some", value: 9n },
|
|
50
|
+
* });
|
|
51
|
+
*
|
|
52
|
+
* const compressed = $.let(Compression.Gzip.compress(data, options));
|
|
53
|
+
* const decompressed = $.let(Compression.Gzip.decompress(compressed));
|
|
54
|
+
* const result = $.let(decompressed.decodeUtf8());
|
|
55
|
+
* return $.return(result);
|
|
56
|
+
* });
|
|
57
|
+
*
|
|
58
|
+
* const compiled = East.compileAsync(compressAndDecompress.toIR(), Compression.Gzip.Implementation);
|
|
59
|
+
* await compiled("Hello, World!"); // "Hello, World!"
|
|
60
|
+
* ```
|
|
61
|
+
*/
|
|
62
|
+
export declare const Compression: {
|
|
63
|
+
/**
|
|
64
|
+
* Gzip compression operations.
|
|
65
|
+
*
|
|
66
|
+
* Provides functions for compressing and decompressing data using gzip (RFC 1952).
|
|
67
|
+
*/
|
|
68
|
+
readonly Gzip: {
|
|
69
|
+
/**
|
|
70
|
+
* Compresses data using gzip compression.
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* ```ts
|
|
74
|
+
* import { East, BlobType, StringType } from "@elaraai/east";
|
|
75
|
+
* import { Compression } from "@elaraai/east-node-io";
|
|
76
|
+
*
|
|
77
|
+
* const compressText = East.function([StringType], BlobType, ($, text) => {
|
|
78
|
+
* const data = $.let(text.encodeUtf8());
|
|
79
|
+
* const options = $.let({
|
|
80
|
+
* level: { tag: "some", value: 9n },
|
|
81
|
+
* });
|
|
82
|
+
* const compressed = $.let(Compression.Gzip.compress(data, options));
|
|
83
|
+
* return $.return(compressed);
|
|
84
|
+
* });
|
|
85
|
+
*
|
|
86
|
+
* const compiled = East.compileAsync(compressText.toIR(), Compression.Gzip.Implementation);
|
|
87
|
+
* await compiled("Hello, World!");
|
|
88
|
+
* ```
|
|
89
|
+
*/
|
|
90
|
+
readonly compress: import("@elaraai/east").AsyncPlatformDefinition<[import("@elaraai/east").BlobType, import("@elaraai/east").StructType<{
|
|
91
|
+
level: import("@elaraai/east").OptionType<import("@elaraai/east").IntegerType>;
|
|
92
|
+
}>], import("@elaraai/east").BlobType>;
|
|
93
|
+
/**
|
|
94
|
+
* Decompresses gzip-compressed data.
|
|
95
|
+
*
|
|
96
|
+
* @example
|
|
97
|
+
* ```ts
|
|
98
|
+
* import { East, BlobType, StringType } from "@elaraai/east";
|
|
99
|
+
* import { Compression } from "@elaraai/east-node-io";
|
|
100
|
+
*
|
|
101
|
+
* const decompressText = East.function([BlobType], StringType, ($, compressed) => {
|
|
102
|
+
* const decompressed = $.let(Compression.Gzip.decompress(compressed));
|
|
103
|
+
* const text = $.let(decompressed.decodeUtf8());
|
|
104
|
+
* return $.return(text);
|
|
105
|
+
* });
|
|
106
|
+
*
|
|
107
|
+
* const compiled = East.compileAsync(decompressText.toIR(), Compression.Gzip.Implementation);
|
|
108
|
+
* await compiled(compressedBlob);
|
|
109
|
+
* ```
|
|
110
|
+
*/
|
|
111
|
+
readonly decompress: import("@elaraai/east").AsyncPlatformDefinition<[import("@elaraai/east").BlobType], import("@elaraai/east").BlobType>;
|
|
112
|
+
/**
|
|
113
|
+
* Node.js implementation of Gzip platform functions.
|
|
114
|
+
*
|
|
115
|
+
* Pass this to {@link East.compileAsync} to enable gzip operations.
|
|
116
|
+
*/
|
|
117
|
+
readonly Implementation: import("@elaraai/east/internal").PlatformFunction[];
|
|
118
|
+
/**
|
|
119
|
+
* Type definitions for Gzip operations.
|
|
120
|
+
*/
|
|
121
|
+
readonly Types: {
|
|
122
|
+
/**
|
|
123
|
+
* Compression level (0-9).
|
|
124
|
+
*/
|
|
125
|
+
readonly Level: import("@elaraai/east").IntegerType;
|
|
126
|
+
/**
|
|
127
|
+
* Gzip compression options.
|
|
128
|
+
*/
|
|
129
|
+
readonly Options: import("@elaraai/east").StructType<{
|
|
130
|
+
level: import("@elaraai/east").OptionType<import("@elaraai/east").IntegerType>;
|
|
131
|
+
}>;
|
|
132
|
+
};
|
|
133
|
+
};
|
|
134
|
+
/**
|
|
135
|
+
* ZIP archive operations.
|
|
136
|
+
*
|
|
137
|
+
* Provides functions for creating and extracting ZIP archives with multiple files.
|
|
138
|
+
*/
|
|
139
|
+
readonly Zip: {
|
|
140
|
+
/**
|
|
141
|
+
* Creates a ZIP archive from a list of files.
|
|
142
|
+
*
|
|
143
|
+
* @example
|
|
144
|
+
* ```ts
|
|
145
|
+
* import { East, BlobType, StringType } from "@elaraai/east";
|
|
146
|
+
* import { Compression } from "@elaraai/east-node-io";
|
|
147
|
+
*
|
|
148
|
+
* const createZip = East.function([StringType, StringType], BlobType, ($, file1, file2) => {
|
|
149
|
+
* const entries = $.let([
|
|
150
|
+
* { name: "file1.txt", data: file1.encodeUtf8() },
|
|
151
|
+
* { name: "file2.txt", data: file2.encodeUtf8() },
|
|
152
|
+
* ]);
|
|
153
|
+
* const options = $.let({
|
|
154
|
+
* level: { tag: "some", value: 9n },
|
|
155
|
+
* });
|
|
156
|
+
* const zipBlob = $.let(Compression.Zip.compress(entries, options));
|
|
157
|
+
* return $.return(zipBlob);
|
|
158
|
+
* });
|
|
159
|
+
*
|
|
160
|
+
* const compiled = East.compileAsync(createZip.toIR(), Compression.Zip.Implementation);
|
|
161
|
+
* await compiled("Hello", "World");
|
|
162
|
+
* ```
|
|
163
|
+
*/
|
|
164
|
+
readonly compress: import("@elaraai/east").PlatformDefinition<[import("@elaraai/east").ArrayType<import("@elaraai/east").StructType<{
|
|
165
|
+
name: import("@elaraai/east").StringType;
|
|
166
|
+
data: import("@elaraai/east").BlobType;
|
|
167
|
+
}>>, import("@elaraai/east").StructType<{
|
|
168
|
+
level: import("@elaraai/east").OptionType<import("@elaraai/east").IntegerType>;
|
|
169
|
+
}>], import("@elaraai/east").BlobType>;
|
|
170
|
+
/**
|
|
171
|
+
* Extracts files from a ZIP archive.
|
|
172
|
+
*
|
|
173
|
+
* @example
|
|
174
|
+
* ```ts
|
|
175
|
+
* import { East, BlobType, DictType, StringType } from "@elaraai/east";
|
|
176
|
+
* import { Compression } from "@elaraai/east-node-io";
|
|
177
|
+
*
|
|
178
|
+
* const extractZip = East.function([BlobType], DictType(StringType, BlobType), ($, zipBlob) => {
|
|
179
|
+
* const files = $.let(Compression.Zip.decompress(zipBlob));
|
|
180
|
+
* return $.return(files);
|
|
181
|
+
* });
|
|
182
|
+
*
|
|
183
|
+
* const compiled = East.compileAsync(extractZip.toIR(), Compression.Zip.Implementation);
|
|
184
|
+
* await compiled(zipBlob);
|
|
185
|
+
* ```
|
|
186
|
+
*/
|
|
187
|
+
readonly decompress: import("@elaraai/east").PlatformDefinition<[import("@elaraai/east").BlobType], import("@elaraai/east").DictType<import("@elaraai/east").StringType, import("@elaraai/east").BlobType>>;
|
|
188
|
+
/**
|
|
189
|
+
* Node.js implementation of ZIP platform functions.
|
|
190
|
+
*
|
|
191
|
+
* Pass this to {@link East.compileAsync} to enable ZIP operations.
|
|
192
|
+
*/
|
|
193
|
+
readonly Implementation: import("@elaraai/east/internal").PlatformFunction[];
|
|
194
|
+
/**
|
|
195
|
+
* Type definitions for ZIP operations.
|
|
196
|
+
*/
|
|
197
|
+
readonly Types: {
|
|
198
|
+
/**
|
|
199
|
+
* Compression level (0-9).
|
|
200
|
+
*/
|
|
201
|
+
readonly Level: import("@elaraai/east").IntegerType;
|
|
202
|
+
/**
|
|
203
|
+
* ZIP compression options.
|
|
204
|
+
*/
|
|
205
|
+
readonly Options: import("@elaraai/east").StructType<{
|
|
206
|
+
level: import("@elaraai/east").OptionType<import("@elaraai/east").IntegerType>;
|
|
207
|
+
}>;
|
|
208
|
+
/**
|
|
209
|
+
* Entry in a ZIP archive.
|
|
210
|
+
*/
|
|
211
|
+
readonly Entry: import("@elaraai/east").StructType<{
|
|
212
|
+
name: import("@elaraai/east").StringType;
|
|
213
|
+
data: import("@elaraai/east").BlobType;
|
|
214
|
+
}>;
|
|
215
|
+
/**
|
|
216
|
+
* List of entries for creating a ZIP archive.
|
|
217
|
+
*/
|
|
218
|
+
readonly Entries: import("@elaraai/east").ArrayType<import("@elaraai/east").StructType<{
|
|
219
|
+
name: import("@elaraai/east").StringType;
|
|
220
|
+
data: import("@elaraai/east").BlobType;
|
|
221
|
+
}>>;
|
|
222
|
+
/**
|
|
223
|
+
* Extracted files from a ZIP archive.
|
|
224
|
+
*/
|
|
225
|
+
readonly Extracted: import("@elaraai/east").DictType<import("@elaraai/east").StringType, import("@elaraai/east").BlobType>;
|
|
226
|
+
};
|
|
227
|
+
};
|
|
228
|
+
/**
|
|
229
|
+
* TAR archive operations.
|
|
230
|
+
*
|
|
231
|
+
* Provides functions for creating and extracting TAR archives (without compression).
|
|
232
|
+
*/
|
|
233
|
+
readonly Tar: {
|
|
234
|
+
/**
|
|
235
|
+
* Creates a TAR archive from a list of files.
|
|
236
|
+
*
|
|
237
|
+
* @example
|
|
238
|
+
* ```ts
|
|
239
|
+
* import { East, BlobType, StringType } from "@elaraai/east";
|
|
240
|
+
* import { Compression } from "@elaraai/east-node-io";
|
|
241
|
+
*
|
|
242
|
+
* const createTar = East.function([StringType, StringType], BlobType, ($, file1, file2) => {
|
|
243
|
+
* const entries = $.let([
|
|
244
|
+
* { name: "file1.txt", data: file1.encodeUtf8() },
|
|
245
|
+
* { name: "file2.txt", data: file2.encodeUtf8() },
|
|
246
|
+
* ]);
|
|
247
|
+
* const tarBlob = $.let(Compression.Tar.create(entries));
|
|
248
|
+
* return $.return(tarBlob);
|
|
249
|
+
* });
|
|
250
|
+
*
|
|
251
|
+
* const compiled = East.compileAsync(createTar.toIR(), Compression.Tar.Implementation);
|
|
252
|
+
* await compiled("Hello", "World");
|
|
253
|
+
* ```
|
|
254
|
+
*/
|
|
255
|
+
readonly create: import("@elaraai/east").AsyncPlatformDefinition<[import("@elaraai/east").ArrayType<import("@elaraai/east").StructType<{
|
|
256
|
+
name: import("@elaraai/east").StringType;
|
|
257
|
+
data: import("@elaraai/east").BlobType;
|
|
258
|
+
}>>], import("@elaraai/east").BlobType>;
|
|
259
|
+
/**
|
|
260
|
+
* Extracts files from a TAR archive.
|
|
261
|
+
*
|
|
262
|
+
* @example
|
|
263
|
+
* ```ts
|
|
264
|
+
* import { East, BlobType, DictType, StringType } from "@elaraai/east";
|
|
265
|
+
* import { Compression } from "@elaraai/east-node-io";
|
|
266
|
+
*
|
|
267
|
+
* const extractTar = East.function([BlobType], DictType(StringType, BlobType), ($, tarBlob) => {
|
|
268
|
+
* const files = $.let(Compression.Tar.extract(tarBlob));
|
|
269
|
+
* return $.return(files);
|
|
270
|
+
* });
|
|
271
|
+
*
|
|
272
|
+
* const compiled = East.compileAsync(extractTar.toIR(), Compression.Tar.Implementation);
|
|
273
|
+
* await compiled(tarBlob);
|
|
274
|
+
* ```
|
|
275
|
+
*/
|
|
276
|
+
readonly extract: import("@elaraai/east").AsyncPlatformDefinition<[import("@elaraai/east").BlobType], import("@elaraai/east").DictType<import("@elaraai/east").StringType, import("@elaraai/east").BlobType>>;
|
|
277
|
+
/**
|
|
278
|
+
* Node.js implementation of TAR platform functions.
|
|
279
|
+
*
|
|
280
|
+
* Pass this to {@link East.compileAsync} to enable TAR operations.
|
|
281
|
+
*/
|
|
282
|
+
readonly Implementation: import("@elaraai/east/internal").PlatformFunction[];
|
|
283
|
+
/**
|
|
284
|
+
* Type definitions for TAR operations.
|
|
285
|
+
*/
|
|
286
|
+
readonly Types: {
|
|
287
|
+
/**
|
|
288
|
+
* Entry in a TAR archive.
|
|
289
|
+
*/
|
|
290
|
+
readonly Entry: import("@elaraai/east").StructType<{
|
|
291
|
+
name: import("@elaraai/east").StringType;
|
|
292
|
+
data: import("@elaraai/east").BlobType;
|
|
293
|
+
}>;
|
|
294
|
+
/**
|
|
295
|
+
* List of entries for creating a TAR archive.
|
|
296
|
+
*/
|
|
297
|
+
readonly Entries: import("@elaraai/east").ArrayType<import("@elaraai/east").StructType<{
|
|
298
|
+
name: import("@elaraai/east").StringType;
|
|
299
|
+
data: import("@elaraai/east").BlobType;
|
|
300
|
+
}>>;
|
|
301
|
+
/**
|
|
302
|
+
* Extracted files from a TAR archive.
|
|
303
|
+
*/
|
|
304
|
+
readonly Extracted: import("@elaraai/east").DictType<import("@elaraai/east").StringType, import("@elaraai/east").BlobType>;
|
|
305
|
+
};
|
|
306
|
+
};
|
|
307
|
+
};
|
|
308
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/compression/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAGH,cAAc,YAAY,CAAC;AAG3B,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAmB5D;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,eAAO,MAAM,WAAW;IACpB;;;;OAIG;;QAEC;;;;;;;;;;;;;;;;;;;;WAoBG;;;;QAGH;;;;;;;;;;;;;;;;;WAiBG;;QAGH;;;;WAIG;;QAGH;;WAEG;;YAEC;;eAEG;;YAGH;;eAEG;;;;;;IAKX;;;;OAIG;;QAEC;;;;;;;;;;;;;;;;;;;;;;;WAuBG;;;;;;;QAGH;;;;;;;;;;;;;;;;WAgBG;;QAGH;;;;WAIG;;QAGH;;WAEG;;YAEC;;eAEG;;YAGH;;eAEG;;;;YAGH;;eAEG;;;;;YAGH;;eAEG;;;;;YAGH;;eAEG;;;;IAKX;;;;OAIG;;QAEC;;;;;;;;;;;;;;;;;;;;WAoBG;;;;;QAGH;;;;;;;;;;;;;;;;WAgBG;;QAGH;;;;WAIG;;QAGH;;WAEG;;YAEC;;eAEG;;;;;YAGH;;eAEG;;;;;YAGH;;eAEG;;;;CAIL,CAAC"}
|