@difizen/libro-terminal 0.1.0 → 0.1.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/es/view.d.ts CHANGED
@@ -1,17 +1,18 @@
1
1
  /// <reference types="react" resolution-mode="require"/>
2
- import { BaseView, DisposableCollection, Emitter } from '@difizen/mana-app';
3
- import type { RendererType } from 'xterm';
2
+ import { Disposable, DisposableCollection, Emitter } from '@difizen/mana-app';
3
+ import type { ITerminalOptions } from 'xterm';
4
4
  import { Terminal } from 'xterm';
5
5
  import { FitAddon } from 'xterm-addon-fit';
6
6
  import type { CursorStyle, TerminalRendererType } from './configuration.js';
7
7
  import { TerminalConfiguration } from './configuration.js';
8
8
  import type { TerminalConnection } from './connection.js';
9
9
  import { TerminalManager } from './manager.js';
10
- import type { TerminalMessage } from './protocol.js';
11
- import { TerminalViewOption } from './protocol.js';
10
+ import type { TerminalMessage, TerminalViewOption } from './protocol.js';
11
+ import 'xterm/css/xterm.css';
12
+ import { BaseStatefulView } from './stateful-view.js';
12
13
  import { TerminalThemeService } from './theme-service.js';
13
14
  export declare const TerminalComponent: import("react").ForwardRefExoticComponent<import("react").RefAttributes<HTMLDivElement>>;
14
- export declare class LibroTerminalView extends BaseView {
15
+ export declare class LibroTerminalView extends BaseStatefulView {
15
16
  protected term: Terminal;
16
17
  view: import("react").ForwardRefExoticComponent<import("react").RefAttributes<HTMLDivElement>>;
17
18
  protected options: TerminalViewOption;
@@ -22,38 +23,39 @@ export declare class LibroTerminalView extends BaseView {
22
23
  protected readonly themeService: TerminalThemeService;
23
24
  protected readonly terminalManager: TerminalManager;
24
25
  protected readonly toDisposeOnConnect: DisposableCollection;
25
- protected readonly onDidOpenEmitter: Emitter<void>;
26
- readonly onDidOpen: import("@difizen/mana-app").Event<void>;
27
- protected readonly onDidOpenFailureEmitter: Emitter<void>;
28
- readonly onDidOpenFailure: import("@difizen/mana-app").Event<void>;
26
+ protected readonly onDidOpenEmitter: Emitter<boolean>;
27
+ readonly onDidOpen: import("@difizen/mana-app").Event<boolean>;
28
+ protected readonly onDidOpenFailureEmitter: Emitter<unknown>;
29
29
  protected readonly onSizeChangedEmitter: Emitter<{
30
30
  cols: number;
31
31
  rows: number;
32
32
  }>;
33
- readonly onSizeChanged: import("@difizen/mana-app").Event<{
34
- cols: number;
35
- rows: number;
36
- }>;
37
33
  protected readonly onDataEmitter: Emitter<string>;
38
- readonly onData: import("@difizen/mana-app").Event<string>;
39
34
  protected readonly onKeyEmitter: Emitter<{
40
35
  key: string;
41
36
  domEvent: KeyboardEvent;
42
37
  }>;
43
- readonly onKey: import("@difizen/mana-app").Event<{
44
- key: string;
45
- domEvent: KeyboardEvent;
46
- }>;
47
38
  protected readonly onDidCloseEmitter: Emitter<LibroTerminalView>;
48
- readonly onDidClose: import("@difizen/mana-app").Event<LibroTerminalView>;
39
+ protected readonly onTitleChangeEmitter: Emitter<string>;
49
40
  protected connection?: TerminalConnection;
50
- constructor(options: TerminalViewOption);
51
- protected createConnection: () => Promise<void>;
41
+ protected restoreObj?: object;
42
+ protected _isReady: boolean;
43
+ protected onReadyEmitter: Emitter<boolean>;
44
+ constructor(options: TerminalViewOption, // 这里是 server需要的配置
45
+ config: TerminalConfiguration, themeService: TerminalThemeService, terminalManager: TerminalManager);
46
+ afterRestore(): void;
47
+ initConnection(): Promise<TerminalConnection>;
48
+ storeState(): object;
49
+ restoreState(oldState: object): void;
50
+ dispose(): void;
51
+ protected createConnection: () => Promise<TerminalConnection>;
52
52
  /**
53
53
  * Handle a message from the terminal session.
54
54
  */
55
- protected onMessage(msg: TerminalMessage): void;
56
- protected initialConnection(): void;
55
+ protected onMessage: (msg: TerminalMessage) => void;
56
+ protected initOnceAfterConnected(dispose: Disposable): void;
57
+ protected initialCommand: () => void;
58
+ protected initialTitle(): void;
57
59
  protected createTerm: () => void;
58
60
  protected get enableCopy(): boolean;
59
61
  protected get enablePaste(): boolean;
@@ -69,10 +71,59 @@ export declare class LibroTerminalView extends BaseView {
69
71
  *
70
72
  * @param terminalRendererType desired terminal renderer type
71
73
  */
72
- protected getTerminalRendererType: (terminalRendererType?: string | TerminalRendererType) => RendererType;
74
+ protected getTerminalRendererType: (terminalRendererType?: string | TerminalRendererType) => TerminalRendererType;
75
+ onViewMount(): void;
76
+ onViewUnmount(): void;
77
+ /**
78
+ * Refresh the terminal session.
79
+ *
80
+ * #### Notes
81
+ * Failure to reconnect to the session should be caught appropriately
82
+ */
83
+ refresh: () => Promise<void>;
73
84
  protected resizeTerminal: () => void;
85
+ /**
86
+ * Set the size of the terminal in the session.
87
+ */
88
+ protected setSessionSize(): void;
74
89
  onViewResize: () => void;
90
+ protected processResize: () => void;
75
91
  protected open: () => void;
92
+ protected hasWebGLContext(): boolean;
93
+ /**
94
+ * Create a xterm.js terminal
95
+ */
96
+ protected createTerminal(options: ITerminalOptions): [Terminal, FitAddon];
97
+ protected addRenderer(term: Terminal): void;
98
+ readonly onDidOpenFailure: import("@difizen/mana-app").Event<unknown>;
99
+ readonly onSizeChanged: import("@difizen/mana-app").Event<{
100
+ cols: number;
101
+ rows: number;
102
+ }>;
103
+ readonly onData: import("@difizen/mana-app").Event<string>;
104
+ readonly onKey: import("@difizen/mana-app").Event<{
105
+ key: string;
106
+ domEvent: KeyboardEvent;
107
+ }>;
108
+ readonly onDidClose: import("@difizen/mana-app").Event<LibroTerminalView>;
109
+ readonly onTitleChange: import("@difizen/mana-app").Event<string>;
110
+ /**
111
+ * Terminal is ready event
112
+ */
113
+ get name(): string;
114
+ onReady: import("@difizen/mana-app").Event<boolean>;
115
+ /**
116
+ * Check if terminal has any text selected.
117
+ */
118
+ hasSelection(): boolean;
119
+ /**
120
+ * Paste text into terminal.
121
+ */
122
+ paste(data: string): void;
123
+ /**
124
+ * Get selected text from terminal.
125
+ */
126
+ getSelection(): string | null;
76
127
  scrollLineUp: () => void;
77
128
  scrollLineDown: () => void;
78
129
  scrollToTop: () => void;
@@ -80,6 +131,7 @@ export declare class LibroTerminalView extends BaseView {
80
131
  scrollPageUp: () => void;
81
132
  scrollPageDown: () => void;
82
133
  resetTerminal: () => void;
83
- writeLine: (text: string) => void;
134
+ writeLine: (data: string) => void;
135
+ write: (data: string | Uint8Array) => void;
84
136
  }
85
137
  //# sourceMappingURL=view.d.ts.map
package/es/view.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../src/view.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../src/view.tsx"],"names":[],"mappings":";AACA,OAAO,EACL,UAAU,EACV,oBAAoB,EACpB,OAAO,EAUR,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAI3C,OAAO,KAAK,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAEL,qBAAqB,EAEtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACzE,OAAO,qBAAqB,CAAC;AAC7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,eAAO,MAAM,iBAAiB,0FAc5B,CAAC;AAEH,qBAEa,iBAAkB,SAAQ,gBAAgB;IACrD,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC;IAChB,IAAI,2FAAqB;IAClC,SAAS,CAAC,OAAO,EAAE,kBAAkB,CAAC;IACtC,SAAS,CAAC,UAAU,UAAS;IAC7B,SAAS,CAAC,WAAW,SAAM;IAC3B,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC7B,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;IACjD,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,oBAAoB,CAAC;IACtD,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAEpD,SAAS,CAAC,QAAQ,CAAC,kBAAkB,uBAA8B;IAEnE,SAAS,CAAC,QAAQ,CAAC,gBAAgB,mBAA0B;IAC7D,QAAQ,CAAC,SAAS,6CAA+B;IAEjD,SAAS,CAAC,QAAQ,CAAC,uBAAuB,mBAA0B;IAEpE,SAAS,CAAC,QAAQ,CAAC,oBAAoB;cAC/B,MAAM;cACN,MAAM;OACT;IAEL,SAAS,CAAC,QAAQ,CAAC,aAAa,kBAAyB;IAEzD,SAAS,CAAC,QAAQ,CAAC,YAAY;aACxB,MAAM;kBACD,aAAa;OACpB;IAEL,SAAS,CAAC,QAAQ,CAAC,iBAAiB,6BAAoC;IAExE,SAAS,CAAC,QAAQ,CAAC,oBAAoB,kBAAyB;IAEhE,SAAS,CAAC,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAE1C,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAE9B,SAAS,CAAC,QAAQ,UAAS;IAE3B,SAAS,CAAC,cAAc,mBAA0B;gBAG5B,OAAO,EAAE,kBAAkB,EAAE,kBAAkB;IACpC,MAAM,EAAE,qBAAqB,EAC9B,YAAY,EAAE,oBAAoB,EACvC,eAAe,EAAE,eAAe;IAsGlD,YAAY;IAmBf,cAAc;IAWpB,UAAU,IAAI,MAAM;IAIpB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAO3B,OAAO,IAAI,IAAI;IASxB,SAAS,CAAC,gBAAgB,oCAGxB;IAEF;;OAEG;IACH,SAAS,CAAC,SAAS,QAAS,eAAe,UAazC;IAEF,SAAS,CAAC,sBAAsB,CAAC,OAAO,EAAE,UAAU;IAkBpD,SAAS,CAAC,cAAc,aAOtB;IAGF,SAAS,CAAC,YAAY;IAStB,SAAS,CAAC,UAAU,aA2BlB;IAEF,SAAS,KAAK,UAAU,IAAI,OAAO,CAElC;IAED,SAAS,KAAK,WAAW,IAAI,OAAO,CAEnC;IAED,SAAS,KAAK,eAAe,IAAI,OAAO,CAEvC;IAED,SAAS,CAAC,gBAAgB,UAAW,aAAa,KAAG,OAAO,CAe1D;IACF;;;OAGG;IACH,SAAS,CAAC,cAAc,QAAO,WAAW,CAGxC;IACF;;;;OAIG;IACH,SAAS,CAAC,uBAAuB,0BACR,MAAM,GAAG,oBAAoB,KACnD,oBAAoB,CAKrB;IAEO,WAAW,IAAI,IAAI;IAInB,aAAa,IAAI,IAAI;IAI9B;;;;;OAKG;IACI,OAAO,QAAa,QAAQ,IAAI,CAAC,CAKtC;IAEF,SAAS,CAAC,cAAc,QAAO,IAAI,CAEjC;IAEF;;OAEG;IACH,SAAS,CAAC,cAAc,IAAI,IAAI;IAcvB,YAAY,QAAO,IAAI,CAU9B;IAEF,SAAS,CAAC,aAAa,aAIrB;IAEF,SAAS,CAAC,IAAI,QAAO,IAAI,CA2BvB;IAEF,SAAS,CAAC,eAAe,IAAI,OAAO;IAiBpC;;OAEG;IACH,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,gBAAgB,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC;IASzE,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAc3C,SAAgB,gBAAgB,6CAAsC;IACtE,SAAgB,aAAa;cAncrB,MAAM;cACN,MAAM;OAkckD;IAChE,SAAgB,MAAM,4CAA4B;IAClD,SAAgB,KAAK;aA9bd,MAAM;kBACD,aAAa;OA6buB;IAChD,SAAgB,UAAU,uDAAgC;IAC1D,SAAgB,aAAa,4CAAmC;IAChE;;OAEG;IACH,IAAW,IAAI,WAEd;IAEM,OAAO,6CAA6B;IAE3C;;OAEG;IACI,YAAY,IAAI,OAAO;IAO9B;;OAEG;IACI,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAMhC;;OAEG;IACI,YAAY,IAAI,MAAM,GAAG,IAAI;IAO7B,YAAY,QAAO,IAAI,CAE5B;IAEK,cAAc,QAAO,IAAI,CAE9B;IAEK,WAAW,QAAO,IAAI,CAE3B;IAEK,cAAc,QAAO,IAAI,CAE9B;IAEK,YAAY,QAAO,IAAI,CAE5B;IAEK,cAAc,QAAO,IAAI,CAE9B;IAEK,aAAa,QAAO,IAAI,CAE7B;IAEK,SAAS,SAAU,MAAM,KAAG,IAAI,CAErC;IAEK,KAAK,SAAU,MAAM,GAAG,UAAU,KAAG,IAAI,CAE9C;CACH"}