diff --git a/src/extensions/lens-extension-set-dependencies.ts b/src/extensions/lens-extension-set-dependencies.ts index 0f06103af2..7b7c62597a 100644 --- a/src/extensions/lens-extension-set-dependencies.ts +++ b/src/extensions/lens-extension-set-dependencies.ts @@ -12,9 +12,11 @@ import type { CatalogEntityRegistry as RendererCatalogEntityRegistry } from "../ import type { GetExtensionPageParameters } from "../renderer/routes/get-extension-page-parameters.injectable"; import type { FileSystemProvisionerStore } from "./extension-loader/file-system-provisioner-store/file-system-provisioner-store"; import type { NavigateForExtension } from "../main/start-main-application/lens-window/navigate-for-extension.injectable"; +import type { Logger } from "../common/logger"; export interface LensExtensionDependencies { readonly fileSystemProvisionerStore: FileSystemProvisionerStore; + readonly logger: Logger; } export interface LensMainExtensionDependencies extends LensExtensionDependencies { diff --git a/src/extensions/lens-extension.ts b/src/extensions/lens-extension.ts index 4e15d0f3fe..831822fd2b 100644 --- a/src/extensions/lens-extension.ts +++ b/src/extensions/lens-extension.ts @@ -5,7 +5,6 @@ import type { InstalledExtension } from "./extension-discovery/extension-discovery"; import { action, computed, makeObservable, observable } from "mobx"; -import logger from "../main/logger"; import type { PackageJson } from "type-fest"; import { disposer } from "../common/utils"; import type { LensExtensionDependencies } from "./lens-extension-set-dependencies"; @@ -92,13 +91,8 @@ export class LensExtension { const instance = new ExtensionClass(extension) as LensMainExtension; - (instance as { [lensExtensionDependencies]: LensMainExtensionDependencies })[lensExtensionDependencies] = deps; + (instance as Writable)[lensExtensionDependencies] = deps; return instance; }; diff --git a/src/renderer/extension-loader/create-extension-instance.injectable.ts b/src/renderer/extension-loader/create-extension-instance.injectable.ts index 415da80a81..0f92440338 100644 --- a/src/renderer/extension-loader/create-extension-instance.injectable.ts +++ b/src/renderer/extension-loader/create-extension-instance.injectable.ts @@ -3,8 +3,9 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ import { getInjectable } from "@ogre-tools/injectable"; -import type { Mutable } from "type-fest"; +import type { Writable } from "type-fest"; import catalogCategoryRegistryInjectable from "../../common/catalog/category-registry.injectable"; +import loggerInjectable from "../../common/logger.injectable"; import { createExtensionInstanceInjectionToken } from "../../extensions/extension-loader/create-extension-instance.token"; import fileSystemProvisionerStoreInjectable from "../../extensions/extension-loader/file-system-provisioner-store/file-system-provisioner-store.injectable"; import { lensExtensionDependencies } from "../../extensions/lens-extension"; @@ -25,12 +26,13 @@ const createExtensionInstanceInjectable = getInjectable({ getExtensionPageParameters: di.inject(getExtensionPageParametersInjectable), navigateToRoute: di.inject(navigateToRouteInjectable), routes: di.inject(routesInjectable), + logger: di.inject(loggerInjectable), }; return (ExtensionClass, extension) => { const instance = new ExtensionClass(extension) as LensRendererExtension; - (instance as Mutable)[lensExtensionDependencies] = deps; + (instance as Writable)[lensExtensionDependencies] = deps; return instance; };