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

Add extensionId to AppPreferencesRegistration items

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
This commit is contained in:
Alex Andreev 2021-12-28 15:13:04 +03:00
parent 41aacb3db2
commit 67df2ce127
2 changed files with 5 additions and 2 deletions

View File

@ -259,7 +259,7 @@ export class ExtensionLoader {
return this.autoInitExtensions(async (extension: LensRendererExtension) => {
const removeItems = [
registries.GlobalPageRegistry.getInstance().add(extension.globalPages, extension),
registries.AppPreferenceRegistry.getInstance().add(extension.appPreferences),
registries.AppPreferenceRegistry.getInstance().add(extension.appPreferences, extension),
registries.EntitySettingRegistry.getInstance().add(extension.entitySettings),
registries.StatusBarRegistry.getInstance().add(extension.statusBarItems),
registries.CommandRegistry.getInstance().add(extension.commands),

View File

@ -20,6 +20,7 @@
*/
import type React from "react";
import type { LensExtension } from "../lens-extension";
import { BaseRegistry } from "./base-registry";
export interface AppPreferenceComponents {
@ -29,6 +30,7 @@ export interface AppPreferenceComponents {
export interface AppPreferenceRegistration {
title: string;
extensionId: string;
id?: string;
showInPreferencesTab?: string;
components: AppPreferenceComponents;
@ -39,8 +41,9 @@ export interface RegisteredAppPreference extends AppPreferenceRegistration {
}
export class AppPreferenceRegistry extends BaseRegistry<AppPreferenceRegistration, RegisteredAppPreference> {
getRegisteredItem(item: AppPreferenceRegistration): RegisteredAppPreference {
getRegisteredItem(item: AppPreferenceRegistration, extension: LensExtension): RegisteredAppPreference {
return {
extensionId: extension.id,
id: item.id || item.title.toLowerCase().replace(/[^0-9a-zA-Z]+/g, "-"),
...item,
};