@next_term/web 0.1.0-next.0 → 0.1.0-next.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +222 -0
  3. package/dist/accessibility.d.ts +2 -4
  4. package/dist/accessibility.d.ts.map +1 -1
  5. package/dist/accessibility.js +2 -7
  6. package/dist/accessibility.js.map +1 -1
  7. package/dist/addon.d.ts +9 -0
  8. package/dist/addons/fit.d.ts +23 -0
  9. package/dist/addons/web-links.d.ts +0 -1
  10. package/dist/addons/web-links.d.ts.map +1 -1
  11. package/dist/addons/web-links.js +0 -4
  12. package/dist/addons/web-links.js.map +1 -1
  13. package/dist/fit.d.ts +9 -0
  14. package/dist/fit.d.ts.map +1 -1
  15. package/dist/fit.js +9 -1
  16. package/dist/fit.js.map +1 -1
  17. package/dist/index.d.ts +1 -0
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +1 -0
  20. package/dist/index.js.map +1 -1
  21. package/dist/input-handler.d.ts +7 -0
  22. package/dist/input-handler.d.ts.map +1 -1
  23. package/dist/input-handler.js +34 -5
  24. package/dist/input-handler.js.map +1 -1
  25. package/dist/parser-worker.d.ts +34 -0
  26. package/dist/parser-worker.d.ts.map +1 -1
  27. package/dist/parser-worker.js +4 -17
  28. package/dist/parser-worker.js.map +1 -1
  29. package/dist/render-bridge.d.ts +3 -1
  30. package/dist/render-bridge.d.ts.map +1 -1
  31. package/dist/render-bridge.js +5 -1
  32. package/dist/render-bridge.js.map +1 -1
  33. package/dist/render-worker.d.ts +4 -0
  34. package/dist/render-worker.d.ts.map +1 -1
  35. package/dist/render-worker.js +211 -98
  36. package/dist/render-worker.js.map +1 -1
  37. package/dist/renderer.d.ts +7 -1
  38. package/dist/renderer.d.ts.map +1 -1
  39. package/dist/renderer.js +21 -6
  40. package/dist/renderer.js.map +1 -1
  41. package/dist/shared-context.d.ts +38 -9
  42. package/dist/shared-context.d.ts.map +1 -1
  43. package/dist/shared-context.js +491 -193
  44. package/dist/shared-context.js.map +1 -1
  45. package/dist/web-terminal.d.ts +26 -1
  46. package/dist/web-terminal.d.ts.map +1 -1
  47. package/dist/web-terminal.js +140 -18
  48. package/dist/web-terminal.js.map +1 -1
  49. package/dist/webgl-renderer.d.ts +33 -7
  50. package/dist/webgl-renderer.d.ts.map +1 -1
  51. package/dist/webgl-renderer.js +372 -139
  52. package/dist/webgl-renderer.js.map +1 -1
  53. package/dist/webgl-utils.d.ts +4 -0
  54. package/dist/webgl-utils.d.ts.map +1 -0
  55. package/dist/webgl-utils.js +19 -0
  56. package/dist/webgl-utils.js.map +1 -0
  57. package/dist/worker-bridge.d.ts +7 -2
  58. package/dist/worker-bridge.d.ts.map +1 -1
  59. package/dist/worker-bridge.js +41 -13
  60. package/dist/worker-bridge.js.map +1 -1
  61. package/package.json +6 -6
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Rahul Pandita
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,222 @@
1
+ # @next_term/web
2
+
3
+ Core web engine for react-term. Use this package directly when you need full control without React, or when building framework-agnostic integrations.
4
+
5
+ ## Install
6
+
7
+ ```bash
8
+ npm install @next_term/web @next_term/core
9
+ ```
10
+
11
+ ## Basic Usage
12
+
13
+ ```ts
14
+ import { WebTerminal } from "@next_term/web";
15
+
16
+ const container = document.getElementById("terminal")!;
17
+
18
+ const terminal = new WebTerminal(container, {
19
+ cols: 120,
20
+ rows: 36,
21
+ fontSize: 14,
22
+ fontFamily: "monospace",
23
+ scrollback: 5000,
24
+ onData: (data) => ws.send(data),
25
+ onResize: ({ cols, rows }) => ws.send(`\x1b[8;${rows};${cols}t`),
26
+ });
27
+
28
+ // Write data from your backend
29
+ ws.onmessage = (e) => terminal.write(new Uint8Array(e.data));
30
+
31
+ // Fit to container
32
+ terminal.fit();
33
+
34
+ // Clean up
35
+ terminal.dispose();
36
+ ```
37
+
38
+ ## Multi-Pane with SharedWebGLContext
39
+
40
+ For multiple terminals on one page, use `SharedWebGLContext` to share a single WebGL context. This avoids Chrome's 16-context limit and is more GPU-efficient.
41
+
42
+ ```ts
43
+ import { WebTerminal, SharedWebGLContext } from "@next_term/web";
44
+
45
+ // 1. Create the shared context
46
+ const sharedCtx = new SharedWebGLContext({
47
+ fontSize: 13,
48
+ fontFamily: "monospace",
49
+ theme: { background: "#1e1e2e", foreground: "#cdd6f4" },
50
+ });
51
+
52
+ // 2. Add the shared canvas as an overlay on your container
53
+ const overlay = sharedCtx.getCanvas();
54
+ overlay.style.cssText = "position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1";
55
+ container.style.position = "relative";
56
+ container.appendChild(overlay);
57
+
58
+ // 3. Initialize the GL context (must be after canvas is in the DOM)
59
+ sharedCtx.init();
60
+
61
+ // 4. Create terminals with the shared context
62
+ const term1 = new WebTerminal(pane1, {
63
+ fontSize: 13,
64
+ fontFamily: "monospace",
65
+ sharedContext: sharedCtx,
66
+ paneId: "pane-1",
67
+ useWorker: true,
68
+ });
69
+
70
+ const term2 = new WebTerminal(pane2, {
71
+ fontSize: 13,
72
+ fontFamily: "monospace",
73
+ sharedContext: sharedCtx,
74
+ paneId: "pane-2",
75
+ useWorker: true,
76
+ });
77
+
78
+ // 5. Set viewport positions (CSS pixels, not device pixels)
79
+ // SharedWebGLContext multiplies by devicePixelRatio internally
80
+ const containerRect = container.getBoundingClientRect();
81
+ const pane1Rect = pane1.getBoundingClientRect();
82
+ sharedCtx.setViewport(
83
+ "pane-1",
84
+ pane1Rect.left - containerRect.left, // CSS pixels
85
+ pane1Rect.top - containerRect.top, // CSS pixels
86
+ pane1Rect.width, // CSS pixels
87
+ pane1Rect.height, // CSS pixels
88
+ );
89
+
90
+ // 6. Sync canvas size and start the single render loop
91
+ sharedCtx.syncCanvasSize(containerRect.width, containerRect.height);
92
+ sharedCtx.startRenderLoop();
93
+ ```
94
+
95
+ ## Addons
96
+
97
+ ```ts
98
+ import { FitAddon, SearchAddon, WebLinksAddon } from "@next_term/web";
99
+
100
+ // Fit terminal to container
101
+ const fitAddon = new FitAddon();
102
+ terminal.loadAddon(fitAddon);
103
+ fitAddon.fit();
104
+
105
+ // Search
106
+ const searchAddon = new SearchAddon();
107
+ terminal.loadAddon(searchAddon);
108
+ searchAddon.findNext("error", { caseSensitive: false, regex: true });
109
+
110
+ // Clickable URLs
111
+ const webLinksAddon = new WebLinksAddon();
112
+ terminal.loadAddon(webLinksAddon);
113
+ ```
114
+
115
+ ## Configuration Guide
116
+
117
+ ### Renderer Selection
118
+
119
+ | Value | Behavior |
120
+ |-------|----------|
121
+ | `"auto"` (default) | WebGL2 if available and not software-rendered, else Canvas2D |
122
+ | `"webgl"` | Force WebGL2 (throws if unavailable) |
123
+ | `"canvas2d"` | Force Canvas2D |
124
+
125
+ Auto-detection excludes software renderers (SwiftShader, llvmpipe) where Canvas2D is faster.
126
+
127
+ ### Render Mode
128
+
129
+ Controls where **rendering** happens (independent of `useWorker` which controls parsing):
130
+
131
+ | Value | Rendering | Best for |
132
+ |-------|-----------|----------|
133
+ | `"auto"` (default) | OffscreenCanvas worker if SAB + OffscreenCanvas available, else main thread | Production |
134
+ | `"main"` | Main thread | Debugging, Playwright screenshots |
135
+ | `"offscreen"` | OffscreenCanvas worker (throws if unavailable) | Guaranteed off-thread rendering |
136
+
137
+ ### Worker Mode
138
+
139
+ | `useWorker` | Behavior |
140
+ |-------------|----------|
141
+ | `true` | VT parser runs in Web Worker via SharedArrayBuffer |
142
+ | `false` | VT parser runs on main thread |
143
+ | `undefined` (default) | Auto: uses worker when SharedArrayBuffer is available |
144
+
145
+ ## Best Practices
146
+
147
+ ### SharedWebGLContext Viewport Coordinates
148
+
149
+ `setViewport()` expects **CSS pixels**. The context handles devicePixelRatio multiplication internally. Passing device pixels will result in incorrect positioning.
150
+
151
+ ```ts
152
+ // Correct
153
+ sharedCtx.setViewport(id, rect.left - parent.left, rect.top - parent.top, rect.width, rect.height);
154
+
155
+ // Wrong -- double-scaled on HiDPI
156
+ sharedCtx.setViewport(id, x * dpr, y * dpr, w * dpr, h * dpr);
157
+ ```
158
+
159
+ ### Web Font Loading
160
+
161
+ The terminal automatically loads web fonts declared via `@font-face` using the CSS Font Loading API. The first render may use a fallback font, then re-renders once the web font loads (FOUT behavior).
162
+
163
+ - Always include a generic fallback: `"'Fira Code', monospace"`
164
+ - Generic families (`monospace`, `serif`, `sans-serif`, `system-ui`, `ui-monospace`) are never loaded -- they're always available
165
+ - If a font fails to load, the terminal continues with the fallback
166
+
167
+ ### Color Formats
168
+
169
+ `theme` colors accept any CSS color format:
170
+
171
+ ```ts
172
+ const theme = {
173
+ background: "#1e1e2e", // hex
174
+ foreground: "rgb(205, 214, 244)",// rgb()
175
+ cursor: "oklch(0.8 0.1 330)", // oklch()
176
+ red: "salmon", // named
177
+ };
178
+ ```
179
+
180
+ ### Resize Clamping
181
+
182
+ `WebTerminal` clamps dimensions to 500 columns x 500 rows. Requests above this are silently clamped. The `onResize` callback fires with the clamped values.
183
+
184
+ ### Cleanup
185
+
186
+ Always call `dispose()` when removing a terminal:
187
+
188
+ ```ts
189
+ terminal.dispose();
190
+ // For shared context:
191
+ sharedCtx.stopRenderLoop();
192
+ sharedCtx.dispose();
193
+ ```
194
+
195
+ ## Key Exports
196
+
197
+ ```ts
198
+ // Terminal
199
+ export { WebTerminal, SharedWebGLContext } from "@next_term/web";
200
+ export type { WebTerminalOptions } from "@next_term/web";
201
+
202
+ // Renderers
203
+ export { Canvas2DRenderer, WebGLRenderer, createRenderer } from "@next_term/web";
204
+ export type { IRenderer, RendererOptions } from "@next_term/web";
205
+
206
+ // Addons
207
+ export { FitAddon, SearchAddon, WebLinksAddon } from "@next_term/web";
208
+
209
+ // Utilities
210
+ export { calculateFit, InputHandler, WorkerBridge, RenderBridge } from "@next_term/web";
211
+ export { AccessibilityManager, GlyphAtlas, hexToFloat4 } from "@next_term/web";
212
+
213
+ // Re-exported from @next_term/core
214
+ export type { Theme, CursorState, TerminalOptions } from "@next_term/web";
215
+ export { DEFAULT_THEME, CellGrid } from "@next_term/web";
216
+ ```
217
+
218
+ See the full export list in [src/index.ts](src/index.ts).
219
+
220
+ ## License
221
+
222
+ MIT
@@ -19,14 +19,12 @@ export declare class AccessibilityManager {
19
19
  private rowElements;
20
20
  private grid;
21
21
  private rows;
22
- private cols;
23
- private container;
24
22
  private disposed;
25
23
  /** Throttle interval in milliseconds (10 Hz). */
26
24
  private static readonly THROTTLE_MS;
27
25
  private throttleTimer;
28
26
  private updateScheduled;
29
- constructor(container: HTMLElement, grid: CellGrid, rows: number, cols: number);
27
+ constructor(container: HTMLElement, grid: CellGrid, rows: number, _cols: number);
30
28
  /**
31
29
  * Update the accessibility tree for dirty rows.
32
30
  * Throttled to 10 Hz — safe to call on every render frame.
@@ -39,7 +37,7 @@ export declare class AccessibilityManager {
39
37
  /**
40
38
  * Replace the grid reference (e.g. after resize).
41
39
  */
42
- setGrid(grid: CellGrid, rows: number, cols: number): void;
40
+ setGrid(grid: CellGrid, rows: number, _cols: number): void;
43
41
  dispose(): void;
44
42
  private performUpdate;
45
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"accessibility.d.ts","sourceRoot":"","sources":["../src/accessibility.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAMhD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAQlE;AAMD,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,UAAU,CAAc;IAChC,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,IAAI,CAAW;IACvB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,SAAS,CAAc;IAC/B,OAAO,CAAC,QAAQ,CAAS;IAEzB,iDAAiD;IACjD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAO;IAE1C,OAAO,CAAC,aAAa,CAA8C;IACnE,OAAO,CAAC,eAAe,CAAS;gBAEpB,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IA+D9E;;;OAGG;IACH,MAAM,IAAI,IAAI;IAoBd;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,QAAQ,GAAG,WAAsB,GAAG,IAAI;IAgBzE;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAwBzD,OAAO,IAAI,IAAI;IAuBf,OAAO,CAAC,aAAa;CAatB"}
1
+ {"version":3,"file":"accessibility.d.ts","sourceRoot":"","sources":["../src/accessibility.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAMhD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAQlE;AAMD,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,UAAU,CAAc;IAChC,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,IAAI,CAAW;IACvB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,QAAQ,CAAS;IAEzB,iDAAiD;IACjD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAO;IAE1C,OAAO,CAAC,aAAa,CAA8C;IACnE,OAAO,CAAC,eAAe,CAAS;gBAEpB,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IA6D/E;;;OAGG;IACH,MAAM,IAAI,IAAI;IAoBd;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,QAAQ,GAAG,WAAsB,GAAG,IAAI;IAgBzE;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAuB1D,OAAO,IAAI,IAAI;IAuBf,OAAO,CAAC,aAAa;CAatB"}
@@ -32,18 +32,14 @@ export class AccessibilityManager {
32
32
  rowElements;
33
33
  grid;
34
34
  rows;
35
- cols;
36
- container;
37
35
  disposed = false;
38
36
  /** Throttle interval in milliseconds (10 Hz). */
39
37
  static THROTTLE_MS = 100;
40
38
  throttleTimer = null;
41
39
  updateScheduled = false;
42
- constructor(container, grid, rows, cols) {
40
+ constructor(container, grid, rows, _cols) {
43
41
  this.grid = grid;
44
42
  this.rows = rows;
45
- this.cols = cols;
46
- this.container = container;
47
43
  // Create the off-screen accessibility tree container.
48
44
  // It is positioned absolutely, transparent, and ignores pointer events
49
45
  // so it does not interfere with the canvas rendering.
@@ -138,10 +134,9 @@ export class AccessibilityManager {
138
134
  /**
139
135
  * Replace the grid reference (e.g. after resize).
140
136
  */
141
- setGrid(grid, rows, cols) {
137
+ setGrid(grid, rows, _cols) {
142
138
  this.grid = grid;
143
139
  this.rows = rows;
144
- this.cols = cols;
145
140
  // Rebuild row elements if the count changed
146
141
  while (this.rowElements.length > rows) {
147
142
  const el = this.rowElements.pop();
@@ -1 +1 @@
1
- {"version":3,"file":"accessibility.js","sourceRoot":"","sources":["../src/accessibility.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,IAAc,EAAE,GAAW;IACxD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IACvB,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC;QACpC,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACvC,IAAI,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACrD,CAAC;IACD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAClC,CAAC;AAED,8EAA8E;AAC9E,uBAAuB;AACvB,8EAA8E;AAE9E,MAAM,OAAO,oBAAoB;IACvB,UAAU,CAAc;IACxB,aAAa,CAAc;IAC3B,WAAW,CAAgB;IAC3B,IAAI,CAAW;IACf,IAAI,CAAS;IACb,IAAI,CAAS;IACb,SAAS,CAAc;IACvB,QAAQ,GAAG,KAAK,CAAC;IAEzB,iDAAiD;IACzC,MAAM,CAAU,WAAW,GAAG,GAAG,CAAC;IAElC,aAAa,GAAyC,IAAI,CAAC;IAC3D,eAAe,GAAG,KAAK,CAAC;IAEhC,YAAY,SAAsB,EAAE,IAAc,EAAE,IAAY,EAAE,IAAY;QAC5E,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAE3B,sDAAsD;QACtD,uEAAuE;QACvE,sDAAsD;QACtD,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACnD,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;QACjE,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;QACzD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE;YACtC,QAAQ,EAAE,UAAU;YACpB,GAAG,EAAE,GAAG;YACR,IAAI,EAAE,GAAG;YACT,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,GAAG;YACZ,aAAa,EAAE,MAAM;YACrB,kEAAkE;YAClE,sDAAsD;YACtD,IAAI,EAAE,eAAe;YACrB,QAAQ,EAAE,YAAY;YACtB,UAAU,EAAE,QAAQ;SACrB,CAAC,CAAC;QAEH,6BAA6B;QAC7B,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC5C,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAClC,KAAK,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACnD,KAAK,CAAC,YAAY,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YACjD,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YACtC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;QAED,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAE1C,kEAAkE;QAClE,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QACpD,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE;YACnC,QAAQ,EAAE,UAAU;YACpB,GAAG,EAAE,GAAG;YACR,IAAI,EAAE,GAAG;YACT,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,GAAG;YACZ,aAAa,EAAE,MAAM;YACrB,IAAI,EAAE,eAAe;YACrB,QAAQ,EAAE,YAAY;YACtB,UAAU,EAAE,QAAQ;SACrB,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;IAED;;;OAGG;IACH,MAAM;QACJ,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAE1B,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;YAChC,wEAAwE;YACxE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE;YACnC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC1B,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACzB,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;gBAC7B,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,CAAC;QACH,CAAC,EAAE,oBAAoB,CAAC,WAAW,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,IAAY,EAAE,WAAmC,QAAQ;QAChE,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAE1B,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAEpD,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAElC,iDAAiD;QACjD,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;YAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;YACzC,IAAI,KAAK;gBAAE,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,IAAc,EAAE,IAAY,EAAE,IAAY;QAChD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,4CAA4C;QAC5C,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC;YACtC,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;YAClC,IAAI,EAAE;gBAAE,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC5C,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAClC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YACtC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;QAED,yBAAyB;QACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACjE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED,OAAO;QACL,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC1B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QAErB,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;YAChC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACjC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;QAED,IAAI,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC;YACrC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC;YAClC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC7D,CAAC;QAED,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;IACxB,CAAC;IAED,0EAA0E;IAC1E,WAAW;IACX,0EAA0E;IAElE,aAAa;QACnB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAE1D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;gBAAE,SAAS;YAC/B,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACrC,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YAC/B,IAAI,EAAE,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;gBAC5B,EAAE,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,CAAC;QACH,CAAC;IACH,CAAC"}
1
+ {"version":3,"file":"accessibility.js","sourceRoot":"","sources":["../src/accessibility.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { WebTerminal } from "./web-terminal.js";
2
+ /**
3
+ * Interface that all terminal addons must implement.
4
+ */
5
+ export interface ITerminalAddon {
6
+ activate(terminal: WebTerminal): void;
7
+ dispose(): void;
8
+ }
9
+ //# sourceMappingURL=addon.d.ts.map
@@ -0,0 +1,23 @@
1
+ import type { ITerminalAddon } from "../addon.js";
2
+ import type { WebTerminal } from "../web-terminal.js";
3
+ /**
4
+ * Addon that fits the terminal to its container element.
5
+ */
6
+ export declare class FitAddon implements ITerminalAddon {
7
+ private terminal;
8
+ activate(terminal: WebTerminal): void;
9
+ dispose(): void;
10
+ /**
11
+ * Calculate the dimensions that would fit the terminal's container.
12
+ * Returns null if the terminal is not attached or dimensions can't be calculated.
13
+ */
14
+ proposeDimensions(): {
15
+ cols: number;
16
+ rows: number;
17
+ } | null;
18
+ /**
19
+ * Fit the terminal to its container by resizing.
20
+ */
21
+ fit(): void;
22
+ }
23
+ //# sourceMappingURL=fit.d.ts.map
@@ -15,7 +15,6 @@ export declare class WebLinksAddon implements ITerminalAddon {
15
15
  private terminal;
16
16
  private handler;
17
17
  private links;
18
- private currentHoverLink;
19
18
  private mouseMoveHandler;
20
19
  private clickHandler;
21
20
  constructor(handler?: (url: string) => void);
@@ -1 +1 @@
1
- {"version":3,"file":"web-links.d.ts","sourceRoot":"","sources":["../../src/addons/web-links.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAMtD,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;CACb;AAwBD;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,EAAE,CA4BrD;AAMD,qBAAa,aAAc,YAAW,cAAc;IAClD,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,gBAAgB,CAA0B;IAElD,OAAO,CAAC,gBAAgB,CAA0C;IAClE,OAAO,CAAC,YAAY,CAA0C;gBAElD,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI;IAW3C,QAAQ,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI;IAcrC,OAAO,IAAI,IAAI;IAyBf,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,eAAe;IAmBvB,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,WAAW;IAsBnB,OAAO,CAAC,OAAO;CAchB"}
1
+ {"version":3,"file":"web-links.d.ts","sourceRoot":"","sources":["../../src/addons/web-links.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAMtD,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;CACb;AAwBD;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,EAAE,CA4BrD;AAMD,qBAAa,aAAc,YAAW,cAAc;IAClD,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,gBAAgB,CAA0C;IAClE,OAAO,CAAC,YAAY,CAA0C;gBAElD,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI;IAW3C,QAAQ,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI;IAcrC,OAAO,IAAI,IAAI;IAwBf,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,eAAe;IAmBvB,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,WAAW;IAoBnB,OAAO,CAAC,OAAO;CAchB"}
@@ -54,7 +54,6 @@ export class WebLinksAddon {
54
54
  terminal = null;
55
55
  handler;
56
56
  links = [];
57
- currentHoverLink = null;
58
57
  mouseMoveHandler = null;
59
58
  clickHandler = null;
60
59
  constructor(handler) {
@@ -94,7 +93,6 @@ export class WebLinksAddon {
94
93
  }
95
94
  this.terminal = null;
96
95
  this.links = [];
97
- this.currentHoverLink = null;
98
96
  this.mouseMoveHandler = null;
99
97
  this.clickHandler = null;
100
98
  }
@@ -145,12 +143,10 @@ export class WebLinksAddon {
145
143
  if (link) {
146
144
  if (container)
147
145
  container.style.cursor = "pointer";
148
- this.currentHoverLink = link;
149
146
  }
150
147
  else {
151
148
  if (container)
152
149
  container.style.cursor = "";
153
- this.currentHoverLink = null;
154
150
  }
155
151
  }
156
152
  onClick(e) {
@@ -1 +1 @@
1
- {"version":3,"file":"web-links.js","sourceRoot":"","sources":["../../src/addons/web-links.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"web-links.js","sourceRoot":"","sources":["../../src/addons/web-links.ts"],"names":[],"mappings":"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"}
package/dist/fit.d.ts ADDED
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Calculate how many terminal columns/rows fit in a container element.
3
+ * Subtracts CSS padding so the canvas fits inside the content box.
4
+ */
5
+ export declare function calculateFit(container: HTMLElement, cellWidth: number, cellHeight: number): {
6
+ cols: number;
7
+ rows: number;
8
+ };
9
+ //# sourceMappingURL=fit.d.ts.map
package/dist/fit.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"fit.d.ts","sourceRoot":"","sources":["../src/fit.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,YAAY,CAC1B,SAAS,EAAE,WAAW,EACtB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACjB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAYhC"}
1
+ {"version":3,"file":"fit.d.ts","sourceRoot":"","sources":["../src/fit.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,SAAS,EAAE,WAAW,EACtB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACjB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAqBhC"}
package/dist/fit.js CHANGED
@@ -1,8 +1,16 @@
1
1
  /**
2
2
  * Calculate how many terminal columns/rows fit in a container element.
3
+ * Subtracts CSS padding so the canvas fits inside the content box.
3
4
  */
4
5
  export function calculateFit(container, cellWidth, cellHeight) {
5
- const { width, height } = container.getBoundingClientRect();
6
+ const rect = container.getBoundingClientRect();
7
+ let width = rect.width;
8
+ let height = rect.height;
9
+ if (typeof getComputedStyle === "function") {
10
+ const style = getComputedStyle(container);
11
+ width -= (parseFloat(style.paddingLeft) || 0) + (parseFloat(style.paddingRight) || 0);
12
+ height -= (parseFloat(style.paddingTop) || 0) + (parseFloat(style.paddingBottom) || 0);
13
+ }
6
14
  const cols = Math.max(2, Math.floor(width / cellWidth));
7
15
  const rows = Math.max(1, Math.floor(height / cellHeight));
8
16
  // Guard against Infinity/NaN — critical gotcha from xterm.js
package/dist/fit.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"fit.js","sourceRoot":"","sources":["../src/fit.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,UAAU,YAAY,CAC1B,SAAsB,EACtB,SAAiB,EACjB,UAAkB;IAElB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,qBAAqB,EAAE,CAAC;IAE5D,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC;IACxD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC;IAE1D,6DAA6D;IAC7D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACrD,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IAChC,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"fit.js","sourceRoot":"","sources":["../src/fit.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,YAAY,CAC1B,SAAsB,EACtB,SAAiB,EACjB,UAAkB;IAElB,MAAM,IAAI,GAAG,SAAS,CAAC,qBAAqB,EAAE,CAAC;IAE/C,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACvB,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAEzB,IAAI,OAAO,gBAAgB,KAAK,UAAU,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAC1C,KAAK,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;QACtF,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;IACzF,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC;IACxD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC;IAE1D,6DAA6D;IAC7D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACrD,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IAChC,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACxB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -20,5 +20,6 @@ export type { WebTerminalOptions } from "./web-terminal.js";
20
20
  export { WebTerminal } from "./web-terminal.js";
21
21
  export type { GlyphInfo } from "./webgl-renderer.js";
22
22
  export { createRenderer, GlyphAtlas, hexToFloat4, WebGLRenderer } from "./webgl-renderer.js";
23
+ export { type ColorFloat4, resolveColorFloat } from "./webgl-utils.js";
23
24
  export { WorkerBridge } from "./worker-bridge.js";
24
25
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC3F,OAAO,EACL,SAAS,EACT,QAAQ,EACR,aAAa,EACb,WAAW,EACX,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAE1E,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,YAAY,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACzE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAClE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,YAAY,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC7F,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC3F,OAAO,EACL,SAAS,EACT,QAAQ,EACR,aAAa,EACb,WAAW,EACX,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAE1E,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,YAAY,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACzE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAClE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,YAAY,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC7F,OAAO,EAAE,KAAK,WAAW,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC"}
package/dist/index.js CHANGED
@@ -10,5 +10,6 @@ export { build256Palette, Canvas2DRenderer } from "./renderer.js";
10
10
  export { SharedWebGLContext } from "./shared-context.js";
11
11
  export { WebTerminal } from "./web-terminal.js";
12
12
  export { createRenderer, GlyphAtlas, hexToFloat4, WebGLRenderer } from "./webgl-renderer.js";
13
+ export { resolveColorFloat } from "./webgl-utils.js";
13
14
  export { WorkerBridge } from "./worker-bridge.js";
14
15
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,SAAS,EACT,QAAQ,EACR,aAAa,EACb,WAAW,EACX,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAG1E,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEzE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAElE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC7F,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,SAAS,EACT,QAAQ,EACR,aAAa,EACb,WAAW,EACX,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAG1E,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEzE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAElE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC7F,OAAO,EAAoB,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC"}
@@ -151,6 +151,13 @@ export declare class InputHandler {
151
151
  * Sub-parameters equal to the main codepoint are omitted.
152
152
  */
153
153
  private _kittyAltParam;
154
+ /**
155
+ * Associated text sub-parameter for flag 16 (report associated text).
156
+ *
157
+ * Returns the `;codepoint` third-parameter suffix for keys that produce text,
158
+ * or `""` when flag 16 is inactive or the key produces no associated text.
159
+ */
160
+ private _kittyTextParam;
154
161
  private handleFocus;
155
162
  private handleBlur;
156
163
  private getMouseCellPos;
@@ -1 +1 @@
1
- {"version":3,"file":"input-handler.d.ts","sourceRoot":"","sources":["../src/input-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"input-handler.d.ts","sourceRoot":"","sources":["../src/input-handler.ts"],"names":[],"mappings":"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"}
@@ -652,12 +652,12 @@ export class InputHandler {
652
652
  }
653
653
  // Shift+Tab → CSI 9 ; 2 u
654
654
  if (key === "Tab" && shiftKey) {
655
- return `\x1b[9;${mod}${et}u`;
655
+ return `\x1b[9;${mod}${et}${this._kittyTextParam("Tab")}u`;
656
656
  }
657
657
  // Modifier + single printable character → CSI codepoint[:alt] ; mod u
658
658
  // Flag 8 (report all keys as escape codes) also encodes unmodified/shift-only chars.
659
659
  if (key.length === 1 && ((hasModifier && (ctrlKey || altKey)) || this.kittyFlags & 8)) {
660
- return `\x1b[${key.charCodeAt(0)}${this._kittyAltParam(key)};${mod}${et}u`;
660
+ return `\x1b[${key.charCodeAt(0)}${this._kittyAltParam(key)};${mod}${et}${this._kittyTextParam(key)}u`;
661
661
  }
662
662
  // Modified cursor keys → CSI 1 ; mod <letter>
663
663
  if (hasModifier) {
@@ -717,11 +717,11 @@ export class InputHandler {
717
717
  if (this.kittyFlags & 8) {
718
718
  switch (key) {
719
719
  case "Enter":
720
- return `\x1b[13;1${et}u`;
720
+ return `\x1b[13;1${et}${this._kittyTextParam("Enter")}u`;
721
721
  case "Tab":
722
- return `\x1b[9;1${et}u`;
722
+ return `\x1b[9;1${et}${this._kittyTextParam("Tab")}u`;
723
723
  case "Backspace":
724
- return `\x1b[127;1${et}u`;
724
+ return `\x1b[127;1${et}${this._kittyTextParam("Backspace")}u`;
725
725
  }
726
726
  }
727
727
  // Legacy sequences don't support release events — return null on keyup (eventType=3).
@@ -810,6 +810,27 @@ export class InputHandler {
810
810
  return `:${alt1}`;
811
811
  return `:${alt1}:${alt2}`;
812
812
  }
813
+ /**
814
+ * Associated text sub-parameter for flag 16 (report associated text).
815
+ *
816
+ * Returns the `;codepoint` third-parameter suffix for keys that produce text,
817
+ * or `""` when flag 16 is inactive or the key produces no associated text.
818
+ */
819
+ _kittyTextParam(key) {
820
+ if (!(this.kittyFlags & 16))
821
+ return "";
822
+ if (key.length === 1)
823
+ return `;${key.charCodeAt(0)}`;
824
+ switch (key) {
825
+ case "Enter":
826
+ return ";13";
827
+ case "Tab":
828
+ return ";9";
829
+ case "Backspace":
830
+ return ";127";
831
+ }
832
+ return "";
833
+ }
813
834
  // -----------------------------------------------------------------------
814
835
  // Focus / blur events (mode 1004)
815
836
  // -----------------------------------------------------------------------
@@ -924,6 +945,14 @@ export class InputHandler {
924
945
  const button = e.deltaY < 0 ? 64 : 65;
925
946
  this.onData(toBytes(this.encodeMouseEvent(button, pos.col, pos.row)));
926
947
  }
948
+ else if (this.onScroll && this.cellHeight > 0) {
949
+ // Normal mode — scroll the viewport through scrollback history
950
+ e.preventDefault();
951
+ const lines = Math.round(e.deltaY / this.cellHeight);
952
+ if (lines !== 0) {
953
+ this.onScroll(lines);
954
+ }
955
+ }
927
956
  }
928
957
  // -----------------------------------------------------------------------
929
958
  // Touch → GestureHandler bridge