restty 0.1.34 → 0.1.35

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 (41) hide show
  1. package/README.md +26 -1
  2. package/dist/chunk-zqscavsh.js +70316 -0
  3. package/dist/ime/ime.d.ts +4 -4
  4. package/dist/index.d.ts +2 -0
  5. package/dist/internal.d.ts +2 -1
  6. package/dist/internal.esm.js +22285 -0
  7. package/dist/internal.js +1 -1
  8. package/dist/restty.esm.js +22285 -0
  9. package/dist/restty.js +1 -1
  10. package/dist/runtime/create-runtime/font-runtime-grid-helpers.d.ts +1 -0
  11. package/dist/runtime/create-runtime/font-runtime-helpers.types.d.ts +1 -0
  12. package/dist/runtime/create-runtime/highlight-terminal-color-utils.d.ts +13 -0
  13. package/dist/runtime/create-runtime/interaction-runtime/bind-pointer-aux-handlers.d.ts +2 -3
  14. package/dist/runtime/create-runtime/interaction-runtime/bind-pointer-events.d.ts +4 -10
  15. package/dist/runtime/create-runtime/interaction-runtime/bind-pointer-up-handler.d.ts +3 -2
  16. package/dist/runtime/create-runtime/interaction-runtime/desktop-word-selection.d.ts +8 -0
  17. package/dist/runtime/create-runtime/interaction-runtime/scrollbar-runtime.d.ts +4 -10
  18. package/dist/runtime/create-runtime/interaction-runtime/types.d.ts +6 -6
  19. package/dist/runtime/create-runtime/lifecycle-theme-size.types.d.ts +13 -2
  20. package/dist/runtime/create-runtime/ligature-runs.d.ts +52 -0
  21. package/dist/runtime/create-runtime/native-scrollbar-host.d.ts +15 -0
  22. package/dist/runtime/create-runtime/render-tick-webgpu.types.d.ts +11 -3
  23. package/dist/runtime/create-runtime/runtime-app-api.d.ts +8 -0
  24. package/dist/runtime/create-runtime/search-highlight-utils.d.ts +21 -0
  25. package/dist/runtime/create-runtime/search-runtime.d.ts +22 -0
  26. package/dist/runtime/overlay-scrollbar.d.ts +0 -7
  27. package/dist/runtime/types.d.ts +28 -0
  28. package/dist/surface/pane-app-manager.d.ts +16 -1
  29. package/dist/surface/pane-search-ui.d.ts +87 -0
  30. package/dist/surface/restty/active-pane-api.d.ts +8 -0
  31. package/dist/surface/restty/pane-ops.d.ts +17 -8
  32. package/dist/surface/restty-pane-handle.d.ts +38 -3
  33. package/dist/surface/restty.d.ts +5 -3
  34. package/dist/theme/ghostty.d.ts +13 -2
  35. package/dist/wasm/index.d.ts +1 -1
  36. package/dist/wasm/runtime/restty-wasm.d.ts +15 -1
  37. package/dist/wasm/runtime/types.d.ts +24 -0
  38. package/dist/xterm.esm.js +12210 -0
  39. package/dist/xterm.js +1 -1
  40. package/package.json +19 -3
  41. package/dist/chunk-meqn8xtd.js +0 -66867
package/README.md CHANGED
@@ -23,6 +23,12 @@ Powered by:
23
23
  - `WebGPU` (with WebGL2 fallback)
24
24
  - `text-shaper` (shaping + raster)
25
25
 
26
+ Recent additions:
27
+
28
+ - programming ligatures with cross-cell shaping
29
+ - desktop double-click word selection and triple-click line selection
30
+ - standalone ESM bundles at `restty/esm`, `restty/esm/internal`, and `restty/esm/xterm`
31
+
26
32
  ## Release Status
27
33
 
28
34
  `restty` is in an early release stage.
@@ -97,8 +103,10 @@ for (const pane of restty.panes()) {
97
103
 
98
104
  ```ts
99
105
  restty.setFontSize(15);
106
+ restty.setLigatures(true);
100
107
  restty.sendInput("ls -la\n");
101
108
  restty.copySelectionToClipboard();
109
+ restty.selectWordAtClientPoint(120, 48);
102
110
  ```
103
111
 
104
112
  ### Provide custom fonts
@@ -138,6 +146,21 @@ await restty.setFontSources([
138
146
  ]);
139
147
  ```
140
148
 
149
+ ### Use standalone single-file ESM bundles
150
+
151
+ When you want self-contained browser ESM artifacts instead of the split package entrypoints:
152
+
153
+ ```ts
154
+ import { Restty } from "restty/esm";
155
+ import { Terminal } from "restty/esm/xterm";
156
+ ```
157
+
158
+ Package outputs:
159
+
160
+ - `restty/esm` -> `dist/restty.esm.js`
161
+ - `restty/esm/internal` -> `dist/internal.esm.js`
162
+ - `restty/esm/xterm` -> `dist/xterm.esm.js`
163
+
141
164
  ### Touch behavior (pan-first by default)
142
165
 
143
166
  On touch devices, restty defaults to pan-first scrolling with long-press selection.
@@ -305,11 +328,12 @@ Active-pane convenience:
305
328
 
306
329
  - `connectPty(url)` / `disconnectPty()` / `isPtyConnected()`
307
330
  - `setRenderer("auto" | "webgpu" | "webgl2")`
308
- - `setFontSize(number)` / `setFontSources([...])`
331
+ - `setFontSize(number)` / `setLigatures(boolean)` / `setFontSources([...])`
309
332
  - `applyTheme(theme)` / `resetTheme()`
310
333
  - `setMouseMode("auto" | "on" | "off")`
311
334
  - `sendInput(text)` / `sendKeyInput(text)`
312
335
  - `copySelectionToClipboard()` / `pasteFromClipboard()`
336
+ - `selectWordAtClientPoint(x, y)`
313
337
  - `resize(cols, rows)` / `focus()` / `blur()`
314
338
  - `updateSize(force?)`
315
339
  - `destroy()`
@@ -329,6 +353,7 @@ Shader stages:
329
353
  Use these only when you need lower-level control:
330
354
 
331
355
  - `restty/internal`: full internal barrel (unstable; includes low-level modules like WASM/input/pty helpers)
356
+ - `restty/esm`, `restty/esm/internal`, `restty/esm/xterm`: standalone bundled browser ESM entrypoints
332
357
 
333
358
  ## Local Development
334
359