mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
fix: support-page extension
Signed-off-by: Roman <ixrock@gmail.com>
This commit is contained in:
parent
9b55a5fd0a
commit
296ba9023f
@ -1,13 +1,13 @@
|
|||||||
import { LensMainExtension, windowManager } from "@k8slens/extensions";
|
import { LensMainExtension, windowManager } from "@k8slens/extensions";
|
||||||
import { supportPageURL } from "./src/support.route";
|
import { pageUrl } from "./src/common-vars";
|
||||||
|
|
||||||
export default class SupportPageMainExtension extends LensMainExtension {
|
export default class SupportPageMainExtension extends LensMainExtension {
|
||||||
appMenus = [
|
appMenus = [
|
||||||
{
|
{
|
||||||
parentId: "help",
|
parentId: "help",
|
||||||
label: "Support",
|
label: "Support",
|
||||||
click() {
|
click: () => {
|
||||||
windowManager.navigate(supportPageURL());
|
windowManager.navigate(this.getPageUrl(pageUrl)); // todo: simplify
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
6
extensions/support-page/package-lock.json
generated
6
extensions/support-page/package-lock.json
generated
@ -26,6 +26,12 @@
|
|||||||
"integrity": "sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw==",
|
"integrity": "sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"@types/node": {
|
||||||
|
"version": "14.14.7",
|
||||||
|
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.7.tgz",
|
||||||
|
"integrity": "sha512-Zw1vhUSQZYw+7u5dAwNbIA9TuTotpzY/OF7sJM9FqPOF3SPjKnxrjoTktXDZgUjybf4cWVBP7O8wvKdSaGHweg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"@types/prop-types": {
|
"@types/prop-types": {
|
||||||
"version": "15.7.3",
|
"version": "15.7.3",
|
||||||
"resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.3.tgz",
|
"resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.3.tgz",
|
||||||
|
|||||||
@ -1,28 +1,26 @@
|
|||||||
import React from "react";
|
import React from "react";
|
||||||
import { Component, LensRendererExtension, Navigation } from "@k8slens/extensions";
|
import { Component, Interface, LensRendererExtension, Navigation } from "@k8slens/extensions";
|
||||||
import { supportPageRoute, supportPageURL } from "./src/support.route";
|
|
||||||
import { Support } from "./src/support";
|
import { Support } from "./src/support";
|
||||||
|
import { pageRoute, pageUrl } from "./src/common-vars";
|
||||||
|
|
||||||
export default class SupportPageRendererExtension extends LensRendererExtension {
|
export default class SupportPageRendererExtension extends LensRendererExtension {
|
||||||
// globalPages = [
|
globalPages: Interface.PageRegistration[] = [
|
||||||
// {
|
{
|
||||||
// ...supportPageRoute,
|
routePath: pageRoute,
|
||||||
// url: supportPageURL(),
|
components: {
|
||||||
// hideInMenu: true,
|
Page: Support,
|
||||||
// components: {
|
}
|
||||||
// Page: Support,
|
}
|
||||||
// }
|
]
|
||||||
// }
|
|
||||||
// ]
|
|
||||||
|
|
||||||
statusBarItems = [
|
statusBarItems = [
|
||||||
{
|
{
|
||||||
item: (
|
item: (
|
||||||
<div
|
<div
|
||||||
className="flex align-center gaps hover-highlight"
|
className="flex align-center gaps hover-highlight"
|
||||||
onClick={() => Navigation.navigate(supportPageURL())}
|
onClick={() => Navigation.navigate(this.getPageUrl(pageUrl))}
|
||||||
>
|
>
|
||||||
<Component.Icon material="help" smallest />
|
<Component.Icon material="help" smallest/>
|
||||||
</div>
|
</div>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
4
extensions/support-page/src/common-vars.ts
Normal file
4
extensions/support-page/src/common-vars.ts
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
// Common variables for both processes (main & renderer)
|
||||||
|
|
||||||
|
export const pageRoute = "/support"
|
||||||
|
export const pageUrl = pageRoute; // same since no special :placeholder-s for react-router's route
|
||||||
@ -1,7 +0,0 @@
|
|||||||
import type { RouteProps } from "react-router";
|
|
||||||
|
|
||||||
export const supportPageRoute: RouteProps = {
|
|
||||||
path: "/support"
|
|
||||||
}
|
|
||||||
|
|
||||||
export const supportPageURL = () => supportPageRoute.path.toString();
|
|
||||||
@ -241,6 +241,7 @@
|
|||||||
"openid-client": "^3.15.2",
|
"openid-client": "^3.15.2",
|
||||||
"path-to-regexp": "^6.1.0",
|
"path-to-regexp": "^6.1.0",
|
||||||
"proper-lockfile": "^4.1.1",
|
"proper-lockfile": "^4.1.1",
|
||||||
|
"react-router": "^5.2.0",
|
||||||
"request": "^2.88.2",
|
"request": "^2.88.2",
|
||||||
"request-promise-native": "^1.0.8",
|
"request-promise-native": "^1.0.8",
|
||||||
"semver": "^7.3.2",
|
"semver": "^7.3.2",
|
||||||
@ -365,7 +366,6 @@
|
|||||||
"react-beautiful-dnd": "^13.0.0",
|
"react-beautiful-dnd": "^13.0.0",
|
||||||
"react-dom": "^16.13.1",
|
"react-dom": "^16.13.1",
|
||||||
"react-refresh": "^0.9.0",
|
"react-refresh": "^0.9.0",
|
||||||
"react-router": "^5.2.0",
|
|
||||||
"react-router-dom": "^5.2.0",
|
"react-router-dom": "^5.2.0",
|
||||||
"react-select": "^3.1.0",
|
"react-select": "^3.1.0",
|
||||||
"react-window": "^1.8.5",
|
"react-window": "^1.8.5",
|
||||||
|
|||||||
@ -15,7 +15,7 @@ export interface LensExtensionManifest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export class LensExtension {
|
export class LensExtension {
|
||||||
readonly routePrefix = "/extensions/:name"
|
readonly routePrefix = "/extension/:name"
|
||||||
readonly manifest: LensExtensionManifest;
|
readonly manifest: LensExtensionManifest;
|
||||||
readonly manifestPath: string;
|
readonly manifestPath: string;
|
||||||
readonly isBundled: boolean;
|
readonly isBundled: boolean;
|
||||||
@ -45,11 +45,11 @@ export class LensExtension {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getPageUrl(baseUrl: string) {
|
getPageUrl(baseUrl: string) {
|
||||||
return compile(this.routePrefix)({ name: this.name }) + "/" + baseUrl
|
return compile(this.routePrefix)({ name: this.name }) + baseUrl
|
||||||
}
|
}
|
||||||
|
|
||||||
getPageRoute(baseRoute: string) {
|
getPageRoute(baseRoute: string) {
|
||||||
return this.routePrefix + "/" + baseRoute;
|
return this.routePrefix + baseRoute;
|
||||||
}
|
}
|
||||||
|
|
||||||
@action
|
@action
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user