@truefoundry/trueforge-ui 0.3.0-rc.8 → 0.3.0-rc.9
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.
- package/CHANGELOG.md +10 -0
- package/dist/{AgentCodeSnippets-T7PR6PDP.js → AgentCodeSnippets-ARHIK2T6.js} +2 -2
- package/dist/{AgentMetricChart-J3RCSCAG.js → AgentMetricChart-ZQIRBCZL.js} +3 -3
- package/dist/{AgentOverview-WC7WMNMS.js → AgentOverview-7GJJV2OU.js} +2 -2
- package/dist/{AgentSessionEventTimeline-SETKGGCI.js → AgentSessionEventTimeline-7QM7QKIQ.js} +2 -2
- package/dist/{AgentSessionEventTimelineChart-4Y7PY5SJ.js → AgentSessionEventTimelineChart-PIDYWLYT.js} +2 -2
- package/dist/{AgentSessions-YCAPM5GK.js → AgentSessions-MR2DREKN.js} +2 -2
- package/dist/{ConnectorSettings-PXWRCFAL.js → ConnectorSettings-YBGANZOG.js} +2 -2
- package/dist/{DockLayout-JRKCKAG2.js → DockLayout-O5TS4YZH.js} +5 -5
- package/dist/{DrawerLayout-U7YPUZBR.js → DrawerLayout-7R3XONK2.js} +6 -6
- package/dist/{ModelSettings-VXYMJEMO.js → ModelSettings-UXPL4E6X.js} +2 -2
- package/dist/{SandboxSettings-6DRUH72J.js → SandboxSettings-5MMPJHBH.js} +2 -2
- package/dist/{SchedulesPage-2G6F4XO6.js → SchedulesPage-5XZRDA5O.js} +3 -3
- package/dist/{SettingsBuilder-6FJVZLJT.js → SettingsBuilder-JAP4QGMY.js} +5 -5
- package/dist/{SidebarLayout-EQ7EYCWR.js → SidebarLayout-MYZTVWWE.js} +7 -7
- package/dist/{SkillSettings-IHVI7FDM.js → SkillSettings-6C5PH3NN.js} +2 -2
- package/dist/{TrueForgeUIWithRouter-5OJFI3PF.js → TrueForgeUIWithRouter-3J5G62O5.js} +3 -3
- package/dist/{WidgetLayout-PN5ZDOLM.js → WidgetLayout-24ZL3QWT.js} +5 -5
- package/dist/{chunk-XANC4F2H.js → chunk-4OEAJKLJ.js} +91 -67
- package/dist/chunk-4OEAJKLJ.js.map +1 -0
- package/dist/{chunk-L7HNKKS2.js → chunk-FEHL45EB.js} +2 -2
- package/dist/{chunk-2UBSLCKB.js → chunk-JF4IELMW.js} +6 -6
- package/dist/{chunk-TMIILLHB.js → chunk-JKUYG6HV.js} +2 -2
- package/dist/{chunk-PX6MNNN3.js → chunk-JTQU2N2Q.js} +2 -2
- package/dist/{chunk-F7YRYFAF.js → chunk-MACHU4OO.js} +2 -2
- package/dist/{chunk-OWXPMQ7N.js → chunk-RI6TIYWL.js} +6 -6
- package/dist/{chunk-E33DFTVN.js → chunk-UBQYRCCH.js} +2 -2
- package/dist/index.d.ts +9 -3
- package/dist/index.js +7 -7
- package/package.json +3 -3
- package/dist/chunk-XANC4F2H.js.map +0 -1
- /package/dist/{AgentCodeSnippets-T7PR6PDP.js.map → AgentCodeSnippets-ARHIK2T6.js.map} +0 -0
- /package/dist/{AgentMetricChart-J3RCSCAG.js.map → AgentMetricChart-ZQIRBCZL.js.map} +0 -0
- /package/dist/{AgentOverview-WC7WMNMS.js.map → AgentOverview-7GJJV2OU.js.map} +0 -0
- /package/dist/{AgentSessionEventTimeline-SETKGGCI.js.map → AgentSessionEventTimeline-7QM7QKIQ.js.map} +0 -0
- /package/dist/{AgentSessionEventTimelineChart-4Y7PY5SJ.js.map → AgentSessionEventTimelineChart-PIDYWLYT.js.map} +0 -0
- /package/dist/{AgentSessions-YCAPM5GK.js.map → AgentSessions-MR2DREKN.js.map} +0 -0
- /package/dist/{ConnectorSettings-PXWRCFAL.js.map → ConnectorSettings-YBGANZOG.js.map} +0 -0
- /package/dist/{DockLayout-JRKCKAG2.js.map → DockLayout-O5TS4YZH.js.map} +0 -0
- /package/dist/{DrawerLayout-U7YPUZBR.js.map → DrawerLayout-7R3XONK2.js.map} +0 -0
- /package/dist/{ModelSettings-VXYMJEMO.js.map → ModelSettings-UXPL4E6X.js.map} +0 -0
- /package/dist/{SandboxSettings-6DRUH72J.js.map → SandboxSettings-5MMPJHBH.js.map} +0 -0
- /package/dist/{SchedulesPage-2G6F4XO6.js.map → SchedulesPage-5XZRDA5O.js.map} +0 -0
- /package/dist/{SettingsBuilder-6FJVZLJT.js.map → SettingsBuilder-JAP4QGMY.js.map} +0 -0
- /package/dist/{SidebarLayout-EQ7EYCWR.js.map → SidebarLayout-MYZTVWWE.js.map} +0 -0
- /package/dist/{SkillSettings-IHVI7FDM.js.map → SkillSettings-6C5PH3NN.js.map} +0 -0
- /package/dist/{TrueForgeUIWithRouter-5OJFI3PF.js.map → TrueForgeUIWithRouter-3J5G62O5.js.map} +0 -0
- /package/dist/{WidgetLayout-PN5ZDOLM.js.map → WidgetLayout-24ZL3QWT.js.map} +0 -0
- /package/dist/{chunk-L7HNKKS2.js.map → chunk-FEHL45EB.js.map} +0 -0
- /package/dist/{chunk-2UBSLCKB.js.map → chunk-JF4IELMW.js.map} +0 -0
- /package/dist/{chunk-TMIILLHB.js.map → chunk-JKUYG6HV.js.map} +0 -0
- /package/dist/{chunk-PX6MNNN3.js.map → chunk-JTQU2N2Q.js.map} +0 -0
- /package/dist/{chunk-F7YRYFAF.js.map → chunk-MACHU4OO.js.map} +0 -0
- /package/dist/{chunk-OWXPMQ7N.js.map → chunk-RI6TIYWL.js.map} +0 -0
- /package/dist/{chunk-E33DFTVN.js.map → chunk-UBQYRCCH.js.map} +0 -0
|
@@ -4375,8 +4375,14 @@ function AttachmentPreviewDialog({ previewSrc, children }) {
|
|
|
4375
4375
|
|
|
4376
4376
|
// src/atoms/ChatFileDownload.tsx
|
|
4377
4377
|
import { useState as useState16 } from "react";
|
|
4378
|
-
import { jsx as jsx52, jsxs as jsxs39 } from "react/jsx-runtime";
|
|
4379
|
-
function ChatFileDownload({
|
|
4378
|
+
import { Fragment as Fragment9, jsx as jsx52, jsxs as jsxs39 } from "react/jsx-runtime";
|
|
4379
|
+
function ChatFileDownload({
|
|
4380
|
+
files,
|
|
4381
|
+
fileDownloadBaseUrl,
|
|
4382
|
+
onDownloadArtifact,
|
|
4383
|
+
readOnly,
|
|
4384
|
+
readOnlyTooltip
|
|
4385
|
+
}) {
|
|
4380
4386
|
const [downloadingPath, setDownloadingPath] = useState16(null);
|
|
4381
4387
|
return /* @__PURE__ */ jsxs39(
|
|
4382
4388
|
"details",
|
|
@@ -4385,7 +4391,7 @@ function ChatFileDownload({ files, fileDownloadBaseUrl, onDownloadArtifact, read
|
|
|
4385
4391
|
className: "aui-sandbox-artifacts group my-2 overflow-hidden rounded-lg border border-primary-button-bg/20 bg-card-bg",
|
|
4386
4392
|
"data-testid": "aui-sandbox-artifacts",
|
|
4387
4393
|
children: [
|
|
4388
|
-
/* @__PURE__ */
|
|
4394
|
+
/* @__PURE__ */ jsx52("summary", { className: "min-h-9 cursor-pointer list-none bg-primary-button-bg/5 px-3 py-2 text-xs font-medium leading-none text-primary-button-bg [&::-webkit-details-marker]:hidden", children: /* @__PURE__ */ jsxs39("span", { className: "inline-flex items-center gap-1", children: [
|
|
4389
4395
|
/* @__PURE__ */ jsx52(Icon, { name: "chevron-down", size: 13, className: "shrink-0 transition-transform group-open:rotate-180" }),
|
|
4390
4396
|
/* @__PURE__ */ jsx52(Icon, { name: "file", size: 16, className: "shrink-0" }),
|
|
4391
4397
|
/* @__PURE__ */ jsxs39("span", { className: "leading-none", children: [
|
|
@@ -4394,20 +4400,18 @@ function ChatFileDownload({ files, fileDownloadBaseUrl, onDownloadArtifact, read
|
|
|
4394
4400
|
files.length === 1 ? "file" : "files",
|
|
4395
4401
|
" generated"
|
|
4396
4402
|
] })
|
|
4397
|
-
] }),
|
|
4403
|
+
] }) }),
|
|
4398
4404
|
/* @__PURE__ */ jsx52("div", { className: "flex flex-wrap items-center gap-y-1 px-3 py-2", children: files.map(({ name, path }) => {
|
|
4399
4405
|
if (readOnly) {
|
|
4400
|
-
|
|
4401
|
-
|
|
4402
|
-
{
|
|
4403
|
-
|
|
4404
|
-
|
|
4405
|
-
|
|
4406
|
-
|
|
4407
|
-
|
|
4408
|
-
|
|
4409
|
-
path
|
|
4410
|
-
);
|
|
4406
|
+
const itemClassName = "mr-3 inline-flex min-h-7 items-center gap-1.5 border-r border-border pr-3 text-xs text-text-secondary last:mr-0 last:border-r-0 last:pr-0";
|
|
4407
|
+
const label = /* @__PURE__ */ jsxs39(Fragment9, { children: [
|
|
4408
|
+
/* @__PURE__ */ jsx52(Icon, { name: "file", size: 14, className: "shrink-0" }),
|
|
4409
|
+
/* @__PURE__ */ jsx52("span", { className: "leading-none", children: name })
|
|
4410
|
+
] });
|
|
4411
|
+
if (readOnlyTooltip) {
|
|
4412
|
+
return /* @__PURE__ */ jsx52(Tooltip, { content: readOnlyTooltip, triggerClassName: itemClassName, children: /* @__PURE__ */ jsx52("span", { className: "inline-flex items-center gap-1.5", children: label }) }, path);
|
|
4413
|
+
}
|
|
4414
|
+
return /* @__PURE__ */ jsx52("span", { className: itemClassName, children: label }, path);
|
|
4411
4415
|
}
|
|
4412
4416
|
const href = fileDownloadBaseUrl ? `${fileDownloadBaseUrl}${path}` : void 0;
|
|
4413
4417
|
const canDownload = Boolean(onDownloadArtifact || href);
|
|
@@ -4830,7 +4834,7 @@ function connectorsWithSelectedStubs({
|
|
|
4830
4834
|
}
|
|
4831
4835
|
|
|
4832
4836
|
// src/atoms/draft/AgentConfigEditors.tsx
|
|
4833
|
-
import { Fragment as
|
|
4837
|
+
import { Fragment as Fragment10, jsx as jsx57, jsxs as jsxs44 } from "react/jsx-runtime";
|
|
4834
4838
|
function AgentConfigEditors({
|
|
4835
4839
|
editor,
|
|
4836
4840
|
spec,
|
|
@@ -4941,7 +4945,7 @@ function AgentConfigEditors({
|
|
|
4941
4945
|
})
|
|
4942
4946
|
);
|
|
4943
4947
|
};
|
|
4944
|
-
return /* @__PURE__ */ jsxs44(
|
|
4948
|
+
return /* @__PURE__ */ jsxs44(Fragment10, { children: [
|
|
4945
4949
|
editor === "instructions" ? /* @__PURE__ */ jsx57(
|
|
4946
4950
|
AgentInstructionsDrawer2,
|
|
4947
4951
|
{
|
|
@@ -5279,7 +5283,7 @@ function modelMatchesQuery({ model, needle }) {
|
|
|
5279
5283
|
}
|
|
5280
5284
|
|
|
5281
5285
|
// src/atoms/draft/DraftModelCatalogPanel.tsx
|
|
5282
|
-
import { Fragment as
|
|
5286
|
+
import { Fragment as Fragment11, jsx as jsx61, jsxs as jsxs48 } from "react/jsx-runtime";
|
|
5283
5287
|
function monogram(value) {
|
|
5284
5288
|
const trimmed = value.trim();
|
|
5285
5289
|
return trimmed ? trimmed.charAt(0).toUpperCase() : "?";
|
|
@@ -5343,7 +5347,7 @@ function DraftModelCatalogPanel({
|
|
|
5343
5347
|
);
|
|
5344
5348
|
const sections = groupModelsByProvider(filtered);
|
|
5345
5349
|
const detailedGridClass = "grid-cols-[minmax(0,1fr)_5rem]";
|
|
5346
|
-
return /* @__PURE__ */ jsxs48(
|
|
5350
|
+
return /* @__PURE__ */ jsxs48(Fragment11, { children: [
|
|
5347
5351
|
showSearch && /* @__PURE__ */ jsxs48("div", { className: "border-b border-border px-3 py-2", children: [
|
|
5348
5352
|
showHeading ? /* @__PURE__ */ jsx61("p", { className: "text-text-primary mb-2 text-sm font-normal", children: "Select model" }) : null,
|
|
5349
5353
|
/* @__PURE__ */ jsxs48("label", { className: "relative block", children: [
|
|
@@ -5437,7 +5441,7 @@ function DraftModelCatalogPanel({
|
|
|
5437
5441
|
model.properties.maxOutputTokens === void 0 ? null : `${formatTokens(model.properties.maxOutputTokens)} output`
|
|
5438
5442
|
].filter((value) => value !== null).join(" \xB7 ") }) : null
|
|
5439
5443
|
] }),
|
|
5440
|
-
!showHeading ? /* @__PURE__ */ jsx61(
|
|
5444
|
+
!showHeading ? /* @__PURE__ */ jsx61(Fragment11, { children: /* @__PURE__ */ jsx61("span", { className: cn("text-text-secondary text-xs", active && "text-primary-button-bg"), children: model.properties.contextLength === void 0 ? "\u2014" : formatTokens(model.properties.contextLength) }) }) : null,
|
|
5441
5445
|
active && showHeading ? /* @__PURE__ */ jsx61(Icon, { name: "check", className: "ml-auto size-3.5" }) : null
|
|
5442
5446
|
]
|
|
5443
5447
|
},
|
|
@@ -6653,7 +6657,7 @@ function partitionMcpToolsBySection(tools) {
|
|
|
6653
6657
|
}
|
|
6654
6658
|
|
|
6655
6659
|
// src/atoms/draft/AgentMcpEditorContent.tsx
|
|
6656
|
-
import { Fragment as
|
|
6660
|
+
import { Fragment as Fragment12, jsx as jsx68, jsxs as jsxs54 } from "react/jsx-runtime";
|
|
6657
6661
|
function ToolCheckbox({ checked }) {
|
|
6658
6662
|
return /* @__PURE__ */ jsx68(
|
|
6659
6663
|
"span",
|
|
@@ -6894,7 +6898,7 @@ function AgentMcpEditorContent({
|
|
|
6894
6898
|
children: "Connect During Chat"
|
|
6895
6899
|
}
|
|
6896
6900
|
)
|
|
6897
|
-
] }) : /* @__PURE__ */ jsxs54(
|
|
6901
|
+
] }) : /* @__PURE__ */ jsxs54(Fragment12, { children: [
|
|
6898
6902
|
/* @__PURE__ */ jsxs54("div", { className: "flex shrink-0 items-center justify-between gap-3 border-b border-border p-3", children: [
|
|
6899
6903
|
/* @__PURE__ */ jsxs54("p", { className: "min-w-0 truncate text-sm font-semibold", children: [
|
|
6900
6904
|
selectedConnector.name,
|
|
@@ -8226,7 +8230,7 @@ function useIsMobile() {
|
|
|
8226
8230
|
// src/atoms/draft/DraftReasoningEffortSelector.tsx
|
|
8227
8231
|
import { useTrueFoundryAgentSpec as useTrueFoundryAgentSpec2, useTrueFoundryUpdateAgentSpec } from "@truefoundry/assistant-ui-runtime";
|
|
8228
8232
|
import { useEffect as useEffect16, useId as useId9, useRef as useRef13, useState as useState31 } from "react";
|
|
8229
|
-
import { Fragment as
|
|
8233
|
+
import { Fragment as Fragment13, jsx as jsx82, jsxs as jsxs62 } from "react/jsx-runtime";
|
|
8230
8234
|
function DraftReasoningEffortSelector({ disabled, isRunning }) {
|
|
8231
8235
|
const { models, ensureLoaded } = useDraftCatalog();
|
|
8232
8236
|
const { agentSpec } = useTrueFoundryAgentSpec2();
|
|
@@ -8269,7 +8273,7 @@ function DraftReasoningEffortSelector({ disabled, isRunning }) {
|
|
|
8269
8273
|
});
|
|
8270
8274
|
}, [updateAgentSpec, selected, efforts, currentEffort, agentSpec?.model?.params]);
|
|
8271
8275
|
if (!hasReasoningEfforts(efforts) || !resolved) return null;
|
|
8272
|
-
const content = /* @__PURE__ */ jsxs62(
|
|
8276
|
+
const content = /* @__PURE__ */ jsxs62(Fragment13, { children: [
|
|
8273
8277
|
/* @__PURE__ */ jsx82("div", { className: "border-b border-border px-3 py-2", children: /* @__PURE__ */ jsx82("p", { className: "text-text-primary text-sm font-normal", children: "Reasoning effort" }) }),
|
|
8274
8278
|
/* @__PURE__ */ jsx82(
|
|
8275
8279
|
"div",
|
|
@@ -8394,7 +8398,7 @@ function DraftComposerRightSection({ disabled, isRunning }) {
|
|
|
8394
8398
|
// src/atoms/draft/DraftCompositeSelector.tsx
|
|
8395
8399
|
import { useTrueFoundryAgentSpec as useTrueFoundryAgentSpec3, useTrueFoundryUpdateAgentSpec as useTrueFoundryUpdateAgentSpec2 } from "@truefoundry/assistant-ui-runtime";
|
|
8396
8400
|
import { useCallback as useCallback11, useEffect as useEffect17, useId as useId10, useMemo as useMemo9, useRef as useRef14, useState as useState32 } from "react";
|
|
8397
|
-
import { Fragment as
|
|
8401
|
+
import { Fragment as Fragment14, jsx as jsx84, jsxs as jsxs64 } from "react/jsx-runtime";
|
|
8398
8402
|
function draftMountsFromSpec(value) {
|
|
8399
8403
|
if (!Array.isArray(value)) return [];
|
|
8400
8404
|
const mounts = [];
|
|
@@ -8443,7 +8447,7 @@ function CatalogRow({
|
|
|
8443
8447
|
onActivate,
|
|
8444
8448
|
action
|
|
8445
8449
|
}) {
|
|
8446
|
-
const content = /* @__PURE__ */ jsxs64(
|
|
8450
|
+
const content = /* @__PURE__ */ jsxs64(Fragment14, { children: [
|
|
8447
8451
|
/* @__PURE__ */ jsx84(
|
|
8448
8452
|
"span",
|
|
8449
8453
|
{
|
|
@@ -8784,7 +8788,7 @@ function DraftCompositeSelector({ disabled, isRunning, onAttach }) {
|
|
|
8784
8788
|
setQuery("");
|
|
8785
8789
|
shell?.setSettingsOpen(true, section);
|
|
8786
8790
|
};
|
|
8787
|
-
const content = /* @__PURE__ */ jsxs64(
|
|
8791
|
+
const content = /* @__PURE__ */ jsxs64(Fragment14, { children: [
|
|
8788
8792
|
/* @__PURE__ */ jsx84("div", { className: "flex shrink-0 border-b border-border", children: TABS.map((t) => {
|
|
8789
8793
|
const count = t.id === "connectors" ? selectedMcp.length : t.id === "skills" ? selectedSkills.length : null;
|
|
8790
8794
|
const active = tab === t.id;
|
|
@@ -8809,7 +8813,7 @@ function DraftCompositeSelector({ disabled, isRunning, onAttach }) {
|
|
|
8809
8813
|
t.id
|
|
8810
8814
|
);
|
|
8811
8815
|
}) }),
|
|
8812
|
-
/* @__PURE__ */ jsxs64(
|
|
8816
|
+
/* @__PURE__ */ jsxs64(Fragment14, { children: [
|
|
8813
8817
|
/* @__PURE__ */ jsx84(
|
|
8814
8818
|
SearchField,
|
|
8815
8819
|
{
|
|
@@ -8829,8 +8833,8 @@ function DraftCompositeSelector({ disabled, isRunning, onAttach }) {
|
|
|
8829
8833
|
]
|
|
8830
8834
|
}
|
|
8831
8835
|
) : null,
|
|
8832
|
-
/* @__PURE__ */ jsx84("div", { className: "min-h-0 flex-1 overflow-y-auto px-1 pb-2", children: tab === "connectors" ? /* @__PURE__ */ jsxs64(
|
|
8833
|
-
pinnedSelectedConnectors.length > 0 ? /* @__PURE__ */ jsxs64(
|
|
8836
|
+
/* @__PURE__ */ jsx84("div", { className: "min-h-0 flex-1 overflow-y-auto px-1 pb-2", children: tab === "connectors" ? /* @__PURE__ */ jsxs64(Fragment14, { children: [
|
|
8837
|
+
pinnedSelectedConnectors.length > 0 ? /* @__PURE__ */ jsxs64(Fragment14, { children: [
|
|
8834
8838
|
/* @__PURE__ */ jsx84(SectionHeading, { label: "Selected", count: pinnedSelectedConnectors.length }),
|
|
8835
8839
|
pinnedSelectedConnectors.map((c) => /* @__PURE__ */ jsx84(
|
|
8836
8840
|
CatalogRow,
|
|
@@ -8845,7 +8849,7 @@ function DraftCompositeSelector({ disabled, isRunning, onAttach }) {
|
|
|
8845
8849
|
c.id
|
|
8846
8850
|
))
|
|
8847
8851
|
] }) : null,
|
|
8848
|
-
pinnedAvailableConnectors.length > 0 ? /* @__PURE__ */ jsxs64(
|
|
8852
|
+
pinnedAvailableConnectors.length > 0 ? /* @__PURE__ */ jsxs64(Fragment14, { children: [
|
|
8849
8853
|
/* @__PURE__ */ jsx84(SectionHeading, { label: "Available", count: pinnedAvailableConnectors.length }),
|
|
8850
8854
|
pinnedAvailableConnectors.map((c) => /* @__PURE__ */ jsx84(
|
|
8851
8855
|
CatalogRow,
|
|
@@ -8870,12 +8874,12 @@ function DraftCompositeSelector({ disabled, isRunning, onAttach }) {
|
|
|
8870
8874
|
onOpenSettings: shell && canConfigureConnectors ? () => openSettings("connectors") : void 0
|
|
8871
8875
|
}
|
|
8872
8876
|
) : null
|
|
8873
|
-
] }) : /* @__PURE__ */ jsxs64(
|
|
8874
|
-
pinnedSelectedSkills.length > 0 ? /* @__PURE__ */ jsxs64(
|
|
8877
|
+
] }) : /* @__PURE__ */ jsxs64(Fragment14, { children: [
|
|
8878
|
+
pinnedSelectedSkills.length > 0 ? /* @__PURE__ */ jsxs64(Fragment14, { children: [
|
|
8875
8879
|
/* @__PURE__ */ jsx84(SectionHeading, { label: "Selected", count: pinnedSelectedSkills.length }),
|
|
8876
8880
|
pinnedSelectedSkills.map(renderSkill)
|
|
8877
8881
|
] }) : null,
|
|
8878
|
-
pinnedAvailableSkills.length > 0 ? /* @__PURE__ */ jsxs64(
|
|
8882
|
+
pinnedAvailableSkills.length > 0 ? /* @__PURE__ */ jsxs64(Fragment14, { children: [
|
|
8879
8883
|
/* @__PURE__ */ jsx84(SectionHeading, { label: "Available", count: pinnedAvailableSkills.length }),
|
|
8880
8884
|
pinnedAvailableSkills.map(renderSkill)
|
|
8881
8885
|
] }) : null,
|
|
@@ -9086,7 +9090,7 @@ HistoryLoader.displayName = "HistoryLoader";
|
|
|
9086
9090
|
import { useMemo as useMemo10, useRef as useRef16 } from "react";
|
|
9087
9091
|
import ReactMarkdown from "react-markdown";
|
|
9088
9092
|
import remarkGfm from "remark-gfm";
|
|
9089
|
-
import { Fragment as
|
|
9093
|
+
import { Fragment as Fragment15, jsx as jsx87 } from "react/jsx-runtime";
|
|
9090
9094
|
function preloadMarkdownOpenUI() {
|
|
9091
9095
|
return import("./OpenUiFenceBlock-KPZFLUSC.js");
|
|
9092
9096
|
}
|
|
@@ -9111,6 +9115,7 @@ function makeComponents(opts) {
|
|
|
9111
9115
|
fileDownloadBaseUrl,
|
|
9112
9116
|
onDownloadArtifact,
|
|
9113
9117
|
readOnly,
|
|
9118
|
+
sandboxDownloadReadOnlyTooltip,
|
|
9114
9119
|
OpenUiFenceBlock: OpenUiFenceBlock2,
|
|
9115
9120
|
SandboxArtifactDownload: SandboxArtifactDownload2,
|
|
9116
9121
|
SyntaxHighlighter: SyntaxHighlighter2,
|
|
@@ -9123,7 +9128,7 @@ function makeComponents(opts) {
|
|
|
9123
9128
|
},
|
|
9124
9129
|
// Strip default <pre> wrapper — each block renderer provides its own container.
|
|
9125
9130
|
pre({ children }) {
|
|
9126
|
-
return /* @__PURE__ */ jsx87(
|
|
9131
|
+
return /* @__PURE__ */ jsx87(Fragment15, { children });
|
|
9127
9132
|
},
|
|
9128
9133
|
code({ className, children }) {
|
|
9129
9134
|
const language = /language-(\w+)/.exec(className ?? "")?.[1];
|
|
@@ -9147,7 +9152,8 @@ function makeComponents(opts) {
|
|
|
9147
9152
|
code,
|
|
9148
9153
|
fileDownloadBaseUrl,
|
|
9149
9154
|
onDownloadArtifact,
|
|
9150
|
-
readOnly
|
|
9155
|
+
readOnly,
|
|
9156
|
+
sandboxDownloadReadOnlyTooltip
|
|
9151
9157
|
}
|
|
9152
9158
|
);
|
|
9153
9159
|
}
|
|
@@ -9176,6 +9182,7 @@ function Markdown({
|
|
|
9176
9182
|
fileDownloadBaseUrl,
|
|
9177
9183
|
onDownloadArtifact,
|
|
9178
9184
|
readOnly,
|
|
9185
|
+
sandboxDownloadReadOnlyTooltip,
|
|
9179
9186
|
className
|
|
9180
9187
|
}) {
|
|
9181
9188
|
const mode = useThemeMode();
|
|
@@ -9194,6 +9201,7 @@ function Markdown({
|
|
|
9194
9201
|
fileDownloadBaseUrl,
|
|
9195
9202
|
onDownloadArtifact,
|
|
9196
9203
|
readOnly,
|
|
9204
|
+
sandboxDownloadReadOnlyTooltip,
|
|
9197
9205
|
OpenUiFenceBlock: OpenUiFenceBlock2,
|
|
9198
9206
|
SandboxArtifactDownload: SandboxArtifactDownload2,
|
|
9199
9207
|
SyntaxHighlighter: SyntaxHighlighter2,
|
|
@@ -9205,6 +9213,7 @@ function Markdown({
|
|
|
9205
9213
|
fileDownloadBaseUrl,
|
|
9206
9214
|
onDownloadArtifact,
|
|
9207
9215
|
readOnly,
|
|
9216
|
+
sandboxDownloadReadOnlyTooltip,
|
|
9208
9217
|
OpenUiFenceBlock2,
|
|
9209
9218
|
SandboxArtifactDownload2,
|
|
9210
9219
|
SyntaxHighlighter2,
|
|
@@ -9553,7 +9562,8 @@ function SandboxArtifactDownload({
|
|
|
9553
9562
|
code,
|
|
9554
9563
|
fileDownloadBaseUrl,
|
|
9555
9564
|
onDownloadArtifact,
|
|
9556
|
-
readOnly
|
|
9565
|
+
readOnly,
|
|
9566
|
+
sandboxDownloadReadOnlyTooltip
|
|
9557
9567
|
}) {
|
|
9558
9568
|
const ChatFileDownload2 = useSlot("ChatFileDownload");
|
|
9559
9569
|
const artifacts = useMemo11(() => parseSandboxArtifacts(code), [code]);
|
|
@@ -9564,13 +9574,14 @@ function SandboxArtifactDownload({
|
|
|
9564
9574
|
files: artifacts,
|
|
9565
9575
|
fileDownloadBaseUrl,
|
|
9566
9576
|
onDownloadArtifact,
|
|
9567
|
-
readOnly
|
|
9577
|
+
readOnly,
|
|
9578
|
+
readOnlyTooltip: sandboxDownloadReadOnlyTooltip
|
|
9568
9579
|
}
|
|
9569
9580
|
);
|
|
9570
9581
|
}
|
|
9571
9582
|
|
|
9572
9583
|
// src/atoms/SandboxToolCallCard.tsx
|
|
9573
|
-
import { Fragment as
|
|
9584
|
+
import { Fragment as Fragment16, jsx as jsx95, jsxs as jsxs68 } from "react/jsx-runtime";
|
|
9574
9585
|
function JsonPane({ value, className }) {
|
|
9575
9586
|
const MonacoEditorCore2 = useSlot("MonacoEditorCore");
|
|
9576
9587
|
return /* @__PURE__ */ jsx95(
|
|
@@ -9678,7 +9689,7 @@ function SandboxBody({
|
|
|
9678
9689
|
}
|
|
9679
9690
|
)
|
|
9680
9691
|
] }) }),
|
|
9681
|
-
/* @__PURE__ */ jsx95("div", { className: "rounded-b-lg border border-t-0 border-border p-3", children: hasContent && /* @__PURE__ */ jsx95("div", { className: "max-h-80 overflow-x-hidden overflow-y-auto whitespace-pre-wrap break-words font-mono text-xs text-text-primary", children: viewMode === "code" ? /* @__PURE__ */ jsxs68(
|
|
9692
|
+
/* @__PURE__ */ jsx95("div", { className: "rounded-b-lg border border-t-0 border-border p-3", children: hasContent && /* @__PURE__ */ jsx95("div", { className: "max-h-80 overflow-x-hidden overflow-y-auto whitespace-pre-wrap break-words font-mono text-xs text-text-primary", children: viewMode === "code" ? /* @__PURE__ */ jsxs68(Fragment16, { children: [
|
|
9682
9693
|
argsJson && /* @__PURE__ */ jsxs68("div", { className: "my-1 border-l-4 border-primary-button-bg px-3", children: [
|
|
9683
9694
|
/* @__PURE__ */ jsx95("div", { className: "mb-1 font-sans text-xs font-medium leading-4", children: "Arguments" }),
|
|
9684
9695
|
/* @__PURE__ */ jsx95(JsonPane, { value: argsJson, className: "pl-2" })
|
|
@@ -9687,7 +9698,7 @@ function SandboxBody({
|
|
|
9687
9698
|
/* @__PURE__ */ jsx95("div", { className: "mb-1 mt-2 font-sans text-xs font-medium leading-4", children: "Result" }),
|
|
9688
9699
|
/* @__PURE__ */ jsx95(JsonPane, { value: resultJson, className: "pl-2" })
|
|
9689
9700
|
] })
|
|
9690
|
-
] }) : /* @__PURE__ */ jsxs68(
|
|
9701
|
+
] }) : /* @__PURE__ */ jsxs68(Fragment16, { children: [
|
|
9691
9702
|
command && /* @__PURE__ */ jsxs68("div", { className: "my-1 break-all border-l-4 border-primary-button-bg px-3", children: [
|
|
9692
9703
|
/* @__PURE__ */ jsx95("div", { className: "mb-1 text-[12px] font-medium leading-4 text-text-secondary", children: "COMMAND" }),
|
|
9693
9704
|
/* @__PURE__ */ jsxs68("div", { children: [
|
|
@@ -9696,13 +9707,13 @@ function SandboxBody({
|
|
|
9696
9707
|
command
|
|
9697
9708
|
] })
|
|
9698
9709
|
] }),
|
|
9699
|
-
resultText ? /* @__PURE__ */ jsxs68(
|
|
9710
|
+
resultText ? /* @__PURE__ */ jsxs68(Fragment16, { children: [
|
|
9700
9711
|
/* @__PURE__ */ jsx95("div", { className: "mx-3 my-1 border-t border-border" }),
|
|
9701
9712
|
/* @__PURE__ */ jsxs68("div", { className: "my-1 break-all border-l-4 border-primary-button-bg/60 px-3", children: [
|
|
9702
9713
|
/* @__PURE__ */ jsx95("div", { className: "mb-1 text-[12px] font-medium leading-4 text-text-secondary", children: "OUTPUT" }),
|
|
9703
9714
|
/* @__PURE__ */ jsx95("div", { children: resultText })
|
|
9704
9715
|
] })
|
|
9705
|
-
] }) : resultJson && /* @__PURE__ */ jsxs68(
|
|
9716
|
+
] }) : resultJson && /* @__PURE__ */ jsxs68(Fragment16, { children: [
|
|
9706
9717
|
/* @__PURE__ */ jsx95("div", { className: "mx-3 my-1 border-t border-border" }),
|
|
9707
9718
|
/* @__PURE__ */ jsxs68("div", { className: "my-1 border-l-4 border-primary-button-bg/60 px-3", children: [
|
|
9708
9719
|
/* @__PURE__ */ jsx95("div", { className: "mb-1 text-[12px] font-medium leading-4 text-text-secondary", children: "OUTPUT" }),
|
|
@@ -9863,7 +9874,7 @@ function useOptionalAgentConfigInstructions() {
|
|
|
9863
9874
|
}
|
|
9864
9875
|
|
|
9865
9876
|
// src/atoms/SaveAgentButton.tsx
|
|
9866
|
-
import { Fragment as
|
|
9877
|
+
import { Fragment as Fragment17, jsx as jsx97, jsxs as jsxs69 } from "react/jsx-runtime";
|
|
9867
9878
|
function cloneAgentSpec(spec) {
|
|
9868
9879
|
return {
|
|
9869
9880
|
...spec,
|
|
@@ -9975,7 +9986,7 @@ function SaveAgentButtonContent({
|
|
|
9975
9986
|
const isUpdateMode = shell?.mode.status === "active" && shell.mode.isMutable && (shell.mode.agentName !== void 0 || shell.mode.agentId !== void 0);
|
|
9976
9987
|
const triggerLabel = isUpdateMode && children === "Save Agent" ? "Update Agent" : children;
|
|
9977
9988
|
if (!visible) return null;
|
|
9978
|
-
return /* @__PURE__ */ jsxs69(
|
|
9989
|
+
return /* @__PURE__ */ jsxs69(Fragment17, { children: [
|
|
9979
9990
|
/* @__PURE__ */ jsx97(PermissionGuard2, { allowed: canManageAgent, children: /* @__PURE__ */ jsxs69(
|
|
9980
9991
|
Button.Primary,
|
|
9981
9992
|
{
|
|
@@ -10088,7 +10099,7 @@ function SaveAgentForm({
|
|
|
10088
10099
|
}
|
|
10089
10100
|
|
|
10090
10101
|
// src/atoms/SchedulesButton.tsx
|
|
10091
|
-
import { Fragment as
|
|
10102
|
+
import { Fragment as Fragment18, jsx as jsx99, jsxs as jsxs71 } from "react/jsx-runtime";
|
|
10092
10103
|
function SchedulesButton({ className, compact = false }) {
|
|
10093
10104
|
const shell = useOptionalShellMode();
|
|
10094
10105
|
const scheduleServer = useOptionalScheduleServer();
|
|
@@ -10114,7 +10125,7 @@ function SchedulesButton({ className, compact = false }) {
|
|
|
10114
10125
|
onClick: () => shell.setSchedulesOpen(!open),
|
|
10115
10126
|
children: [
|
|
10116
10127
|
/* @__PURE__ */ jsx99(Icon, { name: "calendar-clock", size: compact ? 14 : void 0 }),
|
|
10117
|
-
compact ? /* @__PURE__ */ jsx99("span", { className: "text-center", children: "Schedules" }) : /* @__PURE__ */ jsxs71(
|
|
10128
|
+
compact ? /* @__PURE__ */ jsx99("span", { className: "text-center", children: "Schedules" }) : /* @__PURE__ */ jsxs71(Fragment18, { children: [
|
|
10118
10129
|
/* @__PURE__ */ jsx99("span", { className: "truncate", children: "Schedules" }),
|
|
10119
10130
|
/* @__PURE__ */ jsx99(Icon, { name: "chevron-right", className: "ml-auto size-3.5 shrink-0 opacity-60" })
|
|
10120
10131
|
] })
|
|
@@ -10172,7 +10183,7 @@ function SelectAgentEmptyState() {
|
|
|
10172
10183
|
}
|
|
10173
10184
|
|
|
10174
10185
|
// src/atoms/SessionsBrowserButton.tsx
|
|
10175
|
-
import { Fragment as
|
|
10186
|
+
import { Fragment as Fragment19, jsx as jsx102, jsxs as jsxs73 } from "react/jsx-runtime";
|
|
10176
10187
|
function SessionsBrowserButton({ className, compact = false }) {
|
|
10177
10188
|
const sessionsServer = useOptionalAgentSessionsServer();
|
|
10178
10189
|
const shell = useOptionalShellMode();
|
|
@@ -10210,7 +10221,7 @@ function SessionsBrowserButton({ className, compact = false }) {
|
|
|
10210
10221
|
},
|
|
10211
10222
|
children: [
|
|
10212
10223
|
/* @__PURE__ */ jsx102(Icon, { name: "message-square-text", size: compact ? 14 : void 0 }),
|
|
10213
|
-
compact ? /* @__PURE__ */ jsx102("span", { className: "text-center", children: "Sessions" }) : /* @__PURE__ */ jsxs73(
|
|
10224
|
+
compact ? /* @__PURE__ */ jsx102("span", { className: "text-center", children: "Sessions" }) : /* @__PURE__ */ jsxs73(Fragment19, { children: [
|
|
10214
10225
|
/* @__PURE__ */ jsx102("span", { className: "truncate", children: "Sessions" }),
|
|
10215
10226
|
/* @__PURE__ */ jsx102(Icon, { name: "chevron-right", className: "ml-auto size-3.5 shrink-0 opacity-60" })
|
|
10216
10227
|
] })
|
|
@@ -11401,7 +11412,7 @@ function SyntaxHighlighterImpl({ code, language, darkTheme, className, showLineN
|
|
|
11401
11412
|
var SyntaxHighlighter = memo(SyntaxHighlighterImpl);
|
|
11402
11413
|
|
|
11403
11414
|
// src/atoms/ThreadListMisc.tsx
|
|
11404
|
-
import { Fragment as
|
|
11415
|
+
import { Fragment as Fragment20, jsx as jsx106, jsxs as jsxs77 } from "react/jsx-runtime";
|
|
11405
11416
|
function ThreadListNewButton({ className, children, style, ...rest }) {
|
|
11406
11417
|
return /* @__PURE__ */ jsx106(
|
|
11407
11418
|
"button",
|
|
@@ -11417,7 +11428,7 @@ function ThreadListNewButton({ className, children, style, ...rest }) {
|
|
|
11417
11428
|
)
|
|
11418
11429
|
}),
|
|
11419
11430
|
...rest,
|
|
11420
|
-
children: children ?? /* @__PURE__ */ jsxs77(
|
|
11431
|
+
children: children ?? /* @__PURE__ */ jsxs77(Fragment20, { children: [
|
|
11421
11432
|
/* @__PURE__ */ jsx106(Icon, { name: "square-pen" }),
|
|
11422
11433
|
"New Chat"
|
|
11423
11434
|
] })
|
|
@@ -12167,7 +12178,7 @@ function useRegisterApprovalExpand(toolCallId, expand) {
|
|
|
12167
12178
|
}
|
|
12168
12179
|
|
|
12169
12180
|
// src/atoms/ToolCallCard.tsx
|
|
12170
|
-
import { Fragment as
|
|
12181
|
+
import { Fragment as Fragment21, jsx as jsx112, jsxs as jsxs81 } from "react/jsx-runtime";
|
|
12171
12182
|
var DEFAULT_AWAITING_TEXT = "Awaiting Response...";
|
|
12172
12183
|
function ToolCallCard({
|
|
12173
12184
|
icon = "mcp-server",
|
|
@@ -12239,7 +12250,7 @@ function ToolCallCard({
|
|
|
12239
12250
|
showContentConnector: true,
|
|
12240
12251
|
showPersistentContentConnector: !hasApproval,
|
|
12241
12252
|
dataTestPrefix: dataTestPrefix ? `${dataTestPrefix}-header` : void 0,
|
|
12242
|
-
persistentChildren: /* @__PURE__ */ jsxs81(
|
|
12253
|
+
persistentChildren: /* @__PURE__ */ jsxs81(Fragment21, { children: [
|
|
12243
12254
|
approvalSlot,
|
|
12244
12255
|
expanded && showResponseLine && responseSlot && /* @__PURE__ */ jsx112("div", { "data-testid": dataTestPrefix ? `${dataTestPrefix}-response` : void 0, children: responseSlot })
|
|
12245
12256
|
] }),
|
|
@@ -14394,10 +14405,22 @@ function UserMessageContainer() {
|
|
|
14394
14405
|
}
|
|
14395
14406
|
|
|
14396
14407
|
// src/containers/AgentSessionTimelineContainer.tsx
|
|
14397
|
-
import { Fragment as
|
|
14408
|
+
import { Fragment as Fragment22, jsx as jsx132, jsxs as jsxs88 } from "react/jsx-runtime";
|
|
14409
|
+
function ReadOnlyMarkdown(props) {
|
|
14410
|
+
return /* @__PURE__ */ jsx132(
|
|
14411
|
+
Markdown,
|
|
14412
|
+
{
|
|
14413
|
+
...props,
|
|
14414
|
+
readOnly: true,
|
|
14415
|
+
onDownloadArtifact: void 0,
|
|
14416
|
+
sandboxDownloadReadOnlyTooltip: "Download File is not available in read-only mode"
|
|
14417
|
+
}
|
|
14418
|
+
);
|
|
14419
|
+
}
|
|
14398
14420
|
var READ_ONLY_SLOT_OVERRIDES = {
|
|
14399
|
-
UserMessageActionBar: () => /* @__PURE__ */ jsx132(
|
|
14400
|
-
MessageActionBar: () => /* @__PURE__ */ jsx132(
|
|
14421
|
+
UserMessageActionBar: () => /* @__PURE__ */ jsx132(Fragment22, {}),
|
|
14422
|
+
MessageActionBar: () => /* @__PURE__ */ jsx132(Fragment22, {}),
|
|
14423
|
+
Markdown: ReadOnlyMarkdown
|
|
14401
14424
|
};
|
|
14402
14425
|
function turnIdFromMessage(message) {
|
|
14403
14426
|
const messageId = message.id ?? "";
|
|
@@ -14433,12 +14456,13 @@ function applyTerminalState(messages, turn) {
|
|
|
14433
14456
|
if (state?.status !== "error" && state?.status !== "cancelled") return messages;
|
|
14434
14457
|
const assistantIndex = messages.findIndex((message) => message.role === "assistant");
|
|
14435
14458
|
const assistant = assistantIndex < 0 ? void 0 : messages[assistantIndex];
|
|
14459
|
+
const createdAt = new Date(state.completedAt ?? turn.done?.createdAt ?? turn.created.createdAt);
|
|
14436
14460
|
const terminal = state.status === "error" ? {
|
|
14437
14461
|
...assistant ?? {
|
|
14438
14462
|
id: `${turn.turnId}-assistant`,
|
|
14439
14463
|
role: "assistant",
|
|
14440
14464
|
content: [],
|
|
14441
|
-
createdAt
|
|
14465
|
+
createdAt,
|
|
14442
14466
|
metadata: { custom: { turnId: turn.turnId } }
|
|
14443
14467
|
},
|
|
14444
14468
|
status: { type: "incomplete", reason: "error", error: state.message }
|
|
@@ -14447,7 +14471,7 @@ function applyTerminalState(messages, turn) {
|
|
|
14447
14471
|
id: `${turn.turnId}-assistant`,
|
|
14448
14472
|
role: "assistant",
|
|
14449
14473
|
content: [],
|
|
14450
|
-
createdAt
|
|
14474
|
+
createdAt,
|
|
14451
14475
|
metadata: { custom: { turnId: turn.turnId } }
|
|
14452
14476
|
},
|
|
14453
14477
|
content: appendTerminalText(assistant?.content ?? [], `Cancelled: ${state.reason}`),
|
|
@@ -14555,28 +14579,28 @@ function SessionTurnSection({
|
|
|
14555
14579
|
}
|
|
14556
14580
|
|
|
14557
14581
|
// src/theme/defaultSlots.ts
|
|
14558
|
-
var AgentOverview = lazy(() => import("./AgentOverview-
|
|
14582
|
+
var AgentOverview = lazy(() => import("./AgentOverview-7GJJV2OU.js"));
|
|
14559
14583
|
var AgentSessions = lazy(async () => {
|
|
14560
|
-
const mod = await import("./AgentSessions-
|
|
14584
|
+
const mod = await import("./AgentSessions-MR2DREKN.js");
|
|
14561
14585
|
return { default: mod.AgentSessions };
|
|
14562
14586
|
});
|
|
14563
14587
|
var AgentCodeSnippets = lazy(
|
|
14564
|
-
() => import("./AgentCodeSnippets-
|
|
14588
|
+
() => import("./AgentCodeSnippets-ARHIK2T6.js")
|
|
14565
14589
|
);
|
|
14566
14590
|
var SchedulesPage = lazy(async () => {
|
|
14567
|
-
const mod = await import("./SchedulesPage-
|
|
14591
|
+
const mod = await import("./SchedulesPage-5XZRDA5O.js");
|
|
14568
14592
|
return { default: mod.SchedulesPage };
|
|
14569
14593
|
});
|
|
14570
14594
|
var AgentSessionEventTimeline = lazy(async () => {
|
|
14571
|
-
const mod = await import("./AgentSessionEventTimeline-
|
|
14595
|
+
const mod = await import("./AgentSessionEventTimeline-7QM7QKIQ.js");
|
|
14572
14596
|
return { default: mod.AgentSessionEventTimeline };
|
|
14573
14597
|
});
|
|
14574
14598
|
var AgentSessionEventTimelineChart = lazy(async () => {
|
|
14575
|
-
const mod = await import("./AgentSessionEventTimelineChart-
|
|
14599
|
+
const mod = await import("./AgentSessionEventTimelineChart-PIDYWLYT.js");
|
|
14576
14600
|
return { default: mod.AgentSessionEventTimelineChart };
|
|
14577
14601
|
});
|
|
14578
14602
|
var AgentMetricChart = lazy(async () => {
|
|
14579
|
-
const mod = await import("./AgentMetricChart-
|
|
14603
|
+
const mod = await import("./AgentMetricChart-ZQIRBCZL.js");
|
|
14580
14604
|
return { default: mod.AgentMetricChart };
|
|
14581
14605
|
});
|
|
14582
14606
|
var defaultSlots = {
|
|
@@ -14949,4 +14973,4 @@ export {
|
|
|
14949
14973
|
UserMessageContainer,
|
|
14950
14974
|
defaultSlots
|
|
14951
14975
|
};
|
|
14952
|
-
//# sourceMappingURL=chunk-
|
|
14976
|
+
//# sourceMappingURL=chunk-4OEAJKLJ.js.map
|