mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
1 parent
3b65009fb6
commit
b79f906ad5
2 files changed
+62
-68
No files matched your search
@@ -35,6 +35,15 @@ import type { IComputedValue } from "mobx";
|
||||
import type { NavigateToRoute } from "../common/front-end-routing/navigate-to-route-injection-token";
|
||||
import type { Route } from "../common/front-end-routing/front-end-route-injection-token";
|
||||
import type { GetExtensionPageParameters } from "../renderer/routes/get-extension-page-parameters.injectable";
|
||||
import type { InstalledExtension } from "./common-api";
|
||||
import { Environments, getEnvironmentSpecificLegacyGlobalDiForExtensionApi } from "./as-legacy-globals-for-extension-api/legacy-global-di-for-extension-api";
|
||||
import catalogCategoryRegistryInjectable from "../common/catalog/category-registry.injectable";
|
||||
import catalogEntityRegistryInjectable from "../renderer/api/catalog/entity/registry.injectable";
|
||||
import loggerInjectable from "../common/logger.injectable";
|
||||
import getExtensionPageParametersInjectable from "../renderer/routes/get-extension-page-parameters.injectable";
|
||||
import navigateToRouteInjectable from "../renderer/routes/navigate-to-route.injectable";
|
||||
import routesInjectable from "../renderer/routes/routes.injectable";
|
||||
import fileSystemProvisionerStoreInjectable from "./extension-loader/file-system-provisioner-store/file-system-provisioner-store.injectable";
|
||||
|
||||
interface LensRendererExtensionDependencies extends LensExtensionDependencies {
|
||||
navigateToRoute: NavigateToRoute;
|
||||
@@ -71,6 +80,21 @@ export class LensRendererExtension extends LensExtension {
|
||||
*/
|
||||
declare protected readonly dependencies: LensRendererExtensionDependencies;
|
||||
|
||||
constructor(extension: InstalledExtension) {
|
||||
const di = getEnvironmentSpecificLegacyGlobalDiForExtensionApi(Environments.renderer);
|
||||
const deps: LensRendererExtensionDependencies = {
|
||||
categoryRegistry: di.inject(catalogCategoryRegistryInjectable),
|
||||
entityRegistry: di.inject(catalogEntityRegistryInjectable),
|
||||
fileSystemProvisionerStore: di.inject(fileSystemProvisionerStoreInjectable),
|
||||
getExtensionPageParameters: di.inject(getExtensionPageParametersInjectable),
|
||||
navigateToRoute: di.inject(navigateToRouteInjectable),
|
||||
routes: di.inject(routesInjectable),
|
||||
logger: di.inject(loggerInjectable),
|
||||
};
|
||||
|
||||
super(deps, extension);
|
||||
}
|
||||
|
||||
async navigate(pageId?: string, params: object = {}) {
|
||||
const routes = this.dependencies.routes.get();
|
||||
const targetRegistration = [...this.globalPages, ...this.clusterPages]
|
||||
|
||||
Reference in new issue
Block a user