Extract addModeledMethodsFromArray method

This commit is contained in:
Koen Vlaswinkel
2023-10-31 10:27:22 +01:00
parent bb104b53ba
commit 5c2050d9bb

View File

@@ -515,19 +515,7 @@ export class ModelEditorView extends AbstractWebview<
databaseItem: addedDatabase ?? this.databaseItem, databaseItem: addedDatabase ?? this.databaseItem,
language: this.language, language: this.language,
onResults: async (modeledMethods) => { onResults: async (modeledMethods) => {
const modeledMethodsByName: Record<string, ModeledMethod[]> = {}; this.addModeledMethodsFromArray(modeledMethods);
for (const modeledMethod of modeledMethods) {
if (!(modeledMethod.signature in modeledMethodsByName)) {
modeledMethodsByName[modeledMethod.signature] = [];
}
modeledMethodsByName[modeledMethod.signature].push(
modeledMethod,
);
}
this.addModeledMethods(modeledMethodsByName);
}, },
progress, progress,
token: tokenSource.token, token: tokenSource.token,
@@ -563,17 +551,7 @@ export class ModelEditorView extends AbstractWebview<
token: tokenSource.token, token: tokenSource.token,
}); });
const modeledMethodsByName: Record<string, ModeledMethod[]> = {}; this.addModeledMethodsFromArray(modeledMethods);
for (const modeledMethod of modeledMethods) {
if (!(modeledMethod.signature in modeledMethodsByName)) {
modeledMethodsByName[modeledMethod.signature] = [];
}
modeledMethodsByName[modeledMethod.signature].push(modeledMethod);
}
this.addModeledMethods(modeledMethodsByName);
} catch (e: unknown) { } catch (e: unknown) {
void showAndLogExceptionWithTelemetry( void showAndLogExceptionWithTelemetry(
this.app.logger, this.app.logger,
@@ -806,6 +784,20 @@ export class ModelEditorView extends AbstractWebview<
); );
} }
private addModeledMethodsFromArray(modeledMethods: ModeledMethod[]) {
const modeledMethodsByName: Record<string, ModeledMethod[]> = {};
for (const modeledMethod of modeledMethods) {
if (!(modeledMethod.signature in modeledMethodsByName)) {
modeledMethodsByName[modeledMethod.signature] = [];
}
modeledMethodsByName[modeledMethod.signature].push(modeledMethod);
}
this.addModeledMethods(modeledMethodsByName);
}
private setModeledMethods(signature: string, methods: ModeledMethod[]) { private setModeledMethods(signature: string, methods: ModeledMethod[]) {
this.modelingStore.updateModeledMethods( this.modelingStore.updateModeledMethods(
this.databaseItem, this.databaseItem,