@tangle-network/sandbox-ui 0.5.1 → 0.6.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.
- package/dist/chat.js +6 -6
- package/dist/{chunk-XBR3IP7B.js → chunk-33W2TLUL.js} +2 -2
- package/dist/{chunk-H5XYSFYE.js → chunk-3HW53XTH.js} +6 -6
- package/dist/{chunk-R3IU37AW.js → chunk-5F3VOGCT.js} +19 -22
- package/dist/{chunk-7DVFZEVW.js → chunk-6V4XVKFY.js} +69 -69
- package/dist/{chunk-FFOXUHOF.js → chunk-FNYJFCGU.js} +3 -3
- package/dist/{chunk-5CEMHKBP.js → chunk-GW4GRAWJ.js} +3 -2
- package/dist/{chunk-WQH233GF.js → chunk-KH5UDAJ2.js} +3 -3
- package/dist/{chunk-WC7QTWPN.js → chunk-LY32SP6X.js} +47 -58
- package/dist/{chunk-NTSRY4GW.js → chunk-MJUDMVRU.js} +5 -5
- package/dist/{chunk-5F4NX5R2.js → chunk-MXRQ4MJE.js} +1 -1
- package/dist/{chunk-VBWY44UU.js → chunk-OVNLOE3Y.js} +1 -1
- package/dist/{chunk-P24K22CV.js → chunk-WSR2NB2H.js} +29 -37
- package/dist/dashboard.js +1 -1
- package/dist/{document-editor-pane-JNXPANWM.js → document-editor-pane-DWWUTTTZ.js} +2 -2
- package/dist/editor.js +2 -2
- package/dist/files.js +2 -2
- package/dist/hooks.js +4 -4
- package/dist/index.js +12 -12
- package/dist/markdown.js +1 -1
- package/dist/openui.js +2 -2
- package/dist/run.js +4 -4
- package/dist/sdk-hooks.js +4 -4
- package/dist/tokens.css +45 -0
- package/dist/workspace.js +7 -7
- package/package.json +2 -1
- package/tailwind.config.cjs +11 -0
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
CodeBlock,
|
|
12
12
|
CopyButton,
|
|
13
13
|
Markdown
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-3HW53XTH.js";
|
|
15
15
|
import {
|
|
16
16
|
cn
|
|
17
17
|
} from "./chunk-RQHJBTEU.js";
|
|
@@ -43,15 +43,15 @@ function PreviewCard({
|
|
|
43
43
|
className
|
|
44
44
|
),
|
|
45
45
|
children: [
|
|
46
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-
|
|
47
|
-
/* @__PURE__ */ jsx("div", { className: "flex h-
|
|
48
|
-
/* @__PURE__ */
|
|
49
|
-
/* @__PURE__ */ jsx("
|
|
50
|
-
description ? /* @__PURE__ */ jsx("
|
|
51
|
-
] }),
|
|
46
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2.5 border-b border-[var(--border-subtle)] bg-[var(--depth-1)] px-[var(--tool-card-px)] py-[var(--tool-card-py)]", children: [
|
|
47
|
+
/* @__PURE__ */ jsx("div", { className: "flex h-[var(--tool-icon-size)] w-[var(--tool-icon-size)] shrink-0 items-center justify-center rounded-[var(--radius-sm)] border border-[var(--border-accent)] bg-[var(--bg-section)] text-[var(--brand-cool)]", children: icon }),
|
|
48
|
+
/* @__PURE__ */ jsx("div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
49
|
+
/* @__PURE__ */ jsx("span", { className: "text-xs font-semibold text-[var(--text-primary)]", children: title }),
|
|
50
|
+
description ? /* @__PURE__ */ jsx("span", { className: "truncate text-xs font-[var(--font-mono)] text-[var(--text-muted)]", children: description }) : null
|
|
51
|
+
] }) }),
|
|
52
52
|
meta ? /* @__PURE__ */ jsx("div", { className: "shrink-0 text-xs text-[var(--text-muted)]", children: meta }) : null
|
|
53
53
|
] }),
|
|
54
|
-
children ? /* @__PURE__ */ jsx("div", { className: "space-y-
|
|
54
|
+
children ? /* @__PURE__ */ jsx("div", { className: "space-y-2 px-[var(--tool-card-px)] py-[var(--tool-card-py)]", children }) : null
|
|
55
55
|
]
|
|
56
56
|
}
|
|
57
57
|
);
|
|
@@ -64,7 +64,7 @@ function PreviewEmpty({
|
|
|
64
64
|
"div",
|
|
65
65
|
{
|
|
66
66
|
className: cn(
|
|
67
|
-
"rounded-[var(--radius-md)] border border-dashed border-[var(--border-subtle)] bg-[var(--bg-section)] px-3 py-
|
|
67
|
+
"rounded-[var(--radius-md)] border border-dashed border-[var(--border-subtle)] bg-[var(--bg-section)] px-3 py-2.5 text-xs text-[var(--text-muted)]",
|
|
68
68
|
className
|
|
69
69
|
),
|
|
70
70
|
children: label
|
|
@@ -75,7 +75,7 @@ function PreviewError({ error }) {
|
|
|
75
75
|
return /* @__PURE__ */ jsx("div", { className: "rounded-[var(--radius-md)] border border-[var(--surface-danger-border)] bg-[var(--surface-danger-bg)] px-3 py-3 text-sm text-[var(--surface-danger-text)]", children: error });
|
|
76
76
|
}
|
|
77
77
|
function PreviewLoading({ label = "Running\u2026" }) {
|
|
78
|
-
return /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 rounded-[var(--radius-md)] border border-[var(--border-subtle)] bg-[var(--bg-section)] px-3 py-
|
|
78
|
+
return /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 rounded-[var(--radius-md)] border border-[var(--border-subtle)] bg-[var(--bg-section)] px-3 py-2 text-xs text-[var(--text-muted)]", children: [
|
|
79
79
|
/* @__PURE__ */ jsx(Loader2, { className: "h-4 w-4 animate-spin text-[var(--brand-cool)]" }),
|
|
80
80
|
/* @__PURE__ */ jsx("span", { children: label })
|
|
81
81
|
] });
|
|
@@ -687,14 +687,14 @@ var ExpandedToolDetail = memo8(({ part }) => {
|
|
|
687
687
|
}
|
|
688
688
|
if (meta.displayVariant === "read-file") {
|
|
689
689
|
return /* @__PURE__ */ jsxs9("div", { className: "overflow-hidden rounded-[var(--radius-lg)] border border-[var(--border-subtle)] bg-[var(--bg-card)] shadow-[var(--shadow-card)]", children: [
|
|
690
|
-
/* @__PURE__ */ jsxs9("div", { className: "flex items-center gap-
|
|
691
|
-
/* @__PURE__ */ jsx9("div", { className: "flex h-
|
|
692
|
-
/* @__PURE__ */ jsxs9("div", { className: "min-w-0", children: [
|
|
693
|
-
/* @__PURE__ */ jsx9("
|
|
694
|
-
meta.targetPath ? /* @__PURE__ */ jsx9("
|
|
690
|
+
/* @__PURE__ */ jsxs9("div", { className: "flex items-center gap-2.5 border-b border-[var(--border-subtle)] bg-[var(--depth-1)] px-3 py-2", children: [
|
|
691
|
+
/* @__PURE__ */ jsx9("div", { className: "flex h-7 w-7 shrink-0 items-center justify-center rounded-[var(--radius-sm)] border border-[var(--border-accent)] bg-[var(--bg-section)] text-[var(--brand-cool)]", children: /* @__PURE__ */ jsx9(FileText2, { className: "h-3.5 w-3.5" }) }),
|
|
692
|
+
/* @__PURE__ */ jsxs9("div", { className: "min-w-0 flex items-center gap-2", children: [
|
|
693
|
+
/* @__PURE__ */ jsx9("span", { className: "text-xs font-semibold text-[var(--text-primary)]", children: "Read file" }),
|
|
694
|
+
meta.targetPath ? /* @__PURE__ */ jsx9("span", { className: "truncate text-xs font-[var(--font-mono)] text-[var(--text-muted)]", children: meta.targetPath }) : null
|
|
695
695
|
] })
|
|
696
696
|
] }),
|
|
697
|
-
/* @__PURE__ */ jsxs9("div", { className: "space-y-
|
|
697
|
+
/* @__PURE__ */ jsxs9("div", { className: "space-y-2 px-3 py-2.5", children: [
|
|
698
698
|
typeof output === "string" ? /* @__PURE__ */ jsx9(CodeBlock, { code: output, language: langFromPath(meta.targetPath) ?? "text", className: "rounded-[var(--radius-md)]" }) : /* @__PURE__ */ jsx9("div", { className: "rounded-[var(--radius-md)] border border-dashed border-[var(--border-subtle)] bg-[var(--bg-section)] px-3 py-4 text-sm text-[var(--text-muted)]", children: "No readable file content was returned." }),
|
|
699
699
|
error ? /* @__PURE__ */ jsx9("div", { className: "rounded-[var(--radius-md)] border border-[var(--surface-danger-border)] bg-[var(--surface-danger-bg)] px-3 py-3 text-sm text-[var(--surface-danger-text)]", children: error }) : null
|
|
700
700
|
] })
|
|
@@ -822,7 +822,7 @@ var InlineToolItem = memo9(
|
|
|
822
822
|
className
|
|
823
823
|
),
|
|
824
824
|
children: [
|
|
825
|
-
/* @__PURE__ */ jsxs10("div", { className: "flex items-center gap-2
|
|
825
|
+
/* @__PURE__ */ jsxs10("div", { className: "flex items-center gap-2 px-2.5 py-1.5", children: [
|
|
826
826
|
/* @__PURE__ */ jsx11("div", { className: cn(
|
|
827
827
|
"shrink-0",
|
|
828
828
|
isRunning && "text-[var(--brand-cool)]",
|
|
@@ -830,18 +830,14 @@ var InlineToolItem = memo9(
|
|
|
830
830
|
isError && "text-[var(--surface-danger-text)]",
|
|
831
831
|
!isRunning && !isComplete && !isError && "text-[var(--text-muted)]"
|
|
832
832
|
), children: isRunning ? /* @__PURE__ */ jsx11(Loader24, { className: "h-3.5 w-3.5 animate-spin" }) : isComplete ? /* @__PURE__ */ jsx11(CheckCircle2, { className: "h-3.5 w-3.5" }) : isError ? /* @__PURE__ */ jsx11(AlertCircle2, { className: "h-3.5 w-3.5" }) : /* @__PURE__ */ jsx11(DefaultIcon, { className: "h-3.5 w-3.5" }) }),
|
|
833
|
-
/* @__PURE__ */
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
isError ? /* @__PURE__ */ jsx11("span", { className: "rounded-full border border-[var(--surface-danger-border)] bg-[var(--surface-danger-bg)] px-2 py-0.5 text-[11px] font-semibold uppercase tracking-[0.06em] text-[var(--surface-danger-text)]", children: "Failed" }) : null,
|
|
837
|
-
isRunning ? /* @__PURE__ */ jsx11("span", { className: "rounded-full border border-[var(--border-accent)] bg-[var(--brand-cool)]/10 px-2 py-0.5 text-[11px] font-semibold uppercase tracking-[0.06em] text-[var(--brand-cool)]", children: "Running" }) : null
|
|
838
|
-
] }),
|
|
839
|
-
meta.description ? /* @__PURE__ */ jsx11("div", { className: "mt-1 truncate text-xs font-[var(--font-mono)] text-[var(--text-muted)]", children: meta.description }) : null
|
|
840
|
-
] }),
|
|
841
|
-
/* @__PURE__ */ jsxs10("div", { className: "flex shrink-0 items-center gap-2", children: [
|
|
833
|
+
/* @__PURE__ */ jsx11("span", { className: "truncate text-xs font-medium text-[var(--text-primary)]", children: meta.title }),
|
|
834
|
+
meta.description ? /* @__PURE__ */ jsx11("span", { className: "hidden truncate text-xs font-[var(--font-mono)] text-[var(--text-muted)] sm:inline", children: meta.description }) : null,
|
|
835
|
+
/* @__PURE__ */ jsxs10("div", { className: "ml-auto flex shrink-0 items-center gap-1.5", children: [
|
|
842
836
|
isRunning && startTime ? /* @__PURE__ */ jsx11(LiveDuration, { startTime }) : null,
|
|
843
|
-
!isRunning && durationMs != null ? /* @__PURE__ */ jsx11("span", { className: "
|
|
844
|
-
|
|
837
|
+
!isRunning && durationMs != null ? /* @__PURE__ */ jsx11("span", { className: "text-[10px] font-[var(--font-mono)] tabular-nums text-[var(--text-muted)]", children: formatDuration(durationMs) }) : null,
|
|
838
|
+
isError ? /* @__PURE__ */ jsx11("span", { className: "rounded-full border border-[var(--surface-danger-border)] bg-[var(--surface-danger-bg)] px-1.5 py-px text-[10px] font-semibold uppercase text-[var(--surface-danger-text)]", children: "Failed" }) : null,
|
|
839
|
+
isRunning ? /* @__PURE__ */ jsx11("span", { className: "rounded-full border border-[var(--border-accent)] bg-[var(--brand-cool)]/10 px-1.5 py-px text-[10px] font-semibold uppercase text-[var(--brand-cool)]", children: "Running" }) : null,
|
|
840
|
+
open ? /* @__PURE__ */ jsx11(ChevronDown2, { className: "h-3 w-3 text-[var(--text-muted)]" }) : /* @__PURE__ */ jsx11(ChevronRight2, { className: "h-3 w-3 text-[var(--text-muted)]" })
|
|
845
841
|
] })
|
|
846
842
|
] }),
|
|
847
843
|
errorText && !open ? /* @__PURE__ */ jsx11("div", { className: "border-t border-[var(--border-subtle)] px-3 py-2 text-xs text-red-200", children: errorText }) : null
|
|
@@ -1001,17 +997,14 @@ function CategoryBadges({ categories }) {
|
|
|
1001
997
|
[categories]
|
|
1002
998
|
);
|
|
1003
999
|
if (sorted.length === 0) return null;
|
|
1004
|
-
return /* @__PURE__ */ jsx13("div", { className: "flex items-center gap-1
|
|
1000
|
+
return /* @__PURE__ */ jsx13("div", { className: "flex items-center gap-1", children: sorted.map((cat) => {
|
|
1005
1001
|
const Icon = CATEGORY_ICON_MAP[cat] ?? Settings2;
|
|
1006
|
-
return /* @__PURE__ */
|
|
1002
|
+
return /* @__PURE__ */ jsx13(
|
|
1007
1003
|
"span",
|
|
1008
1004
|
{
|
|
1009
1005
|
title: cat,
|
|
1010
|
-
className: "flex h-
|
|
1011
|
-
children:
|
|
1012
|
-
/* @__PURE__ */ jsx13(Icon, { className: "h-3.5 w-3.5" }),
|
|
1013
|
-
/* @__PURE__ */ jsx13("span", { children: cat })
|
|
1014
|
-
]
|
|
1006
|
+
className: "flex h-5 w-5 items-center justify-center rounded border border-[var(--border-subtle)] text-[var(--text-muted)]",
|
|
1007
|
+
children: /* @__PURE__ */ jsx13(Icon, { className: "h-3 w-3" })
|
|
1015
1008
|
},
|
|
1016
1009
|
cat
|
|
1017
1010
|
);
|
|
@@ -1077,40 +1070,36 @@ var RunGroup = memo11(
|
|
|
1077
1070
|
"button",
|
|
1078
1071
|
{
|
|
1079
1072
|
className: cn(
|
|
1080
|
-
"w-full rounded-[var(--radius-
|
|
1073
|
+
"w-full rounded-[var(--radius-lg)] border px-3 py-2 text-left transition-colors",
|
|
1081
1074
|
"bg-[var(--depth-2)] hover:bg-[var(--depth-3)]",
|
|
1082
1075
|
collapsed ? branding.borderClass : "border-[var(--border-subtle)]",
|
|
1083
1076
|
branding.bgClass
|
|
1084
1077
|
),
|
|
1085
|
-
children: /* @__PURE__ */ jsxs12("div", { className: "flex items-center gap-
|
|
1078
|
+
children: /* @__PURE__ */ jsxs12("div", { className: "flex items-center gap-2.5", children: [
|
|
1086
1079
|
/* @__PURE__ */ jsx13(
|
|
1087
1080
|
"div",
|
|
1088
1081
|
{
|
|
1089
1082
|
className: cn(
|
|
1090
|
-
"flex h-
|
|
1083
|
+
"flex h-7 w-7 shrink-0 items-center justify-center rounded-[var(--radius-md)] border bg-[var(--accent-surface-soft)]",
|
|
1091
1084
|
branding.borderClass
|
|
1092
1085
|
),
|
|
1093
|
-
children: /* @__PURE__ */ jsx13(Bot2, { className: cn("h-
|
|
1086
|
+
children: /* @__PURE__ */ jsx13(Bot2, { className: cn("h-3.5 w-3.5", branding.accentClass) })
|
|
1094
1087
|
}
|
|
1095
1088
|
),
|
|
1096
|
-
/* @__PURE__ */
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1089
|
+
/* @__PURE__ */ jsx13("span", { className: cn("text-xs font-semibold", branding.textClass), children: branding.label }),
|
|
1090
|
+
renderSummary(run) ? /* @__PURE__ */ jsx13("span", { className: "text-[11px] text-[var(--text-muted)]", children: renderSummary(run) }) : null,
|
|
1091
|
+
collapsed && run.summaryText ? /* @__PURE__ */ jsx13("span", { className: "min-w-0 truncate text-[11px] text-[var(--text-secondary)]", children: run.summaryText }) : null,
|
|
1092
|
+
/* @__PURE__ */ jsxs12("div", { className: "ml-auto flex shrink-0 items-center gap-1.5", children: [
|
|
1093
|
+
/* @__PURE__ */ jsx13(CategoryBadges, { categories: stats.toolCategories }),
|
|
1094
|
+
isStreaming ? /* @__PURE__ */ jsxs12("span", { className: "inline-flex items-center gap-1 rounded-full border border-[var(--border-accent)] bg-[var(--accent-surface-soft)] px-2 py-px text-[10px] font-semibold uppercase text-[var(--accent-text)]", children: [
|
|
1095
|
+
/* @__PURE__ */ jsx13(Loader25, { className: "h-2.5 w-2.5 animate-spin" }),
|
|
1096
|
+
"Running"
|
|
1097
|
+
] }) : /* @__PURE__ */ jsxs12("span", { className: "inline-flex items-center gap-1 rounded-full border border-[var(--border-subtle)] px-2 py-px text-[10px] font-semibold uppercase text-[var(--text-muted)]", children: [
|
|
1098
|
+
/* @__PURE__ */ jsx13(Sparkles, { className: "h-2.5 w-2.5" }),
|
|
1099
|
+
"Done"
|
|
1106
1100
|
] }),
|
|
1107
|
-
/* @__PURE__ */
|
|
1108
|
-
|
|
1109
|
-
collapsed && run.summaryText ? /* @__PURE__ */ jsx13("span", { className: "min-w-0 truncate text-[var(--text-secondary)]", children: run.summaryText }) : null
|
|
1110
|
-
] })
|
|
1111
|
-
] }),
|
|
1112
|
-
/* @__PURE__ */ jsx13(CategoryBadges, { categories: stats.toolCategories }),
|
|
1113
|
-
!collapsed ? /* @__PURE__ */ jsx13(ChevronDown4, { className: "h-4 w-4 shrink-0 text-[var(--text-muted)]" }) : /* @__PURE__ */ jsx13(ChevronRight4, { className: "h-4 w-4 shrink-0 text-[var(--text-muted)]" })
|
|
1101
|
+
!collapsed ? /* @__PURE__ */ jsx13(ChevronDown4, { className: "h-3.5 w-3.5 text-[var(--text-muted)]" }) : /* @__PURE__ */ jsx13(ChevronRight4, { className: "h-3.5 w-3.5 text-[var(--text-muted)]" })
|
|
1102
|
+
] })
|
|
1114
1103
|
] })
|
|
1115
1104
|
}
|
|
1116
1105
|
) }),
|
|
@@ -1121,7 +1110,7 @@ var RunGroup = memo11(
|
|
|
1121
1110
|
"div",
|
|
1122
1111
|
{
|
|
1123
1112
|
className: cn(
|
|
1124
|
-
"mt-
|
|
1113
|
+
"mt-1.5 space-y-1.5 rounded-[var(--radius-lg)] border border-[var(--border-subtle)] p-2 shadow-[var(--shadow-card)]",
|
|
1125
1114
|
branding.containerBgClass
|
|
1126
1115
|
),
|
|
1127
1116
|
children: allParts.map(({ part, msgId, index }, partIndex) => {
|
|
@@ -1156,7 +1145,7 @@ var RunGroup = memo11(
|
|
|
1156
1145
|
return /* @__PURE__ */ jsx13(
|
|
1157
1146
|
"div",
|
|
1158
1147
|
{
|
|
1159
|
-
className: "rounded-[
|
|
1148
|
+
className: "rounded-[var(--radius-lg)] border border-[var(--border-subtle)] bg-[var(--bg-card)] px-3 py-2.5",
|
|
1160
1149
|
children: /* @__PURE__ */ jsx13(Markdown, { children: part.text })
|
|
1161
1150
|
},
|
|
1162
1151
|
key
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
CodeBlock
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-3HW53XTH.js";
|
|
4
4
|
import {
|
|
5
5
|
cn
|
|
6
6
|
} from "./chunk-RQHJBTEU.js";
|
|
@@ -116,7 +116,7 @@ function ToolCallStep({
|
|
|
116
116
|
onClick: () => hasExpandable && setExpanded(!expanded),
|
|
117
117
|
disabled: !hasExpandable,
|
|
118
118
|
className: cn(
|
|
119
|
-
"flex w-full items-center gap-
|
|
119
|
+
"flex w-full items-center gap-2.5 px-3 py-2 text-left text-sm",
|
|
120
120
|
hasExpandable && "cursor-pointer"
|
|
121
121
|
),
|
|
122
122
|
children: [
|
|
@@ -124,12 +124,12 @@ function ToolCallStep({
|
|
|
124
124
|
"div",
|
|
125
125
|
{
|
|
126
126
|
className: cn(
|
|
127
|
-
"flex h-
|
|
127
|
+
"flex h-6 w-6 shrink-0 items-center justify-center rounded-[var(--radius-sm)] border",
|
|
128
128
|
status === "running" && "border-[var(--border-accent)] bg-[var(--accent-surface-soft)] text-[var(--brand-cool)]",
|
|
129
129
|
status === "success" && "border-[var(--surface-success-border)] bg-[var(--surface-success-bg)] text-[var(--surface-success-text)]",
|
|
130
130
|
status === "error" && "border-[var(--surface-danger-border)] bg-[var(--surface-danger-bg)] text-[var(--surface-danger-text)]"
|
|
131
131
|
),
|
|
132
|
-
children: status === "running" ? /* @__PURE__ */ jsx(Loader2, { className: "h-
|
|
132
|
+
children: status === "running" ? /* @__PURE__ */ jsx(Loader2, { className: "h-3 w-3 animate-spin shrink-0" }) : /* @__PURE__ */ jsx(Icon, { className: cn("h-3 w-3 shrink-0", STATUS_COLORS[status]) })
|
|
133
133
|
}
|
|
134
134
|
),
|
|
135
135
|
/* @__PURE__ */ jsx("span", { className: "truncate flex-1 font-[var(--font-sans)] text-[var(--text-secondary)]", children: label }),
|
|
@@ -158,7 +158,7 @@ function ToolCallStep({
|
|
|
158
158
|
]
|
|
159
159
|
}
|
|
160
160
|
),
|
|
161
|
-
expanded && (detail || output) && /* @__PURE__ */ jsxs("div", { className: "space-y-2 border-t border-[var(--border-subtle)] bg-[var(--bg-section)] px-
|
|
161
|
+
expanded && (detail || output) && /* @__PURE__ */ jsxs("div", { className: "space-y-2 border-t border-[var(--border-subtle)] bg-[var(--bg-section)] px-3 py-2.5", children: [
|
|
162
162
|
detail && (isFilePath(detail) ? /* @__PURE__ */ jsx(FilePathChip, { path: detail }) : /* @__PURE__ */ jsx("div", { className: "text-xs font-[var(--font-mono)] text-[var(--text-muted)]", children: detail })),
|
|
163
163
|
output && /* @__PURE__ */ jsx(
|
|
164
164
|
CodeBlock,
|
|
@@ -10,21 +10,21 @@ import {
|
|
|
10
10
|
} from "./chunk-BRBTD7RH.js";
|
|
11
11
|
import {
|
|
12
12
|
ChatContainer
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-5F3VOGCT.js";
|
|
14
14
|
import {
|
|
15
15
|
OpenUIArtifactRenderer
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-OVNLOE3Y.js";
|
|
17
17
|
import {
|
|
18
18
|
FileArtifactPane,
|
|
19
19
|
FileTree,
|
|
20
20
|
filterFileTree
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-KH5UDAJ2.js";
|
|
22
22
|
import {
|
|
23
23
|
ArtifactPane
|
|
24
24
|
} from "./chunk-W4LM3QYZ.js";
|
|
25
25
|
import {
|
|
26
26
|
Markdown
|
|
27
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-3HW53XTH.js";
|
|
28
28
|
import {
|
|
29
29
|
Badge
|
|
30
30
|
} from "./chunk-TDYQBLL5.js";
|
|
@@ -958,7 +958,7 @@ function SessionSidebar({
|
|
|
958
958
|
isActive: currentItemId === item.id
|
|
959
959
|
})).length
|
|
960
960
|
])), [currentItemId, filters, orderedItems, sessionsById]);
|
|
961
|
-
return /* @__PURE__ */ jsxs7("aside", { className: cn("flex w-64 shrink-0 flex-col border-r border-[var(--border-subtle)] bg-[var(--
|
|
961
|
+
return /* @__PURE__ */ jsxs7("aside", { className: cn("flex w-64 shrink-0 flex-col border-r border-[var(--border-subtle)] bg-[var(--bg-card)]", className), children: [
|
|
962
962
|
/* @__PURE__ */ jsxs7("div", { className: "border-b border-[var(--border-subtle)] px-3 py-3", children: [
|
|
963
963
|
/* @__PURE__ */ jsxs7("div", { className: "flex items-center justify-between gap-2", children: [
|
|
964
964
|
/* @__PURE__ */ jsxs7("div", { className: "flex items-center gap-2 min-w-0", children: [
|
|
@@ -1113,15 +1113,15 @@ import { Activity, AlertCircle as AlertCircle2, LoaderCircle, MessageSquareText
|
|
|
1113
1113
|
import { jsx as jsx8, jsxs as jsxs8 } from "react/jsx-runtime";
|
|
1114
1114
|
function SessionStatusDot({ session }) {
|
|
1115
1115
|
if (session.status === "error") {
|
|
1116
|
-
return /* @__PURE__ */ jsx8(AlertCircle2, { className: "h-3
|
|
1116
|
+
return /* @__PURE__ */ jsx8(AlertCircle2, { className: "h-3 w-3 text-[var(--surface-danger-text)]" });
|
|
1117
1117
|
}
|
|
1118
1118
|
if (session.status === "running") {
|
|
1119
|
-
return /* @__PURE__ */ jsx8(LoaderCircle, { className: "h-3
|
|
1119
|
+
return /* @__PURE__ */ jsx8(LoaderCircle, { className: "h-3 w-3 animate-spin text-[var(--brand-cool)]" });
|
|
1120
1120
|
}
|
|
1121
1121
|
if (session.status === "attention-needed") {
|
|
1122
|
-
return /* @__PURE__ */ jsx8(Activity, { className: "h-3
|
|
1122
|
+
return /* @__PURE__ */ jsx8(Activity, { className: "h-3 w-3 text-[var(--surface-warning-text)]" });
|
|
1123
1123
|
}
|
|
1124
|
-
return /* @__PURE__ */ jsx8("span", { className: "h-
|
|
1124
|
+
return /* @__PURE__ */ jsx8("span", { className: "h-1.5 w-1.5 rounded-full bg-[var(--text-dim)]" });
|
|
1125
1125
|
}
|
|
1126
1126
|
function navigateToSession(session) {
|
|
1127
1127
|
if (!session.href || typeof window === "undefined") return;
|
|
@@ -1141,41 +1141,38 @@ function SessionActivityMonitor({
|
|
|
1141
1141
|
const sessionLookup = Object.keys(sessionsById).length > 0 ? sessionsById : Object.fromEntries(trackedSessions.map((session) => [session.sessionId, session]));
|
|
1142
1142
|
if (projectActivity.length === 0) {
|
|
1143
1143
|
if (compact) return null;
|
|
1144
|
-
return /* @__PURE__ */ jsx8("div", { className: cn("rounded-[var(--radius-
|
|
1144
|
+
return /* @__PURE__ */ jsx8("div", { className: cn("rounded-[var(--radius-md)] border border-[var(--border-subtle)] bg-[var(--depth-2)] px-3 py-2 text-xs text-[var(--text-muted)]", className), children: emptyMessage });
|
|
1145
1145
|
}
|
|
1146
|
-
return /* @__PURE__ */ jsxs8("div", { className: cn("space-y-
|
|
1147
|
-
/* @__PURE__ */ jsxs8("div", { className: "flex items-center justify-between px-
|
|
1148
|
-
/* @__PURE__ */ jsxs8("div", { className: "flex items-center gap-
|
|
1149
|
-
/* @__PURE__ */ jsx8(Activity, { className: "h-3
|
|
1150
|
-
"Active
|
|
1146
|
+
return /* @__PURE__ */ jsxs8("div", { className: cn("space-y-1.5", className), children: [
|
|
1147
|
+
/* @__PURE__ */ jsxs8("div", { className: "flex items-center justify-between px-0.5", children: [
|
|
1148
|
+
/* @__PURE__ */ jsxs8("div", { className: "flex items-center gap-1.5 text-[10px] font-semibold uppercase tracking-[0.14em] text-[var(--text-muted)]", children: [
|
|
1149
|
+
/* @__PURE__ */ jsx8(Activity, { className: "h-3 w-3" }),
|
|
1150
|
+
"Active"
|
|
1151
1151
|
] }),
|
|
1152
|
-
totalRunning > 0 && /* @__PURE__ */
|
|
1153
|
-
totalRunning,
|
|
1154
|
-
" running"
|
|
1155
|
-
] })
|
|
1152
|
+
totalRunning > 0 && /* @__PURE__ */ jsx8("span", { className: "rounded-full border border-[var(--border-accent)] bg-[var(--accent-surface-soft)] px-1.5 py-px text-[10px] font-medium text-[var(--accent-text)]", children: totalRunning })
|
|
1156
1153
|
] }),
|
|
1157
|
-
/* @__PURE__ */ jsx8("div", { className: "space-y-
|
|
1154
|
+
/* @__PURE__ */ jsx8("div", { className: "space-y-1", children: projectActivity.map((project) => {
|
|
1158
1155
|
const label = resolveProjectLabel?.(project.projectId, project.projectLabel) ?? project.projectLabel ?? String(project.projectId);
|
|
1159
1156
|
return /* @__PURE__ */ jsxs8(
|
|
1160
1157
|
"div",
|
|
1161
1158
|
{
|
|
1162
|
-
className: "rounded-[var(--radius-md)] border border-[var(--border-subtle)] bg-[var(--
|
|
1159
|
+
className: "rounded-[var(--radius-md)] border border-[var(--border-subtle)] bg-[var(--depth-2)]",
|
|
1163
1160
|
children: [
|
|
1164
|
-
/* @__PURE__ */ jsxs8("div", { className: "flex items-center justify-between gap-
|
|
1165
|
-
/* @__PURE__ */ jsxs8("div", { children: [
|
|
1166
|
-
/* @__PURE__ */ jsx8("div", { className: "text-
|
|
1167
|
-
/* @__PURE__ */ jsxs8("div", { className: "text-
|
|
1161
|
+
/* @__PURE__ */ jsxs8("div", { className: "flex items-center justify-between gap-2 px-2.5 py-1.5", children: [
|
|
1162
|
+
/* @__PURE__ */ jsxs8("div", { className: "min-w-0", children: [
|
|
1163
|
+
/* @__PURE__ */ jsx8("div", { className: "truncate text-xs font-medium text-[var(--text-primary)]", children: label }),
|
|
1164
|
+
/* @__PURE__ */ jsxs8("div", { className: "text-[10px] text-[var(--text-muted)]", children: [
|
|
1168
1165
|
project.activeSessionCount,
|
|
1169
|
-
"
|
|
1166
|
+
" session",
|
|
1170
1167
|
project.activeSessionCount === 1 ? "" : "s"
|
|
1171
1168
|
] })
|
|
1172
1169
|
] }),
|
|
1173
|
-
project.runningSessionIds.length > 0 && /* @__PURE__ */ jsxs8("span", { className: "
|
|
1170
|
+
project.runningSessionIds.length > 0 && /* @__PURE__ */ jsxs8("span", { className: "shrink-0 text-[10px] text-[var(--text-muted)]", children: [
|
|
1174
1171
|
project.runningSessionIds.length,
|
|
1175
1172
|
" live"
|
|
1176
1173
|
] })
|
|
1177
1174
|
] }),
|
|
1178
|
-
!compact && project.runningSessionIds.length > 0 && /* @__PURE__ */ jsx8("div", { className: "
|
|
1175
|
+
!compact && project.runningSessionIds.length > 0 && /* @__PURE__ */ jsx8("div", { className: "border-t border-[var(--border-subtle)] px-1.5 py-1", children: project.runningSessionIds.map((sessionId) => {
|
|
1179
1176
|
const session = sessionLookup[sessionId];
|
|
1180
1177
|
if (!session) return null;
|
|
1181
1178
|
return /* @__PURE__ */ jsxs8(
|
|
@@ -1189,16 +1186,11 @@ function SessionActivityMonitor({
|
|
|
1189
1186
|
}
|
|
1190
1187
|
navigateToSession(session);
|
|
1191
1188
|
},
|
|
1192
|
-
className: "flex w-full items-center
|
|
1189
|
+
className: "flex w-full items-center gap-2 rounded-[var(--radius-sm)] px-2 py-1 text-left transition-colors hover:bg-[var(--bg-hover)]",
|
|
1193
1190
|
children: [
|
|
1194
|
-
/* @__PURE__ */
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
/* @__PURE__ */ jsx8("div", { className: "truncate text-sm font-medium text-[var(--text-primary)]", children: session.title ?? "Untitled Session" }),
|
|
1198
|
-
/* @__PURE__ */ jsx8("div", { className: "truncate text-xs text-[var(--text-muted)]", children: session.href ?? session.sessionId })
|
|
1199
|
-
] })
|
|
1200
|
-
] }),
|
|
1201
|
-
/* @__PURE__ */ jsx8(MessageSquareText2, { className: "h-4 w-4 shrink-0 text-[var(--text-dim)]" })
|
|
1191
|
+
/* @__PURE__ */ jsx8(SessionStatusDot, { session }),
|
|
1192
|
+
/* @__PURE__ */ jsx8("span", { className: "min-w-0 truncate text-xs text-[var(--text-primary)]", children: session.title ?? "Untitled" }),
|
|
1193
|
+
/* @__PURE__ */ jsx8(MessageSquareText2, { className: "ml-auto h-3 w-3 shrink-0 text-[var(--text-dim)]" })
|
|
1202
1194
|
]
|
|
1203
1195
|
},
|
|
1204
1196
|
sessionId
|
package/dist/dashboard.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import {
|
|
3
3
|
DocumentEditorPane
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-FNYJFCGU.js";
|
|
5
5
|
import "./chunk-Q56BYXQF.js";
|
|
6
6
|
import "./chunk-W4LM3QYZ.js";
|
|
7
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-3HW53XTH.js";
|
|
8
8
|
import "./chunk-RQHJBTEU.js";
|
|
9
9
|
export {
|
|
10
10
|
DocumentEditorPane
|
package/dist/editor.js
CHANGED
|
@@ -11,10 +11,10 @@ import {
|
|
|
11
11
|
useEditorConnection,
|
|
12
12
|
useEditorContext,
|
|
13
13
|
useYjsState
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-FNYJFCGU.js";
|
|
15
15
|
import "./chunk-Q56BYXQF.js";
|
|
16
16
|
import "./chunk-W4LM3QYZ.js";
|
|
17
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-3HW53XTH.js";
|
|
18
18
|
import "./chunk-RQHJBTEU.js";
|
|
19
19
|
export {
|
|
20
20
|
CollaboratorsList,
|
package/dist/files.js
CHANGED
|
@@ -4,9 +4,9 @@ import {
|
|
|
4
4
|
FileTabs,
|
|
5
5
|
FileTree,
|
|
6
6
|
filterFileTree
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-KH5UDAJ2.js";
|
|
8
8
|
import "./chunk-W4LM3QYZ.js";
|
|
9
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-3HW53XTH.js";
|
|
10
10
|
import "./chunk-RQHJBTEU.js";
|
|
11
11
|
export {
|
|
12
12
|
FileArtifactPane,
|
package/dist/hooks.js
CHANGED
|
@@ -15,17 +15,17 @@ import {
|
|
|
15
15
|
useSessionStream,
|
|
16
16
|
useSidecarAuth,
|
|
17
17
|
useToolCallStream
|
|
18
|
-
} from "./chunk-
|
|
19
|
-
import "./chunk-
|
|
18
|
+
} from "./chunk-MXRQ4MJE.js";
|
|
19
|
+
import "./chunk-33W2TLUL.js";
|
|
20
20
|
import "./chunk-OEX7NZE3.js";
|
|
21
21
|
import {
|
|
22
22
|
useAutoScroll,
|
|
23
23
|
useRunCollapseState,
|
|
24
24
|
useRunGroups
|
|
25
25
|
} from "./chunk-CNWVHQFY.js";
|
|
26
|
-
import "./chunk-
|
|
26
|
+
import "./chunk-MJUDMVRU.js";
|
|
27
27
|
import "./chunk-BX6AQMUS.js";
|
|
28
|
-
import "./chunk-
|
|
28
|
+
import "./chunk-3HW53XTH.js";
|
|
29
29
|
import "./chunk-RQHJBTEU.js";
|
|
30
30
|
|
|
31
31
|
// src/hooks/use-session-crud.ts
|
package/dist/index.js
CHANGED
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
useEditorConnection,
|
|
16
16
|
useEditorContext,
|
|
17
17
|
useYjsState
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-FNYJFCGU.js";
|
|
19
19
|
import {
|
|
20
20
|
AuthHeader,
|
|
21
21
|
GitHubLoginButton,
|
|
@@ -39,7 +39,7 @@ import {
|
|
|
39
39
|
useSessionStream,
|
|
40
40
|
useSidecarAuth,
|
|
41
41
|
useToolCallStream
|
|
42
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-MXRQ4MJE.js";
|
|
43
43
|
import {
|
|
44
44
|
DropZone,
|
|
45
45
|
Label,
|
|
@@ -85,11 +85,11 @@ import {
|
|
|
85
85
|
} from "./chunk-Q56BYXQF.js";
|
|
86
86
|
import {
|
|
87
87
|
ChatMessage
|
|
88
|
-
} from "./chunk-
|
|
88
|
+
} from "./chunk-GW4GRAWJ.js";
|
|
89
89
|
import {
|
|
90
90
|
ToolCallFeed,
|
|
91
91
|
parseToolEvent
|
|
92
|
-
} from "./chunk-
|
|
92
|
+
} from "./chunk-33W2TLUL.js";
|
|
93
93
|
import {
|
|
94
94
|
AgentWorkbench,
|
|
95
95
|
AuditResults,
|
|
@@ -102,7 +102,7 @@ import {
|
|
|
102
102
|
StatusBar,
|
|
103
103
|
TerminalPanel,
|
|
104
104
|
WorkspaceLayout
|
|
105
|
-
} from "./chunk-
|
|
105
|
+
} from "./chunk-WSR2NB2H.js";
|
|
106
106
|
import "./chunk-OEX7NZE3.js";
|
|
107
107
|
import {
|
|
108
108
|
EmptyState,
|
|
@@ -116,7 +116,7 @@ import {
|
|
|
116
116
|
MessageList,
|
|
117
117
|
ThinkingIndicator,
|
|
118
118
|
UserMessage
|
|
119
|
-
} from "./chunk-
|
|
119
|
+
} from "./chunk-5F3VOGCT.js";
|
|
120
120
|
import {
|
|
121
121
|
useAutoScroll,
|
|
122
122
|
useRunCollapseState,
|
|
@@ -134,7 +134,7 @@ import {
|
|
|
134
134
|
RunGroup,
|
|
135
135
|
WebSearchPreview,
|
|
136
136
|
WriteFilePreview
|
|
137
|
-
} from "./chunk-
|
|
137
|
+
} from "./chunk-LY32SP6X.js";
|
|
138
138
|
import {
|
|
139
139
|
formatDuration,
|
|
140
140
|
truncateText
|
|
@@ -142,7 +142,7 @@ import {
|
|
|
142
142
|
import {
|
|
143
143
|
ToolCallGroup,
|
|
144
144
|
ToolCallStep
|
|
145
|
-
} from "./chunk-
|
|
145
|
+
} from "./chunk-MJUDMVRU.js";
|
|
146
146
|
import {
|
|
147
147
|
TOOL_CATEGORY_ICONS,
|
|
148
148
|
getToolCategory,
|
|
@@ -152,7 +152,7 @@ import {
|
|
|
152
152
|
import {
|
|
153
153
|
InlineCode,
|
|
154
154
|
OpenUIArtifactRenderer
|
|
155
|
-
} from "./chunk-
|
|
155
|
+
} from "./chunk-OVNLOE3Y.js";
|
|
156
156
|
import {
|
|
157
157
|
Table,
|
|
158
158
|
TableBody,
|
|
@@ -169,7 +169,7 @@ import {
|
|
|
169
169
|
FileTabs,
|
|
170
170
|
FileTree,
|
|
171
171
|
filterFileTree
|
|
172
|
-
} from "./chunk-
|
|
172
|
+
} from "./chunk-KH5UDAJ2.js";
|
|
173
173
|
import {
|
|
174
174
|
ArtifactPane
|
|
175
175
|
} from "./chunk-W4LM3QYZ.js";
|
|
@@ -177,7 +177,7 @@ import {
|
|
|
177
177
|
CodeBlock,
|
|
178
178
|
CopyButton,
|
|
179
179
|
Markdown
|
|
180
|
-
} from "./chunk-
|
|
180
|
+
} from "./chunk-3HW53XTH.js";
|
|
181
181
|
import {
|
|
182
182
|
BackendSelector,
|
|
183
183
|
ClusterStatusBar,
|
|
@@ -210,7 +210,7 @@ import {
|
|
|
210
210
|
SidebarRailNav,
|
|
211
211
|
VariantList,
|
|
212
212
|
useSidebar
|
|
213
|
-
} from "./chunk-
|
|
213
|
+
} from "./chunk-6V4XVKFY.js";
|
|
214
214
|
import {
|
|
215
215
|
BillingDashboard,
|
|
216
216
|
PricingPage,
|
package/dist/markdown.js
CHANGED
package/dist/openui.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
2
|
OpenUIArtifactRenderer
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-OVNLOE3Y.js";
|
|
4
4
|
import "./chunk-JP725R4W.js";
|
|
5
|
-
import "./chunk-
|
|
5
|
+
import "./chunk-3HW53XTH.js";
|
|
6
6
|
import "./chunk-TDYQBLL5.js";
|
|
7
7
|
import "./chunk-TSE423UF.js";
|
|
8
8
|
import "./chunk-RQHJBTEU.js";
|