mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
single package ftw
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
This commit is contained in:
parent
95e5d615e8
commit
03b1d0ffc4
@ -1,4 +1,4 @@
|
||||
import { LensMainExtension } from "@k8slens/core-extensions";
|
||||
import { LensMainExtension } from "@k8slens/extensions";
|
||||
|
||||
export default class ExampleExtensionMain extends LensMainExtension {
|
||||
onActivate() {
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
import { LensRendererExtension } from "@k8slens/core-extensions";
|
||||
import { Component } from "@k8slens/renderer-extensions";
|
||||
import { LensRendererExtension, Component } from "@k8slens/extensions";
|
||||
import { CoffeeDoodle } from "react-open-doodles";
|
||||
import path from "path";
|
||||
import React from "react"
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import { LensRendererExtension, Registry } from "@k8slens/core-extensions";
|
||||
import { LensRendererExtension, Registry } from "@k8slens/extensions";
|
||||
import { ExamplePage, ExampleIcon } from "./page"
|
||||
import React from "react"
|
||||
|
||||
|
||||
@ -17,7 +17,7 @@ module.exports = [
|
||||
},
|
||||
externals: [
|
||||
{
|
||||
"@k8slens/core-extensions": "var global.LensCoreExtensions",
|
||||
"@k8slens/extensions": "var global.LensExtensions",
|
||||
"mobx": "var global.Mobx",
|
||||
"react": "var global.React"
|
||||
}
|
||||
@ -47,8 +47,7 @@ module.exports = [
|
||||
},
|
||||
externals: [
|
||||
{
|
||||
"@k8slens/renderer-extensions": "var global.LensRendererExtensions",
|
||||
"@k8slens/core-extensions": "var global.LensCoreExtensions",
|
||||
"@k8slens/extensions": "var global.LensExtensions",
|
||||
"react": "var global.React",
|
||||
"mobx": "var global.Mobx"
|
||||
}
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import { LensMainExtension } from "@k8slens/core-extensions";
|
||||
import { LensMainExtension } from "@k8slens/extensions";
|
||||
import { telemetryPreferencesStore } from "./src/telemetry-preferences-store"
|
||||
import { tracker } from "./src/tracker";
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import { LensRendererExtension, Registry } from "@k8slens/core-extensions";
|
||||
import { LensRendererExtension, Registry } from "@k8slens/extensions";
|
||||
import { telemetryPreferencesStore } from "./src/telemetry-preferences-store"
|
||||
import { TelemetryPreferenceHint, TelemetryPreferenceInput } from "./src/telemetry-preference"
|
||||
import { tracker } from "./src/tracker"
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import { Component } from "@k8slens/renderer-extensions"
|
||||
import { Component } from "@k8slens/extensions"
|
||||
import React from "react"
|
||||
import { observer } from "mobx-react";
|
||||
import { TelemetryPreferencesStore } from "./telemetry-preferences-store"
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import { Store } from "@k8slens/core-extensions";
|
||||
import { Store } from "@k8slens/extensions";
|
||||
import { toJS } from "mobx"
|
||||
|
||||
export type TelemetryPreferencesModel = {
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import { EventBus, Util } from "@k8slens/core-extensions"
|
||||
import { EventBus, Util } from "@k8slens/extensions"
|
||||
import ua from "universal-analytics"
|
||||
import { machineIdSync } from "node-machine-id"
|
||||
import { telemetryPreferencesStore } from "./telemetry-preferences-store"
|
||||
|
||||
@ -17,7 +17,7 @@ module.exports = [
|
||||
},
|
||||
externals: [
|
||||
{
|
||||
"@k8slens/core-extensions": "var global.LensCoreExtensions",
|
||||
"@k8slens/extensions": "var global.LensExtensions",
|
||||
"react": "var global.React",
|
||||
"mobx": "var global.Mobx"
|
||||
}
|
||||
@ -48,8 +48,7 @@ module.exports = [
|
||||
},
|
||||
externals: [
|
||||
{
|
||||
"@k8slens/renderer-extensions": "var global.LensRendererExtensions",
|
||||
"@k8slens/core-extensions": "var global.LensCoreExtensions",
|
||||
"@k8slens/extensions": "var global.LensExtensions",
|
||||
"react": "var global.React",
|
||||
"mobx": "var global.Mobx",
|
||||
"mobx-react": "var global.MobxReact"
|
||||
|
||||
@ -56,13 +56,17 @@ export class BaseStore<T = any> extends Singleton {
|
||||
...confOptions,
|
||||
projectName: "lens",
|
||||
projectVersion: getAppVersion(),
|
||||
cwd: (app || remote.app).getPath("userData"),
|
||||
cwd: this.storePath(),
|
||||
});
|
||||
logger.info(`[STORE]: LOADED from ${this.storeConfig.path}`);
|
||||
this.fromStore(this.storeConfig.store);
|
||||
this.isLoaded = true;
|
||||
}
|
||||
|
||||
protected storePath() {
|
||||
return (app || remote.app).getPath("userData")
|
||||
}
|
||||
|
||||
protected async saveToFile(model: T) {
|
||||
logger.info(`[STORE]: SAVING ${this.name}`);
|
||||
// todo: update when fixed https://github.com/sindresorhus/conf/issues/114
|
||||
|
||||
2
src/extensions/extension-api.ts
Normal file
2
src/extensions/extension-api.ts
Normal file
@ -0,0 +1,2 @@
|
||||
export * from "./core-extension-api"
|
||||
export * from "./renderer-extension-api"
|
||||
@ -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,7 +1,7 @@
|
||||
{
|
||||
"name": "@k8slens/core-extensions",
|
||||
"productName": "Lens core extensions",
|
||||
"description": "Lens - The Kubernetes IDE: core extensions",
|
||||
"name": "@k8slens/extensions",
|
||||
"productName": "Lens extensions",
|
||||
"description": "Lens - The Kubernetes IDE: extensions",
|
||||
"version": "0.0.0",
|
||||
"copyright": "© 2020, Mirantis, Inc.",
|
||||
"license": "MIT",
|
||||
@ -1 +0,0 @@
|
||||
api.d.ts
|
||||
@ -1,15 +0,0 @@
|
||||
{
|
||||
"name": "@k8slens/renderer-extensions",
|
||||
"productName": "Lens renderer extensions",
|
||||
"description": "Lens - The Kubernetes IDE: renderer extensions",
|
||||
"version": "0.0.0",
|
||||
"copyright": "© 2020, Mirantis, Inc.",
|
||||
"license": "MIT",
|
||||
"files": [
|
||||
"api.d.ts"
|
||||
],
|
||||
"author": {
|
||||
"name": "Mirantis, Inc.",
|
||||
"email": "info@k8slens.dev"
|
||||
}
|
||||
}
|
||||
1
src/extensions/renderer-api/navigation.ts
Normal file
1
src/extensions/renderer-api/navigation.ts
Normal file
@ -0,0 +1 @@
|
||||
export { navigate } from "../../renderer/navigation"
|
||||
@ -1,6 +1,3 @@
|
||||
// Lens-extensions api developer's kit
|
||||
export type { LensExtensionRuntimeEnv } from "./lens-renderer-runtime"
|
||||
|
||||
// APIs
|
||||
import * as Component from "./renderer-api/components"
|
||||
import * as K8sApi from "./renderer-api/k8s-api"
|
||||
|
||||
@ -8,26 +8,13 @@ import dts from "rollup-plugin-dts";
|
||||
import ignoreImport from 'rollup-plugin-ignore-import'
|
||||
|
||||
const config: RollupOptions = {
|
||||
input: "src/extensions/core-extension-api.ts",
|
||||
input: "src/extensions/extension-api.ts",
|
||||
output: [
|
||||
{ file: "src/extensions/npm/core-extensions/api.d.ts", format: "es", }
|
||||
],
|
||||
plugins: [
|
||||
dts(),
|
||||
dtsModuleWrap({ name: "@k8slens/core-extensions" }),
|
||||
ignoreImport({ extensions: ['.scss'] }),
|
||||
json(),
|
||||
],
|
||||
};
|
||||
|
||||
const rendererConfig: RollupOptions = {
|
||||
input: "src/extensions/renderer-extension-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];
|
||||
|
||||
@ -17,7 +17,7 @@ import { clusterStore } from "../common/cluster-store"
|
||||
import { userStore } from "../common/user-store";
|
||||
import { workspaceStore } from "../common/workspace-store";
|
||||
import { appEventBus } from "../common/event-bus"
|
||||
import * as LensCoreExtensions from "../extensions/core-extension-api";
|
||||
import * as LensExtensions from "../extensions/core-extension-api";
|
||||
import { extensionManager } from "../extensions/extension-manager";
|
||||
import { extensionLoader } from "../extensions/extension-loader";
|
||||
import { getLensRuntime } from "../extensions/lens-runtime";
|
||||
@ -25,7 +25,7 @@ import logger from "./logger"
|
||||
import * as Mobx from "mobx"
|
||||
|
||||
export {
|
||||
LensCoreExtensions,
|
||||
LensExtensions,
|
||||
Mobx
|
||||
}
|
||||
|
||||
|
||||
@ -2,8 +2,7 @@ import "./components/app.scss"
|
||||
import React from "react";
|
||||
import * as Mobx from "mobx"
|
||||
import * as MobxReact from "mobx-react"
|
||||
import * as LensCoreExtensions from "../extensions/core-extension-api"
|
||||
import * as LensRendererExtensions from "../extensions/renderer-extension-api"
|
||||
import * as LensExtensions from "../extensions/extension-api"
|
||||
import { render, unmountComponentAtNode } from "react-dom";
|
||||
import { isMac } from "../common/vars";
|
||||
import { userStore } from "../common/user-store";
|
||||
@ -22,8 +21,7 @@ export {
|
||||
React,
|
||||
Mobx,
|
||||
MobxReact,
|
||||
LensRendererExtensions,
|
||||
LensCoreExtensions
|
||||
LensExtensions
|
||||
}
|
||||
|
||||
export async function bootstrap(App: AppComponent) {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user