@industry-theme/xterm-terminal-panel 0.5.1 → 0.5.2
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 +241 -29
- package/dist/src/components/ThemedTerminal.d.ts.map +1 -1
- package/dist/src/panel-types/index.d.ts +3 -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/telemetry.d.ts +10 -0
- package/dist/src/telemetry.d.ts.map +1 -0
- package/dist/src/types/terminal.types.d.ts +9 -0
- package/dist/src/types/terminal.types.d.ts.map +1 -1
- package/package.json +8 -2
package/dist/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ 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 type { ThemedTerminalProps, ThemedTerminalRef, TerminalHeaderBadge, TerminalOverlayState, TerminalScrollPosition, LinkClickModifiers, } from './src/types/terminal.types';
|
|
5
|
+
export type { ThemedTerminalProps, ThemedTerminalRef, TerminalActivityState, TerminalHeaderBadge, TerminalOverlayState, TerminalScrollPosition, LinkClickModifiers, } from './src/types/terminal.types';
|
|
6
6
|
export { useThemedTerminal } from './src/hooks/useThemedTerminal';
|
|
7
7
|
export type { UseThemedTerminalReturn } from './src/hooks/useThemedTerminal';
|
|
8
8
|
export { createTerminalTheme, getTerminalCSSVariables, } from './src/utils/terminalTheme';
|
|
@@ -19,6 +19,8 @@ export { panels, onPackageLoad, onPackageUnload } from './src/panel-exports';
|
|
|
19
19
|
export { terminalPanelTools, terminalPanelToolsMetadata, createTerminalSessionTool, writeToTerminalTool, closeTerminalSessionTool, clearTerminalTool, focusTerminalTool, } from './src/panel-exports';
|
|
20
20
|
export type { PanelDefinition, PanelMetadata, PanelComponentProps, PanelContextValue, PanelActions, PanelEventEmitter, TerminalSessionInfo, CreateTerminalSessionOptions, TerminalPanelActions, TerminalEventType, TerminalLinkClickEvent, TerminalScope, TerminalPanelProps, TerminalTab, TabbedTerminalPanelProps, OwnershipStatus, OwnershipResult, PortReadyData, TerminalWorkingState, TerminalActivityType, TerminalActivityChangedEvent, } from './src/panel-types';
|
|
21
21
|
export { getTerminalSessions, getTerminalSession, isTerminalLoading, getRepositoryPath, getWorkspacePath, getTerminalDirectory, getTerminalSlice, } from './src/panel-types';
|
|
22
|
+
export { getTracer, getActiveSpan, withSpan, withSpanSync, TRACER_NAME, TRACER_VERSION, trace, context, SpanStatusCode, } from './src/telemetry';
|
|
23
|
+
export type { Tracer, Span } from './src/telemetry';
|
|
22
24
|
export type { Theme } from '@principal-ade/industry-theme';
|
|
23
25
|
export type { Terminal, ITheme as XTermTheme, ITerminalOptions } from '@xterm/xterm';
|
|
24
26
|
export type { ISearchOptions } from '@xterm/addon-search';
|
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;AAG3E,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,MAAM,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAG5D,YAAY,EACV,GAAG,EACH,OAAO,EACP,SAAS,EACT,WAAW,EACX,cAAc,EACf,MAAM,iBAAiB,CAAC;AAIzB,YAAY,EACV,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,YAAY,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAC;AAO1F,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,EACb,oBAAoB,EACpB,oBAAoB,EACpB,4BAA4B,GAC7B,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"}
|
|
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;AAG3E,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,EACrB,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,MAAM,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAG5D,YAAY,EACV,GAAG,EACH,OAAO,EACP,SAAS,EACT,WAAW,EACX,cAAc,EACf,MAAM,iBAAiB,CAAC;AAIzB,YAAY,EACV,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,YAAY,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAC;AAO1F,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,EACb,oBAAoB,EACpB,oBAAoB,EACpB,4BAA4B,GAC7B,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAO3B,OAAO,EACL,SAAS,EACT,aAAa,EACb,QAAQ,EACR,YAAY,EACZ,WAAW,EACX,cAAc,EACd,KAAK,EACL,OAAO,EACP,cAAc,GACf,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAOpD,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
|
@@ -26,6 +26,28 @@ import {
|
|
|
26
26
|
} from "react";
|
|
27
27
|
import"@xterm/xterm/css/xterm.css";
|
|
28
28
|
|
|
29
|
+
// src/telemetry.ts
|
|
30
|
+
import {
|
|
31
|
+
trace,
|
|
32
|
+
context,
|
|
33
|
+
SpanStatusCode
|
|
34
|
+
} from "@opentelemetry/api";
|
|
35
|
+
var PACKAGE_VERSION = "0.5.1";
|
|
36
|
+
var TRACER_NAME = "@industry-theme/xterm-terminal-panel";
|
|
37
|
+
var TRACER_VERSION = PACKAGE_VERSION;
|
|
38
|
+
function getTracer() {
|
|
39
|
+
return trace.getTracer(TRACER_NAME, TRACER_VERSION);
|
|
40
|
+
}
|
|
41
|
+
function getActiveSpan() {
|
|
42
|
+
return trace.getActiveSpan();
|
|
43
|
+
}
|
|
44
|
+
async function withSpan(span, fn) {
|
|
45
|
+
return context.with(trace.setSpan(context.active(), span), fn);
|
|
46
|
+
}
|
|
47
|
+
function withSpanSync(span, fn) {
|
|
48
|
+
return context.with(trace.setSpan(context.active(), span), fn);
|
|
49
|
+
}
|
|
50
|
+
|
|
29
51
|
// src/utils/terminalTheme.ts
|
|
30
52
|
function createTerminalTheme(theme) {
|
|
31
53
|
return {
|
|
@@ -183,9 +205,13 @@ var ThemedTerminal = forwardRef(({
|
|
|
183
205
|
onPopOut,
|
|
184
206
|
onShortcut,
|
|
185
207
|
overlayState,
|
|
186
|
-
isWorking = false,
|
|
208
|
+
isWorking: isWorkingProp = false,
|
|
187
209
|
workingMessage = "Agent working...",
|
|
188
210
|
workingSubtitle,
|
|
211
|
+
activityDetection = true,
|
|
212
|
+
activityTimeout = 500,
|
|
213
|
+
onActivityChange,
|
|
214
|
+
autoShowBlinds = false,
|
|
189
215
|
cursorBlink = true,
|
|
190
216
|
cursorStyle = "block",
|
|
191
217
|
scrollback = 1e4,
|
|
@@ -196,7 +222,6 @@ var ThemedTerminal = forwardRef(({
|
|
|
196
222
|
}, ref) => {
|
|
197
223
|
const terminalRef = useRef(null);
|
|
198
224
|
const [terminal, setTerminal] = useState(null);
|
|
199
|
-
const [showWorkingOverlay, setShowWorkingOverlay] = useState(isWorking);
|
|
200
225
|
const [isClosingOverlay, setIsClosingOverlay] = useState(false);
|
|
201
226
|
const fitAddonRef = useRef(null);
|
|
202
227
|
const searchAddonRef = useRef(null);
|
|
@@ -206,13 +231,31 @@ var ThemedTerminal = forwardRef(({
|
|
|
206
231
|
const isVisibleRef = useRef(isVisible);
|
|
207
232
|
const isScrollLockedRef = useRef(defaultScrollLocked);
|
|
208
233
|
const onShortcutRef = useRef(onShortcut);
|
|
234
|
+
const [isActivityDetected, setIsActivityDetected] = useState(false);
|
|
235
|
+
const activityTimeoutRef = useRef(null);
|
|
236
|
+
const activityStartTimeRef = useRef(null);
|
|
237
|
+
const onActivityChangeRef = useRef(onActivityChange);
|
|
209
238
|
useEffect(() => {
|
|
210
239
|
onShortcutRef.current = onShortcut;
|
|
211
240
|
}, [onShortcut]);
|
|
241
|
+
useEffect(() => {
|
|
242
|
+
onActivityChangeRef.current = onActivityChange;
|
|
243
|
+
}, [onActivityChange]);
|
|
244
|
+
const isWorking = isWorkingProp || autoShowBlinds && isActivityDetected;
|
|
245
|
+
const [showWorkingOverlay, setShowWorkingOverlay] = useState(isWorking);
|
|
212
246
|
useEffect(() => {
|
|
213
247
|
if (isWorking) {
|
|
214
248
|
setIsClosingOverlay(false);
|
|
215
249
|
setShowWorkingOverlay(true);
|
|
250
|
+
const tracer = getTracer();
|
|
251
|
+
const span = tracer.startSpan("terminal.blinds", {
|
|
252
|
+
attributes: {
|
|
253
|
+
"blinds.action": "shown"
|
|
254
|
+
}
|
|
255
|
+
});
|
|
256
|
+
span.addEvent("terminal.blinds.shown");
|
|
257
|
+
span.setStatus({ code: SpanStatusCode.OK });
|
|
258
|
+
span.end();
|
|
216
259
|
} else if (showWorkingOverlay) {
|
|
217
260
|
setIsClosingOverlay(true);
|
|
218
261
|
}
|
|
@@ -220,6 +263,72 @@ var ThemedTerminal = forwardRef(({
|
|
|
220
263
|
const handleOverlayCloseComplete = useCallback(() => {
|
|
221
264
|
setShowWorkingOverlay(false);
|
|
222
265
|
setIsClosingOverlay(false);
|
|
266
|
+
const tracer = getTracer();
|
|
267
|
+
const span = tracer.startSpan("terminal.blinds", {
|
|
268
|
+
attributes: {
|
|
269
|
+
"blinds.action": "hidden"
|
|
270
|
+
}
|
|
271
|
+
});
|
|
272
|
+
span.addEvent("terminal.blinds.hidden");
|
|
273
|
+
span.setStatus({ code: SpanStatusCode.OK });
|
|
274
|
+
span.end();
|
|
275
|
+
}, []);
|
|
276
|
+
const trackActivity = useCallback(() => {
|
|
277
|
+
if (!activityDetection)
|
|
278
|
+
return;
|
|
279
|
+
if (activityTimeoutRef.current) {
|
|
280
|
+
clearTimeout(activityTimeoutRef.current);
|
|
281
|
+
}
|
|
282
|
+
if (!activityStartTimeRef.current) {
|
|
283
|
+
activityStartTimeRef.current = Date.now();
|
|
284
|
+
setIsActivityDetected(true);
|
|
285
|
+
const tracer = getTracer();
|
|
286
|
+
const span = tracer.startSpan("terminal.activity", {
|
|
287
|
+
attributes: {
|
|
288
|
+
"activity.type": "started"
|
|
289
|
+
}
|
|
290
|
+
});
|
|
291
|
+
span.addEvent("terminal.activity.started", {
|
|
292
|
+
"activity.startedAt": activityStartTimeRef.current
|
|
293
|
+
});
|
|
294
|
+
span.setStatus({ code: SpanStatusCode.OK });
|
|
295
|
+
span.end();
|
|
296
|
+
const state = {
|
|
297
|
+
isActive: true,
|
|
298
|
+
startedAt: activityStartTimeRef.current
|
|
299
|
+
};
|
|
300
|
+
onActivityChangeRef.current?.(state);
|
|
301
|
+
}
|
|
302
|
+
activityTimeoutRef.current = setTimeout(() => {
|
|
303
|
+
const startedAt = activityStartTimeRef.current;
|
|
304
|
+
const duration = startedAt ? Date.now() - startedAt : undefined;
|
|
305
|
+
activityStartTimeRef.current = null;
|
|
306
|
+
setIsActivityDetected(false);
|
|
307
|
+
const tracer = getTracer();
|
|
308
|
+
const span = tracer.startSpan("terminal.activity", {
|
|
309
|
+
attributes: {
|
|
310
|
+
"activity.type": "stopped",
|
|
311
|
+
"activity.duration.ms": duration
|
|
312
|
+
}
|
|
313
|
+
});
|
|
314
|
+
span.addEvent("terminal.activity.stopped", {
|
|
315
|
+
"activity.duration.ms": duration ?? 0
|
|
316
|
+
});
|
|
317
|
+
span.setStatus({ code: SpanStatusCode.OK });
|
|
318
|
+
span.end();
|
|
319
|
+
const state = {
|
|
320
|
+
isActive: false,
|
|
321
|
+
duration
|
|
322
|
+
};
|
|
323
|
+
onActivityChangeRef.current?.(state);
|
|
324
|
+
}, activityTimeout);
|
|
325
|
+
}, [activityDetection, activityTimeout]);
|
|
326
|
+
useEffect(() => {
|
|
327
|
+
return () => {
|
|
328
|
+
if (activityTimeoutRef.current) {
|
|
329
|
+
clearTimeout(activityTimeoutRef.current);
|
|
330
|
+
}
|
|
331
|
+
};
|
|
223
332
|
}, []);
|
|
224
333
|
const handleDroppedContent = useCallback((content) => {
|
|
225
334
|
if (terminal) {
|
|
@@ -288,6 +397,7 @@ var ThemedTerminal = forwardRef(({
|
|
|
288
397
|
if (terminal) {
|
|
289
398
|
terminal.write(data);
|
|
290
399
|
scheduleScrollToBottom();
|
|
400
|
+
trackActivity();
|
|
291
401
|
} else {
|
|
292
402
|
console.warn("[ThemedTerminal] write called but terminal is null!");
|
|
293
403
|
}
|
|
@@ -295,6 +405,7 @@ var ThemedTerminal = forwardRef(({
|
|
|
295
405
|
writeln: (data) => {
|
|
296
406
|
if (terminal) {
|
|
297
407
|
terminal.writeln(data);
|
|
408
|
+
trackActivity();
|
|
298
409
|
scheduleScrollToBottom();
|
|
299
410
|
}
|
|
300
411
|
},
|
|
@@ -369,7 +480,7 @@ var ThemedTerminal = forwardRef(({
|
|
|
369
480
|
},
|
|
370
481
|
isScrollLocked: () => isScrollLockedRef.current,
|
|
371
482
|
getScrollPosition
|
|
372
|
-
}), [terminal]);
|
|
483
|
+
}), [terminal, trackActivity]);
|
|
373
484
|
const initialConfigRef = useRef({
|
|
374
485
|
cursorBlink,
|
|
375
486
|
cursorStyle,
|
|
@@ -1323,40 +1434,40 @@ import { Lock, Unlock, ArrowDown } from "lucide-react";
|
|
|
1323
1434
|
import { useCallback as useCallback2, useEffect as useEffect3, useRef as useRef2, useState as useState3 } from "react";
|
|
1324
1435
|
|
|
1325
1436
|
// src/panel-types/index.ts
|
|
1326
|
-
function getTerminalSessions(
|
|
1327
|
-
return
|
|
1437
|
+
function getTerminalSessions(context2) {
|
|
1438
|
+
return context2.terminal?.data ?? [];
|
|
1328
1439
|
}
|
|
1329
|
-
function getTerminalSession(
|
|
1330
|
-
const sessions = getTerminalSessions(
|
|
1440
|
+
function getTerminalSession(context2, sessionId) {
|
|
1441
|
+
const sessions = getTerminalSessions(context2);
|
|
1331
1442
|
return sessions.find((s) => s.id === sessionId);
|
|
1332
1443
|
}
|
|
1333
|
-
function isTerminalLoading(
|
|
1334
|
-
return
|
|
1444
|
+
function isTerminalLoading(context2) {
|
|
1445
|
+
return context2.terminal?.loading ?? false;
|
|
1335
1446
|
}
|
|
1336
|
-
function getRepositoryPath(
|
|
1337
|
-
return
|
|
1447
|
+
function getRepositoryPath(context2) {
|
|
1448
|
+
return context2.currentScope.repository?.path ?? null;
|
|
1338
1449
|
}
|
|
1339
|
-
function getWorkspacePath(
|
|
1340
|
-
return
|
|
1450
|
+
function getWorkspacePath(context2) {
|
|
1451
|
+
return context2.currentScope.workspace?.path ?? null;
|
|
1341
1452
|
}
|
|
1342
|
-
function getTerminalDirectory(
|
|
1453
|
+
function getTerminalDirectory(context2, terminalScope = "repository") {
|
|
1343
1454
|
switch (terminalScope) {
|
|
1344
1455
|
case "workspace":
|
|
1345
|
-
return getWorkspacePath(
|
|
1456
|
+
return getWorkspacePath(context2);
|
|
1346
1457
|
case "repository":
|
|
1347
|
-
return getRepositoryPath(
|
|
1458
|
+
return getRepositoryPath(context2) ?? getWorkspacePath(context2);
|
|
1348
1459
|
default:
|
|
1349
|
-
return getRepositoryPath(
|
|
1460
|
+
return getRepositoryPath(context2) ?? getWorkspacePath(context2);
|
|
1350
1461
|
}
|
|
1351
1462
|
}
|
|
1352
|
-
function getTerminalSlice(
|
|
1353
|
-
return
|
|
1463
|
+
function getTerminalSlice(context2) {
|
|
1464
|
+
return context2.terminal;
|
|
1354
1465
|
}
|
|
1355
1466
|
|
|
1356
1467
|
// src/panels/TerminalPanel.tsx
|
|
1357
1468
|
import { jsx as jsx6, jsxs as jsxs5 } from "react/jsx-runtime";
|
|
1358
1469
|
var TerminalPanel = ({
|
|
1359
|
-
context,
|
|
1470
|
+
context: context2,
|
|
1360
1471
|
actions,
|
|
1361
1472
|
events: _events,
|
|
1362
1473
|
terminalScope = "repository"
|
|
@@ -1374,7 +1485,7 @@ var TerminalPanel = ({
|
|
|
1374
1485
|
const terminalRef = useRef2(null);
|
|
1375
1486
|
const dataPortRef = useRef2(null);
|
|
1376
1487
|
const isScrollLockedRef = useRef2(scrollPosition.isScrollLocked);
|
|
1377
|
-
const terminalDirectory = getTerminalDirectory(
|
|
1488
|
+
const terminalDirectory = getTerminalDirectory(context2, terminalScope);
|
|
1378
1489
|
const pendingSessionIdRef = useRef2(null);
|
|
1379
1490
|
useEffect3(() => {
|
|
1380
1491
|
let mounted = true;
|
|
@@ -1511,7 +1622,7 @@ var TerminalPanel = ({
|
|
|
1511
1622
|
setScrollPosition(position);
|
|
1512
1623
|
isScrollLockedRef.current = position.isScrollLocked;
|
|
1513
1624
|
}, []);
|
|
1514
|
-
const sessionInfo = sessionId ? getTerminalSession(
|
|
1625
|
+
const sessionInfo = sessionId ? getTerminalSession(context2, sessionId) : undefined;
|
|
1515
1626
|
if (error) {
|
|
1516
1627
|
return /* @__PURE__ */ jsxs5("div", {
|
|
1517
1628
|
style: {
|
|
@@ -1680,7 +1791,7 @@ import React2, {
|
|
|
1680
1791
|
} from "react";
|
|
1681
1792
|
import { jsx as jsx7, jsxs as jsxs6 } from "react/jsx-runtime";
|
|
1682
1793
|
function TerminalTabContentInner(props, ref) {
|
|
1683
|
-
const { tab, sessionId, isActive, isVisible, actions, events, terminalContext, onSessionCreated, onScrollPositionChange, isForeign = false, defaultScrollLocked } = props;
|
|
1794
|
+
const { tab, sessionId, isActive, isVisible, actions, events, terminalContext, onSessionCreated, onScrollPositionChange, isForeign = false, defaultScrollLocked, activityDetection = true, activityTimeout = 500, autoShowBlinds = false } = props;
|
|
1684
1795
|
console.log("[TerminalTabContent] RENDER", { tabId: tab.id, isActive, sessionId });
|
|
1685
1796
|
const terminalRef = useRef3(null);
|
|
1686
1797
|
const [localSessionId, setLocalSessionId] = useState4(sessionId);
|
|
@@ -1744,12 +1855,39 @@ function TerminalTabContentInner(props, ref) {
|
|
|
1744
1855
|
});
|
|
1745
1856
|
if (!mounted)
|
|
1746
1857
|
return;
|
|
1858
|
+
const tracer = getTracer();
|
|
1859
|
+
const span = tracer.startSpan("terminal.session", {
|
|
1860
|
+
attributes: {
|
|
1861
|
+
"session.id": newSessionId,
|
|
1862
|
+
"session.cwd": tab.directory,
|
|
1863
|
+
"session.context": `${terminalContext}:${tab.id}`
|
|
1864
|
+
}
|
|
1865
|
+
});
|
|
1866
|
+
span.addEvent("terminal.session.created", {
|
|
1867
|
+
"session.id": newSessionId,
|
|
1868
|
+
"session.cwd": tab.directory
|
|
1869
|
+
});
|
|
1870
|
+
span.setStatus({ code: SpanStatusCode.OK });
|
|
1871
|
+
span.end();
|
|
1747
1872
|
setLocalSessionId(newSessionId);
|
|
1748
1873
|
setIsInitialized(true);
|
|
1749
1874
|
onSessionCreated(tab.id, newSessionId);
|
|
1750
1875
|
await claimAndConnect(newSessionId);
|
|
1751
1876
|
} catch (error) {
|
|
1752
1877
|
console.error("[TerminalTabContent] Failed to create session:", error);
|
|
1878
|
+
const tracer = getTracer();
|
|
1879
|
+
const span = tracer.startSpan("terminal.session", {
|
|
1880
|
+
attributes: {
|
|
1881
|
+
"session.action": "create",
|
|
1882
|
+
"error.occurred": true
|
|
1883
|
+
}
|
|
1884
|
+
});
|
|
1885
|
+
span.addEvent("terminal.session.error", {
|
|
1886
|
+
"error.message": error instanceof Error ? error.message : "Unknown error"
|
|
1887
|
+
});
|
|
1888
|
+
span.recordException(error);
|
|
1889
|
+
span.setStatus({ code: SpanStatusCode.ERROR, message: "Session creation failed" });
|
|
1890
|
+
span.end();
|
|
1753
1891
|
}
|
|
1754
1892
|
};
|
|
1755
1893
|
initSession();
|
|
@@ -1848,6 +1986,20 @@ function TerminalTabContentInner(props, ref) {
|
|
|
1848
1986
|
});
|
|
1849
1987
|
}
|
|
1850
1988
|
}, [localSessionId, events]);
|
|
1989
|
+
const handleActivityChange = useCallback3((state) => {
|
|
1990
|
+
if (localSessionId) {
|
|
1991
|
+
events.emit({
|
|
1992
|
+
type: "terminal:activity-changed",
|
|
1993
|
+
source: "TabbedTerminalPanel",
|
|
1994
|
+
timestamp: Date.now(),
|
|
1995
|
+
payload: {
|
|
1996
|
+
sessionId: localSessionId,
|
|
1997
|
+
activityType: state.isActive ? "started" : "stopped",
|
|
1998
|
+
isWorking: state.isActive
|
|
1999
|
+
}
|
|
2000
|
+
});
|
|
2001
|
+
}
|
|
2002
|
+
}, [localSessionId, events]);
|
|
1851
2003
|
const handleScrollToBottom = useCallback3(() => {
|
|
1852
2004
|
terminalRef.current?.scrollToBottom();
|
|
1853
2005
|
}, []);
|
|
@@ -1912,6 +2064,10 @@ function TerminalTabContentInner(props, ref) {
|
|
|
1912
2064
|
cursorBlink: shouldRenderTerminal,
|
|
1913
2065
|
scrollback: 1e4,
|
|
1914
2066
|
enableSearch: true,
|
|
2067
|
+
activityDetection,
|
|
2068
|
+
activityTimeout,
|
|
2069
|
+
autoShowBlinds,
|
|
2070
|
+
onActivityChange: shouldRenderTerminal ? handleActivityChange : undefined,
|
|
1915
2071
|
enableWebLinks: true,
|
|
1916
2072
|
overlayState
|
|
1917
2073
|
}, shouldRenderTerminal ? "active" : "overlay")
|
|
@@ -1932,6 +2088,12 @@ var areTerminalTabContentPropsEqual = (prevProps, nextProps) => {
|
|
|
1932
2088
|
changes.push("terminalContext");
|
|
1933
2089
|
if (prevProps.isForeign !== nextProps.isForeign)
|
|
1934
2090
|
changes.push("isForeign");
|
|
2091
|
+
if (prevProps.activityDetection !== nextProps.activityDetection)
|
|
2092
|
+
changes.push("activityDetection");
|
|
2093
|
+
if (prevProps.activityTimeout !== nextProps.activityTimeout)
|
|
2094
|
+
changes.push("activityTimeout");
|
|
2095
|
+
if (prevProps.autoShowBlinds !== nextProps.autoShowBlinds)
|
|
2096
|
+
changes.push("autoShowBlinds");
|
|
1935
2097
|
if (changes.length > 0) {
|
|
1936
2098
|
console.log("[TerminalTabContent] MEMO - will re-render, props changed:", changes, { tabId: nextProps.tab.id });
|
|
1937
2099
|
}
|
|
@@ -1962,7 +2124,10 @@ var TabbedTerminalPanelInner = ({
|
|
|
1962
2124
|
onActiveTabChange,
|
|
1963
2125
|
requestFocusTabId,
|
|
1964
2126
|
onFocusTabHandled,
|
|
1965
|
-
workingStates
|
|
2127
|
+
workingStates,
|
|
2128
|
+
activityDetection = true,
|
|
2129
|
+
activityTimeout = 500,
|
|
2130
|
+
autoShowBlinds = false
|
|
1966
2131
|
}) => {
|
|
1967
2132
|
console.log("[TabbedTerminalPanel] RENDER", { terminalContext, directory, width });
|
|
1968
2133
|
const { theme } = useTheme6();
|
|
@@ -2169,8 +2334,8 @@ var TabbedTerminalPanelInner = ({
|
|
|
2169
2334
|
useEffect4(() => {
|
|
2170
2335
|
const handleSessionCreated2 = (event) => {
|
|
2171
2336
|
const customEvent = event;
|
|
2172
|
-
const { context } = customEvent.detail || {};
|
|
2173
|
-
if (
|
|
2337
|
+
const { context: context2 } = customEvent.detail || {};
|
|
2338
|
+
if (context2 && context2.startsWith(terminalContext)) {
|
|
2174
2339
|
console.log("[TabbedTerminalPanel] External session created, restoring owned sessions...");
|
|
2175
2340
|
restoreOwnedSessions();
|
|
2176
2341
|
}
|
|
@@ -2217,8 +2382,34 @@ var TabbedTerminalPanelInner = ({
|
|
|
2217
2382
|
if (!isForeign && sessionId && actions.destroyTerminalSession) {
|
|
2218
2383
|
try {
|
|
2219
2384
|
await actions.destroyTerminalSession(sessionId);
|
|
2385
|
+
const tracer = getTracer();
|
|
2386
|
+
const span = tracer.startSpan("terminal.session", {
|
|
2387
|
+
attributes: {
|
|
2388
|
+
"session.id": sessionId,
|
|
2389
|
+
"session.action": "destroyed"
|
|
2390
|
+
}
|
|
2391
|
+
});
|
|
2392
|
+
span.addEvent("terminal.session.destroyed", {
|
|
2393
|
+
"session.id": sessionId
|
|
2394
|
+
});
|
|
2395
|
+
span.setStatus({ code: SpanStatusCode.OK });
|
|
2396
|
+
span.end();
|
|
2220
2397
|
} catch (err) {
|
|
2221
2398
|
console.error("[TabbedTerminalPanel] Failed to destroy session:", err);
|
|
2399
|
+
const tracer = getTracer();
|
|
2400
|
+
const span = tracer.startSpan("terminal.session", {
|
|
2401
|
+
attributes: {
|
|
2402
|
+
"session.id": sessionId,
|
|
2403
|
+
"session.action": "destroy",
|
|
2404
|
+
"error.occurred": true
|
|
2405
|
+
}
|
|
2406
|
+
});
|
|
2407
|
+
span.addEvent("terminal.session.error", {
|
|
2408
|
+
"error.message": err instanceof Error ? err.message : "Unknown error"
|
|
2409
|
+
});
|
|
2410
|
+
span.recordException(err);
|
|
2411
|
+
span.setStatus({ code: SpanStatusCode.ERROR, message: "Session destruction failed" });
|
|
2412
|
+
span.end();
|
|
2222
2413
|
}
|
|
2223
2414
|
}
|
|
2224
2415
|
setSessionIds((prev) => {
|
|
@@ -2420,7 +2611,10 @@ var TabbedTerminalPanelInner = ({
|
|
|
2420
2611
|
onSessionCreated: handleSessionCreated,
|
|
2421
2612
|
onScrollPositionChange: handleTabScrollPositionChange,
|
|
2422
2613
|
isForeign: tab.id.startsWith("tab-foreign-"),
|
|
2423
|
-
defaultScrollLocked
|
|
2614
|
+
defaultScrollLocked,
|
|
2615
|
+
activityDetection,
|
|
2616
|
+
activityTimeout,
|
|
2617
|
+
autoShowBlinds
|
|
2424
2618
|
}, tab.id);
|
|
2425
2619
|
}
|
|
2426
2620
|
return /* @__PURE__ */ jsx7("div", {
|
|
@@ -2446,7 +2640,10 @@ var TabbedTerminalPanelInner = ({
|
|
|
2446
2640
|
onSessionCreated: handleSessionCreated,
|
|
2447
2641
|
onScrollPositionChange: handleTabScrollPositionChange,
|
|
2448
2642
|
isForeign: tab.id.startsWith("tab-foreign-"),
|
|
2449
|
-
defaultScrollLocked
|
|
2643
|
+
defaultScrollLocked,
|
|
2644
|
+
activityDetection,
|
|
2645
|
+
activityTimeout,
|
|
2646
|
+
autoShowBlinds
|
|
2450
2647
|
}, tab.id);
|
|
2451
2648
|
}
|
|
2452
2649
|
return /* @__PURE__ */ jsxs6("div", {
|
|
@@ -2547,6 +2744,12 @@ var TabbedTerminalPanelMemoized = React2.memo(TabbedTerminalPanelInner, (prevPro
|
|
|
2547
2744
|
changes.push("onActiveTabChange");
|
|
2548
2745
|
if (prevProps.workingStates !== nextProps.workingStates)
|
|
2549
2746
|
changes.push("workingStates");
|
|
2747
|
+
if (prevProps.activityDetection !== nextProps.activityDetection)
|
|
2748
|
+
changes.push("activityDetection");
|
|
2749
|
+
if (prevProps.activityTimeout !== nextProps.activityTimeout)
|
|
2750
|
+
changes.push("activityTimeout");
|
|
2751
|
+
if (prevProps.autoShowBlinds !== nextProps.autoShowBlinds)
|
|
2752
|
+
changes.push("autoShowBlinds");
|
|
2550
2753
|
const ignoredChanges = [];
|
|
2551
2754
|
if (prevProps.context !== nextProps.context)
|
|
2552
2755
|
ignoredChanges.push("context");
|
|
@@ -2742,8 +2945,11 @@ var onPackageUnload = async () => {
|
|
|
2742
2945
|
};
|
|
2743
2946
|
export {
|
|
2744
2947
|
writeToTerminalTool,
|
|
2948
|
+
withSpanSync,
|
|
2949
|
+
withSpan,
|
|
2745
2950
|
useThemedTerminal,
|
|
2746
2951
|
useTabKeyboardShortcuts,
|
|
2952
|
+
trace,
|
|
2747
2953
|
terminalPanelToolsMetadata,
|
|
2748
2954
|
terminalPanelTools,
|
|
2749
2955
|
panels,
|
|
@@ -2752,15 +2958,18 @@ export {
|
|
|
2752
2958
|
isTerminalLoading,
|
|
2753
2959
|
isTabOfType,
|
|
2754
2960
|
getWorkspacePath,
|
|
2961
|
+
getTracer,
|
|
2755
2962
|
getTerminalSlice,
|
|
2756
2963
|
getTerminalSessions,
|
|
2757
2964
|
getTerminalSession,
|
|
2758
2965
|
getTerminalDirectory,
|
|
2759
2966
|
getTerminalCSSVariables,
|
|
2760
2967
|
getRepositoryPath,
|
|
2968
|
+
getActiveSpan,
|
|
2761
2969
|
focusTerminalTool,
|
|
2762
2970
|
createTerminalTheme,
|
|
2763
2971
|
createTerminalSessionTool,
|
|
2972
|
+
context,
|
|
2764
2973
|
closeTerminalSessionTool,
|
|
2765
2974
|
clearTerminalTool,
|
|
2766
2975
|
WorkingOverlay,
|
|
@@ -2769,5 +2978,8 @@ export {
|
|
|
2769
2978
|
TerminalPanel,
|
|
2770
2979
|
TabbedTerminalPanel,
|
|
2771
2980
|
TabButton,
|
|
2772
|
-
TabBar
|
|
2981
|
+
TabBar,
|
|
2982
|
+
TRACER_VERSION,
|
|
2983
|
+
TRACER_NAME,
|
|
2984
|
+
SpanStatusCode
|
|
2773
2985
|
};
|
|
@@ -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;AAkC3D,OAAO,4BAA4B,CAAC;AAEpC,OAAO,KAAK,
|
|
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;AAkC3D,OAAO,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAGV,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,yBAAyB,CAAC;AAKjC,OAAO,8BAA8B,CAAC;AAEtC,MAAM,WAAW,4BAA6B,SAAQ,mBAAmB;IACvE,KAAK,EAAE,KAAK,CAAC;CACd;AAsBD,eAAO,MAAM,cAAc,4HAunC1B,CAAC"}
|
|
@@ -122,5 +122,8 @@ export interface TabbedTerminalPanelProps<TTab extends BaseTab = TerminalTab> ex
|
|
|
122
122
|
renderTabLabel?: (tab: TTab) => React.ReactNode;
|
|
123
123
|
width?: number;
|
|
124
124
|
workingStates?: Record<string, TerminalWorkingState>;
|
|
125
|
+
activityDetection?: boolean;
|
|
126
|
+
activityTimeout?: number;
|
|
127
|
+
autoShowBlinds?: boolean;
|
|
125
128
|
}
|
|
126
129
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/panel-types/index.ts"],"names":[],"mappings":"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
|
|
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,KAKN,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"TabbedTerminalPanel.d.ts","sourceRoot":"","sources":["../../../src/panels/TabbedTerminalPanel.tsx"],"names":[],"mappings":"AAGA,OAAO,KAKN,MAAM,OAAO,CAAC;AAMf,OAAO,KAAK,EACV,wBAAwB,EACxB,WAAW,EAKZ,MAAM,gBAAgB,CAAC;AAiCxB,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,gBAAgB,EAAE,MAAM,IAAI,CAAC;CAC9B;AAqyCD,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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { trace, context, SpanStatusCode, type Tracer, type Span } from '@opentelemetry/api';
|
|
2
|
+
export declare const TRACER_NAME = "@industry-theme/xterm-terminal-panel";
|
|
3
|
+
export declare const TRACER_VERSION = "0.5.1";
|
|
4
|
+
export declare function getTracer(): Tracer;
|
|
5
|
+
export declare function getActiveSpan(): Span | undefined;
|
|
6
|
+
export declare function withSpan<T>(span: Span, fn: () => Promise<T>): Promise<T>;
|
|
7
|
+
export declare function withSpanSync<T>(span: Span, fn: () => T): T;
|
|
8
|
+
export { trace, context, SpanStatusCode };
|
|
9
|
+
export type { Tracer, Span };
|
|
10
|
+
//# sourceMappingURL=telemetry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../../src/telemetry.ts"],"names":[],"mappings":"AAkBA,OAAO,EACL,KAAK,EACL,OAAO,EACP,cAAc,EACd,KAAK,MAAM,EACX,KAAK,IAAI,EACV,MAAM,oBAAoB,CAAC;AAM5B,eAAO,MAAM,WAAW,yCAAyC,CAAC;AAClE,eAAO,MAAM,cAAc,UAAkB,CAAC;AAM9C,wBAAgB,SAAS,IAAI,MAAM,CAElC;AAMD,wBAAgB,aAAa,IAAI,IAAI,GAAG,SAAS,CAEhD;AAMD,wBAAsB,QAAQ,CAAC,CAAC,EAC9B,IAAI,EAAE,IAAI,EACV,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACnB,OAAO,CAAC,CAAC,CAAC,CAEZ;AAKD,wBAAgB,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAE1D;AAGD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC;AAC1C,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC"}
|
|
@@ -20,6 +20,11 @@ export interface TerminalScrollPosition {
|
|
|
20
20
|
isAtBottom: boolean;
|
|
21
21
|
isScrollLocked: boolean;
|
|
22
22
|
}
|
|
23
|
+
export interface TerminalActivityState {
|
|
24
|
+
isActive: boolean;
|
|
25
|
+
startedAt?: number;
|
|
26
|
+
duration?: number;
|
|
27
|
+
}
|
|
23
28
|
export type TerminalShortcut = 'command-palette';
|
|
24
29
|
export interface TerminalShortcutEvent {
|
|
25
30
|
shortcut: TerminalShortcut;
|
|
@@ -54,6 +59,10 @@ export interface ThemedTerminalProps {
|
|
|
54
59
|
isWorking?: boolean;
|
|
55
60
|
workingMessage?: string;
|
|
56
61
|
workingSubtitle?: string;
|
|
62
|
+
activityDetection?: boolean;
|
|
63
|
+
activityTimeout?: number;
|
|
64
|
+
onActivityChange?: (state: TerminalActivityState) => void;
|
|
65
|
+
autoShowBlinds?: boolean;
|
|
57
66
|
convertEol?: boolean;
|
|
58
67
|
cursorBlink?: boolean;
|
|
59
68
|
cursorStyle?: 'block' | 'underline' | 'bar';
|
|
@@ -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":"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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.5.
|
|
3
|
+
"version": "0.5.2",
|
|
4
4
|
"description": "Industry-themed xterm.js terminal components with panel framework integration",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
},
|
|
25
25
|
"scripts": {
|
|
26
26
|
"build": "bun run clean && bun run build:esm && bun run build:tools && bun run build:types && bun run build:styles",
|
|
27
|
-
"build:esm": "NODE_ENV=production bun build ./index.ts --outdir ./dist --entry-naming [dir]/[name].[ext] --format esm --target browser --external react --external react-dom --external @xterm/xterm --external @xterm/addon-fit --external @xterm/addon-search --external @xterm/addon-web-links --external @xterm/addon-webgl --external @principal-ade/industry-theme --external @principal-ade/panel-framework-core --external lucide-react --external clsx",
|
|
27
|
+
"build:esm": "NODE_ENV=production bun build ./index.ts --outdir ./dist --entry-naming [dir]/[name].[ext] --format esm --target browser --external react --external react-dom --external @xterm/xterm --external @xterm/addon-fit --external @xterm/addon-search --external @xterm/addon-web-links --external @xterm/addon-webgl --external @principal-ade/industry-theme --external @principal-ade/panel-framework-core --external lucide-react --external clsx --external @opentelemetry/api",
|
|
28
28
|
"build:tools": "bun build ./src/tools/index.ts --outfile ./dist/tools.bundle.js --format esm --target browser",
|
|
29
29
|
"build:types": "tsc --project tsconfig.build.json --emitDeclarationOnly --declaration --declarationMap",
|
|
30
30
|
"build:styles": "cp src/styles/terminal-theme.css dist/styles.css",
|
|
@@ -57,6 +57,7 @@
|
|
|
57
57
|
"clsx": "^2.1.1"
|
|
58
58
|
},
|
|
59
59
|
"peerDependencies": {
|
|
60
|
+
"@opentelemetry/api": ">=1.8.0",
|
|
60
61
|
"@principal-ade/industry-theme": ">=0.1.8",
|
|
61
62
|
"@principal-ade/panel-framework-core": ">=0.5.1",
|
|
62
63
|
"@principal-ade/panel-layouts": ">=0.4.0",
|
|
@@ -71,6 +72,9 @@
|
|
|
71
72
|
"react-dom": ">=19.0.0"
|
|
72
73
|
},
|
|
73
74
|
"peerDependenciesMeta": {
|
|
75
|
+
"@opentelemetry/api": {
|
|
76
|
+
"optional": true
|
|
77
|
+
},
|
|
74
78
|
"lucide-react": {
|
|
75
79
|
"optional": true
|
|
76
80
|
},
|
|
@@ -80,6 +84,8 @@
|
|
|
80
84
|
},
|
|
81
85
|
"devDependencies": {
|
|
82
86
|
"@chromatic-com/storybook": "^4.1.3",
|
|
87
|
+
"@opentelemetry/api": "^1.9.0",
|
|
88
|
+
"@principal-ai/storybook-addon-otel": "^0.3.22",
|
|
83
89
|
"@eslint/js": "^9.32.0",
|
|
84
90
|
"@industry-theme/agent-panels": "^0.2.12",
|
|
85
91
|
"@principal-ade/industry-theme": "^0.1.7",
|