diff --git a/open-lens/package.json b/open-lens/package.json index 47fe7f730a..f647d4ffb1 100644 --- a/open-lens/package.json +++ b/open-lens/package.json @@ -206,6 +206,7 @@ "@k8slens/messaging-for-renderer": "^1.0.0", "@k8slens/metrics": "^6.5.0", "@k8slens/node-fetch": "^6.5.0", + "@k8slens/random": "^1.0.0", "@k8slens/react-application": "^1.0.0", "@k8slens/resizing-anchor": "^1.0.0", "@k8slens/resource-templates": "^1.0.0", diff --git a/open-lens/src/main/index.ts b/open-lens/src/main/index.ts index 6eaac3e1db..b0c9ae9514 100644 --- a/open-lens/src/main/index.ts +++ b/open-lens/src/main/index.ts @@ -12,6 +12,7 @@ import { applicationFeature, startApplicationInjectionToken } from '@k8slens/app import { applicationFeatureForElectronMain } from '@k8slens/application-for-electron-main' import { messagingFeatureForMain } from "@k8slens/messaging-for-main"; import { loggerFeature } from "@k8slens/logger"; +import { randomFeature } from "@k8slens/random"; const environment = "main"; @@ -33,6 +34,7 @@ runInAction(() => { applicationFeature, applicationFeatureForElectronMain, messagingFeatureForMain, + randomFeature, ); try { diff --git a/open-lens/src/renderer/index.ts b/open-lens/src/renderer/index.ts index 19ce93e220..9988d20d9f 100644 --- a/open-lens/src/renderer/index.ts +++ b/open-lens/src/renderer/index.ts @@ -29,6 +29,7 @@ import { routingFeature } from "@k8slens/routing"; import { loggerFeature } from "@k8slens/logger"; import { animateFeature } from "@k8slens/animate"; import { clusterSidebarFeature } from "@k8slens/cluster-sidebar"; +import { randomFeature } from "@k8slens/random"; const environment = "renderer"; @@ -56,6 +57,7 @@ runInAction(() => { metricsFeature, animateFeature, clusterSidebarFeature, + randomFeature, ); autoRegister({ diff --git a/package-lock.json b/package-lock.json index 68458e9cab..eb2b482593 100644 --- a/package-lock.json +++ b/package-lock.json @@ -34023,6 +34023,7 @@ "@k8slens/messaging-for-renderer": "^1.0.0", "@k8slens/metrics": "^6.5.0", "@k8slens/node-fetch": "^6.5.0", + "@k8slens/random": "^1.0.0", "@k8slens/react-application": "^1.0.0", "@k8slens/resizing-anchor": "^1.0.0", "@k8slens/resource-templates": "^1.0.0", @@ -34364,6 +34365,7 @@ "@k8slens/messaging-for-renderer": "^1.0.0-alpha.1", "@k8slens/metrics": "^6.5.0-alpha.7", "@k8slens/node-fetch": "^6.5.0-alpha.3", + "@k8slens/random": "^1.0.0", "@k8slens/react-application": "^1.0.0-alpha.5", "@k8slens/resizing-anchor": "^1.0.0-alpha.5", "@k8slens/resource-templates": "^1.0.0-alpha.1", @@ -35278,7 +35280,7 @@ }, "packages/random-id": { "name": "@k8slens/random", - "version": "1.0.0-alpha.0", + "version": "1.0.0", "license": "MIT", "devDependencies": { "@k8slens/eslint-config": "^6.5.0", diff --git a/packages/core/package.json b/packages/core/package.json index 360551e17f..919de6d364 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -229,6 +229,7 @@ "@k8slens/metrics": "^6.5.0-alpha.7", "@k8slens/node-fetch": "^6.5.0-alpha.3", "@k8slens/react-application": "^1.0.0-alpha.5", + "@k8slens/random": "^1.0.0", "@k8slens/resizing-anchor": "^1.0.0-alpha.5", "@k8slens/resource-templates": "^1.0.0-alpha.1", "@k8slens/routing": "^1.0.0-alpha.5", diff --git a/packages/core/src/common/utils/get-random-id.global-override-for-injectable.ts b/packages/core/src/common/utils/get-random-id.global-override-for-injectable.ts index 64c4c9a21a..bc2b539fc3 100644 --- a/packages/core/src/common/utils/get-random-id.global-override-for-injectable.ts +++ b/packages/core/src/common/utils/get-random-id.global-override-for-injectable.ts @@ -4,6 +4,6 @@ */ import { getGlobalOverride } from "@k8slens/test-utils"; -import { getRandomIdInjectable } from "@k8slens/random"; +import { getRandomIdInjectionToken } from "@k8slens/random"; -export default getGlobalOverride(getRandomIdInjectable, () => () => "some-irrelevant-random-id"); +export default getGlobalOverride(getRandomIdInjectionToken, () => () => "some-irrelevant-random-id"); diff --git a/packages/core/src/features/cluster/workloads/overview/extension-api/order-of-workload-overview-details.test.tsx b/packages/core/src/features/cluster/workloads/overview/extension-api/order-of-workload-overview-details.test.tsx index 2d13de0858..d7db17f97b 100644 --- a/packages/core/src/features/cluster/workloads/overview/extension-api/order-of-workload-overview-details.test.tsx +++ b/packages/core/src/features/cluster/workloads/overview/extension-api/order-of-workload-overview-details.test.tsx @@ -5,7 +5,7 @@ import type { RenderResult } from "@testing-library/react"; import { getApplicationBuilder } from "../../../../../renderer/components/test-utils/get-application-builder"; import React from "react"; -import { getRandomIdInjectable } from "@k8slens/random"; +import { getRandomIdInjectionToken } from "@k8slens/random"; import { workloadOverviewDetailInjectionToken } from "../../../../../renderer/components/workloads-overview/workload-overview-details/workload-overview-detail-injection-token"; import { getInjectable } from "@ogre-tools/injectable"; import { computed, runInAction } from "mobx"; @@ -17,8 +17,8 @@ describe("order of workload overview details", () => { const builder = getApplicationBuilder(); builder.beforeWindowStart(({ windowDi }) => { - windowDi.unoverride(getRandomIdInjectable); - windowDi.permitSideEffects(getRandomIdInjectable); + windowDi.unoverride(getRandomIdInjectionToken); + windowDi.permitSideEffects(getRandomIdInjectionToken); runInAction(() => { windowDi.register( diff --git a/packages/core/src/features/status-bar/status-bar-items-originating-from-extensions.test.tsx b/packages/core/src/features/status-bar/status-bar-items-originating-from-extensions.test.tsx index 8f8cfa82a1..220a3ea6aa 100644 --- a/packages/core/src/features/status-bar/status-bar-items-originating-from-extensions.test.tsx +++ b/packages/core/src/features/status-bar/status-bar-items-originating-from-extensions.test.tsx @@ -6,7 +6,7 @@ import type { RenderResult } from "@testing-library/react"; import React from "react"; import type { ApplicationBuilder } from "../../renderer/components/test-utils/get-application-builder"; import { getApplicationBuilder } from "../../renderer/components/test-utils/get-application-builder"; -import { getRandomIdInjectable } from "@k8slens/random"; +import { getRandomIdInjectionToken } from "@k8slens/random"; import type { FakeExtensionOptions } from "../../renderer/components/test-utils/get-extension-fake"; import { computed } from "mobx"; @@ -17,8 +17,8 @@ describe("status-bar-items-originating-from-extensions", () => { applicationBuilder = getApplicationBuilder(); applicationBuilder.beforeWindowStart(({ windowDi }) => { - windowDi.unoverride(getRandomIdInjectable); - windowDi.permitSideEffects(getRandomIdInjectable); + windowDi.unoverride(getRandomIdInjectionToken); + windowDi.permitSideEffects(getRandomIdInjectionToken); }); }); diff --git a/packages/core/src/features/tray/clicking-tray-menu-item-originating-from-extension.test.ts b/packages/core/src/features/tray/clicking-tray-menu-item-originating-from-extension.test.ts index a4652eff45..fa0afe2f70 100644 --- a/packages/core/src/features/tray/clicking-tray-menu-item-originating-from-extension.test.ts +++ b/packages/core/src/features/tray/clicking-tray-menu-item-originating-from-extension.test.ts @@ -5,7 +5,7 @@ import type { ApplicationBuilder } from "../../renderer/components/test-utils/get-application-builder"; import { getApplicationBuilder } from "../../renderer/components/test-utils/get-application-builder"; import type { FakeExtensionOptions } from "../../renderer/components/test-utils/get-extension-fake"; -import { getRandomIdInjectable } from "@k8slens/random"; +import { getRandomIdInjectionToken } from "@k8slens/random"; import logErrorInjectable from "../../common/log-error.injectable"; describe("clicking tray menu item originating from extension", () => { @@ -19,7 +19,7 @@ describe("clicking tray menu item originating from extension", () => { logErrorMock = jest.fn(); mainDi.override(logErrorInjectable, () => logErrorMock); - mainDi.override(getRandomIdInjectable, () => () => "some-random-id"); + mainDi.override(getRandomIdInjectionToken, () => () => "some-random-id"); }); await builder.render(); diff --git a/packages/core/src/features/tray/multiple-separators-originating-from-extension.test.ts b/packages/core/src/features/tray/multiple-separators-originating-from-extension.test.ts index 8670ef7860..83b9deb27e 100644 --- a/packages/core/src/features/tray/multiple-separators-originating-from-extension.test.ts +++ b/packages/core/src/features/tray/multiple-separators-originating-from-extension.test.ts @@ -4,7 +4,7 @@ */ import type { ApplicationBuilder } from "../../renderer/components/test-utils/get-application-builder"; import { getApplicationBuilder } from "../../renderer/components/test-utils/get-application-builder"; -import { getRandomIdInjectable } from "@k8slens/random"; +import { getRandomIdInjectionToken } from "@k8slens/random"; describe("multiple separators originating from extension", () => { let builder: ApplicationBuilder; @@ -13,8 +13,8 @@ describe("multiple separators originating from extension", () => { builder = getApplicationBuilder(); builder.beforeApplicationStart(({ mainDi }) => { - mainDi.unoverride(getRandomIdInjectable); - mainDi.permitSideEffects(getRandomIdInjectable); + mainDi.unoverride(getRandomIdInjectionToken); + mainDi.permitSideEffects(getRandomIdInjectionToken); }); await builder.render(); diff --git a/packages/core/src/main/tray/tray-menu-item/tray-menu-item-registrator.injectable.ts b/packages/core/src/main/tray/tray-menu-item/tray-menu-item-registrator.injectable.ts index 55c498ee7a..dc6dbf37fe 100644 --- a/packages/core/src/main/tray/tray-menu-item/tray-menu-item-registrator.injectable.ts +++ b/packages/core/src/main/tray/tray-menu-item/tray-menu-item-registrator.injectable.ts @@ -14,7 +14,7 @@ import type { TrayMenuRegistration } from "../tray-menu-registration"; import { withErrorSuppression } from "../../../common/utils/with-error-suppression/with-error-suppression"; import type { WithErrorLoggingFor } from "../../../common/utils/with-error-logging/with-error-logging.injectable"; import withErrorLoggingInjectable from "../../../common/utils/with-error-logging/with-error-logging.injectable"; -import { getRandomIdInjectable } from "@k8slens/random"; +import { getRandomIdInjectionToken } from "@k8slens/random"; import { isBoolean, isString } from "@k8slens/utilities"; const trayMenuItemRegistratorInjectable = getInjectable({ @@ -23,7 +23,7 @@ const trayMenuItemRegistratorInjectable = getInjectable({ instantiate: (di) => (extension) => { const mainExtension = extension as LensMainExtension; const withErrorLoggingFor = di.inject(withErrorLoggingInjectable); - const getRandomId = di.inject(getRandomIdInjectable); + const getRandomId = di.inject(getRandomIdInjectionToken); return computed(() => { const trayMenus = Array.isArray(mainExtension.trayMenus) ? mainExtension.trayMenus : mainExtension.trayMenus.get(); diff --git a/packages/core/src/renderer/components/dock/edit-resource/get-random-id-for-edit-resource-tab.injectable.ts b/packages/core/src/renderer/components/dock/edit-resource/get-random-id-for-edit-resource-tab.injectable.ts index ec5e8bcd38..c1bc63d027 100644 --- a/packages/core/src/renderer/components/dock/edit-resource/get-random-id-for-edit-resource-tab.injectable.ts +++ b/packages/core/src/renderer/components/dock/edit-resource/get-random-id-for-edit-resource-tab.injectable.ts @@ -3,11 +3,11 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ import { getInjectable } from "@ogre-tools/injectable"; -import { getRandomIdInjectable } from "@k8slens/random"; +import { getRandomIdInjectionToken } from "@k8slens/random"; const getRandomIdForEditResourceTabInjectable = getInjectable({ id: "get-random-id-for-edit-resource-tab", - instantiate: (di) => di.inject(getRandomIdInjectable), + instantiate: (di) => di.inject(getRandomIdInjectionToken), }); export default getRandomIdForEditResourceTabInjectable; diff --git a/packages/core/src/renderer/components/dock/install-chart/get-random-install-chart-tab-id.injectable.ts b/packages/core/src/renderer/components/dock/install-chart/get-random-install-chart-tab-id.injectable.ts index e13c585914..44b4345ef3 100644 --- a/packages/core/src/renderer/components/dock/install-chart/get-random-install-chart-tab-id.injectable.ts +++ b/packages/core/src/renderer/components/dock/install-chart/get-random-install-chart-tab-id.injectable.ts @@ -3,11 +3,11 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ import { getInjectable } from "@ogre-tools/injectable"; -import { getRandomIdInjectable } from "@k8slens/random"; +import { getRandomIdInjectionToken } from "@k8slens/random"; const getRandomInstallChartTabIdInjectable = getInjectable({ id: "get-random-install-chart-tab-id", - instantiate: (di) => di.inject(getRandomIdInjectable), + instantiate: (di) => di.inject(getRandomIdInjectionToken), }); export default getRandomInstallChartTabIdInjectable; diff --git a/packages/core/src/renderer/components/dock/logs/get-random-id-for-pod-logs-tab.injectable.ts b/packages/core/src/renderer/components/dock/logs/get-random-id-for-pod-logs-tab.injectable.ts index 486b43314e..329986de30 100644 --- a/packages/core/src/renderer/components/dock/logs/get-random-id-for-pod-logs-tab.injectable.ts +++ b/packages/core/src/renderer/components/dock/logs/get-random-id-for-pod-logs-tab.injectable.ts @@ -3,11 +3,11 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ import { getInjectable } from "@ogre-tools/injectable"; -import { getRandomIdInjectable } from "@k8slens/random"; +import { getRandomIdInjectionToken } from "@k8slens/random"; const getRandomIdForPodLogsTabInjectable = getInjectable({ id: "get-random-id-for-pod-logs-tab", - instantiate: (di) => di.inject(getRandomIdInjectable), + instantiate: (di) => di.inject(getRandomIdInjectionToken), }); export default getRandomIdForPodLogsTabInjectable; diff --git a/packages/core/src/renderer/components/dock/upgrade-chart/get-random-upgrade-chart-tab-id.injectable.ts b/packages/core/src/renderer/components/dock/upgrade-chart/get-random-upgrade-chart-tab-id.injectable.ts index 81dd918283..ab1cf12fd9 100644 --- a/packages/core/src/renderer/components/dock/upgrade-chart/get-random-upgrade-chart-tab-id.injectable.ts +++ b/packages/core/src/renderer/components/dock/upgrade-chart/get-random-upgrade-chart-tab-id.injectable.ts @@ -3,11 +3,11 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ import { getInjectable } from "@ogre-tools/injectable"; -import { getRandomIdInjectable } from "@k8slens/random"; +import { getRandomIdInjectionToken } from "@k8slens/random"; const getRandomUpgradeChartTabIdInjectable = getInjectable({ id: "get-random-upgrade-chart-tab-id", - instantiate: (di) => di.inject(getRandomIdInjectable), + instantiate: (di) => di.inject(getRandomIdInjectionToken), }); export default getRandomUpgradeChartTabIdInjectable; diff --git a/packages/core/src/renderer/components/kube-object-details/kube-object-detail-items/kube-object-detail-item-registrator.injectable.ts b/packages/core/src/renderer/components/kube-object-details/kube-object-detail-items/kube-object-detail-item-registrator.injectable.ts index cc0945097e..343a5c8075 100644 --- a/packages/core/src/renderer/components/kube-object-details/kube-object-detail-items/kube-object-detail-item-registrator.injectable.ts +++ b/packages/core/src/renderer/components/kube-object-details/kube-object-detail-items/kube-object-detail-item-registrator.injectable.ts @@ -4,7 +4,7 @@ */ import { getInjectable } from "@ogre-tools/injectable"; import { computed } from "mobx"; -import { getRandomIdInjectable } from "@k8slens/random"; +import { getRandomIdInjectionToken } from "@k8slens/random"; import type { LensRendererExtension } from "../../../../extensions/lens-renderer-extension"; import extensionShouldBeEnabledForClusterFrameInjectable from "../../../extension-loader/extension-should-be-enabled-for-cluster-frame.injectable"; import { kubeObjectDetailItemInjectionToken } from "./kube-object-detail-item-injection-token"; @@ -16,7 +16,7 @@ const kubeObjectDetailItemRegistratorInjectable = getInjectable({ id: "kube-object-detail-item-registrator", instantiate: (di) => { - const getRandomId = di.inject(getRandomIdInjectable); + const getRandomId = di.inject(getRandomIdInjectionToken); const getExtensionShouldBeEnabledForClusterFrame = ( extension: LensRendererExtension, diff --git a/packages/core/src/renderer/components/kube-object-menu/kube-object-menu-item-registrator.injectable.ts b/packages/core/src/renderer/components/kube-object-menu/kube-object-menu-item-registrator.injectable.ts index b9aa14ad72..daf298567f 100644 --- a/packages/core/src/renderer/components/kube-object-menu/kube-object-menu-item-registrator.injectable.ts +++ b/packages/core/src/renderer/components/kube-object-menu/kube-object-menu-item-registrator.injectable.ts @@ -5,7 +5,7 @@ import { getInjectable } from "@ogre-tools/injectable"; import { extensionRegistratorInjectionToken } from "../../../extensions/extension-loader/extension-registrator-injection-token"; import type { LensRendererExtension } from "../../../extensions/lens-renderer-extension"; -import { getRandomIdInjectable } from "@k8slens/random"; +import { getRandomIdInjectionToken } from "@k8slens/random"; import extensionShouldBeEnabledForClusterFrameInjectable from "../../extension-loader/extension-should-be-enabled-for-cluster-frame.injectable"; import { kubeObjectMenuItemInjectionToken } from "./kube-object-menu-item-injection-token"; import { computed } from "mobx"; @@ -14,7 +14,7 @@ const kubeObjectMenuItemRegistratorInjectable = getInjectable({ id: "kube-object-menu-item-registrator", instantiate: (di) => { - const getRandomId = di.inject(getRandomIdInjectable); + const getRandomId = di.inject(getRandomIdInjectionToken); const getExtensionShouldBeEnabledForClusterFrame = ( extension: LensRendererExtension, diff --git a/packages/core/src/renderer/components/kube-object-status-icon/kube-object-status-text-registrator.injectable.ts b/packages/core/src/renderer/components/kube-object-status-icon/kube-object-status-text-registrator.injectable.ts index 67dfd9e112..7d13c91377 100644 --- a/packages/core/src/renderer/components/kube-object-status-icon/kube-object-status-text-registrator.injectable.ts +++ b/packages/core/src/renderer/components/kube-object-status-icon/kube-object-status-text-registrator.injectable.ts @@ -5,7 +5,7 @@ import { getInjectable } from "@ogre-tools/injectable"; import { extensionRegistratorInjectionToken } from "../../../extensions/extension-loader/extension-registrator-injection-token"; import type { LensRendererExtension } from "../../../extensions/lens-renderer-extension"; -import { getRandomIdInjectable } from "@k8slens/random"; +import { getRandomIdInjectionToken } from "@k8slens/random"; import { kubeObjectStatusTextInjectionToken } from "./kube-object-status-text-injection-token"; import extensionShouldBeEnabledForClusterFrameInjectable from "../../extension-loader/extension-should-be-enabled-for-cluster-frame.injectable"; import { computed } from "mobx"; @@ -14,7 +14,7 @@ const kubeObjectStatusTextRegistratorInjectable = getInjectable({ id: "kube-object-status-text-registrator", instantiate: (di) => { - const getRandomId = di.inject(getRandomIdInjectable); + const getRandomId = di.inject(getRandomIdInjectionToken); const getExtensionShouldBeEnabledForClusterFrame = ( extension: LensRendererExtension, diff --git a/packages/core/src/renderer/components/menu/menu-actions.tsx b/packages/core/src/renderer/components/menu/menu-actions.tsx index b3ac3b9eb7..05cc79442d 100644 --- a/packages/core/src/renderer/components/menu/menu-actions.tsx +++ b/packages/core/src/renderer/components/menu/menu-actions.tsx @@ -19,7 +19,7 @@ import type { TooltipDecoratorProps } from "@k8slens/tooltip"; import type { OpenConfirmDialog } from "../confirm-dialog/open.injectable"; import { withInjectables } from "@ogre-tools/injectable-react"; import openConfirmDialogInjectable from "../confirm-dialog/open.injectable"; -import { getRandomIdInjectable } from "@k8slens/random"; +import { getRandomIdInjectionToken } from "@k8slens/random"; import autoBindReact from "auto-bind/react"; export interface MenuActionsProps extends Partial { @@ -186,7 +186,7 @@ class NonInjectedMenuActions extends React.Component(NonInjectedMenuActions, { getProps: (di, props) => ({ - id: di.inject(getRandomIdInjectable)(), + id: di.inject(getRandomIdInjectionToken)(), openConfirmDialog: di.inject(openConfirmDialogInjectable), ...props, }), diff --git a/packages/core/src/renderer/components/status-bar/status-bar-item-registrator.injectable.tsx b/packages/core/src/renderer/components/status-bar/status-bar-item-registrator.injectable.tsx index 4f262e79ce..a7107a1a68 100644 --- a/packages/core/src/renderer/components/status-bar/status-bar-item-registrator.injectable.tsx +++ b/packages/core/src/renderer/components/status-bar/status-bar-item-registrator.injectable.tsx @@ -11,7 +11,7 @@ import type { StatusBarItem } from "./status-bar-item-injection-token"; import { statusBarItemInjectionToken } from "./status-bar-item-injection-token"; import type { StatusBarRegistration } from "./status-bar-registration"; import React from "react"; -import { getRandomIdInjectable } from "@k8slens/random"; +import { getRandomIdInjectionToken } from "@k8slens/random"; import { loggerInjectionToken } from "@k8slens/logger"; import type { Logger } from "@k8slens/logger"; @@ -20,7 +20,7 @@ const statusBarItemRegistratorInjectable = getInjectable({ instantiate: (di) => (extension) => { const rendererExtension = extension as LensRendererExtension; - const getRandomId = di.inject(getRandomIdInjectable); + const getRandomId = di.inject(getRandomIdInjectionToken); const logger = di.inject(loggerInjectionToken); return rendererExtension.statusBarItems.flatMap( diff --git a/packages/core/src/renderer/components/status-bar/status-bar.test.tsx b/packages/core/src/renderer/components/status-bar/status-bar.test.tsx index d0decea569..4bcac1efb7 100644 --- a/packages/core/src/renderer/components/status-bar/status-bar.test.tsx +++ b/packages/core/src/renderer/components/status-bar/status-bar.test.tsx @@ -8,7 +8,7 @@ import type { ApplicationBuilder } from "../test-utils/get-application-builder"; import { getApplicationBuilder } from "../test-utils/get-application-builder"; import setStatusBarStatusInjectable from "./set-status-bar-status.injectable"; import type { RenderResult } from "@testing-library/react"; -import { getRandomIdInjectable } from "@k8slens/random"; +import { getRandomIdInjectionToken } from "@k8slens/random"; describe("", () => { let builder: ApplicationBuilder; @@ -18,8 +18,8 @@ describe("", () => { builder = getApplicationBuilder(); builder.beforeWindowStart(({ windowDi }) => { - windowDi.permitSideEffects(getRandomIdInjectable); - windowDi.unoverride(getRandomIdInjectable); + windowDi.permitSideEffects(getRandomIdInjectionToken); + windowDi.unoverride(getRandomIdInjectionToken); }); result = await builder.render(); diff --git a/packages/core/src/renderer/components/workloads-overview/workload-overview-details/workload-overview-detail-registrator.injectable.ts b/packages/core/src/renderer/components/workloads-overview/workload-overview-details/workload-overview-detail-registrator.injectable.ts index 143e01bbaf..6a286f7725 100644 --- a/packages/core/src/renderer/components/workloads-overview/workload-overview-details/workload-overview-detail-registrator.injectable.ts +++ b/packages/core/src/renderer/components/workloads-overview/workload-overview-details/workload-overview-detail-registrator.injectable.ts @@ -4,7 +4,7 @@ */ import { getInjectable } from "@ogre-tools/injectable"; import { computed } from "mobx"; -import { getRandomIdInjectable } from "@k8slens/random"; +import { getRandomIdInjectionToken } from "@k8slens/random"; import type { LensRendererExtension } from "../../../../extensions/lens-renderer-extension"; import extensionShouldBeEnabledForClusterFrameInjectable from "../../../extension-loader/extension-should-be-enabled-for-cluster-frame.injectable"; import { workloadOverviewDetailInjectionToken } from "./workload-overview-detail-injection-token"; @@ -14,7 +14,7 @@ const workloadOverviewDetailRegistratorInjectable = getInjectable({ id: "workload-overview-detail-registrator", instantiate: (di) => { - const getRandomId = di.inject(getRandomIdInjectable); + const getRandomId = di.inject(getRandomIdInjectionToken); return (ext) => { const extension = ext as LensRendererExtension; diff --git a/packages/random-id/index.ts b/packages/random-id/index.ts index 9d7d69f32d..fe1abebc0d 100644 --- a/packages/random-id/index.ts +++ b/packages/random-id/index.ts @@ -4,4 +4,4 @@ */ export { randomFeature } from "./src/feature"; -export { getRandomIdInjectable } from "./src/get-random-id.injectable"; +export { getRandomIdInjectionToken, getRandomIdInjectable } from "./src/get-random-id.injectable"; diff --git a/packages/random-id/package.json b/packages/random-id/package.json index ec0130c3e4..86d7d63bc2 100644 --- a/packages/random-id/package.json +++ b/packages/random-id/package.json @@ -1,7 +1,7 @@ { "name": "@k8slens/random", "private": false, - "version": "1.0.0-alpha.0", + "version": "1.0.0", "description": "Highly extendable random in the Lens.", "type": "commonjs", "files": [ diff --git a/packages/random-id/src/get-random-id.injectable.ts b/packages/random-id/src/get-random-id.injectable.ts index ce2b124960..efa41f4eed 100644 --- a/packages/random-id/src/get-random-id.injectable.ts +++ b/packages/random-id/src/get-random-id.injectable.ts @@ -2,11 +2,17 @@ * 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 { getInjectable, getInjectionToken } from "@ogre-tools/injectable"; import { v4 as getRandomId } from "uuid"; +export type GetRandomId = () => string; +export const getRandomIdInjectionToken = getInjectionToken({ + id: "get-random-id-injection-token", +}); + export const getRandomIdInjectable = getInjectable({ id: "get-random-id", - instantiate: () => () => getRandomId(), + instantiate: (): GetRandomId => () => getRandomId(), causesSideEffects: true, + injectionToken: getRandomIdInjectionToken, });