@industry-theme/xterm-terminal-panel 0.12.0 → 0.12.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +31 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +53 -7
- package/dist/src/components/TerminalSession.d.ts +1 -0
- package/dist/src/components/TerminalSession.d.ts.map +1 -1
- package/dist/src/panel-types/index.d.ts +17 -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 +2 -0
- package/dist/src/types/terminal.types.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -218,6 +218,37 @@ setOpenTab({ directory: '/work/app', label: 'app' });
|
|
|
218
218
|
/>;
|
|
219
219
|
```
|
|
220
220
|
|
|
221
|
+
Hosts that resume a coding-agent conversation can set `agent` separately from
|
|
222
|
+
the tab name and optionally request a transient startup overlay:
|
|
223
|
+
|
|
224
|
+
```ts
|
|
225
|
+
setOpenTab({
|
|
226
|
+
directory: '/work/app',
|
|
227
|
+
command: 'opencode --session ses_…',
|
|
228
|
+
label: 'Fix login',
|
|
229
|
+
customLabel: 'Fix login',
|
|
230
|
+
agent: 'opencode',
|
|
231
|
+
startupNotice: {
|
|
232
|
+
message: 'Resuming OpenCode Session',
|
|
233
|
+
subtitle: 'Fix login',
|
|
234
|
+
},
|
|
235
|
+
});
|
|
236
|
+
|
|
237
|
+
<TabbedTerminalPanel
|
|
238
|
+
// ...
|
|
239
|
+
renderAgentIcon={(agent, size) =>
|
|
240
|
+
agent === 'opencode' ? <OpenCodeIcon size={size} /> : undefined
|
|
241
|
+
}
|
|
242
|
+
/>
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
The agent value is stored on the terminal tab so hosts can render its icon in
|
|
246
|
+
the tab bar and in their own tab lists. `startupNotice` is shown over the
|
|
247
|
+
terminal until the PTY emits its first output or its `timeoutMs` (12 seconds by
|
|
248
|
+
default, clamped to 60 seconds) expires. Keep the session's ordinary title in
|
|
249
|
+
`label`/`customLabel`; provider identity should not need to be repeated in the
|
|
250
|
+
display name.
|
|
251
|
+
|
|
221
252
|
Helpers are exported for hosts that need to reason about identity themselves:
|
|
222
253
|
`createTabId()`, `tabContext(terminalContext, tabId)`, and
|
|
223
254
|
`tabIdFromContext(terminalContext, sessionContext)` (returns `null` for a
|
package/dist/index.d.ts
CHANGED
|
@@ -32,7 +32,7 @@ export { TabbedTerminalPanel } from './src/panels/TabbedTerminalPanel';
|
|
|
32
32
|
export type { TerminalTabContentRef } from './src/panels/TabbedTerminalPanel';
|
|
33
33
|
export { panels, onPackageLoad, onPackageUnload } from './src/panel-exports';
|
|
34
34
|
export { terminalPanelTools, terminalPanelToolsMetadata, createTerminalSessionTool, writeToTerminalTool, closeTerminalSessionTool, clearTerminalTool, focusTerminalTool, } from './src/panel-exports';
|
|
35
|
-
export type { PanelDefinition, PanelMetadata, PanelComponentProps, PanelContextValue, PanelActions, PanelEventEmitter, TerminalSessionInfo, CreateTerminalSessionOptions, TerminalPanelActions, TerminalEventType, TerminalLinkClickEvent, TerminalScope, TerminalPanelProps, TerminalTab, TerminalTabOpenRequest, TabbedTerminalPanelProps, OwnershipStatus, OwnershipResult, PortReadyData, TerminalRepoInfo, } from './src/panel-types';
|
|
35
|
+
export type { PanelDefinition, PanelMetadata, PanelComponentProps, PanelContextValue, PanelActions, PanelEventEmitter, TerminalSessionInfo, CreateTerminalSessionOptions, TerminalPanelActions, TerminalEventType, TerminalLinkClickEvent, TerminalScope, TerminalPanelProps, TerminalTab, TerminalTabOpenRequest, TerminalStartupNotice, TerminalStartupOverlay, TabbedTerminalPanelProps, OwnershipStatus, OwnershipResult, PortReadyData, TerminalRepoInfo, } from './src/panel-types';
|
|
36
36
|
export { getTerminalSessions, getTerminalSession, isTerminalLoading, getRepositoryPath, getWorkspacePath, getTerminalDirectory, getTerminalSlice, } from './src/panel-types';
|
|
37
37
|
export { getTracer, getActiveSpan, withSpan, withSpanSync, TRACER_NAME, TRACER_VERSION, trace, context, SpanStatusCode, } from './src/telemetry';
|
|
38
38
|
export type { Tracer, Span } from './src/telemetry';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -187,7 +187,7 @@ import {
|
|
|
187
187
|
// package.json
|
|
188
188
|
var package_default = {
|
|
189
189
|
name: "@industry-theme/xterm-terminal-panel",
|
|
190
|
-
version: "0.12.
|
|
190
|
+
version: "0.12.1",
|
|
191
191
|
description: "Industry-themed xterm.js terminal components with panel framework integration",
|
|
192
192
|
type: "module",
|
|
193
193
|
sideEffects: [
|
|
@@ -2041,7 +2041,7 @@ var TerminalOverlay = ({ state, theme }) => /* @__PURE__ */ jsxs5(
|
|
|
2041
2041
|
zIndex: 10
|
|
2042
2042
|
},
|
|
2043
2043
|
children: [
|
|
2044
|
-
/* @__PURE__ */ jsx9(Monitor2, { size: 48, color: theme.colors.textSecondary }),
|
|
2044
|
+
state.icon ?? /* @__PURE__ */ jsx9(Monitor2, { size: 48, color: theme.colors.textSecondary }),
|
|
2045
2045
|
/* @__PURE__ */ jsx9(
|
|
2046
2046
|
"div",
|
|
2047
2047
|
{
|
|
@@ -2136,6 +2136,7 @@ var TerminalSession = forwardRef5(
|
|
|
2136
2136
|
initialRows,
|
|
2137
2137
|
sessionId: sessionIdProp = null,
|
|
2138
2138
|
onSessionCreated,
|
|
2139
|
+
onTerminalOutput,
|
|
2139
2140
|
cwd,
|
|
2140
2141
|
command,
|
|
2141
2142
|
sessionContext,
|
|
@@ -2158,6 +2159,9 @@ var TerminalSession = forwardRef5(
|
|
|
2158
2159
|
const [isInitialized, setIsInitialized] = useState2(false);
|
|
2159
2160
|
const hasInitializedRef = useRef4(false);
|
|
2160
2161
|
const pendingSessionIdRef = useRef4(null);
|
|
2162
|
+
const hasReportedOutputRef = useRef4(false);
|
|
2163
|
+
const onTerminalOutputRef = useRef4(onTerminalOutput);
|
|
2164
|
+
onTerminalOutputRef.current = onTerminalOutput;
|
|
2161
2165
|
const [shouldRenderTerminal, setShouldRenderTerminal] = useState2(true);
|
|
2162
2166
|
const [ownerWindowId, setOwnerWindowId] = useState2(null);
|
|
2163
2167
|
const needsRefreshOnResizeRef = useRef4(false);
|
|
@@ -2292,6 +2296,10 @@ var TerminalSession = forwardRef5(
|
|
|
2292
2296
|
let cancelled = false;
|
|
2293
2297
|
const unsubscribe = actions.onTerminalData(localSessionId, (data) => {
|
|
2294
2298
|
rendererRef.current?.write(data);
|
|
2299
|
+
if (data.length > 0 && !hasReportedOutputRef.current) {
|
|
2300
|
+
hasReportedOutputRef.current = true;
|
|
2301
|
+
onTerminalOutputRef.current?.(data);
|
|
2302
|
+
}
|
|
2295
2303
|
});
|
|
2296
2304
|
const adoptPtyGrid = async () => {
|
|
2297
2305
|
try {
|
|
@@ -3387,9 +3395,24 @@ function TerminalTabContentInner(props, ref) {
|
|
|
3387
3395
|
onSessionCreated,
|
|
3388
3396
|
onScrollPositionChange,
|
|
3389
3397
|
renderer,
|
|
3390
|
-
isForeign = false
|
|
3398
|
+
isForeign = false,
|
|
3399
|
+
startupIcon
|
|
3391
3400
|
} = props;
|
|
3392
3401
|
const sessionRef = useRef5(null);
|
|
3402
|
+
const [showStartupOverlay, setShowStartupOverlay] = useState5(() => {
|
|
3403
|
+
const expiresAt = tab.startupOverlay?.expiresAt;
|
|
3404
|
+
return !!tab.startupOverlay && (expiresAt == null || expiresAt > Date.now());
|
|
3405
|
+
});
|
|
3406
|
+
useEffect7(() => {
|
|
3407
|
+
const startupOverlay = tab.startupOverlay;
|
|
3408
|
+
if (!startupOverlay || !showStartupOverlay) return;
|
|
3409
|
+
const delay = Math.max(0, startupOverlay.expiresAt - Date.now());
|
|
3410
|
+
const timer = setTimeout(() => setShowStartupOverlay(false), delay);
|
|
3411
|
+
return () => clearTimeout(timer);
|
|
3412
|
+
}, [tab.id, tab.startupOverlay, showStartupOverlay]);
|
|
3413
|
+
const handleTerminalOutput = useCallback6(() => {
|
|
3414
|
+
setShowStartupOverlay(false);
|
|
3415
|
+
}, []);
|
|
3393
3416
|
const seededSize = useMemo2(() => {
|
|
3394
3417
|
if (initialCols && initialRows) {
|
|
3395
3418
|
return { cols: initialCols, rows: initialRows };
|
|
@@ -3435,6 +3458,7 @@ function TerminalTabContentInner(props, ref) {
|
|
|
3435
3458
|
events,
|
|
3436
3459
|
sessionId,
|
|
3437
3460
|
onSessionCreated: handleSessionCreated,
|
|
3461
|
+
onTerminalOutput: handleTerminalOutput,
|
|
3438
3462
|
cwd: tab.directory,
|
|
3439
3463
|
command: tab.command,
|
|
3440
3464
|
sessionContext: tabContext(terminalContext, tab.id),
|
|
@@ -3444,6 +3468,11 @@ function TerminalTabContentInner(props, ref) {
|
|
|
3444
3468
|
onScrollPositionChange: handleScrollPositionChange,
|
|
3445
3469
|
initialCols: seededSize?.cols,
|
|
3446
3470
|
initialRows: seededSize?.rows,
|
|
3471
|
+
overlayState: showStartupOverlay && tab.startupOverlay ? {
|
|
3472
|
+
message: tab.startupOverlay.message,
|
|
3473
|
+
subtitle: tab.startupOverlay.subtitle,
|
|
3474
|
+
icon: startupIcon
|
|
3475
|
+
} : void 0,
|
|
3447
3476
|
autoFocus: isActive,
|
|
3448
3477
|
isVisible: isVisible && isActive
|
|
3449
3478
|
}
|
|
@@ -3452,7 +3481,7 @@ function TerminalTabContentInner(props, ref) {
|
|
|
3452
3481
|
);
|
|
3453
3482
|
}
|
|
3454
3483
|
var areTerminalTabContentPropsEqual = (prevProps, nextProps) => {
|
|
3455
|
-
const tabEqual = prevProps.tab.id === nextProps.tab.id && prevProps.tab.directory === nextProps.tab.directory && prevProps.tab.label === nextProps.tab.label;
|
|
3484
|
+
const tabEqual = prevProps.tab.id === nextProps.tab.id && prevProps.tab.directory === nextProps.tab.directory && prevProps.tab.label === nextProps.tab.label && prevProps.tab.agent === nextProps.tab.agent && prevProps.tab.startupOverlay?.message === nextProps.tab.startupOverlay?.message && prevProps.tab.startupOverlay?.subtitle === nextProps.tab.startupOverlay?.subtitle && prevProps.tab.startupOverlay?.expiresAt === nextProps.tab.startupOverlay?.expiresAt && prevProps.startupIcon === nextProps.startupIcon;
|
|
3456
3485
|
const changes = [];
|
|
3457
3486
|
if (!tabEqual) changes.push("tab");
|
|
3458
3487
|
if (prevProps.sessionId !== nextProps.sessionId) changes.push("sessionId");
|
|
@@ -3488,6 +3517,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
3488
3517
|
tabLabelPrefix,
|
|
3489
3518
|
renderTabContent,
|
|
3490
3519
|
renderTabIcon,
|
|
3520
|
+
renderAgentIcon,
|
|
3491
3521
|
renderTabLabel,
|
|
3492
3522
|
renderEmptyState,
|
|
3493
3523
|
width,
|
|
@@ -3630,7 +3660,8 @@ var TabbedTerminalPanelInner = ({
|
|
|
3630
3660
|
// Include terminal-specific properties if they exist
|
|
3631
3661
|
..."directory" in tab && tab.directory ? { directory: tab.directory } : {},
|
|
3632
3662
|
..."command" in tab && tab.command ? { command: tab.command } : {}
|
|
3633
|
-
}
|
|
3663
|
+
},
|
|
3664
|
+
..."agent" in tab && tab.agent ? { agent: tab.agent } : {}
|
|
3634
3665
|
}));
|
|
3635
3666
|
}, [tabs]);
|
|
3636
3667
|
const tabRefsMap = useRef5(/* @__PURE__ */ new Map());
|
|
@@ -3786,10 +3817,19 @@ var TabbedTerminalPanelInner = ({
|
|
|
3786
3817
|
setActiveTabId(tabId);
|
|
3787
3818
|
}, [setActiveTabId]);
|
|
3788
3819
|
const addNewTab = useCallback6(
|
|
3789
|
-
(label, command, targetDirectory, tabId, customLabel) => {
|
|
3820
|
+
(label, command, targetDirectory, tabId, customLabel, agent, startupNotice) => {
|
|
3790
3821
|
const targetDir = targetDirectory || directory;
|
|
3791
3822
|
const directoryName = targetDir.split("/").pop() || targetDir;
|
|
3792
3823
|
const trimmedCustom = customLabel?.trim() || void 0;
|
|
3824
|
+
const timeoutMs = Math.min(
|
|
3825
|
+
Math.max(startupNotice?.timeoutMs ?? 12e3, 0),
|
|
3826
|
+
6e4
|
|
3827
|
+
);
|
|
3828
|
+
const startupOverlay = startupNotice ? {
|
|
3829
|
+
message: startupNotice.message,
|
|
3830
|
+
subtitle: startupNotice.subtitle,
|
|
3831
|
+
expiresAt: Date.now() + timeoutMs
|
|
3832
|
+
} : void 0;
|
|
3793
3833
|
const newTab = {
|
|
3794
3834
|
id: tabId ?? createTabId(),
|
|
3795
3835
|
label: trimmedCustom ?? label ?? directoryName,
|
|
@@ -3797,6 +3837,8 @@ var TabbedTerminalPanelInner = ({
|
|
|
3797
3837
|
contentType: "terminal",
|
|
3798
3838
|
directory: targetDir,
|
|
3799
3839
|
command,
|
|
3840
|
+
...agent ? { agent } : {},
|
|
3841
|
+
...startupOverlay ? { startupOverlay } : {},
|
|
3800
3842
|
closable: true
|
|
3801
3843
|
};
|
|
3802
3844
|
setOwnedTabs((prevTabs) => {
|
|
@@ -3822,7 +3864,9 @@ var TabbedTerminalPanelInner = ({
|
|
|
3822
3864
|
requestOpenTab.command,
|
|
3823
3865
|
requestOpenTab.directory,
|
|
3824
3866
|
requestOpenTab.tabId,
|
|
3825
|
-
requestOpenTab.customLabel
|
|
3867
|
+
requestOpenTab.customLabel,
|
|
3868
|
+
requestOpenTab.agent,
|
|
3869
|
+
requestOpenTab.startupNotice
|
|
3826
3870
|
);
|
|
3827
3871
|
onOpenTabHandled?.();
|
|
3828
3872
|
}, [requestOpenTab, addNewTab, onOpenTabHandled]);
|
|
@@ -3991,6 +4035,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
3991
4035
|
events,
|
|
3992
4036
|
terminalContext,
|
|
3993
4037
|
onSessionCreated: handleSessionCreated,
|
|
4038
|
+
startupIcon: "agent" in tab && typeof tab.agent === "string" ? renderAgentIcon?.(tab.agent, 48) : void 0,
|
|
3994
4039
|
renderer,
|
|
3995
4040
|
isForeign: tab.id.startsWith("tab-foreign-")
|
|
3996
4041
|
},
|
|
@@ -4003,6 +4048,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
4003
4048
|
events,
|
|
4004
4049
|
terminalContext,
|
|
4005
4050
|
handleSessionCreated,
|
|
4051
|
+
renderAgentIcon,
|
|
4006
4052
|
renderer
|
|
4007
4053
|
]);
|
|
4008
4054
|
return /* @__PURE__ */ jsxs10(
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TerminalSession.d.ts","sourceRoot":"","sources":["../../../src/components/TerminalSession.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAU7E,OAAO,KAAK,EAEV,oBAAoB,EAErB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAIlE,OAAO,KAAK,EAEV,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACtB,MAAM,yBAAyB,CAAC;AAMjC,MAAM,WAAW,oBAAoB;IAGnC,OAAO,EAAE,oBAAoB,CAAC;IAI9B,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IAIrB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAE/C,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,cAAc,CAAC,EAAE,MAAM,CAAC;IAMxB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAI3B,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,SAAS,CAAC,EAAE,OAAO,CAAC;IAKpB,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAG3B,sBAAsB,CAAC,EAAE,CAAC,QAAQ,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACpE,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACnE,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAIpD,YAAY,CAAC,EAAE,oBAAoB,CAAC;IAEpC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,KAAK,EAAE,MAAM,IAAI,CAAC;IAElB,YAAY,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;CACnC;AAkBD,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"TerminalSession.d.ts","sourceRoot":"","sources":["../../../src/components/TerminalSession.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAU7E,OAAO,KAAK,EAEV,oBAAoB,EAErB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAIlE,OAAO,KAAK,EAEV,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACtB,MAAM,yBAAyB,CAAC;AAMjC,MAAM,WAAW,oBAAoB;IAGnC,OAAO,EAAE,oBAAoB,CAAC;IAI9B,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IAIrB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAE/C,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAE1C,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,cAAc,CAAC,EAAE,MAAM,CAAC;IAMxB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAI3B,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,SAAS,CAAC,EAAE,OAAO,CAAC;IAKpB,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAG3B,sBAAsB,CAAC,EAAE,CAAC,QAAQ,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACpE,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACnE,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAIpD,YAAY,CAAC,EAAE,oBAAoB,CAAC;IAEpC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,KAAK,EAAE,MAAM,IAAI,CAAC;IAElB,YAAY,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;CACnC;AAkBD,eAAO,MAAM,eAAe,wHAogB3B,CAAC"}
|
|
@@ -1,8 +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, ProgramStatusKind, ProgramStatusRecord, ProgramStatusState } from '../types/terminal.types';
|
|
4
3
|
import type { TerminalRepoInfo } from '../components/TerminalStatusBar';
|
|
5
4
|
import type { RendererChoice } from '../renderer/resolveRenderer';
|
|
5
|
+
import type { BaseTab } from '../types/tab';
|
|
6
|
+
import type { DroppedTerminalFile, ProgramStatusKind, ProgramStatusRecord, ProgramStatusState } from '../types/terminal.types';
|
|
6
7
|
export type { DroppedTerminalFile, TerminalRepoInfo, ProgramStatusRecord, ProgramStatusState, ProgramStatusKind, };
|
|
7
8
|
export type TerminalEventType = 'terminal:data' | 'terminal:exit' | 'terminal:created' | 'terminal:title-change' | 'terminal:cwd-change' | 'terminal:link-click' | 'terminal:shortcut';
|
|
8
9
|
export interface TerminalLinkClickEvent {
|
|
@@ -97,16 +98,29 @@ export declare function getRepositoryPath(context: PanelContextValue): string |
|
|
|
97
98
|
export declare function getWorkspacePath(context: PanelContextValue): string | null;
|
|
98
99
|
export declare function getTerminalDirectory(context: PanelContextValue, terminalScope?: TerminalScope): string | null;
|
|
99
100
|
export declare function getTerminalSlice(context: PanelContextValue<TerminalPanelContext>): DataSlice<TerminalSessionInfo[]> | undefined;
|
|
100
|
-
import type { BaseTab } from '../types/tab';
|
|
101
101
|
export interface TerminalTab extends BaseTab {
|
|
102
102
|
contentType: 'terminal';
|
|
103
103
|
directory: string;
|
|
104
104
|
command?: string;
|
|
105
|
+
agent?: string;
|
|
106
|
+
startupOverlay?: TerminalStartupOverlay;
|
|
107
|
+
}
|
|
108
|
+
export interface TerminalStartupNotice {
|
|
109
|
+
message: string;
|
|
110
|
+
subtitle?: string;
|
|
111
|
+
timeoutMs?: number;
|
|
112
|
+
}
|
|
113
|
+
export interface TerminalStartupOverlay {
|
|
114
|
+
message: string;
|
|
115
|
+
subtitle?: string;
|
|
116
|
+
expiresAt: number;
|
|
105
117
|
}
|
|
106
118
|
export interface TerminalTabOpenRequest {
|
|
107
119
|
directory?: string;
|
|
108
120
|
label?: string;
|
|
109
121
|
customLabel?: string;
|
|
122
|
+
agent?: string;
|
|
123
|
+
startupNotice?: TerminalStartupNotice;
|
|
110
124
|
command?: string;
|
|
111
125
|
tabId?: string;
|
|
112
126
|
}
|
|
@@ -134,6 +148,7 @@ export interface TabbedTerminalPanelProps<TTab extends BaseTab = TerminalTab> ex
|
|
|
134
148
|
tabLabelPrefix?: string;
|
|
135
149
|
renderTabContent?: (tab: TTab, isActive: boolean, sessionId?: string | null, width?: number) => React.ReactNode;
|
|
136
150
|
renderTabIcon?: (tab: TTab) => React.ReactNode;
|
|
151
|
+
renderAgentIcon?: (agent: string, size: number) => React.ReactNode;
|
|
137
152
|
requestCloseTabId?: string | null;
|
|
138
153
|
bottomBarContent?: React.ReactNode;
|
|
139
154
|
renderTabLabel?: (tab: TTab) => React.ReactNode;
|
|
@@ -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":"AAGA,OAAO,KAMN,MAAM,OAAO,CAAC;AASf,OAAO,KAAK,EACV,wBAAwB,EACxB,WAAW,
|
|
1
|
+
{"version":3,"file":"TabbedTerminalPanel.d.ts","sourceRoot":"","sources":["../../../src/panels/TabbedTerminalPanel.tsx"],"names":[],"mappings":"AAGA,OAAO,KAMN,MAAM,OAAO,CAAC;AASf,OAAO,KAAK,EACV,wBAAwB,EACxB,WAAW,EAKZ,MAAM,gBAAgB,CAAC;AAsCxB,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,MAAM,IAAI,CAAC;CAC5B;AA2xCD,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"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import type { ISearchOptions } from '@xterm/addon-search';
|
|
2
2
|
import type { Terminal } from '@xterm/xterm';
|
|
3
|
+
import type { ReactNode } from 'react';
|
|
3
4
|
export interface TerminalOverlayState {
|
|
4
5
|
message: string;
|
|
6
|
+
icon?: ReactNode;
|
|
5
7
|
subtitle?: string;
|
|
6
8
|
actions?: Array<{
|
|
7
9
|
label: string;
|
|
@@ -1 +1 @@
|
|
|
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;
|
|
1
|
+
{"version":3,"file":"terminal.types.d.ts","sourceRoot":"","sources":["../../../src/types/terminal.types.ts"],"names":[],"mappings":"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"}
|