import "./cluster-manager.scss" import React from "react"; import { WebviewTag } from "electron"; import { Redirect, Route, Switch } from "react-router"; import { observable, reaction } from "mobx"; import { disposeOnUnmount, observer } from "mobx-react"; import { clusterIpc } from "../../../common/cluster-ipc"; import { cssNames } from "../../utils"; import { ClustersMenu } from "./clusters-menu"; import { BottomBar } from "./bottom-bar"; import { LandingPage, landingRoute, landingURL } from "../+landing-page"; import { Preferences, preferencesRoute } from "../+preferences"; import { Workspaces, workspacesRoute } from "../+workspaces"; import { AddCluster, addClusterRoute } from "../+add-cluster"; import { ClusterView } from "./cluster-view"; import { clusterViewRoute, clusterViewURL, getMatchedCluster, getMatchedClusterId } from "./cluster-view.route"; import { ClusterId, clusterStore } from "../../../common/cluster-store"; import logger from "../../../main/logger"; interface LensView { isLoaded?: boolean clusterId: ClusterId; view: WebviewTag } const lensViews = observable.map(); export function hasLoadedView(clusterId: ClusterId): boolean { return !!lensViews.get(clusterId)?.isLoaded; } // todo: figure out how to replace -tag to