@industry-theme/xterm-terminal-panel 0.9.1 → 0.9.4
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/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +213 -78
- package/dist/src/components/ProgramStatusBadge.d.ts +10 -0
- package/dist/src/components/ProgramStatusBadge.d.ts.map +1 -0
- package/dist/src/panel-types/index.d.ts +3 -2
- package/dist/src/panel-types/index.d.ts.map +1 -1
- package/dist/src/panels/TabbedTerminalPanel.d.ts.map +1 -1
- package/dist/src/types/terminal.types.d.ts +11 -0
- package/dist/src/types/terminal.types.d.ts.map +1 -1
- package/dist/styles.css +25 -0
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -2,6 +2,8 @@ export { ThemedTerminal } from './src/components/ThemedTerminal';
|
|
|
2
2
|
export { ThemedTerminalWithProvider } from './src/components/ThemedTerminalWithProvider';
|
|
3
3
|
export { WorkingOverlay } from './src/components/WorkingOverlay';
|
|
4
4
|
export type { WorkingOverlayProps } from './src/components/WorkingOverlay';
|
|
5
|
+
export { ProgramStatusBadge, formatProgramStatusRecord } from './src/components/ProgramStatusBadge';
|
|
6
|
+
export type { ProgramStatusBadgeProps } from './src/components/ProgramStatusBadge';
|
|
5
7
|
export { SelectionDragChip } from './src/components/SelectionDragChip';
|
|
6
8
|
export type { SelectionDragChipProps } from './src/components/SelectionDragChip';
|
|
7
9
|
export { XtermRenderer } from './src/renderer/XtermRenderer';
|
|
@@ -15,7 +17,7 @@ export { TerminalSession } from './src/components/TerminalSession';
|
|
|
15
17
|
export type { TerminalSessionProps, TerminalSessionHandle, } from './src/components/TerminalSession';
|
|
16
18
|
export { TerminalOverlay } from './src/components/TerminalOverlay';
|
|
17
19
|
export type { TerminalOverlayProps } from './src/components/TerminalOverlay';
|
|
18
|
-
export type { ThemedTerminalProps, ThemedTerminalRef, TerminalActivityState, TerminalHeaderBadge, TerminalOverlayState, TerminalScrollPosition, LinkClickModifiers, DroppedTerminalFile, } from './src/types/terminal.types';
|
|
20
|
+
export type { ThemedTerminalProps, ThemedTerminalRef, TerminalActivityState, TerminalHeaderBadge, TerminalOverlayState, TerminalScrollPosition, LinkClickModifiers, DroppedTerminalFile, ProgramStatusRecord, ProgramStatusState, ProgramStatusKind, } from './src/types/terminal.types';
|
|
19
21
|
export { useThemedTerminal } from './src/hooks/useThemedTerminal';
|
|
20
22
|
export type { UseThemedTerminalReturn } from './src/hooks/useThemedTerminal';
|
|
21
23
|
export { createTerminalTheme, getTerminalCSSVariables, } from './src/utils/terminalTheme';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,0BAA0B,EAAE,MAAM,6CAA6C,CAAC;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,YAAY,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,YAAY,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAIjF,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,YAAY,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,YAAY,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AACnF,YAAY,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AACrE,YAAY,EACV,qBAAqB,EACrB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,iCAAiC,CAAC;AAKzC,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,YAAY,EACV,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,YAAY,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAG7E,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -38,7 +38,7 @@ import {
|
|
|
38
38
|
// package.json
|
|
39
39
|
var package_default = {
|
|
40
40
|
name: "@industry-theme/xterm-terminal-panel",
|
|
41
|
-
version: "0.9.
|
|
41
|
+
version: "0.9.3",
|
|
42
42
|
description: "Industry-themed xterm.js terminal components with panel framework integration",
|
|
43
43
|
type: "module",
|
|
44
44
|
sideEffects: [
|
|
@@ -100,7 +100,7 @@ var package_default = {
|
|
|
100
100
|
},
|
|
101
101
|
dependencies: {
|
|
102
102
|
clsx: "^2.1.1",
|
|
103
|
-
"ghostty-web": "
|
|
103
|
+
"ghostty-web": "https://github.com/anomalyco/ghostty-web/archive/6e24d040458ddd7aae81572fe2901deec32f9fe7.tar.gz",
|
|
104
104
|
"react-resizable-panels": "^4.7.3"
|
|
105
105
|
},
|
|
106
106
|
peerDependencies: {
|
|
@@ -1548,9 +1548,122 @@ var ThemedTerminalWithProvider = forwardRef2((props, ref) => {
|
|
|
1548
1548
|
});
|
|
1549
1549
|
ThemedTerminalWithProvider.displayName = "ThemedTerminalWithProvider";
|
|
1550
1550
|
|
|
1551
|
+
// src/components/ProgramStatusBadge.tsx
|
|
1552
|
+
import { useTheme as useTheme2 } from "@principal-ade/industry-theme";
|
|
1553
|
+
import { jsx as jsx5 } from "react/jsx-runtime";
|
|
1554
|
+
var blockedColor = (kind, colors) => {
|
|
1555
|
+
switch (kind) {
|
|
1556
|
+
case "auth":
|
|
1557
|
+
return colors.error;
|
|
1558
|
+
case "question":
|
|
1559
|
+
return colors.info;
|
|
1560
|
+
case "permission":
|
|
1561
|
+
default:
|
|
1562
|
+
return colors.warning;
|
|
1563
|
+
}
|
|
1564
|
+
};
|
|
1565
|
+
var formatProgramStatusRecord = (record) => {
|
|
1566
|
+
const parts = [`state=${record.state}`];
|
|
1567
|
+
if (record.kind) parts.push(`kind=${record.kind}`);
|
|
1568
|
+
if (typeof record.progress === "number") parts.push(`progress=${record.progress}`);
|
|
1569
|
+
if (record.app) parts.push(`app=${record.app}`);
|
|
1570
|
+
if (record.msg) parts.push(`msg=${record.msg}`);
|
|
1571
|
+
if (record.title) parts.push(`title=${record.title}`);
|
|
1572
|
+
return parts.join("; ");
|
|
1573
|
+
};
|
|
1574
|
+
var WaveBars = ({ color, animate }) => /* @__PURE__ */ jsx5("div", { style: { display: "flex", gap: 1, alignItems: "center", height: 12 }, children: [0, 1, 2, 3, 4].map((i) => /* @__PURE__ */ jsx5(
|
|
1575
|
+
"div",
|
|
1576
|
+
{
|
|
1577
|
+
style: {
|
|
1578
|
+
width: 2,
|
|
1579
|
+
height: 10,
|
|
1580
|
+
backgroundColor: color,
|
|
1581
|
+
borderRadius: 1,
|
|
1582
|
+
transformOrigin: "center",
|
|
1583
|
+
transform: animate ? void 0 : "scaleY(0.4)",
|
|
1584
|
+
animation: animate ? `program-status-wave 1.2s ease-in-out ${i * 0.1}s infinite` : "none"
|
|
1585
|
+
}
|
|
1586
|
+
},
|
|
1587
|
+
i
|
|
1588
|
+
)) });
|
|
1589
|
+
var ProgramStatusBadge = ({
|
|
1590
|
+
record,
|
|
1591
|
+
animate = true
|
|
1592
|
+
}) => {
|
|
1593
|
+
const { theme } = useTheme2();
|
|
1594
|
+
switch (record.state) {
|
|
1595
|
+
case "working":
|
|
1596
|
+
return /* @__PURE__ */ jsx5(
|
|
1597
|
+
"span",
|
|
1598
|
+
{
|
|
1599
|
+
title: formatProgramStatusRecord(record),
|
|
1600
|
+
style: { display: "flex", alignItems: "center" },
|
|
1601
|
+
children: /* @__PURE__ */ jsx5(WaveBars, { color: theme.colors.primary, animate })
|
|
1602
|
+
}
|
|
1603
|
+
);
|
|
1604
|
+
case "blocked": {
|
|
1605
|
+
const color = blockedColor(record.kind, theme.colors);
|
|
1606
|
+
return /* @__PURE__ */ jsx5(
|
|
1607
|
+
"span",
|
|
1608
|
+
{
|
|
1609
|
+
title: formatProgramStatusRecord(record),
|
|
1610
|
+
style: {
|
|
1611
|
+
display: "flex",
|
|
1612
|
+
alignItems: "center",
|
|
1613
|
+
justifyContent: "center",
|
|
1614
|
+
width: 12,
|
|
1615
|
+
height: 12,
|
|
1616
|
+
borderRadius: 3,
|
|
1617
|
+
backgroundColor: color,
|
|
1618
|
+
color: theme.colors.background,
|
|
1619
|
+
fontSize: 10,
|
|
1620
|
+
fontWeight: 700,
|
|
1621
|
+
lineHeight: 1,
|
|
1622
|
+
boxShadow: `0 0 0 2px ${color}33`,
|
|
1623
|
+
animation: animate ? "program-status-fade 1.4s ease-in-out infinite" : "none"
|
|
1624
|
+
},
|
|
1625
|
+
children: "!"
|
|
1626
|
+
}
|
|
1627
|
+
);
|
|
1628
|
+
}
|
|
1629
|
+
case "done":
|
|
1630
|
+
return /* @__PURE__ */ jsx5(
|
|
1631
|
+
"span",
|
|
1632
|
+
{
|
|
1633
|
+
title: formatProgramStatusRecord(record),
|
|
1634
|
+
style: {
|
|
1635
|
+
display: "block",
|
|
1636
|
+
width: 8,
|
|
1637
|
+
height: 8,
|
|
1638
|
+
borderRadius: "50%",
|
|
1639
|
+
backgroundColor: theme.colors.success
|
|
1640
|
+
}
|
|
1641
|
+
}
|
|
1642
|
+
);
|
|
1643
|
+
case "error":
|
|
1644
|
+
return /* @__PURE__ */ jsx5(
|
|
1645
|
+
"span",
|
|
1646
|
+
{
|
|
1647
|
+
title: formatProgramStatusRecord(record),
|
|
1648
|
+
style: {
|
|
1649
|
+
display: "block",
|
|
1650
|
+
width: 12,
|
|
1651
|
+
height: 11,
|
|
1652
|
+
backgroundColor: theme.colors.error,
|
|
1653
|
+
clipPath: "polygon(50% 0%, 100% 100%, 0% 100%)"
|
|
1654
|
+
}
|
|
1655
|
+
}
|
|
1656
|
+
);
|
|
1657
|
+
// `idle` / `clear` render nothing — the tab is quiescent.
|
|
1658
|
+
default:
|
|
1659
|
+
return null;
|
|
1660
|
+
}
|
|
1661
|
+
};
|
|
1662
|
+
ProgramStatusBadge.displayName = "ProgramStatusBadge";
|
|
1663
|
+
|
|
1551
1664
|
// src/renderer/XtermRenderer.tsx
|
|
1552
1665
|
import { forwardRef as forwardRef3, useImperativeHandle as useImperativeHandle2, useRef as useRef2 } from "react";
|
|
1553
|
-
import { jsx as
|
|
1666
|
+
import { jsx as jsx6 } from "react/jsx-runtime";
|
|
1554
1667
|
var XtermRenderer = forwardRef3(
|
|
1555
1668
|
(props, ref) => {
|
|
1556
1669
|
const {
|
|
@@ -1589,7 +1702,7 @@ var XtermRenderer = forwardRef3(
|
|
|
1589
1702
|
}),
|
|
1590
1703
|
[]
|
|
1591
1704
|
);
|
|
1592
|
-
return /* @__PURE__ */
|
|
1705
|
+
return /* @__PURE__ */ jsx6(
|
|
1593
1706
|
ThemedTerminalWithProvider,
|
|
1594
1707
|
{
|
|
1595
1708
|
ref: innerRef,
|
|
@@ -1608,7 +1721,7 @@ var XtermRenderer = forwardRef3(
|
|
|
1608
1721
|
XtermRenderer.displayName = "XtermRenderer";
|
|
1609
1722
|
|
|
1610
1723
|
// src/renderer/GhosttyRenderer.tsx
|
|
1611
|
-
import { useTheme as
|
|
1724
|
+
import { useTheme as useTheme3 } from "@principal-ade/industry-theme";
|
|
1612
1725
|
import { FitAddon as FitAddon2, Terminal as Terminal2 } from "ghostty-web";
|
|
1613
1726
|
import { forwardRef as forwardRef4, useCallback as useCallback2, useEffect as useEffect2, useImperativeHandle as useImperativeHandle3, useRef as useRef3 } from "react";
|
|
1614
1727
|
|
|
@@ -1623,7 +1736,7 @@ function ensureGhostty() {
|
|
|
1623
1736
|
}
|
|
1624
1737
|
|
|
1625
1738
|
// src/renderer/GhosttyRenderer.tsx
|
|
1626
|
-
import { jsx as
|
|
1739
|
+
import { jsx as jsx7 } from "react/jsx-runtime";
|
|
1627
1740
|
var DEFAULT_FONT_STACK = "JetBrains Mono, Menlo, Monaco, monospace";
|
|
1628
1741
|
var GhosttyRenderer = forwardRef4(
|
|
1629
1742
|
(props, ref) => {
|
|
@@ -1645,7 +1758,7 @@ var GhosttyRenderer = forwardRef4(
|
|
|
1645
1758
|
// Accepted but intentionally not implemented yet:
|
|
1646
1759
|
// onLinkClick, onFilesDropped
|
|
1647
1760
|
} = props;
|
|
1648
|
-
const { theme } =
|
|
1761
|
+
const { theme } = useTheme3();
|
|
1649
1762
|
const containerRef = useRef3(null);
|
|
1650
1763
|
const termRef = useRef3(null);
|
|
1651
1764
|
const fitRef = useRef3(null);
|
|
@@ -1799,7 +1912,7 @@ var GhosttyRenderer = forwardRef4(
|
|
|
1799
1912
|
}),
|
|
1800
1913
|
[fit, readScrollPosition, write]
|
|
1801
1914
|
);
|
|
1802
|
-
return /* @__PURE__ */
|
|
1915
|
+
return /* @__PURE__ */ jsx7(
|
|
1803
1916
|
"div",
|
|
1804
1917
|
{
|
|
1805
1918
|
ref: containerRef,
|
|
@@ -1827,7 +1940,7 @@ function resolveRenderer(choice) {
|
|
|
1827
1940
|
}
|
|
1828
1941
|
|
|
1829
1942
|
// src/components/TerminalSession.tsx
|
|
1830
|
-
import { useTheme as
|
|
1943
|
+
import { useTheme as useTheme4 } from "@principal-ade/industry-theme";
|
|
1831
1944
|
import {
|
|
1832
1945
|
forwardRef as forwardRef5,
|
|
1833
1946
|
useCallback as useCallback3,
|
|
@@ -1839,7 +1952,7 @@ import {
|
|
|
1839
1952
|
|
|
1840
1953
|
// src/components/TerminalOverlay.tsx
|
|
1841
1954
|
import { Monitor as Monitor2 } from "lucide-react";
|
|
1842
|
-
import { jsx as
|
|
1955
|
+
import { jsx as jsx8, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
1843
1956
|
var TerminalOverlay = ({ state, theme }) => /* @__PURE__ */ jsxs4(
|
|
1844
1957
|
"div",
|
|
1845
1958
|
{
|
|
@@ -1860,8 +1973,8 @@ var TerminalOverlay = ({ state, theme }) => /* @__PURE__ */ jsxs4(
|
|
|
1860
1973
|
zIndex: 10
|
|
1861
1974
|
},
|
|
1862
1975
|
children: [
|
|
1863
|
-
/* @__PURE__ */
|
|
1864
|
-
/* @__PURE__ */
|
|
1976
|
+
/* @__PURE__ */ jsx8(Monitor2, { size: 48, color: theme.colors.textSecondary }),
|
|
1977
|
+
/* @__PURE__ */ jsx8(
|
|
1865
1978
|
"div",
|
|
1866
1979
|
{
|
|
1867
1980
|
style: {
|
|
@@ -1873,7 +1986,7 @@ var TerminalOverlay = ({ state, theme }) => /* @__PURE__ */ jsxs4(
|
|
|
1873
1986
|
children: state.message
|
|
1874
1987
|
}
|
|
1875
1988
|
),
|
|
1876
|
-
state.subtitle && /* @__PURE__ */
|
|
1989
|
+
state.subtitle && /* @__PURE__ */ jsx8(
|
|
1877
1990
|
"div",
|
|
1878
1991
|
{
|
|
1879
1992
|
style: {
|
|
@@ -1885,7 +1998,7 @@ var TerminalOverlay = ({ state, theme }) => /* @__PURE__ */ jsxs4(
|
|
|
1885
1998
|
children: state.subtitle
|
|
1886
1999
|
}
|
|
1887
2000
|
),
|
|
1888
|
-
state.actions && state.actions.length > 0 && /* @__PURE__ */
|
|
2001
|
+
state.actions && state.actions.length > 0 && /* @__PURE__ */ jsx8(
|
|
1889
2002
|
"div",
|
|
1890
2003
|
{
|
|
1891
2004
|
style: {
|
|
@@ -1940,7 +2053,7 @@ var TerminalOverlay = ({ state, theme }) => /* @__PURE__ */ jsxs4(
|
|
|
1940
2053
|
);
|
|
1941
2054
|
|
|
1942
2055
|
// src/components/TerminalSession.tsx
|
|
1943
|
-
import { jsx as
|
|
2056
|
+
import { jsx as jsx9, jsxs as jsxs5 } from "react/jsx-runtime";
|
|
1944
2057
|
var TerminalSession = forwardRef5(
|
|
1945
2058
|
(props, ref) => {
|
|
1946
2059
|
const {
|
|
@@ -1972,7 +2085,7 @@ var TerminalSession = forwardRef5(
|
|
|
1972
2085
|
workingSubtitle
|
|
1973
2086
|
} = props;
|
|
1974
2087
|
const Renderer = resolveRenderer(rendererProp);
|
|
1975
|
-
const { theme } =
|
|
2088
|
+
const { theme } = useTheme4();
|
|
1976
2089
|
const rendererRef = useRef4(null);
|
|
1977
2090
|
const [localSessionId, setLocalSessionId] = useState2(sessionIdProp);
|
|
1978
2091
|
const [isInitialized, setIsInitialized] = useState2(false);
|
|
@@ -2293,7 +2406,7 @@ var TerminalSession = forwardRef5(
|
|
|
2293
2406
|
padding: "10px 0 0 10px"
|
|
2294
2407
|
},
|
|
2295
2408
|
children: [
|
|
2296
|
-
/* @__PURE__ */
|
|
2409
|
+
/* @__PURE__ */ jsx9(
|
|
2297
2410
|
"div",
|
|
2298
2411
|
{
|
|
2299
2412
|
style: {
|
|
@@ -2304,7 +2417,7 @@ var TerminalSession = forwardRef5(
|
|
|
2304
2417
|
}
|
|
2305
2418
|
}
|
|
2306
2419
|
),
|
|
2307
|
-
/* @__PURE__ */
|
|
2420
|
+
/* @__PURE__ */ jsx9("style", { children: `@keyframes terminal-session-cursor-blink {
|
|
2308
2421
|
0%, 100% { opacity: 1; }
|
|
2309
2422
|
50% { opacity: 0; }
|
|
2310
2423
|
}` })
|
|
@@ -2326,7 +2439,7 @@ var TerminalSession = forwardRef5(
|
|
|
2326
2439
|
} : void 0;
|
|
2327
2440
|
const effectiveOverlay = ownershipLostOverlay ?? overlayState;
|
|
2328
2441
|
return /* @__PURE__ */ jsxs5("div", { style: { position: "relative", height: "100%", width: "100%" }, children: [
|
|
2329
|
-
/* @__PURE__ */
|
|
2442
|
+
/* @__PURE__ */ jsx9(
|
|
2330
2443
|
Renderer,
|
|
2331
2444
|
{
|
|
2332
2445
|
ref: rendererRef,
|
|
@@ -2345,8 +2458,8 @@ var TerminalSession = forwardRef5(
|
|
|
2345
2458
|
},
|
|
2346
2459
|
shouldRenderTerminal ? "active" : "overlay"
|
|
2347
2460
|
),
|
|
2348
|
-
effectiveOverlay && /* @__PURE__ */
|
|
2349
|
-
isWorking && !effectiveOverlay && /* @__PURE__ */
|
|
2461
|
+
effectiveOverlay && /* @__PURE__ */ jsx9(TerminalOverlay, { state: effectiveOverlay, theme }),
|
|
2462
|
+
isWorking && !effectiveOverlay && /* @__PURE__ */ jsx9(
|
|
2350
2463
|
WorkingOverlay,
|
|
2351
2464
|
{
|
|
2352
2465
|
theme,
|
|
@@ -2360,10 +2473,10 @@ var TerminalSession = forwardRef5(
|
|
|
2360
2473
|
TerminalSession.displayName = "TerminalSession";
|
|
2361
2474
|
|
|
2362
2475
|
// src/hooks/useThemedTerminal.ts
|
|
2363
|
-
import { useTheme as
|
|
2476
|
+
import { useTheme as useTheme5 } from "@principal-ade/industry-theme";
|
|
2364
2477
|
import { useMemo } from "react";
|
|
2365
2478
|
function useThemedTerminal() {
|
|
2366
|
-
const { theme } =
|
|
2479
|
+
const { theme } = useTheme5();
|
|
2367
2480
|
const terminalOptions = useMemo(
|
|
2368
2481
|
() => ({
|
|
2369
2482
|
cursorBlink: true,
|
|
@@ -2400,14 +2513,14 @@ function useThemedTerminal() {
|
|
|
2400
2513
|
}
|
|
2401
2514
|
|
|
2402
2515
|
// src/components/TabBar/TabBar.tsx
|
|
2403
|
-
import { useTheme as
|
|
2516
|
+
import { useTheme as useTheme7 } from "@principal-ade/industry-theme";
|
|
2404
2517
|
import { Plus } from "lucide-react";
|
|
2405
2518
|
import { useState as useState3, useCallback as useCallback5 } from "react";
|
|
2406
2519
|
|
|
2407
2520
|
// src/components/TabBar/TabButton.tsx
|
|
2408
|
-
import { useTheme as
|
|
2521
|
+
import { useTheme as useTheme6 } from "@principal-ade/industry-theme";
|
|
2409
2522
|
import { useCallback as useCallback4 } from "react";
|
|
2410
|
-
import { jsx as
|
|
2523
|
+
import { jsx as jsx10, jsxs as jsxs6 } from "react/jsx-runtime";
|
|
2411
2524
|
var TabButton = ({
|
|
2412
2525
|
tab,
|
|
2413
2526
|
isActive,
|
|
@@ -2431,7 +2544,7 @@ var TabButton = ({
|
|
|
2431
2544
|
onDragLeave,
|
|
2432
2545
|
isBeingDragged: _isBeingDragged = false
|
|
2433
2546
|
}) => {
|
|
2434
|
-
const { theme } =
|
|
2547
|
+
const { theme } = useTheme6();
|
|
2435
2548
|
const showCloseButton = isHovered || isActive;
|
|
2436
2549
|
const closable = tab.closable !== false;
|
|
2437
2550
|
const handleDragStart = useCallback4(
|
|
@@ -2550,7 +2663,7 @@ var TabButton = ({
|
|
|
2550
2663
|
...getDragOverStyles()
|
|
2551
2664
|
},
|
|
2552
2665
|
children: [
|
|
2553
|
-
closable && showCloseButton && /* @__PURE__ */
|
|
2666
|
+
closable && showCloseButton && /* @__PURE__ */ jsx10(
|
|
2554
2667
|
"button",
|
|
2555
2668
|
{
|
|
2556
2669
|
onClick: (e) => {
|
|
@@ -2585,12 +2698,12 @@ var TabButton = ({
|
|
|
2585
2698
|
(() => {
|
|
2586
2699
|
const icon = renderIcon ? renderIcon(tab) : void 0;
|
|
2587
2700
|
const displayIcon = icon !== void 0 ? icon : tab.icon;
|
|
2588
|
-
return displayIcon ? /* @__PURE__ */
|
|
2701
|
+
return displayIcon ? /* @__PURE__ */ jsx10("div", { style: { flexShrink: 0, display: "flex", alignItems: "center", pointerEvents: "none" }, children: displayIcon }) : null;
|
|
2589
2702
|
})(),
|
|
2590
2703
|
(() => {
|
|
2591
2704
|
const label = renderLabel ? renderLabel(tab) : void 0;
|
|
2592
2705
|
const displayLabel = label !== void 0 ? label : tab.label;
|
|
2593
|
-
return /* @__PURE__ */
|
|
2706
|
+
return /* @__PURE__ */ jsx10(
|
|
2594
2707
|
"span",
|
|
2595
2708
|
{
|
|
2596
2709
|
style: {
|
|
@@ -2604,7 +2717,7 @@ var TabButton = ({
|
|
|
2604
2717
|
}
|
|
2605
2718
|
);
|
|
2606
2719
|
})(),
|
|
2607
|
-
renderAccessory ? renderAccessory(tab) : keyboardHint && /* @__PURE__ */
|
|
2720
|
+
renderAccessory ? renderAccessory(tab) : keyboardHint && /* @__PURE__ */ jsx10(
|
|
2608
2721
|
"span",
|
|
2609
2722
|
{
|
|
2610
2723
|
style: {
|
|
@@ -2623,7 +2736,7 @@ var TabButton = ({
|
|
|
2623
2736
|
TabButton.displayName = "TabButton";
|
|
2624
2737
|
|
|
2625
2738
|
// src/components/TabBar/TabBar.tsx
|
|
2626
|
-
import { jsx as
|
|
2739
|
+
import { jsx as jsx11, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
2627
2740
|
var TabBar = ({
|
|
2628
2741
|
tabs,
|
|
2629
2742
|
activeTabId,
|
|
@@ -2642,7 +2755,7 @@ var TabBar = ({
|
|
|
2642
2755
|
canDropOnTab,
|
|
2643
2756
|
enableDragAndDrop = false
|
|
2644
2757
|
}) => {
|
|
2645
|
-
const { theme } =
|
|
2758
|
+
const { theme } = useTheme7();
|
|
2646
2759
|
const [hoveredTabId, setHoveredTabId] = useState3(null);
|
|
2647
2760
|
const [draggedTabId, setDraggedTabId] = useState3(null);
|
|
2648
2761
|
const [dragOverTabId, setDragOverTabId] = useState3(null);
|
|
@@ -2681,7 +2794,7 @@ var TabBar = ({
|
|
|
2681
2794
|
boxSizing: "border-box"
|
|
2682
2795
|
},
|
|
2683
2796
|
children: [
|
|
2684
|
-
leftSection && /* @__PURE__ */
|
|
2797
|
+
leftSection && /* @__PURE__ */ jsx11(
|
|
2685
2798
|
"div",
|
|
2686
2799
|
{
|
|
2687
2800
|
style: {
|
|
@@ -2697,7 +2810,7 @@ var TabBar = ({
|
|
|
2697
2810
|
children: leftSection
|
|
2698
2811
|
}
|
|
2699
2812
|
),
|
|
2700
|
-
/* @__PURE__ */
|
|
2813
|
+
/* @__PURE__ */ jsx11(
|
|
2701
2814
|
"div",
|
|
2702
2815
|
{
|
|
2703
2816
|
style: {
|
|
@@ -2710,7 +2823,7 @@ var TabBar = ({
|
|
|
2710
2823
|
},
|
|
2711
2824
|
children: tabs.map((tab, index) => {
|
|
2712
2825
|
const canDrop = enableDragAndDrop && draggedTabId !== null && draggedTabId !== tab.id ? canDropOnTab ? canDropOnTab(draggedTabId, tab.id) : true : false;
|
|
2713
|
-
return /* @__PURE__ */
|
|
2826
|
+
return /* @__PURE__ */ jsx11(
|
|
2714
2827
|
TabButton,
|
|
2715
2828
|
{
|
|
2716
2829
|
tab,
|
|
@@ -2739,7 +2852,7 @@ var TabBar = ({
|
|
|
2739
2852
|
})
|
|
2740
2853
|
}
|
|
2741
2854
|
),
|
|
2742
|
-
rightSection !== void 0 ? rightSection && /* @__PURE__ */
|
|
2855
|
+
rightSection !== void 0 ? rightSection && /* @__PURE__ */ jsx11(
|
|
2743
2856
|
"div",
|
|
2744
2857
|
{
|
|
2745
2858
|
style: {
|
|
@@ -2754,7 +2867,7 @@ var TabBar = ({
|
|
|
2754
2867
|
},
|
|
2755
2868
|
children: rightSection
|
|
2756
2869
|
}
|
|
2757
|
-
) : onNewTab && /* @__PURE__ */
|
|
2870
|
+
) : onNewTab && /* @__PURE__ */ jsx11(
|
|
2758
2871
|
"div",
|
|
2759
2872
|
{
|
|
2760
2873
|
style: {
|
|
@@ -2767,7 +2880,7 @@ var TabBar = ({
|
|
|
2767
2880
|
borderBottom: `1px solid ${theme.colors.border}`,
|
|
2768
2881
|
boxSizing: "border-box"
|
|
2769
2882
|
},
|
|
2770
|
-
children: /* @__PURE__ */
|
|
2883
|
+
children: /* @__PURE__ */ jsx11(
|
|
2771
2884
|
"button",
|
|
2772
2885
|
{
|
|
2773
2886
|
onClick: onNewTab,
|
|
@@ -2790,7 +2903,7 @@ var TabBar = ({
|
|
|
2790
2903
|
e.currentTarget.style.backgroundColor = "transparent";
|
|
2791
2904
|
},
|
|
2792
2905
|
title: "New Tab (\u2318T)",
|
|
2793
|
-
children: /* @__PURE__ */
|
|
2906
|
+
children: /* @__PURE__ */ jsx11(Plus, { size: 14 })
|
|
2794
2907
|
}
|
|
2795
2908
|
)
|
|
2796
2909
|
}
|
|
@@ -2844,7 +2957,7 @@ var useTabKeyboardShortcuts = ({
|
|
|
2844
2957
|
};
|
|
2845
2958
|
|
|
2846
2959
|
// src/panels/TabbedTerminalPanel.tsx
|
|
2847
|
-
import { useTheme as
|
|
2960
|
+
import { useTheme as useTheme9 } from "@principal-ade/industry-theme";
|
|
2848
2961
|
import { CollapsibleSplitPane } from "@principal-ade/panels";
|
|
2849
2962
|
import { Terminal as TerminalIcon2, Box, Boxes, Paperclip } from "lucide-react";
|
|
2850
2963
|
import React4, {
|
|
@@ -2855,16 +2968,16 @@ import React4, {
|
|
|
2855
2968
|
} from "react";
|
|
2856
2969
|
|
|
2857
2970
|
// src/components/TerminalStatusBar.tsx
|
|
2858
|
-
import { useTheme as
|
|
2971
|
+
import { useTheme as useTheme8 } from "@principal-ade/industry-theme";
|
|
2859
2972
|
import { Folder, GitBranch } from "lucide-react";
|
|
2860
2973
|
import React3 from "react";
|
|
2861
|
-
import { jsx as
|
|
2974
|
+
import { jsx as jsx12, jsxs as jsxs8 } from "react/jsx-runtime";
|
|
2862
2975
|
var AVATAR_SIZE = 14;
|
|
2863
2976
|
var TerminalStatusBar = ({
|
|
2864
2977
|
directory,
|
|
2865
2978
|
repo
|
|
2866
2979
|
}) => {
|
|
2867
|
-
const { theme } =
|
|
2980
|
+
const { theme } = useTheme8();
|
|
2868
2981
|
const [avatarFailed, setAvatarFailed] = React3.useState(false);
|
|
2869
2982
|
const owner = repo?.owner;
|
|
2870
2983
|
React3.useEffect(() => {
|
|
@@ -2894,7 +3007,7 @@ var TerminalStatusBar = ({
|
|
|
2894
3007
|
style: containerStyle,
|
|
2895
3008
|
title: `${repo.owner}/${repo.repo}${repo.branch ? ` \u2014 ${repo.branch}` : ""}`,
|
|
2896
3009
|
children: [
|
|
2897
|
-
showAvatar ? /* @__PURE__ */
|
|
3010
|
+
showAvatar ? /* @__PURE__ */ jsx12(
|
|
2898
3011
|
"img",
|
|
2899
3012
|
{
|
|
2900
3013
|
src: avatarUrl,
|
|
@@ -2909,7 +3022,7 @@ var TerminalStatusBar = ({
|
|
|
2909
3022
|
borderRadius: "50%"
|
|
2910
3023
|
}
|
|
2911
3024
|
}
|
|
2912
|
-
) : /* @__PURE__ */
|
|
3025
|
+
) : /* @__PURE__ */ jsx12(Folder, { size: 12, style: { flex: "0 0 auto", opacity: 0.7 } }),
|
|
2913
3026
|
/* @__PURE__ */ jsxs8(
|
|
2914
3027
|
"span",
|
|
2915
3028
|
{
|
|
@@ -2924,7 +3037,7 @@ var TerminalStatusBar = ({
|
|
|
2924
3037
|
repo.owner,
|
|
2925
3038
|
"/"
|
|
2926
3039
|
] }),
|
|
2927
|
-
/* @__PURE__ */
|
|
3040
|
+
/* @__PURE__ */ jsx12("span", { style: { color: theme.colors.text }, children: repo.repo })
|
|
2928
3041
|
]
|
|
2929
3042
|
}
|
|
2930
3043
|
),
|
|
@@ -2939,9 +3052,9 @@ var TerminalStatusBar = ({
|
|
|
2939
3052
|
opacity: 0.85
|
|
2940
3053
|
},
|
|
2941
3054
|
children: [
|
|
2942
|
-
/* @__PURE__ */
|
|
2943
|
-
/* @__PURE__ */
|
|
2944
|
-
repo.isDirty && /* @__PURE__ */
|
|
3055
|
+
/* @__PURE__ */ jsx12(GitBranch, { size: 12, style: { flex: "0 0 auto", opacity: 0.7 } }),
|
|
3056
|
+
/* @__PURE__ */ jsx12("span", { children: repo.branch }),
|
|
3057
|
+
repo.isDirty && /* @__PURE__ */ jsx12(
|
|
2945
3058
|
"span",
|
|
2946
3059
|
{
|
|
2947
3060
|
title: "Uncommitted changes",
|
|
@@ -2969,8 +3082,8 @@ var TerminalStatusBar = ({
|
|
|
2969
3082
|
return null;
|
|
2970
3083
|
}
|
|
2971
3084
|
return /* @__PURE__ */ jsxs8("div", { style: containerStyle, title: directory, children: [
|
|
2972
|
-
/* @__PURE__ */
|
|
2973
|
-
/* @__PURE__ */
|
|
3085
|
+
/* @__PURE__ */ jsx12(Folder, { size: 12, style: { flex: "0 0 auto", opacity: 0.7 } }),
|
|
3086
|
+
/* @__PURE__ */ jsx12(
|
|
2974
3087
|
"span",
|
|
2975
3088
|
{
|
|
2976
3089
|
style: {
|
|
@@ -2981,7 +3094,7 @@ var TerminalStatusBar = ({
|
|
|
2981
3094
|
textOverflow: "ellipsis",
|
|
2982
3095
|
minWidth: 0
|
|
2983
3096
|
},
|
|
2984
|
-
children: /* @__PURE__ */
|
|
3097
|
+
children: /* @__PURE__ */ jsx12("bdi", { children: directory })
|
|
2985
3098
|
}
|
|
2986
3099
|
)
|
|
2987
3100
|
] });
|
|
@@ -2989,9 +3102,9 @@ var TerminalStatusBar = ({
|
|
|
2989
3102
|
TerminalStatusBar.displayName = "TerminalStatusBar";
|
|
2990
3103
|
|
|
2991
3104
|
// src/panels/TabbedTerminalPanel.tsx
|
|
2992
|
-
import { Fragment as Fragment2, jsx as
|
|
3105
|
+
import { Fragment as Fragment2, jsx as jsx13, jsxs as jsxs9 } from "react/jsx-runtime";
|
|
2993
3106
|
var ActivityIndicator = ({ color, isAnimating }) => /* @__PURE__ */ jsxs9("div", { style: { display: "flex", gap: 1, alignItems: "center", height: 12 }, children: [
|
|
2994
|
-
[0, 1, 2, 3, 4].map((i) => /* @__PURE__ */
|
|
3107
|
+
[0, 1, 2, 3, 4].map((i) => /* @__PURE__ */ jsx13(
|
|
2995
3108
|
"div",
|
|
2996
3109
|
{
|
|
2997
3110
|
style: {
|
|
@@ -3006,7 +3119,7 @@ var ActivityIndicator = ({ color, isAnimating }) => /* @__PURE__ */ jsxs9("div",
|
|
|
3006
3119
|
},
|
|
3007
3120
|
i
|
|
3008
3121
|
)),
|
|
3009
|
-
/* @__PURE__ */
|
|
3122
|
+
/* @__PURE__ */ jsx13("style", { children: `
|
|
3010
3123
|
@keyframes waveSine {
|
|
3011
3124
|
0%, 100% { transform: scaleY(0.4); }
|
|
3012
3125
|
50% { transform: scaleY(1); }
|
|
@@ -3062,7 +3175,7 @@ function TerminalTabContentInner(props, ref) {
|
|
|
3062
3175
|
}),
|
|
3063
3176
|
[]
|
|
3064
3177
|
);
|
|
3065
|
-
return /* @__PURE__ */
|
|
3178
|
+
return /* @__PURE__ */ jsx13(
|
|
3066
3179
|
"div",
|
|
3067
3180
|
{
|
|
3068
3181
|
style: {
|
|
@@ -3076,7 +3189,7 @@ function TerminalTabContentInner(props, ref) {
|
|
|
3076
3189
|
height: "100%",
|
|
3077
3190
|
width: "100%"
|
|
3078
3191
|
},
|
|
3079
|
-
children: /* @__PURE__ */
|
|
3192
|
+
children: /* @__PURE__ */ jsx13(
|
|
3080
3193
|
TerminalSession,
|
|
3081
3194
|
{
|
|
3082
3195
|
ref: sessionRef,
|
|
@@ -3147,6 +3260,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
3147
3260
|
onFocusTabHandled,
|
|
3148
3261
|
requestCloseTabId,
|
|
3149
3262
|
workingStates,
|
|
3263
|
+
programStatus,
|
|
3150
3264
|
activityDetection = true,
|
|
3151
3265
|
activityTimeout = 500,
|
|
3152
3266
|
autoShowBlinds = false,
|
|
@@ -3164,7 +3278,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
3164
3278
|
bottomBarContent,
|
|
3165
3279
|
renderer
|
|
3166
3280
|
}) => {
|
|
3167
|
-
const { theme } =
|
|
3281
|
+
const { theme } = useTheme9();
|
|
3168
3282
|
const onTabAssociate = actions.onTabAssociate ?? onTabAssociateProp;
|
|
3169
3283
|
const [ownedTabs, setOwnedTabs] = useState4(initialTabs);
|
|
3170
3284
|
const [foreignTabs, setForeignTabs] = useState4([]);
|
|
@@ -3550,12 +3664,30 @@ var TabbedTerminalPanelInner = ({
|
|
|
3550
3664
|
});
|
|
3551
3665
|
const renderTabAccessory = useCallback6((tab) => {
|
|
3552
3666
|
const tabSessionId = sessionIds.get(tab.id);
|
|
3667
|
+
const isActive = tab.id === activeTabId;
|
|
3668
|
+
const record = tabSessionId ? programStatus?.[tabSessionId] : void 0;
|
|
3669
|
+
if (record && record.state !== "idle" && record.state !== "clear") {
|
|
3670
|
+
return /* @__PURE__ */ jsx13(
|
|
3671
|
+
"div",
|
|
3672
|
+
{
|
|
3673
|
+
style: {
|
|
3674
|
+
position: "absolute",
|
|
3675
|
+
right: "8px",
|
|
3676
|
+
display: "flex",
|
|
3677
|
+
alignItems: "center",
|
|
3678
|
+
justifyContent: "center",
|
|
3679
|
+
width: "16px",
|
|
3680
|
+
height: "16px"
|
|
3681
|
+
},
|
|
3682
|
+
children: /* @__PURE__ */ jsx13(ProgramStatusBadge, { record })
|
|
3683
|
+
}
|
|
3684
|
+
);
|
|
3685
|
+
}
|
|
3553
3686
|
const hasExternalWorkingState = tabSessionId ? workingStates?.[tabSessionId]?.isWorking : false;
|
|
3554
3687
|
const hasInternalActivity = tabSessionId ? activityStates.get(tabSessionId) : false;
|
|
3555
3688
|
const isWorking = hasExternalWorkingState || hasInternalActivity;
|
|
3556
|
-
const isActive = tab.id === activeTabId;
|
|
3557
3689
|
if (!isActive) return null;
|
|
3558
|
-
return /* @__PURE__ */
|
|
3690
|
+
return /* @__PURE__ */ jsx13(Fragment2, { children: /* @__PURE__ */ jsx13(
|
|
3559
3691
|
"div",
|
|
3560
3692
|
{
|
|
3561
3693
|
style: {
|
|
@@ -3568,12 +3700,12 @@ var TabbedTerminalPanelInner = ({
|
|
|
3568
3700
|
height: "16px"
|
|
3569
3701
|
},
|
|
3570
3702
|
title: isWorking ? "Terminal active" : "Terminal idle",
|
|
3571
|
-
children: /* @__PURE__ */
|
|
3703
|
+
children: /* @__PURE__ */ jsx13(ActivityIndicator, { color: theme.colors.primary, isAnimating: isWorking ?? false })
|
|
3572
3704
|
}
|
|
3573
3705
|
) });
|
|
3574
|
-
}, [activeTabId, theme, sessionIds, workingStates, activityStates]);
|
|
3706
|
+
}, [activeTabId, theme, sessionIds, workingStates, activityStates, programStatus]);
|
|
3575
3707
|
const renderTerminalWithAssociation = useCallback6((tab, isActive, sessionId, association) => {
|
|
3576
|
-
const terminalContent = /* @__PURE__ */
|
|
3708
|
+
const terminalContent = /* @__PURE__ */ jsx13(
|
|
3577
3709
|
TerminalTabContent,
|
|
3578
3710
|
{
|
|
3579
3711
|
ref: getRefCallback(tab.id),
|
|
@@ -3595,7 +3727,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
3595
3727
|
`terminal-${tab.id}`
|
|
3596
3728
|
);
|
|
3597
3729
|
const hasAssociation = !!association;
|
|
3598
|
-
const secondaryContent = hasAssociation && renderAssociatedContent ? renderAssociatedContent(association.associatedTabId, isActive) : /* @__PURE__ */
|
|
3730
|
+
const secondaryContent = hasAssociation && renderAssociatedContent ? renderAssociatedContent(association.associatedTabId, isActive) : /* @__PURE__ */ jsx13("div", { style: {
|
|
3599
3731
|
height: "100%",
|
|
3600
3732
|
display: "flex",
|
|
3601
3733
|
alignItems: "center",
|
|
@@ -3604,10 +3736,10 @@ var TabbedTerminalPanelInner = ({
|
|
|
3604
3736
|
fontSize: "13px",
|
|
3605
3737
|
backgroundColor: theme.colors.backgroundSecondary
|
|
3606
3738
|
}, children: "Drag a tab here to associate it with this terminal" });
|
|
3607
|
-
const headerConfig = hasAssociation && getAssociatedHeader ? getAssociatedHeader(association.associatedTabId) : { title: "Drop zone", icon: /* @__PURE__ */
|
|
3739
|
+
const headerConfig = hasAssociation && getAssociatedHeader ? getAssociatedHeader(association.associatedTabId) : { title: "Drop zone", icon: /* @__PURE__ */ jsx13(Paperclip, { size: 14 }) };
|
|
3608
3740
|
const isCollapsed = hasAssociation ? association.collapsed : true;
|
|
3609
3741
|
const handleCollapsedChange = hasAssociation ? (collapsed) => onAssociationCollapsedChange?.(tab.id, collapsed) : void 0;
|
|
3610
|
-
return /* @__PURE__ */
|
|
3742
|
+
return /* @__PURE__ */ jsx13(
|
|
3611
3743
|
CollapsibleSplitPane,
|
|
3612
3744
|
{
|
|
3613
3745
|
style: { height: "100%" },
|
|
@@ -3699,7 +3831,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
3699
3831
|
backgroundColor: theme.colors.background
|
|
3700
3832
|
},
|
|
3701
3833
|
children: [
|
|
3702
|
-
!hideHeader && /* @__PURE__ */
|
|
3834
|
+
!hideHeader && /* @__PURE__ */ jsx13("div", { ref: headerRef, children: /* @__PURE__ */ jsx13(
|
|
3703
3835
|
TabBar,
|
|
3704
3836
|
{
|
|
3705
3837
|
tabs: genericTabs,
|
|
@@ -3707,7 +3839,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
3707
3839
|
onTabClick: switchTab,
|
|
3708
3840
|
onTabClose: closeTab,
|
|
3709
3841
|
onNewTab: addNewTab,
|
|
3710
|
-
leftSection: hideShowAllTerminalsButton ? void 0 : /* @__PURE__ */
|
|
3842
|
+
leftSection: hideShowAllTerminalsButton ? void 0 : /* @__PURE__ */ jsx13(
|
|
3711
3843
|
"button",
|
|
3712
3844
|
{
|
|
3713
3845
|
onClick: () => onShowAllTerminalsChange?.(!showAllTerminals),
|
|
@@ -3734,7 +3866,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
3734
3866
|
}
|
|
3735
3867
|
},
|
|
3736
3868
|
title: showAllTerminals ? "Showing all terminals (click to filter by context)" : "Show all terminals",
|
|
3737
|
-
children: showAllTerminals ? /* @__PURE__ */
|
|
3869
|
+
children: showAllTerminals ? /* @__PURE__ */ jsx13(Boxes, { size: 14 }) : /* @__PURE__ */ jsx13(Box, { size: 14 })
|
|
3738
3870
|
}
|
|
3739
3871
|
),
|
|
3740
3872
|
renderTabAccessory,
|
|
@@ -3795,7 +3927,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
3795
3927
|
const customContent = renderTabContent(tab, isActive, sessionId, width);
|
|
3796
3928
|
if (customContent === null && tab.contentType === "terminal") {
|
|
3797
3929
|
const association = associations?.[tab.id];
|
|
3798
|
-
return /* @__PURE__ */
|
|
3930
|
+
return /* @__PURE__ */ jsx13(
|
|
3799
3931
|
"div",
|
|
3800
3932
|
{
|
|
3801
3933
|
inert: !isActive,
|
|
@@ -3823,7 +3955,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
3823
3955
|
);
|
|
3824
3956
|
}
|
|
3825
3957
|
const hasBeenActivated = activatedTabs.has(tab.id);
|
|
3826
|
-
return /* @__PURE__ */
|
|
3958
|
+
return /* @__PURE__ */ jsx13(
|
|
3827
3959
|
"div",
|
|
3828
3960
|
{
|
|
3829
3961
|
inert: !isActive,
|
|
@@ -3843,7 +3975,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
3843
3975
|
}
|
|
3844
3976
|
if (tab.contentType === "terminal") {
|
|
3845
3977
|
const association = associations?.[tab.id];
|
|
3846
|
-
return /* @__PURE__ */
|
|
3978
|
+
return /* @__PURE__ */ jsx13(
|
|
3847
3979
|
"div",
|
|
3848
3980
|
{
|
|
3849
3981
|
inert: !isActive,
|
|
@@ -3881,7 +4013,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
3881
4013
|
"Unknown content type: ",
|
|
3882
4014
|
tab.contentType
|
|
3883
4015
|
] }),
|
|
3884
|
-
/* @__PURE__ */
|
|
4016
|
+
/* @__PURE__ */ jsx13("p", { style: { fontSize: theme.fontSizes[0], marginTop: "8px" }, children: "Provide a renderTabContent prop to render custom tab types" })
|
|
3885
4017
|
]
|
|
3886
4018
|
},
|
|
3887
4019
|
tab.id
|
|
@@ -3899,14 +4031,14 @@ var TabbedTerminalPanelInner = ({
|
|
|
3899
4031
|
color: theme.colors.textSecondary
|
|
3900
4032
|
},
|
|
3901
4033
|
children: [
|
|
3902
|
-
/* @__PURE__ */
|
|
4034
|
+
/* @__PURE__ */ jsx13(
|
|
3903
4035
|
TerminalIcon2,
|
|
3904
4036
|
{
|
|
3905
4037
|
size: 32,
|
|
3906
4038
|
style: { opacity: 0.5, marginBottom: "16px" }
|
|
3907
4039
|
}
|
|
3908
4040
|
),
|
|
3909
|
-
/* @__PURE__ */
|
|
4041
|
+
/* @__PURE__ */ jsx13(
|
|
3910
4042
|
"button",
|
|
3911
4043
|
{
|
|
3912
4044
|
onClick: () => addNewTab(),
|
|
@@ -3934,14 +4066,14 @@ var TabbedTerminalPanelInner = ({
|
|
|
3934
4066
|
const activeTab = tabs.find((t) => t.id === activeTabId);
|
|
3935
4067
|
const activeDir = activeTab?.directory;
|
|
3936
4068
|
return /* @__PURE__ */ jsxs9("div", { style: { display: "flex", alignItems: "center", flex: "0 0 auto" }, children: [
|
|
3937
|
-
/* @__PURE__ */
|
|
4069
|
+
/* @__PURE__ */ jsx13(
|
|
3938
4070
|
TerminalStatusBar,
|
|
3939
4071
|
{
|
|
3940
4072
|
directory: activeDir,
|
|
3941
4073
|
repo: activeDir ? getRepoInfo?.(activeDir) : void 0
|
|
3942
4074
|
}
|
|
3943
4075
|
),
|
|
3944
|
-
bottomBarContent && /* @__PURE__ */
|
|
4076
|
+
bottomBarContent && /* @__PURE__ */ jsx13("div", { style: { marginLeft: "auto", display: "flex", alignItems: "center", height: 22 }, children: bottomBarContent })
|
|
3945
4077
|
] });
|
|
3946
4078
|
})()
|
|
3947
4079
|
]
|
|
@@ -3971,6 +4103,7 @@ var TabbedTerminalPanelMemoized = React4.memo(TabbedTerminalPanelInner, (prevPro
|
|
|
3971
4103
|
if (prevProps.activeTabId !== nextProps.activeTabId) changes.push("activeTabId");
|
|
3972
4104
|
if (prevProps.onActiveTabChange !== nextProps.onActiveTabChange) changes.push("onActiveTabChange");
|
|
3973
4105
|
if (prevProps.workingStates !== nextProps.workingStates) changes.push("workingStates");
|
|
4106
|
+
if (prevProps.programStatus !== nextProps.programStatus) changes.push("programStatus");
|
|
3974
4107
|
if (prevProps.activityDetection !== nextProps.activityDetection) changes.push("activityDetection");
|
|
3975
4108
|
if (prevProps.activityTimeout !== nextProps.activityTimeout) changes.push("activityTimeout");
|
|
3976
4109
|
if (prevProps.autoShowBlinds !== nextProps.autoShowBlinds) changes.push("autoShowBlinds");
|
|
@@ -4176,6 +4309,7 @@ function getTerminalSlice(context2) {
|
|
|
4176
4309
|
export {
|
|
4177
4310
|
DEFAULT_RENDERER,
|
|
4178
4311
|
GhosttyRenderer,
|
|
4312
|
+
ProgramStatusBadge,
|
|
4179
4313
|
SelectionDragChip,
|
|
4180
4314
|
SpanStatusCode,
|
|
4181
4315
|
TRACER_NAME,
|
|
@@ -4195,6 +4329,7 @@ export {
|
|
|
4195
4329
|
createTerminalSessionTool,
|
|
4196
4330
|
createTerminalTheme,
|
|
4197
4331
|
focusTerminalTool,
|
|
4332
|
+
formatProgramStatusRecord,
|
|
4198
4333
|
getActiveSpan,
|
|
4199
4334
|
getRepositoryPath,
|
|
4200
4335
|
getTerminalCSSVariables,
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import '../styles/terminal-theme.css';
|
|
3
|
+
import type { ProgramStatusRecord } from '../types/terminal.types';
|
|
4
|
+
export interface ProgramStatusBadgeProps {
|
|
5
|
+
record: ProgramStatusRecord;
|
|
6
|
+
animate?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare const formatProgramStatusRecord: (record: ProgramStatusRecord) => string;
|
|
9
|
+
export declare const ProgramStatusBadge: React.FC<ProgramStatusBadgeProps>;
|
|
10
|
+
//# sourceMappingURL=ProgramStatusBadge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProgramStatusBadge.d.ts","sourceRoot":"","sources":["../../../src/components/ProgramStatusBadge.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,MAAM,WAAW,uBAAuB;IAEtC,MAAM,EAAE,mBAAmB,CAAC;IAM5B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAsBD,eAAO,MAAM,yBAAyB,GAAI,QAAQ,mBAAmB,KAAG,MAQvE,CAAC;AAoCF,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CA6EhE,CAAC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export type { PanelComponentProps, PanelContextValue, PanelActions, PanelEventEmitter, PanelEvent, PanelEventType, PanelDefinition, PanelMetadata, PanelLifecycleHooks, DataSlice, RepositoryMetadata, WorkspaceMetadata, } from '@principal-ade/panel-framework-core';
|
|
2
2
|
import type { PanelActions as CorePanelActions, PanelComponentProps as CorePanelComponentProps, PanelContextValue, DataSlice } from '@principal-ade/panel-framework-core';
|
|
3
|
-
import type { DroppedTerminalFile } from '../types/terminal.types';
|
|
3
|
+
import type { DroppedTerminalFile, ProgramStatusKind, ProgramStatusRecord, ProgramStatusState } from '../types/terminal.types';
|
|
4
4
|
import type { TerminalRepoInfo } from '../components/TerminalStatusBar';
|
|
5
5
|
import type { RendererChoice } from '../renderer/resolveRenderer';
|
|
6
|
-
export type { DroppedTerminalFile, TerminalRepoInfo };
|
|
6
|
+
export type { DroppedTerminalFile, TerminalRepoInfo, ProgramStatusRecord, ProgramStatusState, ProgramStatusKind, };
|
|
7
7
|
export type TerminalEventType = 'terminal:data' | 'terminal:exit' | 'terminal:created' | 'terminal:title-change' | 'terminal:cwd-change' | 'terminal:link-click' | 'terminal:shortcut' | 'terminal:activity-changed';
|
|
8
8
|
export interface TerminalLinkClickEvent {
|
|
9
9
|
url: string;
|
|
@@ -142,6 +142,7 @@ export interface TabbedTerminalPanelProps<TTab extends BaseTab = TerminalTab> ex
|
|
|
142
142
|
renderTabLabel?: (tab: TTab) => React.ReactNode;
|
|
143
143
|
width?: number;
|
|
144
144
|
workingStates?: Record<string, TerminalWorkingState>;
|
|
145
|
+
programStatus?: Record<string, ProgramStatusRecord>;
|
|
145
146
|
activityDetection?: boolean;
|
|
146
147
|
activityTimeout?: number;
|
|
147
148
|
autoShowBlinds?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/panel-types/index.ts"],"names":[],"mappings":"AAQA,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,UAAU,EACV,cAAc,EACd,eAAe,EACf,aAAa,EACb,mBAAmB,EACnB,SAAS,EACT,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,KAAK,EACV,YAAY,IAAI,gBAAgB,EAChC,mBAAmB,IAAI,uBAAuB,EAC9C,iBAAiB,EACjB,SAAS,EACV,MAAM,qCAAqC,CAAC;AAE7C,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/panel-types/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabbedTerminalPanel.d.ts","sourceRoot":"","sources":["../../../src/panels/TabbedTerminalPanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAKN,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"TabbedTerminalPanel.d.ts","sourceRoot":"","sources":["../../../src/panels/TabbedTerminalPanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAKN,MAAM,OAAO,CAAC;AASf,OAAO,KAAK,EACV,wBAAwB,EACxB,WAAW,EAGZ,MAAM,gBAAgB,CAAC;AAkExB,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,MAAM,IAAI,CAAC;CAC5B;AAsyCD,eAAO,MAAM,mBAAmB,EAAkC,CAAC,IAAI,SAAS,OAAO,cAAc,EAAE,OAAO,GAAG,WAAW,EAC1H,KAAK,EAAE,wBAAwB,CAAC,IAAI,CAAC,KAClC,KAAK,CAAC,YAAY,CAAC"}
|
|
@@ -24,6 +24,17 @@ export interface TerminalActivityState {
|
|
|
24
24
|
startedAt?: number;
|
|
25
25
|
duration?: number;
|
|
26
26
|
}
|
|
27
|
+
export type ProgramStatusState = 'idle' | 'working' | 'done' | 'blocked' | 'error' | 'clear';
|
|
28
|
+
export type ProgramStatusKind = 'permission' | 'question' | 'auth';
|
|
29
|
+
export interface ProgramStatusRecord {
|
|
30
|
+
state: ProgramStatusState;
|
|
31
|
+
kind?: ProgramStatusKind;
|
|
32
|
+
progress?: number;
|
|
33
|
+
id?: string;
|
|
34
|
+
app?: string;
|
|
35
|
+
msg?: string;
|
|
36
|
+
title?: string;
|
|
37
|
+
}
|
|
27
38
|
export interface DroppedTerminalFile {
|
|
28
39
|
name: string;
|
|
29
40
|
mimeType: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal.types.d.ts","sourceRoot":"","sources":["../../../src/types/terminal.types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"terminal.types.d.ts","sourceRoot":"","sources":["../../../src/types/terminal.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAM7C,MAAM,WAAW,oBAAoB;IAEnC,OAAO,EAAE,MAAM,CAAC;IAEhB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,OAAO,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,IAAI,CAAC;QACpB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;KACxB,CAAC,CAAC;IAEH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAKD,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAKD,MAAM,WAAW,sBAAsB;IAErC,OAAO,EAAE,OAAO,CAAC;IAEjB,UAAU,EAAE,OAAO,CAAC;CACrB;AAKD,MAAM,WAAW,qBAAqB;IAEpC,QAAQ,EAAE,OAAO,CAAC;IAElB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAQD,MAAM,MAAM,kBAAkB,GAC1B,MAAM,GACN,SAAS,GACT,MAAM,GACN,SAAS,GACT,OAAO,GACP,OAAO,CAAC;AAMZ,MAAM,MAAM,iBAAiB,GAAG,YAAY,GAAG,UAAU,GAAG,MAAM,CAAC;AAUnE,MAAM,WAAW,mBAAmB;IAElC,KAAK,EAAE,kBAAkB,CAAC;IAE1B,IAAI,CAAC,EAAE,iBAAiB,CAAC;IAEzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAQD,MAAM,WAAW,mBAAmB;IAElC,IAAI,EAAE,MAAM,CAAC;IAEb,QAAQ,EAAE,MAAM,CAAC;IAEjB,IAAI,EAAE,UAAU,CAAC;CAClB;AAKD,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;AAKjD,MAAM,WAAW,qBAAqB;IAEpC,QAAQ,EAAE,gBAAgB,CAAC;IAE3B,aAAa,EAAE,aAAa,CAAC;CAC9B;AAKD,MAAM,WAAW,kBAAkB;IAEjC,QAAQ,EAAE,OAAO,CAAC;IAElB,OAAO,EAAE,OAAO,CAAC;IAEjB,OAAO,EAAE,OAAO,CAAC;IAEjB,MAAM,EAAE,OAAO,CAAC;CACjB;AAKD,MAAM,WAAW,mBAAmB;IAGlC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAGhC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAGhD,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAG/C,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAGnE,sBAAsB,CAAC,EAAE,CAAC,QAAQ,EAAE,sBAAsB,KAAK,IAAI,CAAC;IASpE,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,EAAE,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAIrE,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,UAAU,CAAC,EAAE,OAAO,CAAC;IAGrB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAIlC,SAAS,CAAC,EAAE,OAAO,CAAC;IAGpB,SAAS,CAAC,EAAE,OAAO,CAAC;IAGpB,cAAc,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,CAAC;IAO7D,cAAc,CAAC,EAAE,OAAO,CAAC;IAIzB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IAGrB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IAGvB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IAGtB,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAOpD,YAAY,CAAC,EAAE,oBAAoB,CAAC;IAOpC,SAAS,CAAC,EAAE,OAAO,CAAC;IAMpB,cAAc,CAAC,EAAE,MAAM,CAAC;IAKxB,eAAe,CAAC,EAAE,MAAM,CAAC;IASzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAO5B,eAAe,CAAC,EAAE,MAAM,CAAC;IAOzB,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAO1D,cAAc,CAAC,EAAE,OAAO,CAAC;IAIzB,UAAU,CAAC,EAAE,OAAO,CAAC;IAGrB,WAAW,CAAC,EAAE,OAAO,CAAC;IAGtB,WAAW,CAAC,EAAE,OAAO,GAAG,WAAW,GAAG,KAAK,CAAC;IAG5C,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAIlB,YAAY,CAAC,EAAE,OAAO,CAAC;IAGvB,cAAc,CAAC,EAAE,OAAO,CAAC;IAUzB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAM9B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAM5B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAKlC,qBAAqB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAWhD,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAS5B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAMD,MAAM,WAAW,iBAAiB;IAEhC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,KAAK,IAAI,CAAC;IAG3C,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAGhC,cAAc,EAAE,MAAM,IAAI,CAAC;IAG3B,KAAK,EAAE,MAAM,IAAI,CAAC;IAGlB,IAAI,EAAE,MAAM,IAAI,CAAC;IAGjB,KAAK,EAAE,MAAM,IAAI,CAAC;IAGlB,KAAK,EAAE,MAAM,IAAI,CAAC;IAGlB,WAAW,EAAE,MAAM,QAAQ,GAAG,IAAI,CAAC;IAGnC,GAAG,EAAE,MAAM,IAAI,CAAC;IAGhB,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAG7C,SAAS,EAAE,MAAM,IAAI,CAAC;IAGtB,cAAc,EAAE,MAAM,IAAI,CAAC;IAG3B,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,cAAc,KAAK,OAAO,CAAC;IAG1E,YAAY,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,cAAc,KAAK,OAAO,CAAC;IAG9E,WAAW,EAAE,MAAM,IAAI,CAAC;IAGxB,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;CACjD"}
|
package/dist/styles.css
CHANGED
|
@@ -228,3 +228,28 @@
|
|
|
228
228
|
.terminal-working-overlay.closing {
|
|
229
229
|
animation: blinds-up 0.3s ease-in forwards;
|
|
230
230
|
}
|
|
231
|
+
|
|
232
|
+
/* ===== PROGRAM STATUS BADGES (OSC 7501) ===== */
|
|
233
|
+
|
|
234
|
+
/* Animated wave bars for the "working" state */
|
|
235
|
+
@keyframes program-status-wave {
|
|
236
|
+
0%,
|
|
237
|
+
100% {
|
|
238
|
+
transform: scaleY(0.4);
|
|
239
|
+
}
|
|
240
|
+
50% {
|
|
241
|
+
transform: scaleY(1);
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
/* Attention fade for the "blocked" badge. Opacity only — the badge keeps its
|
|
246
|
+
size (no grow/shrink). */
|
|
247
|
+
@keyframes program-status-fade {
|
|
248
|
+
0%,
|
|
249
|
+
100% {
|
|
250
|
+
opacity: 1;
|
|
251
|
+
}
|
|
252
|
+
50% {
|
|
253
|
+
opacity: 0.5;
|
|
254
|
+
}
|
|
255
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@industry-theme/xterm-terminal-panel",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.4",
|
|
4
4
|
"description": "Industry-themed xterm.js terminal components with panel framework integration",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"sideEffects": [
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
},
|
|
63
63
|
"dependencies": {
|
|
64
64
|
"clsx": "^2.1.1",
|
|
65
|
-
"ghostty-web": "
|
|
65
|
+
"ghostty-web": "https://github.com/anomalyco/ghostty-web/archive/6e24d040458ddd7aae81572fe2901deec32f9fe7.tar.gz",
|
|
66
66
|
"react-resizable-panels": "^4.7.3"
|
|
67
67
|
},
|
|
68
68
|
"peerDependencies": {
|