From bfd08578ae051ec9a25bfa658932951fc1a98086 Mon Sep 17 00:00:00 2001 From: Janne Savolainen Date: Thu, 31 Mar 2022 08:35:11 +0300 Subject: [PATCH] Simplify logic for registering general catalog entity sources Signed-off-by: Janne Savolainen --- .../general-catalog-entities.injectable.ts | 14 -------------- .../sync-general-catalog-entities.injectable.ts | 12 ++++++++---- 2 files changed, 8 insertions(+), 18 deletions(-) delete mode 100644 src/common/catalog-entities/general-catalog-entities/general-catalog-entities.injectable.ts diff --git a/src/common/catalog-entities/general-catalog-entities/general-catalog-entities.injectable.ts b/src/common/catalog-entities/general-catalog-entities/general-catalog-entities.injectable.ts deleted file mode 100644 index c76038fa87..0000000000 --- a/src/common/catalog-entities/general-catalog-entities/general-catalog-entities.injectable.ts +++ /dev/null @@ -1,14 +0,0 @@ -/** - * Copyright (c) OpenLens Authors. All rights reserved. - * Licensed under MIT License. See LICENSE in root directory for more information. - */ -import { getInjectable } from "@ogre-tools/injectable"; -import { generalCatalogEntityInjectionToken } from "./general-catalog-entity-injection-token"; - -const generalCatalogEntitiesInjectable = getInjectable({ - id: "general-catalog-entities", - - instantiate: (di) => di.injectMany(generalCatalogEntityInjectionToken), -}); - -export default generalCatalogEntitiesInjectable; diff --git a/src/main/catalog-sources/sync-general-catalog-entities.injectable.ts b/src/main/catalog-sources/sync-general-catalog-entities.injectable.ts index d1d7895f29..167e74c719 100644 --- a/src/main/catalog-sources/sync-general-catalog-entities.injectable.ts +++ b/src/main/catalog-sources/sync-general-catalog-entities.injectable.ts @@ -3,20 +3,24 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ import { getInjectable } from "@ogre-tools/injectable"; -import generalCatalogEntitiesInjectable from "../../common/catalog-entities/general-catalog-entities/general-catalog-entities.injectable"; import catalogEntityRegistryInjectable from "../catalog/catalog-entity-registry.injectable"; +import { generalCatalogEntityInjectionToken } from "../../common/catalog-entities/general-catalog-entities/general-catalog-entity-injection-token"; +import { computed } from "mobx"; const syncGeneralCatalogEntitiesInjectable = getInjectable({ id: "sync-general-catalog-entities", instantiate: (di) => { - const generalCatalogEntities = di.inject(generalCatalogEntitiesInjectable); + const generalCatalogEntities = di.injectMany(generalCatalogEntityInjectionToken); const catalogEntityRegistry = di.inject(catalogEntityRegistryInjectable); + // TODO: This shouldn't be reactive at all but catalogEntityRegistry accepts only reactive sources + const reactiveGeneralCatalogEntities = computed(() => generalCatalogEntities); + return () => { - catalogEntityRegistry.addObservableSource( + catalogEntityRegistry.addComputedSource( "lens:general", - generalCatalogEntities, + reactiveGeneralCatalogEntities, ); }; },