@industry-theme/xterm-terminal-panel 0.5.35 → 0.6.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.
@@ -0,0 +1,8 @@
1
+ import type { Theme } from '@principal-ade/industry-theme';
2
+ import type { TerminalOverlayState } from '../types/terminal.types';
3
+ export interface TerminalOverlayProps {
4
+ state: TerminalOverlayState;
5
+ theme: Theme;
6
+ }
7
+ export declare const TerminalOverlay: React.FC<TerminalOverlayProps>;
8
+ //# sourceMappingURL=TerminalOverlay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TerminalOverlay.d.ts","sourceRoot":"","sources":["../../../src/components/TerminalOverlay.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAG3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAEpE,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,oBAAoB,CAAC;IAC5B,KAAK,EAAE,KAAK,CAAC;CACd;AAQD,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAgG1D,CAAC"}
@@ -0,0 +1,43 @@
1
+ import type { PanelEventEmitter } from '@principal-ade/panel-framework-core';
2
+ import type { TerminalActivityChangedEvent, TerminalPanelActions } from '../panel-types';
3
+ import type { TerminalRendererComponent } from '../renderer/TerminalRenderer';
4
+ import type { LinkClickModifiers, TerminalActivityState, TerminalOverlayState, TerminalScrollPosition, TerminalShortcutEvent } from '../types/terminal.types';
5
+ export interface TerminalSessionProps {
6
+ actions: TerminalPanelActions;
7
+ renderer?: TerminalRendererComponent;
8
+ transparent?: boolean;
9
+ backgroundColor?: string;
10
+ defaultScrollLocked?: boolean;
11
+ autoFocus?: boolean;
12
+ isVisible?: boolean;
13
+ scrollback?: number;
14
+ sessionId?: string | null;
15
+ onSessionCreated?: (sessionId: string) => void;
16
+ cwd?: string;
17
+ command?: string;
18
+ sessionContext?: string;
19
+ persistOnUnmount?: boolean;
20
+ enableOwnership?: boolean;
21
+ isForeign?: boolean;
22
+ events?: PanelEventEmitter;
23
+ activityDetection?: boolean;
24
+ activityTimeout?: number;
25
+ onActivityChange?: (state: TerminalActivityState) => void;
26
+ onScrollPositionChange?: (position: TerminalScrollPosition) => void;
27
+ onLinkClick?: (url: string, modifiers: LinkClickModifiers) => void;
28
+ onShortcut?: (event: TerminalShortcutEvent) => void;
29
+ overlayState?: TerminalOverlayState;
30
+ isWorking?: boolean;
31
+ workingMessage?: string;
32
+ workingSubtitle?: string;
33
+ }
34
+ export interface TerminalSessionHandle {
35
+ scrollToBottom: () => void;
36
+ toggleScrollLock: () => void;
37
+ focus: () => void;
38
+ clear: () => void;
39
+ getSessionId: () => string | null;
40
+ }
41
+ export declare const TerminalSession: import("react").ForwardRefExoticComponent<TerminalSessionProps & import("react").RefAttributes<TerminalSessionHandle>>;
42
+ export type { TerminalActivityChangedEvent };
43
+ //# sourceMappingURL=TerminalSession.d.ts.map
@@ -0,0 +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,EACV,4BAA4B,EAE5B,oBAAoB,EAErB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EACV,yBAAyB,EAE1B,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACtB,MAAM,yBAAyB,CAAC;AAKjC,MAAM,WAAW,oBAAoB;IAGnC,OAAO,EAAE,oBAAoB,CAAC;IAI9B,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IACrC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IAIpB,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;IAQ3B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAG1D,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,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,KAAK,EAAE,MAAM,IAAI,CAAC;IAElB,YAAY,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;CACnC;AAqBD,eAAO,MAAM,eAAe,wHAyc3B,CAAC;AAMF,YAAY,EAAE,4BAA4B,EAAE,CAAC"}
@@ -0,0 +1,34 @@
1
+ import type * as React from 'react';
2
+ import type { LinkClickModifiers, TerminalScrollPosition, TerminalShortcutEvent } from '../types/terminal.types';
3
+ export interface TerminalRendererProps {
4
+ onData?: (data: string) => void;
5
+ onResize?: (cols: number, rows: number) => void;
6
+ onReady?: (cols: number, rows: number) => void;
7
+ onLinkClick?: (url: string, modifiers: LinkClickModifiers) => void;
8
+ onScrollPositionChange?: (position: TerminalScrollPosition) => void;
9
+ onShortcut?: (event: TerminalShortcutEvent) => void;
10
+ isVisible?: boolean;
11
+ autoFocus?: boolean;
12
+ defaultScrollLocked?: boolean;
13
+ scrollback?: number;
14
+ transparent?: boolean;
15
+ backgroundColor?: string;
16
+ }
17
+ export interface TerminalRendererHandle {
18
+ write: (data: string | Uint8Array) => void;
19
+ clear: () => void;
20
+ focus: () => void;
21
+ blur: () => void;
22
+ fit: () => void;
23
+ resize: (cols: number, rows: number) => void;
24
+ scrollToBottom: () => void;
25
+ scrollLines: (delta: number) => void;
26
+ getDimensions: () => {
27
+ cols: number;
28
+ rows: number;
29
+ } | null;
30
+ getScrollPosition: () => TerminalScrollPosition;
31
+ isScrollLocked: () => boolean;
32
+ }
33
+ export type TerminalRendererComponent = React.ForwardRefExoticComponent<TerminalRendererProps & React.RefAttributes<TerminalRendererHandle>>;
34
+ //# sourceMappingURL=TerminalRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TerminalRenderer.d.ts","sourceRoot":"","sources":["../../../src/renderer/TerminalRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAEpC,OAAO,KAAK,EACV,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,EACtB,MAAM,yBAAyB,CAAC;AASjC,MAAM,WAAW,qBAAqB;IAEpC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAEhC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAEhD,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAE/C,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAEnE,sBAAsB,CAAC,EAAE,CAAC,QAAQ,EAAE,sBAAsB,KAAK,IAAI,CAAC;IAEpE,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAGpD,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AASD,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,KAAK,IAAI,CAAC;IAC3C,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,IAAI,EAAE,MAAM,IAAI,CAAC;IAEjB,GAAG,EAAE,MAAM,IAAI,CAAC;IAEhB,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,cAAc,EAAE,MAAM,IAAI,CAAC;IAE3B,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAErC,aAAa,EAAE,MAAM;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC3D,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;IAChD,cAAc,EAAE,MAAM,OAAO,CAAC;CAC/B;AAMD,MAAM,MAAM,yBAAyB,GAAG,KAAK,CAAC,yBAAyB,CACrE,qBAAqB,GAAG,KAAK,CAAC,aAAa,CAAC,sBAAsB,CAAC,CACpE,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { TerminalRendererHandle, TerminalRendererProps } from './TerminalRenderer';
2
+ export interface XtermRendererProps extends TerminalRendererProps {
3
+ cursorBlink?: boolean;
4
+ cursorStyle?: 'block' | 'underline' | 'bar';
5
+ convertEol?: boolean;
6
+ fontFamily?: string;
7
+ fontSize?: number;
8
+ scrollbarStyle?: 'overlay' | 'thin' | 'hidden' | 'auto-hide';
9
+ scrollbarFlush?: boolean;
10
+ enableSearch?: boolean;
11
+ enableWebLinks?: boolean;
12
+ }
13
+ export declare const XtermRenderer: import("react").ForwardRefExoticComponent<XtermRendererProps & import("react").RefAttributes<TerminalRendererHandle>>;
14
+ //# sourceMappingURL=XtermRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"XtermRenderer.d.ts","sourceRoot":"","sources":["../../../src/renderer/XtermRenderer.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,sBAAsB,EACtB,qBAAqB,EACtB,MAAM,oBAAoB,CAAC;AAQ5B,MAAM,WAAW,kBAAmB,SAAQ,qBAAqB;IAC/D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,GAAG,WAAW,GAAG,KAAK,CAAC;IAC5C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,CAAC;IAC7D,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAcD,eAAO,MAAM,aAAa,uHA6CzB,CAAC"}
package/dist/styles.css CHANGED
@@ -12,6 +12,11 @@
12
12
 
13
13
  /* Remove default xterm padding */
14
14
  .terminal-container-fix .xterm {
15
+ /* border-box so the 10px top/left padding fits inside the 100% height
16
+ instead of pushing the element 10px taller than its parent — without
17
+ this the last row gets clipped by the parent's overflow:hidden, and
18
+ the user can't scroll all the way to the bottom. */
19
+ box-sizing: border-box;
15
20
  padding: 10px 0 0 10px;
16
21
  margin: 0;
17
22
  height: 100%;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@industry-theme/xterm-terminal-panel",
3
- "version": "0.5.35",
3
+ "version": "0.6.0",
4
4
  "description": "Industry-themed xterm.js terminal components with panel framework integration",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",