@oh-my-pi/pi-tui 8.12.8 → 8.12.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 (2) hide show
  1. package/package.json +2 -2
  2. package/src/terminal.ts +4 -6
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oh-my-pi/pi-tui",
3
- "version": "8.12.8",
3
+ "version": "8.12.10",
4
4
  "description": "Terminal User Interface library with differential rendering for efficient text-based applications",
5
5
  "type": "module",
6
6
  "main": "./src/index.ts",
@@ -47,7 +47,7 @@
47
47
  "bun": ">=1.3.7"
48
48
  },
49
49
  "dependencies": {
50
- "@oh-my-pi/pi-natives": "8.12.8",
50
+ "@oh-my-pi/pi-natives": "8.12.10",
51
51
  "@types/mime-types": "^3.0.1",
52
52
  "chalk": "^5.6.2",
53
53
  "marked": "^17.0.1",
package/src/terminal.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import * as fs from "node:fs";
2
+ import { logger } from "@oh-my-pi/pi-utils";
2
3
  import { setKittyProtocolActive } from "./keys";
3
4
  import { StdinBuffer } from "./stdin-buffer";
4
5
 
@@ -237,12 +238,9 @@ export class ProcessTerminal implements Terminal {
237
238
  try {
238
239
  process.stdout.write(data);
239
240
  } catch (err) {
240
- // EIO means terminal is dead - mark dead and skip all future writes
241
- if (err && typeof err === "object" && (err as { code?: string }).code === "EIO") {
242
- this.dead = true;
243
- return;
244
- }
245
- throw err;
241
+ // Any write failure means terminal is dead - no recovery possible
242
+ this.dead = true;
243
+ logger.warn("terminal is dead - no recovery possible", { error: err, data });
246
244
  }
247
245
  }
248
246