@myrialabs/ptykit 0.0.1 → 0.0.2

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 (40) hide show
  1. package/README.md +9 -7
  2. package/dist/client/host-socket.d.ts +47 -0
  3. package/dist/client/host-socket.d.ts.map +1 -0
  4. package/dist/client/host-socket.js +98 -0
  5. package/dist/client/host-socket.js.map +1 -0
  6. package/dist/client/index.d.ts +2 -1
  7. package/dist/client/index.d.ts.map +1 -1
  8. package/dist/client/index.js +2 -1
  9. package/dist/client/index.js.map +1 -1
  10. package/dist/client/pty-kit-client.d.ts +9 -2
  11. package/dist/client/pty-kit-client.d.ts.map +1 -1
  12. package/dist/client/pty-kit-client.js +1 -1
  13. package/dist/client/pty-kit-client.js.map +1 -1
  14. package/dist/client/terminal.d.ts +25 -4
  15. package/dist/client/terminal.d.ts.map +1 -1
  16. package/dist/client/terminal.js +5 -1
  17. package/dist/client/terminal.js.map +1 -1
  18. package/dist/core/index.d.ts +1 -1
  19. package/dist/core/index.d.ts.map +1 -1
  20. package/dist/core/index.js +1 -1
  21. package/dist/core/index.js.map +1 -1
  22. package/dist/core/pty-kit.d.ts +4 -4
  23. package/dist/core/pty-kit.d.ts.map +1 -1
  24. package/dist/core/pty-kit.js +3 -3
  25. package/dist/core/pty-kit.js.map +1 -1
  26. package/dist/index.d.ts +7 -4
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +7 -4
  29. package/dist/index.js.map +1 -1
  30. package/dist/server/index.d.ts +1 -1
  31. package/dist/server/index.d.ts.map +1 -1
  32. package/dist/server/index.js.map +1 -1
  33. package/dist/server/pty-kit-server.d.ts +33 -6
  34. package/dist/server/pty-kit-server.d.ts.map +1 -1
  35. package/dist/server/pty-kit-server.js +33 -4
  36. package/dist/server/pty-kit-server.js.map +1 -1
  37. package/package.json +12 -1
  38. package/src/client/svelte/PtyTerminal.svelte +8 -2
  39. package/src/client/svelte/index.d.ts +10 -3
  40. package/src/client/svelte/index.js +1 -1
package/README.md CHANGED
@@ -21,7 +21,7 @@
21
21
  </p>
22
22
 
23
23
  <p align="center">
24
- <a href="https://www.npmjs.com/package/@myrialabs/ptykit"><img src="https://img.shields.io/npm/v/@myrialabs/ptykit" alt="npm version" /></a>
24
+ <a href="https://www.npmjs.com/package/@myrialabs/ptykit"><img src="https://img.shields.io/npm/v/@myrialabs%2Fptykit" alt="npm version" /></a>
25
25
  <a href="LICENSE"><img src="https://img.shields.io/badge/License-MIT-blue.svg" alt="License: MIT" /></a>
26
26
  <img src="https://img.shields.io/badge/runtime-Node%2018%2B%20%7C%20Bun-black" alt="Node 18+ and Bun" />
27
27
  </p>
@@ -36,9 +36,9 @@ Node); you bring the auth.
36
36
 
37
37
  ```ts
38
38
  // Server
39
- import { PtyKit, createPtyKitServer } from '@myrialabs/ptykit';
39
+ import { PtyKitManager, createPtyKitServer } from '@myrialabs/ptykit';
40
40
 
41
- const manager = new PtyKit();
41
+ const manager = new PtyKitManager();
42
42
  const server = createPtyKitServer(manager, {
43
43
  path: '/pty',
44
44
  authorize: (ctx) => ctx.conn.data.user?.canAccess(ctx.namespace) ?? false,
@@ -91,7 +91,9 @@ optional peer dependencies you already have in a frontend.
91
91
 
92
92
  | Import | What |
93
93
  | --- | --- |
94
- | `@myrialabs/ptykit` | Core session engine (`PtyKit`) + WebSocket server (`createPtyKitServer`). |
94
+ | `@myrialabs/ptykit` | Convenience barrel: core session engine (`PtyKitManager`) + WebSocket server (`createPtyKitServer`). |
95
+ | `@myrialabs/ptykit/core` | Core session engine only (`PtyKitManager`) — transport-agnostic, no server. |
96
+ | `@myrialabs/ptykit/server` | WebSocket transport server only (`PtyKitServer`, `createPtyKitServer`). |
95
97
  | `@myrialabs/ptykit/client` | Framework-agnostic browser client (`mountTerminal`, `PtyKitClient`, `attachFit`). |
96
98
  | `@myrialabs/ptykit/svelte` | Official Svelte component (`<PtyTerminal/>`). |
97
99
 
@@ -99,7 +101,7 @@ optional peer dependencies you already have in a frontend.
99
101
 
100
102
  | Task | API |
101
103
  | --- | --- |
102
- | Create the manager | `const m = new PtyKit({ scrollback: 5000 })` |
104
+ | Create the manager | `const m = new PtyKitManager({ scrollback: 5000 })` |
103
105
  | Mount on Bun | `Bun.serve({ fetch: server.fetch, websocket: server.websocket })` |
104
106
  | Mount on Node | `await server.attach(httpServer)` |
105
107
  | Terminal (vanilla) | `await mountTerminal(el, { url: '/pty', namespace, sessionId, create: true })` |
@@ -129,10 +131,10 @@ await server.attach(httpServer);
129
131
  httpServer.listen(3000);
130
132
  ```
131
133
 
132
- The `PtyKit` manager owns the sessions and is transport-agnostic:
134
+ The `PtyKitManager` owns the sessions and is transport-agnostic:
133
135
 
134
136
  ```ts
135
- const manager = new PtyKit({
137
+ const manager = new PtyKitManager({
136
138
  scrollback: 5000, // headless xterm lines
137
139
  idleTtl: null, // sessions live until killed; a number opts into idle reaping
138
140
  retainExitedMs: 5 * 60_000, // keep exited sessions this long for reconnect replay
@@ -0,0 +1,47 @@
1
+ /**
2
+ * `hostSocket` — ride PtyKit's client on a WebSocket you already own.
3
+ *
4
+ * PtyKit's transport is WebSocket-only, and normally `PtyKitClient` opens its own
5
+ * socket to `url`. When your app already runs a single multiplexed WebSocket (one
6
+ * connection carrying many features), you don't want a second PtyKit socket.
7
+ * `hostSocket` adapts your existing connection into the {@link WebSocketLike} that
8
+ * `WsCore` drives, so you keep PtyKit's reconnect/heal/idempotent-resend while the
9
+ * host owns the actual socket. The wire protocol is unchanged — still WebSocket,
10
+ * still `{ action, payload }` frames — only socket ownership moves to the host.
11
+ *
12
+ * Pass the result as `WebSocketImpl`:
13
+ *
14
+ * ```ts
15
+ * const client = new PtyKitClient({
16
+ * namespace: 'project-42',
17
+ * WebSocketImpl: hostSocket({
18
+ * send: (frame) => appWs.emit('pty:frame', frame),
19
+ * subscribe: (onFrame) => appWs.on('pty:frame', onFrame),
20
+ * isOpen: () => appWs.status === 'connected',
21
+ * onStatusChange: (cb) => appWs.onStatus((s) => cb(s === 'connected')),
22
+ * }),
23
+ * });
24
+ * ```
25
+ */
26
+ import type { WireFrame } from '../shared/index.js';
27
+ import type { WebSocketFactory } from './ws-core.js';
28
+ /** The host transport `hostSocket` bridges PtyKit onto. */
29
+ export interface HostSocketHandle {
30
+ /** Send one client→server frame over the host transport. */
31
+ send(frame: WireFrame): void;
32
+ /** Receive server→client frames. Returns an unsubscribe. */
33
+ subscribe(onFrame: (frame: WireFrame) => void): () => void;
34
+ /** Whether the host transport is currently connected. */
35
+ isOpen(): boolean;
36
+ /**
37
+ * Notify when the host transport connects (`true`) or disconnects (`false`).
38
+ * Drives PtyKit's reconnect + re-attach. Returns an unsubscribe.
39
+ */
40
+ onStatusChange(cb: (open: boolean) => void): () => void;
41
+ }
42
+ /**
43
+ * Build a {@link WebSocketFactory} (for `WebSocketImpl`) that tunnels PtyKit
44
+ * frames over an existing host connection instead of opening a new socket.
45
+ */
46
+ export declare function hostSocket(handle: HostSocketHandle): WebSocketFactory;
47
+ //# sourceMappingURL=host-socket.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host-socket.d.ts","sourceRoot":"","sources":["../../src/client/host-socket.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAiB,MAAM,cAAc,CAAC;AAEpE,2DAA2D;AAC3D,MAAM,WAAW,gBAAgB;IAChC,4DAA4D;IAC5D,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;IAC7B,4DAA4D;IAC5D,SAAS,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;IAC3D,yDAAyD;IACzD,MAAM,IAAI,OAAO,CAAC;IAClB;;;OAGG;IACH,cAAc,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;CACxD;AAKD;;;GAGG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CA+DrE"}
@@ -0,0 +1,98 @@
1
+ /**
2
+ * `hostSocket` — ride PtyKit's client on a WebSocket you already own.
3
+ *
4
+ * PtyKit's transport is WebSocket-only, and normally `PtyKitClient` opens its own
5
+ * socket to `url`. When your app already runs a single multiplexed WebSocket (one
6
+ * connection carrying many features), you don't want a second PtyKit socket.
7
+ * `hostSocket` adapts your existing connection into the {@link WebSocketLike} that
8
+ * `WsCore` drives, so you keep PtyKit's reconnect/heal/idempotent-resend while the
9
+ * host owns the actual socket. The wire protocol is unchanged — still WebSocket,
10
+ * still `{ action, payload }` frames — only socket ownership moves to the host.
11
+ *
12
+ * Pass the result as `WebSocketImpl`:
13
+ *
14
+ * ```ts
15
+ * const client = new PtyKitClient({
16
+ * namespace: 'project-42',
17
+ * WebSocketImpl: hostSocket({
18
+ * send: (frame) => appWs.emit('pty:frame', frame),
19
+ * subscribe: (onFrame) => appWs.on('pty:frame', onFrame),
20
+ * isOpen: () => appWs.status === 'connected',
21
+ * onStatusChange: (cb) => appWs.onStatus((s) => cb(s === 'connected')),
22
+ * }),
23
+ * });
24
+ * ```
25
+ */
26
+ const WS_OPEN = 1;
27
+ const WS_CLOSED = 3;
28
+ /**
29
+ * Build a {@link WebSocketFactory} (for `WebSocketImpl`) that tunnels PtyKit
30
+ * frames over an existing host connection instead of opening a new socket.
31
+ */
32
+ export function hostSocket(handle) {
33
+ return () => {
34
+ let dead = false;
35
+ let opened = false;
36
+ let unsubFrame = null;
37
+ let unsubStatus = null;
38
+ const socket = {
39
+ get readyState() {
40
+ return !dead && handle.isOpen() ? WS_OPEN : WS_CLOSED;
41
+ },
42
+ send(data) {
43
+ // WsCore already serialized the frame; hand the host a structured
44
+ // frame so it can route by action on its own wire without re-parsing.
45
+ try {
46
+ handle.send(JSON.parse(data));
47
+ }
48
+ catch {
49
+ /* drop malformed frame */
50
+ }
51
+ },
52
+ close() {
53
+ dead = true;
54
+ unsubFrame?.();
55
+ unsubStatus?.();
56
+ },
57
+ onopen: null,
58
+ onmessage: null,
59
+ onclose: null,
60
+ onerror: null,
61
+ };
62
+ const goDown = () => {
63
+ if (dead)
64
+ return;
65
+ dead = true;
66
+ unsubFrame?.();
67
+ unsubStatus?.();
68
+ socket.onclose?.();
69
+ };
70
+ const goUp = () => {
71
+ if (dead || opened)
72
+ return;
73
+ opened = true;
74
+ socket.onopen?.();
75
+ };
76
+ unsubFrame = handle.subscribe((frame) => {
77
+ if (!dead)
78
+ socket.onmessage?.({ data: JSON.stringify(frame) });
79
+ });
80
+ unsubStatus = handle.onStatusChange((open) => {
81
+ // Fire `onclose` only on a real drop of an established link; while merely
82
+ // waiting for the host to come up, stay pending so WsCore doesn't burn
83
+ // reconnect attempts — it re-attaches the moment the host reconnects.
84
+ if (open)
85
+ goUp();
86
+ else if (opened)
87
+ goDown();
88
+ });
89
+ // Announce the initial state on a microtask so WsCore can assign handlers
90
+ // first. If the host is already up, open immediately; otherwise wait.
91
+ queueMicrotask(() => {
92
+ if (!dead && handle.isOpen())
93
+ goUp();
94
+ });
95
+ return socket;
96
+ };
97
+ }
98
+ //# sourceMappingURL=host-socket.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host-socket.js","sourceRoot":"","sources":["../../src/client/host-socket.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAoBH,MAAM,OAAO,GAAG,CAAC,CAAC;AAClB,MAAM,SAAS,GAAG,CAAC,CAAC;AAEpB;;;GAGG;AACH,MAAM,UAAU,UAAU,CAAC,MAAwB;IAClD,OAAO,GAAG,EAAE;QACX,IAAI,IAAI,GAAG,KAAK,CAAC;QACjB,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,UAAU,GAAwB,IAAI,CAAC;QAC3C,IAAI,WAAW,GAAwB,IAAI,CAAC;QAE5C,MAAM,MAAM,GAAkB;YAC7B,IAAI,UAAU;gBACb,OAAO,CAAC,IAAI,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YACvD,CAAC;YACD,IAAI,CAAC,IAAY;gBAChB,kEAAkE;gBAClE,sEAAsE;gBACtE,IAAI,CAAC;oBACJ,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAc,CAAC,CAAC;gBAC5C,CAAC;gBAAC,MAAM,CAAC;oBACR,0BAA0B;gBAC3B,CAAC;YACF,CAAC;YACD,KAAK;gBACJ,IAAI,GAAG,IAAI,CAAC;gBACZ,UAAU,EAAE,EAAE,CAAC;gBACf,WAAW,EAAE,EAAE,CAAC;YACjB,CAAC;YACD,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,IAAI;SACb,CAAC;QAEF,MAAM,MAAM,GAAG,GAAG,EAAE;YACnB,IAAI,IAAI;gBAAE,OAAO;YACjB,IAAI,GAAG,IAAI,CAAC;YACZ,UAAU,EAAE,EAAE,CAAC;YACf,WAAW,EAAE,EAAE,CAAC;YAChB,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;QACpB,CAAC,CAAC;QACF,MAAM,IAAI,GAAG,GAAG,EAAE;YACjB,IAAI,IAAI,IAAI,MAAM;gBAAE,OAAO;YAC3B,MAAM,GAAG,IAAI,CAAC;YACd,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;QACnB,CAAC,CAAC;QAEF,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;YACvC,IAAI,CAAC,IAAI;gBAAE,MAAM,CAAC,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;QACH,WAAW,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,EAAE,EAAE;YAC5C,0EAA0E;YAC1E,uEAAuE;YACvE,sEAAsE;YACtE,IAAI,IAAI;gBAAE,IAAI,EAAE,CAAC;iBACZ,IAAI,MAAM;gBAAE,MAAM,EAAE,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,0EAA0E;QAC1E,sEAAsE;QACtE,cAAc,CAAC,GAAG,EAAE;YACnB,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,MAAM,EAAE;gBAAE,IAAI,EAAE,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IACf,CAAC,CAAC;AACH,CAAC"}
@@ -1,10 +1,11 @@
1
1
  /**
2
- * `ptykit/client` — framework-agnostic browser client.
2
+ * `@myrialabs/ptykit/client` — framework-agnostic browser client.
3
3
  */
4
4
  export { PtyKitClient, ClientSession, type PtyKitClientOptions, type OpenOptions, } from './pty-kit-client.js';
5
5
  export { attachFit, type AttachFitOptions } from './fit.js';
6
6
  export { mountTerminal, type MountTerminalOptions, type TerminalHandle, } from './terminal.js';
7
7
  export { defaultPersistence, type SessionPersistence } from './persistence.js';
8
+ export { hostSocket, type HostSocketHandle } from './host-socket.js';
8
9
  export { WsCore, type WsCoreOptions, type WSStatus, type ReconnectOptions, type WebSocketFactory, type WebSocketLike, } from './ws-core.js';
9
10
  export type { Seq, OutputEvent, ReadyEvent, ExitEvent, CreateSessionResponse, } from '../shared/index.js';
10
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACN,YAAY,EACZ,aAAa,EACb,KAAK,mBAAmB,EACxB,KAAK,WAAW,GAChB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5D,OAAO,EACN,aAAa,EACb,KAAK,oBAAoB,EACzB,KAAK,cAAc,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,kBAAkB,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EACN,MAAM,EACN,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,aAAa,GAClB,MAAM,cAAc,CAAC;AAGtB,YAAY,EACX,GAAG,EACH,WAAW,EACX,UAAU,EACV,SAAS,EACT,qBAAqB,GACrB,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACN,YAAY,EACZ,aAAa,EACb,KAAK,mBAAmB,EACxB,KAAK,WAAW,GAChB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5D,OAAO,EACN,aAAa,EACb,KAAK,oBAAoB,EACzB,KAAK,cAAc,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,kBAAkB,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAE,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EACN,MAAM,EACN,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,aAAa,GAClB,MAAM,cAAc,CAAC;AAGtB,YAAY,EACX,GAAG,EACH,WAAW,EACX,UAAU,EACV,SAAS,EACT,qBAAqB,GACrB,MAAM,oBAAoB,CAAC"}
@@ -1,9 +1,10 @@
1
1
  /**
2
- * `ptykit/client` — framework-agnostic browser client.
2
+ * `@myrialabs/ptykit/client` — framework-agnostic browser client.
3
3
  */
4
4
  export { PtyKitClient, ClientSession, } from './pty-kit-client.js';
5
5
  export { attachFit } from './fit.js';
6
6
  export { mountTerminal, } from './terminal.js';
7
7
  export { defaultPersistence } from './persistence.js';
8
+ export { hostSocket } from './host-socket.js';
8
9
  export { WsCore, } from './ws-core.js';
9
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACN,YAAY,EACZ,aAAa,GAGb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAyB,MAAM,UAAU,CAAC;AAC5D,OAAO,EACN,aAAa,GAGb,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,kBAAkB,EAA2B,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EACN,MAAM,GAMN,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACN,YAAY,EACZ,aAAa,GAGb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAyB,MAAM,UAAU,CAAC;AAC5D,OAAO,EACN,aAAa,GAGb,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,kBAAkB,EAA2B,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAyB,MAAM,kBAAkB,CAAC;AACrE,OAAO,EACN,MAAM,GAMN,MAAM,cAAc,CAAC"}
@@ -14,12 +14,19 @@ import { type Seq } from '../shared/index.js';
14
14
  import { type ReconnectOptions, type WSStatus, type WebSocketFactory } from './ws-core.js';
15
15
  import { type SessionPersistence } from './persistence.js';
16
16
  export interface PtyKitClientOptions {
17
- url: string;
17
+ /**
18
+ * WebSocket URL to open. Optional (and ignored) when a `WebSocketImpl` rides an
19
+ * existing host connection — e.g. `hostSocket(...)` for embedded transports.
20
+ */
21
+ url?: string;
18
22
  /** Default namespace for `create`/`attach` when not passed explicitly. */
19
23
  namespace?: string;
20
24
  reconnect?: ReconnectOptions;
21
25
  persistence?: SessionPersistence;
22
- /** Injectable WebSocket constructor (defaults to global `WebSocket`). */
26
+ /**
27
+ * Injectable WebSocket constructor (defaults to global `WebSocket`). Pass
28
+ * `hostSocket(...)` to tunnel over a socket your app already owns.
29
+ */
23
30
  WebSocketImpl?: WebSocketFactory;
24
31
  requestTimeoutMs?: number;
25
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pty-kit-client.d.ts","sourceRoot":"","sources":["../../src/client/pty-kit-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pty-kit-client.d.ts","sourceRoot":"","sources":["../../src/client/pty-kit-client.ts"],"names":[],"mappings":"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"}
@@ -138,7 +138,7 @@ export class PtyKitClient {
138
138
  this.persistence = options.persistence ?? defaultPersistence();
139
139
  this.defaultNamespace = options.namespace;
140
140
  this.core = new WsCore({
141
- url: options.url,
141
+ url: options.url ?? '',
142
142
  reconnect: options.reconnect,
143
143
  WebSocketImpl: options.WebSocketImpl,
144
144
  requestTimeoutMs: options.requestTimeoutMs,
@@ -1 +1 @@
1
- {"version":3,"file":"pty-kit-client.js","sourceRoot":"","sources":["../../src/client/pty-kit-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pty-kit-client.js","sourceRoot":"","sources":["../../src/client/pty-kit-client.ts"],"names":[],"mappings":"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"}
@@ -8,15 +8,19 @@
8
8
  * handle with the underlying `terminal`/`fitAddon`/`session` for advanced use.
9
9
  *
10
10
  * xterm and the FitAddon are imported dynamically (they are optional peer deps),
11
- * so non-browser/headless consumers of `ptykit/client` never pull them in, and
11
+ * so non-browser/headless consumers of `@myrialabs/ptykit/client` never pull them in, and
12
12
  * the call is SSR-safe — it only touches the DOM when actually invoked.
13
13
  */
14
14
  import { PtyKitClient, type ClientSession } from './pty-kit-client.js';
15
- import type { ReconnectOptions, WSStatus } from './ws-core.js';
15
+ import type { ReconnectOptions, WSStatus, WebSocketFactory } from './ws-core.js';
16
16
  import type { SessionPersistence } from './persistence.js';
17
17
  export interface MountTerminalOptions {
18
- /** WebSocket endpoint, e.g. `/pty` or `wss://host/pty`. */
19
- url: string;
18
+ /**
19
+ * WebSocket endpoint, e.g. `/pty` or `wss://host/pty`. Optional (and ignored)
20
+ * when `WebSocketImpl` rides a host socket (e.g. `hostSocket(...)`), or when a
21
+ * pre-built `client` is supplied.
22
+ */
23
+ url?: string;
20
24
  /** Session to attach to / create. Omit when creating to auto-generate one. */
21
25
  sessionId?: string;
22
26
  /** Room/namespace. Required (here or on a passed-in `client`). */
@@ -31,6 +35,11 @@ export interface MountTerminalOptions {
31
35
  persistence?: SessionPersistence;
32
36
  /** RPC timeout (ms). */
33
37
  requestTimeoutMs?: number;
38
+ /**
39
+ * Injectable WebSocket constructor for the internally-created client. Pass
40
+ * `hostSocket(...)` to tunnel over a socket your app already owns.
41
+ */
42
+ WebSocketImpl?: WebSocketFactory;
34
43
  cols?: number;
35
44
  rows?: number;
36
45
  cwd?: string;
@@ -45,9 +54,21 @@ export interface MountTerminalOptions {
45
54
  theme?: Record<string, unknown>;
46
55
  /** Extra/override xterm `Terminal` options. */
47
56
  terminalOptions?: Record<string, unknown>;
57
+ /**
58
+ * Extra xterm addons (e.g. clipboard, web-links, ligatures, unicode11) loaded
59
+ * after the FitAddon. Construct them yourself and pass the instances; use
60
+ * `onReady` for any post-load activation (e.g. `terminal.unicode.activeVersion`).
61
+ */
62
+ addons?: unknown[];
48
63
  /** Attach a FitAddon + ResizeObserver. Default `true`. */
49
64
  fit?: boolean;
50
65
  fitDebounceMs?: number;
66
+ /**
67
+ * Called after the terminal is opened and all addons are loaded, but before the
68
+ * session attaches — the place to activate addon features or install custom key
69
+ * handlers on the raw `terminal`.
70
+ */
71
+ onReady?: (terminal: any) => void;
51
72
  onData?: (chunk: string) => void;
52
73
  onExit?: (exitCode: number) => void;
53
74
  onError?: (error: unknown) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"terminal.d.ts","sourceRoot":"","sources":["../../src/client/terminal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,MAAM,WAAW,oBAAoB;IAEpC,2DAA2D;IAC3D,GAAG,EAAE,MAAM,CAAC;IACZ,8EAA8E;IAC9E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,4EAA4E;IAC5E,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,0DAA0D;IAC1D,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,sCAAsC;IACtC,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,wBAAwB;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAG1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,GAAG,WAAW,GAAG,KAAK,CAAC;IAC5C,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,+CAA+C;IAC/C,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAG1C,0DAA0D;IAC1D,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IAGvB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,KAAK,IAAI,CAAC;IACtC,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1C;AAED,MAAM,WAAW,cAAc;IAC9B,uDAAuD;IACvD,MAAM,EAAE,YAAY,CAAC;IACrB,oCAAoC;IACpC,OAAO,EAAE,aAAa,CAAC;IACvB,+EAA+E;IAC/E,QAAQ,EAAE,GAAG,CAAC;IACd,qEAAqE;IACrE,QAAQ,EAAE,GAAG,CAAC;IACd;qEACiE;IACjE,OAAO,IAAI,IAAI,CAAC;CAChB;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CAClC,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,oBAAoB,GAC3B,OAAO,CAAC,cAAc,CAAC,CAyFzB"}
1
+ {"version":3,"file":"terminal.d.ts","sourceRoot":"","sources":["../../src/client/terminal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACjF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,MAAM,WAAW,oBAAoB;IAEpC;;;;OAIG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,8EAA8E;IAC9E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,4EAA4E;IAC5E,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,0DAA0D;IAC1D,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,sCAAsC;IACtC,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,wBAAwB;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,aAAa,CAAC,EAAE,gBAAgB,CAAC;IAGjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,GAAG,WAAW,GAAG,KAAK,CAAC;IAC5C,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,+CAA+C;IAC/C,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC;IAGnB,0DAA0D;IAC1D,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,KAAK,IAAI,CAAC;IAGlC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,KAAK,IAAI,CAAC;IACtC,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1C;AAED,MAAM,WAAW,cAAc;IAC9B,uDAAuD;IACvD,MAAM,EAAE,YAAY,CAAC;IACrB,oCAAoC;IACpC,OAAO,EAAE,aAAa,CAAC;IACvB,+EAA+E;IAC/E,QAAQ,EAAE,GAAG,CAAC;IACd,qEAAqE;IACrE,QAAQ,EAAE,GAAG,CAAC;IACd;qEACiE;IACjE,OAAO,IAAI,IAAI,CAAC;CAChB;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CAClC,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,oBAAoB,GAC3B,OAAO,CAAC,cAAc,CAAC,CA4FzB"}
@@ -8,7 +8,7 @@
8
8
  * handle with the underlying `terminal`/`fitAddon`/`session` for advanced use.
9
9
  *
10
10
  * xterm and the FitAddon are imported dynamically (they are optional peer deps),
11
- * so non-browser/headless consumers of `ptykit/client` never pull them in, and
11
+ * so non-browser/headless consumers of `@myrialabs/ptykit/client` never pull them in, and
12
12
  * the call is SSR-safe — it only touches the DOM when actually invoked.
13
13
  */
14
14
  import { PtyKitClient } from './pty-kit-client.js';
@@ -39,7 +39,10 @@ export async function mountTerminal(target, options) {
39
39
  const fitAddon = options.fit === false ? undefined : new FitAddon();
40
40
  if (fitAddon)
41
41
  terminal.loadAddon(fitAddon);
42
+ for (const addon of options.addons ?? [])
43
+ terminal.loadAddon(addon);
42
44
  terminal.open(target);
45
+ options.onReady?.(terminal);
43
46
  const ownClient = !options.client;
44
47
  const client = options.client ??
45
48
  new PtyKitClient({
@@ -48,6 +51,7 @@ export async function mountTerminal(target, options) {
48
51
  reconnect: options.reconnect,
49
52
  persistence: options.persistence,
50
53
  requestTimeoutMs: options.requestTimeoutMs,
54
+ WebSocketImpl: options.WebSocketImpl,
51
55
  });
52
56
  const unsubs = [];
53
57
  if (options.onStatus)
@@ -1 +1 @@
1
- {"version":3,"file":"terminal.js","sourceRoot":"","sources":["../../src/client/terminal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal.js","sourceRoot":"","sources":["../../src/client/terminal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,YAAY,EAAsB,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAyFrC;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAClC,MAAmB,EACnB,OAA6B;IAE7B,yEAAyE;IACzE,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC;QACvD,MAAM,CAAC,cAAc,CAAC;QACtB,MAAM,CAAC,kBAAkB,CAAC;KAC1B,CAAC,CAAe,CAAC;IAElB,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC;QAC7B,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,IAAI;QACtC,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE;QAChC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,gDAAgD;QAClF,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,GAAG;QACrC,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,IAAI;QACxC,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,OAAO;QAC3C,gBAAgB,EAAE,IAAI;QACtB,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClD,GAAG,CAAC,OAAO,CAAC,eAAe,IAAI,EAAE,CAAC;KAClC,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC;IACpE,IAAI,QAAQ;QAAE,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC3C,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,IAAI,EAAE;QAAE,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACpE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACtB,OAAO,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAC;IAE5B,MAAM,SAAS,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC;IAClC,MAAM,MAAM,GACX,OAAO,CAAC,MAAM;QACd,IAAI,YAAY,CAAC;YAChB,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,aAAa,EAAE,OAAO,CAAC,aAAa;SACpC,CAAC,CAAC;IAEJ,MAAM,MAAM,GAAsB,EAAE,CAAC;IACrC,IAAI,OAAO,CAAC,QAAQ;QAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IAErE,MAAM,IAAI,GAAG;QACZ,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI;QACnC,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI;QACnC,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,KAAK,EAAE,OAAO,CAAC,KAAK;KACpB,CAAC;IAEF,IAAI,OAAsB,CAAC;IAC3B,IAAI,CAAC;QACJ,OAAO,GAAG,OAAO,CAAC,MAAM;YACvB,CAAC,CAAC,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YAC3B,CAAC,CAAC,MAAM,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,KAAK,MAAM,CAAC,IAAI,MAAM;YAAE,CAAC,EAAE,CAAC;QAC5B,QAAQ,CAAC,OAAO,EAAE,CAAC;QACnB,IAAI,SAAS;YAAE,MAAM,CAAC,UAAU,EAAE,CAAC;QACnC,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;QACvB,MAAM,GAAG,CAAC;IACX,CAAC;IAED,MAAM,CAAC,IAAI,CACV,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;QACxB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACtB,OAAO,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC,CAAC,CACF,CAAC;IACF,IAAI,OAAO,CAAC,MAAM;QAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAChE,IAAI,OAAO,CAAC,OAAO;QAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IACnE,IAAI,OAAO,CAAC,WAAW;QAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IAE/E,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,QAAQ;QACzB,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,aAAa,IAAI,GAAG,EAAE,CAAC;QACtF,CAAC,CAAC,SAAS,CAAC;IAEb,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,OAAO;QACN,MAAM;QACN,OAAO;QACP,QAAQ;QACR,QAAQ;QACR,OAAO;YACN,IAAI,QAAQ;gBAAE,OAAO;YACrB,QAAQ,GAAG,IAAI,CAAC;YAChB,SAAS,EAAE,EAAE,CAAC;YACd,KAAK,MAAM,CAAC,IAAI,MAAM;gBAAE,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,MAAM,EAAE,CAAC;YACjB,QAAQ,CAAC,OAAO,EAAE,CAAC;YACnB,IAAI,SAAS;gBAAE,MAAM,CAAC,UAAU,EAAE,CAAC;QACpC,CAAC;KACD,CAAC;AACH,CAAC"}
@@ -7,5 +7,5 @@ export { buildPtyEnv, getCleanSpawnEnv, type EnvOptions } from './env.js';
7
7
  export { checkShell, isWindows, resolveCwd, resolveShell, type ShellInvocation } from './shell.js';
8
8
  export { MemoryBufferStore, type BufferStore } from './scrollback.js';
9
9
  export { Session, type SessionConfig, type SessionInfo, type SessionDataListener, type SessionExitListener, } from './session.js';
10
- export { PtyKit, type PtyKitOptions, type CreateSessionOptions, } from './pty-kit.js';
10
+ export { PtyKitManager, type PtyKitManagerOptions, type CreateSessionOptions, } from './pty-kit.js';
11
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,YAAY,EACX,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,aAAa,GACb,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACvF,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,KAAK,UAAU,EAAE,MAAM,UAAU,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AACnG,OAAO,EAAE,iBAAiB,EAAE,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EACN,OAAO,EACP,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,GACxB,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,MAAM,EACN,KAAK,aAAa,EAClB,KAAK,oBAAoB,GACzB,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,YAAY,EACX,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,aAAa,GACb,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACvF,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,KAAK,UAAU,EAAE,MAAM,UAAU,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AACnG,OAAO,EAAE,iBAAiB,EAAE,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EACN,OAAO,EACP,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,GACxB,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,aAAa,EACb,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,GACzB,MAAM,cAAc,CAAC"}
@@ -6,5 +6,5 @@ export { buildPtyEnv, getCleanSpawnEnv } from './env.js';
6
6
  export { checkShell, isWindows, resolveCwd, resolveShell } from './shell.js';
7
7
  export { MemoryBufferStore } from './scrollback.js';
8
8
  export { Session, } from './session.js';
9
- export { PtyKit, } from './pty-kit.js';
9
+ export { PtyKitManager, } from './pty-kit.js';
10
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAUH,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACvF,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAmB,MAAM,UAAU,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAwB,MAAM,YAAY,CAAC;AACnG,OAAO,EAAE,iBAAiB,EAAoB,MAAM,iBAAiB,CAAC;AACtE,OAAO,EACN,OAAO,GAKP,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,MAAM,GAGN,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAUH,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACvF,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAmB,MAAM,UAAU,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAwB,MAAM,YAAY,CAAC;AACnG,OAAO,EAAE,iBAAiB,EAAoB,MAAM,iBAAiB,CAAC;AACtE,OAAO,EACN,OAAO,GAKP,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,aAAa,GAGb,MAAM,cAAc,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `PtyKit` — the session manager.
2
+ * `PtyKitManager` — the session manager.
3
3
  *
4
4
  * Owns `Map<sessionId, Session>`, the auto-detected backend, the scrollback
5
5
  * store, and session lifecycle: idempotent create (R3), no idle TTL by default
@@ -11,7 +11,7 @@ import type { EnvOptions } from './env.js';
11
11
  import { type BufferStore } from './scrollback.js';
12
12
  import { Session } from './session.js';
13
13
  import { type Logger } from '../shared/index.js';
14
- export interface PtyKitOptions {
14
+ export interface PtyKitManagerOptions {
15
15
  /** Environment hygiene (R2). */
16
16
  env?: EnvOptions;
17
17
  /** Headless scrollback lines (R6). Default 5000. */
@@ -45,7 +45,7 @@ export interface CreateSessionOptions {
45
45
  cols?: number;
46
46
  rows?: number;
47
47
  }
48
- export declare class PtyKit {
48
+ export declare class PtyKitManager {
49
49
  private readonly sessions;
50
50
  private readonly buffers;
51
51
  private readonly options;
@@ -56,7 +56,7 @@ export declare class PtyKit {
56
56
  private readonly removalTimers;
57
57
  private idleSweeper;
58
58
  private disposed;
59
- constructor(options?: PtyKitOptions);
59
+ constructor(options?: PtyKitManagerOptions);
60
60
  /** The active backend, once resolved. `null` until the first `createSession`. */
61
61
  get activeBackend(): PtyBackend | null;
62
62
  private resolveBackend;
@@ -1 +1 @@
1
- {"version":3,"file":"pty-kit.d.ts","sourceRoot":"","sources":["../../src/core/pty-kit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pty-kit.d.ts","sourceRoot":"","sources":["../../src/core/pty-kit.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `PtyKit` — the session manager.
2
+ * `PtyKitManager` — the session manager.
3
3
  *
4
4
  * Owns `Map<sessionId, Session>`, the auto-detected backend, the scrollback
5
5
  * store, and session lifecycle: idempotent create (R3), no idle TTL by default
@@ -12,7 +12,7 @@ import { Session } from './session.js';
12
12
  import { resolveCwd } from './shell.js';
13
13
  import { silentLogger } from '../shared/index.js';
14
14
  const DEFAULT_RETAIN_EXITED_MS = 5 * 60_000;
15
- export class PtyKit {
15
+ export class PtyKitManager {
16
16
  sessions = new Map();
17
17
  buffers;
18
18
  options;
@@ -54,7 +54,7 @@ export class PtyKit {
54
54
  */
55
55
  async createSession(opts) {
56
56
  if (this.disposed)
57
- throw new Error('PtyKit has been disposed');
57
+ throw new Error('PtyKitManager has been disposed');
58
58
  const existing = this.sessions.get(opts.sessionId);
59
59
  if (existing) {
60
60
  if (existing.namespace !== opts.namespace) {
@@ -1 +1 @@
1
- {"version":3,"file":"pty-kit.js","sourceRoot":"","sources":["../../src/core/pty-kit.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAoB,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAe,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAmC/D,MAAM,wBAAwB,GAAG,CAAC,GAAG,MAAM,CAAC;AAE5C,MAAM,OAAO,MAAM;IACD,QAAQ,GAAG,IAAI,GAAG,EAAmB,CAAC;IACtC,OAAO,CAAc;IACrB,OAAO,CAAgB;IACvB,MAAM,CAAS;IACf,cAAc,CAAgB;IAC9B,OAAO,CAAgB;IAEhC,OAAO,CAAoB;IAClB,aAAa,GAAG,IAAI,GAAG,EAAyC,CAAC;IAC1E,WAAW,GAA0C,IAAI,CAAC;IAC1D,QAAQ,GAAG,KAAK,CAAC;IAEzB,YAAY,UAAyB,EAAE;QACtC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,YAAY,CAAC;QAC7C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC;QACvC,IAAI,CAAC,cAAc;YAClB,OAAO,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;QAC1F,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC;QACvC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,KAAK,IAAI,IAAI,iBAAiB,CAAC,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC;QAE1F,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;YAC/C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;YACvF,uDAAuD;YACtD,IAAI,CAAC,WAAmB,EAAE,KAAK,EAAE,EAAE,CAAC;QACtC,CAAC;IACF,CAAC;IAED,iFAAiF;IACjF,IAAI,aAAa;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,cAAc;QAC3B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACnB,IAAI,CAAC,OAAO,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,aAAa,CAAC,IAA0B;QAC7C,IAAI,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAE/D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnD,IAAI,QAAQ,EAAE,CAAC;YACd,IAAI,QAAQ,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC3C,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;YAClC,CAAC;YACD,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAClC,QAAQ,CAAC,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC;gBACrC,OAAO,QAAQ,CAAC;YACjB,CAAC;YACD,8DAA8D;YAC9D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7B,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5C,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,GAAG,IAAI,CAAC,SAAS,SAAS,CAAC;QAE7D,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC;YAC3B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,QAAQ;YACR,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,GAAG;YACH,IAAI;YACJ,IAAI;YACJ,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG;YACrB,OAAO;YACP,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc;YAC3C,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;YACrC,MAAM,EAAE,IAAI,CAAC,MAAM;SACnB,CAAC,CAAC;QAEH,sEAAsE;QACtE,OAAO,CAAC,eAAe,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QAEpE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC3C,OAAO,OAAO,CAAC;IAChB,CAAC;IAED,UAAU,CAAC,SAAiB;QAC3B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC;IAED,mCAAmC;IACnC,IAAI,CAAC,SAAiB;QACrB,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;IAC7E,CAAC;IAED,KAAK,CAAC,SAAiB,EAAE,IAAY;QACpC,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC;IAC3D,CAAC;IAED,MAAM,CAAC,SAAiB,EAAE,IAAY,EAAE,IAAY;QACnD,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC;IAClE,CAAC;IAED,MAAM,CAAC,SAAiB;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAC;QAC3B,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,KAAK,CAAC,SAAiB;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAC;QAC3B,OAAO,CAAC,WAAW,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,wEAAwE;IACxE,kBAAkB,CAAC,SAAiB;QACnC,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IACxD,CAAC;IAED;;;OAGG;IACH,WAAW,CAAC,SAAiB,EAAE,MAAe;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAC;QAC3B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACvB,OAAO,IAAI,CAAC;IACb,CAAC;IAEO,eAAe,CAAC,SAAiB;QACxC,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI;YAAE,OAAO,CAAC,qCAAqC;QAC/E,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,OAAO;QAC9C,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC7B,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACrC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACxB,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QACvB,KAAa,EAAE,KAAK,EAAE,EAAE,CAAC;QAC1B,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAEO,SAAS;QAChB,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI;YAAE,OAAO;QAClC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QACzC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAC9C,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,GAAG,MAAM,EAAE,CAAC;gBAC9E,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAChD,CAAC;QACF,CAAC;IACF,CAAC;IAED,iFAAiF;IACzE,MAAM,CAAC,SAAiB;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,OAAO,CAAC,OAAO,EAAE,CAAC;QAClB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAChD,IAAI,KAAK,EAAE,CAAC;YACX,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACtC,CAAC;IACF,CAAC;IAED,qCAAqC;IACrC,OAAO;QACN,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAChC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACzB,CAAC;QACD,KAAK,MAAM,SAAS,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAC9C,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACxB,CAAC;IACF,CAAC;CACD"}
1
+ {"version":3,"file":"pty-kit.js","sourceRoot":"","sources":["../../src/core/pty-kit.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAoB,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAe,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAmC/D,MAAM,wBAAwB,GAAG,CAAC,GAAG,MAAM,CAAC;AAE5C,MAAM,OAAO,aAAa;IACR,QAAQ,GAAG,IAAI,GAAG,EAAmB,CAAC;IACtC,OAAO,CAAc;IACrB,OAAO,CAAuB;IAC9B,MAAM,CAAS;IACf,cAAc,CAAgB;IAC9B,OAAO,CAAgB;IAEhC,OAAO,CAAoB;IAClB,aAAa,GAAG,IAAI,GAAG,EAAyC,CAAC;IAC1E,WAAW,GAA0C,IAAI,CAAC;IAC1D,QAAQ,GAAG,KAAK,CAAC;IAEzB,YAAY,UAAgC,EAAE;QAC7C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,YAAY,CAAC;QAC7C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC;QACvC,IAAI,CAAC,cAAc;YAClB,OAAO,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;QAC1F,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC;QACvC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,KAAK,IAAI,IAAI,iBAAiB,CAAC,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC;QAE1F,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;YAC/C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;YACvF,uDAAuD;YACtD,IAAI,CAAC,WAAmB,EAAE,KAAK,EAAE,EAAE,CAAC;QACtC,CAAC;IACF,CAAC;IAED,iFAAiF;IACjF,IAAI,aAAa;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,cAAc;QAC3B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACnB,IAAI,CAAC,OAAO,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,aAAa,CAAC,IAA0B;QAC7C,IAAI,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QAEtE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnD,IAAI,QAAQ,EAAE,CAAC;YACd,IAAI,QAAQ,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC3C,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;YAClC,CAAC;YACD,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAClC,QAAQ,CAAC,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC;gBACrC,OAAO,QAAQ,CAAC;YACjB,CAAC;YACD,8DAA8D;YAC9D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7B,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5C,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,GAAG,IAAI,CAAC,SAAS,SAAS,CAAC;QAE7D,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC;YAC3B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,QAAQ;YACR,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,GAAG;YACH,IAAI;YACJ,IAAI;YACJ,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG;YACrB,OAAO;YACP,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc;YAC3C,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;YACrC,MAAM,EAAE,IAAI,CAAC,MAAM;SACnB,CAAC,CAAC;QAEH,sEAAsE;QACtE,OAAO,CAAC,eAAe,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QAEpE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC3C,OAAO,OAAO,CAAC;IAChB,CAAC;IAED,UAAU,CAAC,SAAiB;QAC3B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC;IAED,mCAAmC;IACnC,IAAI,CAAC,SAAiB;QACrB,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;IAC7E,CAAC;IAED,KAAK,CAAC,SAAiB,EAAE,IAAY;QACpC,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC;IAC3D,CAAC;IAED,MAAM,CAAC,SAAiB,EAAE,IAAY,EAAE,IAAY;QACnD,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC;IAClE,CAAC;IAED,MAAM,CAAC,SAAiB;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAC;QAC3B,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,KAAK,CAAC,SAAiB;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAC;QAC3B,OAAO,CAAC,WAAW,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,wEAAwE;IACxE,kBAAkB,CAAC,SAAiB;QACnC,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IACxD,CAAC;IAED;;;OAGG;IACH,WAAW,CAAC,SAAiB,EAAE,MAAe;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAC;QAC3B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACvB,OAAO,IAAI,CAAC;IACb,CAAC;IAEO,eAAe,CAAC,SAAiB;QACxC,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI;YAAE,OAAO,CAAC,qCAAqC;QAC/E,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,OAAO;QAC9C,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC7B,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACrC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACxB,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QACvB,KAAa,EAAE,KAAK,EAAE,EAAE,CAAC;QAC1B,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAEO,SAAS;QAChB,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI;YAAE,OAAO;QAClC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QACzC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAC9C,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,GAAG,MAAM,EAAE,CAAC;gBAC9E,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAChD,CAAC;QACF,CAAC;IACF,CAAC;IAED,iFAAiF;IACzE,MAAM,CAAC,SAAiB;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,OAAO,CAAC,OAAO,EAAE,CAAC;QAClB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAChD,IAAI,KAAK,EAAE,CAAC;YACX,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACtC,CAAC;IACF,CAAC;IAED,qCAAqC;IACrC,OAAO;QACN,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAChC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACzB,CAAC;QACD,KAAK,MAAM,SAAS,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAC9C,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACxB,CAAC;IACF,CAAC;CACD"}
package/dist/index.d.ts CHANGED
@@ -1,9 +1,12 @@
1
1
  /**
2
- * ptykit — production-grade PTY sessions over WebSocket for Node & Bun.
2
+ * @myrialabs/ptykit — production-grade PTY sessions over WebSocket for Node & Bun.
3
3
  *
4
- * This is the main entry (`ptykit`): the core session engine plus the
5
- * WebSocket transport server. The browser client lives at `ptykit/client`
6
- * and the Svelte adapter at `ptykit/svelte`.
4
+ * This is the main entry (`@myrialabs/ptykit`): a convenience barrel re-exporting
5
+ * the core session engine (`PtyKitManager`) plus the WebSocket transport server
6
+ * (`PtyKitServer`). For narrower imports the same symbols are available at
7
+ * `@myrialabs/ptykit/core` and `@myrialabs/ptykit/server`. The browser client
8
+ * lives at `@myrialabs/ptykit/client` and the Svelte adapter at
9
+ * `@myrialabs/ptykit/svelte`.
7
10
  */
8
11
  export * from './shared/index.js';
9
12
  export * from './core/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC"}
package/dist/index.js CHANGED
@@ -1,9 +1,12 @@
1
1
  /**
2
- * ptykit — production-grade PTY sessions over WebSocket for Node & Bun.
2
+ * @myrialabs/ptykit — production-grade PTY sessions over WebSocket for Node & Bun.
3
3
  *
4
- * This is the main entry (`ptykit`): the core session engine plus the
5
- * WebSocket transport server. The browser client lives at `ptykit/client`
6
- * and the Svelte adapter at `ptykit/svelte`.
4
+ * This is the main entry (`@myrialabs/ptykit`): a convenience barrel re-exporting
5
+ * the core session engine (`PtyKitManager`) plus the WebSocket transport server
6
+ * (`PtyKitServer`). For narrower imports the same symbols are available at
7
+ * `@myrialabs/ptykit/core` and `@myrialabs/ptykit/server`. The browser client
8
+ * lives at `@myrialabs/ptykit/client` and the Svelte adapter at
9
+ * `@myrialabs/ptykit/svelte`.
7
10
  */
8
11
  export * from './shared/index.js';
9
12
  export * from './core/index.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * WebSocket transport server — barrel.
3
3
  */
4
- export { PtyKitServer, createPtyKitServer, type PtyKitServerOptions, type AuthorizeContext, type AuthorizeHook, type AuthorizeOperation, type RoomContext, type RoomResolver, type UpgradeHook, } from './pty-kit-server.js';
4
+ export { PtyKitServer, createPtyKitServer, type PtyKitServerOptions, type EmbeddedConnectionOptions, type AuthorizeContext, type AuthorizeHook, type AuthorizeOperation, type RoomContext, type RoomResolver, type UpgradeHook, } from './pty-kit-server.js';
5
5
  export { RoomRegistry, type PtyKitConnection } from './connection.js';
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACN,YAAY,EACZ,kBAAkB,EAClB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,WAAW,GAChB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACN,YAAY,EACZ,kBAAkB,EAClB,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAC9B,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,WAAW,GAChB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACN,YAAY,EACZ,kBAAkB,GAQlB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAyB,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACN,YAAY,EACZ,kBAAkB,GASlB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAyB,MAAM,iBAAiB,CAAC"}
@@ -6,9 +6,18 @@
6
6
  * filtered client-side by `sessionId`. Access is enforced by the `authorize`
7
7
  * hook with anti-hijack ownership checks (R10).
8
8
  */
9
- import type { PtyKit } from '../core/pty-kit.js';
10
- import { type Logger } from '../shared/index.js';
9
+ import type { PtyKitManager } from '../core/pty-kit.js';
10
+ import { type Logger, type WireFrame } from '../shared/index.js';
11
11
  import { type PtyKitConnection } from './connection.js';
12
+ /** Options for {@link PtyKitServer.createConnection} (embedded transports). */
13
+ export interface EmbeddedConnectionOptions {
14
+ /** Identity/context the `authorize` hook inspects (e.g. `{ user }`). */
15
+ data?: Record<string, unknown>;
16
+ /** Deliver one wire frame to this client. */
17
+ send: (frame: WireFrame) => void;
18
+ /** Tear down the underlying transport for this client. Optional. */
19
+ close?: () => void;
20
+ }
12
21
  /** The operation an `authorize` check guards. */
13
22
  export type AuthorizeOperation = 'create' | 'attach' | 'write' | 'resize' | 'kill';
14
23
  export interface AuthorizeContext {
@@ -44,7 +53,7 @@ export interface PtyKitServerOptions {
44
53
  logger?: Logger;
45
54
  }
46
55
  export declare class PtyKitServer {
47
- readonly manager: PtyKit;
56
+ readonly manager: PtyKitManager;
48
57
  readonly path: string;
49
58
  private readonly rooms;
50
59
  private readonly options;
@@ -52,7 +61,25 @@ export declare class PtyKitServer {
52
61
  private readonly resolveRoom;
53
62
  private bunTransport?;
54
63
  private nodeTransport?;
55
- constructor(manager: PtyKit, options?: PtyKitServerOptions);
64
+ constructor(manager: PtyKitManager, options?: PtyKitServerOptions);
65
+ /**
66
+ * Mint a transport-agnostic {@link PtyKitConnection} for embedding PtyKit on a
67
+ * socket you already own (e.g. an app-wide multiplexed WebSocket) instead of
68
+ * letting the Bun/Node transports own it. PtyKit assigns a stable id; you
69
+ * supply how to `send` a frame (and optionally `close`). Drive the connection
70
+ * with {@link handleOpen}, {@link handleFrame} / {@link handleMessage}, and
71
+ * {@link handleClose}.
72
+ *
73
+ * The wire protocol is unchanged — still WebSocket, still `{ action, payload }`
74
+ * frames — only socket ownership moves to the host.
75
+ */
76
+ createConnection(opts: EmbeddedConnectionOptions): PtyKitConnection;
77
+ /**
78
+ * Process one already-parsed wire frame from a connection. Prefer this over
79
+ * {@link handleMessage} in embedded transports that carry structured frames
80
+ * (avoids a redundant JSON stringify/parse round-trip).
81
+ */
82
+ handleFrame(conn: PtyKitConnection, frame: WireFrame): Promise<void>;
56
83
  /** Resolve connection identity at upgrade. Returns `false` to reject. */
57
84
  resolveUpgrade(request: any): Promise<Record<string, unknown> | false>;
58
85
  handleOpen(_conn: PtyKitConnection): void;
@@ -96,6 +123,6 @@ export declare class PtyKitServer {
96
123
  close: (ws: any) => void;
97
124
  };
98
125
  }
99
- /** Create a WebSocket server over a `PtyKit` manager. */
100
- export declare function createPtyKitServer(manager: PtyKit, options?: PtyKitServerOptions): PtyKitServer;
126
+ /** Create a WebSocket server over a `PtyKitManager`. */
127
+ export declare function createPtyKitServer(manager: PtyKitManager, options?: PtyKitServerOptions): PtyKitServer;
101
128
  //# sourceMappingURL=pty-kit-server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pty-kit-server.d.ts","sourceRoot":"","sources":["../../src/server/pty-kit-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pty-kit-server.d.ts","sourceRoot":"","sources":["../../src/server/pty-kit-server.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@
9
9
  import { checkShell } from '../core/shell.js';
10
10
  import { CLIENT_EVENTS, RPC_ACTIONS, silentLogger, } from '../shared/index.js';
11
11
  import { RoomRegistry } from './connection.js';
12
+ import { nextConnectionId } from './ids.js';
12
13
  import { BunTransport } from './transport-bun.js';
13
14
  import { NodeTransport } from './transport-node.js';
14
15
  function iso() {
@@ -30,6 +31,36 @@ export class PtyKitServer {
30
31
  this.path = options.path ?? '/';
31
32
  this.resolveRoom = options.room ?? ((ctx) => ctx.namespace);
32
33
  }
34
+ // ---- Embedded transport (bring-your-own-socket) ------------------------
35
+ /**
36
+ * Mint a transport-agnostic {@link PtyKitConnection} for embedding PtyKit on a
37
+ * socket you already own (e.g. an app-wide multiplexed WebSocket) instead of
38
+ * letting the Bun/Node transports own it. PtyKit assigns a stable id; you
39
+ * supply how to `send` a frame (and optionally `close`). Drive the connection
40
+ * with {@link handleOpen}, {@link handleFrame} / {@link handleMessage}, and
41
+ * {@link handleClose}.
42
+ *
43
+ * The wire protocol is unchanged — still WebSocket, still `{ action, payload }`
44
+ * frames — only socket ownership moves to the host.
45
+ */
46
+ createConnection(opts) {
47
+ return {
48
+ id: nextConnectionId(),
49
+ data: opts.data ?? {},
50
+ send: opts.send,
51
+ close: opts.close ?? (() => { }),
52
+ };
53
+ }
54
+ /**
55
+ * Process one already-parsed wire frame from a connection. Prefer this over
56
+ * {@link handleMessage} in embedded transports that carry structured frames
57
+ * (avoids a redundant JSON stringify/parse round-trip).
58
+ */
59
+ async handleFrame(conn, frame) {
60
+ if (!frame || typeof frame.action !== 'string')
61
+ return;
62
+ await this.dispatch(conn, frame.action, frame.payload);
63
+ }
33
64
  // ---- Identity / lifecycle ----------------------------------------------
34
65
  /** Resolve connection identity at upgrade. Returns `false` to reject. */
35
66
  async resolveUpgrade(request) {
@@ -62,9 +93,7 @@ export class PtyKitServer {
62
93
  this.logger.warn('server', 'dropping unparseable frame');
63
94
  return;
64
95
  }
65
- if (!frame || typeof frame.action !== 'string')
66
- return;
67
- await this.dispatch(conn, frame.action, frame.payload);
96
+ await this.handleFrame(conn, frame);
68
97
  }
69
98
  // ---- Dispatch -----------------------------------------------------------
70
99
  async dispatch(conn, action, payload) {
@@ -354,7 +383,7 @@ export class PtyKitServer {
354
383
  return this.bunTransport.websocket;
355
384
  }
356
385
  }
357
- /** Create a WebSocket server over a `PtyKit` manager. */
386
+ /** Create a WebSocket server over a `PtyKitManager`. */
358
387
  export function createPtyKitServer(manager, options = {}) {
359
388
  return new PtyKitServer(manager, options);
360
389
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pty-kit-server.js","sourceRoot":"","sources":["../../src/server/pty-kit-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pty-kit-server.js","sourceRoot":"","sources":["../../src/server/pty-kit-server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,13 +1,24 @@
1
1
  {
2
2
  "name": "@myrialabs/ptykit",
3
- "version": "0.0.1",
3
+ "version": "0.0.2",
4
4
  "description": "PTY sessions over WebSocket for Node & Bun — collaborative rooms, serialized-scrollback reattach, and a resilient browser client with one typed API.",
5
5
  "type": "module",
6
+ "publishConfig": {
7
+ "access": "public"
8
+ },
6
9
  "exports": {
7
10
  ".": {
8
11
  "types": "./dist/index.d.ts",
9
12
  "import": "./dist/index.js"
10
13
  },
14
+ "./core": {
15
+ "types": "./dist/core/index.d.ts",
16
+ "import": "./dist/core/index.js"
17
+ },
18
+ "./server": {
19
+ "types": "./dist/server/index.d.ts",
20
+ "import": "./dist/server/index.js"
21
+ },
11
22
  "./client": {
12
23
  "types": "./dist/client/index.d.ts",
13
24
  "import": "./dist/client/index.js"
@@ -1,7 +1,7 @@
1
1
  <!--
2
- PtyTerminal — official Svelte component for `ptykit/svelte`.
2
+ PtyTerminal — official Svelte component for `@myrialabs/ptykit/svelte`.
3
3
 
4
- A thin reactive shell over `mountTerminal` from `ptykit/client`, which owns all
4
+ A thin reactive shell over `mountTerminal` from `@myrialabs/ptykit/client`, which owns all
5
5
  the xterm.js + FitAddon + session wiring. xterm is imported dynamically there,
6
6
  so the component is SSR-safe (it only touches the DOM in the browser).
7
7
 
@@ -20,6 +20,7 @@
20
20
  reconnect = undefined,
21
21
  persistence = undefined,
22
22
  requestTimeoutMs = undefined,
23
+ WebSocketImpl = undefined,
23
24
 
24
25
  // --- session (used when creating) ---
25
26
  cols = undefined,
@@ -36,10 +37,12 @@
36
37
  cursorStyle = 'block',
37
38
  theme = undefined,
38
39
  terminalOptions = {},
40
+ addons = undefined,
39
41
 
40
42
  // --- behavior ---
41
43
  fit = true,
42
44
  fitDebounceMs = 100,
45
+ onTerminalReady = undefined,
43
46
  showStatus = true,
44
47
 
45
48
  // --- styling ---
@@ -74,6 +77,7 @@
74
77
  reconnect,
75
78
  persistence,
76
79
  requestTimeoutMs,
80
+ WebSocketImpl,
77
81
  cols,
78
82
  rows,
79
83
  cwd,
@@ -86,8 +90,10 @@
86
90
  cursorStyle,
87
91
  theme,
88
92
  terminalOptions,
93
+ addons,
89
94
  fit,
90
95
  fitDebounceMs,
96
+ onReady: onTerminalReady,
91
97
  onData: ondata,
92
98
  onExit: onexit,
93
99
  onError: onerror,
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Type declarations for `ptykit/svelte`.
2
+ * Type declarations for `@myrialabs/ptykit/svelte`.
3
3
  *
4
4
  * The component ships as raw `.svelte` source (resolved via the `svelte` export
5
5
  * condition by Svelte-aware bundlers). These hand-written types describe its
@@ -12,6 +12,7 @@ import type {
12
12
  PtyKitClient,
13
13
  ReconnectOptions,
14
14
  SessionPersistence,
15
+ WebSocketFactory,
15
16
  } from '../index.js';
16
17
 
17
18
  export interface PtyTerminalReadyContext {
@@ -25,8 +26,8 @@ export interface PtyTerminalProps {
25
26
  // connection
26
27
  /** Session to attach to / create (created server-side if new). */
27
28
  sessionId: string;
28
- /** WebSocket endpoint, e.g. `/pty`. */
29
- url: string;
29
+ /** WebSocket endpoint, e.g. `/pty`. Optional when `WebSocketImpl`/`client` rides a host socket. */
30
+ url?: string;
30
31
  /** Room/namespace. Required when `create` is true. */
31
32
  namespace?: string;
32
33
  /** Create instead of attach. Default `false`. */
@@ -39,6 +40,8 @@ export interface PtyTerminalProps {
39
40
  persistence?: SessionPersistence;
40
41
  /** RPC timeout (ms). */
41
42
  requestTimeoutMs?: number;
43
+ /** Injectable WebSocket constructor — pass `hostSocket(...)` to tunnel over an app socket. */
44
+ WebSocketImpl?: WebSocketFactory;
42
45
 
43
46
  // session (used when creating)
44
47
  cols?: number;
@@ -57,11 +60,15 @@ export interface PtyTerminalProps {
57
60
  theme?: Record<string, unknown>;
58
61
  /** Extra/override xterm `Terminal` options. */
59
62
  terminalOptions?: Record<string, unknown>;
63
+ /** Extra xterm addons (clipboard, web-links, ligatures, unicode11, …) loaded after FitAddon. */
64
+ addons?: unknown[];
60
65
 
61
66
  // behavior
62
67
  /** Attach a FitAddon + ResizeObserver. Default `true`. */
63
68
  fit?: boolean;
64
69
  fitDebounceMs?: number;
70
+ /** Called with the raw `terminal` after addons load, before attach (activate addons / key handlers). */
71
+ onTerminalReady?: (terminal: unknown) => void;
65
72
  /** Show the built-in connection-status chip. Default `true`. */
66
73
  showStatus?: boolean;
67
74
 
@@ -1,4 +1,4 @@
1
- // Entry for `ptykit/svelte`. Hand-written (not tsc-built) so the package can
1
+ // Entry for `@myrialabs/ptykit/svelte`. Hand-written (not tsc-built) so the package can
2
2
  // ship the raw `.svelte` component, which Svelte-aware bundlers compile via the
3
3
  // `svelte` export condition. Types live in `index.d.ts`.
4
4
  export { default, default as PtyTerminal } from './PtyTerminal.svelte';