@grackle-ai/web-components 0.112.2 → 0.114.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 (48) hide show
  1. package/.rush/temp/{a0341c0f1c835c664217d8a879aa38d780e62122.tar.log → 989dfd9dfc66be6288052dccbf2952ddad9066c6.tar.log} +2 -2
  2. package/.rush/temp/{1421806d07f6b0c455deca4bf89a6412726ffd8b.untar.log → 989dfd9dfc66be6288052dccbf2952ddad9066c6.untar.log} +2 -2
  3. package/.rush/temp/{1421806d07f6b0c455deca4bf89a6412726ffd8b.tar.log → b1a36bcc314d65fbd843fcff6d3127ebdf827e06.tar.log} +81 -81
  4. package/.rush/temp/{a0341c0f1c835c664217d8a879aa38d780e62122.untar.log → b1a36bcc314d65fbd843fcff6d3127ebdf827e06.untar.log} +2 -2
  5. package/.rush/temp/chunked-rush-logs/web-components._phase_build.chunks.jsonl +7 -6
  6. package/.rush/temp/chunked-rush-logs/web-components._phase_test.chunks.jsonl +25 -24
  7. package/.rush/temp/operation/_phase_build/all.log +7 -6
  8. package/.rush/temp/operation/_phase_build/log-chunks.jsonl +7 -6
  9. package/.rush/temp/operation/_phase_build/state.json +1 -1
  10. package/.rush/temp/operation/_phase_test/all.log +25 -24
  11. package/.rush/temp/operation/_phase_test/log-chunks.jsonl +25 -24
  12. package/.rush/temp/operation/_phase_test/state.json +1 -1
  13. package/README.md +2 -1
  14. package/dist/McpAppWidget-CSX2W2Vb.js +5774 -0
  15. package/dist/index.css +1 -1
  16. package/dist/index.js +12221 -17764
  17. package/package.json +2 -2
  18. package/rush-logs/web-components._phase_build.cache.log +1 -1
  19. package/rush-logs/web-components._phase_build.log +7 -6
  20. package/rush-logs/web-components._phase_test.cache.log +1 -1
  21. package/rush-logs/web-components._phase_test.log +25 -24
  22. package/src/components/display/EventRenderer.stories.tsx +22 -0
  23. package/src/components/display/EventRenderer.tsx +44 -2
  24. package/src/components/display/EventStream.tsx +4 -1
  25. package/src/components/display/index.ts +3 -1
  26. package/src/components/layout/AppNav.stories.tsx +5 -5
  27. package/src/components/layout/AppNav.tsx +8 -4
  28. package/src/components/panels/KeyboardShortcutsPanel.stories.tsx +1 -1
  29. package/src/components/panels/KeyboardShortcutsPanel.tsx +1 -1
  30. package/src/components/streams/CoordinationList.module.scss +137 -0
  31. package/src/components/streams/CoordinationList.stories.tsx +95 -0
  32. package/src/components/streams/CoordinationList.tsx +153 -0
  33. package/src/components/streams/StreamDetailPanel.module.scss +30 -0
  34. package/src/components/streams/StreamDetailPanel.stories.tsx +3 -0
  35. package/src/components/streams/StreamDetailPanel.tsx +58 -24
  36. package/src/components/streams/index.ts +3 -3
  37. package/src/hooks/types.ts +9 -2
  38. package/src/index.ts +5 -5
  39. package/src/mocks/MockGrackleProvider.tsx +15 -3
  40. package/src/mocks/mockData.ts +4 -0
  41. package/src/mocks/mockStreamsData.ts +80 -0
  42. package/src/utils/navigation.ts +3 -5
  43. package/src/utils/streamCoordination.test.ts +88 -0
  44. package/src/utils/streamCoordination.ts +108 -0
  45. package/temp/build/lint/_eslint-5eVG3S6w.json +42 -30
  46. package/src/components/streams/StreamList.module.scss +0 -92
  47. package/src/components/streams/StreamList.stories.tsx +0 -99
  48. package/src/components/streams/StreamList.tsx +0 -114
@@ -5,30 +5,31 @@
5
5
  {"kind":"O","text":"\n"}
6
6
  {"kind":"O","text":"\u001b[1m\u001b[46m RUN \u001b[49m\u001b[22m \u001b[36mv3.2.4 \u001b[39m\u001b[90m/home/runner/work/grackle/grackle/packages/web-components\u001b[39m\n"}
7
7
  {"kind":"O","text":"\n"}
8
- {"kind":"O","text":" \u001b[32m✓\u001b[39m src/utils/sessionEvents.test.ts \u001b[2m(\u001b[22m\u001b[2m14 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 60\u001b[2mms\u001b[22m\u001b[39m\n"}
9
- {"kind":"O","text":" \u001b[32m✓\u001b[39m src/utils/eventContent.test.ts \u001b[2m(\u001b[22m\u001b[2m38 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 155\u001b[2mms\u001b[22m\u001b[39m\n"}
10
- {"kind":"O","text":" \u001b[32m✓\u001b[39m src/utils/dashboard.test.ts \u001b[2m(\u001b[22m\u001b[2m4 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 37\u001b[2mms\u001b[22m\u001b[39m\n"}
11
- {"kind":"O","text":" \u001b[32m✓\u001b[39m src/utils/route-config.test.ts \u001b[2m(\u001b[22m\u001b[2m23 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 50\u001b[2mms\u001b[22m\u001b[39m\n"}
12
- {"kind":"O","text":" \u001b[32m✓\u001b[39m src/utils/scrollUtils.test.ts \u001b[2m(\u001b[22m\u001b[2m11 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 20\u001b[2mms\u001b[22m\u001b[39m\n"}
13
- {"kind":"O","text":" \u001b[32m✓\u001b[39m src/utils/breadcrumbs.test.ts \u001b[2m(\u001b[22m\u001b[2m18 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 65\u001b[2mms\u001b[22m\u001b[39m\n"}
14
- {"kind":"O","text":" \u001b[32m✓\u001b[39m src/components/tools/classifyTool.test.ts \u001b[2m(\u001b[22m\u001b[2m6 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 22\u001b[2mms\u001b[22m\u001b[39m\n"}
15
- {"kind":"O","text":" \u001b[32m✓\u001b[39m src/components/tools/toolCardHelpers.test.ts \u001b[2m(\u001b[22m\u001b[2m10 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 28\u001b[2mms\u001b[22m\u001b[39m\n"}
16
- {"kind":"O","text":" \u001b[32m✓\u001b[39m src/utils/assetUrl.test.ts \u001b[2m(\u001b[22m\u001b[2m3 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 18\u001b[2mms\u001b[22m\u001b[39m\n"}
17
- {"kind":"O","text":" \u001b[32m✓\u001b[39m src/components/display/extractText.test.tsx \u001b[2m(\u001b[22m\u001b[2m8 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 17\u001b[2mms\u001b[22m\u001b[39m\n"}
18
- {"kind":"O","text":" \u001b[32m✓\u001b[39m src/components/editable/useEditableField.test.tsx \u001b[2m(\u001b[22m\u001b[2m17 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 206\u001b[2mms\u001b[22m\u001b[39m\n"}
19
- {"kind":"O","text":" \u001b[32m✓\u001b[39m src/hooks/useEventSelection.test.ts \u001b[2m(\u001b[22m\u001b[2m13 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 146\u001b[2mms\u001b[22m\u001b[39m\n"}
20
- {"kind":"O","text":" \u001b[32m✓\u001b[39m src/components/notifications/UpdateBanner.test.tsx \u001b[2m(\u001b[22m\u001b[2m4 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 199\u001b[2mms\u001b[22m\u001b[39m\n"}
21
- {"kind":"O","text":" \u001b[32m✓\u001b[39m src/utils/grackleHostStyleVariables.test.ts \u001b[2m(\u001b[22m\u001b[2m2 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[33m 445\u001b[2mms\u001b[22m\u001b[39m\n"}
22
- {"kind":"O","text":" \u001b[33m\u001b[2m✓\u001b[22m\u001b[39m grackleHostStyleVariables\u001b[2m > \u001b[22malways returns the MCP-standard fallback variables \u001b[33m 416\u001b[2mms\u001b[22m\u001b[39m\n"}
23
- {"kind":"O","text":" \u001b[32m✓\u001b[39m src/components/display/McpAppWidget.test.tsx \u001b[2m(\u001b[22m\u001b[2m3 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 258\u001b[2mms\u001b[22m\u001b[39m\n"}
24
- {"kind":"O","text":"\n"}
25
- {"kind":"O","text":"\u001b[2m Test Files \u001b[22m \u001b[1m\u001b[32m15 passed\u001b[39m\u001b[22m\u001b[90m (15)\u001b[39m\n"}
26
- {"kind":"O","text":"\u001b[2m Tests \u001b[22m \u001b[1m\u001b[32m174 passed\u001b[39m\u001b[22m\u001b[90m (174)\u001b[39m\n"}
27
- {"kind":"O","text":"\u001b[2m Start at \u001b[22m 23:48:14\n"}
28
- {"kind":"O","text":"\u001b[2m Duration \u001b[22m 16.41s\u001b[2m (transform 2.75s, setup 0ms, collect 18.15s, tests 1.73s, environment 14.38s, prepare 5.42s)\u001b[22m\n"}
8
+ {"kind":"O","text":" \u001b[32m✓\u001b[39m src/utils/sessionEvents.test.ts \u001b[2m(\u001b[22m\u001b[2m14 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 67\u001b[2mms\u001b[22m\u001b[39m\n"}
9
+ {"kind":"O","text":" \u001b[32m✓\u001b[39m src/utils/eventContent.test.ts \u001b[2m(\u001b[22m\u001b[2m38 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 187\u001b[2mms\u001b[22m\u001b[39m\n"}
10
+ {"kind":"O","text":" \u001b[32m✓\u001b[39m src/utils/dashboard.test.ts \u001b[2m(\u001b[22m\u001b[2m4 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 38\u001b[2mms\u001b[22m\u001b[39m\n"}
11
+ {"kind":"O","text":" \u001b[32m✓\u001b[39m src/utils/route-config.test.ts \u001b[2m(\u001b[22m\u001b[2m23 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 90\u001b[2mms\u001b[22m\u001b[39m\n"}
12
+ {"kind":"O","text":" \u001b[32m✓\u001b[39m src/utils/streamCoordination.test.ts \u001b[2m(\u001b[22m\u001b[2m10 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 29\u001b[2mms\u001b[22m\u001b[39m\n"}
13
+ {"kind":"O","text":" \u001b[32m✓\u001b[39m src/utils/breadcrumbs.test.ts \u001b[2m(\u001b[22m\u001b[2m18 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 41\u001b[2mms\u001b[22m\u001b[39m\n"}
14
+ {"kind":"O","text":" \u001b[32m✓\u001b[39m src/utils/scrollUtils.test.ts \u001b[2m(\u001b[22m\u001b[2m11 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 41\u001b[2mms\u001b[22m\u001b[39m\n"}
15
+ {"kind":"O","text":" \u001b[32m✓\u001b[39m src/components/tools/classifyTool.test.ts \u001b[2m(\u001b[22m\u001b[2m6 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 19\u001b[2mms\u001b[22m\u001b[39m\n"}
16
+ {"kind":"O","text":" \u001b[32m✓\u001b[39m src/components/tools/toolCardHelpers.test.ts \u001b[2m(\u001b[22m\u001b[2m10 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 14\u001b[2mms\u001b[22m\u001b[39m\n"}
17
+ {"kind":"O","text":" \u001b[32m✓\u001b[39m src/utils/assetUrl.test.ts \u001b[2m(\u001b[22m\u001b[2m3 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 11\u001b[2mms\u001b[22m\u001b[39m\n"}
18
+ {"kind":"O","text":" \u001b[32m✓\u001b[39m src/components/display/extractText.test.tsx \u001b[2m(\u001b[22m\u001b[2m8 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 12\u001b[2mms\u001b[22m\u001b[39m\n"}
19
+ {"kind":"O","text":" \u001b[32m✓\u001b[39m src/hooks/useEventSelection.test.ts \u001b[2m(\u001b[22m\u001b[2m13 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 244\u001b[2mms\u001b[22m\u001b[39m\n"}
20
+ {"kind":"O","text":" \u001b[32m✓\u001b[39m src/components/editable/useEditableField.test.tsx \u001b[2m(\u001b[22m\u001b[2m17 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 231\u001b[2mms\u001b[22m\u001b[39m\n"}
21
+ {"kind":"O","text":" \u001b[32m✓\u001b[39m src/components/notifications/UpdateBanner.test.tsx \u001b[2m(\u001b[22m\u001b[2m4 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 169\u001b[2mms\u001b[22m\u001b[39m\n"}
22
+ {"kind":"O","text":" \u001b[32m✓\u001b[39m src/components/display/McpAppWidget.test.tsx \u001b[2m(\u001b[22m\u001b[2m3 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[32m 234\u001b[2mms\u001b[22m\u001b[39m\n"}
23
+ {"kind":"O","text":" \u001b[32m✓\u001b[39m src/utils/grackleHostStyleVariables.test.ts \u001b[2m(\u001b[22m\u001b[2m2 tests\u001b[22m\u001b[2m)\u001b[22m\u001b[33m 477\u001b[2mms\u001b[22m\u001b[39m\n"}
24
+ {"kind":"O","text":" \u001b[33m\u001b[2m✓\u001b[22m\u001b[39m grackleHostStyleVariables\u001b[2m > \u001b[22malways returns the MCP-standard fallback variables \u001b[33m 467\u001b[2mms\u001b[22m\u001b[39m\n"}
25
+ {"kind":"O","text":"\n"}
26
+ {"kind":"O","text":"\u001b[2m Test Files \u001b[22m \u001b[1m\u001b[32m16 passed\u001b[39m\u001b[22m\u001b[90m (16)\u001b[39m\n"}
27
+ {"kind":"O","text":"\u001b[2m Tests \u001b[22m \u001b[1m\u001b[32m184 passed\u001b[39m\u001b[22m\u001b[90m (184)\u001b[39m\n"}
28
+ {"kind":"O","text":"\u001b[2m Start at \u001b[22m 08:12:34\n"}
29
+ {"kind":"O","text":"\u001b[2m Duration \u001b[22m 15.79s\u001b[2m (transform 2.74s, setup 0ms, collect 15.85s, tests 1.90s, environment 10.61s, prepare 6.00s)\u001b[22m\n"}
29
30
  {"kind":"O","text":"\n"}
30
31
  {"kind":"O","text":"[test:vitest] Vitest completed.\n"}
31
- {"kind":"O","text":"[test:storybook-test] Starting Storybook static server on port 36655...\n"}
32
+ {"kind":"O","text":"[test:storybook-test] Starting Storybook static server on port 45781...\n"}
32
33
  {"kind":"O","text":"[test:storybook-test] Storybook server ready. Running interaction tests...\n"}
33
34
  {"kind":"O","text":"jest-haste-map: duplicate manual mock found: adapter-manager\n"}
34
35
  {"kind":"O","text":" The following files share their name; please delete one of them:\n"}
@@ -121,5 +122,5 @@
121
122
  {"kind":"O","text":" * <rootDir>/packages/server/src/__mocks__/utils/network.ts\n"}
122
123
  {"kind":"O","text":"\n"}
123
124
  {"kind":"O","text":"[test:storybook-test] Storybook interaction tests completed.\n"}
124
- {"kind":"O","text":" ---- test finished (113.186s) ---- \n"}
125
- {"kind":"O","text":"-------------------- Finished (113.19s) --------------------\n"}
125
+ {"kind":"O","text":" ---- test finished (111.929s) ---- \n"}
126
+ {"kind":"O","text":"-------------------- Finished (111.943s) --------------------\n"}
@@ -1,3 +1,3 @@
1
1
  {
2
- "nonCachedDurationMs": 114332.20314299999
2
+ "nonCachedDurationMs": 113168.951837
3
3
  }
package/README.md CHANGED
@@ -34,6 +34,7 @@ Components are grouped by area under `src/components/`:
34
34
  |----------|----------|
35
35
  | **Display primitives** | `Button`, `SplitButton`, `CopyButton`, `Tooltip`, `Breadcrumbs`, `ConfirmDialog`, `Skeleton`, `Spinner`, `SplashScreen`, `FloatingActionBar` |
36
36
  | **Event stream** | `EventStream`, `EventRenderer`, `EventHoverRow`, `SessionPicker`, `SessionAttemptSelector` |
37
+ | **MCP Apps widgets** | `widget` events render in a sandboxed iframe via `EventRenderer`/`EventStream` — pass `sandboxProxyUrl`. The host renderer `McpAppWidget` is loaded internally (lazy/code-split) and is **not** a value export; only its prop types (`McpAppWidgetProps`) and `grackleHostStyleVariables` are exported. |
37
38
  | **Tool cards** | `ToolCard`, `FileEditCard`, `FileReadCard`, `ShellCard`, `SearchCard`, `TodoCard`, `MetadataCard`, `AgentToolCard`, `GenericToolCard` |
38
39
  | **Layout** | `AppNav`, `Sidebar`, `StatusBar`, `BottomStatusBar` |
39
40
  | **Lists** | `TaskList`, `EnvironmentNav`, `FindingsNav` |
@@ -44,7 +45,7 @@ Components are grouped by area under `src/components/`:
44
45
  | **Notifications** | `Toast`, `ToastContainer`, `Callout`, `UpdateBanner` |
45
46
  | **Workspace & boards** | `WorkspaceBoard`, `WorkspaceFormFields` |
46
47
  | **Personas & schedules** | `PersonaManager`, `McpToolSelector`, `ScheduleManager` |
47
- | **Chat & streams** | `ChatInput`, `StreamList`, `StreamDetailPanel` |
48
+ | **Chat & coordination** | `ChatInput`, `CoordinationList`, `StreamDetailPanel` |
48
49
  | **Settings** | `SettingsNav` |
49
50
 
50
51
  Alongside the components, the package exports: