1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00

revert extension-discovery.ts

Signed-off-by: Sebastian Malton <sebastian@malton.name>
This commit is contained in:
Sebastian Malton 2021-05-27 08:38:38 -04:00
parent 9f491b091a
commit 076a01fce6

View File

@ -30,7 +30,7 @@ import { broadcastMessage, handleRequest, requestMain, subscribeToBroadcast } fr
import { Singleton, toJS } from "../common/utils"; import { Singleton, toJS } from "../common/utils";
import logger from "../main/logger"; import logger from "../main/logger";
import { ExtensionInstallationStateStore } from "../renderer/components/+extensions/extension-install.store"; import { ExtensionInstallationStateStore } from "../renderer/components/+extensions/extension-install.store";
import { extensionInstaller } from "./extension-installer"; import { extensionInstaller, PackageJson } from "./extension-installer";
import { ExtensionsStore } from "./extensions-store"; import { ExtensionsStore } from "./extensions-store";
import { ExtensionLoader } from "./extension-loader"; import { ExtensionLoader } from "./extension-loader";
import type { LensExtensionId, LensExtensionManifest } from "./lens-extension"; import type { LensExtensionId, LensExtensionManifest } from "./lens-extension";
@ -387,19 +387,24 @@ export class ExtensionDiscovery extends Singleton {
await this.installPackage(extension.absolutePath); await this.installPackage(extension.absolutePath);
} }
} }
const extensions = bundledExtensions.concat(userExtensions);
return this.extensions = new Map(bundledExtensions.concat(userExtensions).map(extension => [extension.id, extension])); return this.extensions = new Map(extensions.map(extension => [extension.id, extension]));
} }
/** /**
* Write package.json to file system and install dependencies. * Write package.json to file system and install dependencies.
*/ */
installBundledPackages(packageJsonPath: string, extensions: InstalledExtension[]) { async installBundledPackages(packageJsonPath: string, extensions: InstalledExtension[]) {
const dependencies = Object.fromEntries( const packagesJson: PackageJson = {
extensions.map(extension => [extension.manifest.name, extension.absolutePath]) dependencies: {}
); };
return extensionInstaller.installPackages(packageJsonPath, { dependencies }); extensions.forEach((extension) => {
packagesJson.dependencies[extension.manifest.name] = extension.absolutePath;
});
return await extensionInstaller.installPackages(packageJsonPath, packagesJson);
} }
async installPackage(name: string) { async installPackage(name: string) {