@tangle-network/sandbox-ui 0.4.0 → 0.5.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/auth.js +3 -3
- package/dist/chat.d.ts +1 -1
- package/dist/chat.js +11 -9
- package/dist/{chunk-ZP6GSX4D.js → chunk-565V6JTN.js} +26 -50
- package/dist/chunk-5CEMHKBP.js +72 -0
- package/dist/{chunk-FOQTE67I.js → chunk-5F4NX5R2.js} +10 -5
- package/dist/{chunk-MUOL44AE.js → chunk-BRBTD7RH.js} +6 -6
- package/dist/{chunk-SSKVYXCR.js → chunk-DCPYTL4W.js} +62 -79
- package/dist/chunk-DLCFZDGX.js +182 -0
- package/dist/{chunk-HXEA7L2T.js → chunk-FFOXUHOF.js} +10 -10
- package/dist/chunk-H5XYSFYE.js +228 -0
- package/dist/{chunk-TQN3VR4F.js → chunk-JP725R4W.js} +2 -2
- package/dist/{chunk-CJ2RYVZH.js → chunk-NTSRY4GW.js} +68 -10
- package/dist/{chunk-DQYODCBN.js → chunk-P24K22CV.js} +57 -66
- package/dist/{chunk-GVUW4VDD.js → chunk-R3IU37AW.js} +161 -229
- package/dist/chunk-TDYQBLL5.js +127 -0
- package/dist/{chunk-HWLX5NME.js → chunk-TSE423UF.js} +12 -12
- package/dist/{chunk-YDBXQQLC.js → chunk-VBWY44UU.js} +30 -76
- package/dist/{chunk-IW2JZCOC.js → chunk-WBQ7VULC.js} +7 -7
- package/dist/{chunk-72UEKFZ2.js → chunk-WC7QTWPN.js} +65 -42
- package/dist/{chunk-HYLTXGOI.js → chunk-WQH233GF.js} +5 -5
- package/dist/{chunk-CCKNIAS7.js → chunk-XBR3IP7B.js} +2 -2
- package/dist/{chunk-OHMO7NUX.js → chunk-XTPAWK7L.js} +20 -31
- package/dist/{chunk-SULQQJPB.js → chunk-YS66Q3RC.js} +1 -1
- package/dist/{chunk-FRGMMANX.js → chunk-YYGECNZZ.js} +3 -3
- package/dist/{chunk-MVYFNPAH.js → chunk-ZOZX2U6I.js} +285 -271
- package/dist/dashboard.d.ts +2 -2
- package/dist/dashboard.js +6 -6
- package/dist/{document-editor-pane-5TN2VWGZ.js → document-editor-pane-JNXPANWM.js} +2 -2
- package/dist/editor.js +2 -2
- package/dist/files.js +2 -2
- package/dist/globals.css +129 -95
- package/dist/hooks.d.ts +2 -2
- package/dist/hooks.js +5 -5
- package/dist/{index-tTfThG0n.d.ts → index-CDt0GE4A.d.ts} +7 -8
- package/dist/index.d.ts +16 -23
- package/dist/index.js +27 -26
- package/dist/markdown.d.ts +14 -17
- package/dist/markdown.js +1 -1
- package/dist/openui.js +5 -5
- package/dist/pages.d.ts +10 -3
- package/dist/pages.js +147 -184
- package/dist/primitives.d.ts +8 -5
- package/dist/primitives.js +8 -8
- package/dist/run.d.ts +1 -1
- package/dist/run.js +4 -4
- package/dist/sdk-hooks.d.ts +1 -1
- package/dist/sdk-hooks.js +4 -4
- package/dist/styles.css +129 -95
- package/dist/terminal.d.ts +2 -2
- package/dist/terminal.js +13 -43
- package/dist/tokens.css +299 -179
- package/dist/{tool-call-feed-D5Ume-Pt.d.ts → tool-call-feed-Bs3MyQMT.d.ts} +3 -1
- package/dist/{usage-chart-CY9xo3KX.d.ts → usage-chart-XCoB_7Xu.d.ts} +1 -2
- package/dist/{use-pty-session-DeZSxOCN.d.ts → use-pty-session-COzVkhtc.d.ts} +1 -1
- package/dist/workspace.d.ts +3 -1
- package/dist/workspace.js +11 -11
- package/package.json +14 -2
- package/dist/chunk-GRYHFH5O.js +0 -110
- package/dist/chunk-LTFK464G.js +0 -103
- package/dist/chunk-MXCSSOGH.js +0 -105
|
@@ -7,30 +7,27 @@ import {
|
|
|
7
7
|
import {
|
|
8
8
|
EmptyState,
|
|
9
9
|
Input
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-BRBTD7RH.js";
|
|
11
11
|
import {
|
|
12
12
|
ChatContainer
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-R3IU37AW.js";
|
|
14
14
|
import {
|
|
15
15
|
OpenUIArtifactRenderer
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-VBWY44UU.js";
|
|
17
17
|
import {
|
|
18
18
|
FileArtifactPane,
|
|
19
19
|
FileTree,
|
|
20
20
|
filterFileTree
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-WQH233GF.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-H5XYSFYE.js";
|
|
28
28
|
import {
|
|
29
29
|
Badge
|
|
30
|
-
} from "./chunk-
|
|
31
|
-
import {
|
|
32
|
-
Button
|
|
33
|
-
} from "./chunk-HWLX5NME.js";
|
|
30
|
+
} from "./chunk-TDYQBLL5.js";
|
|
34
31
|
import {
|
|
35
32
|
cn
|
|
36
33
|
} from "./chunk-RQHJBTEU.js";
|
|
@@ -166,7 +163,7 @@ function MobileDrawer({ side, title, header, onClose, children }) {
|
|
|
166
163
|
type: "button",
|
|
167
164
|
"aria-label": `Close ${title}`,
|
|
168
165
|
onClick: onClose,
|
|
169
|
-
className: "absolute inset-0 bg-black/
|
|
166
|
+
className: "absolute inset-0 bg-black/70"
|
|
170
167
|
}
|
|
171
168
|
),
|
|
172
169
|
/* @__PURE__ */ jsxs(
|
|
@@ -784,6 +781,7 @@ function RuntimePane({
|
|
|
784
781
|
subtitle = "Session state, execution output, and inspection surfaces",
|
|
785
782
|
statusBanner,
|
|
786
783
|
statusBar,
|
|
784
|
+
content,
|
|
787
785
|
terminal,
|
|
788
786
|
audit,
|
|
789
787
|
inspector,
|
|
@@ -805,7 +803,7 @@ function RuntimePane({
|
|
|
805
803
|
] }),
|
|
806
804
|
statusBanner && /* @__PURE__ */ jsx6(StatusBanner, { ...statusBanner }),
|
|
807
805
|
statusBar && /* @__PURE__ */ jsx6(StatusBar, { ...statusBar }),
|
|
808
|
-
/* @__PURE__ */ jsxs6("div", { className: "grid min-h-0 flex-1 gap-px bg-[var(--border-subtle)] lg:grid-cols-[minmax(0,1.35fr)_minmax(20rem,0.9fr)]", children: [
|
|
806
|
+
content ? /* @__PURE__ */ jsx6("div", { className: "min-h-0 flex-1 overflow-hidden", children: content }) : /* @__PURE__ */ jsxs6("div", { className: "grid min-h-0 flex-1 gap-px bg-[var(--border-subtle)] lg:grid-cols-[minmax(0,1.35fr)_minmax(20rem,0.9fr)]", children: [
|
|
809
807
|
/* @__PURE__ */ jsx6("div", { className: "min-h-0 overflow-auto bg-[var(--bg-card)]", children: terminal ? /* @__PURE__ */ jsx6(
|
|
810
808
|
TerminalPanel,
|
|
811
809
|
{
|
|
@@ -894,11 +892,11 @@ function badgeClasses(tone = "neutral") {
|
|
|
894
892
|
case "accent":
|
|
895
893
|
return "border-[var(--border-accent)] bg-[var(--accent-surface-soft)] text-[var(--accent-text)]";
|
|
896
894
|
case "success":
|
|
897
|
-
return "border-
|
|
895
|
+
return "border-[var(--surface-success-border)] bg-[var(--surface-success-bg)] text-[var(--surface-success-text)]";
|
|
898
896
|
case "warning":
|
|
899
|
-
return "border-
|
|
897
|
+
return "border-[var(--surface-warning-border)] bg-[var(--surface-warning-bg)] text-[var(--surface-warning-text)]";
|
|
900
898
|
case "danger":
|
|
901
|
-
return "border-
|
|
899
|
+
return "border-[var(--surface-danger-border)] bg-[var(--surface-danger-bg)] text-[var(--surface-danger-text)]";
|
|
902
900
|
default:
|
|
903
901
|
return "border-[var(--border-subtle)] bg-[var(--bg-section)] text-[var(--text-secondary)]";
|
|
904
902
|
}
|
|
@@ -960,39 +958,32 @@ function SessionSidebar({
|
|
|
960
958
|
isActive: currentItemId === item.id
|
|
961
959
|
})).length
|
|
962
960
|
])), [currentItemId, filters, orderedItems, sessionsById]);
|
|
963
|
-
return /* @__PURE__ */ jsxs7("aside", { className: cn("flex w-
|
|
964
|
-
/* @__PURE__ */ jsxs7("div", { className: "border-b border-[var(--border-subtle)] px-
|
|
965
|
-
/* @__PURE__ */ jsxs7("div", { className: "flex items-center gap-2", children: [
|
|
966
|
-
/* @__PURE__ */
|
|
967
|
-
|
|
968
|
-
/* @__PURE__ */
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
/* @__PURE__ */ jsxs7("div", { className: "mt-4 grid grid-cols-2 gap-2", children: [
|
|
973
|
-
/* @__PURE__ */ jsxs7("div", { className: "rounded-[var(--radius-lg)] border border-[var(--border-subtle)] bg-[linear-gradient(180deg,rgba(255,255,255,0.04),transparent)] px-3 py-2", children: [
|
|
974
|
-
/* @__PURE__ */ jsx7("div", { className: "text-[10px] font-semibold uppercase tracking-[0.16em] text-[var(--text-muted)]", children: "Tracked" }),
|
|
975
|
-
/* @__PURE__ */ jsx7("div", { className: "mt-1 text-sm font-semibold text-[var(--text-primary)]", children: items.length })
|
|
961
|
+
return /* @__PURE__ */ jsxs7("aside", { className: cn("flex w-64 shrink-0 flex-col border-r border-[var(--border-subtle)] bg-[var(--depth-2)]", className), children: [
|
|
962
|
+
/* @__PURE__ */ jsxs7("div", { className: "border-b border-[var(--border-subtle)] px-3 py-3", children: [
|
|
963
|
+
/* @__PURE__ */ jsxs7("div", { className: "flex items-center justify-between gap-2", children: [
|
|
964
|
+
/* @__PURE__ */ jsxs7("div", { className: "flex items-center gap-2 min-w-0", children: [
|
|
965
|
+
/* @__PURE__ */ jsx7("div", { className: "flex h-7 w-7 shrink-0 items-center justify-center rounded-lg border border-[var(--border-accent)]/50 bg-[var(--accent-surface-soft)] text-[var(--accent-text)]", children: /* @__PURE__ */ jsx7(MessageSquareText, { className: "h-3.5 w-3.5" }) }),
|
|
966
|
+
/* @__PURE__ */ jsxs7("div", { className: "min-w-0", children: [
|
|
967
|
+
/* @__PURE__ */ jsx7("div", { className: "truncate text-sm font-semibold tracking-[0.01em] text-[var(--text-primary)]", children: title }),
|
|
968
|
+
subtitle && /* @__PURE__ */ jsx7("div", { className: "truncate text-[11px] text-[var(--text-muted)]", children: subtitle })
|
|
969
|
+
] })
|
|
976
970
|
] }),
|
|
977
|
-
/* @__PURE__ */ jsxs7("div", { className: "
|
|
978
|
-
/* @__PURE__ */ jsx7("
|
|
979
|
-
/* @__PURE__ */ jsx7(
|
|
971
|
+
/* @__PURE__ */ jsxs7("div", { className: "flex items-center gap-2 shrink-0", children: [
|
|
972
|
+
runningCount > 0 && /* @__PURE__ */ jsx7("span", { className: "rounded-full border border-[var(--border-accent)] bg-[var(--accent-surface-soft)] px-1.5 py-0.5 text-[10px] font-medium text-[var(--accent-text)]", children: runningCount }),
|
|
973
|
+
onCreate && /* @__PURE__ */ jsx7(
|
|
974
|
+
"button",
|
|
975
|
+
{
|
|
976
|
+
type: "button",
|
|
977
|
+
onClick: onCreate,
|
|
978
|
+
title: createLabel,
|
|
979
|
+
className: "flex h-6 w-6 items-center justify-center rounded-md border border-[var(--border-default)] bg-[var(--bg-section)] text-[var(--text-muted)] transition-colors hover:border-[var(--border-accent)] hover:bg-[var(--accent-surface-soft)] hover:text-[var(--accent-text)]",
|
|
980
|
+
children: /* @__PURE__ */ jsx7(Plus, { className: "h-3.5 w-3.5" })
|
|
981
|
+
}
|
|
982
|
+
)
|
|
980
983
|
] })
|
|
981
984
|
] }),
|
|
982
|
-
/* @__PURE__ */ jsxs7(
|
|
983
|
-
|
|
984
|
-
{
|
|
985
|
-
type: "button",
|
|
986
|
-
onClick: onCreate,
|
|
987
|
-
className: "mt-4 w-full justify-center gap-2 rounded-xl bg-[linear-gradient(135deg,var(--brand-cool),var(--brand-glow))] text-white shadow-[var(--shadow-accent)] hover:translate-y-[-1px] hover:brightness-105",
|
|
988
|
-
children: [
|
|
989
|
-
/* @__PURE__ */ jsx7(Plus, { className: "h-4 w-4" }),
|
|
990
|
-
createLabel
|
|
991
|
-
]
|
|
992
|
-
}
|
|
993
|
-
),
|
|
994
|
-
enableSearch && items.length > 0 && /* @__PURE__ */ jsxs7("div", { className: "relative mt-3", children: [
|
|
995
|
-
/* @__PURE__ */ jsx7(Search2, { className: "pointer-events-none absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[var(--text-dim)]" }),
|
|
985
|
+
enableSearch && items.length > 0 && /* @__PURE__ */ jsxs7("div", { className: "relative mt-2.5", children: [
|
|
986
|
+
/* @__PURE__ */ jsx7(Search2, { className: "pointer-events-none absolute left-2.5 top-1/2 h-3.5 w-3.5 -translate-y-1/2 text-[var(--text-dim)]" }),
|
|
996
987
|
/* @__PURE__ */ jsx7(
|
|
997
988
|
"input",
|
|
998
989
|
{
|
|
@@ -1000,11 +991,11 @@ function SessionSidebar({
|
|
|
1000
991
|
onChange: (event) => setQuery(event.target.value),
|
|
1001
992
|
placeholder: searchPlaceholder,
|
|
1002
993
|
"aria-label": searchPlaceholder,
|
|
1003
|
-
className: "h-
|
|
994
|
+
className: "h-8 w-full rounded-[var(--radius-md)] border border-[var(--border-subtle)] bg-[var(--bg-section)] pl-8 pr-3 text-xs text-[var(--text-primary)] placeholder:text-[var(--text-dim)] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[var(--border-accent)]"
|
|
1004
995
|
}
|
|
1005
996
|
)
|
|
1006
997
|
] }),
|
|
1007
|
-
filters.length > 0 && /* @__PURE__ */ jsx7("div", { className: "mt-
|
|
998
|
+
filters.length > 0 && /* @__PURE__ */ jsx7("div", { className: "mt-2 flex flex-wrap gap-1", children: filters.map((filter) => {
|
|
1008
999
|
const isSelected = activeFilterId === filter.id;
|
|
1009
1000
|
return /* @__PURE__ */ jsxs7(
|
|
1010
1001
|
"button",
|
|
@@ -1012,19 +1003,19 @@ function SessionSidebar({
|
|
|
1012
1003
|
type: "button",
|
|
1013
1004
|
onClick: () => setActiveFilterId(filter.id),
|
|
1014
1005
|
className: cn(
|
|
1015
|
-
"inline-flex items-center gap-1
|
|
1016
|
-
isSelected ? "border-[var(--border-accent)] bg-[var(--accent-surface-soft)] text-[var(--accent-text)]" : "border-[var(--border-subtle)] bg-
|
|
1006
|
+
"inline-flex items-center gap-1 rounded-full border px-2 py-0.5 text-[10px] font-medium transition-colors",
|
|
1007
|
+
isSelected ? "border-[var(--border-accent)] bg-[var(--accent-surface-soft)] text-[var(--accent-text)]" : "border-[var(--border-subtle)] bg-transparent text-[var(--text-muted)] hover:text-[var(--text-secondary)]"
|
|
1017
1008
|
),
|
|
1018
1009
|
children: [
|
|
1019
1010
|
/* @__PURE__ */ jsx7("span", { children: filter.label }),
|
|
1020
|
-
/* @__PURE__ */ jsx7("span", { className: "
|
|
1011
|
+
/* @__PURE__ */ jsx7("span", { className: "text-[9px] opacity-70", children: filterCounts[filter.id] ?? 0 })
|
|
1021
1012
|
]
|
|
1022
1013
|
},
|
|
1023
1014
|
filter.id
|
|
1024
1015
|
);
|
|
1025
1016
|
}) })
|
|
1026
1017
|
] }),
|
|
1027
|
-
/* @__PURE__ */ jsx7("nav", { "aria-label": "Sessions", className: "flex-1 overflow-y-auto px-
|
|
1018
|
+
/* @__PURE__ */ jsx7("nav", { "aria-label": "Sessions", className: "flex-1 overflow-y-auto px-2 py-2", children: visibleItems.length === 0 ? /* @__PURE__ */ jsx7("div", { className: "rounded-[var(--radius-md)] border border-dashed border-[var(--border-subtle)] bg-[var(--bg-section)] px-3 py-4 text-xs text-[var(--text-muted)]", children: query.trim() ? `No sessions match "${query.trim()}".` : emptyMessage }) : /* @__PURE__ */ jsx7("ul", { className: "space-y-1", children: visibleItems.map((item) => {
|
|
1028
1019
|
const session = sessionsById.get(item.id) ?? null;
|
|
1029
1020
|
const isActive = currentItemId === item.id;
|
|
1030
1021
|
const status = session?.status ?? item.status;
|
|
@@ -1036,8 +1027,8 @@ function SessionSidebar({
|
|
|
1036
1027
|
"div",
|
|
1037
1028
|
{
|
|
1038
1029
|
className: cn(
|
|
1039
|
-
"group flex items-start gap-2 rounded-[
|
|
1040
|
-
isActive ? "border-[var(--border-accent)] bg-[
|
|
1030
|
+
"group flex items-start gap-2 rounded-[var(--radius-md)] border px-2 py-2 transition-colors",
|
|
1031
|
+
isActive ? "border-[var(--border-accent)] bg-[var(--accent-surface-soft)] shadow-[var(--shadow-card)]" : "border-[var(--border-subtle)] bg-transparent hover:border-[var(--border-default)] hover:bg-[var(--bg-section)]"
|
|
1041
1032
|
),
|
|
1042
1033
|
children: [
|
|
1043
1034
|
/* @__PURE__ */ jsxs7(
|
|
@@ -1052,17 +1043,17 @@ function SessionSidebar({
|
|
|
1052
1043
|
navigateToHref(item.href);
|
|
1053
1044
|
},
|
|
1054
1045
|
"aria-current": isActive ? "page" : void 0,
|
|
1055
|
-
className: "min-w-0 flex flex-1 items-start gap-
|
|
1046
|
+
className: "min-w-0 flex flex-1 items-start gap-2.5 text-left",
|
|
1056
1047
|
children: [
|
|
1057
|
-
/* @__PURE__ */ jsx7("span", { className: cn("mt-
|
|
1048
|
+
/* @__PURE__ */ jsx7("span", { className: cn("mt-[5px] h-2 w-2 shrink-0 rounded-full", statusClasses(status)) }),
|
|
1058
1049
|
/* @__PURE__ */ jsxs7("div", { className: "min-w-0 flex-1", children: [
|
|
1059
|
-
/* @__PURE__ */ jsx7("div", { className: "truncate text-
|
|
1060
|
-
item.subtitle && /* @__PURE__ */ jsx7("div", { className: "mt-0.5 truncate text-
|
|
1061
|
-
visibleBadges.length > 0 && /* @__PURE__ */ jsx7("div", { className: "mt-
|
|
1050
|
+
/* @__PURE__ */ jsx7("div", { className: "truncate text-xs font-medium text-[var(--text-primary)]", children: item.title }),
|
|
1051
|
+
item.subtitle && /* @__PURE__ */ jsx7("div", { className: "mt-0.5 truncate text-[11px] leading-tight text-[var(--text-muted)]", children: item.subtitle }),
|
|
1052
|
+
visibleBadges.length > 0 && /* @__PURE__ */ jsx7("div", { className: "mt-1.5 flex flex-wrap items-center gap-1", children: visibleBadges.map((badge) => /* @__PURE__ */ jsx7(
|
|
1062
1053
|
"span",
|
|
1063
1054
|
{
|
|
1064
1055
|
className: cn(
|
|
1065
|
-
"inline-flex items-center rounded-full border px-
|
|
1056
|
+
"inline-flex items-center rounded-full border px-1.5 py-0.5 text-[9px] font-medium uppercase tracking-[0.06em]",
|
|
1066
1057
|
badgeClasses(badge.tone)
|
|
1067
1058
|
),
|
|
1068
1059
|
children: badge.label
|
|
@@ -1091,8 +1082,8 @@ function SessionSidebar({
|
|
|
1091
1082
|
}
|
|
1092
1083
|
) }, item.id);
|
|
1093
1084
|
}) }) }),
|
|
1094
|
-
activityMonitor && /* @__PURE__ */ jsx7("div", { className: "border-t border-[var(--border-subtle)] px-
|
|
1095
|
-
links.length > 0 && /* @__PURE__ */ jsx7("nav", { "aria-label": "Workspace sections", className: "border-t border-[var(--border-subtle)] px-
|
|
1085
|
+
activityMonitor && /* @__PURE__ */ jsx7("div", { className: "border-t border-[var(--border-subtle)] px-2 py-2", children: activityMonitor }),
|
|
1086
|
+
links.length > 0 && /* @__PURE__ */ jsx7("nav", { "aria-label": "Workspace sections", className: "border-t border-[var(--border-subtle)] px-2 py-2", children: /* @__PURE__ */ jsx7("div", { className: "space-y-0.5", children: links.map((link) => {
|
|
1096
1087
|
const Icon = iconForLink(link.icon);
|
|
1097
1088
|
return /* @__PURE__ */ jsxs7(
|
|
1098
1089
|
"button",
|
|
@@ -1105,9 +1096,9 @@ function SessionSidebar({
|
|
|
1105
1096
|
}
|
|
1106
1097
|
navigateToHref(link.href);
|
|
1107
1098
|
},
|
|
1108
|
-
className: "flex w-full items-center gap-2 rounded-[var(--radius-
|
|
1099
|
+
className: "flex w-full items-center gap-2 rounded-[var(--radius-sm)] px-2 py-1.5 text-left text-xs text-[var(--text-muted)] transition-colors hover:bg-[var(--bg-section)] hover:text-[var(--text-primary)]",
|
|
1109
1100
|
children: [
|
|
1110
|
-
/* @__PURE__ */ jsx7(Icon, { className: "h-
|
|
1101
|
+
/* @__PURE__ */ jsx7(Icon, { className: "h-3.5 w-3.5 shrink-0" }),
|
|
1111
1102
|
/* @__PURE__ */ jsx7("span", { className: "truncate", children: link.label })
|
|
1112
1103
|
]
|
|
1113
1104
|
},
|
|
@@ -1168,7 +1159,7 @@ function SessionActivityMonitor({
|
|
|
1168
1159
|
return /* @__PURE__ */ jsxs8(
|
|
1169
1160
|
"div",
|
|
1170
1161
|
{
|
|
1171
|
-
className: "rounded-[
|
|
1162
|
+
className: "rounded-[var(--radius-md)] border border-[var(--border-subtle)] bg-[var(--bg-section)] p-3 shadow-[var(--shadow-card)]",
|
|
1172
1163
|
children: [
|
|
1173
1164
|
/* @__PURE__ */ jsxs8("div", { className: "flex items-center justify-between gap-3", children: [
|
|
1174
1165
|
/* @__PURE__ */ jsxs8("div", { children: [
|
|
@@ -1437,7 +1428,7 @@ function SandboxWorkbench({
|
|
|
1437
1428
|
}
|
|
1438
1429
|
onArtifactChange?.(artifactId);
|
|
1439
1430
|
};
|
|
1440
|
-
const centerHeader = /* @__PURE__ */ jsxs9("div", { className: "flex min-w-0 items-start justify-between gap-4 rounded-[
|
|
1431
|
+
const centerHeader = /* @__PURE__ */ jsxs9("div", { className: "flex min-w-0 items-start justify-between gap-4 rounded-[var(--radius-xl)] border border-[var(--border-subtle)] bg-[var(--depth-3)] px-4 py-3.5", children: [
|
|
1441
1432
|
/* @__PURE__ */ jsxs9("div", { className: "min-w-0", children: [
|
|
1442
1433
|
/* @__PURE__ */ jsx9("div", { className: "text-[10px] font-semibold uppercase tracking-[0.18em] text-[var(--brand-cool)]", children: "Tangle Sandbox" }),
|
|
1443
1434
|
/* @__PURE__ */ jsx9("div", { className: "truncate text-[17px] font-semibold tracking-[0.01em] text-[var(--text-primary)]", children: title }),
|
|
@@ -1460,7 +1451,7 @@ function SandboxWorkbench({
|
|
|
1460
1451
|
meta: session.meta,
|
|
1461
1452
|
headerActions: session.headerActions,
|
|
1462
1453
|
className: "h-full",
|
|
1463
|
-
contentClassName: "bg-[
|
|
1454
|
+
contentClassName: "bg-[var(--bg-dark)]",
|
|
1464
1455
|
children: /* @__PURE__ */ jsx9(
|
|
1465
1456
|
ChatContainer,
|
|
1466
1457
|
{
|
|
@@ -1481,7 +1472,7 @@ function SandboxWorkbench({
|
|
|
1481
1472
|
onClose: onArtifactClose
|
|
1482
1473
|
}
|
|
1483
1474
|
),
|
|
1484
|
-
/* @__PURE__ */ jsx9("div", { className: "min-h-0 flex-1 overflow-auto bg-[
|
|
1475
|
+
/* @__PURE__ */ jsx9("div", { className: "min-h-0 flex-1 overflow-auto bg-[var(--bg-dark)]", children: activeArtifact ? renderArtifact(activeArtifact) : /* @__PURE__ */ jsx9("div", { className: "flex h-full items-center justify-center p-6", children: emptyArtifactState ?? /* @__PURE__ */ jsx9(
|
|
1485
1476
|
EmptyState,
|
|
1486
1477
|
{
|
|
1487
1478
|
icon: /* @__PURE__ */ jsx9(Boxes, { className: "h-8 w-8" }),
|