@scelar/nodepod 1.0.2 → 1.0.3

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/dist/__tests__/bench/integration.bench.d.ts +1 -0
  2. package/dist/__tests__/bench/memory-volume.bench.d.ts +1 -0
  3. package/dist/__tests__/bench/polyfills.bench.d.ts +1 -0
  4. package/dist/__tests__/bench/script-engine.bench.d.ts +1 -0
  5. package/dist/__tests__/bench/shell.bench.d.ts +1 -0
  6. package/dist/__tests__/bench/syntax-transforms.bench.d.ts +1 -0
  7. package/dist/__tests__/bench/version-resolver.bench.d.ts +1 -0
  8. package/dist/__tests__/buffer.test.d.ts +1 -0
  9. package/dist/__tests__/byte-encoding.test.d.ts +1 -0
  10. package/dist/__tests__/digest.test.d.ts +1 -0
  11. package/dist/__tests__/events.test.d.ts +1 -0
  12. package/dist/__tests__/memory-volume.test.d.ts +1 -0
  13. package/dist/__tests__/path.test.d.ts +1 -0
  14. package/dist/__tests__/process.test.d.ts +1 -0
  15. package/dist/__tests__/script-engine.test.d.ts +1 -0
  16. package/dist/__tests__/shell-builtins.test.d.ts +1 -0
  17. package/dist/__tests__/shell-interpreter.test.d.ts +1 -0
  18. package/dist/__tests__/shell-parser.test.d.ts +1 -0
  19. package/dist/__tests__/stream.test.d.ts +1 -0
  20. package/dist/__tests__/syntax-transforms.test.d.ts +1 -0
  21. package/dist/__tests__/version-resolver.test.d.ts +1 -0
  22. package/dist/{child_process-Dopvyd-E.js → child_process-D6oDN2MX.js} +4 -4
  23. package/dist/{child_process-Dopvyd-E.js.map → child_process-D6oDN2MX.js.map} +1 -1
  24. package/dist/{child_process-B38qoN6R.cjs → child_process-hmVqFcF7.cjs} +5 -5
  25. package/dist/{child_process-B38qoN6R.cjs.map → child_process-hmVqFcF7.cjs.map} +1 -1
  26. package/dist/{index--Qr8LVpQ.js → index-Ale2oba_.js} +240 -136
  27. package/dist/index-Ale2oba_.js.map +1 -0
  28. package/dist/{index-cnitc68U.cjs → index-BO1i013L.cjs} +236 -191
  29. package/dist/index-BO1i013L.cjs.map +1 -0
  30. package/dist/index.cjs +1 -1
  31. package/dist/index.mjs +1 -1
  32. package/dist/script-engine.d.ts +2 -0
  33. package/dist/syntax-transforms.d.ts +1 -0
  34. package/package.json +97 -95
  35. package/src/__tests__/bench/integration.bench.ts +117 -0
  36. package/src/__tests__/bench/memory-volume.bench.ts +115 -0
  37. package/src/__tests__/bench/polyfills.bench.ts +147 -0
  38. package/src/__tests__/bench/script-engine.bench.ts +104 -0
  39. package/src/__tests__/bench/shell.bench.ts +101 -0
  40. package/src/__tests__/bench/syntax-transforms.bench.ts +82 -0
  41. package/src/__tests__/bench/version-resolver.bench.ts +95 -0
  42. package/src/__tests__/buffer.test.ts +273 -0
  43. package/src/__tests__/byte-encoding.test.ts +98 -0
  44. package/src/__tests__/digest.test.ts +44 -0
  45. package/src/__tests__/events.test.ts +245 -0
  46. package/src/__tests__/memory-volume.test.ts +443 -0
  47. package/src/__tests__/path.test.ts +181 -0
  48. package/src/__tests__/process.test.ts +129 -0
  49. package/src/__tests__/script-engine.test.ts +229 -0
  50. package/src/__tests__/shell-builtins.test.ts +357 -0
  51. package/src/__tests__/shell-interpreter.test.ts +157 -0
  52. package/src/__tests__/shell-parser.test.ts +204 -0
  53. package/src/__tests__/stream.test.ts +142 -0
  54. package/src/__tests__/syntax-transforms.test.ts +158 -0
  55. package/src/__tests__/version-resolver.test.ts +184 -0
  56. package/src/constants/cdn-urls.ts +18 -18
  57. package/src/helpers/byte-encoding.ts +51 -39
  58. package/src/memory-volume.ts +962 -941
  59. package/src/module-transformer.ts +368 -368
  60. package/src/packages/installer.ts +396 -396
  61. package/src/polyfills/buffer.ts +633 -628
  62. package/src/polyfills/esbuild.ts +854 -854
  63. package/src/polyfills/events.ts +282 -276
  64. package/src/polyfills/process.ts +695 -690
  65. package/src/polyfills/readline.ts +692 -692
  66. package/src/polyfills/tty.ts +71 -71
  67. package/src/script-engine.ts +3396 -3375
  68. package/src/syntax-transforms.ts +543 -561
  69. package/dist/index--Qr8LVpQ.js.map +0 -1
  70. package/dist/index-cnitc68U.cjs.map +0 -1
@@ -1,18 +1,18 @@
1
- // Pinned CDN versions and URLs
2
-
3
- export const PINNED_ESBUILD_WASM = '0.20.0';
4
- export const PINNED_ROLLUP_BROWSER = '4.9.0';
5
- export const PINNED_BROTLI_WASM = '3.0.1';
6
- export const PINNED_LIGHTNINGCSS_WASM = '1.31.1';
7
-
8
- export const CDN_ESBUILD_ESM = `https://esm.sh/esbuild-wasm@${PINNED_ESBUILD_WASM}`;
9
- export const CDN_ESBUILD_BINARY = `https://esm.sh/esbuild-wasm@${PINNED_ESBUILD_WASM}/esbuild.wasm`;
10
- export const CDN_ESBUILD_BROWSER = `https://esm.sh/esbuild-wasm@${PINNED_ESBUILD_WASM}/esm/browser.min.js`;
11
- export const CDN_ROLLUP_BROWSER = `https://esm.sh/@rollup/browser@${PINNED_ROLLUP_BROWSER}`;
12
- export const CDN_BROTLI_WASM = `https://esm.sh/brotli-wasm@${PINNED_BROTLI_WASM}`;
13
- export const CDN_LIGHTNINGCSS_WASM = `https://esm.sh/lightningcss-wasm@${PINNED_LIGHTNINGCSS_WASM}`;
14
-
15
- // new Function hides import() from bundler static analysis so CDN URLs work at runtime
16
- // eslint-disable-next-line @typescript-eslint/no-implied-eval
17
- const _dynamicImport = new Function("url", "return import(url)") as (url: string) => Promise<any>;
18
- export { _dynamicImport as cdnImport };
1
+ // Pinned CDN versions and URLs
2
+
3
+ export const PINNED_ESBUILD_WASM = '0.20.0';
4
+ export const PINNED_ROLLUP_BROWSER = '4.9.0';
5
+ export const PINNED_BROTLI_WASM = '3.0.1';
6
+ export const PINNED_LIGHTNINGCSS_WASM = '1.31.1';
7
+
8
+ export const CDN_ESBUILD_ESM = `https://esm.sh/esbuild-wasm@${PINNED_ESBUILD_WASM}`;
9
+ export const CDN_ESBUILD_BINARY = `https://esm.sh/esbuild-wasm@${PINNED_ESBUILD_WASM}/esbuild.wasm`;
10
+ export const CDN_ESBUILD_BROWSER = `https://esm.sh/esbuild-wasm@${PINNED_ESBUILD_WASM}/esm/browser.min.js`;
11
+ export const CDN_ROLLUP_BROWSER = `https://esm.sh/@rollup/browser@${PINNED_ROLLUP_BROWSER}`;
12
+ export const CDN_BROTLI_WASM = `https://esm.sh/brotli-wasm@${PINNED_BROTLI_WASM}`;
13
+ export const CDN_LIGHTNINGCSS_WASM = `https://esm.sh/lightningcss-wasm@${PINNED_LIGHTNINGCSS_WASM}`;
14
+
15
+ // new Function hides import() from bundler static analysis so CDN URLs work at runtime
16
+ // eslint-disable-next-line @typescript-eslint/no-implied-eval
17
+ const _dynamicImport = new Function("url", "return import(url)") as (url: string) => Promise<any>;
18
+ export { _dynamicImport as cdnImport };
@@ -1,39 +1,51 @@
1
- // Chunked to avoid blowing the call stack on large buffers
2
- const SEGMENT_SIZE = 8192;
3
-
4
- export function bytesToBase64(data: Uint8Array): string {
5
- const segments: string[] = [];
6
- for (let offset = 0; offset < data.length; offset += SEGMENT_SIZE) {
7
- segments.push(
8
- String.fromCharCode.apply(null, Array.from(data.subarray(offset, offset + SEGMENT_SIZE)))
9
- );
10
- }
11
- return btoa(segments.join(''));
12
- }
13
-
14
- export function base64ToBytes(encoded: string): Uint8Array {
15
- const raw = atob(encoded);
16
- const result = new Uint8Array(raw.length);
17
- for (let i = 0; i < raw.length; i++) {
18
- result[i] = raw.charCodeAt(i);
19
- }
20
- return result;
21
- }
22
-
23
- export function bytesToHex(data: Uint8Array): string {
24
- const chars = new Array(data.length);
25
- for (let i = 0; i < data.length; i++) {
26
- chars[i] = data[i].toString(16).padStart(2, '0');
27
- }
28
- return chars.join('');
29
- }
30
-
31
- export function bytesToLatin1(data: Uint8Array): string {
32
- const segments: string[] = [];
33
- for (let offset = 0; offset < data.length; offset += SEGMENT_SIZE) {
34
- segments.push(
35
- String.fromCharCode.apply(null, Array.from(data.subarray(offset, offset + SEGMENT_SIZE)))
36
- );
37
- }
38
- return segments.join('');
39
- }
1
+ // Chunked to avoid blowing the call stack on large buffers
2
+ const SEGMENT_SIZE = 8192;
3
+
4
+ export function bytesToBase64(data: Uint8Array): string {
5
+ const segments: string[] = [];
6
+ for (let offset = 0; offset < data.length; offset += SEGMENT_SIZE) {
7
+ const end = Math.min(offset + SEGMENT_SIZE, data.length);
8
+ let chunk = '';
9
+ for (let i = offset; i < end; i++) {
10
+ chunk += String.fromCharCode(data[i]);
11
+ }
12
+ segments.push(chunk);
13
+ }
14
+ return btoa(segments.join(''));
15
+ }
16
+
17
+ export function base64ToBytes(encoded: string): Uint8Array {
18
+ const raw = atob(encoded);
19
+ const result = new Uint8Array(raw.length);
20
+ for (let i = 0; i < raw.length; i++) {
21
+ result[i] = raw.charCodeAt(i);
22
+ }
23
+ return result;
24
+ }
25
+
26
+ // Pre-computed hex lookup table
27
+ const HEX_TABLE: string[] = new Array(256);
28
+ for (let i = 0; i < 256; i++) {
29
+ HEX_TABLE[i] = (i < 16 ? '0' : '') + i.toString(16);
30
+ }
31
+
32
+ export function bytesToHex(data: Uint8Array): string {
33
+ const chars = new Array(data.length);
34
+ for (let i = 0; i < data.length; i++) {
35
+ chars[i] = HEX_TABLE[data[i]];
36
+ }
37
+ return chars.join('');
38
+ }
39
+
40
+ export function bytesToLatin1(data: Uint8Array): string {
41
+ const segments: string[] = [];
42
+ for (let offset = 0; offset < data.length; offset += SEGMENT_SIZE) {
43
+ const end = Math.min(offset + SEGMENT_SIZE, data.length);
44
+ let chunk = '';
45
+ for (let i = offset; i < end; i++) {
46
+ chunk += String.fromCharCode(data[i]);
47
+ }
48
+ segments.push(chunk);
49
+ }
50
+ return segments.join('');
51
+ }