@wterm/core 0.1.8 → 0.2.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 CHANGED
@@ -8,6 +8,7 @@ Headless terminal emulator core for [wterm](https://github.com/vercel-labs/wterm
8
8
  |---|---|
9
9
  | [`@wterm/dom`](https://www.npmjs.com/package/@wterm/dom) | DOM renderer, input handler — vanilla JS terminal |
10
10
  | [`@wterm/react`](https://www.npmjs.com/package/@wterm/react) | React component + `useTerminal` hook |
11
+ | [`@wterm/vue`](https://www.npmjs.com/package/@wterm/vue) | Vue 3 component + template ref API |
11
12
  | [`@wterm/just-bash`](https://www.npmjs.com/package/@wterm/just-bash) | In-browser Bash shell powered by just-bash |
12
13
  | [`@wterm/markdown`](https://www.npmjs.com/package/@wterm/markdown) | Streaming Markdown-to-ANSI renderer for terminals |
13
14
 
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { WasmBridge } from "./wasm-bridge.js";
2
- export type { CellData, CursorState } from "./wasm-bridge.js";
2
+ export type { CellData, CursorState, UnhandledSequence, } from "./wasm-bridge.js";
3
3
  export { WebSocketTransport } from "./transport.js";
4
4
  export type { WebSocketTransportOptions } from "./transport.js";
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,YAAY,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,YAAY,EACV,QAAQ,EACR,WAAW,EACX,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,YAAY,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAM9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -9,6 +9,12 @@ export interface CursorState {
9
9
  col: number;
10
10
  visible: boolean;
11
11
  }
12
+ export interface UnhandledSequence {
13
+ final: string;
14
+ private: string;
15
+ paramCount: number;
16
+ params: number[];
17
+ }
12
18
  export declare class WasmBridge {
13
19
  private exports;
14
20
  private memory;
@@ -40,6 +46,7 @@ export declare class WasmBridge {
40
46
  getScrollbackCount(): number;
41
47
  getScrollbackCell(offset: number, col: number): CellData;
42
48
  getScrollbackLineLen(offset: number): number;
49
+ getUnhandledSequences(): UnhandledSequence[];
43
50
  resize(cols: number, rows: number): void;
44
51
  }
45
52
  //# sourceMappingURL=wasm-bridge.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wasm-bridge.d.ts","sourceRoot":"","sources":["../src/wasm-bridge.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;CAClB;AAyCD,qBAAa,UAAU;IACrB,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,QAAQ,CAAM;IACtB,OAAO,CAAC,OAAO,CAAO;IACtB,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,GAAG,CAAY;gBAEX,QAAQ,EAAE,WAAW,CAAC,QAAQ;WAK7B,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAiBpD,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAKtC,OAAO,CAAC,eAAe;IASvB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAK9B,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;IAWhC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,QAAQ;IAW3C,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIhC,UAAU,IAAI,IAAI;IAIlB,SAAS,IAAI,WAAW;IAQxB,OAAO,IAAI,MAAM;IAGjB,OAAO,IAAI,MAAM;IAIjB,aAAa,IAAI,OAAO;IAGxB,cAAc,IAAI,OAAO;IAGzB,cAAc,IAAI,OAAO;IAIzB,QAAQ,IAAI,MAAM,GAAG,IAAI;IAQzB,WAAW,IAAI,MAAM,GAAG,IAAI;IAU5B,kBAAkB,IAAI,MAAM;IAI5B,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,QAAQ;IAYxD,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAI5C,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;CAIzC"}
1
+ {"version":3,"file":"wasm-bridge.d.ts","sourceRoot":"","sources":["../src/wasm-bridge.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;CAClB;AAoCD,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAWD,qBAAa,UAAU;IACrB,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,QAAQ,CAAM;IACtB,OAAO,CAAC,OAAO,CAAO;IACtB,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,GAAG,CAAY;gBAEX,QAAQ,EAAE,WAAW,CAAC,QAAQ;WAK7B,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAiBpD,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAKtC,OAAO,CAAC,eAAe;IASvB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAK9B,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;IAWhC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,QAAQ;IAW3C,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIhC,UAAU,IAAI,IAAI;IAIlB,SAAS,IAAI,WAAW;IAQxB,OAAO,IAAI,MAAM;IAGjB,OAAO,IAAI,MAAM;IAIjB,aAAa,IAAI,OAAO;IAGxB,cAAc,IAAI,OAAO;IAGzB,cAAc,IAAI,OAAO;IAIzB,QAAQ,IAAI,MAAM,GAAG,IAAI;IAQzB,WAAW,IAAI,MAAM,GAAG,IAAI;IAU5B,kBAAkB,IAAI,MAAM;IAI5B,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,QAAQ;IAYxD,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAI5C,qBAAqB,IAAI,iBAAiB,EAAE;IA+B5C,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;CAIzC"}
@@ -132,6 +132,38 @@ export class WasmBridge {
132
132
  getScrollbackLineLen(offset) {
133
133
  return this.exports.getScrollbackLineLen(offset);
134
134
  }
135
+ getUnhandledSequences() {
136
+ const count = this.exports.getDebugLogCount();
137
+ if (count === 0)
138
+ return [];
139
+ const ptr = this.exports.getDebugLogPtr();
140
+ const entrySize = this.exports.getDebugLogEntrySize();
141
+ const maxEntries = this.exports.getDebugLogMax();
142
+ const total = Math.min(count, maxEntries);
143
+ const dv = new DataView(this.memory.buffer);
144
+ const entries = [];
145
+ const startIdx = count >= maxEntries ? count % maxEntries : 0;
146
+ for (let i = 0; i < total; i++) {
147
+ const idx = (startIdx + i) % maxEntries;
148
+ const off = ptr + idx * entrySize;
149
+ const finalByte = dv.getUint8(off);
150
+ if (finalByte === 0)
151
+ continue;
152
+ const privateByte = dv.getUint8(off + 1);
153
+ const paramCount = dv.getUint8(off + 2);
154
+ const params = [];
155
+ for (let p = 0; p < Math.min(paramCount, 4); p++) {
156
+ params.push(dv.getUint16(off + 4 + p * 2, true));
157
+ }
158
+ entries.push({
159
+ final: String.fromCharCode(finalByte),
160
+ private: privateByte ? String.fromCharCode(privateByte) : "",
161
+ paramCount,
162
+ params,
163
+ });
164
+ }
165
+ return entries;
166
+ }
135
167
  resize(cols, rows) {
136
168
  this.exports.resizeTerminal(cols, rows);
137
169
  this._updatePointers();
@@ -1 +1 @@
1
- {"version":3,"file":"wasm-bridge.js","sourceRoot":"","sources":["../src/wasm-bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wasm-bridge.js","sourceRoot":"","sources":["../src/wasm-bridge.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export declare const WASM_BASE64 = "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";
1
+ export declare const WASM_BASE64 = "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CyAAQQFxDQEQpoCAgAAMAgsPCxClgICAAAsgAUECaiEBDAALC+sBAQJ/I4CAgIAAQRBrIgIkgICAgABBACEDIAJBADoACyACIAE6AAkgAiAAOgAIIAJCADcDACACQQAtAMSAwIAAIgE6AAogAUEEIAFBBEkbQQF0IQECQANAIAEgA0YNASACIANqIANBoIDAgABqLwEAOwEAIANBAmohAwwACwtBAC0A2ozwgABBDGwiA0H8hvCAAGogAkEIaigCADYCACADIAIpAwA3AvSG8IAAQQBBACgC5ITAgABBAWoiA0F/IAMbNgLkhMCAAEEAQQAtANqM8IAAQQFqQR9xOgDajPCAACACQRBqJICAgIAAC3gBAn8CQCAAQf//A3EiAkEALwHqhPCAAE8NACACQYAYbEHohMCAAGohAEEAIQMCQANAIANBAC8B6ITwgABPDQEgACABKQIANwIAIABBCGogAUEIaigCADYCACAAQQxqIQAgA0EBaiEDDAALCyACQQE6AOyE8IAACwujAQEBfwJAIABB//8DcSIEQQAvAeqE8IAATw0AQQAgAkH//wNxIgBBAC8B6ITwgAAiAiAAIAJJGyIAIAFB//8DcSIBayICIAIgAEsbIQIgBEGAGGwgAUEMbGpB6ITAgABqIQACQANAIAJFDQEgACADKQIANwIAIABBCGogA0EIaigCADYCACAAQQxqIQAgAkF/aiECDAALCyAEQQE6AOyE8IAACwvhAQEEfwJAIAJB//8DcUUNACABQf//A3EgAEH//wNxTQ0AIAEgAGsiBCACQf//A3EiAiAEQf//A3EiBCACIARJGyIFa0H//wNxIQZBACECA0ACQCAGIAJHDQAgBSAAakH//wNxIQIDQCAAQf//A3EgAk8NAyAAIAMQnYCAgAAgAEEBaiEADAALCyABIAJBf3NqIgdB//8DcSEEAkBBgBhFDQAgBEGAGGxB6ITAgABqIAcgBWtB//8DcUGAGGxB6ITAgABqQYAY/AoAAAsgBEEBOgDshPCAACACQQFqIQIMAAsLC9gBAQN/AkAgAkH//wNxRQ0AIAFB//8DcSAAQf//A3FNDQAgAkH//wNxIgIgASAAa0H//wNxIgQgAiAESRsiBEGAGGxB6ITAgABqIQUgAUH//wNxIQYgAEH//wNxIgBBgBhsIQIDQAJAIAQgAGogBkkN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";
2
2
  //# sourceMappingURL=wasm-inline.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wasm-inline.d.ts","sourceRoot":"","sources":["../src/wasm-inline.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,WAAW,ixeAAixe,CAAC"}
1
+ {"version":3,"file":"wasm-inline.d.ts","sourceRoot":"","sources":["../src/wasm-inline.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,WAAW,q3hBAAq3hB,CAAC"}
@@ -1,3 +1,3 @@
1
1
  // Auto-generated — do not edit. Run `node scripts/inline-wasm.js` to regenerate.
2
- export const WASM_BASE64 = "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";
2
+ export const WASM_BASE64 = "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CyAAQQFxDQEQpoCAgAAMAgsPCxClgICAAAsgAUECaiEBDAALC+sBAQJ/I4CAgIAAQRBrIgIkgICAgABBACEDIAJBADoACyACIAE6AAkgAiAAOgAIIAJCADcDACACQQAtAMSAwIAAIgE6AAogAUEEIAFBBEkbQQF0IQECQANAIAEgA0YNASACIANqIANBoIDAgABqLwEAOwEAIANBAmohAwwACwtBAC0A2ozwgABBDGwiA0H8hvCAAGogAkEIaigCADYCACADIAIpAwA3AvSG8IAAQQBBACgC5ITAgABBAWoiA0F/IAMbNgLkhMCAAEEAQQAtANqM8IAAQQFqQR9xOgDajPCAACACQRBqJICAgIAAC3gBAn8CQCAAQf//A3EiAkEALwHqhPCAAE8NACACQYAYbEHohMCAAGohAEEAIQMCQANAIANBAC8B6ITwgABPDQEgACABKQIANwIAIABBCGogAUEIaigCADYCACAAQQxqIQAgA0EBaiEDDAALCyACQQE6AOyE8IAACwujAQEBfwJAIABB//8DcSIEQQAvAeqE8IAATw0AQQAgAkH//wNxIgBBAC8B6ITwgAAiAiAAIAJJGyIAIAFB//8DcSIBayICIAIgAEsbIQIgBEGAGGwgAUEMbGpB6ITAgABqIQACQANAIAJFDQEgACADKQIANwIAIABBCGogA0EIaigCADYCACAAQQxqIQAgAkF/aiECDAALCyAEQQE6AOyE8IAACwvhAQEEfwJAIAJB//8DcUUNACABQf//A3EgAEH//wNxTQ0AIAEgAGsiBCACQf//A3EiAiAEQf//A3EiBCACIARJGyIFa0H//wNxIQZBACECA0ACQCAGIAJHDQAgBSAAakH//wNxIQIDQCAAQf//A3EgAk8NAyAAIAMQnYCAgAAgAEEBaiEADAALCyABIAJBf3NqIgdB//8DcSEEAkBBgBhFDQAgBEGAGGxB6ITAgABqIAcgBWtB//8DcUGAGGxB6ITAgABqQYAY/AoAAAsgBEEBOgDshPCAACACQQFqIQIMAAsLC9gBAQN/AkAgAkH//wNxRQ0AIAFB//8DcSAAQf//A3FNDQAgAkH//wNxIgIgASAAa0H//wNxIgQgAiAESRsiBEGAGGxB6ITAgABqIQUgAUH//wNxIQYgAEH//wNxIgBBgBhsIQIDQAJAIAQgAGogBkkN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";
3
3
  //# sourceMappingURL=wasm-inline.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"wasm-inline.js","sourceRoot":"","sources":["../src/wasm-inline.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,MAAM,CAAC,MAAM,WAAW,GAAG,8weAA8we,CAAC"}
1
+ {"version":3,"file":"wasm-inline.js","sourceRoot":"","sources":["../src/wasm-inline.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,MAAM,CAAC,MAAM,WAAW,GAAG,k3hBAAk3hB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wterm/core",
3
- "version": "0.1.8",
3
+ "version": "0.2.0",
4
4
  "description": "Headless terminal emulator core for the web — WASM bridge and WebSocket transport",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -17,9 +17,16 @@
17
17
  "dist",
18
18
  "wasm"
19
19
  ],
20
+ "scripts": {
21
+ "prebuild": "node scripts/inline-wasm.js",
22
+ "build": "tsc",
23
+ "prepublishOnly": "pnpm build",
24
+ "test": "vitest run",
25
+ "type-check": "tsc --noEmit"
26
+ },
20
27
  "devDependencies": {
21
- "typescript": "^6.0.2",
22
- "@internal/ts": "0.0.0"
28
+ "@internal/ts": "workspace:*",
29
+ "typescript": "^6.0.2"
23
30
  },
24
31
  "keywords": [
25
32
  "terminal",
@@ -34,11 +41,5 @@
34
41
  "type": "git",
35
42
  "url": "https://github.com/vercel-labs/wterm",
36
43
  "directory": "packages/@wterm/core"
37
- },
38
- "scripts": {
39
- "prebuild": "node scripts/inline-wasm.js",
40
- "build": "tsc",
41
- "test": "vitest run",
42
- "type-check": "tsc --noEmit"
43
44
  }
44
- }
45
+ }
package/wasm/wterm.wasm CHANGED
Binary file
package/LICENSE DELETED
@@ -1,191 +0,0 @@
1
-
2
- Apache License
3
- Version 2.0, January 2004
4
- http://www.apache.org/licenses/
5
-
6
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
7
-
8
- 1. Definitions.
9
-
10
- "License" shall mean the terms and conditions for use, reproduction,
11
- and distribution as defined by Sections 1 through 9 of this document.
12
-
13
- "Licensor" shall mean the copyright owner or entity authorized by
14
- the copyright owner that is granting the License.
15
-
16
- "Legal Entity" shall mean the union of the acting entity and all
17
- other entities that control, are controlled by, or are under common
18
- control with that entity. For the purposes of this definition,
19
- "control" means (i) the power, direct or indirect, to cause the
20
- direction or management of such entity, whether by contract or
21
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
22
- outstanding shares, or (iii) beneficial ownership of such entity.
23
-
24
- "You" (or "Your") shall mean an individual or Legal Entity
25
- exercising permissions granted by this License.
26
-
27
- "Source" form shall mean the preferred form for making modifications,
28
- including but not limited to software source code, documentation
29
- source, and configuration files.
30
-
31
- "Object" form shall mean any form resulting from mechanical
32
- transformation or translation of a Source form, including but
33
- not limited to compiled object code, generated documentation,
34
- and conversions to other media types.
35
-
36
- "Work" shall mean the work of authorship, whether in Source or
37
- Object form, made available under the License, as indicated by a
38
- copyright notice that is included in or attached to the work
39
- (an example is provided in the Appendix below).
40
-
41
- "Derivative Works" shall mean any work, whether in Source or Object
42
- form, that is based on (or derived from) the Work and for which the
43
- editorial revisions, annotations, elaborations, or other modifications
44
- represent, as a whole, an original work of authorship. For the purposes
45
- of this License, Derivative Works shall not include works that remain
46
- separable from, or merely link (or bind by name) to the interfaces of,
47
- the Work and Derivative Works thereof.
48
-
49
- "Contribution" shall mean any work of authorship, including
50
- the original version of the Work and any modifications or additions
51
- to that Work or Derivative Works thereof, that is intentionally
52
- submitted to the Licensor for inclusion in the Work by the copyright owner
53
- or by an individual or Legal Entity authorized to submit on behalf of
54
- the copyright owner. For the purposes of this definition, "submitted"
55
- means any form of electronic, verbal, or written communication sent
56
- to the Licensor or its representatives, including but not limited to
57
- communication on electronic mailing lists, source code control systems,
58
- and issue tracking systems that are managed by, or on behalf of, the
59
- Licensor for the purpose of discussing and improving the Work, but
60
- excluding communication that is conspicuously marked or otherwise
61
- designated in writing by the copyright owner as "Not a Contribution."
62
-
63
- "Contributor" shall mean Licensor and any individual or Legal Entity
64
- on behalf of whom a Contribution has been received by the Licensor and
65
- subsequently incorporated within the Work.
66
-
67
- 2. Grant of Copyright License. Subject to the terms and conditions of
68
- this License, each Contributor hereby grants to You a perpetual,
69
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
70
- copyright license to reproduce, prepare Derivative Works of,
71
- publicly display, publicly perform, sublicense, and distribute the
72
- Work and such Derivative Works in Source or Object form.
73
-
74
- 3. Grant of Patent License. Subject to the terms and conditions of
75
- this License, each Contributor hereby grants to You a perpetual,
76
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
77
- (except as stated in this section) patent license to make, have made,
78
- use, offer to sell, sell, import, and otherwise transfer the Work,
79
- where such license applies only to those patent claims licensable
80
- by such Contributor that are necessarily infringed by their
81
- Contribution(s) alone or by combination of their Contribution(s)
82
- with the Work to which such Contribution(s) was submitted. If You
83
- institute patent litigation against any entity (including a
84
- cross-claim or counterclaim in a lawsuit) alleging that the Work
85
- or a Contribution incorporated within the Work constitutes direct
86
- or contributory patent infringement, then any patent licenses
87
- granted to You under this License for that Work shall terminate
88
- as of the date such litigation is filed.
89
-
90
- 4. Redistribution. You may reproduce and distribute copies of the
91
- Work or Derivative Works thereof in any medium, with or without
92
- modifications, and in Source or Object form, provided that You
93
- meet the following conditions:
94
-
95
- (a) You must give any other recipients of the Work or
96
- Derivative Works a copy of this License; and
97
-
98
- (b) You must cause any modified files to carry prominent notices
99
- stating that You changed the files; and
100
-
101
- (c) You must retain, in the Source form of any Derivative Works
102
- that You distribute, all copyright, patent, trademark, and
103
- attribution notices from the Source form of the Work,
104
- excluding those notices that do not pertain to any part of
105
- the Derivative Works; and
106
-
107
- (d) If the Work includes a "NOTICE" text file as part of its
108
- distribution, then any Derivative Works that You distribute must
109
- include a readable copy of the attribution notices contained
110
- within such NOTICE file, excluding any notices that do not
111
- pertain to any part of the Derivative Works, in at least one
112
- of the following places: within a NOTICE text file distributed
113
- as part of the Derivative Works; within the Source form or
114
- documentation, if provided along with the Derivative Works; or,
115
- within a display generated by the Derivative Works, if and
116
- wherever such third-party notices normally appear. The contents
117
- of the NOTICE file are for informational purposes only and
118
- do not modify the License. You may add Your own attribution
119
- notices within Derivative Works that You distribute, alongside
120
- or as an addendum to the NOTICE text from the Work, provided
121
- that such additional attribution notices cannot be construed
122
- as modifying the License.
123
-
124
- You may add Your own copyright statement to Your modifications and
125
- may provide additional or different license terms and conditions
126
- for use, reproduction, or distribution of Your modifications, or
127
- for any such Derivative Works as a whole, provided Your use,
128
- reproduction, and distribution of the Work otherwise complies with
129
- the conditions stated in this License.
130
-
131
- 5. Submission of Contributions. Unless You explicitly state otherwise,
132
- any Contribution intentionally submitted for inclusion in the Work
133
- by You to the Licensor shall be under the terms and conditions of
134
- this License, without any additional terms or conditions.
135
- Notwithstanding the above, nothing herein shall supersede or modify
136
- the terms of any separate license agreement you may have executed
137
- with Licensor regarding such Contributions.
138
-
139
- 6. Trademarks. This License does not grant permission to use the trade
140
- names, trademarks, service marks, or product names of the Licensor,
141
- except as required for reasonable and customary use in describing the
142
- origin of the Work and reproducing the content of the NOTICE file.
143
-
144
- 7. Disclaimer of Warranty. Unless required by applicable law or
145
- agreed to in writing, Licensor provides the Work (and each
146
- Contributor provides its Contributions) on an "AS IS" BASIS,
147
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
148
- implied, including, without limitation, any warranties or conditions
149
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
150
- PARTICULAR PURPOSE. You are solely responsible for determining the
151
- appropriateness of using or redistributing the Work and assume any
152
- risks associated with Your exercise of permissions under this License.
153
-
154
- 8. Limitation of Liability. In no event and under no legal theory,
155
- whether in tort (including negligence), contract, or otherwise,
156
- unless required by applicable law (such as deliberate and grossly
157
- negligent acts) or agreed to in writing, shall any Contributor be
158
- liable to You for damages, including any direct, indirect, special,
159
- incidental, or consequential damages of any character arising as a
160
- result of this License or out of the use or inability to use the
161
- Work (including but not limited to damages for loss of goodwill,
162
- work stoppage, computer failure or malfunction, or any and all
163
- other commercial damages or losses), even if such Contributor
164
- has been advised of the possibility of such damages.
165
-
166
- 9. Accepting Warranty or Additional Liability. While redistributing
167
- the Work or Derivative Works thereof, You may choose to offer,
168
- and charge a fee for, acceptance of support, warranty, indemnity,
169
- or other liability obligations and/or rights consistent with this
170
- License. However, in accepting such obligations, You may act only
171
- on Your own behalf and on Your sole responsibility, not on behalf
172
- of any other Contributor, and only if You agree to indemnify,
173
- defend, and hold each Contributor harmless for any liability
174
- incurred by, or claims asserted against, such Contributor by reason
175
- of your accepting any such warranty or additional liability.
176
-
177
- END OF TERMS AND CONDITIONS
178
-
179
- Copyright 2025 Vercel, Inc.
180
-
181
- Licensed under the Apache License, Version 2.0 (the "License");
182
- you may not use this file except in compliance with the License.
183
- You may obtain a copy of the License at
184
-
185
- http://www.apache.org/licenses/LICENSE-2.0
186
-
187
- Unless required by applicable law or agreed to in writing, software
188
- distributed under the License is distributed on an "AS IS" BASIS,
189
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
190
- See the License for the specific language governing permissions and
191
- limitations under the License.
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=wasm-bridge.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wasm-bridge.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/wasm-bridge.test.ts"],"names":[],"mappings":""}
@@ -1,176 +0,0 @@
1
- import { describe, it, expect, beforeEach } from "vitest";
2
- import { WasmBridge } from "../wasm-bridge.js";
3
- describe("WasmBridge", () => {
4
- let bridge;
5
- beforeEach(async () => {
6
- bridge = await WasmBridge.load();
7
- bridge.init(80, 24);
8
- });
9
- describe("load", () => {
10
- it("loads from inline base64", async () => {
11
- const b = await WasmBridge.load();
12
- expect(b).toBeInstanceOf(WasmBridge);
13
- });
14
- it("throws on invalid URL fetch", async () => {
15
- await expect(WasmBridge.load("http://localhost:99999/nonexistent.wasm")).rejects.toThrow();
16
- });
17
- });
18
- describe("init", () => {
19
- it("sets cols and rows", () => {
20
- expect(bridge.getCols()).toBe(80);
21
- expect(bridge.getRows()).toBe(24);
22
- });
23
- });
24
- describe("writeString / getCell", () => {
25
- it("writes a character to the grid", () => {
26
- bridge.writeString("A");
27
- const cell = bridge.getCell(0, 0);
28
- expect(cell.char).toBe(65); // 'A'
29
- });
30
- it("writes multiple characters sequentially", () => {
31
- bridge.writeString("Hi");
32
- expect(bridge.getCell(0, 0).char).toBe(72); // 'H'
33
- expect(bridge.getCell(0, 1).char).toBe(105); // 'i'
34
- });
35
- it("writes to correct position after cursor movement", () => {
36
- bridge.writeString("AB\r\nCD");
37
- expect(bridge.getCell(0, 0).char).toBe(65); // 'A'
38
- expect(bridge.getCell(0, 1).char).toBe(66); // 'B'
39
- expect(bridge.getCell(1, 0).char).toBe(67); // 'C'
40
- expect(bridge.getCell(1, 1).char).toBe(68); // 'D'
41
- });
42
- });
43
- describe("writeRaw", () => {
44
- it("writes raw bytes to the terminal", () => {
45
- const data = new TextEncoder().encode("X");
46
- bridge.writeRaw(data);
47
- expect(bridge.getCell(0, 0).char).toBe(88); // 'X'
48
- });
49
- });
50
- describe("cursor", () => {
51
- it("returns initial cursor at 0,0", () => {
52
- const cursor = bridge.getCursor();
53
- expect(cursor.row).toBe(0);
54
- expect(cursor.col).toBe(0);
55
- expect(cursor.visible).toBe(true);
56
- });
57
- it("advances cursor after writing", () => {
58
- bridge.writeString("Hello");
59
- const cursor = bridge.getCursor();
60
- expect(cursor.col).toBe(5);
61
- expect(cursor.row).toBe(0);
62
- });
63
- it("moves to next row after newline", () => {
64
- bridge.writeString("A\r\nB");
65
- const cursor = bridge.getCursor();
66
- expect(cursor.row).toBe(1);
67
- expect(cursor.col).toBe(1);
68
- });
69
- });
70
- describe("dirty rows", () => {
71
- it("marks rows dirty after writing", () => {
72
- bridge.writeString("text");
73
- expect(bridge.isDirtyRow(0)).toBe(true);
74
- });
75
- it("clears dirty flags", () => {
76
- bridge.writeString("text");
77
- bridge.clearDirty();
78
- expect(bridge.isDirtyRow(0)).toBe(false);
79
- });
80
- });
81
- describe("resize", () => {
82
- it("changes cols and rows", () => {
83
- bridge.resize(40, 12);
84
- expect(bridge.getCols()).toBe(40);
85
- expect(bridge.getRows()).toBe(12);
86
- });
87
- it("preserves content after resize", () => {
88
- bridge.writeString("A");
89
- bridge.resize(40, 12);
90
- expect(bridge.getCell(0, 0).char).toBe(65);
91
- });
92
- });
93
- describe("SGR attributes", () => {
94
- it("tracks foreground color", () => {
95
- bridge.writeString("\x1b[31mR");
96
- const cell = bridge.getCell(0, 0);
97
- expect(cell.char).toBe(82); // 'R'
98
- expect(cell.fg).not.toBe(256); // not default
99
- });
100
- it("tracks bold flag", () => {
101
- bridge.writeString("\x1b[1mB");
102
- const cell = bridge.getCell(0, 0);
103
- expect(cell.flags & 0x01).toBe(0x01);
104
- });
105
- });
106
- describe("mode flags", () => {
107
- it("defaults cursorKeysApp to false", () => {
108
- expect(bridge.cursorKeysApp()).toBe(false);
109
- });
110
- it("enables cursor keys application mode", () => {
111
- bridge.writeString("\x1b[?1h");
112
- expect(bridge.cursorKeysApp()).toBe(true);
113
- });
114
- it("defaults bracketedPaste to false", () => {
115
- expect(bridge.bracketedPaste()).toBe(false);
116
- });
117
- it("enables bracketed paste mode", () => {
118
- bridge.writeString("\x1b[?2004h");
119
- expect(bridge.bracketedPaste()).toBe(true);
120
- });
121
- it("defaults usingAltScreen to false", () => {
122
- expect(bridge.usingAltScreen()).toBe(false);
123
- });
124
- it("enters alt screen buffer", () => {
125
- bridge.writeString("\x1b[?1049h");
126
- expect(bridge.usingAltScreen()).toBe(true);
127
- });
128
- it("exits alt screen buffer", () => {
129
- bridge.writeString("\x1b[?1049h");
130
- bridge.writeString("\x1b[?1049l");
131
- expect(bridge.usingAltScreen()).toBe(false);
132
- });
133
- });
134
- describe("title", () => {
135
- it("returns null when no title set", () => {
136
- expect(bridge.getTitle()).toBeNull();
137
- });
138
- it("captures OSC title sequence", () => {
139
- bridge.writeString("\x1b]0;My Title\x07");
140
- const title = bridge.getTitle();
141
- expect(title).toBe("My Title");
142
- });
143
- });
144
- describe("scrollback", () => {
145
- it("starts with zero scrollback", () => {
146
- expect(bridge.getScrollbackCount()).toBe(0);
147
- });
148
- it("accumulates scrollback when content overflows", () => {
149
- for (let i = 0; i < 30; i++) {
150
- bridge.writeString(`line ${i}\r\n`);
151
- }
152
- expect(bridge.getScrollbackCount()).toBeGreaterThan(0);
153
- });
154
- it("reads scrollback cell data", () => {
155
- for (let i = 0; i < 30; i++) {
156
- bridge.writeString(`A\r\n`);
157
- }
158
- const count = bridge.getScrollbackCount();
159
- if (count > 0) {
160
- const cell = bridge.getScrollbackCell(0, 0);
161
- expect(cell.char).toBe(65); // 'A'
162
- }
163
- });
164
- it("returns scrollback line length", () => {
165
- for (let i = 0; i < 30; i++) {
166
- bridge.writeString(`AB\r\n`);
167
- }
168
- const count = bridge.getScrollbackCount();
169
- if (count > 0) {
170
- const len = bridge.getScrollbackLineLen(0);
171
- expect(len).toBeGreaterThan(0);
172
- }
173
- });
174
- });
175
- });
176
- //# sourceMappingURL=wasm-bridge.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wasm-bridge.test.js","sourceRoot":"","sources":["../../src/__tests__/wasm-bridge.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=websocket-transport.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"websocket-transport.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/websocket-transport.test.ts"],"names":[],"mappings":""}
@@ -1,264 +0,0 @@
1
- import { describe, it, expect, beforeEach, afterEach, vi } from "vitest";
2
- import { WebSocketTransport } from "../transport.js";
3
- class MockWebSocket {
4
- constructor(url) {
5
- this.readyState = MockWebSocket.CONNECTING;
6
- this.binaryType = "blob";
7
- this.onopen = null;
8
- this.onmessage = null;
9
- this.onclose = null;
10
- this.onerror = null;
11
- this.sent = [];
12
- this.closed = false;
13
- this.url = url;
14
- }
15
- send(data) {
16
- this.sent.push(data);
17
- }
18
- close() {
19
- this.closed = true;
20
- this.readyState = MockWebSocket.CLOSED;
21
- this.onclose?.();
22
- }
23
- simulateOpen() {
24
- this.readyState = MockWebSocket.OPEN;
25
- this.onopen?.(new Event("open"));
26
- }
27
- simulateMessage(data) {
28
- this.onmessage?.(new MessageEvent("message", { data }));
29
- }
30
- simulateError() {
31
- this.onerror?.(new Event("error"));
32
- }
33
- }
34
- MockWebSocket.CONNECTING = 0;
35
- MockWebSocket.OPEN = 1;
36
- MockWebSocket.CLOSING = 2;
37
- MockWebSocket.CLOSED = 3;
38
- let mockInstances = [];
39
- function installMockWebSocket() {
40
- mockInstances = [];
41
- vi.stubGlobal("WebSocket", Object.assign(class extends MockWebSocket {
42
- constructor(url) {
43
- super(url);
44
- mockInstances.push(this);
45
- }
46
- }, {
47
- CONNECTING: 0,
48
- OPEN: 1,
49
- CLOSING: 2,
50
- CLOSED: 3,
51
- }));
52
- }
53
- describe("WebSocketTransport", () => {
54
- beforeEach(() => {
55
- vi.useFakeTimers();
56
- installMockWebSocket();
57
- });
58
- afterEach(() => {
59
- vi.useRealTimers();
60
- vi.unstubAllGlobals();
61
- });
62
- describe("constructor", () => {
63
- it("sets defaults", () => {
64
- const t = new WebSocketTransport();
65
- expect(t.url).toBeNull();
66
- expect(t.reconnect).toBe(true);
67
- expect(t.maxReconnectDelay).toBe(30000);
68
- });
69
- it("accepts options", () => {
70
- const t = new WebSocketTransport({
71
- url: "ws://localhost:3000",
72
- reconnect: false,
73
- maxReconnectDelay: 5000,
74
- });
75
- expect(t.url).toBe("ws://localhost:3000");
76
- expect(t.reconnect).toBe(false);
77
- expect(t.maxReconnectDelay).toBe(5000);
78
- });
79
- });
80
- describe("connect", () => {
81
- it("creates a WebSocket connection", () => {
82
- const t = new WebSocketTransport({ url: "ws://test" });
83
- t.connect();
84
- expect(mockInstances).toHaveLength(1);
85
- expect(mockInstances[0].url).toBe("ws://test");
86
- });
87
- it("accepts URL parameter", () => {
88
- const t = new WebSocketTransport();
89
- t.connect("ws://override");
90
- expect(t.url).toBe("ws://override");
91
- expect(mockInstances[0].url).toBe("ws://override");
92
- });
93
- it("throws without URL", () => {
94
- const t = new WebSocketTransport();
95
- expect(() => t.connect()).toThrow("No WebSocket URL provided");
96
- });
97
- it("sets binaryType to arraybuffer", () => {
98
- const t = new WebSocketTransport({ url: "ws://test" });
99
- t.connect();
100
- expect(mockInstances[0].binaryType).toBe("arraybuffer");
101
- });
102
- });
103
- describe("callbacks", () => {
104
- it("calls onOpen when connection opens", () => {
105
- const onOpen = vi.fn();
106
- const t = new WebSocketTransport({ url: "ws://test", onOpen });
107
- t.connect();
108
- mockInstances[0].simulateOpen();
109
- expect(onOpen).toHaveBeenCalledOnce();
110
- });
111
- it("calls onData for string messages", () => {
112
- const onData = vi.fn();
113
- const t = new WebSocketTransport({ url: "ws://test", onData });
114
- t.connect();
115
- mockInstances[0].simulateOpen();
116
- mockInstances[0].simulateMessage("hello");
117
- expect(onData).toHaveBeenCalledWith("hello");
118
- });
119
- it("calls onData with Uint8Array for binary messages", () => {
120
- const onData = vi.fn();
121
- const t = new WebSocketTransport({ url: "ws://test", onData });
122
- t.connect();
123
- mockInstances[0].simulateOpen();
124
- const buf = new ArrayBuffer(3);
125
- mockInstances[0].simulateMessage(buf);
126
- expect(onData).toHaveBeenCalledWith(expect.any(Uint8Array));
127
- });
128
- it("calls onClose when connection closes", () => {
129
- const onClose = vi.fn();
130
- const t = new WebSocketTransport({
131
- url: "ws://test",
132
- onClose,
133
- reconnect: false,
134
- });
135
- t.connect();
136
- mockInstances[0].simulateOpen();
137
- mockInstances[0].close();
138
- expect(onClose).toHaveBeenCalledOnce();
139
- });
140
- it("calls onError on error", () => {
141
- const onError = vi.fn();
142
- const t = new WebSocketTransport({
143
- url: "ws://test",
144
- onError,
145
- reconnect: false,
146
- });
147
- t.connect();
148
- mockInstances[0].simulateError();
149
- expect(onError).toHaveBeenCalledOnce();
150
- });
151
- });
152
- describe("send", () => {
153
- it("sends data through open connection", () => {
154
- const t = new WebSocketTransport({ url: "ws://test" });
155
- t.connect();
156
- mockInstances[0].simulateOpen();
157
- t.send("test data");
158
- expect(mockInstances[0].sent).toHaveLength(1);
159
- });
160
- it("buffers data when not connected", () => {
161
- const t = new WebSocketTransport({ url: "ws://test" });
162
- t.connect();
163
- t.send("buffered");
164
- expect(mockInstances[0].sent).toHaveLength(0);
165
- });
166
- it("flushes buffer on open", () => {
167
- const t = new WebSocketTransport({ url: "ws://test" });
168
- t.connect();
169
- t.send("msg1");
170
- t.send("msg2");
171
- mockInstances[0].simulateOpen();
172
- expect(mockInstances[0].sent).toHaveLength(2);
173
- });
174
- });
175
- describe("close", () => {
176
- it("closes the connection", () => {
177
- const t = new WebSocketTransport({ url: "ws://test" });
178
- t.connect();
179
- t.close();
180
- expect(mockInstances[0].closed).toBe(true);
181
- });
182
- it("prevents reconnection", () => {
183
- const t = new WebSocketTransport({ url: "ws://test" });
184
- t.connect();
185
- t.close();
186
- vi.advanceTimersByTime(60000);
187
- expect(mockInstances).toHaveLength(1);
188
- });
189
- });
190
- describe("connected", () => {
191
- it("returns false before connect", () => {
192
- const t = new WebSocketTransport({ url: "ws://test" });
193
- expect(t.connected).toBe(false);
194
- });
195
- it("returns true when open", () => {
196
- const t = new WebSocketTransport({ url: "ws://test" });
197
- t.connect();
198
- mockInstances[0].simulateOpen();
199
- expect(t.connected).toBe(true);
200
- });
201
- it("returns false after close", () => {
202
- const t = new WebSocketTransport({ url: "ws://test" });
203
- t.connect();
204
- mockInstances[0].simulateOpen();
205
- t.close();
206
- expect(t.connected).toBe(false);
207
- });
208
- });
209
- describe("reconnect", () => {
210
- it("reconnects after unexpected close", () => {
211
- const t = new WebSocketTransport({ url: "ws://test" });
212
- t.connect();
213
- mockInstances[0].simulateOpen();
214
- mockInstances[0].close();
215
- vi.advanceTimersByTime(1000);
216
- expect(mockInstances).toHaveLength(2);
217
- });
218
- it("doubles delay on subsequent reconnects", () => {
219
- const t = new WebSocketTransport({ url: "ws://test" });
220
- t.connect();
221
- mockInstances[0].close();
222
- vi.advanceTimersByTime(1000);
223
- expect(mockInstances).toHaveLength(2);
224
- mockInstances[1].close();
225
- vi.advanceTimersByTime(1999);
226
- expect(mockInstances).toHaveLength(2);
227
- vi.advanceTimersByTime(1);
228
- expect(mockInstances).toHaveLength(3);
229
- });
230
- it("caps reconnect delay at maxReconnectDelay", () => {
231
- const t = new WebSocketTransport({
232
- url: "ws://test",
233
- maxReconnectDelay: 4000,
234
- });
235
- t.connect();
236
- for (let i = 0; i < 10; i++) {
237
- mockInstances[mockInstances.length - 1].close();
238
- vi.advanceTimersByTime(4000);
239
- }
240
- expect(mockInstances.length).toBeGreaterThan(5);
241
- });
242
- it("resets delay after successful open", () => {
243
- const t = new WebSocketTransport({ url: "ws://test" });
244
- t.connect();
245
- mockInstances[0].close();
246
- vi.advanceTimersByTime(1000);
247
- mockInstances[1].simulateOpen();
248
- mockInstances[1].close();
249
- vi.advanceTimersByTime(1000);
250
- expect(mockInstances).toHaveLength(3);
251
- });
252
- it("does not reconnect when reconnect is false", () => {
253
- const t = new WebSocketTransport({
254
- url: "ws://test",
255
- reconnect: false,
256
- });
257
- t.connect();
258
- mockInstances[0].close();
259
- vi.advanceTimersByTime(60000);
260
- expect(mockInstances).toHaveLength(1);
261
- });
262
- });
263
- });
264
- //# sourceMappingURL=websocket-transport.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"websocket-transport.test.js","sourceRoot":"","sources":["../../src/__tests__/websocket-transport.test.ts"],"names":[],"mappings":"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"}