terminal-pilot 0.0.39 → 0.0.41

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/README.md +13 -1
  2. package/dist/cli.js +24 -4
  3. package/dist/cli.js.map +2 -2
  4. package/dist/commands/close-session.js +9 -1
  5. package/dist/commands/close-session.js.map +2 -2
  6. package/dist/commands/create-session.js +9 -1
  7. package/dist/commands/create-session.js.map +2 -2
  8. package/dist/commands/daemon-runtime.js +13 -2
  9. package/dist/commands/daemon-runtime.js.map +2 -2
  10. package/dist/commands/fill.js +9 -1
  11. package/dist/commands/fill.js.map +2 -2
  12. package/dist/commands/get-session.js +9 -1
  13. package/dist/commands/get-session.js.map +2 -2
  14. package/dist/commands/index.d.ts +4 -0
  15. package/dist/commands/index.js +19 -2
  16. package/dist/commands/index.js.map +2 -2
  17. package/dist/commands/list-sessions.js +9 -1
  18. package/dist/commands/list-sessions.js.map +2 -2
  19. package/dist/commands/press-key.js +9 -1
  20. package/dist/commands/press-key.js.map +2 -2
  21. package/dist/commands/read-history.js +9 -1
  22. package/dist/commands/read-history.js.map +2 -2
  23. package/dist/commands/read-screen.js +9 -1
  24. package/dist/commands/read-screen.js.map +2 -2
  25. package/dist/commands/resize.js +9 -1
  26. package/dist/commands/resize.js.map +2 -2
  27. package/dist/commands/runtime.js +9 -1
  28. package/dist/commands/runtime.js.map +2 -2
  29. package/dist/commands/screenshot.js +9 -1
  30. package/dist/commands/screenshot.js.map +2 -2
  31. package/dist/commands/send-signal.js +9 -1
  32. package/dist/commands/send-signal.js.map +2 -2
  33. package/dist/commands/type.js +9 -1
  34. package/dist/commands/type.js.map +2 -2
  35. package/dist/commands/wait-for-exit.js +9 -1
  36. package/dist/commands/wait-for-exit.js.map +2 -2
  37. package/dist/commands/wait-for.d.ts +2 -0
  38. package/dist/commands/wait-for.js +19 -2
  39. package/dist/commands/wait-for.js.map +2 -2
  40. package/dist/index.js +9 -1
  41. package/dist/index.js.map +2 -2
  42. package/dist/terminal-pilot.js +9 -1
  43. package/dist/terminal-pilot.js.map +2 -2
  44. package/dist/terminal-session.d.ts +1 -0
  45. package/dist/terminal-session.js +9 -1
  46. package/dist/terminal-session.js.map +2 -2
  47. package/dist/testing/cli-repl.js +24 -4
  48. package/dist/testing/cli-repl.js.map +2 -2
  49. package/dist/testing/qa-cli.js +24 -4
  50. package/dist/testing/qa-cli.js.map +2 -2
  51. package/node_modules/toolcraft-design/dist/index.d.ts +2 -2
  52. package/node_modules/toolcraft-design/dist/index.js +1 -1
  53. package/node_modules/toolcraft-design/dist/render-markdown-plaintext.d.ts +2 -0
  54. package/node_modules/toolcraft-design/dist/render-markdown-plaintext.js +1 -0
  55. package/node_modules/toolcraft-design/dist/terminal-markdown/index.d.ts +2 -0
  56. package/node_modules/toolcraft-design/dist/terminal-markdown/index.js +1 -0
  57. package/node_modules/toolcraft-design/dist/terminal-markdown/parser/inline.js +38 -2
  58. package/node_modules/toolcraft-design/dist/terminal-markdown/plaintext-renderer.d.ts +11 -0
  59. package/node_modules/toolcraft-design/dist/terminal-markdown/plaintext-renderer.js +228 -0
  60. package/node_modules/toolcraft-design/package.json +4 -0
  61. package/package.json +1 -1
@@ -1986,10 +1986,13 @@ var TerminalSession = class {
1986
1986
  }
1987
1987
  async waitFor(pattern, opts) {
1988
1988
  const timeout = opts?.timeout ?? DEFAULT_TIMEOUT_MS;
1989
+ const scope = opts?.scope ?? "history";
1989
1990
  assertTimeout(timeout);
1991
+ assertWaitScope(scope);
1990
1992
  const startedAt = Date.now();
1991
1993
  while (Date.now() - startedAt <= timeout) {
1992
- const matched = matchPattern(this.rawBuffer, pattern);
1994
+ const source = scope === "screen" ? (await this.screen()).text : this.rawBuffer;
1995
+ const matched = matchPattern(source, pattern);
1993
1996
  if (matched !== null) {
1994
1997
  return matched;
1995
1998
  }
@@ -2110,6 +2113,11 @@ function assertTimeout(timeout) {
2110
2113
  throw new Error("Timeout must be a finite non-negative number.");
2111
2114
  }
2112
2115
  }
2116
+ function assertWaitScope(scope) {
2117
+ if (scope !== "history" && scope !== "screen") {
2118
+ throw new Error('Wait scope must be either "history" or "screen".');
2119
+ }
2120
+ }
2113
2121
  function assertQuietPeriod(duration) {
2114
2122
  if (!Number.isFinite(duration) || duration < 0) {
2115
2123
  throw new Error("Quiet period must be a finite non-negative number.");