@truefoundry/trueforge-ui 0.3.0 → 0.3.1

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 (83) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/{AgentCodeSnippets-EK7KMIY2.js → AgentCodeSnippets-DAZWEBJS.js} +7 -7
  3. package/dist/AgentMetricChart-VDIE3S2P.js +15 -0
  4. package/dist/{AgentOverview-5UPMYHT2.js → AgentOverview-5JIVYXPX.js} +7 -7
  5. package/dist/{AgentSessionEventTimeline-V6NPCYMW.js → AgentSessionEventTimeline-WELJSS6O.js} +7 -7
  6. package/dist/{AgentSessionEventTimelineChart-YQWZBQCG.js → AgentSessionEventTimelineChart-ADB3KICM.js} +7 -7
  7. package/dist/{AgentSessions-WNYVVB6Q.js → AgentSessions-NSN4LIGJ.js} +8 -8
  8. package/dist/{ConnectorSettings-O4I24244.js → ConnectorSettings-C6MFCKYX.js} +7 -7
  9. package/dist/{DockLayout-JMBZVMGB.js → DockLayout-VY7OZ55R.js} +10 -10
  10. package/dist/{DrawerLayout-E6G3IF6R.js → DrawerLayout-B2UA3CZO.js} +11 -11
  11. package/dist/{ModelSettings-ZVXMXIU4.js → ModelSettings-3YAHICJ3.js} +9 -9
  12. package/dist/ModelSettings-3YAHICJ3.js.map +1 -0
  13. package/dist/OpenUiFenceBlock-BZPFNXWZ.js +9 -0
  14. package/dist/{SandboxSettings-H6BA2DJQ.js → SandboxSettings-ALR6F5KU.js} +7 -7
  15. package/dist/SchedulesPage-TIS3BH67.js +15 -0
  16. package/dist/{SettingsBuilder-VA3VGWZC.js → SettingsBuilder-G5CP5X6Q.js} +8 -8
  17. package/dist/{ShellRouteSync-ZT4PBE6T.js → ShellRouteSync-G7IJ5VIW.js} +4 -4
  18. package/dist/{SidebarLayout-ICXEN7ZL.js → SidebarLayout-FKRLGEDB.js} +12 -12
  19. package/dist/{SkillSettings-F5JGGFXR.js → SkillSettings-E5SJ4U3T.js} +7 -7
  20. package/dist/{TrueForgeUIWithRouter-MKJ7IEWG.js → TrueForgeUIWithRouter-WD7O3TWR.js} +9 -9
  21. package/dist/{WidgetLayout-J7ZRW3V3.js → WidgetLayout-KQZTQNE7.js} +10 -10
  22. package/dist/{chunk-MEW7WZ7Q.js → chunk-2XFOONKH.js} +251 -97
  23. package/dist/chunk-2XFOONKH.js.map +1 -0
  24. package/dist/{chunk-U7WONUMR.js → chunk-2XT2VUT4.js} +4 -2
  25. package/dist/chunk-2XT2VUT4.js.map +1 -0
  26. package/dist/{chunk-KDCVFHPZ.js → chunk-4OZFQVSR.js} +3 -3
  27. package/dist/chunk-6UACSIIY.js +587 -0
  28. package/dist/chunk-6UACSIIY.js.map +1 -0
  29. package/dist/{chunk-BREN6OSX.js → chunk-7UE7LZS2.js} +17 -11
  30. package/dist/{chunk-BREN6OSX.js.map → chunk-7UE7LZS2.js.map} +1 -1
  31. package/dist/{chunk-UN7WPTTK.js → chunk-AO23SZBG.js} +2 -2
  32. package/dist/{chunk-VTOW2UIX.js → chunk-AU4BJQMK.js} +60 -25
  33. package/dist/chunk-AU4BJQMK.js.map +1 -0
  34. package/dist/{chunk-JEAULQNF.js → chunk-B76JC5B2.js} +3 -3
  35. package/dist/{chunk-7VWUB5OV.js → chunk-G7BT4OKG.js} +5 -5
  36. package/dist/{chunk-MB7Z5FPI.js → chunk-IGYCJIU7.js} +9 -9
  37. package/dist/{chunk-WFIA627Q.js → chunk-QKFMAQ7O.js} +2 -2
  38. package/dist/{chunk-QI4HGU5E.js → chunk-SAYUMANU.js} +8 -14
  39. package/dist/{chunk-QI4HGU5E.js.map → chunk-SAYUMANU.js.map} +1 -1
  40. package/dist/{chunk-SCIEO6CF.js → chunk-XHPIJ77Q.js} +2 -2
  41. package/dist/{chunk-KZK2PQ4A.js → chunk-XR4S7B2K.js} +206 -117
  42. package/dist/chunk-XR4S7B2K.js.map +1 -0
  43. package/dist/index.d.ts +16 -3
  44. package/dist/index.js +12 -12
  45. package/dist/plugins/trueforge-agent-server-adapter/index.js +6 -2
  46. package/dist/plugins/trueforge-agent-server-adapter/index.js.map +1 -1
  47. package/dist/styles.css +1 -1
  48. package/package.json +1 -1
  49. package/dist/AgentMetricChart-UZCYOC4M.js +0 -15
  50. package/dist/ModelSettings-ZVXMXIU4.js.map +0 -1
  51. package/dist/OpenUiFenceBlock-F3YVDKAG.js +0 -9
  52. package/dist/SchedulesPage-FS2QZ5KB.js +0 -15
  53. package/dist/chunk-KZK2PQ4A.js.map +0 -1
  54. package/dist/chunk-MEW7WZ7Q.js.map +0 -1
  55. package/dist/chunk-NXK4XW4U.js +0 -587
  56. package/dist/chunk-NXK4XW4U.js.map +0 -1
  57. package/dist/chunk-U7WONUMR.js.map +0 -1
  58. package/dist/chunk-VTOW2UIX.js.map +0 -1
  59. /package/dist/{AgentCodeSnippets-EK7KMIY2.js.map → AgentCodeSnippets-DAZWEBJS.js.map} +0 -0
  60. /package/dist/{AgentMetricChart-UZCYOC4M.js.map → AgentMetricChart-VDIE3S2P.js.map} +0 -0
  61. /package/dist/{AgentOverview-5UPMYHT2.js.map → AgentOverview-5JIVYXPX.js.map} +0 -0
  62. /package/dist/{AgentSessionEventTimeline-V6NPCYMW.js.map → AgentSessionEventTimeline-WELJSS6O.js.map} +0 -0
  63. /package/dist/{AgentSessionEventTimelineChart-YQWZBQCG.js.map → AgentSessionEventTimelineChart-ADB3KICM.js.map} +0 -0
  64. /package/dist/{AgentSessions-WNYVVB6Q.js.map → AgentSessions-NSN4LIGJ.js.map} +0 -0
  65. /package/dist/{ConnectorSettings-O4I24244.js.map → ConnectorSettings-C6MFCKYX.js.map} +0 -0
  66. /package/dist/{DockLayout-JMBZVMGB.js.map → DockLayout-VY7OZ55R.js.map} +0 -0
  67. /package/dist/{DrawerLayout-E6G3IF6R.js.map → DrawerLayout-B2UA3CZO.js.map} +0 -0
  68. /package/dist/{OpenUiFenceBlock-F3YVDKAG.js.map → OpenUiFenceBlock-BZPFNXWZ.js.map} +0 -0
  69. /package/dist/{SandboxSettings-H6BA2DJQ.js.map → SandboxSettings-ALR6F5KU.js.map} +0 -0
  70. /package/dist/{SchedulesPage-FS2QZ5KB.js.map → SchedulesPage-TIS3BH67.js.map} +0 -0
  71. /package/dist/{SettingsBuilder-VA3VGWZC.js.map → SettingsBuilder-G5CP5X6Q.js.map} +0 -0
  72. /package/dist/{ShellRouteSync-ZT4PBE6T.js.map → ShellRouteSync-G7IJ5VIW.js.map} +0 -0
  73. /package/dist/{SidebarLayout-ICXEN7ZL.js.map → SidebarLayout-FKRLGEDB.js.map} +0 -0
  74. /package/dist/{SkillSettings-F5JGGFXR.js.map → SkillSettings-E5SJ4U3T.js.map} +0 -0
  75. /package/dist/{TrueForgeUIWithRouter-MKJ7IEWG.js.map → TrueForgeUIWithRouter-WD7O3TWR.js.map} +0 -0
  76. /package/dist/{WidgetLayout-J7ZRW3V3.js.map → WidgetLayout-KQZTQNE7.js.map} +0 -0
  77. /package/dist/{chunk-KDCVFHPZ.js.map → chunk-4OZFQVSR.js.map} +0 -0
  78. /package/dist/{chunk-UN7WPTTK.js.map → chunk-AO23SZBG.js.map} +0 -0
  79. /package/dist/{chunk-JEAULQNF.js.map → chunk-B76JC5B2.js.map} +0 -0
  80. /package/dist/{chunk-7VWUB5OV.js.map → chunk-G7BT4OKG.js.map} +0 -0
  81. /package/dist/{chunk-MB7Z5FPI.js.map → chunk-IGYCJIU7.js.map} +0 -0
  82. /package/dist/{chunk-WFIA627Q.js.map → chunk-QKFMAQ7O.js.map} +0 -0
  83. /package/dist/{chunk-SCIEO6CF.js.map → chunk-XHPIJ77Q.js.map} +0 -0
package/dist/index.d.ts CHANGED
@@ -349,6 +349,8 @@ type McpServer = {
349
349
  };
350
350
  type McpAuthPromptProps = {
351
351
  servers: McpServer[];
352
+ connectedServerIds?: ReadonlySet<string>;
353
+ continueLoading?: boolean;
352
354
  onConnect: (serverId: string) => void;
353
355
  onContinue?: () => void;
354
356
  readOnly?: boolean;
@@ -356,7 +358,7 @@ type McpAuthPromptProps = {
356
358
  dataTestPrefix?: string;
357
359
  className?: string;
358
360
  };
359
- declare function McpAuthPrompt({ servers, onConnect, onContinue, readOnly, title, dataTestPrefix, className, }: McpAuthPromptProps): react.JSX.Element | null;
361
+ declare function McpAuthPrompt({ servers, connectedServerIds, continueLoading, onConnect, onContinue, readOnly, title, dataTestPrefix, className, }: McpAuthPromptProps): react.JSX.Element | null;
360
362
  declare module '../../theme/SlotsProvider.js' {
361
363
  interface AtomSlots {
362
364
  McpAuthPrompt: typeof McpAuthPrompt;
@@ -1659,7 +1661,7 @@ type ThreadListRowProps = {
1659
1661
  agentName?: string;
1660
1662
  /** Shown as compact relative time on the right. */
1661
1663
  lastMessageAt?: Date;
1662
- /** Overflow actions (e.g. delete menu) — rendered as a sibling of the title button. */
1664
+ /** Overflow actions (e.g. rename / delete menu) — rendered as a sibling of the title button. */
1663
1665
  actions?: ReactNode;
1664
1666
  className?: string;
1665
1667
  };
@@ -2353,7 +2355,9 @@ declare function ThreadContainer({ composer }: ThreadContainerProps): react.JSX.
2353
2355
  * rather than grouping them by Today/Yesterday/Earlier.
2354
2356
  *
2355
2357
  * Delete uses assistant-ui ThreadListItemPrimitive.Delete / ThreadListItemMorePrimitive
2356
- * (adapter.delete → server.deleteSession). Mobile/compact keeps a BottomSheet chrome.
2358
+ * (adapter.delete → server.deleteSession). Rename opens RenameSessionModal via
2359
+ * aui.threadListItem().rename (adapter.rename → server.renameSession) when
2360
+ * `renameSession` is implemented. Mobile/compact keeps a BottomSheet chrome.
2357
2361
  */
2358
2362
  type ThreadListContainerProps = {
2359
2363
  /** Called after New chat or selecting a row — used by stack/drawer chrome. */
@@ -2819,6 +2823,15 @@ type McpAuthCallback = (isSuccess: boolean) => void;
2819
2823
  type UseMCPAuthOptions = {
2820
2824
  callbackPath?: string;
2821
2825
  };
2826
+ /**
2827
+ * Browser side of the MCP OAuth handshake:
2828
+ * 1. `authenticateConnector` either reports the connector already authenticated or returns an authorization URL.
2829
+ * 2. That URL opens in a popup; the callback page broadcasts its result on `MCP_AUTH_POPUP_CHANNEL`, matched by `popupUid`.
2830
+ * 3. Success is re-read from the connector before `callback(true)` — the popup only proves the redirect ran, not that
2831
+ * tokens were stored.
2832
+ *
2833
+ * Each attempt has its own popup ID and listener, so multiple servers can be authorized independently.
2834
+ */
2822
2835
  declare const useMCPAuth: ({ callbackPath }?: UseMCPAuthOptions) => {
2823
2836
  handleAuthorize: (integrationId: string, callback: McpAuthCallback) => Promise<void>;
2824
2837
  isOAuthLoading: boolean;
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  ThreadListContainer
4
- } from "./chunk-MEW7WZ7Q.js";
4
+ } from "./chunk-2XFOONKH.js";
5
5
  import {
6
6
  ApprovalNavContainer,
7
7
  AskUserContainer,
@@ -16,12 +16,12 @@ import {
16
16
  threadHasPendingMcpAuth,
17
17
  useApprovalNav,
18
18
  useComposerPauseView
19
- } from "./chunk-VTOW2UIX.js";
19
+ } from "./chunk-AU4BJQMK.js";
20
20
  import {
21
21
  ServerInitLoader,
22
22
  TrueForgeUIShell,
23
23
  TrueFoundryChatProvider
24
- } from "./chunk-BREN6OSX.js";
24
+ } from "./chunk-7UE7LZS2.js";
25
25
  import "./chunk-DJUFS2BW.js";
26
26
  import {
27
27
  ComposerBusyProvider,
@@ -31,7 +31,7 @@ import {
31
31
  } from "./chunk-BSIPI3KV.js";
32
32
  import {
33
33
  AgentMetricChart
34
- } from "./chunk-SCIEO6CF.js";
34
+ } from "./chunk-XHPIJ77Q.js";
35
35
  import {
36
36
  createTrueFoundryServer
37
37
  } from "./chunk-7AAO4UDQ.js";
@@ -50,7 +50,7 @@ import {
50
50
  ScheduleStatusBadge,
51
51
  SchedulesPage,
52
52
  TestScheduleScreen
53
- } from "./chunk-QI4HGU5E.js";
53
+ } from "./chunk-SAYUMANU.js";
54
54
  import {
55
55
  AgentCodeBlock,
56
56
  AgentConfigEditors,
@@ -194,14 +194,14 @@ import {
194
194
  useThemeMode,
195
195
  useToaster,
196
196
  useToasterOptional
197
- } from "./chunk-KZK2PQ4A.js";
198
- import "./chunk-UN7WPTTK.js";
197
+ } from "./chunk-XR4S7B2K.js";
198
+ import "./chunk-AO23SZBG.js";
199
199
  import {
200
200
  DraftCatalogProvider,
201
201
  Icon,
202
202
  registerIcons,
203
203
  useDraftCatalog
204
- } from "./chunk-KDCVFHPZ.js";
204
+ } from "./chunk-4OZFQVSR.js";
205
205
  import {
206
206
  DEFAULT_AGENT_CONFIG,
207
207
  ServerProvider,
@@ -224,14 +224,14 @@ import {
224
224
  useServer,
225
225
  useServerCapabilities,
226
226
  useShellMode
227
- } from "./chunk-U7WONUMR.js";
227
+ } from "./chunk-2XT2VUT4.js";
228
228
  import {
229
229
  useAui,
230
230
  useAuiState
231
231
  } from "./chunk-M6MHLVSO.js";
232
232
  import {
233
233
  OpenUiFenceBlock
234
- } from "./chunk-WFIA627Q.js";
234
+ } from "./chunk-QKFMAQ7O.js";
235
235
  import {
236
236
  PRESETS,
237
237
  ThemeProvider,
@@ -241,7 +241,7 @@ import {
241
241
  useOptionalContentClassNames,
242
242
  useTheme,
243
243
  useThemeIcons
244
- } from "./chunk-NXK4XW4U.js";
244
+ } from "./chunk-6UACSIIY.js";
245
245
 
246
246
  // src/icons/agent-2.svg
247
247
  import * as React from "react";
@@ -442,7 +442,7 @@ function ToolGroupContainer({ children, group }) {
442
442
  import { lazy, Suspense } from "react";
443
443
  import { jsx as jsx12 } from "react/jsx-runtime";
444
444
  var TrueForgeUIWithRouter = lazy(
445
- () => import("./TrueForgeUIWithRouter-MKJ7IEWG.js").then((m) => ({ default: m.TrueForgeUIWithRouter }))
445
+ () => import("./TrueForgeUIWithRouter-WD7O3TWR.js").then((m) => ({ default: m.TrueForgeUIWithRouter }))
446
446
  );
447
447
  function TrueForgeUI(props) {
448
448
  const isMcpAuthScreen = typeof window !== "undefined" && new URLSearchParams(window.location.search).get("screenType") === "mcp-auth";
@@ -256,9 +256,13 @@ function createHarnessChatServer(options = {}) {
256
256
  async deleteSession({ sessionId }) {
257
257
  await client.sessions.delete(sessionId);
258
258
  },
259
- async updateSession({ sessionId, agentSpec }) {
259
+ async renameSession({ sessionId, title }) {
260
+ await client.sessions.update(sessionId, { title });
261
+ },
262
+ async updateSession({ sessionId, agentSpec, title }) {
260
263
  const response = await client.sessions.update(sessionId, {
261
- ...agentSpec === void 0 ? {} : { agent: { spec: toHarnessAgentSpec(agentSpec) } }
264
+ ...agentSpec === void 0 ? {} : { agent: { spec: toHarnessAgentSpec(agentSpec) } },
265
+ ...title === void 0 ? {} : { title }
262
266
  });
263
267
  return toUiSession(response.data);
264
268
  },