Skip to content

Commit 595249a

Browse files
committed
Addning props and minor changes
1 parent 083b232 commit 595249a

File tree

4 files changed

+25
-14
lines changed

4 files changed

+25
-14
lines changed

extensions/ql-vscode/src/stories/method-modeling/MethodModeling.stories.tsx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,19 @@ import { Meta, StoryFn } from "@storybook/react";
44

55
import { MethodModeling as MethodModelingComponent } from "../../view/method-modeling/MethodModeling";
66
export default {
7-
title: "Method Modeling / Method Modelin",
7+
title: "Method Modeling/Method Modeling",
88
component: MethodModelingComponent,
99
} as Meta<typeof MethodModelingComponent>;
1010

11-
const Template: StoryFn<typeof MethodModelingComponent> = () => (
12-
<MethodModelingComponent />
11+
const Template: StoryFn<typeof MethodModelingComponent> = (args) => (
12+
<MethodModelingComponent {...args} />
1313
);
1414

1515
export const MethodUnmodeled = Template.bind({});
16-
MethodUnmodeled.args = {};
16+
MethodUnmodeled.args = { modelingStatus: "unmodeled" };
1717

1818
export const MethodModeled = Template.bind({});
19-
MethodModeled.args = {};
19+
MethodModeled.args = { modelingStatus: "unsaved" };
2020

2121
export const MethodSaved = Template.bind({});
22-
MethodSaved.args = {};
22+
MethodSaved.args = { modelingStatus: "saved" };

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

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
import * as React from "react";
22
import { styled } from "styled-components";
3-
import { ModelingStatusIndicator } from "../model-editor/ModelingStatusIndicator";
3+
import {
4+
ModelingStatus,
5+
ModelingStatusIndicator,
6+
} from "../model-editor/ModelingStatusIndicator";
47

58
const Container = styled.div`
69
background-color: var(--vscode-peekViewResult-background);
@@ -22,13 +25,18 @@ const DependencyName = styled.span`
2225
font-family: var(--vscode-editor-font-family);
2326
`;
2427

25-
export const MethodModeling = (): JSX.Element => {
28+
export type MethodModelingProps = {
29+
modelingStatus: ModelingStatus;
30+
};
31+
32+
export const MethodModeling = (props: MethodModelingProps) => {
33+
const { modelingStatus } = props;
2634
return (
2735
<Container>
2836
<Title>API or Method</Title>
2937
<DependencyBox>
3038
<DependencyName>that.dependency.THENAME</DependencyName>
31-
<ModelingStatusIndicator status="unmodeled" />
39+
<ModelingStatusIndicator status={modelingStatus} />
3240
</DependencyBox>
3341
</Container>
3442
);

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

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import * as React from "react";
22
import { useEffect } from "react";
33
import { MethodModeling } from "./MethodModeling";
4+
import { ModelingStatus } from "../model-editor/ModelingStatusIndicator";
45

56
export function MethodModelingView(): JSX.Element {
67
useEffect(() => {
@@ -20,5 +21,6 @@ export function MethodModelingView(): JSX.Element {
2021
};
2122
}, []);
2223

23-
return <MethodModeling />;
24+
const modelingStatus: ModelingStatus = "saved";
25+
return <MethodModeling {...{ modelingStatus }} />;
2426
}

extensions/ql-vscode/src/view/method-modeling/__tests__/MethodModeling.spec.tsx

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
import * as React from "react";
22
import { render as reactRender, screen } from "@testing-library/react";
3-
import { MethodModeling } from "../MethodModeling";
3+
import { MethodModeling, MethodModelingProps } from "../MethodModeling";
44

55
describe(MethodModeling.name, () => {
6-
const render = () => reactRender(<MethodModeling />);
6+
const render = (props: MethodModelingProps) =>
7+
reactRender(<MethodModeling {...props} />);
78

8-
it("renders data flow paths", () => {
9-
render();
9+
it("renders method modeling panel", () => {
10+
render({ modelingStatus: "saved" });
1011

1112
expect(screen.getByText("that.dependency.THENAME")).toBeInTheDocument();
1213
});

0 commit comments

Comments
 (0)