Extension store base class + rename main/renderer-extensions -> extensions (#1107)

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
This commit is contained in:
Jari Kolehmainen authored and GitHub committed 2020-10-21 13:55:50 +03:00
1 parent 8f8dd9eb45
commit 91bef77997
31 files changed
+95 -121

No files matched your search

File renamed without changes.
+2
View File
@@ -0,0 +1,2 @@
export type { DynamicPageType, PageRegistry } from "../page-registry"
export type { AppPreferenceRegistry } from "../app-preference-registry"
+1
View File
@@ -0,0 +1 @@
export { ExtensionStore } from "../extension-store"
File renamed without changes.
+17
View File
@@ -0,0 +1,17 @@
// Lens-extensions api developer's kit
export type { LensExtensionRuntimeEnv } from "./lens-runtime";
export * from "./lens-main-extension"
export * from "./lens-renderer-extension"
// APIs
import * as EventBus from "./core-api/event-bus"
import * as Store from "./core-api/stores"
import * as Util from "./core-api/utils"
import * as Registry from "./core-api/registries"
export {
EventBus,
Registry,
Store,
Util
}
+2 -14
View File
@@ -1,14 +1,2 @@
// Lens-extensions api developer's kit
export type { LensExtensionRuntimeEnv } from "./lens-runtime";
export * from "./lens-main-extension"
// APIs
import * as EventBus from "./main-api/event-bus"
import * as Store from "./main-api/stores"
import * as Util from "./main-api/utils"
export {
EventBus,
Store,
Util
}
export * from "./core-extension-api"
export * from "./renderer-extension-api"
-20
View File
@@ -1,20 +0,0 @@
// Lens-extensions api developer's kit
export type { LensExtensionRuntimeEnv } from "./lens-renderer-runtime"
// APIs
export * from "./lens-extension"
export * from "./lens-renderer-extension"
import * as Component from "./renderer-api/components"
import * as EventBus from "./main-api/event-bus"
import * as K8sApi from "./renderer-api/k8s-api"
import * as Registry from "./renderer-api/registries"
import * as Util from "./main-api/utils"
export {
Component,
EventBus,
K8sApi,
Registry,
Util
}
+21
View File
@@ -0,0 +1,21 @@
import { BaseStore } from "../common/base-store"
import * as path from "path"
import { LensExtension } from "./lens-extension"
export class ExtensionStore<T = any> extends BaseStore<T> {
protected extension: LensExtension
async loadExtension(extension: LensExtension) {
this.extension = extension
await super.load()
}
async load() {
if (!this.extension) { return }
await super.load()
}
protected storePath() {
return path.join(super.storePath(), "extension-store", this.extension.name)
}
}
-16
View File
@@ -1,16 +0,0 @@
// Lens extension runtime params available to renderer extensions after activation
import logger from "../main/logger";
import { navigate } from "../renderer/navigation";
export interface LensExtensionRuntimeEnv {
logger: typeof logger;
navigate: typeof navigate;
}
export function getLensRuntime(): LensExtensionRuntimeEnv {
return {
logger,
navigate
}
}
-1
View File
@@ -1 +0,0 @@
export { BaseStore } from "../../common/base-store"
@@ -1,5 +1,5 @@
{
"name": "@k8slens/main-extensions",
"name": "@k8slens/extensions",
"productName": "Lens extensions",
"description": "Lens - The Kubernetes IDE: extensions",
"version": "0.0.0",
@@ -1 +0,0 @@
api.d.ts
@@ -1,15 +0,0 @@
{
"name": "@k8slens/renderer-extensions",
"productName": "Lens extensions",
"description": "Lens - The Kubernetes IDE: extensions",
"version": "0.0.0",
"copyright": "© 2020, Mirantis, Inc.",
"license": "MIT",
"files": [
"api.d.ts"
],
"author": {
"name": "Mirantis, Inc.",
"email": "info@k8slens.dev"
}
}
@@ -0,0 +1 @@
export { navigate } from "../../renderer/navigation"
@@ -1,2 +0,0 @@
export { DynamicPageType, PageRegistry } from "../page-registry"
export { AppPreferenceRegistry } from "../app-preference-registry"
+10
View File
@@ -0,0 +1,10 @@
// APIs
import * as Component from "./renderer-api/components"
import * as K8sApi from "./renderer-api/k8s-api"
import * as Navigation from "./renderer-api/navigation"
export {
Component,
K8sApi,
Navigation,
}
+3 -16
View File
@@ -10,24 +10,11 @@ import ignoreImport from 'rollup-plugin-ignore-import'
const config: RollupOptions = {
input: "src/extensions/extension-api.ts",
output: [
{ file: "src/extensions/npm/main-extensions/api.d.ts", format: "es", }
{ file: "src/extensions/npm/extensions/api.d.ts", format: "es", }
],
plugins: [
dts(),
dtsModuleWrap({ name: "@k8slens/main-extensions" }),
ignoreImport({ extensions: ['.scss'] }),
json(),
],
};
const rendererConfig: RollupOptions = {
input: "src/extensions/extension-renderer-api.ts",
output: [
{ file: "src/extensions/npm/renderer-extensions/api.d.ts", format: "es", }
],
plugins: [
dts(),
dtsModuleWrap({ name: "@k8slens/renderer-extensions" }),
dtsModuleWrap({ name: "@k8slens/extensions" }),
ignoreImport({ extensions: ['.scss'] }),
json(),
],
@@ -67,4 +54,4 @@ function dtsModuleWrap({ name }: { name: string }): Plugin {
}
}
export default [config, rendererConfig];
export default [config];