@vitest-agent/ui 4.1.0 → 5.0.0

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 (37) hide show
  1. package/README.md +3 -3
  2. package/dispatcher/cells/single-file-fail.js +1 -5
  3. package/dispatcher/cells/single-file-pass.js +1 -5
  4. package/dispatcher/cells/single-file-threshold.js +1 -5
  5. package/dispatcher/cells/single-project-fail.js +1 -5
  6. package/dispatcher/cells/single-project-pass.js +1 -5
  7. package/dispatcher/cells/single-project-threshold.js +1 -5
  8. package/dispatcher/cells/single-test-fail.js +1 -5
  9. package/dispatcher/cells/single-test-pass.js +1 -5
  10. package/dispatcher/cells/workspace-fail.js +1 -5
  11. package/dispatcher/cells/workspace-pass.js +1 -5
  12. package/dispatcher/cells/workspace-threshold.js +1 -5
  13. package/dispatcher/dispatch.js +20 -25
  14. package/index.d.ts +45 -316
  15. package/index.js +4 -17
  16. package/{render-ink → ink}/CountColumns.js +2 -2
  17. package/{render-ink → ink}/CoverageBlock.js +2 -2
  18. package/{render-ink → ink}/FailureSection.js +2 -2
  19. package/{render-ink → ink}/FailuresSection.js +2 -2
  20. package/{render-ink → ink}/ModuleHeader.js +1 -1
  21. package/{render-ink → ink}/ProjectRow.js +1 -1
  22. package/{render-ink → ink}/StatusIcon.js +2 -2
  23. package/{render-ink → ink}/StreamApp.js +14 -5
  24. package/{render-ink → ink}/SuggestedActions.js +2 -2
  25. package/{render-ink → ink}/TagColumns.js +1 -1
  26. package/{render-ink → ink}/TestRow.js +1 -1
  27. package/{render-ink → ink}/TrendLine.js +2 -2
  28. package/ink/dispatch-ink.js +61 -0
  29. package/{dispatcher → ink}/ink-helpers.js +1 -1
  30. package/ink.d.ts +789 -0
  31. package/ink.js +15 -0
  32. package/package.json +12 -7
  33. package/reducer.js +2 -1
  34. package/render-agent.js +2 -0
  35. package/{render-ink/spinner.js → spinner.js} +1 -1
  36. package/synthesize.js +2 -1
  37. package/render-ink/index.js +0 -15
package/ink.js ADDED
@@ -0,0 +1,15 @@
1
+ import { CountColumns, DURATION_CELL_WIDTH } from "./ink/CountColumns.js";
2
+ import { CoverageBlock } from "./ink/CoverageBlock.js";
3
+ import { dispatchInk, inkDispatcherTable } from "./ink/dispatch-ink.js";
4
+ import { FailureSection } from "./ink/FailureSection.js";
5
+ import { FailuresSection } from "./ink/FailuresSection.js";
6
+ import { StatusIcon } from "./ink/StatusIcon.js";
7
+ import { ModuleHeader } from "./ink/ModuleHeader.js";
8
+ import { TagColumns, tagUnion } from "./ink/TagColumns.js";
9
+ import { ProjectRow } from "./ink/ProjectRow.js";
10
+ import { TestRow } from "./ink/TestRow.js";
11
+ import { TrendLine } from "./ink/TrendLine.js";
12
+ import { StreamApp } from "./ink/StreamApp.js";
13
+ import { SuggestedActions } from "./ink/SuggestedActions.js";
14
+
15
+ export { CountColumns, CoverageBlock, DURATION_CELL_WIDTH, FailureSection, FailuresSection, ModuleHeader, ProjectRow, StatusIcon, StreamApp, SuggestedActions, TagColumns, TestRow, TrendLine, dispatchInk, inkDispatcherTable, tagUnion };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vitest-agent/ui",
3
- "version": "4.1.0",
3
+ "version": "5.0.0",
4
4
  "private": false,
5
5
  "description": "Shared event-sourced renderer for vitest-agent. React Ink view for humans, plain-string view for agents, both fed by the same reducer over a RunEvent stream.",
6
6
  "keywords": [
@@ -36,26 +36,31 @@
36
36
  "import": "./index.js",
37
37
  "default": "./index.js"
38
38
  },
39
+ "./ink": {
40
+ "types": "./ink.d.ts",
41
+ "import": "./ink.js",
42
+ "default": "./ink.js"
43
+ },
39
44
  "./package.json": "./package.json"
40
45
  },
41
46
  "dependencies": {
42
- "@vitest-agent/sdk": "6.1.0",
43
- "effect": "^4.0.0"
47
+ "@vitest-agent/sdk": "7.0.0",
48
+ "effect": "^4.0.2"
44
49
  },
45
50
  "peerDependencies": {
46
- "@effected/cli": "^0.12.0",
51
+ "@effected/cli": "^0.15.0",
47
52
  "@effected/env": "^0.1.0",
48
53
  "@effected/glob": "^0.10.0",
49
54
  "@effected/walker": "^0.15.0",
50
- "ink": "^7.1.0",
55
+ "ink": "^8.0.0",
51
56
  "react": "^19.3.0"
52
57
  },
53
58
  "peerDependenciesMeta": {
54
59
  "ink": {
55
- "optional": false
60
+ "optional": true
56
61
  },
57
62
  "react": {
58
- "optional": false
63
+ "optional": true
59
64
  }
60
65
  },
61
66
  "engines": {
package/reducer.js CHANGED
@@ -224,7 +224,8 @@ const reduceRenderState = (state, event) => {
224
224
  durationMs: e.durationMs
225
225
  },
226
226
  ...e.collectedModules !== void 0 && { collectedModules: e.collectedModules },
227
- ...e.unhandledErrors !== void 0 && { unhandledErrors: e.unhandledErrors }
227
+ ...e.unhandledErrors !== void 0 && { unhandledErrors: e.unhandledErrors },
228
+ ...e.strayOutput !== void 0 && { strayOutput: e.strayOutput }
228
229
  }),
229
230
  RunTimedOut: () => ({
230
231
  ...state,
package/render-agent.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import { formatTotalsLine } from "./counts.js";
2
2
  import { formatFailure as formatFailure$1, formatGlobShortfallLines } from "./dispatcher/helpers.js";
3
+ import { formatStrayOutputNote } from "@vitest-agent/sdk";
3
4
  import { Fmt } from "@effected/cli";
4
5
 
5
6
  //#region src/render-agent.ts
@@ -141,6 +142,7 @@ const renderAgent = (state, options = {}) => {
141
142
  if (coverage !== null) sections.push(coverage);
142
143
  const actions = formatActionsSection(state);
143
144
  if (actions !== null) sections.push(actions);
145
+ if (state.strayOutput !== void 0) sections.push(formatStrayOutputNote(state.strayOutput).join("\n"));
144
146
  return `${sections.join("\n\n")}\n`;
145
147
  };
146
148
 
@@ -1,6 +1,6 @@
1
1
  import { Glyphs } from "@effected/cli";
2
2
 
3
- //#region src/render-ink/spinner.ts
3
+ //#region src/spinner.ts
4
4
  /**
5
5
  * The Unicode spinner frames, in animation order (`Glyphs.unicode.spinner`).
6
6
  *
package/synthesize.js CHANGED
@@ -386,7 +386,8 @@ const synthesizeFromAgentReport = (report, options = {}) => {
386
386
  durationMs: report.summary.duration,
387
387
  ...totalTimeoutCount > 0 && { timeoutCount: totalTimeoutCount },
388
388
  ...report.summary.modules !== void 0 && { collectedModules: report.summary.modules },
389
- ...report.unhandledErrors.length > 0 && { unhandledErrors: report.unhandledErrors }
389
+ ...report.unhandledErrors.length > 0 && { unhandledErrors: report.unhandledErrors },
390
+ ...report.strayOutput !== void 0 && { strayOutput: report.strayOutput }
390
391
  });
391
392
  return events;
392
393
  };
@@ -1,15 +0,0 @@
1
- import { CountColumns, DURATION_CELL_WIDTH } from "./CountColumns.js";
2
- import { CoverageBlock } from "./CoverageBlock.js";
3
- import { FailureSection } from "./FailureSection.js";
4
- import { FailuresSection } from "./FailuresSection.js";
5
- import { StatusIcon } from "./StatusIcon.js";
6
- import { ModuleHeader } from "./ModuleHeader.js";
7
- import { TagColumns, tagUnion } from "./TagColumns.js";
8
- import { ProjectRow } from "./ProjectRow.js";
9
- import { SPINNER_FRAMES, SPINNER_FRAME_MS, spinnerFrame } from "./spinner.js";
10
- import { TestRow } from "./TestRow.js";
11
- import { TrendLine } from "./TrendLine.js";
12
- import { StreamApp } from "./StreamApp.js";
13
- import { SuggestedActions } from "./SuggestedActions.js";
14
-
15
- export { CountColumns, CoverageBlock, DURATION_CELL_WIDTH, FailureSection, FailuresSection, ModuleHeader, ProjectRow, SPINNER_FRAMES, SPINNER_FRAME_MS, StatusIcon, StreamApp, SuggestedActions, TagColumns, TestRow, TrendLine, spinnerFrame, tagUnion };