mirror of
https://github.com/wavetermdev/waveterm
synced 2026-04-21 14:37:16 +00:00
fix issue with an undefined this in service code (#3048)
This commit is contained in:
parent
b6884b2a28
commit
cdb300ad97
6 changed files with 43 additions and 39 deletions
|
|
@ -1,7 +1,7 @@
|
|||
// Copyright 2026, Command Line Inc.
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
export const CurrentOnboardingVersion = "v0.14.2";
|
||||
export const CurrentOnboardingVersion = "v0.14.3";
|
||||
|
||||
export function OnboardingGradientBg() {
|
||||
return (
|
||||
|
|
|
|||
|
|
@ -133,10 +133,10 @@ export const UpgradeOnboardingVersions: VersionConfig[] = [
|
|||
version: "v0.14.1",
|
||||
content: () => <UpgradeOnboardingModal_v0_14_1_Content />,
|
||||
prevText: "Prev (v0.14.0)",
|
||||
nextText: "Next (v0.14.2)",
|
||||
nextText: "Next (v0.14.3)",
|
||||
},
|
||||
{
|
||||
version: "v0.14.2",
|
||||
version: "v0.14.3",
|
||||
content: () => <UpgradeOnboardingModal_v0_14_2_Content />,
|
||||
prevText: "Prev (v0.14.1)",
|
||||
},
|
||||
|
|
|
|||
|
|
@ -10,7 +10,8 @@ const UpgradeOnboardingModal_v0_14_2_Content = () => {
|
|||
<div className="text-secondary leading-relaxed mb-4">
|
||||
<p className="mb-0">
|
||||
Wave v0.14.2 introduces a new block badge system for at-a-glance status, along with directory
|
||||
preview improvements and bug fixes.
|
||||
preview improvements and bug fixes. v0.14.3 is a patch release fixing a showstopper bug in
|
||||
onboarding.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
|
@ -62,6 +63,9 @@ const UpgradeOnboardingModal_v0_14_2_Content = () => {
|
|||
<div className="text-foreground text-base font-semibold leading-[18px]">Other Changes</div>
|
||||
<div className="text-secondary leading-5">
|
||||
<ul className="list-disc list-outside space-y-1 pl-5">
|
||||
<li>
|
||||
<strong>[v0.14.3] </strong>[bugfix] Fixed a showstopper onboarding bug
|
||||
</li>
|
||||
<li>
|
||||
<strong>Directory Preview</strong> - Improved mod time formatting, zebra-striped rows,
|
||||
better default sort, and YAML file support
|
||||
|
|
|
|||
|
|
@ -59,7 +59,7 @@ const InitPage = ({
|
|||
|
||||
const acceptTos = () => {
|
||||
if (!clientData?.tosagreed) {
|
||||
fireAndForget(services.ClientService.AgreeTos);
|
||||
fireAndForget(() => services.ClientService.AgreeTos());
|
||||
}
|
||||
if (telemetryEnabled) {
|
||||
WorkspaceLayoutModel.getInstance().setAIPanelVisible(true);
|
||||
|
|
@ -325,7 +325,7 @@ const NewInstallOnboardingModal = () => {
|
|||
let pageComp: React.JSX.Element = null;
|
||||
switch (pageName) {
|
||||
case "init":
|
||||
pageComp = <InitPage isCompact={isCompact} telemetryUpdateFn={services.ClientService.TelemetryUpdate} />;
|
||||
pageComp = <InitPage isCompact={isCompact} telemetryUpdateFn={(value) => services.ClientService.TelemetryUpdate(value)} />;
|
||||
break;
|
||||
case "notelemetrystar":
|
||||
pageComp = <NoTelemetryStarPage isCompact={isCompact} />;
|
||||
|
|
|
|||
|
|
@ -24,18 +24,18 @@ export class BlockServiceType {
|
|||
// queue a layout action to cleanup orphaned blocks in the tab
|
||||
// @returns object updates
|
||||
CleanupOrphanedBlocks(tabId: string): Promise<void> {
|
||||
return callBackendService(this.waveEnv, "block", "CleanupOrphanedBlocks", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "block", "CleanupOrphanedBlocks", Array.from(arguments))
|
||||
}
|
||||
GetControllerStatus(arg2: string): Promise<BlockControllerRuntimeStatus> {
|
||||
return callBackendService(this.waveEnv, "block", "GetControllerStatus", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "block", "GetControllerStatus", Array.from(arguments))
|
||||
}
|
||||
|
||||
// save the terminal state to a blockfile
|
||||
SaveTerminalState(blockId: string, state: string, stateType: string, ptyOffset: number, termSize: TermSize): Promise<void> {
|
||||
return callBackendService(this.waveEnv, "block", "SaveTerminalState", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "block", "SaveTerminalState", Array.from(arguments))
|
||||
}
|
||||
SaveWaveAiData(arg2: string, arg3: WaveAIPromptMessageType[]): Promise<void> {
|
||||
return callBackendService(this.waveEnv, "block", "SaveWaveAiData", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "block", "SaveWaveAiData", Array.from(arguments))
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -51,22 +51,22 @@ export class ClientServiceType {
|
|||
|
||||
// @returns object updates
|
||||
AgreeTos(): Promise<void> {
|
||||
return callBackendService(this.waveEnv, "client", "AgreeTos", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "client", "AgreeTos", Array.from(arguments))
|
||||
}
|
||||
FocusWindow(arg2: string): Promise<void> {
|
||||
return callBackendService(this.waveEnv, "client", "FocusWindow", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "client", "FocusWindow", Array.from(arguments))
|
||||
}
|
||||
GetAllConnStatus(): Promise<ConnStatus[]> {
|
||||
return callBackendService(this.waveEnv, "client", "GetAllConnStatus", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "client", "GetAllConnStatus", Array.from(arguments))
|
||||
}
|
||||
GetClientData(): Promise<Client> {
|
||||
return callBackendService(this.waveEnv, "client", "GetClientData", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "client", "GetClientData", Array.from(arguments))
|
||||
}
|
||||
GetTab(arg1: string): Promise<Tab> {
|
||||
return callBackendService(this.waveEnv, "client", "GetTab", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "client", "GetTab", Array.from(arguments))
|
||||
}
|
||||
TelemetryUpdate(arg2: boolean): Promise<void> {
|
||||
return callBackendService(this.waveEnv, "client", "TelemetryUpdate", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "client", "TelemetryUpdate", Array.from(arguments))
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -82,32 +82,32 @@ export class ObjectServiceType {
|
|||
|
||||
// @returns blockId (and object updates)
|
||||
CreateBlock(blockDef: BlockDef, rtOpts: RuntimeOpts): Promise<string> {
|
||||
return callBackendService(this.waveEnv, "object", "CreateBlock", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "object", "CreateBlock", Array.from(arguments))
|
||||
}
|
||||
|
||||
// @returns object updates
|
||||
DeleteBlock(blockId: string): Promise<void> {
|
||||
return callBackendService(this.waveEnv, "object", "DeleteBlock", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "object", "DeleteBlock", Array.from(arguments))
|
||||
}
|
||||
|
||||
// get wave object by oref
|
||||
GetObject(oref: string): Promise<WaveObj> {
|
||||
return callBackendService(this.waveEnv, "object", "GetObject", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "object", "GetObject", Array.from(arguments))
|
||||
}
|
||||
|
||||
// @returns objects
|
||||
GetObjects(orefs: string[]): Promise<WaveObj[]> {
|
||||
return callBackendService(this.waveEnv, "object", "GetObjects", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "object", "GetObjects", Array.from(arguments))
|
||||
}
|
||||
|
||||
// @returns object updates
|
||||
UpdateObject(waveObj: WaveObj, returnUpdates: boolean): Promise<void> {
|
||||
return callBackendService(this.waveEnv, "object", "UpdateObject", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "object", "UpdateObject", Array.from(arguments))
|
||||
}
|
||||
|
||||
// @returns object updates
|
||||
UpdateObjectMeta(oref: string, meta: MetaType): Promise<void> {
|
||||
return callBackendService(this.waveEnv, "object", "UpdateObjectMeta", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "object", "UpdateObjectMeta", Array.from(arguments))
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -122,7 +122,7 @@ export class UserInputServiceType {
|
|||
}
|
||||
|
||||
SendUserInputResponse(arg1: UserInputResponse): Promise<void> {
|
||||
return callBackendService(this.waveEnv, "userinput", "SendUserInputResponse", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "userinput", "SendUserInputResponse", Array.from(arguments))
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -137,22 +137,22 @@ export class WindowServiceType {
|
|||
}
|
||||
|
||||
CloseWindow(windowId: string, fromElectron: boolean): Promise<void> {
|
||||
return callBackendService(this.waveEnv, "window", "CloseWindow", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "window", "CloseWindow", Array.from(arguments))
|
||||
}
|
||||
CreateWindow(winSize: WinSize, workspaceId: string): Promise<WaveWindow> {
|
||||
return callBackendService(this.waveEnv, "window", "CreateWindow", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "window", "CreateWindow", Array.from(arguments))
|
||||
}
|
||||
GetWindow(windowId: string): Promise<WaveWindow> {
|
||||
return callBackendService(this.waveEnv, "window", "GetWindow", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "window", "GetWindow", Array.from(arguments))
|
||||
}
|
||||
|
||||
// set window position and size
|
||||
// @returns object updates
|
||||
SetWindowPosAndSize(windowId: string, pos: Point, size: WinSize): Promise<void> {
|
||||
return callBackendService(this.waveEnv, "window", "SetWindowPosAndSize", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "window", "SetWindowPosAndSize", Array.from(arguments))
|
||||
}
|
||||
SwitchWorkspace(windowId: string, workspaceId: string): Promise<Workspace> {
|
||||
return callBackendService(this.waveEnv, "window", "SwitchWorkspace", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "window", "SwitchWorkspace", Array.from(arguments))
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -168,50 +168,50 @@ export class WorkspaceServiceType {
|
|||
|
||||
// @returns CloseTabRtn (and object updates)
|
||||
CloseTab(workspaceId: string, tabId: string, fromElectron: boolean): Promise<CloseTabRtnType> {
|
||||
return callBackendService(this.waveEnv, "workspace", "CloseTab", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "workspace", "CloseTab", Array.from(arguments))
|
||||
}
|
||||
|
||||
// @returns tabId (and object updates)
|
||||
CreateTab(workspaceId: string, tabName: string, activateTab: boolean): Promise<string> {
|
||||
return callBackendService(this.waveEnv, "workspace", "CreateTab", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "workspace", "CreateTab", Array.from(arguments))
|
||||
}
|
||||
|
||||
// @returns workspaceId
|
||||
CreateWorkspace(name: string, icon: string, color: string, applyDefaults: boolean): Promise<string> {
|
||||
return callBackendService(this.waveEnv, "workspace", "CreateWorkspace", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "workspace", "CreateWorkspace", Array.from(arguments))
|
||||
}
|
||||
|
||||
// @returns object updates
|
||||
DeleteWorkspace(workspaceId: string): Promise<string> {
|
||||
return callBackendService(this.waveEnv, "workspace", "DeleteWorkspace", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "workspace", "DeleteWorkspace", Array.from(arguments))
|
||||
}
|
||||
|
||||
// @returns colors
|
||||
GetColors(): Promise<string[]> {
|
||||
return callBackendService(this.waveEnv, "workspace", "GetColors", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "workspace", "GetColors", Array.from(arguments))
|
||||
}
|
||||
|
||||
// @returns icons
|
||||
GetIcons(): Promise<string[]> {
|
||||
return callBackendService(this.waveEnv, "workspace", "GetIcons", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "workspace", "GetIcons", Array.from(arguments))
|
||||
}
|
||||
|
||||
// @returns workspace
|
||||
GetWorkspace(workspaceId: string): Promise<Workspace> {
|
||||
return callBackendService(this.waveEnv, "workspace", "GetWorkspace", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "workspace", "GetWorkspace", Array.from(arguments))
|
||||
}
|
||||
ListWorkspaces(): Promise<WorkspaceListEntry[]> {
|
||||
return callBackendService(this.waveEnv, "workspace", "ListWorkspaces", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "workspace", "ListWorkspaces", Array.from(arguments))
|
||||
}
|
||||
|
||||
// @returns object updates
|
||||
SetActiveTab(workspaceId: string, tabId: string): Promise<void> {
|
||||
return callBackendService(this.waveEnv, "workspace", "SetActiveTab", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "workspace", "SetActiveTab", Array.from(arguments))
|
||||
}
|
||||
|
||||
// @returns object updates
|
||||
UpdateWorkspace(workspaceId: string, name: string, icon: string, color: string, applyDefaults: boolean): Promise<void> {
|
||||
return callBackendService(this.waveEnv, "workspace", "UpdateWorkspace", Array.from(arguments))
|
||||
return callBackendService(this?.waveEnv, "workspace", "UpdateWorkspace", Array.from(arguments))
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -412,7 +412,7 @@ func GenerateMethodSignature(serviceName string, method reflect.Method, meta tsg
|
|||
}
|
||||
|
||||
func GenerateMethodBody(serviceName string, method reflect.Method, meta tsgenmeta.MethodMeta) string {
|
||||
return fmt.Sprintf(" return callBackendService(this.waveEnv, %q, %q, Array.from(arguments))\n", serviceName, method.Name)
|
||||
return fmt.Sprintf(" return callBackendService(this?.waveEnv, %q, %q, Array.from(arguments))\n", serviceName, method.Name)
|
||||
}
|
||||
|
||||
func GenerateServiceClass(serviceName string, serviceObj any, tsTypesMap map[reflect.Type]string) string {
|
||||
|
|
|
|||
Loading…
Reference in a new issue