@robinpath/zip 0.1.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.
- package/README.md +92 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -0
- package/dist/zip.d.ts +126 -0
- package/dist/zip.d.ts.map +1 -0
- package/dist/zip.js +78 -0
- package/dist/zip.js.map +1 -0
- package/package.json +13 -0
package/README.md
ADDED
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# @robinpath/zip
|
|
2
|
+
|
|
3
|
+
> Compression utilities: gzip, deflate, Brotli for strings and files
|
|
4
|
+
|
|
5
|
+
   
|
|
6
|
+
|
|
7
|
+
## Why use this module?
|
|
8
|
+
|
|
9
|
+
The `zip` module lets you:
|
|
10
|
+
|
|
11
|
+
- Compress a string with gzip, return base64
|
|
12
|
+
- Decompress a gzip base64 string to text
|
|
13
|
+
- Compress a string with deflate, return base64
|
|
14
|
+
- Decompress deflate base64 data to text
|
|
15
|
+
- Compress a file with gzip
|
|
16
|
+
|
|
17
|
+
All functions are callable directly from RobinPath scripts with a simple, consistent API.
|
|
18
|
+
|
|
19
|
+
## Installation
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
npm install @robinpath/zip
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Quick Start
|
|
26
|
+
|
|
27
|
+
No credentials needed — start using it right away:
|
|
28
|
+
|
|
29
|
+
```robinpath
|
|
30
|
+
zip.gunzip $compressed
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Available Functions
|
|
34
|
+
|
|
35
|
+
| Function | Description |
|
|
36
|
+
|----------|-------------|
|
|
37
|
+
| `zip.gzip` | Compress a string with gzip, return base64 |
|
|
38
|
+
| `zip.gunzip` | Decompress a gzip base64 string to text |
|
|
39
|
+
| `zip.deflate` | Compress a string with deflate, return base64 |
|
|
40
|
+
| `zip.inflate` | Decompress deflate base64 data to text |
|
|
41
|
+
| `zip.gzipFile` | Compress a file with gzip |
|
|
42
|
+
| `zip.gunzipFile` | Decompress a .gz file |
|
|
43
|
+
| `zip.brotliCompress` | Compress a string with Brotli, return base64 |
|
|
44
|
+
| `zip.brotliDecompress` | Decompress Brotli base64 data to text |
|
|
45
|
+
| `zip.isGzipped` | Check if a base64 string is gzip-compressed |
|
|
46
|
+
|
|
47
|
+
## Examples
|
|
48
|
+
|
|
49
|
+
### Decompress a gzip base64 string to text
|
|
50
|
+
|
|
51
|
+
```robinpath
|
|
52
|
+
zip.gunzip $compressed
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### Compress a string with deflate, return base64
|
|
56
|
+
|
|
57
|
+
```robinpath
|
|
58
|
+
zip.deflate "hello"
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### Decompress deflate base64 data to text
|
|
62
|
+
|
|
63
|
+
```robinpath
|
|
64
|
+
zip.inflate $compressed
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## Integration with RobinPath
|
|
68
|
+
|
|
69
|
+
```typescript
|
|
70
|
+
import { RobinPath } from "@wiredwp/robinpath";
|
|
71
|
+
import Module from "@robinpath/zip";
|
|
72
|
+
|
|
73
|
+
const rp = new RobinPath();
|
|
74
|
+
rp.registerModule(Module.name, Module.functions);
|
|
75
|
+
rp.registerModuleMeta(Module.name, Module.functionMetadata);
|
|
76
|
+
|
|
77
|
+
const result = await rp.executeScript(`
|
|
78
|
+
zip.gunzip $compressed
|
|
79
|
+
`);
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Full API Reference
|
|
83
|
+
|
|
84
|
+
See [MODULE.md](./MODULE.md) for complete documentation including all parameters, return types, error handling, and advanced examples.
|
|
85
|
+
|
|
86
|
+
## Related Modules
|
|
87
|
+
|
|
88
|
+
- [`@robinpath/json`](../json) — JSON module for complementary functionality
|
|
89
|
+
|
|
90
|
+
## License
|
|
91
|
+
|
|
92
|
+
MIT
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ModuleAdapter } from "@wiredwp/robinpath";
|
|
2
|
+
declare const ZipModule: ModuleAdapter;
|
|
3
|
+
export default ZipModule;
|
|
4
|
+
export { ZipModule };
|
|
5
|
+
export { ZipFunctions, ZipFunctionMetadata, ZipModuleMetadata } from "./zip.js";
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,QAAA,MAAM,SAAS,EAAE,aAMhB,CAAC;AAEF,eAAe,SAAS,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,CAAC;AACrB,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ZipFunctions, ZipFunctionMetadata, ZipModuleMetadata } from "./zip.js";
|
|
2
|
+
const ZipModule = {
|
|
3
|
+
name: "zip",
|
|
4
|
+
functions: ZipFunctions,
|
|
5
|
+
functionMetadata: ZipFunctionMetadata,
|
|
6
|
+
moduleMetadata: ZipModuleMetadata,
|
|
7
|
+
global: false,
|
|
8
|
+
}; // as ModuleAdapter
|
|
9
|
+
export default ZipModule;
|
|
10
|
+
export { ZipModule };
|
|
11
|
+
export { ZipFunctions, ZipFunctionMetadata, ZipModuleMetadata } from "./zip.js";
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAEhF,MAAM,SAAS,GAAkB;IAC/B,IAAI,EAAE,KAAK;IACX,SAAS,EAAE,YAAY;IACvB,gBAAgB,EAAE,mBAA0B;IAC5C,cAAc,EAAE,iBAAwB;IACxC,MAAM,EAAE,KAAK;CACd,CAAC,CAAC,mBAAmB;AAEtB,eAAe,SAAS,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,CAAC;AACrB,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC"}
|
package/dist/zip.d.ts
ADDED
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import type { BuiltinHandler } from "@wiredwp/robinpath";
|
|
2
|
+
export declare const ZipFunctions: Record<string, BuiltinHandler>;
|
|
3
|
+
export declare const ZipFunctionMetadata: {
|
|
4
|
+
gzip: {
|
|
5
|
+
description: string;
|
|
6
|
+
parameters: {
|
|
7
|
+
name: string;
|
|
8
|
+
dataType: string;
|
|
9
|
+
description: string;
|
|
10
|
+
formInputType: string;
|
|
11
|
+
required: boolean;
|
|
12
|
+
}[];
|
|
13
|
+
returnType: string;
|
|
14
|
+
returnDescription: string;
|
|
15
|
+
example: string;
|
|
16
|
+
};
|
|
17
|
+
gunzip: {
|
|
18
|
+
description: string;
|
|
19
|
+
parameters: {
|
|
20
|
+
name: string;
|
|
21
|
+
dataType: string;
|
|
22
|
+
description: string;
|
|
23
|
+
formInputType: string;
|
|
24
|
+
required: boolean;
|
|
25
|
+
}[];
|
|
26
|
+
returnType: string;
|
|
27
|
+
returnDescription: string;
|
|
28
|
+
example: string;
|
|
29
|
+
};
|
|
30
|
+
deflate: {
|
|
31
|
+
description: string;
|
|
32
|
+
parameters: {
|
|
33
|
+
name: string;
|
|
34
|
+
dataType: string;
|
|
35
|
+
description: string;
|
|
36
|
+
formInputType: string;
|
|
37
|
+
required: boolean;
|
|
38
|
+
}[];
|
|
39
|
+
returnType: string;
|
|
40
|
+
returnDescription: string;
|
|
41
|
+
example: string;
|
|
42
|
+
};
|
|
43
|
+
inflate: {
|
|
44
|
+
description: string;
|
|
45
|
+
parameters: {
|
|
46
|
+
name: string;
|
|
47
|
+
dataType: string;
|
|
48
|
+
description: string;
|
|
49
|
+
formInputType: string;
|
|
50
|
+
required: boolean;
|
|
51
|
+
}[];
|
|
52
|
+
returnType: string;
|
|
53
|
+
returnDescription: string;
|
|
54
|
+
example: string;
|
|
55
|
+
};
|
|
56
|
+
gzipFile: {
|
|
57
|
+
description: string;
|
|
58
|
+
parameters: {
|
|
59
|
+
name: string;
|
|
60
|
+
dataType: string;
|
|
61
|
+
description: string;
|
|
62
|
+
formInputType: string;
|
|
63
|
+
required: boolean;
|
|
64
|
+
}[];
|
|
65
|
+
returnType: string;
|
|
66
|
+
returnDescription: string;
|
|
67
|
+
example: string;
|
|
68
|
+
};
|
|
69
|
+
gunzipFile: {
|
|
70
|
+
description: string;
|
|
71
|
+
parameters: {
|
|
72
|
+
name: string;
|
|
73
|
+
dataType: string;
|
|
74
|
+
description: string;
|
|
75
|
+
formInputType: string;
|
|
76
|
+
required: boolean;
|
|
77
|
+
}[];
|
|
78
|
+
returnType: string;
|
|
79
|
+
returnDescription: string;
|
|
80
|
+
example: string;
|
|
81
|
+
};
|
|
82
|
+
brotliCompress: {
|
|
83
|
+
description: string;
|
|
84
|
+
parameters: {
|
|
85
|
+
name: string;
|
|
86
|
+
dataType: string;
|
|
87
|
+
description: string;
|
|
88
|
+
formInputType: string;
|
|
89
|
+
required: boolean;
|
|
90
|
+
}[];
|
|
91
|
+
returnType: string;
|
|
92
|
+
returnDescription: string;
|
|
93
|
+
example: string;
|
|
94
|
+
};
|
|
95
|
+
brotliDecompress: {
|
|
96
|
+
description: string;
|
|
97
|
+
parameters: {
|
|
98
|
+
name: string;
|
|
99
|
+
dataType: string;
|
|
100
|
+
description: string;
|
|
101
|
+
formInputType: string;
|
|
102
|
+
required: boolean;
|
|
103
|
+
}[];
|
|
104
|
+
returnType: string;
|
|
105
|
+
returnDescription: string;
|
|
106
|
+
example: string;
|
|
107
|
+
};
|
|
108
|
+
isGzipped: {
|
|
109
|
+
description: string;
|
|
110
|
+
parameters: {
|
|
111
|
+
name: string;
|
|
112
|
+
dataType: string;
|
|
113
|
+
description: string;
|
|
114
|
+
formInputType: string;
|
|
115
|
+
required: boolean;
|
|
116
|
+
}[];
|
|
117
|
+
returnType: string;
|
|
118
|
+
returnDescription: string;
|
|
119
|
+
example: string;
|
|
120
|
+
};
|
|
121
|
+
};
|
|
122
|
+
export declare const ZipModuleMetadata: {
|
|
123
|
+
description: string;
|
|
124
|
+
methods: string[];
|
|
125
|
+
};
|
|
126
|
+
//# sourceMappingURL=zip.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zip.d.ts","sourceRoot":"","sources":["../src/zip.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAA2C,MAAM,oBAAoB,CAAC;AAwElG,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAEvD,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAU/B,CAAC;AAEF,eAAO,MAAM,iBAAiB;;;CAG7B,CAAC"}
|
package/dist/zip.js
ADDED
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { promisify } from "node:util";
|
|
2
|
+
import { readFile, writeFile } from "node:fs/promises";
|
|
3
|
+
const gzipAsync = promisify(any);
|
|
4
|
+
const gunzipAsync = promisify(any);
|
|
5
|
+
const deflateAsync = promisify(any);
|
|
6
|
+
const inflateAsync = promisify(any);
|
|
7
|
+
const brotliCompressAsync = promisify(any);
|
|
8
|
+
const brotliDecompressAsync = promisify(any);
|
|
9
|
+
const gzip = async (args) => {
|
|
10
|
+
const buf = Buffer.from(String(args[0] ?? ""), "utf-8");
|
|
11
|
+
const compressed = await gzipAsync(buf);
|
|
12
|
+
return compressed.toString("base64");
|
|
13
|
+
};
|
|
14
|
+
const gunzip = async (args) => {
|
|
15
|
+
const buf = Buffer.from(String(args[0] ?? ""), "base64");
|
|
16
|
+
const decompressed = await gunzipAsync(buf);
|
|
17
|
+
return decompressed.toString("utf-8");
|
|
18
|
+
};
|
|
19
|
+
const deflate = async (args) => {
|
|
20
|
+
const buf = Buffer.from(String(args[0] ?? ""), "utf-8");
|
|
21
|
+
const compressed = await deflateAsync(buf);
|
|
22
|
+
return compressed.toString("base64");
|
|
23
|
+
};
|
|
24
|
+
const inflate = async (args) => {
|
|
25
|
+
const buf = Buffer.from(String(args[0] ?? ""), "base64");
|
|
26
|
+
const decompressed = await inflateAsync(buf);
|
|
27
|
+
return decompressed.toString("utf-8");
|
|
28
|
+
};
|
|
29
|
+
const gzipFile = async (args) => {
|
|
30
|
+
const inputPath = String(args[0] ?? "");
|
|
31
|
+
const outputPath = args[1] != null ? String(args[1]) : inputPath + ".gz";
|
|
32
|
+
const data = await readFile(inputPath);
|
|
33
|
+
const compressed = await gzipAsync(data);
|
|
34
|
+
await writeFile(outputPath, compressed);
|
|
35
|
+
return outputPath;
|
|
36
|
+
};
|
|
37
|
+
const gunzipFile = async (args) => {
|
|
38
|
+
const inputPath = String(args[0] ?? "");
|
|
39
|
+
const outputPath = args[1] != null ? String(args[1]) : inputPath.replace(/\.gz$/, "");
|
|
40
|
+
const data = await readFile(inputPath);
|
|
41
|
+
const decompressed = await gunzipAsync(data);
|
|
42
|
+
await writeFile(outputPath, decompressed);
|
|
43
|
+
return outputPath;
|
|
44
|
+
};
|
|
45
|
+
const brotliCompress = async (args) => {
|
|
46
|
+
const buf = Buffer.from(String(args[0] ?? ""), "utf-8");
|
|
47
|
+
const compressed = await brotliCompressAsync(buf);
|
|
48
|
+
return compressed.toString("base64");
|
|
49
|
+
};
|
|
50
|
+
const brotliDecompress = async (args) => {
|
|
51
|
+
const buf = Buffer.from(String(args[0] ?? ""), "base64");
|
|
52
|
+
const decompressed = await brotliDecompressAsync(buf);
|
|
53
|
+
return decompressed.toString("utf-8");
|
|
54
|
+
};
|
|
55
|
+
const isGzipped = (args) => {
|
|
56
|
+
const input = String(args[0] ?? "");
|
|
57
|
+
const buf = Buffer.from(input, "base64");
|
|
58
|
+
return buf.length >= 2 && buf[0] === 0x1f && buf[1] === 0x8b;
|
|
59
|
+
};
|
|
60
|
+
export const ZipFunctions = {
|
|
61
|
+
gzip, gunzip, deflate, inflate, gzipFile, gunzipFile, brotliCompress, brotliDecompress, isGzipped,
|
|
62
|
+
};
|
|
63
|
+
export const ZipFunctionMetadata = {
|
|
64
|
+
gzip: { description: "Compress a string with gzip, return base64", parameters: [{ name: "str", dataType: "string", description: "String to compress", formInputType: "textarea", required: true }], returnType: "string", returnDescription: "Base64-encoded gzip data", example: 'zip.gzip "hello world"' },
|
|
65
|
+
gunzip: { description: "Decompress a gzip base64 string to text", parameters: [{ name: "base64", dataType: "string", description: "Base64 gzip data", formInputType: "text", required: true }], returnType: "string", returnDescription: "Decompressed string", example: "zip.gunzip $compressed" },
|
|
66
|
+
deflate: { description: "Compress a string with deflate, return base64", parameters: [{ name: "str", dataType: "string", description: "String to compress", formInputType: "textarea", required: true }], returnType: "string", returnDescription: "Base64-encoded deflate data", example: 'zip.deflate "hello"' },
|
|
67
|
+
inflate: { description: "Decompress deflate base64 data to text", parameters: [{ name: "base64", dataType: "string", description: "Base64 deflate data", formInputType: "text", required: true }], returnType: "string", returnDescription: "Decompressed string", example: "zip.inflate $compressed" },
|
|
68
|
+
gzipFile: { description: "Compress a file with gzip", parameters: [{ name: "inputPath", dataType: "string", description: "Path to input file", formInputType: "text", required: true }, { name: "outputPath", dataType: "string", description: "Path for output .gz file", formInputType: "text", required: false }], returnType: "string", returnDescription: "Output file path", example: 'zip.gzipFile "data.txt"' },
|
|
69
|
+
gunzipFile: { description: "Decompress a .gz file", parameters: [{ name: "inputPath", dataType: "string", description: "Path to .gz file", formInputType: "text", required: true }, { name: "outputPath", dataType: "string", description: "Path for output file", formInputType: "text", required: false }], returnType: "string", returnDescription: "Output file path", example: 'zip.gunzipFile "data.txt.gz"' },
|
|
70
|
+
brotliCompress: { description: "Compress a string with Brotli, return base64", parameters: [{ name: "str", dataType: "string", description: "String to compress", formInputType: "textarea", required: true }], returnType: "string", returnDescription: "Base64-encoded Brotli data", example: 'zip.brotliCompress "hello"' },
|
|
71
|
+
brotliDecompress: { description: "Decompress Brotli base64 data to text", parameters: [{ name: "base64", dataType: "string", description: "Base64 Brotli data", formInputType: "text", required: true }], returnType: "string", returnDescription: "Decompressed string", example: "zip.brotliDecompress $compressed" },
|
|
72
|
+
isGzipped: { description: "Check if a base64 string is gzip-compressed", parameters: [{ name: "base64", dataType: "string", description: "Base64 string to check", formInputType: "text", required: true }], returnType: "boolean", returnDescription: "True if gzipped", example: "zip.isGzipped $data" },
|
|
73
|
+
};
|
|
74
|
+
export const ZipModuleMetadata = {
|
|
75
|
+
description: "Compression utilities: gzip, deflate, Brotli for strings and files",
|
|
76
|
+
methods: ["gzip", "gunzip", "deflate", "inflate", "gzipFile", "gunzipFile", "brotliCompress", "brotliDecompress", "isGzipped"],
|
|
77
|
+
};
|
|
78
|
+
//# sourceMappingURL=zip.js.map
|
package/dist/zip.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zip.js","sourceRoot":"","sources":["../src/zip.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@robinpath/zip",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"publishConfig": { "access": "public" },
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "dist/index.js",
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"exports": { ".": { "import": "./dist/index.js", "types": "./dist/index.d.ts" } },
|
|
9
|
+
"files": ["dist"],
|
|
10
|
+
"scripts": { "build": "tsc", "test": "node --import tsx --test tests/*.test.ts" },
|
|
11
|
+
"peerDependencies": { "@wiredwp/robinpath": ">=0.20.0" },
|
|
12
|
+
"devDependencies": { "@wiredwp/robinpath": "^0.30.1", "tsx": "^4.19.0", "typescript": "^5.6.0" }
|
|
13
|
+
}
|