@industry-theme/xterm-terminal-panel 0.1.10 → 0.2.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/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +173 -103
- package/dist/src/components/ThemedTerminal.d.ts.map +1 -1
- package/dist/src/panel-types/index.d.ts +4 -0
- 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 +7 -1
- package/dist/src/types/terminal.types.d.ts.map +1 -1
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { ThemedTerminal } from './src/components/ThemedTerminal';
|
|
2
2
|
export { ThemedTerminalWithProvider } from './src/components/ThemedTerminalWithProvider';
|
|
3
|
-
export type { ThemedTerminalProps, ThemedTerminalRef, TerminalHeaderBadge, TerminalOverlayState, TerminalScrollPosition, } from './src/types/terminal.types';
|
|
3
|
+
export type { ThemedTerminalProps, ThemedTerminalRef, TerminalHeaderBadge, TerminalOverlayState, TerminalScrollPosition, LinkClickModifiers, } from './src/types/terminal.types';
|
|
4
4
|
export { useThemedTerminal } from './src/hooks/useThemedTerminal';
|
|
5
5
|
export type { UseThemedTerminalReturn } from './src/hooks/useThemedTerminal';
|
|
6
6
|
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;AAGzF,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,
|
|
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;AAGzF,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,YAAY,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAG7E,OAAO,EACL,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;AAOnC,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,YAAY,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAG9E,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAG7E,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,yBAAyB,EACzB,mBAAmB,EACnB,wBAAwB,EACxB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAG7B,YAAY,EACV,eAAe,EACf,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,EACnB,4BAA4B,EAC5B,oBAAoB,EACpB,iBAAiB,EACjB,sBAAsB,EACtB,aAAa,EACb,kBAAkB,EAClB,WAAW,EACX,wBAAwB,EACxB,eAAe,EACf,eAAe,EACf,aAAa,GACd,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAO3B,YAAY,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAG3D,YAAY,EAAE,QAAQ,EAAE,MAAM,IAAI,UAAU,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACrF,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
// src/components/ThemedTerminal.tsx
|
|
2
|
+
import {
|
|
3
|
+
DATA_TYPES,
|
|
4
|
+
sanitizePath,
|
|
5
|
+
useDropZone
|
|
6
|
+
} from "@principal-ade/panel-framework-core";
|
|
2
7
|
import { FitAddon } from "@xterm/addon-fit";
|
|
3
8
|
import { SearchAddon } from "@xterm/addon-search";
|
|
4
9
|
import { WebLinksAddon } from "@xterm/addon-web-links";
|
|
@@ -13,6 +18,7 @@ import {
|
|
|
13
18
|
} from "lucide-react";
|
|
14
19
|
import {
|
|
15
20
|
forwardRef,
|
|
21
|
+
useCallback,
|
|
16
22
|
useEffect,
|
|
17
23
|
useImperativeHandle,
|
|
18
24
|
useRef,
|
|
@@ -98,6 +104,33 @@ var ThemedTerminal = forwardRef(({
|
|
|
98
104
|
const scrollDebounceRef = useRef(null);
|
|
99
105
|
const isVisibleRef = useRef(isVisible);
|
|
100
106
|
const isScrollLockedRef = useRef(true);
|
|
107
|
+
const handleDroppedContent = useCallback((content) => {
|
|
108
|
+
if (terminal) {
|
|
109
|
+
terminal.paste(content);
|
|
110
|
+
terminal.focus();
|
|
111
|
+
}
|
|
112
|
+
}, [terminal]);
|
|
113
|
+
const { isDragOver, ...dropZoneProps } = useDropZone({
|
|
114
|
+
handlers: [
|
|
115
|
+
{
|
|
116
|
+
dataType: [DATA_TYPES.FILE_PATH, DATA_TYPES.DIRECTORY_PATH],
|
|
117
|
+
onDrop: (data) => {
|
|
118
|
+
const safePath = sanitizePath(data.primaryData);
|
|
119
|
+
handleDroppedContent(safePath);
|
|
120
|
+
}
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
dataType: DATA_TYPES.TEXT_SELECTION,
|
|
124
|
+
onDrop: (data) => {
|
|
125
|
+
handleDroppedContent(data.primaryData);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
],
|
|
129
|
+
onPlainTextDrop: (text) => {
|
|
130
|
+
handleDroppedContent(text);
|
|
131
|
+
},
|
|
132
|
+
showVisualFeedback: true
|
|
133
|
+
});
|
|
101
134
|
useEffect(() => {
|
|
102
135
|
isVisibleRef.current = isVisible;
|
|
103
136
|
}, [isVisible]);
|
|
@@ -267,7 +300,12 @@ var ThemedTerminal = forwardRef(({
|
|
|
267
300
|
const webLinksAddon = new WebLinksAddon((event, uri) => {
|
|
268
301
|
event.preventDefault();
|
|
269
302
|
if (onLinkClick) {
|
|
270
|
-
onLinkClick(uri
|
|
303
|
+
onLinkClick(uri, {
|
|
304
|
+
shiftKey: event.shiftKey,
|
|
305
|
+
metaKey: event.metaKey,
|
|
306
|
+
ctrlKey: event.ctrlKey,
|
|
307
|
+
altKey: event.altKey
|
|
308
|
+
});
|
|
271
309
|
}
|
|
272
310
|
});
|
|
273
311
|
term.loadAddon(webLinksAddon);
|
|
@@ -574,8 +612,9 @@ var ThemedTerminal = forwardRef(({
|
|
|
574
612
|
})
|
|
575
613
|
]
|
|
576
614
|
}),
|
|
577
|
-
/* @__PURE__ */
|
|
615
|
+
/* @__PURE__ */ jsxs("div", {
|
|
578
616
|
ref: terminalRef,
|
|
617
|
+
...dropZoneProps,
|
|
579
618
|
className: `terminal-container-fix ${scrollbarStyle === "hidden" ? "hide-scrollbar" : scrollbarStyle === "thin" ? "thin-scrollbar" : scrollbarStyle === "auto-hide" ? "auto-hide-scrollbar" : ""}`,
|
|
580
619
|
style: {
|
|
581
620
|
flex: 1,
|
|
@@ -585,91 +624,118 @@ var ThemedTerminal = forwardRef(({
|
|
|
585
624
|
height: "100%",
|
|
586
625
|
minHeight: 0
|
|
587
626
|
},
|
|
588
|
-
children:
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
zIndex: 10
|
|
604
|
-
},
|
|
605
|
-
children: [
|
|
606
|
-
/* @__PURE__ */ jsx(Monitor, {
|
|
607
|
-
size: 48,
|
|
608
|
-
color: theme.colors.textSecondary
|
|
609
|
-
}),
|
|
610
|
-
/* @__PURE__ */ jsx("div", {
|
|
611
|
-
style: {
|
|
612
|
-
fontSize: "16px",
|
|
613
|
-
fontWeight: "500",
|
|
614
|
-
color: theme.colors.text,
|
|
615
|
-
textAlign: "center"
|
|
616
|
-
},
|
|
617
|
-
children: overlayState.message
|
|
618
|
-
}),
|
|
619
|
-
overlayState.subtitle && /* @__PURE__ */ jsx("div", {
|
|
620
|
-
style: {
|
|
621
|
-
fontSize: "14px",
|
|
622
|
-
color: theme.colors.textSecondary,
|
|
623
|
-
textAlign: "center",
|
|
624
|
-
maxWidth: "400px"
|
|
625
|
-
},
|
|
626
|
-
children: overlayState.subtitle
|
|
627
|
-
}),
|
|
628
|
-
overlayState.actions && overlayState.actions.length > 0 && /* @__PURE__ */ jsx("div", {
|
|
627
|
+
children: [
|
|
628
|
+
isDragOver && /* @__PURE__ */ jsx("div", {
|
|
629
|
+
style: {
|
|
630
|
+
position: "absolute",
|
|
631
|
+
inset: 0,
|
|
632
|
+
background: "rgba(59, 130, 246, 0.1)",
|
|
633
|
+
border: "2px dashed #3b82f6",
|
|
634
|
+
borderRadius: "4px",
|
|
635
|
+
display: "flex",
|
|
636
|
+
alignItems: "center",
|
|
637
|
+
justifyContent: "center",
|
|
638
|
+
pointerEvents: "none",
|
|
639
|
+
zIndex: 1000
|
|
640
|
+
},
|
|
641
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
629
642
|
style: {
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
643
|
+
padding: "8px 16px",
|
|
644
|
+
background: "#3b82f6",
|
|
645
|
+
color: "white",
|
|
646
|
+
borderRadius: "4px",
|
|
647
|
+
fontSize: "13px",
|
|
648
|
+
fontWeight: 500
|
|
633
649
|
},
|
|
634
|
-
children:
|
|
635
|
-
|
|
636
|
-
|
|
650
|
+
children: "Drop to insert"
|
|
651
|
+
})
|
|
652
|
+
}),
|
|
653
|
+
overlayState && /* @__PURE__ */ jsxs("div", {
|
|
654
|
+
style: {
|
|
655
|
+
position: "absolute",
|
|
656
|
+
top: 0,
|
|
657
|
+
left: 0,
|
|
658
|
+
right: 0,
|
|
659
|
+
bottom: 0,
|
|
660
|
+
display: "flex",
|
|
661
|
+
flexDirection: "column",
|
|
662
|
+
alignItems: "center",
|
|
663
|
+
justifyContent: "center",
|
|
664
|
+
backgroundColor: theme.colors.background,
|
|
665
|
+
opacity: overlayState.opacity ?? 1,
|
|
666
|
+
gap: "16px",
|
|
667
|
+
padding: "32px",
|
|
668
|
+
zIndex: 10
|
|
669
|
+
},
|
|
670
|
+
children: [
|
|
671
|
+
/* @__PURE__ */ jsx(Monitor, {
|
|
672
|
+
size: 48,
|
|
673
|
+
color: theme.colors.textSecondary
|
|
674
|
+
}),
|
|
675
|
+
/* @__PURE__ */ jsx("div", {
|
|
637
676
|
style: {
|
|
638
|
-
|
|
639
|
-
backgroundColor: action.primary ? theme.colors.primary : "transparent",
|
|
640
|
-
color: action.primary ? "#ffffff" : theme.colors.text,
|
|
641
|
-
border: action.primary ? "none" : `1px solid ${theme.colors.border}`,
|
|
642
|
-
borderRadius: "6px",
|
|
643
|
-
cursor: "pointer",
|
|
644
|
-
fontSize: "14px",
|
|
677
|
+
fontSize: "16px",
|
|
645
678
|
fontWeight: "500",
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
gap: "8px",
|
|
649
|
-
transition: "all 0.2s"
|
|
679
|
+
color: theme.colors.text,
|
|
680
|
+
textAlign: "center"
|
|
650
681
|
},
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
682
|
+
children: overlayState.message
|
|
683
|
+
}),
|
|
684
|
+
overlayState.subtitle && /* @__PURE__ */ jsx("div", {
|
|
685
|
+
style: {
|
|
686
|
+
fontSize: "14px",
|
|
687
|
+
color: theme.colors.textSecondary,
|
|
688
|
+
textAlign: "center",
|
|
689
|
+
maxWidth: "400px"
|
|
657
690
|
},
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
691
|
+
children: overlayState.subtitle
|
|
692
|
+
}),
|
|
693
|
+
overlayState.actions && overlayState.actions.length > 0 && /* @__PURE__ */ jsx("div", {
|
|
694
|
+
style: {
|
|
695
|
+
display: "flex",
|
|
696
|
+
gap: "12px",
|
|
697
|
+
marginTop: "8px"
|
|
664
698
|
},
|
|
665
|
-
children:
|
|
666
|
-
|
|
667
|
-
action.
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
699
|
+
children: overlayState.actions.map((action) => /* @__PURE__ */ jsxs("button", {
|
|
700
|
+
type: "button",
|
|
701
|
+
onClick: action.onClick,
|
|
702
|
+
style: {
|
|
703
|
+
padding: "8px 16px",
|
|
704
|
+
backgroundColor: action.primary ? theme.colors.primary : "transparent",
|
|
705
|
+
color: action.primary ? "#ffffff" : theme.colors.text,
|
|
706
|
+
border: action.primary ? "none" : `1px solid ${theme.colors.border}`,
|
|
707
|
+
borderRadius: "6px",
|
|
708
|
+
cursor: "pointer",
|
|
709
|
+
fontSize: "14px",
|
|
710
|
+
fontWeight: "500",
|
|
711
|
+
display: "flex",
|
|
712
|
+
alignItems: "center",
|
|
713
|
+
gap: "8px",
|
|
714
|
+
transition: "all 0.2s"
|
|
715
|
+
},
|
|
716
|
+
onMouseEnter: (e) => {
|
|
717
|
+
if (action.primary) {
|
|
718
|
+
e.currentTarget.style.opacity = "0.8";
|
|
719
|
+
} else {
|
|
720
|
+
e.currentTarget.style.backgroundColor = theme.colors.backgroundSecondary;
|
|
721
|
+
}
|
|
722
|
+
},
|
|
723
|
+
onMouseLeave: (e) => {
|
|
724
|
+
if (action.primary) {
|
|
725
|
+
e.currentTarget.style.opacity = "1";
|
|
726
|
+
} else {
|
|
727
|
+
e.currentTarget.style.backgroundColor = "transparent";
|
|
728
|
+
}
|
|
729
|
+
},
|
|
730
|
+
children: [
|
|
731
|
+
action.icon,
|
|
732
|
+
action.label
|
|
733
|
+
]
|
|
734
|
+
}, action.label))
|
|
735
|
+
})
|
|
736
|
+
]
|
|
737
|
+
})
|
|
738
|
+
]
|
|
673
739
|
})
|
|
674
740
|
]
|
|
675
741
|
});
|
|
@@ -1080,7 +1146,7 @@ import { useTheme as useTheme4 } from "@principal-ade/industry-theme";
|
|
|
1080
1146
|
import { Terminal as TerminalIcon2, X as X2, Plus, Lock as Lock2, Unlock as Unlock2, Box, Boxes } from "lucide-react";
|
|
1081
1147
|
import React, {
|
|
1082
1148
|
useState as useState3,
|
|
1083
|
-
useCallback,
|
|
1149
|
+
useCallback as useCallback2,
|
|
1084
1150
|
useEffect as useEffect3,
|
|
1085
1151
|
useRef as useRef3
|
|
1086
1152
|
} from "react";
|
|
@@ -1099,7 +1165,7 @@ function TerminalTabContentInner(props, ref) {
|
|
|
1099
1165
|
const [shouldRenderTerminal, setShouldRenderTerminal] = useState3(true);
|
|
1100
1166
|
const [ownerWindowId, setOwnerWindowId] = useState3(null);
|
|
1101
1167
|
const needsRefreshOnResizeRef = useRef3(false);
|
|
1102
|
-
const claimAndConnect =
|
|
1168
|
+
const claimAndConnect = useCallback2(async (targetSessionId, force = false) => {
|
|
1103
1169
|
try {
|
|
1104
1170
|
if (actions.claimTerminalOwnership) {
|
|
1105
1171
|
await actions.claimTerminalOwnership(targetSessionId, force);
|
|
@@ -1178,17 +1244,17 @@ function TerminalTabContentInner(props, ref) {
|
|
|
1178
1244
|
unsubscribe();
|
|
1179
1245
|
};
|
|
1180
1246
|
}, [localSessionId, isInitialized, actions, shouldRenderTerminal]);
|
|
1181
|
-
const handleData =
|
|
1247
|
+
const handleData = useCallback2((data) => {
|
|
1182
1248
|
if (localSessionId && actions.writeToTerminal) {
|
|
1183
1249
|
actions.writeToTerminal(localSessionId, data);
|
|
1184
1250
|
}
|
|
1185
1251
|
}, [localSessionId, actions]);
|
|
1186
|
-
const handleResize =
|
|
1252
|
+
const handleResize = useCallback2((cols, rows) => {
|
|
1187
1253
|
if (localSessionId && actions.resizeTerminal) {
|
|
1188
1254
|
actions.resizeTerminal(localSessionId, cols, rows);
|
|
1189
1255
|
}
|
|
1190
1256
|
}, [localSessionId, actions]);
|
|
1191
|
-
const handleReady =
|
|
1257
|
+
const handleReady = useCallback2((cols, rows) => {
|
|
1192
1258
|
if (localSessionId && actions.resizeTerminal) {
|
|
1193
1259
|
const shouldForce = needsRefreshOnResizeRef.current;
|
|
1194
1260
|
if (shouldForce) {
|
|
@@ -1197,7 +1263,7 @@ function TerminalTabContentInner(props, ref) {
|
|
|
1197
1263
|
actions.resizeTerminal(localSessionId, cols, rows, shouldForce);
|
|
1198
1264
|
}
|
|
1199
1265
|
}, [localSessionId, actions]);
|
|
1200
|
-
const handleLinkClick =
|
|
1266
|
+
const handleLinkClick = useCallback2((url, modifiers) => {
|
|
1201
1267
|
if (localSessionId) {
|
|
1202
1268
|
events.emit({
|
|
1203
1269
|
type: "terminal:link-click",
|
|
@@ -1205,7 +1271,11 @@ function TerminalTabContentInner(props, ref) {
|
|
|
1205
1271
|
timestamp: Date.now(),
|
|
1206
1272
|
payload: {
|
|
1207
1273
|
url,
|
|
1208
|
-
sessionId: localSessionId
|
|
1274
|
+
sessionId: localSessionId,
|
|
1275
|
+
shiftKey: modifiers.shiftKey,
|
|
1276
|
+
metaKey: modifiers.metaKey,
|
|
1277
|
+
ctrlKey: modifiers.ctrlKey,
|
|
1278
|
+
altKey: modifiers.altKey
|
|
1209
1279
|
}
|
|
1210
1280
|
});
|
|
1211
1281
|
}
|
|
@@ -1224,20 +1294,20 @@ function TerminalTabContentInner(props, ref) {
|
|
|
1224
1294
|
unsubscribe();
|
|
1225
1295
|
};
|
|
1226
1296
|
}, [localSessionId, actions]);
|
|
1227
|
-
const handleTakeControl =
|
|
1297
|
+
const handleTakeControl = useCallback2(async () => {
|
|
1228
1298
|
if (!localSessionId) {
|
|
1229
1299
|
return;
|
|
1230
1300
|
}
|
|
1231
1301
|
await claimAndConnect(localSessionId, true);
|
|
1232
1302
|
}, [localSessionId, claimAndConnect]);
|
|
1233
|
-
const handleScrollPositionChange =
|
|
1303
|
+
const handleScrollPositionChange = useCallback2((position) => {
|
|
1234
1304
|
setScrollPosition(position);
|
|
1235
1305
|
onScrollPositionChange?.(tab.id, position);
|
|
1236
1306
|
}, [tab.id, onScrollPositionChange]);
|
|
1237
|
-
const handleScrollToBottom =
|
|
1307
|
+
const handleScrollToBottom = useCallback2(() => {
|
|
1238
1308
|
terminalRef.current?.scrollToBottom();
|
|
1239
1309
|
}, []);
|
|
1240
|
-
const handleToggleScrollLock =
|
|
1310
|
+
const handleToggleScrollLock = useCallback2(() => {
|
|
1241
1311
|
if (scrollPosition.isScrollLocked) {
|
|
1242
1312
|
const terminal = terminalRef.current?.getTerminal();
|
|
1243
1313
|
if (terminal) {
|
|
@@ -1342,7 +1412,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
1342
1412
|
const [sessionIds, setSessionIds] = useState3(new Map);
|
|
1343
1413
|
const [hoveredTabId, setHoveredTabId] = useState3(null);
|
|
1344
1414
|
const [scrollPositions, setScrollPositions] = useState3(new Map);
|
|
1345
|
-
const getOwnedTabLabel =
|
|
1415
|
+
const getOwnedTabLabel = useCallback2((index, directory2) => {
|
|
1346
1416
|
if (tabLabelPrefix) {
|
|
1347
1417
|
return `${tabLabelPrefix} ${index + 1}`;
|
|
1348
1418
|
}
|
|
@@ -1358,7 +1428,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
1358
1428
|
}, [ownedTabs, foreignTabs, getOwnedTabLabel]);
|
|
1359
1429
|
const tabRefsMap = useRef3(new Map);
|
|
1360
1430
|
const refCallbacksMap = useRef3(new Map);
|
|
1361
|
-
const getRefCallback =
|
|
1431
|
+
const getRefCallback = useCallback2((tabId) => {
|
|
1362
1432
|
let callback = refCallbacksMap.current.get(tabId);
|
|
1363
1433
|
if (!callback) {
|
|
1364
1434
|
callback = (ref) => {
|
|
@@ -1375,7 +1445,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
1375
1445
|
const hasInitializedRef = useRef3(false);
|
|
1376
1446
|
const isCreatingTabRef = useRef3(false);
|
|
1377
1447
|
const headerRef = useRef3(null);
|
|
1378
|
-
const handleTabScrollPositionChange =
|
|
1448
|
+
const handleTabScrollPositionChange = useCallback2((tabId, position) => {
|
|
1379
1449
|
setScrollPositions((prev) => new Map(prev).set(tabId, position));
|
|
1380
1450
|
}, []);
|
|
1381
1451
|
const defaultScrollPosition = {
|
|
@@ -1383,12 +1453,12 @@ var TabbedTerminalPanelInner = ({
|
|
|
1383
1453
|
isAtBottom: true,
|
|
1384
1454
|
isScrollLocked: false
|
|
1385
1455
|
};
|
|
1386
|
-
const handleToggleScrollLock =
|
|
1456
|
+
const handleToggleScrollLock = useCallback2(() => {
|
|
1387
1457
|
if (activeTabId) {
|
|
1388
1458
|
tabRefsMap.current.get(activeTabId)?.toggleScrollLock();
|
|
1389
1459
|
}
|
|
1390
1460
|
}, [activeTabId]);
|
|
1391
|
-
const restoreOwnedSessions =
|
|
1461
|
+
const restoreOwnedSessions = useCallback2(async () => {
|
|
1392
1462
|
try {
|
|
1393
1463
|
let sessions = [];
|
|
1394
1464
|
if (actions.listTerminalSessions) {
|
|
@@ -1422,7 +1492,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
1422
1492
|
console.error("[TabbedTerminalPanel] Failed to restore owned sessions:", err);
|
|
1423
1493
|
}
|
|
1424
1494
|
}, [terminalContext, initialTabs, onTabsChange, actions, directory]);
|
|
1425
|
-
const fetchForeignSessions =
|
|
1495
|
+
const fetchForeignSessions = useCallback2(async () => {
|
|
1426
1496
|
try {
|
|
1427
1497
|
if (!actions.listTerminalSessions) {
|
|
1428
1498
|
return;
|
|
@@ -1453,7 +1523,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
1453
1523
|
console.error("[TabbedTerminalPanel] Failed to fetch foreign sessions:", err);
|
|
1454
1524
|
}
|
|
1455
1525
|
}, [terminalContext, actions]);
|
|
1456
|
-
const clearForeignTabs =
|
|
1526
|
+
const clearForeignTabs = useCallback2(() => {
|
|
1457
1527
|
setForeignTabs((prevForeign) => {
|
|
1458
1528
|
const foreignTabIds = new Set(prevForeign.map((t) => t.id));
|
|
1459
1529
|
setSessionIds((prev) => {
|
|
@@ -1477,7 +1547,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
1477
1547
|
clearForeignTabs();
|
|
1478
1548
|
}
|
|
1479
1549
|
}, [showAllTerminals, fetchForeignSessions, clearForeignTabs]);
|
|
1480
|
-
const switchTab =
|
|
1550
|
+
const switchTab = useCallback2((tabId) => {
|
|
1481
1551
|
setOwnedTabs((prevTabs) => prevTabs.map((t) => ({
|
|
1482
1552
|
...t,
|
|
1483
1553
|
isActive: t.id === tabId
|
|
@@ -1488,7 +1558,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
1488
1558
|
})));
|
|
1489
1559
|
setActiveTabId(tabId);
|
|
1490
1560
|
}, []);
|
|
1491
|
-
const addNewTab =
|
|
1561
|
+
const addNewTab = useCallback2((label, command, targetDirectory) => {
|
|
1492
1562
|
const targetDir = targetDirectory || directory;
|
|
1493
1563
|
const directoryName = targetDir.split("/").pop() || targetDir;
|
|
1494
1564
|
const newTab = {
|
|
@@ -1507,10 +1577,10 @@ var TabbedTerminalPanelInner = ({
|
|
|
1507
1577
|
setForeignTabs((prevTabs) => prevTabs.map((t) => ({ ...t, isActive: false })));
|
|
1508
1578
|
setActiveTabId(newTab.id);
|
|
1509
1579
|
}, [directory, onTabsChange]);
|
|
1510
|
-
const isForeignTab =
|
|
1580
|
+
const isForeignTab = useCallback2((tabId) => {
|
|
1511
1581
|
return tabId.startsWith("tab-foreign-");
|
|
1512
1582
|
}, []);
|
|
1513
|
-
const closeTab =
|
|
1583
|
+
const closeTab = useCallback2(async (tabId) => {
|
|
1514
1584
|
const sessionId = sessionIds.get(tabId);
|
|
1515
1585
|
const isForeign = isForeignTab(tabId);
|
|
1516
1586
|
if (!isForeign && sessionId && actions.destroyTerminalSession) {
|
|
@@ -1560,7 +1630,7 @@ var TabbedTerminalPanelInner = ({
|
|
|
1560
1630
|
});
|
|
1561
1631
|
}
|
|
1562
1632
|
}, [activeTabId, sessionIds, actions, onTabsChange, isForeignTab, ownedTabs, foreignTabs]);
|
|
1563
|
-
const handleSessionCreated =
|
|
1633
|
+
const handleSessionCreated = useCallback2((tabId, sessionId) => {
|
|
1564
1634
|
setSessionIds((prev) => new Map(prev).set(tabId, sessionId));
|
|
1565
1635
|
}, []);
|
|
1566
1636
|
const tabsRef = useRef3(tabs);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemedTerminal.d.ts","sourceRoot":"","sources":["../../../src/components/ThemedTerminal.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"ThemedTerminal.d.ts","sourceRoot":"","sources":["../../../src/components/ThemedTerminal.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AA+B3D,OAAO,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAEV,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,8BAA8B,CAAC;AAEtC,MAAM,WAAW,4BAA6B,SAAQ,mBAAmB;IACvE,KAAK,EAAE,KAAK,CAAC;CACd;AAsBD,eAAO,MAAM,cAAc,4HAuzB1B,CAAC"}
|
|
@@ -4,6 +4,10 @@ export type TerminalEventType = 'terminal:data' | 'terminal:exit' | 'terminal:cr
|
|
|
4
4
|
export interface TerminalLinkClickEvent {
|
|
5
5
|
url: string;
|
|
6
6
|
sessionId: string;
|
|
7
|
+
shiftKey: boolean;
|
|
8
|
+
metaKey: boolean;
|
|
9
|
+
ctrlKey: boolean;
|
|
10
|
+
altKey: boolean;
|
|
7
11
|
}
|
|
8
12
|
export interface TerminalSessionInfo {
|
|
9
13
|
id: string;
|
|
@@ -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,iBAAiB,EACjB,SAAS,EACV,MAAM,qCAAqC,CAAC;AAK7C,MAAM,MAAM,iBAAiB,GACzB,eAAe,GACf,eAAe,GACf,kBAAkB,GAClB,uBAAuB,GACvB,qBAAqB,GACrB,qBAAqB,CAAC;AAK1B,MAAM,WAAW,sBAAsB;IAErC,GAAG,EAAE,MAAM,CAAC;IAEZ,SAAS,EAAE,MAAM,CAAC;
|
|
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":"AAEA,OAAO,KAKN,MAAM,OAAO,CAAC;AAIf,OAAO,KAAK,EACV,wBAAwB,EAIzB,MAAM,gBAAgB,CAAC;AAwBxB,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,gBAAgB,EAAE,MAAM,IAAI,CAAC;CAC9B;
|
|
1
|
+
{"version":3,"file":"TabbedTerminalPanel.d.ts","sourceRoot":"","sources":["../../../src/panels/TabbedTerminalPanel.tsx"],"names":[],"mappings":"AAEA,OAAO,KAKN,MAAM,OAAO,CAAC;AAIf,OAAO,KAAK,EACV,wBAAwB,EAIzB,MAAM,gBAAgB,CAAC;AAwBxB,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,gBAAgB,EAAE,MAAM,IAAI,CAAC;CAC9B;AA8jCD,eAAO,MAAM,mBAAmB,sDAmB9B,CAAC"}
|
|
@@ -20,11 +20,17 @@ export interface TerminalScrollPosition {
|
|
|
20
20
|
isAtBottom: boolean;
|
|
21
21
|
isScrollLocked: boolean;
|
|
22
22
|
}
|
|
23
|
+
export interface LinkClickModifiers {
|
|
24
|
+
shiftKey: boolean;
|
|
25
|
+
metaKey: boolean;
|
|
26
|
+
ctrlKey: boolean;
|
|
27
|
+
altKey: boolean;
|
|
28
|
+
}
|
|
23
29
|
export interface ThemedTerminalProps {
|
|
24
30
|
onData?: (data: string) => void;
|
|
25
31
|
onResize?: (cols: number, rows: number) => void;
|
|
26
32
|
onReady?: (cols: number, rows: number) => void;
|
|
27
|
-
onLinkClick?: (url: string) => void;
|
|
33
|
+
onLinkClick?: (url: string, modifiers: LinkClickModifiers) => void;
|
|
28
34
|
onScrollPositionChange?: (position: TerminalScrollPosition) => void;
|
|
29
35
|
className?: string;
|
|
30
36
|
hideHeader?: boolean;
|
|
@@ -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;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;IAEpB,cAAc,EAAE,OAAO,CAAC;CACzB;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,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"terminal.types.d.ts","sourceRoot":"","sources":["../../../src/types/terminal.types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@industry-theme/xterm-terminal-panel",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "Industry-themed xterm.js terminal components with panel framework integration",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
"license": "MIT",
|
|
56
56
|
"dependencies": {
|
|
57
57
|
"@principal-ade/industry-theme": "^0.1.3",
|
|
58
|
-
"@principal-ade/panel-framework-core": "^0.
|
|
58
|
+
"@principal-ade/panel-framework-core": "^0.2.0",
|
|
59
59
|
"@principal-ade/utcp-panel-event": "^0.1.0",
|
|
60
60
|
"clsx": "^2.1.1"
|
|
61
61
|
},
|