mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
Move updateChecker into InstalledExtension type
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
This commit is contained in:
parent
518702c127
commit
bc0ca6c3a0
@ -24,6 +24,7 @@ import type { LensExtensionId, LensExtensionManifest } from "../lens-extension";
|
|||||||
import { isProduction } from "../../common/vars";
|
import { isProduction } from "../../common/vars";
|
||||||
import type { ExtensionInstallationStateStore } from "../extension-installation-state-store/extension-installation-state-store";
|
import type { ExtensionInstallationStateStore } from "../extension-installation-state-store/extension-installation-state-store";
|
||||||
import type { PackageJson } from "type-fest";
|
import type { PackageJson } from "type-fest";
|
||||||
|
import type { LensExtensionUpdateChecker } from "../lens-extension-update-checker";
|
||||||
|
|
||||||
interface Dependencies {
|
interface Dependencies {
|
||||||
extensionLoader: ExtensionLoader;
|
extensionLoader: ExtensionLoader;
|
||||||
@ -57,6 +58,7 @@ export interface InstalledExtension {
|
|||||||
version: string;
|
version: string;
|
||||||
input: string;
|
input: string;
|
||||||
}
|
}
|
||||||
|
updateChecker?: LensExtensionUpdateChecker
|
||||||
}
|
}
|
||||||
|
|
||||||
const logModule = "[EXTENSION-DISCOVERY]";
|
const logModule = "[EXTENSION-DISCOVERY]";
|
||||||
|
|||||||
@ -8,12 +8,11 @@ import {
|
|||||||
LensExtensionDependencies,
|
LensExtensionDependencies,
|
||||||
setLensExtensionDependencies,
|
setLensExtensionDependencies,
|
||||||
} from "../../lens-extension-set-dependencies";
|
} from "../../lens-extension-set-dependencies";
|
||||||
import type { LensExtensionUpdateChecker } from "../../lens-extension-update-checker";
|
|
||||||
|
|
||||||
export const createExtensionInstance =
|
export const createExtensionInstance =
|
||||||
(dependencies: LensExtensionDependencies) =>
|
(dependencies: LensExtensionDependencies) =>
|
||||||
(ExtensionClass: LensExtensionConstructor, extension: InstalledExtension, updateChecker?: LensExtensionUpdateChecker) => {
|
(ExtensionClass: LensExtensionConstructor, extension: InstalledExtension) => {
|
||||||
const instance = new ExtensionClass(extension, updateChecker);
|
const instance = new ExtensionClass(extension);
|
||||||
|
|
||||||
instance[setLensExtensionDependencies](dependencies);
|
instance[setLensExtensionDependencies](dependencies);
|
||||||
|
|
||||||
|
|||||||
@ -27,7 +27,7 @@ const logModule = "[EXTENSIONS-LOADER]";
|
|||||||
|
|
||||||
interface Dependencies {
|
interface Dependencies {
|
||||||
updateExtensionsState: (extensionsState: Record<LensExtensionId, LensExtensionState>) => void
|
updateExtensionsState: (extensionsState: Record<LensExtensionId, LensExtensionState>) => void
|
||||||
createExtensionInstance: (ExtensionClass: LensExtensionConstructor, extension: InstalledExtension, updateChecker: LensExtensionUpdateChecker) => LensExtension,
|
createExtensionInstance: (ExtensionClass: LensExtensionConstructor, extension: InstalledExtension) => LensExtension,
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface ExtensionLoading {
|
export interface ExtensionLoading {
|
||||||
@ -354,8 +354,10 @@ export class ExtensionLoader {
|
|||||||
// const instance = new LensExtensionClass(extension, this.extensionUpdateChecker);
|
// const instance = new LensExtensionClass(extension, this.extensionUpdateChecker);
|
||||||
const instance = this.dependencies.createExtensionInstance(
|
const instance = this.dependencies.createExtensionInstance(
|
||||||
LensExtensionClass,
|
LensExtensionClass,
|
||||||
extension,
|
{
|
||||||
this.extensionUpdateChecker,
|
...extension,
|
||||||
|
updateChecker: this.extensionUpdateChecker
|
||||||
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
this.instances.set(extId, instance);
|
this.instances.set(extId, instance);
|
||||||
|
|||||||
@ -45,7 +45,7 @@ export class LensExtension {
|
|||||||
|
|
||||||
[Disposers] = disposer();
|
[Disposers] = disposer();
|
||||||
|
|
||||||
constructor({ id, manifest, manifestPath, isBundled }: InstalledExtension, updateChecker?: LensExtensionUpdateChecker) {
|
constructor({ id, manifest, manifestPath, isBundled, updateChecker }: InstalledExtension) {
|
||||||
makeObservable(this);
|
makeObservable(this);
|
||||||
this.id = id;
|
this.id = id;
|
||||||
this.manifest = manifest;
|
this.manifest = manifest;
|
||||||
|
|||||||
@ -22,8 +22,6 @@ export class BundledExtensionsUpdater extends ExtensionUpdater {
|
|||||||
this.dependencies.ipcRenderer.on(UpdateBundledExtension, async (event, extensionId: string) => {
|
this.dependencies.ipcRenderer.on(UpdateBundledExtension, async (event, extensionId: string) => {
|
||||||
const extension = this.dependencies.extensions.find(extension => extension.id == extensionId);
|
const extension = this.dependencies.extensions.find(extension => extension.id == extensionId);
|
||||||
|
|
||||||
console.log({extension})
|
|
||||||
|
|
||||||
if (extension?.isBundled && extension?.availableUpdate) {
|
if (extension?.isBundled && extension?.availableUpdate) {
|
||||||
try {
|
try {
|
||||||
await this.update(extension);
|
await this.update(extension);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user