This repository has no description
0

Configure Feed

Select the types of activity you want to include in your feed.

Bundle CLI for npm global install compatibility (fixes #3)

Node refuses to type-strip .ts files under node_modules/, so
`pty` failed after `npm install -g`. The CLI entry point is now
bundled to a single bin/cli.js via esbuild during prepublishOnly.

The testing and TUI exports remain .ts — consumers' toolchains
handle those.

Nathan Herald (Mar 25, 2026, 10:34 PM +0100) 0bb700c6 1c8ff254

+503 -5
+1
.gitignore
··· 1 1 node_modules/ 2 + bin/cli.js 2 3 result
+7 -1
bin/pty
··· 1 1 #!/usr/bin/env node 2 + import { existsSync } from 'node:fs'; 2 3 import { spawnSync } from 'node:child_process'; 3 4 import { fileURLToPath } from 'node:url'; 4 5 import { dirname, join } from 'node:path'; 5 6 6 7 const __dirname = dirname(fileURLToPath(import.meta.url)); 7 - const cli = join(__dirname, '..', 'src', 'cli.ts'); 8 + const cli = join(__dirname, 'cli.js'); 9 + 10 + if (!existsSync(cli)) { 11 + console.error('bin/cli.js not found. Run: npm run build'); 12 + process.exit(1); 13 + } 8 14 9 15 const result = spawnSync(process.execPath, [cli, ...process.argv.slice(2)], { 10 16 stdio: 'inherit',
+6 -3
flake.nix
··· 29 29 30 30 # Generated from package-lock.json. 31 31 # Regenerate with: nix run nixpkgs#prefetch-npm-deps -- package-lock.json 32 - npmDepsHash = "sha256-rl5s8czRezWu0Fri4xWoMUkazBQfVXfuUf9hvBGw3Qw="; 32 + npmDepsHash = "sha256-ZE3elAZKDLlig0Pe6KrGvLO8xlmF+9WqYHl3v0KFfXs="; 33 33 34 34 # node-pty has native code that needs these at build time 35 35 nativeBuildInputs = with pkgs; [ python3 pkg-config ]; ··· 37 37 pkgs.apple-sdk_15 38 38 ]; 39 39 40 - # No compile step — Node runs TypeScript directly via type stripping. 41 - dontNpmBuild = true; 40 + buildPhase = '' 41 + runHook preBuild 42 + npm run build 43 + runHook postBuild 44 + ''; 42 45 43 46 # Install outside of node_modules so Node's TypeScript stripping works. 44 47 # (Node refuses to strip types for files under node_modules/)
+485
package-lock.json
··· 19 19 "devDependencies": { 20 20 "@preact/signals-core": "^1.14.0", 21 21 "@types/node": "^25.3.5", 22 + "esbuild": "^0.27.4", 22 23 "typescript": "^5.7.0", 23 24 "vitest": "^4.1.1" 24 25 }, ··· 63 64 "optional": true, 64 65 "dependencies": { 65 66 "tslib": "^2.4.0" 67 + } 68 + }, 69 + "node_modules/@esbuild/aix-ppc64": { 70 + "version": "0.27.4", 71 + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.4.tgz", 72 + "integrity": "sha512-cQPwL2mp2nSmHHJlCyoXgHGhbEPMrEEU5xhkcy3Hs/O7nGZqEpZ2sUtLaL9MORLtDfRvVl2/3PAuEkYZH0Ty8Q==", 73 + "cpu": [ 74 + "ppc64" 75 + ], 76 + "dev": true, 77 + "license": "MIT", 78 + "optional": true, 79 + "os": [ 80 + "aix" 81 + ], 82 + "engines": { 83 + "node": ">=18" 84 + } 85 + }, 86 + "node_modules/@esbuild/android-arm": { 87 + "version": "0.27.4", 88 + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.4.tgz", 89 + "integrity": "sha512-X9bUgvxiC8CHAGKYufLIHGXPJWnr0OCdR0anD2e21vdvgCI8lIfqFbnoeOz7lBjdrAGUhqLZLcQo6MLhTO2DKQ==", 90 + "cpu": [ 91 + "arm" 92 + ], 93 + "dev": true, 94 + "license": "MIT", 95 + "optional": true, 96 + "os": [ 97 + "android" 98 + ], 99 + "engines": { 100 + "node": ">=18" 101 + } 102 + }, 103 + "node_modules/@esbuild/android-arm64": { 104 + "version": "0.27.4", 105 + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.4.tgz", 106 + "integrity": "sha512-gdLscB7v75wRfu7QSm/zg6Rx29VLdy9eTr2t44sfTW7CxwAtQghZ4ZnqHk3/ogz7xao0QAgrkradbBzcqFPasw==", 107 + "cpu": [ 108 + "arm64" 109 + ], 110 + "dev": true, 111 + "license": "MIT", 112 + "optional": true, 113 + "os": [ 114 + "android" 115 + ], 116 + "engines": { 117 + "node": ">=18" 118 + } 119 + }, 120 + "node_modules/@esbuild/android-x64": { 121 + "version": "0.27.4", 122 + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.4.tgz", 123 + "integrity": "sha512-PzPFnBNVF292sfpfhiyiXCGSn9HZg5BcAz+ivBuSsl6Rk4ga1oEXAamhOXRFyMcjwr2DVtm40G65N3GLeH1Lvw==", 124 + "cpu": [ 125 + "x64" 126 + ], 127 + "dev": true, 128 + "license": "MIT", 129 + "optional": true, 130 + "os": [ 131 + "android" 132 + ], 133 + "engines": { 134 + "node": ">=18" 135 + } 136 + }, 137 + "node_modules/@esbuild/darwin-arm64": { 138 + "version": "0.27.4", 139 + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.4.tgz", 140 + "integrity": "sha512-b7xaGIwdJlht8ZFCvMkpDN6uiSmnxxK56N2GDTMYPr2/gzvfdQN8rTfBsvVKmIVY/X7EM+/hJKEIbbHs9oA4tQ==", 141 + "cpu": [ 142 + "arm64" 143 + ], 144 + "dev": true, 145 + "license": "MIT", 146 + "optional": true, 147 + "os": [ 148 + "darwin" 149 + ], 150 + "engines": { 151 + "node": ">=18" 152 + } 153 + }, 154 + "node_modules/@esbuild/darwin-x64": { 155 + "version": "0.27.4", 156 + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.4.tgz", 157 + "integrity": "sha512-sR+OiKLwd15nmCdqpXMnuJ9W2kpy0KigzqScqHI3Hqwr7IXxBp3Yva+yJwoqh7rE8V77tdoheRYataNKL4QrPw==", 158 + "cpu": [ 159 + "x64" 160 + ], 161 + "dev": true, 162 + "license": "MIT", 163 + "optional": true, 164 + "os": [ 165 + "darwin" 166 + ], 167 + "engines": { 168 + "node": ">=18" 169 + } 170 + }, 171 + "node_modules/@esbuild/freebsd-arm64": { 172 + "version": "0.27.4", 173 + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.4.tgz", 174 + "integrity": "sha512-jnfpKe+p79tCnm4GVav68A7tUFeKQwQyLgESwEAUzyxk/TJr4QdGog9sqWNcUbr/bZt/O/HXouspuQDd9JxFSw==", 175 + "cpu": [ 176 + "arm64" 177 + ], 178 + "dev": true, 179 + "license": "MIT", 180 + "optional": true, 181 + "os": [ 182 + "freebsd" 183 + ], 184 + "engines": { 185 + "node": ">=18" 186 + } 187 + }, 188 + "node_modules/@esbuild/freebsd-x64": { 189 + "version": "0.27.4", 190 + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.4.tgz", 191 + "integrity": "sha512-2kb4ceA/CpfUrIcTUl1wrP/9ad9Atrp5J94Lq69w7UwOMolPIGrfLSvAKJp0RTvkPPyn6CIWrNy13kyLikZRZQ==", 192 + "cpu": [ 193 + "x64" 194 + ], 195 + "dev": true, 196 + "license": "MIT", 197 + "optional": true, 198 + "os": [ 199 + "freebsd" 200 + ], 201 + "engines": { 202 + "node": ">=18" 203 + } 204 + }, 205 + "node_modules/@esbuild/linux-arm": { 206 + "version": "0.27.4", 207 + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.4.tgz", 208 + "integrity": "sha512-aBYgcIxX/wd5n2ys0yESGeYMGF+pv6g0DhZr3G1ZG4jMfruU9Tl1i2Z+Wnj9/KjGz1lTLCcorqE2viePZqj4Eg==", 209 + "cpu": [ 210 + "arm" 211 + ], 212 + "dev": true, 213 + "license": "MIT", 214 + "optional": true, 215 + "os": [ 216 + "linux" 217 + ], 218 + "engines": { 219 + "node": ">=18" 220 + } 221 + }, 222 + "node_modules/@esbuild/linux-arm64": { 223 + "version": "0.27.4", 224 + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.4.tgz", 225 + "integrity": "sha512-7nQOttdzVGth1iz57kxg9uCz57dxQLHWxopL6mYuYthohPKEK0vU0C3O21CcBK6KDlkYVcnDXY099HcCDXd9dA==", 226 + "cpu": [ 227 + "arm64" 228 + ], 229 + "dev": true, 230 + "license": "MIT", 231 + "optional": true, 232 + "os": [ 233 + "linux" 234 + ], 235 + "engines": { 236 + "node": ">=18" 237 + } 238 + }, 239 + "node_modules/@esbuild/linux-ia32": { 240 + "version": "0.27.4", 241 + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.4.tgz", 242 + "integrity": "sha512-oPtixtAIzgvzYcKBQM/qZ3R+9TEUd1aNJQu0HhGyqtx6oS7qTpvjheIWBbes4+qu1bNlo2V4cbkISr8q6gRBFA==", 243 + "cpu": [ 244 + "ia32" 245 + ], 246 + "dev": true, 247 + "license": "MIT", 248 + "optional": true, 249 + "os": [ 250 + "linux" 251 + ], 252 + "engines": { 253 + "node": ">=18" 254 + } 255 + }, 256 + "node_modules/@esbuild/linux-loong64": { 257 + "version": "0.27.4", 258 + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.4.tgz", 259 + "integrity": "sha512-8mL/vh8qeCoRcFH2nM8wm5uJP+ZcVYGGayMavi8GmRJjuI3g1v6Z7Ni0JJKAJW+m0EtUuARb6Lmp4hMjzCBWzA==", 260 + "cpu": [ 261 + "loong64" 262 + ], 263 + "dev": true, 264 + "license": "MIT", 265 + "optional": true, 266 + "os": [ 267 + "linux" 268 + ], 269 + "engines": { 270 + "node": ">=18" 271 + } 272 + }, 273 + "node_modules/@esbuild/linux-mips64el": { 274 + "version": "0.27.4", 275 + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.4.tgz", 276 + "integrity": "sha512-1RdrWFFiiLIW7LQq9Q2NES+HiD4NyT8Itj9AUeCl0IVCA459WnPhREKgwrpaIfTOe+/2rdntisegiPWn/r/aAw==", 277 + "cpu": [ 278 + "mips64el" 279 + ], 280 + "dev": true, 281 + "license": "MIT", 282 + "optional": true, 283 + "os": [ 284 + "linux" 285 + ], 286 + "engines": { 287 + "node": ">=18" 288 + } 289 + }, 290 + "node_modules/@esbuild/linux-ppc64": { 291 + "version": "0.27.4", 292 + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.4.tgz", 293 + "integrity": "sha512-tLCwNG47l3sd9lpfyx9LAGEGItCUeRCWeAx6x2Jmbav65nAwoPXfewtAdtbtit/pJFLUWOhpv0FpS6GQAmPrHA==", 294 + "cpu": [ 295 + "ppc64" 296 + ], 297 + "dev": true, 298 + "license": "MIT", 299 + "optional": true, 300 + "os": [ 301 + "linux" 302 + ], 303 + "engines": { 304 + "node": ">=18" 305 + } 306 + }, 307 + "node_modules/@esbuild/linux-riscv64": { 308 + "version": "0.27.4", 309 + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.4.tgz", 310 + "integrity": "sha512-BnASypppbUWyqjd1KIpU4AUBiIhVr6YlHx/cnPgqEkNoVOhHg+YiSVxM1RLfiy4t9cAulbRGTNCKOcqHrEQLIw==", 311 + "cpu": [ 312 + "riscv64" 313 + ], 314 + "dev": true, 315 + "license": "MIT", 316 + "optional": true, 317 + "os": [ 318 + "linux" 319 + ], 320 + "engines": { 321 + "node": ">=18" 322 + } 323 + }, 324 + "node_modules/@esbuild/linux-s390x": { 325 + "version": "0.27.4", 326 + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.4.tgz", 327 + "integrity": "sha512-+eUqgb/Z7vxVLezG8bVB9SfBie89gMueS+I0xYh2tJdw3vqA/0ImZJ2ROeWwVJN59ihBeZ7Tu92dF/5dy5FttA==", 328 + "cpu": [ 329 + "s390x" 330 + ], 331 + "dev": true, 332 + "license": "MIT", 333 + "optional": true, 334 + "os": [ 335 + "linux" 336 + ], 337 + "engines": { 338 + "node": ">=18" 339 + } 340 + }, 341 + "node_modules/@esbuild/linux-x64": { 342 + "version": "0.27.4", 343 + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.4.tgz", 344 + "integrity": "sha512-S5qOXrKV8BQEzJPVxAwnryi2+Iq5pB40gTEIT69BQONqR7JH1EPIcQ/Uiv9mCnn05jff9umq/5nqzxlqTOg9NA==", 345 + "cpu": [ 346 + "x64" 347 + ], 348 + "dev": true, 349 + "license": "MIT", 350 + "optional": true, 351 + "os": [ 352 + "linux" 353 + ], 354 + "engines": { 355 + "node": ">=18" 356 + } 357 + }, 358 + "node_modules/@esbuild/netbsd-arm64": { 359 + "version": "0.27.4", 360 + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.4.tgz", 361 + "integrity": "sha512-xHT8X4sb0GS8qTqiwzHqpY00C95DPAq7nAwX35Ie/s+LO9830hrMd3oX0ZMKLvy7vsonee73x0lmcdOVXFzd6Q==", 362 + "cpu": [ 363 + "arm64" 364 + ], 365 + "dev": true, 366 + "license": "MIT", 367 + "optional": true, 368 + "os": [ 369 + "netbsd" 370 + ], 371 + "engines": { 372 + "node": ">=18" 373 + } 374 + }, 375 + "node_modules/@esbuild/netbsd-x64": { 376 + "version": "0.27.4", 377 + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.4.tgz", 378 + "integrity": "sha512-RugOvOdXfdyi5Tyv40kgQnI0byv66BFgAqjdgtAKqHoZTbTF2QqfQrFwa7cHEORJf6X2ht+l9ABLMP0dnKYsgg==", 379 + "cpu": [ 380 + "x64" 381 + ], 382 + "dev": true, 383 + "license": "MIT", 384 + "optional": true, 385 + "os": [ 386 + "netbsd" 387 + ], 388 + "engines": { 389 + "node": ">=18" 390 + } 391 + }, 392 + "node_modules/@esbuild/openbsd-arm64": { 393 + "version": "0.27.4", 394 + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.4.tgz", 395 + "integrity": "sha512-2MyL3IAaTX+1/qP0O1SwskwcwCoOI4kV2IBX1xYnDDqthmq5ArrW94qSIKCAuRraMgPOmG0RDTA74mzYNQA9ow==", 396 + "cpu": [ 397 + "arm64" 398 + ], 399 + "dev": true, 400 + "license": "MIT", 401 + "optional": true, 402 + "os": [ 403 + "openbsd" 404 + ], 405 + "engines": { 406 + "node": ">=18" 407 + } 408 + }, 409 + "node_modules/@esbuild/openbsd-x64": { 410 + "version": "0.27.4", 411 + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.4.tgz", 412 + "integrity": "sha512-u8fg/jQ5aQDfsnIV6+KwLOf1CmJnfu1ShpwqdwC0uA7ZPwFws55Ngc12vBdeUdnuWoQYx/SOQLGDcdlfXhYmXQ==", 413 + "cpu": [ 414 + "x64" 415 + ], 416 + "dev": true, 417 + "license": "MIT", 418 + "optional": true, 419 + "os": [ 420 + "openbsd" 421 + ], 422 + "engines": { 423 + "node": ">=18" 424 + } 425 + }, 426 + "node_modules/@esbuild/openharmony-arm64": { 427 + "version": "0.27.4", 428 + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.4.tgz", 429 + "integrity": "sha512-JkTZrl6VbyO8lDQO3yv26nNr2RM2yZzNrNHEsj9bm6dOwwu9OYN28CjzZkH57bh4w0I2F7IodpQvUAEd1mbWXg==", 430 + "cpu": [ 431 + "arm64" 432 + ], 433 + "dev": true, 434 + "license": "MIT", 435 + "optional": true, 436 + "os": [ 437 + "openharmony" 438 + ], 439 + "engines": { 440 + "node": ">=18" 441 + } 442 + }, 443 + "node_modules/@esbuild/sunos-x64": { 444 + "version": "0.27.4", 445 + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.4.tgz", 446 + "integrity": "sha512-/gOzgaewZJfeJTlsWhvUEmUG4tWEY2Spp5M20INYRg2ZKl9QPO3QEEgPeRtLjEWSW8FilRNacPOg8R1uaYkA6g==", 447 + "cpu": [ 448 + "x64" 449 + ], 450 + "dev": true, 451 + "license": "MIT", 452 + "optional": true, 453 + "os": [ 454 + "sunos" 455 + ], 456 + "engines": { 457 + "node": ">=18" 458 + } 459 + }, 460 + "node_modules/@esbuild/win32-arm64": { 461 + "version": "0.27.4", 462 + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.4.tgz", 463 + "integrity": "sha512-Z9SExBg2y32smoDQdf1HRwHRt6vAHLXcxD2uGgO/v2jK7Y718Ix4ndsbNMU/+1Qiem9OiOdaqitioZwxivhXYg==", 464 + "cpu": [ 465 + "arm64" 466 + ], 467 + "dev": true, 468 + "license": "MIT", 469 + "optional": true, 470 + "os": [ 471 + "win32" 472 + ], 473 + "engines": { 474 + "node": ">=18" 475 + } 476 + }, 477 + "node_modules/@esbuild/win32-ia32": { 478 + "version": "0.27.4", 479 + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.4.tgz", 480 + "integrity": "sha512-DAyGLS0Jz5G5iixEbMHi5KdiApqHBWMGzTtMiJ72ZOLhbu/bzxgAe8Ue8CTS3n3HbIUHQz/L51yMdGMeoxXNJw==", 481 + "cpu": [ 482 + "ia32" 483 + ], 484 + "dev": true, 485 + "license": "MIT", 486 + "optional": true, 487 + "os": [ 488 + "win32" 489 + ], 490 + "engines": { 491 + "node": ">=18" 492 + } 493 + }, 494 + "node_modules/@esbuild/win32-x64": { 495 + "version": "0.27.4", 496 + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.4.tgz", 497 + "integrity": "sha512-+knoa0BDoeXgkNvvV1vvbZX4+hizelrkwmGJBdT17t8FNPwG2lKemmuMZlmaNQ3ws3DKKCxpb4zRZEIp3UxFCg==", 498 + "cpu": [ 499 + "x64" 500 + ], 501 + "dev": true, 502 + "license": "MIT", 503 + "optional": true, 504 + "os": [ 505 + "win32" 506 + ], 507 + "engines": { 508 + "node": ">=18" 66 509 } 67 510 }, 68 511 "node_modules/@jridgewell/sourcemap-codec": { ··· 614 1057 "integrity": "sha512-5POEcUuZybH7IdmGsD8wlf0AI55wMecM9rVBTI/qEAy2c1kTOm3DjFYjrBdI2K3BaJjJYfYFeRtM0t9ssnRuxw==", 615 1058 "dev": true, 616 1059 "license": "MIT" 1060 + }, 1061 + "node_modules/esbuild": { 1062 + "version": "0.27.4", 1063 + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.4.tgz", 1064 + "integrity": "sha512-Rq4vbHnYkK5fws5NF7MYTU68FPRE1ajX7heQ/8QXXWqNgqqJ/GkmmyxIzUnf2Sr/bakf8l54716CcMGHYhMrrQ==", 1065 + "dev": true, 1066 + "hasInstallScript": true, 1067 + "license": "MIT", 1068 + "bin": { 1069 + "esbuild": "bin/esbuild" 1070 + }, 1071 + "engines": { 1072 + "node": ">=18" 1073 + }, 1074 + "optionalDependencies": { 1075 + "@esbuild/aix-ppc64": "0.27.4", 1076 + "@esbuild/android-arm": "0.27.4", 1077 + "@esbuild/android-arm64": "0.27.4", 1078 + "@esbuild/android-x64": "0.27.4", 1079 + "@esbuild/darwin-arm64": "0.27.4", 1080 + "@esbuild/darwin-x64": "0.27.4", 1081 + "@esbuild/freebsd-arm64": "0.27.4", 1082 + "@esbuild/freebsd-x64": "0.27.4", 1083 + "@esbuild/linux-arm": "0.27.4", 1084 + "@esbuild/linux-arm64": "0.27.4", 1085 + "@esbuild/linux-ia32": "0.27.4", 1086 + "@esbuild/linux-loong64": "0.27.4", 1087 + "@esbuild/linux-mips64el": "0.27.4", 1088 + "@esbuild/linux-ppc64": "0.27.4", 1089 + "@esbuild/linux-riscv64": "0.27.4", 1090 + "@esbuild/linux-s390x": "0.27.4", 1091 + "@esbuild/linux-x64": "0.27.4", 1092 + "@esbuild/netbsd-arm64": "0.27.4", 1093 + "@esbuild/netbsd-x64": "0.27.4", 1094 + "@esbuild/openbsd-arm64": "0.27.4", 1095 + "@esbuild/openbsd-x64": "0.27.4", 1096 + "@esbuild/openharmony-arm64": "0.27.4", 1097 + "@esbuild/sunos-x64": "0.27.4", 1098 + "@esbuild/win32-arm64": "0.27.4", 1099 + "@esbuild/win32-ia32": "0.27.4", 1100 + "@esbuild/win32-x64": "0.27.4" 1101 + } 617 1102 }, 618 1103 "node_modules/estree-walker": { 619 1104 "version": "3.0.3",
+4 -1
package.json
··· 1 1 { 2 2 "name": "@myobie/pty", 3 - "version": "0.1.0", 3 + "version": "0.1.1", 4 4 "description": "Persistent terminal sessions with detach/attach support", 5 5 "type": "module", 6 6 "license": "MIT", ··· 33 33 "./tui": "./src/tui/index.ts" 34 34 }, 35 35 "scripts": { 36 + "build": "esbuild src/cli.ts --bundle --platform=node --format=esm --outfile=bin/cli.js --external:node-pty --external:@xterm/headless --external:@xterm/addon-serialize --external:@preact/signals-core", 37 + "prepublishOnly": "npm run build", 36 38 "prepare": "git config core.hooksPath githooks 2>/dev/null || true; chmod +x node_modules/node-pty/prebuilds/darwin-*/spawn-helper 2>/dev/null || true; sh scripts/update-nix-hash.sh 2>/dev/null || true", 37 39 "install-completions": "sh scripts/install-completions.sh", 38 40 "typecheck": "tsc", ··· 56 58 "devDependencies": { 57 59 "@preact/signals-core": "^1.14.0", 58 60 "@types/node": "^25.3.5", 61 + "esbuild": "^0.27.4", 59 62 "typescript": "^5.7.0", 60 63 "vitest": "^4.1.1" 61 64 }