@@ -27,7 +27,10 @@ import { promptImportGithubDatabase } from "../databases/database-fetcher";
2727import { App } from "../common/app" ;
2828import { showResolvableLocation } from "../databases/local-databases/locations" ;
2929import { redactableError } from "../common/errors" ;
30- import { runExternalApiQueries } from "./external-api-usage-queries" ;
30+ import {
31+ externalApiQueriesProgressMaxStep ,
32+ runExternalApiQueries ,
33+ } from "./external-api-usage-queries" ;
3134import { Method , Usage } from "./method" ;
3235import { ModeledMethod } from "./modeled-method" ;
3336import { ExtensionPack } from "./shared/extension-pack" ;
@@ -205,22 +208,39 @@ export class ModelEditorView extends AbstractWebview<
205208
206209 break ;
207210 case "saveModeledMethods" :
208- await saveModeledMethods (
209- this . extensionPack ,
210- this . databaseItem . name ,
211- this . databaseItem . language ,
212- msg . methods ,
213- msg . modeledMethods ,
214- this . mode ,
215- this . cliServer ,
216- this . app . logger ,
217- ) ;
218- await Promise . all ( [
219- this . setViewState ( ) ,
220- withProgress ( ( progress ) => this . loadExternalApiUsages ( progress ) , {
211+ await withProgress (
212+ async ( progress ) => {
213+ progress ( {
214+ step : 1 ,
215+ maxStep : 500 + externalApiQueriesProgressMaxStep ,
216+ message : "Writing model files" ,
217+ } ) ;
218+ await saveModeledMethods (
219+ this . extensionPack ,
220+ this . databaseItem . name ,
221+ this . databaseItem . language ,
222+ msg . methods ,
223+ msg . modeledMethods ,
224+ this . mode ,
225+ this . cliServer ,
226+ this . app . logger ,
227+ ) ;
228+
229+ await Promise . all ( [
230+ this . setViewState ( ) ,
231+ this . loadExternalApiUsages ( ( update ) =>
232+ progress ( {
233+ step : update . step + 500 ,
234+ maxStep : 500 + externalApiQueriesProgressMaxStep ,
235+ message : `Reloading models: ${ update . message } ` ,
236+ } ) ,
237+ ) ,
238+ ] ) ;
239+ } ,
240+ {
221241 cancellable : false ,
222- } ) ,
223- ] ) ;
242+ } ,
243+ ) ;
224244 void telemetryListener ?. sendUIInteraction (
225245 "model-editor-save-modeled-methods" ,
226246 ) ;
0 commit comments