diff --git a/src/Explorer/Graph/GraphExplorerComponent/GraphExplorerAdapter.tsx b/src/Explorer/Graph/GraphExplorerComponent/GraphExplorerAdapter.tsx deleted file mode 100644 index 77ab623fc..000000000 --- a/src/Explorer/Graph/GraphExplorerComponent/GraphExplorerAdapter.tsx +++ /dev/null @@ -1,63 +0,0 @@ -import * as React from "react"; -import { ReactAdapter } from "../../../Bindings/ReactBindingHandler"; -import { GraphConfig } from "../../Tabs/GraphTab"; -import * as ViewModels from "../../../Contracts/ViewModels"; -import { GraphExplorer, GraphAccessor } from "./GraphExplorer"; - -interface Parameter { - onIsNewVertexDisabledChange: (isEnabled: boolean) => void; - onGraphAccessorCreated: (instance: GraphAccessor) => void; - onIsFilterQueryLoading: (isFilterQueryLoading: boolean) => void; - onIsValidQuery: (isValidQuery: boolean) => void; - onIsPropertyEditing: (isEditing: boolean) => void; - onIsGraphDisplayed: (isDisplayed: boolean) => void; - onResetDefaultGraphConfigValues: () => void; - - graphConfigUiData: ViewModels.GraphConfigUiData; - graphConfig?: GraphConfig; - - collectionPartitionKeyProperty: string; - graphBackendEndpoint: string; - databaseId: string; - collectionId: string; - masterKey: string; - - onLoadStartKey: number; - onLoadStartKeyChange: (newKey: number) => void; - resourceId: string; -} - -export class GraphExplorerAdapter implements ReactAdapter { - public params: Parameter; - public parameters = {}; - public isNewVertexDisabled: boolean; - - public constructor(params: Parameter) { - this.params = params; - } - - public renderComponent(): JSX.Element { - return ( - - ); - } -} diff --git a/src/Explorer/Tabs/GraphTab.tsx b/src/Explorer/Tabs/GraphTab.tsx index 8a6712b67..3402b7275 100644 --- a/src/Explorer/Tabs/GraphTab.tsx +++ b/src/Explorer/Tabs/GraphTab.tsx @@ -5,8 +5,12 @@ import StyleIcon from "../../../images/Style.svg"; import { DatabaseAccount } from "../../Contracts/DataModels"; import * as ViewModels from "../../Contracts/ViewModels"; import { CommandButtonComponentProps } from "../Controls/CommandButton/CommandButtonComponent"; -import { GraphAccessor, GraphExplorerError } from "../Graph/GraphExplorerComponent/GraphExplorer"; -import { GraphExplorerAdapter } from "../Graph/GraphExplorerComponent/GraphExplorerAdapter"; +import { + GraphAccessor, + GraphExplorer, + GraphExplorerError, + GraphExplorerProps, +} from "../Graph/GraphExplorerComponent/GraphExplorer"; import { ContextualPaneBase } from "../Panes/ContextualPaneBase"; import GraphStylingPane from "../Panes/GraphStylingPane"; import { NewVertexPanel } from "../Panes/NewVertexPanel/NewVertexPanel"; @@ -36,15 +40,13 @@ interface GraphTabOptions extends ViewModels.TabOptions { } export default class GraphTab extends TabsBase { - public readonly html = - '
'; // Graph default configuration public static readonly DEFAULT_NODE_CAPTION = "id"; private static readonly LINK_COLOR = "#aaa"; private static readonly NODE_SIZE = 10; private static readonly NODE_COLOR = "orange"; private static readonly LINK_WIDTH = 1; - private graphExplorerAdapter: GraphExplorerAdapter; + private graphExplorerProps: GraphExplorerProps; private isNewVertexDisabled: ko.Observable; private isPropertyEditing: ko.Observable; private isGraphDisplayed: ko.Observable; @@ -70,7 +72,7 @@ export default class GraphTab extends TabsBase { this.graphConfig = GraphTab.createGraphConfig(); // TODO Merge this with this.graphConfig this.graphConfigUiData = GraphTab.createGraphConfigUiData(this.graphConfig); - this.graphExplorerAdapter = new GraphExplorerAdapter({ + this.graphExplorerProps = { onGraphAccessorCreated: (instance: GraphAccessor): void => { this.graphAccessor = instance; }, @@ -89,8 +91,9 @@ export default class GraphTab extends TabsBase { onResetDefaultGraphConfigValues: () => this.setDefaultGraphConfigValues(), graphConfig: this.graphConfig, graphConfigUiData: this.graphConfigUiData, - onIsFilterQueryLoading: (isFilterQueryLoading: boolean): void => this.isFilterQueryLoading(isFilterQueryLoading), - onIsValidQuery: (isValidQuery: boolean): void => this.isValidQuery(isValidQuery), + onIsFilterQueryLoadingChange: (isFilterQueryLoading: boolean): void => + this.isFilterQueryLoading(isFilterQueryLoading), + onIsValidQueryChange: (isValidQuery: boolean): void => this.isValidQuery(isValidQuery), collectionPartitionKeyProperty: options.collectionPartitionKeyProperty, graphBackendEndpoint: GraphTab.getGremlinEndpoint(options.account), databaseId: options.databaseId, @@ -103,7 +106,7 @@ export default class GraphTab extends TabsBase { } }, resourceId: options.account.id, - }); + }; this.isFilterQueryLoading = ko.observable(false); this.isValidQuery = ko.observable(true); @@ -115,6 +118,14 @@ export default class GraphTab extends TabsBase { : `${account.name}.graphs.azure.com:443/`; } + public render(): JSX.Element { + return ( +
+ +
+ ); + } + public onTabClick(): void { super.onTabClick(); this.collection.selectedSubnodeKind(ViewModels.CollectionTabKind.Graph);