migration additions -- part 3 (adding makeObservable to constructor)

Signed-off-by: Roman <ixrock@gmail.com>
This commit is contained in:
Roman committed 2021-04-20 13:45:35 +03:00
1 parent 95794af5b2
commit 08787dce1f
139 files changed
+732 -147

No files matched your search

+5 -2
View File
@@ -1,7 +1,7 @@
import fs from "fs";
import path from "path";
import hb from "handlebars";
import { observable } from "mobx";
import { observable, makeObservable } from "mobx";
import { ResourceApplier } from "../main/resource-applier";
import { KubernetesCluster } from "./core-api/stores";
import logger from "../main/logger";
@@ -22,7 +22,6 @@ export interface ClusterFeatureStatus {
}
export abstract class ClusterFeature {
/**
* this field sets the template parameters that are to be applied to any templated kubernetes resources that are to be installed for the feature.
* See the renderTemplates() method for more details
@@ -75,6 +74,10 @@ export abstract class ClusterFeature {
*/
abstract updateStatus(cluster: KubernetesCluster): Promise<ClusterFeatureStatus>;
constructor() {
makeObservable(this);
}
/**
* this is a helper method that conveniently applies kubernetes resources to the cluster.
*
+1 -3
View File
@@ -1,10 +1,8 @@
import { computed } from "mobx";
import { CatalogEntity } from "../../common/catalog-entity";
import { catalogEntityRegistry as registry } from "../../common/catalog-entity-registry";
export class CatalogEntityRegistry {
@computed getItemsForApiKind<T extends CatalogEntity>(apiVersion: string, kind: string): T[] {
getItemsForApiKind<T extends CatalogEntity>(apiVersion: string, kind: string): T[] {
return registry.getItemsForApiKind<T>(apiVersion, kind);
}
}
+3 -2
View File
@@ -2,7 +2,7 @@ import { watch } from "chokidar";
import { ipcRenderer } from "electron";
import { EventEmitter } from "events";
import fs from "fs-extra";
import { observable, reaction, toJS, when } from "mobx";
import { observable, reaction, toJS, when, makeObservable } from "mobx";
import os from "os";
import path from "path";
import { broadcastMessage, handleRequest, requestMain, subscribeToBroadcast } from "../common/ipc";
@@ -67,6 +67,7 @@ export class ExtensionDiscovery {
public events: EventEmitter;
constructor() {
makeObservable(this);
this.events = new EventEmitter();
}
@@ -351,7 +352,7 @@ export class ExtensionDiscovery {
const userExtensions = await this.loadFromFolder(this.localFolderPath);
for (const extension of userExtensions) {
if (await fs.pathExists(extension.manifestPath) === false) {
if ((await fs.pathExists(extension.manifestPath)) === false) {
await this.installPackage(extension.absolutePath);
}
}
+6 -2
View File
@@ -1,7 +1,7 @@
import { app, ipcRenderer, remote } from "electron";
import { EventEmitter } from "events";
import { isEqual } from "lodash";
import { action, computed, observable, reaction, toJS, when } from "mobx";
import { action, computed, observable, reaction, toJS, when, makeObservable } from "mobx";
import path from "path";
import { getHostedCluster } from "../common/cluster-store";
import { broadcastMessage, handleRequest, requestMain, subscribeToBroadcast } from "../common/ipc";
@@ -40,6 +40,10 @@ export class ExtensionLoader {
@observable isLoaded = false;
whenLoaded = when(() => this.isLoaded);
constructor() {
makeObservable(this);
}
@computed get userExtensions(): Map<LensExtensionId, InstalledExtension> {
const extensions = toJS(this.extensions);
@@ -234,7 +238,7 @@ export class ExtensionLoader {
const cluster = getHostedCluster();
this.autoInitExtensions(async (extension: LensRendererExtension) => {
if (await extension.isEnabledForCluster(cluster) === false) {
if ((await extension.isEnabledForCluster(cluster)) === false) {
return [];
}
+2 -1
View File
@@ -1,6 +1,6 @@
import type { LensExtensionId } from "./lens-extension";
import { BaseStore } from "../common/base-store";
import { action, computed, observable, toJS } from "mobx";
import { action, computed, observable, toJS, makeObservable } from "mobx";
export interface LensExtensionsStoreModel {
extensions: Record<LensExtensionId, LensExtensionState>;
@@ -16,6 +16,7 @@ export class ExtensionsStore extends BaseStore<LensExtensionsStoreModel> {
super({
configName: "lens-extensions",
});
makeObservable(this);
}
@computed
+2 -1
View File
@@ -1,5 +1,5 @@
import type { InstalledExtension } from "./extension-discovery";
import { action, observable, reaction } from "mobx";
import { action, observable, reaction, makeObservable } from "mobx";
import { filesystemProvisionerStore } from "../main/extension-filesystem";
import logger from "../main/logger";
import { ProtocolHandlerRegistration } from "./registries/protocol-handler-registry";
@@ -27,6 +27,7 @@ export class LensExtension {
@observable private isEnabled = false;
constructor({ id, manifest, manifestPath, isBundled }: InstalledExtension) {
makeObservable(this);
this.id = id;
this.manifest = manifest;
this.manifestPath = manifestPath;
+5 -1
View File
@@ -1,10 +1,14 @@
// Base class for extensions-api registries
import { action, observable } from "mobx";
import { action, observable, makeObservable } from "mobx";
import { LensExtension } from "../lens-extension";
export class BaseRegistry<T, I = T> {
private items = observable.map<T, I>();
constructor() {
makeObservable(this);
}
getItems(): I[] {
return Array.from(this.items.values());
}
@@ -1,7 +1,7 @@
// Extensions API -> Commands
import { BaseRegistry } from "./base-registry";
import { observable } from "mobx";
import { observable, makeObservable } from "mobx";
import { LensExtension } from "../lens-extension";
import { CatalogEntity } from "../../common/catalog-entity";
@@ -20,6 +20,12 @@ export interface CommandRegistration {
export class CommandRegistry extends BaseRegistry<CommandRegistration> {
@observable activeEntity: CatalogEntity;
constructor() {
super();
makeObservable(this);
}
add(items: CommandRegistration | CommandRegistration[], extension?: LensExtension) {
const itemArray = [items].flat();
@@ -2,7 +2,7 @@
import type { IconProps } from "../../renderer/components/icon";
import type React from "react";
import type { PageTarget, RegisteredPage } from "./page-registry";
import { action } from "mobx";
import { action, makeObservable } from "mobx";
import { BaseRegistry } from "./base-registry";
import { LensExtension } from "../lens-extension";
@@ -22,7 +22,12 @@ export interface PageMenuComponents {
}
export class PageMenuRegistry<T extends PageMenuRegistration> extends BaseRegistry<T> {
@action
constructor() {
super();
makeObservable(this);
}
add(items: T[], ext: LensExtension) {
const normalizedItems = items.map(menuItem => {
menuItem.target = {