From 45b630553af356910fcaa6e9b6fad5a4d2a7b4e5 Mon Sep 17 00:00:00 2001 From: Sebastian Malton Date: Thu, 2 Mar 2023 10:51:54 -0500 Subject: [PATCH] Fixup type errors Signed-off-by: Sebastian Malton --- .../welcome-catalog-entity.injectable.ts | 2 +- .../common/k8s-api/api-manager/api-manager.ts | 2 +- .../custom-resource-definition.api.ts | 2 +- .../request-versions.injectable.ts | 2 +- .../request-configuration.injectable.ts | 2 +- .../request-create.injectable.ts | 2 +- .../request-delete.injectable.ts | 2 +- .../request-details.injectable.ts | 2 +- .../request-history.injectable.ts | 2 +- .../request-releases.injectable.ts | 2 +- .../request-rollback.injectable.ts | 2 +- .../request-update.injectable.ts | 2 +- .../request-values.injectable.ts | 2 +- .../src/extensions/renderer-api/navigation.ts | 2 +- .../preferences-catalog-entity.injectable.ts | 2 +- .../request-api-resources.injectable.ts | 2 +- ...equest-non-core-api-versions.injectable.ts | 2 +- .../navigate-to-route.injectable.ts | 2 +- .../src/renderer/components/badge/badge.tsx | 2 +- .../cluster-manager/cluster-manager.tsx | 2 +- .../renderer/components/dock/logs/store.ts | 2 +- .../dock/terminal/send-command.injectable.ts | 2 +- ...e-account-kube-config-dialog.injectable.ts | 2 +- .../request-active-port-forward.injectable.ts | 2 +- .../routes/navigate-to-route.injectable.ts | 2 +- .../utilities/src/backoff-caller.ts | 10 ++-- .../utilities/src/camelCase.ts | 2 +- .../utilities/src/cssNames.ts | 4 +- .../utilities/src/hash-set.ts | 48 ++++++++++--------- .../utilities/src/on-keyboard-shortcut.ts | 4 +- .../utilities/src/union-env-path.ts | 2 +- 31 files changed, 60 insertions(+), 60 deletions(-) diff --git a/packages/core/src/common/catalog-entities/general-catalog-entities/implementations/welcome-catalog-entity.injectable.ts b/packages/core/src/common/catalog-entities/general-catalog-entities/implementations/welcome-catalog-entity.injectable.ts index 7b4a327339..a00dcec323 100644 --- a/packages/core/src/common/catalog-entities/general-catalog-entities/implementations/welcome-catalog-entity.injectable.ts +++ b/packages/core/src/common/catalog-entities/general-catalog-entities/implementations/welcome-catalog-entity.injectable.ts @@ -5,7 +5,7 @@ import { getInjectable } from "@ogre-tools/injectable"; import { generalCatalogEntityInjectionToken } from "../general-catalog-entity-injection-token"; import { GeneralEntity } from "../../index"; -import { buildURL } from "@k8slens/utilities/src/buildUrl"; +import { buildURL } from "@k8slens/utilities"; import welcomeRouteInjectable from "../../../front-end-routing/routes/welcome/welcome-route.injectable"; const welcomeCatalogEntityInjectable = getInjectable({ diff --git a/packages/core/src/common/k8s-api/api-manager/api-manager.ts b/packages/core/src/common/k8s-api/api-manager/api-manager.ts index 15148cb45c..04d059e418 100644 --- a/packages/core/src/common/k8s-api/api-manager/api-manager.ts +++ b/packages/core/src/common/k8s-api/api-manager/api-manager.ts @@ -10,7 +10,7 @@ import { autorun, action, observable } from "mobx"; import type { KubeApi } from "../kube-api"; import type { KubeObject, ObjectReference } from "../kube-object"; import { parseKubeApi, createKubeApiURL } from "../kube-api-parse"; -import { chain, find } from "@k8slens/utilities/src/iter"; +import { chain, find } from "@k8slens/utilities"; export type RegisterableStore = Store extends KubeObjectStore ? Store diff --git a/packages/core/src/common/k8s-api/endpoints/custom-resource-definition.api.ts b/packages/core/src/common/k8s-api/endpoints/custom-resource-definition.api.ts index 6e6db3f9d5..a9259e710e 100644 --- a/packages/core/src/common/k8s-api/endpoints/custom-resource-definition.api.ts +++ b/packages/core/src/common/k8s-api/endpoints/custom-resource-definition.api.ts @@ -5,7 +5,7 @@ import { getLegacyGlobalDiForExtensionApi } from "../../../extensions/as-legacy-globals-for-extension-api/legacy-global-di-for-extension-api"; import customResourcesRouteInjectable from "../../front-end-routing/routes/cluster/custom-resources/custom-resources/custom-resources-route.injectable"; -import { buildURL } from "@k8slens/utilities/src/buildUrl"; +import { buildURL } from "@k8slens/utilities"; import type { BaseKubeObjectCondition, ClusterScopedMetadata } from "../kube-object"; import { KubeObject } from "../kube-object"; import type { DerivedKubeApiOptions, KubeApiDependencies } from "../kube-api"; diff --git a/packages/core/src/common/k8s-api/endpoints/helm-charts.api/request-versions.injectable.ts b/packages/core/src/common/k8s-api/endpoints/helm-charts.api/request-versions.injectable.ts index b7c4edf038..37c6f2bd10 100644 --- a/packages/core/src/common/k8s-api/endpoints/helm-charts.api/request-versions.injectable.ts +++ b/packages/core/src/common/k8s-api/endpoints/helm-charts.api/request-versions.injectable.ts @@ -3,7 +3,7 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ import { getInjectable } from "@ogre-tools/injectable"; -import { urlBuilderFor } from "@k8slens/utilities/src/buildUrl"; +import { urlBuilderFor } from "@k8slens/utilities"; import { HelmChart } from "../helm-charts.api"; import type { RawHelmChart } from "../helm-charts.api"; import { isDefined } from "@k8slens/utilities"; diff --git a/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-configuration.injectable.ts b/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-configuration.injectable.ts index cca5baf085..b9e6de7b0c 100644 --- a/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-configuration.injectable.ts +++ b/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-configuration.injectable.ts @@ -3,7 +3,7 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ import { getInjectable } from "@ogre-tools/injectable"; -import { urlBuilderFor } from "@k8slens/utilities/src/buildUrl"; +import { urlBuilderFor } from "@k8slens/utilities"; import apiBaseInjectable from "../../api-base.injectable"; export type RequestHelmReleaseConfiguration = ( diff --git a/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-create.injectable.ts b/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-create.injectable.ts index 2e638aaae6..253e97bf72 100644 --- a/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-create.injectable.ts +++ b/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-create.injectable.ts @@ -5,7 +5,7 @@ import yaml from "js-yaml"; import { getInjectable } from "@ogre-tools/injectable"; import type { HelmReleaseUpdateDetails } from "../helm-releases.api"; -import { urlBuilderFor } from "@k8slens/utilities/src/buildUrl"; +import { urlBuilderFor } from "@k8slens/utilities"; import apiBaseInjectable from "../../api-base.injectable"; interface HelmReleaseCreatePayload { diff --git a/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-delete.injectable.ts b/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-delete.injectable.ts index f16a6b6194..3b48f2d9b7 100644 --- a/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-delete.injectable.ts +++ b/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-delete.injectable.ts @@ -3,7 +3,7 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ import { getInjectable } from "@ogre-tools/injectable"; -import { urlBuilderFor } from "@k8slens/utilities/src/buildUrl"; +import { urlBuilderFor } from "@k8slens/utilities"; import apiBaseInjectable from "../../api-base.injectable"; export type RequestDeleteHelmRelease = (name: string, namespace: string) => Promise; diff --git a/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-details.injectable.ts b/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-details.injectable.ts index 4b176431ea..8c7b3dd472 100644 --- a/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-details.injectable.ts +++ b/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-details.injectable.ts @@ -4,7 +4,7 @@ */ import { getInjectable } from "@ogre-tools/injectable"; import type { KubeJsonApiData } from "../../kube-json-api"; -import { urlBuilderFor } from "@k8slens/utilities/src/buildUrl"; +import { urlBuilderFor } from "@k8slens/utilities"; import apiBaseInjectable from "../../api-base.injectable"; export interface HelmReleaseDetails { diff --git a/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-history.injectable.ts b/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-history.injectable.ts index 73129b2794..9a9a3159ea 100644 --- a/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-history.injectable.ts +++ b/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-history.injectable.ts @@ -3,7 +3,7 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ import { getInjectable } from "@ogre-tools/injectable"; -import { urlBuilderFor } from "@k8slens/utilities/src/buildUrl"; +import { urlBuilderFor } from "@k8slens/utilities"; import apiBaseInjectable from "../../api-base.injectable"; export interface HelmReleaseRevision { diff --git a/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-releases.injectable.ts b/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-releases.injectable.ts index 23a23d9899..ffd3a92dee 100644 --- a/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-releases.injectable.ts +++ b/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-releases.injectable.ts @@ -3,7 +3,7 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ import { getInjectable } from "@ogre-tools/injectable"; -import { urlBuilderFor } from "@k8slens/utilities/src/buildUrl"; +import { urlBuilderFor } from "@k8slens/utilities"; import apiBaseInjectable from "../../api-base.injectable"; import type { HelmReleaseDto } from "../helm-releases.api"; diff --git a/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-rollback.injectable.ts b/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-rollback.injectable.ts index 00fae0ee92..9e43e4d8ac 100644 --- a/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-rollback.injectable.ts +++ b/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-rollback.injectable.ts @@ -3,7 +3,7 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ import { getInjectable } from "@ogre-tools/injectable"; -import { urlBuilderFor } from "@k8slens/utilities/src/buildUrl"; +import { urlBuilderFor } from "@k8slens/utilities"; import apiBaseInjectable from "../../api-base.injectable"; export type RequestHelmReleaseRollback = (name: string, namespace: string, revision: number) => Promise; diff --git a/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-update.injectable.ts b/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-update.injectable.ts index 982b6086e4..3a23536673 100644 --- a/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-update.injectable.ts +++ b/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-update.injectable.ts @@ -3,7 +3,7 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ import { getInjectable } from "@ogre-tools/injectable"; -import { urlBuilderFor } from "@k8slens/utilities/src/buildUrl"; +import { urlBuilderFor } from "@k8slens/utilities"; import type { AsyncResult } from "@k8slens/utilities"; import apiBaseInjectable from "../../api-base.injectable"; diff --git a/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-values.injectable.ts b/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-values.injectable.ts index 03e035acb2..a1668b993e 100644 --- a/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-values.injectable.ts +++ b/packages/core/src/common/k8s-api/endpoints/helm-releases.api/request-values.injectable.ts @@ -3,7 +3,7 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ import { getInjectable } from "@ogre-tools/injectable"; -import { urlBuilderFor } from "@k8slens/utilities/src/buildUrl"; +import { urlBuilderFor } from "@k8slens/utilities"; import apiBaseInjectable from "../../api-base.injectable"; export type RequestHelmReleaseValues = (name: string, namespace: string, all?: boolean) => Promise; diff --git a/packages/core/src/extensions/renderer-api/navigation.ts b/packages/core/src/extensions/renderer-api/navigation.ts index f28ed9bfd4..8d39ed6f0e 100644 --- a/packages/core/src/extensions/renderer-api/navigation.ts +++ b/packages/core/src/extensions/renderer-api/navigation.ts @@ -12,7 +12,7 @@ import navigateInjectable from "../../renderer/navigation/navigate.injectable"; import { asLegacyGlobalFunctionForExtensionApi } from "../as-legacy-globals-for-extension-api/as-legacy-global-function-for-extension-api"; export type { PageParamInit, PageParam } from "../../renderer/navigation/page-param"; -export type { URLParams } from "@k8slens/utilities/src/buildUrl"; +export type { URLParams } from "@k8slens/utilities"; export const getDetailsUrl = asLegacyGlobalFunctionForExtensionApi(getDetailsUrlInjectable); export const showDetails = asLegacyGlobalFunctionForExtensionApi(showDetailsInjectable); diff --git a/packages/core/src/features/preferences/common/preferences-catalog-entity.injectable.ts b/packages/core/src/features/preferences/common/preferences-catalog-entity.injectable.ts index 66e981fc0b..33eef535af 100644 --- a/packages/core/src/features/preferences/common/preferences-catalog-entity.injectable.ts +++ b/packages/core/src/features/preferences/common/preferences-catalog-entity.injectable.ts @@ -5,7 +5,7 @@ import { getInjectable } from "@ogre-tools/injectable"; import { generalCatalogEntityInjectionToken } from "../../../common/catalog-entities/general-catalog-entities/general-catalog-entity-injection-token"; import { GeneralEntity } from "../../../common/catalog-entities"; -import { buildURL } from "@k8slens/utilities/src/buildUrl"; +import { buildURL } from "@k8slens/utilities"; import preferencesRouteInjectable from "./preferences-route.injectable"; const preferencesCatalogEntityInjectable = getInjectable({ diff --git a/packages/core/src/main/cluster/request-api-resources.injectable.ts b/packages/core/src/main/cluster/request-api-resources.injectable.ts index 5cc655c394..5284ba3165 100644 --- a/packages/core/src/main/cluster/request-api-resources.injectable.ts +++ b/packages/core/src/main/cluster/request-api-resources.injectable.ts @@ -8,7 +8,7 @@ import loggerInjectable from "../../common/logger.injectable"; import type { KubeApiResource } from "../../common/rbac"; import type { Cluster } from "../../common/cluster/cluster"; import { requestApiVersionsInjectionToken } from "./request-api-versions"; -import { withConcurrencyLimit } from "@k8slens/utilities/src/with-concurrency-limit"; +import { withConcurrencyLimit } from "@k8slens/utilities"; import requestKubeApiResourcesForInjectable from "./request-kube-api-resources-for.injectable"; import type { AsyncResult } from "../../common/utils/async-result"; import { backoffCaller } from "../../common/utils/backoff-caller"; diff --git a/packages/core/src/main/cluster/request-non-core-api-versions.injectable.ts b/packages/core/src/main/cluster/request-non-core-api-versions.injectable.ts index c958e22609..aafbce062d 100644 --- a/packages/core/src/main/cluster/request-non-core-api-versions.injectable.ts +++ b/packages/core/src/main/cluster/request-non-core-api-versions.injectable.ts @@ -4,7 +4,7 @@ */ import type { V1APIGroupList } from "@kubernetes/client-node"; import { getInjectable } from "@ogre-tools/injectable"; -import { chain } from "@k8slens/utilities/src/iter"; +import { chain } from "@k8slens/utilities"; import k8sRequestInjectable from "../k8s-request.injectable"; import { requestApiVersionsInjectionToken } from "./request-api-versions"; diff --git a/packages/core/src/main/navigate-to-route/navigate-to-route.injectable.ts b/packages/core/src/main/navigate-to-route/navigate-to-route.injectable.ts index 76fc403a0e..6615d976f1 100644 --- a/packages/core/src/main/navigate-to-route/navigate-to-route.injectable.ts +++ b/packages/core/src/main/navigate-to-route/navigate-to-route.injectable.ts @@ -5,7 +5,7 @@ import { getInjectable } from "@ogre-tools/injectable"; import { navigateToUrlInjectionToken } from "../../common/front-end-routing/navigate-to-url-injection-token"; import { navigateToRouteInjectionToken } from "../../common/front-end-routing/navigate-to-route-injection-token"; -import { buildURL } from "@k8slens/utilities/src/buildUrl"; +import { buildURL } from "@k8slens/utilities"; const navigateToRouteInjectable = getInjectable({ id: "navigate-to-route", diff --git a/packages/core/src/renderer/components/badge/badge.tsx b/packages/core/src/renderer/components/badge/badge.tsx index 4981c008d3..5fe12ade09 100644 --- a/packages/core/src/renderer/components/badge/badge.tsx +++ b/packages/core/src/renderer/components/badge/badge.tsx @@ -8,7 +8,7 @@ import styles from "./badge.module.scss"; import React, { useEffect, useRef, useState } from "react"; import { action, observable } from "mobx"; import { observer } from "mobx-react"; -import { cssNames } from "@k8slens/utilities/src/cssNames"; +import { cssNames } from "@k8slens/utilities"; import { withTooltip } from "../tooltip"; export interface BadgeProps extends React.HTMLAttributes { diff --git a/packages/core/src/renderer/components/cluster-manager/cluster-manager.tsx b/packages/core/src/renderer/components/cluster-manager/cluster-manager.tsx index 1a4fb1a752..7ec334ff18 100644 --- a/packages/core/src/renderer/components/cluster-manager/cluster-manager.tsx +++ b/packages/core/src/renderer/components/cluster-manager/cluster-manager.tsx @@ -17,7 +17,7 @@ import catalogPreviousActiveTabStorageInjectable from "../+catalog/catalog-previ import type { IComputedValue } from "mobx"; import currentRouteComponentInjectable from "../../routes/current-route-component.injectable"; import welcomeRouteInjectable from "../../../common/front-end-routing/routes/welcome/welcome-route.injectable"; -import { buildURL } from "@k8slens/utilities/src/buildUrl"; +import { buildURL } from "@k8slens/utilities"; import type { StorageLayer } from "@k8slens/utilities"; import type { WatchForGeneralEntityNavigation } from "../../api/helpers/watch-for-general-entity-navigation.injectable"; import watchForGeneralEntityNavigationInjectable from "../../api/helpers/watch-for-general-entity-navigation.injectable"; diff --git a/packages/core/src/renderer/components/dock/logs/store.ts b/packages/core/src/renderer/components/dock/logs/store.ts index c448f3f4a0..4beb65f1b5 100644 --- a/packages/core/src/renderer/components/dock/logs/store.ts +++ b/packages/core/src/renderer/components/dock/logs/store.ts @@ -6,7 +6,7 @@ import type { IComputedValue } from "mobx"; import { observable } from "mobx"; import type { PodLogsQuery, Pod } from "../../../../common/k8s-api/endpoints"; -import { waitUntilDefined } from "@k8slens/utilities/src/wait"; +import { waitUntilDefined } from "@k8slens/utilities"; import type { IntervalFn } from "@k8slens/utilities"; import { getOrInsertWith, interval } from "@k8slens/utilities"; import type { TabId } from "../dock/store"; diff --git a/packages/core/src/renderer/components/dock/terminal/send-command.injectable.ts b/packages/core/src/renderer/components/dock/terminal/send-command.injectable.ts index 74eedfb9d4..c4c0e975aa 100644 --- a/packages/core/src/renderer/components/dock/terminal/send-command.injectable.ts +++ b/packages/core/src/renderer/components/dock/terminal/send-command.injectable.ts @@ -6,7 +6,7 @@ import { getInjectable } from "@ogre-tools/injectable"; import { when } from "mobx"; import loggerInjectable from "../../../../common/logger.injectable"; import { TerminalChannels } from "../../../../common/terminal/channels"; -import { waitUntilDefined } from "@k8slens/utilities/src/wait"; +import { waitUntilDefined } from "@k8slens/utilities"; import { noop } from "@k8slens/utilities"; import showSuccessNotificationInjectable from "../../notifications/show-success-notification.injectable"; import selectDockTabInjectable from "../dock/select-dock-tab.injectable"; diff --git a/packages/core/src/renderer/components/kubeconfig-dialog/open-service-account-kube-config-dialog.injectable.ts b/packages/core/src/renderer/components/kubeconfig-dialog/open-service-account-kube-config-dialog.injectable.ts index 32e79e4fb3..658331fe9e 100644 --- a/packages/core/src/renderer/components/kubeconfig-dialog/open-service-account-kube-config-dialog.injectable.ts +++ b/packages/core/src/renderer/components/kubeconfig-dialog/open-service-account-kube-config-dialog.injectable.ts @@ -5,7 +5,7 @@ import { getInjectable } from "@ogre-tools/injectable"; import apiBaseInjectable from "../../../common/k8s-api/api-base.injectable"; import type { ServiceAccount } from "../../../common/k8s-api/endpoints"; -import { urlBuilderFor } from "@k8slens/utilities/src/buildUrl"; +import { urlBuilderFor } from "@k8slens/utilities"; import openKubeconfigDialogInjectable from "./open.injectable"; export type OpenServiceAccountKubeConfigDialog = (account: ServiceAccount) => void; diff --git a/packages/core/src/renderer/port-forward/port-forward-store/request-active-port-forward.injectable.ts b/packages/core/src/renderer/port-forward/port-forward-store/request-active-port-forward.injectable.ts index 6a85c1b9c7..a54eb929a2 100644 --- a/packages/core/src/renderer/port-forward/port-forward-store/request-active-port-forward.injectable.ts +++ b/packages/core/src/renderer/port-forward/port-forward-store/request-active-port-forward.injectable.ts @@ -6,7 +6,7 @@ import { getInjectable } from "@ogre-tools/injectable"; import apiBaseInjectable from "../../../common/k8s-api/api-base.injectable"; import loggerInjectable from "../../../common/logger.injectable"; -import { urlBuilderFor } from "@k8slens/utilities/src/buildUrl"; +import { urlBuilderFor } from "@k8slens/utilities"; import type { ForwardedPort } from "../port-forward-item"; export type RequestActivePortForward = (portForward: ForwardedPort) => Promise; diff --git a/packages/core/src/renderer/routes/navigate-to-route.injectable.ts b/packages/core/src/renderer/routes/navigate-to-route.injectable.ts index a9aad5e99e..4a83b2f467 100644 --- a/packages/core/src/renderer/routes/navigate-to-route.injectable.ts +++ b/packages/core/src/renderer/routes/navigate-to-route.injectable.ts @@ -6,7 +6,7 @@ import { getInjectable } from "@ogre-tools/injectable"; import { navigateToUrlInjectionToken } from "../../common/front-end-routing/navigate-to-url-injection-token"; import { navigateToRouteInjectionToken } from "../../common/front-end-routing/navigate-to-route-injection-token"; import currentlyInClusterFrameInjectable from "./currently-in-cluster-frame.injectable"; -import { buildURL } from "@k8slens/utilities/src/buildUrl"; +import { buildURL } from "@k8slens/utilities"; const navigateToRouteInjectable = getInjectable({ id: "navigate-to-route", diff --git a/packages/utility-features/utilities/src/backoff-caller.ts b/packages/utility-features/utilities/src/backoff-caller.ts index 148ff4cd25..a76e666c7e 100644 --- a/packages/utility-features/utilities/src/backoff-caller.ts +++ b/packages/utility-features/utilities/src/backoff-caller.ts @@ -3,9 +3,9 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ -import type { AsyncResult } from "./async-result"; +import type { AsyncResult, Result } from "./result"; import { delay } from "./delay"; -import { noop } from "@k8slens/utilities/src/noop"; +import { noop } from "./noop"; /** * @param error The error that resulted in the failure @@ -25,7 +25,7 @@ export interface BackoffCallerOptions { maxAttempts?: number; /** - * In miliseconds + * In milliseconds * @default 1000 */ initialTimeout?: number; @@ -41,7 +41,7 @@ export interface BackoffCallerOptions { * @param fn The function to repeatedly attempt * @returns The first success or the last failure */ -export const backoffCaller = async >(fn: () => Promise, options?: BackoffCallerOptions): Promise => { +export const backoffCaller = async (fn: () => AsyncResult, options?: BackoffCallerOptions): AsyncResult => { const { initialTimeout = 1000, maxAttempts = 5, @@ -51,7 +51,7 @@ export const backoffCaller = async >(fn: () => let timeout = initialTimeout; let attempt = 0; - let result: R; + let result: Result; do { result = await fn(); diff --git a/packages/utility-features/utilities/src/camelCase.ts b/packages/utility-features/utilities/src/camelCase.ts index 1055c46ffb..056b427656 100644 --- a/packages/utility-features/utilities/src/camelCase.ts +++ b/packages/utility-features/utilities/src/camelCase.ts @@ -7,7 +7,7 @@ import { camelCase } from "lodash"; import type { SingleOrMany } from "./types"; import { isObject, isString } from "./type-narrowing"; -import * as object from "./object"; +import { object } from "./object"; export function toCamelCase[]>(obj: T): T; export function toCamelCase>(obj: T): T; diff --git a/packages/utility-features/utilities/src/cssNames.ts b/packages/utility-features/utilities/src/cssNames.ts index 66731c45bd..a8db957fcc 100755 --- a/packages/utility-features/utilities/src/cssNames.ts +++ b/packages/utility-features/utilities/src/cssNames.ts @@ -3,8 +3,8 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ -import * as iter from "./iter"; -import * as object from "./object"; +import { iter } from "./iter"; +import { object } from "./object"; import { isObject } from "./type-narrowing"; export type IgnoredClassNames = number | symbol | Function; diff --git a/packages/utility-features/utilities/src/hash-set.ts b/packages/utility-features/utilities/src/hash-set.ts index 23ce13b1b2..7369fa32d9 100644 --- a/packages/utility-features/utilities/src/hash-set.ts +++ b/packages/utility-features/utilities/src/hash-set.ts @@ -4,7 +4,7 @@ */ import type { IInterceptable, IInterceptor, IListenable, ISetWillChange, ObservableMap } from "mobx"; -import { action, observable, ObservableSet } from "mobx"; +import { observable, ObservableSet, runInAction } from "mobx"; export function makeIterableIterator(iterator: Iterator): IterableIterator { (iterator as IterableIterator)[Symbol.iterator] = () => iterator as IterableIterator; @@ -138,23 +138,24 @@ export class ObservableHashSet implements Set, IInterceptable(Array.from(initialValues, value => [this.hasher(value), value]), undefined); } - @action replace(other: ObservableHashSet | ObservableSet | Set | readonly T[]): this { - if (other === null || other === undefined) { + return runInAction(() => { + if (other === null || other === undefined) { + return this; + } + + if (!(Array.isArray(other) || other instanceof Set || other instanceof ObservableHashSet || other instanceof ObservableSet)) { + throw new Error(`ObservableHashSet: Cannot initialize set from ${other}`); + } + + this.clear(); + + for (const value of other) { + this.add(value); + } + return this; - } - - if (!(Array.isArray(other) || other instanceof Set || other instanceof ObservableHashSet || other instanceof ObservableSet)) { - throw new Error(`ObservableHashSet: Cannot initialize set from ${other}`); - } - - this.clear(); - - for (const value of other) { - this.add(value); - } - - return this; + }); } clear(): void { @@ -167,15 +168,16 @@ export class ObservableHashSet implements Set, IInterceptable { + const hash = this.hasher(value); - if (this.#hashmap.has(hash)) { - this.#hashmap.delete(hash); - } else { - this.#hashmap.set(hash, value); - } + if (this.#hashmap.has(hash)) { + this.#hashmap.delete(hash); + } else { + this.#hashmap.set(hash, value); + } + }); } delete(value: T): boolean { diff --git a/packages/utility-features/utilities/src/on-keyboard-shortcut.ts b/packages/utility-features/utilities/src/on-keyboard-shortcut.ts index 4504765ac7..443df8e5f0 100644 --- a/packages/utility-features/utilities/src/on-keyboard-shortcut.ts +++ b/packages/utility-features/utilities/src/on-keyboard-shortcut.ts @@ -3,8 +3,6 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ -import type { WindowEventListener } from "../window/event-listener.injectable"; - function parseKeyDownDescriptor(descriptor: string): (event: KeyboardEvent) => boolean { const parts = new Set(( descriptor @@ -43,7 +41,7 @@ function parseKeyDownDescriptor(descriptor: string): (event: KeyboardEvent) => b }; } -export function onKeyboardShortcut(descriptor: string, action: () => void): WindowEventListener<"keydown"> { +export function onKeyboardShortcut(descriptor: string, action: () => void): (this: Window, ev: WindowEventMap["keydown"]) => any { const isMatchingEvent = parseKeyDownDescriptor(descriptor); return (event) => { diff --git a/packages/utility-features/utilities/src/union-env-path.ts b/packages/utility-features/utilities/src/union-env-path.ts index a3a6d39ed6..ad41d049bc 100644 --- a/packages/utility-features/utilities/src/union-env-path.ts +++ b/packages/utility-features/utilities/src/union-env-path.ts @@ -4,7 +4,7 @@ */ import path from "path"; -import * as iter from "@k8slens/utilities/src/iter"; +import { iter } from "./iter"; /** * Join all entires with a PATH env var delimited string together