@@ -8,7 +8,7 @@ import { extLogger } from "../../common/logging/vscode/loggers";
88import { App } from "../../common/app" ;
99import { redactableError } from "../../common/errors" ;
1010import { Method } from "../method" ;
11- import { DbModelingState , ModelingStore } from "../modeling-store" ;
11+ import { ModelingStore } from "../modeling-store" ;
1212import { AbstractWebviewViewProvider } from "../../common/vscode/abstract-webview-view-provider" ;
1313import { assertNever } from "../../common/helpers-pure" ;
1414import { ModelEditorViewTracker } from "../model-editor-view-tracker" ;
@@ -71,6 +71,9 @@ export class MethodModelingViewProvider extends AbstractWebviewViewProvider<
7171 if ( this . modelingStore . hasStateForActiveDb ( ) ) {
7272 const selectedMethod = this . modelingStore . getSelectedMethodDetails ( ) ;
7373 if ( selectedMethod ) {
74+ this . databaseItem = selectedMethod . databaseItem ;
75+ this . method = selectedMethod . method ;
76+
7477 await this . postMessage ( {
7578 t : "setSelectedMethod" ,
7679 method : selectedMethod . method ,
@@ -111,15 +114,17 @@ export class MethodModelingViewProvider extends AbstractWebviewViewProvider<
111114 break ;
112115
113116 case "setModeledMethod" : {
114- const activeState = this . ensureActiveState ( ) ;
117+ if ( ! this . databaseItem ) {
118+ return ;
119+ }
115120
116121 this . modelingStore . updateModeledMethods (
117- activeState . databaseItem ,
122+ this . databaseItem ,
118123 msg . method . signature ,
119124 convertFromLegacyModeledMethod ( msg . method ) ,
120125 ) ;
121126 this . modelingStore . addModifiedMethod (
122- activeState . databaseItem ,
127+ this . databaseItem ,
123128 msg . method . signature ,
124129 ) ;
125130 break ;
@@ -140,10 +145,12 @@ export class MethodModelingViewProvider extends AbstractWebviewViewProvider<
140145 }
141146
142147 private async revealInModelEditor ( method : Method ) : Promise < void > {
143- const activeState = this . ensureActiveState ( ) ;
148+ if ( ! this . databaseItem ) {
149+ return ;
150+ }
144151
145152 const views = this . editorViewTracker . getViews (
146- activeState . databaseItem . databaseUri . toString ( ) ,
153+ this . databaseItem . databaseUri . toString ( ) ,
147154 ) ;
148155 if ( views . length === 0 ) {
149156 return ;
@@ -152,15 +159,6 @@ export class MethodModelingViewProvider extends AbstractWebviewViewProvider<
152159 await Promise . all ( views . map ( ( view ) => view . revealMethod ( method ) ) ) ;
153160 }
154161
155- private ensureActiveState ( ) : DbModelingState {
156- const activeState = this . modelingStore . getStateForActiveDb ( ) ;
157- if ( ! activeState ) {
158- throw new Error ( "No active state found in modeling store" ) ;
159- }
160-
161- return activeState ;
162- }
163-
164162 private registerToModelingStoreEvents ( ) : void {
165163 this . push (
166164 this . modelingStore . onModeledMethodsChanged ( async ( e ) => {
0 commit comments