@cmusei/console-forge 0.19.1 → 0.20.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.
@@ -5,6 +5,8 @@ import { ConsoleToolbarComponentBase } from '../../models/console-toolbar-compon
5
5
  import { ConsolePowerRequest } from '../../models/console-power-request';
6
6
  import { ConsoleComponentNetworkConfig } from '../../models/console-component-network-config';
7
7
  import { ConsoleConnectionStatus } from '../../models/console-connection-status';
8
+ import { ConsoleNetworkConnectionRequest } from '../../models/console-network-connection-request';
9
+ import { ConsoleNetworkDisconnectionRequest } from '../../models/console-network-disconnection-request';
8
10
  import * as i0 from "@angular/core";
9
11
  export declare class ConsoleComponent implements OnDestroy {
10
12
  autoConnect: import("@angular/core").InputSignal<boolean>;
@@ -18,8 +20,8 @@ export declare class ConsoleComponent implements OnDestroy {
18
20
  consoleRecorded: import("@angular/core").OutputEmitterRef<Blob>;
19
21
  ctrlAltDelSent: import("@angular/core").OutputEmitterRef<void>;
20
22
  localClipboardUpdated: import("@angular/core").OutputEmitterRef<ClipboardItem>;
21
- networkConnectionRequested: import("@angular/core").OutputEmitterRef<string>;
22
- networkDisconnectRequested: import("@angular/core").OutputEmitterRef<void>;
23
+ networkConnectionRequested: import("@angular/core").OutputEmitterRef<ConsoleNetworkConnectionRequest>;
24
+ networkDisconnectRequested: import("@angular/core").OutputEmitterRef<ConsoleNetworkDisconnectionRequest | undefined>;
23
25
  powerRequestSent: import("@angular/core").OutputEmitterRef<ConsolePowerRequest>;
24
26
  reconnectRequest: import("@angular/core").OutputEmitterRef<ConsoleComponentConfig>;
25
27
  screenshotCopied: import("@angular/core").OutputEmitterRef<Blob>;
@@ -1,9 +1,11 @@
1
1
  import { Type } from '@angular/core';
2
2
  import { ConsoleClientService } from '../../services/console-clients/console-client.service';
3
+ import { ConsoleComponentNetworkConfig } from '../../models/console-component-network-config';
3
4
  import { ConsoleToolbarContext } from '../../models/console-toolbar-context';
4
5
  import { ConsoleToolbarComponentBase } from '../../models/console-toolbar-component-base';
6
+ import { ConsoleNetworkConnectionRequest } from '../../models/console-network-connection-request';
7
+ import { ConsoleNetworkDisconnectionRequest } from '../../models/console-network-disconnection-request';
5
8
  import { ConsolePowerRequest } from '../../models/console-power-request';
6
- import { ConsoleComponentNetworkConfig } from '../../models/console-component-network-config';
7
9
  import * as i0 from "@angular/core";
8
10
  export declare class ConsoleToolbarComponent {
9
11
  consoleClient: import("@angular/core").InputSignal<ConsoleClientService>;
@@ -14,8 +16,8 @@ export declare class ConsoleToolbarComponent {
14
16
  canvasRecordingFinished: import("@angular/core").OutputEmitterRef<Blob>;
15
17
  ctrlAltDelSent: import("@angular/core").OutputEmitterRef<void>;
16
18
  keyboardInputSent: import("@angular/core").OutputEmitterRef<string>;
17
- networkConnectionRequested: import("@angular/core").OutputEmitterRef<string>;
18
- networkDisconnectRequested: import("@angular/core").OutputEmitterRef<void>;
19
+ networkConnectionRequested: import("@angular/core").OutputEmitterRef<ConsoleNetworkConnectionRequest>;
20
+ networkDisconnectRequested: import("@angular/core").OutputEmitterRef<ConsoleNetworkDisconnectionRequest | undefined>;
19
21
  powerRequestSent: import("@angular/core").OutputEmitterRef<ConsolePowerRequest>;
20
22
  reconnectRequestSent: import("@angular/core").OutputEmitterRef<void>;
21
23
  screenshotCopied: import("@angular/core").OutputEmitterRef<Blob>;
@@ -38,7 +40,8 @@ export declare class ConsoleToolbarComponent {
38
40
  protected handleCopyScreenshot(): Promise<void>;
39
41
  protected handleFullscreen(): Promise<void>;
40
42
  protected handleKeyboardInputSend(text: string): Promise<void>;
41
- protected handleNetworkConnectionRequest(networkName: string): void;
43
+ protected handleNetworkConnectionRequest(request: ConsoleNetworkConnectionRequest): void;
44
+ protected handleNetworkDisconnectionRequest(request?: ConsoleNetworkDisconnectionRequest): void;
42
45
  protected handleReconnectRequestSent(): Promise<void>;
43
46
  protected handleRecordScreenStart(): void;
44
47
  protected handleRecordScreenStop(): Promise<Blob>;
@@ -5,6 +5,7 @@ import { ConsoleForgeConfig } from '../../config/console-forge-config';
5
5
  import { ConsolePowerRequest } from '../../models/console-power-request';
6
6
  import { ConsoleToolbarPosition } from '../../models/console-toolbar-position';
7
7
  import { ConsoleToolbarTheme } from '../../models/console-toolbar-theme';
8
+ import { ConsoleNetworkConnectionRequest } from '../../models/console-network-connection-request';
8
9
  import * as i0 from "@angular/core";
9
10
  export declare class ConsoleToolbarDefaultComponent implements AfterViewInit, ConsoleToolbarComponentBase {
10
11
  consoleContext: import("@angular/core").InputSignal<ConsoleToolbarContext>;
@@ -14,19 +15,18 @@ export declare class ConsoleToolbarDefaultComponent implements AfterViewInit, Co
14
15
  protected isPowerDialogOpen: boolean;
15
16
  protected isSettingsDialogOpen: boolean;
16
17
  protected readonly keyboardInputText: import("@angular/core").ModelSignal<string>;
17
- protected readonly selectedNetworkForChange: import("@angular/core").ModelSignal<string | undefined>;
18
18
  protected readonly cfConfig: ConsoleForgeConfig;
19
19
  private readonly clipboardService;
20
20
  protected readonly clipboardTextInput: import("@angular/core").Signal<ElementRef<any> | undefined>;
21
21
  private readonly picoCssService;
22
22
  private readonly hostElement;
23
- private readonly currentNetwork;
24
23
  constructor();
25
24
  ngAfterViewInit(): Promise<void>;
26
25
  protected handleChangeToolbarPosition(position: ConsoleToolbarPosition): void;
27
26
  protected handleClipboardDialogOpenClose(isOpen: boolean): void;
28
27
  protected handleClipboardCopyLastText(text: string): void;
29
- protected handleNetworkChangeRequested(networkName?: string): void;
28
+ protected handleNetworkChangeRequested(request: ConsoleNetworkConnectionRequest): void;
29
+ protected handleNetworkDisconnectAllRequested(): void;
30
30
  protected handleNetworkDialogOpenClose(isOpen: boolean): void;
31
31
  protected handleRecordToggle(): void;
32
32
  protected handleSendClipboardText(event: Event, text: string): Promise<void>;
@@ -35,8 +35,9 @@ export declare class ConsoleToolbarDefaultComponent implements AfterViewInit, Co
35
35
  protected handleSendPowerRequest(request: ConsolePowerRequest): Promise<void>;
36
36
  protected handleSettingsDialogOpenClose(isOpen: boolean): void;
37
37
  protected handleSettingsAllowLocalClipboardWrite(allow: boolean): void;
38
- protected handleSettingsPreserveAspectRatioChange(preserveAspectRatioOnScale: boolean): void;
38
+ protected handleSettingsAttemptRemoteSessionResize(attempt: boolean): void;
39
+ protected handleSettingsScaleToContainerHostSize(scaleToCanvasHostSize: boolean): void;
39
40
  protected handleToolbarThemeChange(theme?: ConsoleToolbarTheme): void;
40
41
  static ɵfac: i0.ɵɵFactoryDeclaration<ConsoleToolbarDefaultComponent, never>;
41
- static ɵcmp: i0.ɵɵComponentDeclaration<ConsoleToolbarDefaultComponent, "cf-console-toolbar-default", never, { "consoleContext": { "alias": "consoleContext"; "required": true; "isSignal": true; }; "keyboardInputText": { "alias": "keyboardInputText"; "required": false; "isSignal": true; }; "selectedNetworkForChange": { "alias": "selectedNetworkForChange"; "required": false; "isSignal": true; }; }, { "keyboardInputText": "keyboardInputTextChange"; "selectedNetworkForChange": "selectedNetworkForChangeChange"; }, never, never, true, never>;
42
+ static ɵcmp: i0.ɵɵComponentDeclaration<ConsoleToolbarDefaultComponent, "cf-console-toolbar-default", never, { "consoleContext": { "alias": "consoleContext"; "required": true; "isSignal": true; }; "keyboardInputText": { "alias": "keyboardInputText"; "required": false; "isSignal": true; }; }, { "keyboardInputText": "keyboardInputTextChange"; }, never, never, true, never>;
42
43
  }
@@ -1,4 +1,5 @@
1
1
  export interface ConsoleComponentNetworkConfig {
2
- available: string[];
3
- current?: string;
2
+ networks: string[];
3
+ nics: string[];
4
+ currentConnections: Record<string, string>;
4
5
  }
@@ -0,0 +1,4 @@
1
+ export interface ConsoleNetworkConnectionRequest {
2
+ network: string;
3
+ nic: string;
4
+ }
@@ -0,0 +1,7 @@
1
+ export interface ConsoleNetworkDisconnectionRequest {
2
+ /**
3
+ * The which should be disconnected. If this value is falsey, interpret as
4
+ * a request to disconnect all NICs.
5
+ */
6
+ nic?: string;
7
+ }
@@ -3,6 +3,8 @@ import { CanvasRecording } from "../services/canvas-recorder/canvas-recording";
3
3
  import { ConsolePowerRequest } from "./console-power-request";
4
4
  import { ConsoleSupportedFeatures } from "./console-supported-features";
5
5
  import { ConsoleComponentNetworkConfig } from "./console-component-network-config";
6
+ import { ConsoleNetworkConnectionRequest } from "./console-network-connection-request";
7
+ import { ConsoleNetworkDisconnectionRequest } from "./console-network-disconnection-request";
6
8
  import { UserSettingsService } from "../services/user-settings.service";
7
9
  export interface ConsoleToolbarContext {
8
10
  clipboard: {
@@ -22,8 +24,8 @@ export interface ConsoleToolbarContext {
22
24
  };
23
25
  networks: {
24
26
  config: Signal<ConsoleComponentNetworkConfig | undefined>;
25
- connectionRequested(networkName: string): void;
26
- disconnectRequested(): void;
27
+ connectionRequested(request: ConsoleNetworkConnectionRequest): void;
28
+ disconnectRequested(request: ConsoleNetworkDisconnectionRequest): void;
27
29
  };
28
30
  state: {
29
31
  activeConsoleRecording: Signal<CanvasRecording | undefined>;
@@ -3,7 +3,8 @@ import { ConsoleToolbarTheme } from "./console-toolbar-theme";
3
3
  export interface ConsoleUserSettings {
4
4
  console: {
5
5
  allowCopyToLocalClipboard: boolean;
6
- preserveAspectRatioOnScale: boolean;
6
+ attemptRemoteSessionResize: boolean;
7
+ scaleToCanvasHostSize: boolean;
7
8
  };
8
9
  toolbar: {
9
10
  dockTo: ConsoleToolbarPosition;
@@ -15,7 +15,6 @@ export interface ConsoleClientService {
15
15
  sendCtrlAltDelete(): Promise<void>;
16
16
  sendKeyboardInput(text: string): Promise<void>;
17
17
  sendPowerRequest(request: ConsolePowerRequest): Promise<void>;
18
- setPreserveAspectRatioOnScale(preserve: boolean): Promise<void>;
19
18
  setIsViewOnly(isViewOnly: boolean): Promise<void>;
20
19
  /**
21
20
  * Automatically called by the console component on destroy. Disconnect any clients/websocket usage here
@@ -22,6 +22,7 @@ export declare class VmWareConsoleClientService implements ConsoleClientService
22
22
  readonly supportedFeatures: import("@angular/core").Signal<ConsoleSupportedFeatures>;
23
23
  private readonly _needsCanvasSizeUpdate;
24
24
  private readonly _needsCanvasSizeUpdateSub;
25
+ constructor();
25
26
  connect(url: string, options: ConsoleConnectionOptions): Promise<void>;
26
27
  disconnect(): Promise<void>;
27
28
  sendClipboardText(text: string): Promise<void>;
@@ -29,11 +30,11 @@ export declare class VmWareConsoleClientService implements ConsoleClientService
29
30
  sendKeyboardInput(text: string): Promise<void>;
30
31
  sendPowerRequest(request: ConsolePowerRequest): Promise<void>;
31
32
  setIsViewOnly(isViewOnly: boolean): Promise<void>;
32
- setPreserveAspectRatioOnScale(scaleToContainerSize: boolean): Promise<void>;
33
33
  dispose(): Promise<void>;
34
34
  private doPostConnectionConfig;
35
35
  private doPostDisconnectionConfig;
36
36
  private handleWindowSizeChange;
37
+ private updateFromUserSettings;
37
38
  static ɵfac: i0.ɵɵFactoryDeclaration<VmWareConsoleClientService, never>;
38
39
  static ɵprov: i0.ɵɵInjectableDeclaration<VmWareConsoleClientService>;
39
40
  }
@@ -18,6 +18,7 @@ export declare class VncConsoleClientService implements ConsoleClientService {
18
18
  private readonly logger;
19
19
  private readonly userSettings;
20
20
  private noVncClient?;
21
+ constructor();
21
22
  connect(url: string, options: ConsoleConnectionOptions): Promise<void>;
22
23
  disconnect(): Promise<void>;
23
24
  dispose(): Promise<void>;
@@ -26,10 +27,10 @@ export declare class VncConsoleClientService implements ConsoleClientService {
26
27
  sendKeyboardInput(text: string): Promise<void>;
27
28
  sendPowerRequest(request: ConsolePowerRequest): Promise<void>;
28
29
  setIsViewOnly(isViewOnly: boolean): Promise<void>;
29
- setPreserveAspectRatioOnScale(preserve: boolean): Promise<void>;
30
30
  private doPreConnectionConfig;
31
31
  private doPostConnectionConfig;
32
32
  private handleDisconnect;
33
+ private updateFromUserSettings;
33
34
  static ɵfac: i0.ɵɵFactoryDeclaration<VncConsoleClientService, never>;
34
35
  static ɵprov: i0.ɵɵInjectableDeclaration<VncConsoleClientService>;
35
36
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cmusei/console-forge",
3
- "version": "0.19.1",
3
+ "version": "0.20.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/cmu-sei/console-forge.git"
package/public-api.d.ts CHANGED
@@ -8,6 +8,8 @@ export * from "./lib/models/console-connection-options";
8
8
  export * from "./lib/models/console-connection-status";
9
9
  export * from "./lib/models/console-credentials";
10
10
  export * from "./lib/models/console-component-network-config";
11
+ export * from "./lib/models/console-network-connection-request";
12
+ export * from "./lib/models/console-network-disconnection-request";
11
13
  export * from "./lib/models/console-power-request";
12
14
  export * from "./lib/models/console-supported-features";
13
15
  export * from "./lib/models/console-toolbar-position";