Skip to content

Commit a704cd7

Browse files
Convert getModelingStatus to take ModeledMethod[]
1 parent e75eccb commit a704cd7

4 files changed

Lines changed: 13 additions & 6 deletions

File tree

extensions/ql-vscode/src/model-editor/methods-usage/methods-usage-data-provider.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,10 @@ export class MethodsUsageDataProvider
102102
const modeledMethod = this.modeledMethods[method.signature];
103103
const modifiedMethod = this.modifiedMethodSignatures.has(method.signature);
104104

105-
const status = getModelingStatus(modeledMethod, modifiedMethod);
105+
const status = getModelingStatus(
106+
modeledMethod ? [modeledMethod] : [],
107+
modifiedMethod,
108+
);
106109
switch (status) {
107110
case "unmodeled":
108111
return new ThemeIcon("error", new ThemeColor("errorForeground"));

extensions/ql-vscode/src/model-editor/shared/modeling-status.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@ import { ModeledMethod } from "../modeled-method";
33
export type ModelingStatus = "unmodeled" | "unsaved" | "saved";
44

55
export function getModelingStatus(
6-
modeledMethod: ModeledMethod | undefined,
6+
modeledMethods: ModeledMethod[],
77
methodIsUnsaved: boolean,
88
): ModelingStatus {
9-
if (modeledMethod) {
9+
if (modeledMethods.length > 0) {
1010
if (methodIsUnsaved) {
1111
return "unsaved";
12-
} else if (modeledMethod.type !== "none") {
12+
} else if (modeledMethods.some((m) => m.type !== "none")) {
1313
return "saved";
1414
}
1515
}

extensions/ql-vscode/src/view/method-modeling/MethodModelingView.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,8 @@ export function MethodModelingView(): JSX.Element {
1818
const [isMethodModified, setIsMethodModified] = useState<boolean>(false);
1919

2020
const modelingStatus = useMemo(
21-
() => getModelingStatus(modeledMethod, isMethodModified),
21+
() =>
22+
getModelingStatus(modeledMethod ? [modeledMethod] : [], isMethodModified),
2223
[modeledMethod, isMethodModified],
2324
);
2425

extensions/ql-vscode/src/view/model-editor/MethodRow.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,10 @@ const ModelableMethodRow = forwardRef<HTMLElement | undefined, MethodRowProps>(
101101
[method],
102102
);
103103

104-
const modelingStatus = getModelingStatus(modeledMethod, methodIsUnsaved);
104+
const modelingStatus = getModelingStatus(
105+
modeledMethod ? [modeledMethod] : [],
106+
methodIsUnsaved,
107+
);
105108

106109
return (
107110
<DataGridRow

0 commit comments

Comments
 (0)