diff --git a/package.json b/package.json index 2dd48e4e54..f108fc5662 100644 --- a/package.json +++ b/package.json @@ -196,6 +196,7 @@ "chokidar": "^3.4.3", "command-exists": "1.2.9", "conf": "^7.0.1", + "cross-fetch": "^3.1.4", "crypto-js": "^4.0.0", "electron-devtools-installer": "^3.2.0", "electron-updater": "^4.3.1", diff --git a/src/renderer/item.store.ts b/src/common/item.store.ts similarity index 99% rename from src/renderer/item.store.ts rename to src/common/item.store.ts index 2b5a736abd..477bf0e62e 100644 --- a/src/renderer/item.store.ts +++ b/src/common/item.store.ts @@ -20,7 +20,7 @@ */ import orderBy from "lodash/orderBy"; -import { autoBind } from "./utils"; +import { autoBind } from "../renderer/utils"; import { action, computed, observable, when, makeObservable } from "mobx"; export interface ItemObject { diff --git a/src/renderer/api/__tests__/api-manager.test.ts b/src/common/k8s-api/__tests__/api-manager.test.ts similarity index 96% rename from src/renderer/api/__tests__/api-manager.test.ts rename to src/common/k8s-api/__tests__/api-manager.test.ts index 83034d20b6..27c2575341 100644 --- a/src/renderer/api/__tests__/api-manager.test.ts +++ b/src/common/k8s-api/__tests__/api-manager.test.ts @@ -19,7 +19,7 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { ingressStore } from "../../components/+network-ingresses/ingress.store"; +import { ingressStore } from "../../../renderer/components/+network-ingresses/ingress.store"; import { apiManager } from "../api-manager"; import { KubeApi } from "../kube-api"; import { KubeObject } from "../kube-object"; diff --git a/src/renderer/api/__tests__/crd.test.ts b/src/common/k8s-api/__tests__/crd.test.ts similarity index 100% rename from src/renderer/api/__tests__/crd.test.ts rename to src/common/k8s-api/__tests__/crd.test.ts diff --git a/src/renderer/api/__tests__/endpoint.api.test.ts b/src/common/k8s-api/__tests__/endpoint.api.test.ts similarity index 100% rename from src/renderer/api/__tests__/endpoint.api.test.ts rename to src/common/k8s-api/__tests__/endpoint.api.test.ts diff --git a/src/renderer/api/__tests__/kube-api-parse.test.ts b/src/common/k8s-api/__tests__/kube-api-parse.test.ts similarity index 100% rename from src/renderer/api/__tests__/kube-api-parse.test.ts rename to src/common/k8s-api/__tests__/kube-api-parse.test.ts diff --git a/src/renderer/api/__tests__/kube-api.test.ts b/src/common/k8s-api/__tests__/kube-api.test.ts similarity index 100% rename from src/renderer/api/__tests__/kube-api.test.ts rename to src/common/k8s-api/__tests__/kube-api.test.ts diff --git a/src/renderer/api/__tests__/kube-object.test.ts b/src/common/k8s-api/__tests__/kube-object.test.ts similarity index 100% rename from src/renderer/api/__tests__/kube-object.test.ts rename to src/common/k8s-api/__tests__/kube-object.test.ts diff --git a/src/renderer/api/__tests__/pods.api.test.ts b/src/common/k8s-api/__tests__/pods.api.test.ts similarity index 100% rename from src/renderer/api/__tests__/pods.api.test.ts rename to src/common/k8s-api/__tests__/pods.api.test.ts diff --git a/src/renderer/api/__tests__/pods.test.ts b/src/common/k8s-api/__tests__/pods.test.ts similarity index 100% rename from src/renderer/api/__tests__/pods.test.ts rename to src/common/k8s-api/__tests__/pods.test.ts diff --git a/src/renderer/api/api-manager.ts b/src/common/k8s-api/api-manager.ts similarity index 98% rename from src/renderer/api/api-manager.ts rename to src/common/k8s-api/api-manager.ts index e11fd9a07b..8eabef621a 100644 --- a/src/renderer/api/api-manager.ts +++ b/src/common/k8s-api/api-manager.ts @@ -19,7 +19,7 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import type { KubeObjectStore } from "../kube-object.store"; +import type { KubeObjectStore } from "./kube-object.store"; import { action, observable, makeObservable } from "mobx"; import { autoBind, iter } from "../utils"; diff --git a/src/common/k8s-api/cluster-context.ts b/src/common/k8s-api/cluster-context.ts new file mode 100644 index 0000000000..596e658bde --- /dev/null +++ b/src/common/k8s-api/cluster-context.ts @@ -0,0 +1,28 @@ +/** + * Copyright (c) 2021 OpenLens Authors + * + * Permission is hereby granted, free of charge, to any person obtaining a copy of + * this software and associated documentation files (the "Software"), to deal in + * the Software without restriction, including without limitation the rights to + * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of + * the Software, and to permit persons to whom the Software is furnished to do so, + * subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS + * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR + * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + +import type { Cluster } from "../../main/cluster"; + +export interface ClusterContext { + cluster?: Cluster; + allNamespaces: string[]; // available / allowed namespaces from cluster.ts + contextNamespaces: string[]; // selected by user (see: namespace-select.tsx) +} diff --git a/src/renderer/api/endpoints/cluster-role-binding.api.ts b/src/common/k8s-api/endpoints/cluster-role-binding.api.ts similarity index 100% rename from src/renderer/api/endpoints/cluster-role-binding.api.ts rename to src/common/k8s-api/endpoints/cluster-role-binding.api.ts diff --git a/src/renderer/api/endpoints/cluster-role.api.ts b/src/common/k8s-api/endpoints/cluster-role.api.ts similarity index 100% rename from src/renderer/api/endpoints/cluster-role.api.ts rename to src/common/k8s-api/endpoints/cluster-role.api.ts diff --git a/src/renderer/api/endpoints/cluster.api.ts b/src/common/k8s-api/endpoints/cluster.api.ts similarity index 100% rename from src/renderer/api/endpoints/cluster.api.ts rename to src/common/k8s-api/endpoints/cluster.api.ts diff --git a/src/renderer/api/endpoints/component-status.api.ts b/src/common/k8s-api/endpoints/component-status.api.ts similarity index 100% rename from src/renderer/api/endpoints/component-status.api.ts rename to src/common/k8s-api/endpoints/component-status.api.ts diff --git a/src/renderer/api/endpoints/configmap.api.ts b/src/common/k8s-api/endpoints/configmap.api.ts similarity index 97% rename from src/renderer/api/endpoints/configmap.api.ts rename to src/common/k8s-api/endpoints/configmap.api.ts index 5087f352ca..95a69f945e 100644 --- a/src/renderer/api/endpoints/configmap.api.ts +++ b/src/common/k8s-api/endpoints/configmap.api.ts @@ -22,7 +22,7 @@ import { KubeObject } from "../kube-object"; import type { KubeJsonApiData } from "../kube-json-api"; import { KubeApi } from "../kube-api"; -import { autoBind } from "../../../common/utils"; +import { autoBind } from "../../utils"; export interface ConfigMap { data: { diff --git a/src/renderer/api/endpoints/crd.api.ts b/src/common/k8s-api/endpoints/crd.api.ts similarity index 98% rename from src/renderer/api/endpoints/crd.api.ts rename to src/common/k8s-api/endpoints/crd.api.ts index 35f85b8832..c0989cb139 100644 --- a/src/renderer/api/endpoints/crd.api.ts +++ b/src/common/k8s-api/endpoints/crd.api.ts @@ -21,7 +21,7 @@ import { KubeObject } from "../kube-object"; import { KubeApi } from "../kube-api"; -import { crdResourcesURL } from "../../../common/routes"; +import { crdResourcesURL } from "../../routes"; type AdditionalPrinterColumnsCommon = { name: string; diff --git a/src/renderer/api/endpoints/cron-job.api.ts b/src/common/k8s-api/endpoints/cron-job.api.ts similarity index 98% rename from src/renderer/api/endpoints/cron-job.api.ts rename to src/common/k8s-api/endpoints/cron-job.api.ts index 43743b2bb4..64cf9f356e 100644 --- a/src/renderer/api/endpoints/cron-job.api.ts +++ b/src/common/k8s-api/endpoints/cron-job.api.ts @@ -23,7 +23,7 @@ import moment from "moment"; import { KubeObject } from "../kube-object"; import type { IPodContainer } from "./pods.api"; import { formatDuration } from "../../utils/formatDuration"; -import { autoBind } from "../../utils"; +import { autoBind } from "../../../renderer/utils"; import { KubeApi } from "../kube-api"; import type { KubeJsonApiData } from "../kube-json-api"; diff --git a/src/renderer/api/endpoints/daemon-set.api.ts b/src/common/k8s-api/endpoints/daemon-set.api.ts similarity index 100% rename from src/renderer/api/endpoints/daemon-set.api.ts rename to src/common/k8s-api/endpoints/daemon-set.api.ts diff --git a/src/renderer/api/endpoints/deployment.api.ts b/src/common/k8s-api/endpoints/deployment.api.ts similarity index 100% rename from src/renderer/api/endpoints/deployment.api.ts rename to src/common/k8s-api/endpoints/deployment.api.ts diff --git a/src/renderer/api/endpoints/endpoint.api.ts b/src/common/k8s-api/endpoints/endpoint.api.ts similarity index 100% rename from src/renderer/api/endpoints/endpoint.api.ts rename to src/common/k8s-api/endpoints/endpoint.api.ts diff --git a/src/renderer/api/endpoints/events.api.ts b/src/common/k8s-api/endpoints/events.api.ts similarity index 100% rename from src/renderer/api/endpoints/events.api.ts rename to src/common/k8s-api/endpoints/events.api.ts diff --git a/src/renderer/api/endpoints/helm-charts.api.ts b/src/common/k8s-api/endpoints/helm-charts.api.ts similarity index 98% rename from src/renderer/api/endpoints/helm-charts.api.ts rename to src/common/k8s-api/endpoints/helm-charts.api.ts index 2244bca1f2..7bef9d1950 100644 --- a/src/renderer/api/endpoints/helm-charts.api.ts +++ b/src/common/k8s-api/endpoints/helm-charts.api.ts @@ -22,7 +22,7 @@ import { compile } from "path-to-regexp"; import { apiBase } from "../index"; import { stringify } from "querystring"; -import { autoBind } from "../../utils"; +import { autoBind } from "../../../renderer/utils"; export type RepoHelmChartList = Record; export type HelmChartList = Record; diff --git a/src/renderer/api/endpoints/helm-releases.api.ts b/src/common/k8s-api/endpoints/helm-releases.api.ts similarity index 97% rename from src/renderer/api/endpoints/helm-releases.api.ts rename to src/common/k8s-api/endpoints/helm-releases.api.ts index 9a4a05875c..301e077e4e 100644 --- a/src/renderer/api/endpoints/helm-releases.api.ts +++ b/src/common/k8s-api/endpoints/helm-releases.api.ts @@ -23,11 +23,11 @@ import jsYaml from "js-yaml"; import { autoBind, formatDuration } from "../../utils"; import capitalize from "lodash/capitalize"; import { apiBase } from "../index"; -import { helmChartStore } from "../../components/+apps-helm-charts/helm-chart.store"; +import { helmChartStore } from "../../../renderer/components/+apps-helm-charts/helm-chart.store"; import type { ItemObject } from "../../item.store"; import { KubeObject } from "../kube-object"; import type { JsonApiData } from "../json-api"; -import { buildURLPositional } from "../../../common/utils/buildUrl"; +import { buildURLPositional } from "../../utils/buildUrl"; import type { KubeJsonApiData } from "../kube-json-api"; interface IReleasePayload { diff --git a/src/renderer/api/endpoints/hpa.api.ts b/src/common/k8s-api/endpoints/hpa.api.ts similarity index 100% rename from src/renderer/api/endpoints/hpa.api.ts rename to src/common/k8s-api/endpoints/hpa.api.ts diff --git a/src/renderer/api/endpoints/index.ts b/src/common/k8s-api/endpoints/index.ts similarity index 100% rename from src/renderer/api/endpoints/index.ts rename to src/common/k8s-api/endpoints/index.ts diff --git a/src/renderer/api/endpoints/ingress.api.ts b/src/common/k8s-api/endpoints/ingress.api.ts similarity index 100% rename from src/renderer/api/endpoints/ingress.api.ts rename to src/common/k8s-api/endpoints/ingress.api.ts diff --git a/src/renderer/api/endpoints/job.api.ts b/src/common/k8s-api/endpoints/job.api.ts similarity index 100% rename from src/renderer/api/endpoints/job.api.ts rename to src/common/k8s-api/endpoints/job.api.ts diff --git a/src/renderer/api/endpoints/limit-range.api.ts b/src/common/k8s-api/endpoints/limit-range.api.ts similarity index 100% rename from src/renderer/api/endpoints/limit-range.api.ts rename to src/common/k8s-api/endpoints/limit-range.api.ts diff --git a/src/renderer/api/endpoints/metrics.api.ts b/src/common/k8s-api/endpoints/metrics.api.ts similarity index 100% rename from src/renderer/api/endpoints/metrics.api.ts rename to src/common/k8s-api/endpoints/metrics.api.ts diff --git a/src/renderer/api/endpoints/namespaces.api.ts b/src/common/k8s-api/endpoints/namespaces.api.ts similarity index 97% rename from src/renderer/api/endpoints/namespaces.api.ts rename to src/common/k8s-api/endpoints/namespaces.api.ts index 208edb023f..7e9d6fa9a4 100644 --- a/src/renderer/api/endpoints/namespaces.api.ts +++ b/src/common/k8s-api/endpoints/namespaces.api.ts @@ -21,7 +21,7 @@ import { KubeApi } from "../kube-api"; import { KubeObject } from "../kube-object"; -import { autoBind } from "../../utils"; +import { autoBind } from "../../../renderer/utils"; import { metricsApi } from "./metrics.api"; import type { IPodMetrics } from "./pods.api"; import type { KubeJsonApiData } from "../kube-json-api"; diff --git a/src/renderer/api/endpoints/network-policy.api.ts b/src/common/k8s-api/endpoints/network-policy.api.ts similarity index 100% rename from src/renderer/api/endpoints/network-policy.api.ts rename to src/common/k8s-api/endpoints/network-policy.api.ts diff --git a/src/renderer/api/endpoints/nodes.api.ts b/src/common/k8s-api/endpoints/nodes.api.ts similarity index 99% rename from src/renderer/api/endpoints/nodes.api.ts rename to src/common/k8s-api/endpoints/nodes.api.ts index 21f7776c58..d03c5f96d9 100644 --- a/src/renderer/api/endpoints/nodes.api.ts +++ b/src/common/k8s-api/endpoints/nodes.api.ts @@ -20,7 +20,7 @@ */ import { KubeObject } from "../kube-object"; -import { autoBind, cpuUnitsToNumber, unitsToBytes } from "../../utils"; +import { autoBind, cpuUnitsToNumber, unitsToBytes } from "../../../renderer/utils"; import { IMetrics, metricsApi } from "./metrics.api"; import { KubeApi } from "../kube-api"; import type { KubeJsonApiData } from "../kube-json-api"; diff --git a/src/renderer/api/endpoints/persistent-volume-claims.api.ts b/src/common/k8s-api/endpoints/persistent-volume-claims.api.ts similarity index 100% rename from src/renderer/api/endpoints/persistent-volume-claims.api.ts rename to src/common/k8s-api/endpoints/persistent-volume-claims.api.ts diff --git a/src/renderer/api/endpoints/persistent-volume.api.ts b/src/common/k8s-api/endpoints/persistent-volume.api.ts similarity index 97% rename from src/renderer/api/endpoints/persistent-volume.api.ts rename to src/common/k8s-api/endpoints/persistent-volume.api.ts index e71c355977..cd3196287e 100644 --- a/src/renderer/api/endpoints/persistent-volume.api.ts +++ b/src/common/k8s-api/endpoints/persistent-volume.api.ts @@ -20,7 +20,7 @@ */ import { KubeObject } from "../kube-object"; -import { unitsToBytes } from "../../utils/convertMemory"; +import { unitsToBytes } from "../../../renderer/utils/convertMemory"; import { autoBind } from "../../utils"; import { KubeApi } from "../kube-api"; import type { KubeJsonApiData } from "../kube-json-api"; diff --git a/src/renderer/api/endpoints/pod-metrics.api.ts b/src/common/k8s-api/endpoints/pod-metrics.api.ts similarity index 100% rename from src/renderer/api/endpoints/pod-metrics.api.ts rename to src/common/k8s-api/endpoints/pod-metrics.api.ts diff --git a/src/renderer/api/endpoints/poddisruptionbudget.api.ts b/src/common/k8s-api/endpoints/poddisruptionbudget.api.ts similarity index 100% rename from src/renderer/api/endpoints/poddisruptionbudget.api.ts rename to src/common/k8s-api/endpoints/poddisruptionbudget.api.ts diff --git a/src/renderer/api/endpoints/pods.api.ts b/src/common/k8s-api/endpoints/pods.api.ts similarity index 100% rename from src/renderer/api/endpoints/pods.api.ts rename to src/common/k8s-api/endpoints/pods.api.ts diff --git a/src/renderer/api/endpoints/podsecuritypolicy.api.ts b/src/common/k8s-api/endpoints/podsecuritypolicy.api.ts similarity index 100% rename from src/renderer/api/endpoints/podsecuritypolicy.api.ts rename to src/common/k8s-api/endpoints/podsecuritypolicy.api.ts diff --git a/src/renderer/api/endpoints/replica-set.api.ts b/src/common/k8s-api/endpoints/replica-set.api.ts similarity index 98% rename from src/renderer/api/endpoints/replica-set.api.ts rename to src/common/k8s-api/endpoints/replica-set.api.ts index 4632e1bfad..7e74d149c7 100644 --- a/src/renderer/api/endpoints/replica-set.api.ts +++ b/src/common/k8s-api/endpoints/replica-set.api.ts @@ -20,7 +20,7 @@ */ import get from "lodash/get"; -import { autoBind } from "../../utils"; +import { autoBind } from "../../../renderer/utils"; import { WorkloadKubeObject } from "../workload-kube-object"; import { KubeApi } from "../kube-api"; import { metricsApi } from "./metrics.api"; diff --git a/src/renderer/api/endpoints/resource-applier.api.ts b/src/common/k8s-api/endpoints/resource-applier.api.ts similarity index 100% rename from src/renderer/api/endpoints/resource-applier.api.ts rename to src/common/k8s-api/endpoints/resource-applier.api.ts diff --git a/src/renderer/api/endpoints/resource-quota.api.ts b/src/common/k8s-api/endpoints/resource-quota.api.ts similarity index 100% rename from src/renderer/api/endpoints/resource-quota.api.ts rename to src/common/k8s-api/endpoints/resource-quota.api.ts diff --git a/src/renderer/api/endpoints/role-binding.api.ts b/src/common/k8s-api/endpoints/role-binding.api.ts similarity index 100% rename from src/renderer/api/endpoints/role-binding.api.ts rename to src/common/k8s-api/endpoints/role-binding.api.ts diff --git a/src/renderer/api/endpoints/role.api.ts b/src/common/k8s-api/endpoints/role.api.ts similarity index 100% rename from src/renderer/api/endpoints/role.api.ts rename to src/common/k8s-api/endpoints/role.api.ts diff --git a/src/renderer/api/endpoints/secret.api.ts b/src/common/k8s-api/endpoints/secret.api.ts similarity index 100% rename from src/renderer/api/endpoints/secret.api.ts rename to src/common/k8s-api/endpoints/secret.api.ts diff --git a/src/renderer/api/endpoints/selfsubjectrulesreviews.api.ts b/src/common/k8s-api/endpoints/selfsubjectrulesreviews.api.ts similarity index 100% rename from src/renderer/api/endpoints/selfsubjectrulesreviews.api.ts rename to src/common/k8s-api/endpoints/selfsubjectrulesreviews.api.ts diff --git a/src/renderer/api/endpoints/service-accounts.api.ts b/src/common/k8s-api/endpoints/service-accounts.api.ts similarity index 100% rename from src/renderer/api/endpoints/service-accounts.api.ts rename to src/common/k8s-api/endpoints/service-accounts.api.ts diff --git a/src/renderer/api/endpoints/service.api.ts b/src/common/k8s-api/endpoints/service.api.ts similarity index 98% rename from src/renderer/api/endpoints/service.api.ts rename to src/common/k8s-api/endpoints/service.api.ts index e9a6b9b40f..d2c3d05684 100644 --- a/src/renderer/api/endpoints/service.api.ts +++ b/src/common/k8s-api/endpoints/service.api.ts @@ -19,7 +19,7 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { autoBind } from "../../utils"; +import { autoBind } from "../../../renderer/utils"; import { KubeObject } from "../kube-object"; import { KubeApi } from "../kube-api"; import type { KubeJsonApiData } from "../kube-json-api"; diff --git a/src/renderer/api/endpoints/stateful-set.api.ts b/src/common/k8s-api/endpoints/stateful-set.api.ts similarity index 100% rename from src/renderer/api/endpoints/stateful-set.api.ts rename to src/common/k8s-api/endpoints/stateful-set.api.ts diff --git a/src/renderer/api/endpoints/storage-class.api.ts b/src/common/k8s-api/endpoints/storage-class.api.ts similarity index 100% rename from src/renderer/api/endpoints/storage-class.api.ts rename to src/common/k8s-api/endpoints/storage-class.api.ts diff --git a/src/common/k8s-api/index.ts b/src/common/k8s-api/index.ts new file mode 100644 index 0000000000..8705b42da0 --- /dev/null +++ b/src/common/k8s-api/index.ts @@ -0,0 +1,33 @@ +/** + * Copyright (c) 2021 OpenLens Authors + * + * Permission is hereby granted, free of charge, to any person obtaining a copy of + * this software and associated documentation files (the "Software"), to deal in + * the Software without restriction, including without limitation the rights to + * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of + * the Software, and to permit persons to whom the Software is furnished to do so, + * subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS + * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR + * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + +import { JsonApi } from "./json-api"; +import { KubeJsonApi } from "./kube-json-api"; +import { apiKubePrefix, apiPrefix, isDebugging, isDevelopment } from "../../common/vars"; + +export const apiBase = new JsonApi({ + apiBase: apiPrefix, + debug: isDevelopment || isDebugging, +}); +export const apiKube = new KubeJsonApi({ + apiBase: apiKubePrefix, + debug: isDevelopment, +}); diff --git a/src/renderer/api/json-api.ts b/src/common/k8s-api/json-api.ts similarity index 89% rename from src/renderer/api/json-api.ts rename to src/common/k8s-api/json-api.ts index 0060259c76..02a855050c 100644 --- a/src/renderer/api/json-api.ts +++ b/src/common/k8s-api/json-api.ts @@ -21,9 +21,12 @@ // Base http-service / json-api class +import fetch from "cross-fetch"; import { stringify } from "querystring"; import { EventEmitter } from "../../common/event-emitter"; import { randomBytes } from "crypto"; +import { ipcRenderer } from "electron"; +import logger from "../../common/logger"; export interface JsonApiData { } @@ -78,8 +81,16 @@ export class JsonApi { getResponse(path: string, params?: P, init: RequestInit = {}): Promise { const reqPath = `${this.config.apiBase}${path}`; - const subdomain = randomBytes(2).toString("hex"); - let reqUrl = `http://${subdomain}.${window.location.host}${reqPath}`; // hack around browser connection limits (chromium allows 6 per domain) + let reqUrl: string; + + if (ipcRenderer) { + const subdomain = randomBytes(2).toString("hex"); + + reqUrl = `http://${subdomain}.${window.location.host}${reqPath}`; // hack around browser connection limits (chromium allows 6 per domain) + } else { + reqUrl = reqPath; + } + const reqInit: RequestInit = { ...init }; const { query } = params || {} as P; @@ -194,11 +205,12 @@ export class JsonApi { protected writeLog(log: JsonApiLog) { if (!this.config.debug) return; const { method, reqUrl, ...params } = log; - let textStyle = "font-weight: bold;"; + // let textStyle = "font-weight: bold;"; - if (params.data) textStyle += "background: green; color: white;"; - if (params.error) textStyle += "background: red; color: white;"; - console.log(`%c${method} ${reqUrl}`, textStyle, params); + // if (params.data) textStyle += "background: green; color: white;"; + // if (params.error) textStyle += "background: red; color: white;"; + //console.log(`%c${method} ${reqUrl}`, textStyle, params); + logger.info(`[JSON-API] request ${method} ${reqUrl}`, params); } } diff --git a/src/renderer/api/kube-api-parse.ts b/src/common/k8s-api/kube-api-parse.ts similarity index 96% rename from src/renderer/api/kube-api-parse.ts rename to src/common/k8s-api/kube-api-parse.ts index 53d731203d..57c835ed6b 100644 --- a/src/renderer/api/kube-api-parse.ts +++ b/src/common/k8s-api/kube-api-parse.ts @@ -21,8 +21,8 @@ // Parse kube-api path and get api-version, group, etc. -import { splitArray } from "../../common/utils"; -import { isDebugging } from "../../common/vars"; +import { splitArray } from "../utils"; +import { isDebugging } from "../vars"; import logger from "../../main/logger"; import { inspect } from "util"; @@ -66,7 +66,7 @@ export function parseKubeApi(path: string): IKubeApiParsed { } function _parseKubeApi(path: string): IKubeApiParsed { - const apiPath = new URL(path, location.origin).pathname; + const apiPath = new URL(path, "http://localhost").pathname; const [, prefix, ...parts] = apiPath.split("/"); const apiPrefix = `/${prefix}`; const [left, right, namespaced] = splitArray(parts, "namespaces"); diff --git a/src/renderer/api/kube-api.ts b/src/common/k8s-api/kube-api.ts similarity index 98% rename from src/renderer/api/kube-api.ts rename to src/common/k8s-api/kube-api.ts index 5fe65a2357..2ed2c8c065 100644 --- a/src/renderer/api/kube-api.ts +++ b/src/common/k8s-api/kube-api.ts @@ -31,7 +31,7 @@ import { createKubeApiURL, parseKubeApi } from "./kube-api-parse"; import { KubeObjectConstructor, KubeObject, KubeStatus } from "./kube-object"; import byline from "byline"; import type { IKubeWatchEvent } from "./kube-watch-api"; -import { ReadableWebToNodeStream } from "../utils/readableStream"; +import { ReadableWebToNodeStream } from "../../renderer/utils/readableStream"; import { KubeJsonApi, KubeJsonApiData } from "./kube-json-api"; import { noop } from "../utils"; @@ -168,7 +168,6 @@ export class KubeApi { this.request = request; this.objectConstructor = objectConstructor; - this.checkPreferredVersion(); this.parseResponse = this.parseResponse.bind(this); apiManager.registerApi(apiBase, this); } @@ -474,7 +473,7 @@ export class KubeApi { }); }) .catch(error => { - if (error instanceof DOMException) return; // AbortController rejects, we can ignore it + if (typeof DOMException === "function" && error instanceof DOMException) return; // AbortController rejects, we can ignore it callback(null, error); }); diff --git a/src/renderer/api/kube-json-api.ts b/src/common/k8s-api/kube-json-api.ts similarity index 99% rename from src/renderer/api/kube-json-api.ts rename to src/common/k8s-api/kube-json-api.ts index ebb01b696c..432c6f8370 100644 --- a/src/renderer/api/kube-json-api.ts +++ b/src/common/k8s-api/kube-json-api.ts @@ -79,3 +79,4 @@ export class KubeJsonApi extends JsonApi { return super.parseError(error, res); } } + diff --git a/src/renderer/kube-object.store.ts b/src/common/k8s-api/kube-object.store.ts similarity index 95% rename from src/renderer/kube-object.store.ts rename to src/common/k8s-api/kube-object.store.ts index fd53345655..b65426b489 100644 --- a/src/renderer/kube-object.store.ts +++ b/src/common/k8s-api/kube-object.store.ts @@ -19,18 +19,17 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import type { ClusterContext } from "./components/context"; +import type { ClusterContext } from "./cluster-context"; import { action, computed, makeObservable, observable, reaction, when } from "mobx"; -import { autoBind, noop, rejectPromiseBy } from "./utils"; -import { KubeObject, KubeStatus } from "./api/kube-object"; -import type { IKubeWatchEvent } from "./api/kube-watch-api"; -import { ItemStore } from "./item.store"; -import { apiManager } from "./api/api-manager"; -import { ensureObjectSelfLink, IKubeApiQueryParams, KubeApi } from "./api/kube-api"; -import { parseKubeApi } from "./api/kube-api-parse"; -import type { KubeJsonApiData } from "./api/kube-json-api"; -import { Notifications } from "./components/notifications"; +import { autoBind, noop, rejectPromiseBy } from "../utils"; +import { KubeObject, KubeStatus } from "./kube-object"; +import type { IKubeWatchEvent } from "./kube-watch-api"; +import { ItemStore } from "../item.store"; +import { apiManager } from "./api-manager"; +import { ensureObjectSelfLink, IKubeApiQueryParams, KubeApi } from "./kube-api"; +import { parseKubeApi } from "./kube-api-parse"; +import type { KubeJsonApiData } from "./kube-json-api"; export interface KubeObjectStoreLoadingParams { namespaces: string[]; @@ -193,9 +192,9 @@ export abstract class KubeObjectStore extends ItemStore return items; } catch (error) { - if (error.message) { - Notifications.error(error.message); - } + // if (error.message) { + // Notifications.error(error.message); + // } console.warn("[KubeObjectStore] loadAll failed", this.api.apiBase, error); this.resetOnError(error); this.failedLoading = true; diff --git a/src/renderer/api/kube-object.ts b/src/common/k8s-api/kube-object.ts similarity index 100% rename from src/renderer/api/kube-object.ts rename to src/common/k8s-api/kube-object.ts diff --git a/src/renderer/api/kube-watch-api.ts b/src/common/k8s-api/kube-watch-api.ts similarity index 95% rename from src/renderer/api/kube-watch-api.ts rename to src/common/k8s-api/kube-watch-api.ts index 4d316b5caa..f7b72d1704 100644 --- a/src/renderer/api/kube-watch-api.ts +++ b/src/common/k8s-api/kube-watch-api.ts @@ -22,15 +22,15 @@ // Kubernetes watch-api client // API: https://developer.mozilla.org/en-US/docs/Web/API/Streams_API/Using_readable_streams -import type { KubeObjectStore } from "../kube-object.store"; -import type { ClusterContext } from "../components/context"; +import type { KubeObjectStore } from "./kube-object.store"; +import type { ClusterContext } from "./cluster-context"; import plimit from "p-limit"; import { comparer, observable, reaction, makeObservable } from "mobx"; -import { autoBind, Disposer, noop } from "../utils"; +import { autoBind, Disposer, noop } from "../../renderer/utils"; import type { KubeApi } from "./kube-api"; import type { KubeJsonApiData } from "./kube-json-api"; -import { isDebugging, isProduction } from "../../common/vars"; +import { isDebugging, isProduction } from "../vars"; import type { KubeObject } from "./kube-object"; export interface IKubeWatchEvent { diff --git a/src/renderer/api/workload-kube-object.ts b/src/common/k8s-api/workload-kube-object.ts similarity index 100% rename from src/renderer/api/workload-kube-object.ts rename to src/common/k8s-api/workload-kube-object.ts diff --git a/src/common/logger.ts b/src/common/logger.ts new file mode 100644 index 0000000000..48a794b19c --- /dev/null +++ b/src/common/logger.ts @@ -0,0 +1,51 @@ +/** + * Copyright (c) 2021 OpenLens Authors + * + * Permission is hereby granted, free of charge, to any person obtaining a copy of + * this software and associated documentation files (the "Software"), to deal in + * the Software without restriction, including without limitation the rights to + * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of + * the Software, and to permit persons to whom the Software is furnished to do so, + * subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS + * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR + * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + +import { app, remote } from "electron"; +import winston from "winston"; +import { isDebugging, isTestEnv } from "./vars"; + +const logLevel = process.env.LOG_LEVEL ? process.env.LOG_LEVEL : isDebugging ? "debug" : "info"; +const consoleOptions: winston.transports.ConsoleTransportOptions = { + handleExceptions: false, + level: logLevel, +}; +const fileOptions: winston.transports.FileTransportOptions = { + handleExceptions: false, + level: logLevel, + filename: "lens.log", + dirname: (app ?? remote?.app)?.getPath("logs"), + maxsize: 16 * 1024, + maxFiles: 16, + tailable: true, +}; +const logger = winston.createLogger({ + format: winston.format.combine( + winston.format.colorize(), + winston.format.simple(), + ), + transports: [ + new winston.transports.Console(consoleOptions), + ...(isTestEnv ? [] : [new winston.transports.File(fileOptions)]), + ], +}); + +export default logger; diff --git a/src/renderer/utils/__tests__/formatDuration.test.ts b/src/common/utils/__tests__/formatDuration.test.ts similarity index 100% rename from src/renderer/utils/__tests__/formatDuration.test.ts rename to src/common/utils/__tests__/formatDuration.test.ts diff --git a/src/renderer/utils/formatDuration.ts b/src/common/utils/formatDuration.ts similarity index 100% rename from src/renderer/utils/formatDuration.ts rename to src/common/utils/formatDuration.ts diff --git a/src/common/utils/index.ts b/src/common/utils/index.ts index 140ceaea2c..9385053b0f 100644 --- a/src/common/utils/index.ts +++ b/src/common/utils/index.ts @@ -37,6 +37,7 @@ export * from "./defineGlobal"; export * from "./delay"; export * from "./disposer"; export * from "./downloadFile"; +export * from "./formatDuration"; export * from "./escapeRegExp"; export * from "./extended-map"; export * from "./getRandId"; diff --git a/src/extensions/main-api/index.ts b/src/extensions/main-api/index.ts index a596e8169e..012ff0ebde 100644 --- a/src/extensions/main-api/index.ts +++ b/src/extensions/main-api/index.ts @@ -21,12 +21,14 @@ import * as Catalog from "./catalog"; import * as Navigation from "./navigation"; +import * as K8sApi from "./k8s-api"; import { IpcMain as Ipc } from "../ipc/ipc-main"; import { LensMainExtension as LensExtension } from "../lens-main-extension"; export { Catalog, Navigation, + K8sApi, Ipc, LensExtension, }; diff --git a/src/extensions/main-api/k8s-api.ts b/src/extensions/main-api/k8s-api.ts new file mode 100644 index 0000000000..991415cc56 --- /dev/null +++ b/src/extensions/main-api/k8s-api.ts @@ -0,0 +1,60 @@ +/** + * Copyright (c) 2021 OpenLens Authors + * + * Permission is hereby granted, free of charge, to any person obtaining a copy of + * this software and associated documentation files (the "Software"), to deal in + * the Software without restriction, including without limitation the rights to + * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of + * the Software, and to permit persons to whom the Software is furnished to do so, + * subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS + * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR + * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER + * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + +export { isAllowedResource } from "../../common/utils/allowed-resource"; +export { ResourceStack } from "../../common/k8s/resource-stack"; +export { apiManager } from "../../common/k8s-api/api-manager"; +export { KubeApi, forCluster } from "../../common/k8s-api/kube-api"; +export { KubeObject } from "../../common/k8s-api/kube-object"; +export { Pod, podsApi, PodsApi } from "../../common/k8s-api/endpoints/pods.api"; +export { Node, nodesApi, NodesApi } from "../../common/k8s-api/endpoints/nodes.api"; +export { Deployment, deploymentApi, DeploymentApi } from "../../common/k8s-api/endpoints/deployment.api"; +export { DaemonSet, daemonSetApi } from "../../common/k8s-api/endpoints/daemon-set.api"; +export { StatefulSet, statefulSetApi } from "../../common/k8s-api/endpoints/stateful-set.api"; +export { Job, jobApi } from "../../common/k8s-api/endpoints/job.api"; +export { CronJob, cronJobApi } from "../../common/k8s-api/endpoints/cron-job.api"; +export { ConfigMap, configMapApi } from "../../common/k8s-api/endpoints/configmap.api"; +export { Secret, secretsApi } from "../../common/k8s-api/endpoints/secret.api"; +export { ReplicaSet, replicaSetApi } from "../../common/k8s-api/endpoints/replica-set.api"; +export { ResourceQuota, resourceQuotaApi } from "../../common/k8s-api/endpoints/resource-quota.api"; +export { LimitRange, limitRangeApi } from "../../common/k8s-api/endpoints/limit-range.api"; +export { HorizontalPodAutoscaler, hpaApi } from "../../common/k8s-api/endpoints/hpa.api"; +export { PodDisruptionBudget, pdbApi } from "../../common/k8s-api/endpoints/poddisruptionbudget.api"; +export { Service, serviceApi } from "../../common/k8s-api/endpoints/service.api"; +export { Endpoint, endpointApi } from "../../common/k8s-api/endpoints/endpoint.api"; +export { Ingress, ingressApi, IngressApi } from "../../common/k8s-api/endpoints/ingress.api"; +export { NetworkPolicy, networkPolicyApi } from "../../common/k8s-api/endpoints/network-policy.api"; +export { PersistentVolume, persistentVolumeApi } from "../../common/k8s-api/endpoints/persistent-volume.api"; +export { PersistentVolumeClaim, pvcApi, PersistentVolumeClaimsApi } from "../../common/k8s-api/endpoints/persistent-volume-claims.api"; +export { StorageClass, storageClassApi } from "../../common/k8s-api/endpoints/storage-class.api"; +export { Namespace, namespacesApi } from "../../common/k8s-api/endpoints/namespaces.api"; +export { KubeEvent, eventApi } from "../../common/k8s-api/endpoints/events.api"; +export { ServiceAccount, serviceAccountsApi } from "../../common/k8s-api/endpoints/service-accounts.api"; +export { Role, roleApi } from "../../common/k8s-api/endpoints/role.api"; +export { RoleBinding, roleBindingApi } from "../../common/k8s-api/endpoints/role-binding.api"; +export { ClusterRole, clusterRoleApi } from "../../common/k8s-api/endpoints/cluster-role.api"; +export { ClusterRoleBinding, clusterRoleBindingApi } from "../../common/k8s-api/endpoints/cluster-role-binding.api"; +export { CustomResourceDefinition, crdApi } from "../../common/k8s-api/endpoints/crd.api"; + +// types +export type { IKubeApiCluster } from "../../common/k8s-api/kube-api"; +export type { IPodContainer, IPodContainerStatus } from "../../common/k8s-api/endpoints/pods.api"; +export type { ISecretRef } from "../../common/k8s-api/endpoints/secret.api"; diff --git a/src/extensions/renderer-api/k8s-api.ts b/src/extensions/renderer-api/k8s-api.ts index 2c31a4036f..1622dd6f3d 100644 --- a/src/extensions/renderer-api/k8s-api.ts +++ b/src/extensions/renderer-api/k8s-api.ts @@ -21,45 +21,45 @@ export { isAllowedResource } from "../../common/utils/allowed-resource"; export { ResourceStack } from "../../common/k8s/resource-stack"; -export { apiManager } from "../../renderer/api/api-manager"; -export { KubeObjectStore } from "../../renderer/kube-object.store"; -export { KubeApi, forCluster } from "../../renderer/api/kube-api"; -export { KubeObject } from "../../renderer/api/kube-object"; -export { Pod, podsApi, PodsApi } from "../../renderer/api/endpoints"; -export { Node, nodesApi, NodesApi } from "../../renderer/api/endpoints"; -export { Deployment, deploymentApi, DeploymentApi } from "../../renderer/api/endpoints"; -export { DaemonSet, daemonSetApi } from "../../renderer/api/endpoints"; -export { StatefulSet, statefulSetApi } from "../../renderer/api/endpoints"; -export { Job, jobApi } from "../../renderer/api/endpoints"; -export { CronJob, cronJobApi } from "../../renderer/api/endpoints"; -export { ConfigMap, configMapApi } from "../../renderer/api/endpoints"; -export { Secret, secretsApi } from "../../renderer/api/endpoints"; -export { ReplicaSet, replicaSetApi } from "../../renderer/api/endpoints"; -export { ResourceQuota, resourceQuotaApi } from "../../renderer/api/endpoints"; -export { LimitRange, limitRangeApi } from "../../renderer/api/endpoints"; -export { HorizontalPodAutoscaler, hpaApi } from "../../renderer/api/endpoints"; -export { PodDisruptionBudget, pdbApi } from "../../renderer/api/endpoints"; -export { Service, serviceApi } from "../../renderer/api/endpoints"; -export { Endpoint, endpointApi } from "../../renderer/api/endpoints"; -export { Ingress, ingressApi, IngressApi } from "../../renderer/api/endpoints"; -export { NetworkPolicy, networkPolicyApi } from "../../renderer/api/endpoints"; -export { PersistentVolume, persistentVolumeApi } from "../../renderer/api/endpoints"; -export { PersistentVolumeClaim, pvcApi, PersistentVolumeClaimsApi } from "../../renderer/api/endpoints"; -export { StorageClass, storageClassApi } from "../../renderer/api/endpoints"; -export { Namespace, namespacesApi } from "../../renderer/api/endpoints"; -export { KubeEvent, eventApi } from "../../renderer/api/endpoints"; -export { ServiceAccount, serviceAccountsApi } from "../../renderer/api/endpoints"; -export { Role, roleApi } from "../../renderer/api/endpoints"; -export { RoleBinding, roleBindingApi } from "../../renderer/api/endpoints"; -export { ClusterRole, clusterRoleApi } from "../../renderer/api/endpoints"; -export { ClusterRoleBinding, clusterRoleBindingApi } from "../../renderer/api/endpoints"; -export { CustomResourceDefinition, crdApi } from "../../renderer/api/endpoints"; +export { apiManager } from "../../common/k8s-api/api-manager"; +export { KubeObjectStore } from "../../common/k8s-api/kube-object.store"; +export { KubeApi, forCluster } from "../../common/k8s-api/kube-api"; +export { KubeObject } from "../../common/k8s-api/kube-object"; +export { Pod, podsApi, PodsApi } from "../../common/k8s-api/endpoints"; +export { Node, nodesApi, NodesApi } from "../../common/k8s-api/endpoints"; +export { Deployment, deploymentApi, DeploymentApi } from "../../common/k8s-api/endpoints"; +export { DaemonSet, daemonSetApi } from "../../common/k8s-api/endpoints"; +export { StatefulSet, statefulSetApi } from "../../common/k8s-api/endpoints"; +export { Job, jobApi } from "../../common/k8s-api/endpoints"; +export { CronJob, cronJobApi } from "../../common/k8s-api/endpoints"; +export { ConfigMap, configMapApi } from "../../common/k8s-api/endpoints"; +export { Secret, secretsApi } from "../../common/k8s-api/endpoints"; +export { ReplicaSet, replicaSetApi } from "../../common/k8s-api/endpoints"; +export { ResourceQuota, resourceQuotaApi } from "../../common/k8s-api/endpoints"; +export { LimitRange, limitRangeApi } from "../../common/k8s-api/endpoints"; +export { HorizontalPodAutoscaler, hpaApi } from "../../common/k8s-api/endpoints"; +export { PodDisruptionBudget, pdbApi } from "../../common/k8s-api/endpoints"; +export { Service, serviceApi } from "../../common/k8s-api/endpoints"; +export { Endpoint, endpointApi } from "../../common/k8s-api/endpoints"; +export { Ingress, ingressApi, IngressApi } from "../../common/k8s-api/endpoints"; +export { NetworkPolicy, networkPolicyApi } from "../../common/k8s-api/endpoints"; +export { PersistentVolume, persistentVolumeApi } from "../../common/k8s-api/endpoints"; +export { PersistentVolumeClaim, pvcApi, PersistentVolumeClaimsApi } from "../../common/k8s-api/endpoints"; +export { StorageClass, storageClassApi } from "../../common/k8s-api/endpoints"; +export { Namespace, namespacesApi } from "../../common/k8s-api/endpoints"; +export { KubeEvent, eventApi } from "../../common/k8s-api/endpoints"; +export { ServiceAccount, serviceAccountsApi } from "../../common/k8s-api/endpoints"; +export { Role, roleApi } from "../../common/k8s-api/endpoints"; +export { RoleBinding, roleBindingApi } from "../../common/k8s-api/endpoints"; +export { ClusterRole, clusterRoleApi } from "../../common/k8s-api/endpoints"; +export { ClusterRoleBinding, clusterRoleBindingApi } from "../../common/k8s-api/endpoints"; +export { CustomResourceDefinition, crdApi } from "../../common/k8s-api/endpoints"; export { KubeObjectStatusLevel } from "./kube-object-status"; // types -export type { IKubeApiCluster } from "../../renderer/api/kube-api"; -export type { IPodContainer, IPodContainerStatus } from "../../renderer/api/endpoints"; -export type { ISecretRef } from "../../renderer/api/endpoints"; +export type { IKubeApiCluster } from "../../common/k8s-api/kube-api"; +export type { IPodContainer, IPodContainerStatus } from "../../common/k8s-api/endpoints"; +export type { ISecretRef } from "../../common/k8s-api/endpoints"; export type { KubeObjectStatus } from "./kube-object-status"; // stores diff --git a/src/main/helm/helm-chart-manager.ts b/src/main/helm/helm-chart-manager.ts index 7ab6c8f9db..5523e0f050 100644 --- a/src/main/helm/helm-chart-manager.ts +++ b/src/main/helm/helm-chart-manager.ts @@ -25,7 +25,7 @@ import { HelmRepo, HelmRepoManager } from "./helm-repo-manager"; import logger from "../logger"; import { promiseExec } from "../promise-exec"; import { helmCli } from "./helm-cli"; -import type { RepoHelmChartList } from "../../renderer/api/endpoints/helm-charts.api"; +import type { RepoHelmChartList } from "../../common/k8s-api/endpoints/helm-charts.api"; type CachedYaml = { entries: RepoHelmChartList diff --git a/src/main/helm/helm-service.ts b/src/main/helm/helm-service.ts index 3cf56ccb13..2fe531c215 100644 --- a/src/main/helm/helm-service.ts +++ b/src/main/helm/helm-service.ts @@ -24,7 +24,7 @@ import type { Cluster } from "../cluster"; import logger from "../logger"; import { HelmRepoManager } from "./helm-repo-manager"; import { HelmChartManager } from "./helm-chart-manager"; -import type { HelmChart, HelmChartList, RepoHelmChartList } from "../../renderer/api/endpoints/helm-charts.api"; +import type { HelmChart, HelmChartList, RepoHelmChartList } from "../../common/k8s-api/endpoints/helm-charts.api"; import { deleteRelease, getHistory, getRelease, getValues, installChart, listReleases, rollback, upgradeRelease } from "./helm-release-manager"; import { iter, sortCompareChartVersions } from "../../common/utils"; diff --git a/src/main/k8s-request.ts b/src/main/k8s-request.ts index 513860fbd9..923ec81609 100644 --- a/src/main/k8s-request.ts +++ b/src/main/k8s-request.ts @@ -21,7 +21,7 @@ import request, { RequestPromiseOptions } from "request-promise-native"; import { apiKubePrefix } from "../common/vars"; -import type { IMetricsReqParams } from "../renderer/api/endpoints/metrics.api"; +import type { IMetricsReqParams } from "../common/k8s-api/endpoints/metrics.api"; import { LensProxy } from "./lens-proxy"; import type { Cluster } from "./cluster"; diff --git a/src/main/logger.ts b/src/main/logger.ts index ffa695ac2e..b6d7e7ebb9 100644 --- a/src/main/logger.ts +++ b/src/main/logger.ts @@ -19,95 +19,6 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { app, remote } from "electron"; -import winston from "winston"; -import Transport from "winston-transport"; -import { isDebugging, isTestEnv } from "../common/vars"; -import { LEVEL } from "triple-beam"; -import { Severity } from "@sentry/browser"; -import * as Sentry from "@sentry/electron"; +import logger from "../common/logger"; -const SENTRY_LEVELS_MAP = { - silly: Severity.Debug, - verbose: Severity.Debug, - debug: Severity.Debug, - info: Severity.Info, - warn: Severity.Warning, - error: Severity.Error, -}; -const WINSTON_CMP: Record> = { - silly: new Set(["silly", "verbose", "debug", "info", "warn", "error"]), - verbose: new Set(["verbose", "debug", "info", "warn", "error"]), - debug: new Set(["debug", "info", "warn", "error"]), - info: new Set(["info", "warn", "error"]), - warn: new Set(["warn", "error"]), - error: new Set(["error"]), -}; - -type WinstonLevel = keyof typeof SENTRY_LEVELS_MAP; - -class SentryTransport extends Transport { - logLevels: Set; - - constructor(minWinstonLevel: WinstonLevel) { - super(); - - this.logLevels = WINSTON_CMP[minWinstonLevel]; - } - - log(info: any, next: () => void) { - setImmediate(() => { - this.emit("logged", info); - }); - - const { message, level: _, tags, user, ...extra } = info; - const winstonLevel: WinstonLevel = info[LEVEL]; - const level = SENTRY_LEVELS_MAP[winstonLevel]; - - try { - if (this.logLevels.has(winstonLevel)) { - Sentry.captureMessage(message, { - level, - tags, - extra, - }); - } - } finally { - next(); - } - } -} - -interface CreateLoggerOpts extends winston.LoggerOptions { - transports?: Transport[]; -} - -const logLevel = process.env.LOG_LEVEL || (isDebugging ? "debug" : "info"); - -const loggerOpts: CreateLoggerOpts = { - format: winston.format.combine( - winston.format.colorize(), - winston.format.simple(), - ), - transports: [ - new SentryTransport("error"), - new winston.transports.Console({ - handleExceptions: false, - level: logLevel, - }), - ], -}; - -if (!isTestEnv) { - loggerOpts.transports.push(new winston.transports.File({ - handleExceptions: false, - level: logLevel, - filename: "lens.log", - dirname: (app ?? remote?.app)?.getPath("logs"), - maxsize: 16 * 1024, - maxFiles: 16, - tailable: true, - })); -} - -export default winston.createLogger(loggerOpts); +export default logger; diff --git a/src/renderer/api/index.ts b/src/renderer/api/index.ts index e46898d3b7..39ab671bc1 100644 --- a/src/renderer/api/index.ts +++ b/src/renderer/api/index.ts @@ -19,19 +19,11 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { JsonApi, JsonApiErrorParsed } from "./json-api"; -import { KubeJsonApi } from "./kube-json-api"; +import type { JsonApiErrorParsed } from "../../common/k8s-api/json-api"; import { Notifications } from "../components/notifications"; -import { apiKubePrefix, apiPrefix, isDebugging, isDevelopment } from "../../common/vars"; +import { apiBase, apiKube } from "../../common/k8s-api"; +export { apiBase, apiKube } from "../../common/k8s-api"; -export const apiBase = new JsonApi({ - apiBase: apiPrefix, - debug: isDevelopment || isDebugging, -}); -export const apiKube = new KubeJsonApi({ - apiBase: apiKubePrefix, - debug: isDevelopment, -}); // Common handler for HTTP api errors export function onApiError(error: JsonApiErrorParsed, res: Response) { diff --git a/src/renderer/components/+apps-helm-charts/helm-chart-details.tsx b/src/renderer/components/+apps-helm-charts/helm-chart-details.tsx index 963df018af..d1a152808a 100644 --- a/src/renderer/components/+apps-helm-charts/helm-chart-details.tsx +++ b/src/renderer/components/+apps-helm-charts/helm-chart-details.tsx @@ -22,7 +22,7 @@ import "./helm-chart-details.scss"; import React, { Component } from "react"; -import { getChartDetails, HelmChart } from "../../api/endpoints/helm-charts.api"; +import { getChartDetails, HelmChart } from "../../../common/k8s-api/endpoints/helm-charts.api"; import { observable, autorun, makeObservable } from "mobx"; import { observer } from "mobx-react"; import { Drawer, DrawerItem } from "../drawer"; diff --git a/src/renderer/components/+apps-helm-charts/helm-chart.store.ts b/src/renderer/components/+apps-helm-charts/helm-chart.store.ts index 71a5072068..e97e9fc276 100644 --- a/src/renderer/components/+apps-helm-charts/helm-chart.store.ts +++ b/src/renderer/components/+apps-helm-charts/helm-chart.store.ts @@ -22,8 +22,8 @@ import semver from "semver"; import { observable, makeObservable } from "mobx"; import { autoBind, sortCompareChartVersions } from "../../utils"; -import { getChartDetails, HelmChart, listCharts } from "../../api/endpoints/helm-charts.api"; -import { ItemStore } from "../../item.store"; +import { getChartDetails, HelmChart, listCharts } from "../../../common/k8s-api/endpoints/helm-charts.api"; +import { ItemStore } from "../../../common/item.store"; import flatten from "lodash/flatten"; export interface IChartVersion { diff --git a/src/renderer/components/+apps-helm-charts/helm-charts.tsx b/src/renderer/components/+apps-helm-charts/helm-charts.tsx index 1fc1dbf7b0..169b2c258d 100644 --- a/src/renderer/components/+apps-helm-charts/helm-charts.tsx +++ b/src/renderer/components/+apps-helm-charts/helm-charts.tsx @@ -25,7 +25,7 @@ import React, { Component } from "react"; import type { RouteComponentProps } from "react-router"; import { observer } from "mobx-react"; import { helmChartStore } from "./helm-chart.store"; -import type { HelmChart } from "../../api/endpoints/helm-charts.api"; +import type { HelmChart } from "../../../common/k8s-api/endpoints/helm-charts.api"; import { HelmChartDetails } from "./helm-chart-details"; import { navigation } from "../../navigation"; import { ItemListLayout } from "../item-object-list/item-list-layout"; diff --git a/src/renderer/components/+apps-releases/release-details.tsx b/src/renderer/components/+apps-releases/release-details.tsx index bf3850f462..e3e68ffb53 100644 --- a/src/renderer/components/+apps-releases/release-details.tsx +++ b/src/renderer/components/+apps-releases/release-details.tsx @@ -27,7 +27,7 @@ import isEqual from "lodash/isEqual"; import { observable, reaction, makeObservable } from "mobx"; import { Link } from "react-router-dom"; import kebabCase from "lodash/kebabCase"; -import { getRelease, getReleaseValues, HelmRelease, IReleaseDetails } from "../../api/endpoints/helm-releases.api"; +import { getRelease, getReleaseValues, HelmRelease, IReleaseDetails } from "../../../common/k8s-api/endpoints/helm-releases.api"; import { HelmReleaseMenu } from "./release-menu"; import { Drawer, DrawerItem, DrawerTitle } from "../drawer"; import { Badge } from "../badge"; @@ -41,10 +41,10 @@ import { releaseStore } from "./release.store"; import { Notifications } from "../notifications"; import { createUpgradeChartTab } from "../dock/upgrade-chart.store"; import { ThemeStore } from "../../theme.store"; -import { apiManager } from "../../api/api-manager"; +import { apiManager } from "../../../common/k8s-api/api-manager"; import { SubTitle } from "../layout/sub-title"; import { secretsStore } from "../+config-secrets/secrets.store"; -import { Secret } from "../../api/endpoints"; +import { Secret } from "../../../common/k8s-api/endpoints"; import { getDetailsUrl } from "../kube-detail-params"; import { Checkbox } from "../checkbox"; diff --git a/src/renderer/components/+apps-releases/release-menu.tsx b/src/renderer/components/+apps-releases/release-menu.tsx index d74ffcc6eb..0b8d4b8c91 100644 --- a/src/renderer/components/+apps-releases/release-menu.tsx +++ b/src/renderer/components/+apps-releases/release-menu.tsx @@ -20,7 +20,7 @@ */ import React from "react"; -import type { HelmRelease } from "../../api/endpoints/helm-releases.api"; +import type { HelmRelease } from "../../../common/k8s-api/endpoints/helm-releases.api"; import { boundMethod, cssNames } from "../../utils"; import { releaseStore } from "./release.store"; import { MenuActions, MenuActionsProps } from "../menu/menu-actions"; diff --git a/src/renderer/components/+apps-releases/release-rollback-dialog.tsx b/src/renderer/components/+apps-releases/release-rollback-dialog.tsx index e42813f1f9..07de38232f 100644 --- a/src/renderer/components/+apps-releases/release-rollback-dialog.tsx +++ b/src/renderer/components/+apps-releases/release-rollback-dialog.tsx @@ -26,7 +26,7 @@ import { observable, makeObservable } from "mobx"; import { observer } from "mobx-react"; import { Dialog, DialogProps } from "../dialog"; import { Wizard, WizardStep } from "../wizard"; -import { getReleaseHistory, HelmRelease, IReleaseRevision } from "../../api/endpoints/helm-releases.api"; +import { getReleaseHistory, HelmRelease, IReleaseRevision } from "../../../common/k8s-api/endpoints/helm-releases.api"; import { releaseStore } from "./release.store"; import { Select, SelectOption } from "../select"; import { Notifications } from "../notifications"; diff --git a/src/renderer/components/+apps-releases/release.store.ts b/src/renderer/components/+apps-releases/release.store.ts index 9d704566e7..93b5cf5eef 100644 --- a/src/renderer/components/+apps-releases/release.store.ts +++ b/src/renderer/components/+apps-releases/release.store.ts @@ -22,9 +22,9 @@ import isEqual from "lodash/isEqual"; import { action, observable, reaction, when, makeObservable } from "mobx"; import { autoBind } from "../../utils"; -import { createRelease, deleteRelease, HelmRelease, IReleaseCreatePayload, IReleaseUpdatePayload, listReleases, rollbackRelease, updateRelease } from "../../api/endpoints/helm-releases.api"; -import { ItemStore } from "../../item.store"; -import type { Secret } from "../../api/endpoints"; +import { createRelease, deleteRelease, HelmRelease, IReleaseCreatePayload, IReleaseUpdatePayload, listReleases, rollbackRelease, updateRelease } from "../../../common/k8s-api/endpoints/helm-releases.api"; +import { ItemStore } from "../../../common/item.store"; +import type { Secret } from "../../../common/k8s-api/endpoints"; import { secretsStore } from "../+config-secrets/secrets.store"; import { namespaceStore } from "../+namespaces/namespace.store"; import { Notifications } from "../notifications"; diff --git a/src/renderer/components/+apps-releases/releases.tsx b/src/renderer/components/+apps-releases/releases.tsx index cf464710c5..d43174cc10 100644 --- a/src/renderer/components/+apps-releases/releases.tsx +++ b/src/renderer/components/+apps-releases/releases.tsx @@ -26,7 +26,7 @@ import kebabCase from "lodash/kebabCase"; import { disposeOnUnmount, observer } from "mobx-react"; import type { RouteComponentProps } from "react-router"; import { releaseStore } from "./release.store"; -import type { HelmRelease } from "../../api/endpoints/helm-releases.api"; +import type { HelmRelease } from "../../../common/k8s-api/endpoints/helm-releases.api"; import { ReleaseDetails } from "./release-details"; import { ReleaseRollbackDialog } from "./release-rollback-dialog"; import { navigation } from "../../navigation"; diff --git a/src/renderer/components/+catalog/catalog-entity.store.tsx b/src/renderer/components/+catalog/catalog-entity.store.tsx index b606d54c1a..c5bb96e5f2 100644 --- a/src/renderer/components/+catalog/catalog-entity.store.tsx +++ b/src/renderer/components/+catalog/catalog-entity.store.tsx @@ -25,14 +25,14 @@ import React from "react"; import { action, computed, IReactionDisposer, makeObservable, observable, reaction } from "mobx"; import { catalogEntityRegistry } from "../../api/catalog-entity-registry"; import type { CatalogEntity, CatalogEntityActionContext } from "../../api/catalog-entity"; -import { ItemObject, ItemStore } from "../../item.store"; +import { ItemObject, ItemStore } from "../../../common/item.store"; import { CatalogCategory, catalogCategoryRegistry } from "../../../common/catalog"; import { autoBind } from "../../../common/utils"; import { Badge } from "../badge"; import { navigation } from "../../navigation"; import { searchUrlParam } from "../input"; import { makeCss } from "../../../common/utils/makeCss"; -import { KubeObject } from "../../api/kube-object"; +import { KubeObject } from "../../../common/k8s-api/kube-object"; const css = makeCss(styles); diff --git a/src/renderer/components/+cluster/cluster-issues.tsx b/src/renderer/components/+cluster/cluster-issues.tsx index a68950bc0e..9b5f73b9a6 100644 --- a/src/renderer/components/+cluster/cluster-issues.tsx +++ b/src/renderer/components/+cluster/cluster-issues.tsx @@ -30,12 +30,12 @@ import { Table, TableCell, TableHead, TableRow } from "../table"; import { nodesStore } from "../+nodes/nodes.store"; import { eventStore } from "../+events/event.store"; import { boundMethod, cssNames, prevDefault } from "../../utils"; -import type { ItemObject } from "../../item.store"; +import type { ItemObject } from "../../../common/item.store"; import { Spinner } from "../spinner"; import { ThemeStore } from "../../theme.store"; -import { apiManager } from "../../api/api-manager"; import { kubeSelectedUrlParam, showDetails } from "../kube-detail-params"; -import { kubeWatchApi } from "../../api/kube-watch-api"; +import { kubeWatchApi } from "../../../common/k8s-api/kube-watch-api"; +import { apiManager } from "../../../common/k8s-api/api-manager"; interface Props { className?: string; diff --git a/src/renderer/components/+cluster/cluster-metrics.tsx b/src/renderer/components/+cluster/cluster-metrics.tsx index 0c4910e7e5..43e540dca2 100644 --- a/src/renderer/components/+cluster/cluster-metrics.tsx +++ b/src/renderer/components/+cluster/cluster-metrics.tsx @@ -31,7 +31,7 @@ import { Spinner } from "../spinner"; import { ZebraStripes } from "../chart/zebra-stripes.plugin"; import { ClusterNoMetrics } from "./cluster-no-metrics"; import { ClusterMetricSwitchers } from "./cluster-metric-switchers"; -import { getMetricLastPoints } from "../../api/endpoints/metrics.api"; +import { getMetricLastPoints } from "../../../common/k8s-api/endpoints/metrics.api"; export const ClusterMetrics = observer(() => { const { metricType, metricNodeRole, getMetricsValues, metricsLoaded, metrics } = clusterOverviewStore; diff --git a/src/renderer/components/+cluster/cluster-overview.store.ts b/src/renderer/components/+cluster/cluster-overview.store.ts index 547eb6832f..17cc100109 100644 --- a/src/renderer/components/+cluster/cluster-overview.store.ts +++ b/src/renderer/components/+cluster/cluster-overview.store.ts @@ -20,12 +20,12 @@ */ import { action, observable, reaction, when, makeObservable } from "mobx"; -import { KubeObjectStore } from "../../kube-object.store"; -import { Cluster, clusterApi, getMetricsByNodeNames, IClusterMetrics } from "../../api/endpoints"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; +import { Cluster, clusterApi, getMetricsByNodeNames, IClusterMetrics } from "../../../common/k8s-api/endpoints"; import { autoBind, createStorage } from "../../utils"; -import { IMetricsReqParams, normalizeMetrics } from "../../api/endpoints/metrics.api"; +import { IMetricsReqParams, normalizeMetrics } from "../../../common/k8s-api/endpoints/metrics.api"; import { nodesStore } from "../+nodes/nodes.store"; -import { apiManager } from "../../api/api-manager"; +import { apiManager } from "../../../common/k8s-api/api-manager"; export enum MetricType { MEMORY = "memory", diff --git a/src/renderer/components/+cluster/cluster-pie-charts.tsx b/src/renderer/components/+cluster/cluster-pie-charts.tsx index 979a91f0bb..76bb6967f6 100644 --- a/src/renderer/components/+cluster/cluster-pie-charts.tsx +++ b/src/renderer/components/+cluster/cluster-pie-charts.tsx @@ -31,7 +31,7 @@ import { ChartData, PieChart } from "../chart"; import { ClusterNoMetrics } from "./cluster-no-metrics"; import { bytesToUnits } from "../../utils"; import { ThemeStore } from "../../theme.store"; -import { getMetricLastPoints } from "../../api/endpoints/metrics.api"; +import { getMetricLastPoints } from "../../../common/k8s-api/endpoints/metrics.api"; function createLabels(rawLabelData: [string, number | undefined][]): string[] { return rawLabelData.map(([key, value]) => `${key}: ${value?.toFixed(2) || "N/A"}`); diff --git a/src/renderer/components/+config-autoscalers/hpa-details.tsx b/src/renderer/components/+config-autoscalers/hpa-details.tsx index 4849c69fe0..4dd544e5b1 100644 --- a/src/renderer/components/+config-autoscalers/hpa-details.tsx +++ b/src/renderer/components/+config-autoscalers/hpa-details.tsx @@ -28,9 +28,9 @@ import { DrawerItem, DrawerTitle } from "../drawer"; import { Badge } from "../badge"; import type { KubeObjectDetailsProps } from "../kube-object-details"; import { cssNames } from "../../utils"; -import { HorizontalPodAutoscaler, HpaMetricType, IHpaMetric } from "../../api/endpoints/hpa.api"; +import { HorizontalPodAutoscaler, HpaMetricType, IHpaMetric } from "../../../common/k8s-api/endpoints/hpa.api"; import { Table, TableCell, TableHead, TableRow } from "../table"; -import { apiManager } from "../../api/api-manager"; +import { apiManager } from "../../../common/k8s-api/api-manager"; import { KubeObjectMeta } from "../kube-object-meta"; import { getDetailsUrl } from "../kube-detail-params"; diff --git a/src/renderer/components/+config-autoscalers/hpa.store.ts b/src/renderer/components/+config-autoscalers/hpa.store.ts index d92ffd3a6f..c129b32acd 100644 --- a/src/renderer/components/+config-autoscalers/hpa.store.ts +++ b/src/renderer/components/+config-autoscalers/hpa.store.ts @@ -19,9 +19,9 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { KubeObjectStore } from "../../kube-object.store"; -import { HorizontalPodAutoscaler, hpaApi } from "../../api/endpoints/hpa.api"; -import { apiManager } from "../../api/api-manager"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; +import { HorizontalPodAutoscaler, hpaApi } from "../../../common/k8s-api/endpoints/hpa.api"; +import { apiManager } from "../../../common/k8s-api/api-manager"; export class HPAStore extends KubeObjectStore { api = hpaApi; diff --git a/src/renderer/components/+config-autoscalers/hpa.tsx b/src/renderer/components/+config-autoscalers/hpa.tsx index 855b5c3cec..c620e6c629 100644 --- a/src/renderer/components/+config-autoscalers/hpa.tsx +++ b/src/renderer/components/+config-autoscalers/hpa.tsx @@ -25,7 +25,7 @@ import React from "react"; import { observer } from "mobx-react"; import type { RouteComponentProps } from "react-router"; import { KubeObjectListLayout } from "../kube-object-list-layout"; -import type { HorizontalPodAutoscaler } from "../../api/endpoints/hpa.api"; +import type { HorizontalPodAutoscaler } from "../../../common/k8s-api/endpoints/hpa.api"; import { hpaStore } from "./hpa.store"; import { Badge } from "../badge"; import { cssNames } from "../../utils"; diff --git a/src/renderer/components/+config-limit-ranges/limit-range-details.tsx b/src/renderer/components/+config-limit-ranges/limit-range-details.tsx index 0d235252f2..e9acbd0a22 100644 --- a/src/renderer/components/+config-limit-ranges/limit-range-details.tsx +++ b/src/renderer/components/+config-limit-ranges/limit-range-details.tsx @@ -24,7 +24,7 @@ import "./limit-range-details.scss"; import React from "react"; import { observer } from "mobx-react"; import type { KubeObjectDetailsProps } from "../kube-object-details"; -import { LimitPart, LimitRange, LimitRangeItem, Resource } from "../../api/endpoints/limit-range.api"; +import { LimitPart, LimitRange, LimitRangeItem, Resource } from "../../../common/k8s-api/endpoints/limit-range.api"; import { KubeObjectMeta } from "../kube-object-meta"; import { DrawerItem } from "../drawer/drawer-item"; import { Badge } from "../badge"; diff --git a/src/renderer/components/+config-limit-ranges/limit-ranges.store.ts b/src/renderer/components/+config-limit-ranges/limit-ranges.store.ts index af7ebe6b41..4f4bd52ced 100644 --- a/src/renderer/components/+config-limit-ranges/limit-ranges.store.ts +++ b/src/renderer/components/+config-limit-ranges/limit-ranges.store.ts @@ -19,9 +19,9 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { KubeObjectStore } from "../../kube-object.store"; -import { apiManager } from "../../api/api-manager"; -import { LimitRange, limitRangeApi } from "../../api/endpoints/limit-range.api"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; +import { apiManager } from "../../../common/k8s-api/api-manager"; +import { LimitRange, limitRangeApi } from "../../../common/k8s-api/endpoints/limit-range.api"; export class LimitRangesStore extends KubeObjectStore { api = limitRangeApi; diff --git a/src/renderer/components/+config-maps/config-map-details.tsx b/src/renderer/components/+config-maps/config-map-details.tsx index b34ca83ab2..abbd31c97a 100644 --- a/src/renderer/components/+config-maps/config-map-details.tsx +++ b/src/renderer/components/+config-maps/config-map-details.tsx @@ -30,7 +30,7 @@ import { Input } from "../input"; import { Button } from "../button"; import { configMapsStore } from "./config-maps.store"; import type { KubeObjectDetailsProps } from "../kube-object-details"; -import type { ConfigMap } from "../../api/endpoints"; +import type { ConfigMap } from "../../../common/k8s-api/endpoints"; import { KubeObjectMeta } from "../kube-object-meta"; interface Props extends KubeObjectDetailsProps { diff --git a/src/renderer/components/+config-maps/config-maps.store.ts b/src/renderer/components/+config-maps/config-maps.store.ts index e45c9b3b27..164b9fa604 100644 --- a/src/renderer/components/+config-maps/config-maps.store.ts +++ b/src/renderer/components/+config-maps/config-maps.store.ts @@ -19,9 +19,9 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { KubeObjectStore } from "../../kube-object.store"; -import { ConfigMap, configMapApi } from "../../api/endpoints/configmap.api"; -import { apiManager } from "../../api/api-manager"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; +import { ConfigMap, configMapApi } from "../../../common/k8s-api/endpoints/configmap.api"; +import { apiManager } from "../../../common/k8s-api/api-manager"; export class ConfigMapsStore extends KubeObjectStore { api = configMapApi; diff --git a/src/renderer/components/+config-pod-disruption-budgets/pod-disruption-budgets-details.tsx b/src/renderer/components/+config-pod-disruption-budgets/pod-disruption-budgets-details.tsx index 4f8aaab465..15c17ae639 100644 --- a/src/renderer/components/+config-pod-disruption-budgets/pod-disruption-budgets-details.tsx +++ b/src/renderer/components/+config-pod-disruption-budgets/pod-disruption-budgets-details.tsx @@ -26,7 +26,7 @@ import { observer } from "mobx-react"; import { DrawerItem } from "../drawer"; import { Badge } from "../badge"; import type { KubeObjectDetailsProps } from "../kube-object-details"; -import type { PodDisruptionBudget } from "../../api/endpoints"; +import type { PodDisruptionBudget } from "../../../common/k8s-api/endpoints"; import { KubeObjectMeta } from "../kube-object-meta"; interface Props extends KubeObjectDetailsProps { diff --git a/src/renderer/components/+config-pod-disruption-budgets/pod-disruption-budgets.store.ts b/src/renderer/components/+config-pod-disruption-budgets/pod-disruption-budgets.store.ts index b4a48fbef7..3011e20065 100644 --- a/src/renderer/components/+config-pod-disruption-budgets/pod-disruption-budgets.store.ts +++ b/src/renderer/components/+config-pod-disruption-budgets/pod-disruption-budgets.store.ts @@ -19,9 +19,9 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { KubeObjectStore } from "../../kube-object.store"; -import { pdbApi, PodDisruptionBudget } from "../../api/endpoints/poddisruptionbudget.api"; -import { apiManager } from "../../api/api-manager"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; +import { pdbApi, PodDisruptionBudget } from "../../../common/k8s-api/endpoints/poddisruptionbudget.api"; +import { apiManager } from "../../../common/k8s-api/api-manager"; export class PodDisruptionBudgetsStore extends KubeObjectStore { api = pdbApi; diff --git a/src/renderer/components/+config-pod-disruption-budgets/pod-disruption-budgets.tsx b/src/renderer/components/+config-pod-disruption-budgets/pod-disruption-budgets.tsx index 1b1420931e..1278f96f59 100644 --- a/src/renderer/components/+config-pod-disruption-budgets/pod-disruption-budgets.tsx +++ b/src/renderer/components/+config-pod-disruption-budgets/pod-disruption-budgets.tsx @@ -24,7 +24,7 @@ import "./pod-disruption-budgets.scss"; import * as React from "react"; import { observer } from "mobx-react"; import { podDisruptionBudgetsStore } from "./pod-disruption-budgets.store"; -import type { PodDisruptionBudget } from "../../api/endpoints/poddisruptionbudget.api"; +import type { PodDisruptionBudget } from "../../../common/k8s-api/endpoints/poddisruptionbudget.api"; import { KubeObjectStatusIcon } from "../kube-object-status-icon"; import type { KubeObjectDetailsProps } from "../kube-object-details"; import { KubeObjectListLayout } from "../kube-object-list-layout"; diff --git a/src/renderer/components/+config-resource-quotas/add-quota-dialog.tsx b/src/renderer/components/+config-resource-quotas/add-quota-dialog.tsx index b341d2c86a..0fc2149e45 100644 --- a/src/renderer/components/+config-resource-quotas/add-quota-dialog.tsx +++ b/src/renderer/components/+config-resource-quotas/add-quota-dialog.tsx @@ -28,7 +28,7 @@ import { Dialog, DialogProps } from "../dialog"; import { Wizard, WizardStep } from "../wizard"; import { Input } from "../input"; import { systemName } from "../input/input_validators"; -import { IResourceQuotaValues, resourceQuotaApi } from "../../api/endpoints/resource-quota.api"; +import { IResourceQuotaValues, resourceQuotaApi } from "../../../common/k8s-api/endpoints/resource-quota.api"; import { Select } from "../select"; import { Icon } from "../icon"; import { Button } from "../button"; diff --git a/src/renderer/components/+config-resource-quotas/resource-quota-details.tsx b/src/renderer/components/+config-resource-quotas/resource-quota-details.tsx index 06a154db61..3b07bc9a7a 100644 --- a/src/renderer/components/+config-resource-quotas/resource-quota-details.tsx +++ b/src/renderer/components/+config-resource-quotas/resource-quota-details.tsx @@ -26,7 +26,7 @@ import { observer } from "mobx-react"; import { DrawerItem, DrawerTitle } from "../drawer"; import { cpuUnitsToNumber, cssNames, unitsToBytes, metricUnitsToNumber } from "../../utils"; import type { KubeObjectDetailsProps } from "../kube-object-details"; -import type { ResourceQuota } from "../../api/endpoints/resource-quota.api"; +import type { ResourceQuota } from "../../../common/k8s-api/endpoints/resource-quota.api"; import { LineProgress } from "../line-progress"; import { Table, TableCell, TableHead, TableRow } from "../table"; import { KubeObjectMeta } from "../kube-object-meta"; diff --git a/src/renderer/components/+config-resource-quotas/resource-quotas.store.ts b/src/renderer/components/+config-resource-quotas/resource-quotas.store.ts index 5e7494b33a..9ec218f346 100644 --- a/src/renderer/components/+config-resource-quotas/resource-quotas.store.ts +++ b/src/renderer/components/+config-resource-quotas/resource-quotas.store.ts @@ -19,9 +19,9 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { KubeObjectStore } from "../../kube-object.store"; -import { ResourceQuota, resourceQuotaApi } from "../../api/endpoints/resource-quota.api"; -import { apiManager } from "../../api/api-manager"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; +import { ResourceQuota, resourceQuotaApi } from "../../../common/k8s-api/endpoints/resource-quota.api"; +import { apiManager } from "../../../common/k8s-api/api-manager"; export class ResourceQuotasStore extends KubeObjectStore { api = resourceQuotaApi; diff --git a/src/renderer/components/+config-secrets/add-secret-dialog.tsx b/src/renderer/components/+config-secrets/add-secret-dialog.tsx index d93b19d405..d74a523dc5 100644 --- a/src/renderer/components/+config-secrets/add-secret-dialog.tsx +++ b/src/renderer/components/+config-secrets/add-secret-dialog.tsx @@ -28,12 +28,12 @@ import { Dialog, DialogProps } from "../dialog"; import { Wizard, WizardStep } from "../wizard"; import { Input } from "../input"; import { systemName } from "../input/input_validators"; -import { Secret, secretsApi, SecretType } from "../../api/endpoints"; +import { Secret, secretsApi, SecretType } from "../../../common/k8s-api/endpoints"; import { SubTitle } from "../layout/sub-title"; import { NamespaceSelect } from "../+namespaces/namespace-select"; import { Select, SelectOption } from "../select"; import { Icon } from "../icon"; -import type { KubeObjectMetadata } from "../../api/kube-object"; +import type { KubeObjectMetadata } from "../../../common/k8s-api/kube-object"; import { base64 } from "../../utils"; import { Notifications } from "../notifications"; import upperFirst from "lodash/upperFirst"; diff --git a/src/renderer/components/+config-secrets/secret-details.tsx b/src/renderer/components/+config-secrets/secret-details.tsx index 370c28b9d2..bfd6e9d257 100644 --- a/src/renderer/components/+config-secrets/secret-details.tsx +++ b/src/renderer/components/+config-secrets/secret-details.tsx @@ -33,7 +33,7 @@ import { base64 } from "../../utils"; import { Icon } from "../icon"; import { secretsStore } from "./secrets.store"; import type { KubeObjectDetailsProps } from "../kube-object-details"; -import type { Secret } from "../../api/endpoints"; +import type { Secret } from "../../../common/k8s-api/endpoints"; import { KubeObjectMeta } from "../kube-object-meta"; interface Props extends KubeObjectDetailsProps { diff --git a/src/renderer/components/+config-secrets/secrets.store.ts b/src/renderer/components/+config-secrets/secrets.store.ts index f338232371..4bf99bceda 100644 --- a/src/renderer/components/+config-secrets/secrets.store.ts +++ b/src/renderer/components/+config-secrets/secrets.store.ts @@ -19,9 +19,9 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { KubeObjectStore } from "../../kube-object.store"; -import { Secret, secretsApi } from "../../api/endpoints"; -import { apiManager } from "../../api/api-manager"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; +import { Secret, secretsApi } from "../../../common/k8s-api/endpoints"; +import { apiManager } from "../../../common/k8s-api/api-manager"; export class SecretsStore extends KubeObjectStore { api = secretsApi; diff --git a/src/renderer/components/+custom-resources/crd-details.tsx b/src/renderer/components/+custom-resources/crd-details.tsx index 79d5a31e65..d8de38d671 100644 --- a/src/renderer/components/+custom-resources/crd-details.tsx +++ b/src/renderer/components/+custom-resources/crd-details.tsx @@ -24,7 +24,7 @@ import "./crd-details.scss"; import React from "react"; import { Link } from "react-router-dom"; import { observer } from "mobx-react"; -import type { CustomResourceDefinition } from "../../api/endpoints/crd.api"; +import type { CustomResourceDefinition } from "../../../common/k8s-api/endpoints/crd.api"; import { AceEditor } from "../ace-editor"; import { Badge } from "../badge"; import { DrawerItem, DrawerTitle } from "../drawer"; diff --git a/src/renderer/components/+custom-resources/crd-list.tsx b/src/renderer/components/+custom-resources/crd-list.tsx index fb0735d223..e257289008 100644 --- a/src/renderer/components/+custom-resources/crd-list.tsx +++ b/src/renderer/components/+custom-resources/crd-list.tsx @@ -28,7 +28,7 @@ import { Link } from "react-router-dom"; import { stopPropagation } from "../../utils"; import { KubeObjectListLayout } from "../kube-object-list-layout"; import { crdStore } from "./crd.store"; -import type { CustomResourceDefinition } from "../../api/endpoints/crd.api"; +import type { CustomResourceDefinition } from "../../../common/k8s-api/endpoints/crd.api"; import { Select, SelectOption } from "../select"; import { createPageParam } from "../../navigation"; import { Icon } from "../icon"; diff --git a/src/renderer/components/+custom-resources/crd-resource-details.tsx b/src/renderer/components/+custom-resources/crd-resource-details.tsx index 9acaa93e86..b20ad7d885 100644 --- a/src/renderer/components/+custom-resources/crd-resource-details.tsx +++ b/src/renderer/components/+custom-resources/crd-resource-details.tsx @@ -30,9 +30,9 @@ import { DrawerItem } from "../drawer"; import type { KubeObjectDetailsProps } from "../kube-object-details"; import { KubeObjectMeta } from "../kube-object-meta"; import { Input } from "../input"; -import type { AdditionalPrinterColumnsV1, CustomResourceDefinition } from "../../api/endpoints/crd.api"; +import type { AdditionalPrinterColumnsV1, CustomResourceDefinition } from "../../../common/k8s-api/endpoints/crd.api"; import { parseJsonPath } from "../../utils/jsonPath"; -import type { KubeObject, KubeObjectMetadata, KubeObjectStatus } from "../../api/kube-object"; +import type { KubeObject, KubeObjectMetadata, KubeObjectStatus } from "../../../common/k8s-api/kube-object"; interface Props extends KubeObjectDetailsProps { crd: CustomResourceDefinition; diff --git a/src/renderer/components/+custom-resources/crd-resource.store.ts b/src/renderer/components/+custom-resources/crd-resource.store.ts index 335a015aa7..f71f8e6400 100644 --- a/src/renderer/components/+custom-resources/crd-resource.store.ts +++ b/src/renderer/components/+custom-resources/crd-resource.store.ts @@ -19,9 +19,9 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import type { KubeApi } from "../../api/kube-api"; -import { KubeObjectStore } from "../../kube-object.store"; -import type { KubeObject } from "../../api/kube-object"; +import type { KubeApi } from "../../../common/k8s-api/kube-api"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; +import type { KubeObject } from "../../../common/k8s-api/kube-object"; export class CRDResourceStore extends KubeObjectStore { api: KubeApi; diff --git a/src/renderer/components/+custom-resources/crd-resources.tsx b/src/renderer/components/+custom-resources/crd-resources.tsx index d64dd4e5f0..7c0e36639a 100644 --- a/src/renderer/components/+custom-resources/crd-resources.tsx +++ b/src/renderer/components/+custom-resources/crd-resources.tsx @@ -26,11 +26,11 @@ import jsonPath from "jsonpath"; import { observer } from "mobx-react"; import type { RouteComponentProps } from "react-router"; import { KubeObjectListLayout } from "../kube-object-list-layout"; -import type { KubeObject } from "../../api/kube-object"; +import type { KubeObject } from "../../../common/k8s-api/kube-object"; import { computed, makeObservable } from "mobx"; import { crdStore } from "./crd.store"; import type { TableSortCallbacks } from "../table"; -import { apiManager } from "../../api/api-manager"; +import { apiManager } from "../../../common/k8s-api/api-manager"; import { parseJsonPath } from "../../utils/jsonPath"; import type { CRDRouteParams } from "../../../common/routes"; diff --git a/src/renderer/components/+custom-resources/crd.store.ts b/src/renderer/components/+custom-resources/crd.store.ts index 25415e5ab3..83c8b5cdb6 100644 --- a/src/renderer/components/+custom-resources/crd.store.ts +++ b/src/renderer/components/+custom-resources/crd.store.ts @@ -20,13 +20,13 @@ */ import { computed, reaction, makeObservable } from "mobx"; -import { KubeObjectStore } from "../../kube-object.store"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; import { autoBind } from "../../utils"; -import { crdApi, CustomResourceDefinition } from "../../api/endpoints/crd.api"; -import { apiManager } from "../../api/api-manager"; -import { KubeApi } from "../../api/kube-api"; +import { crdApi, CustomResourceDefinition } from "../../../common/k8s-api/endpoints/crd.api"; +import { apiManager } from "../../../common/k8s-api/api-manager"; +import { KubeApi } from "../../../common/k8s-api/kube-api"; import { CRDResourceStore } from "./crd-resource.store"; -import { KubeObject } from "../../api/kube-object"; +import { KubeObject } from "../../../common/k8s-api/kube-object"; function initStore(crd: CustomResourceDefinition) { const apiBase = crd.getResourceApiBase(); diff --git a/src/renderer/components/+events/event-details.tsx b/src/renderer/components/+events/event-details.tsx index 496e249df3..010928a6d5 100644 --- a/src/renderer/components/+events/event-details.tsx +++ b/src/renderer/components/+events/event-details.tsx @@ -27,12 +27,12 @@ import { DrawerItem, DrawerTitle } from "../drawer"; import { Link } from "react-router-dom"; import { observer } from "mobx-react"; import type { KubeObjectDetailsProps } from "../kube-object-details"; -import type { KubeEvent } from "../../api/endpoints/events.api"; +import type { KubeEvent } from "../../../common/k8s-api/endpoints/events.api"; import { KubeObjectMeta } from "../kube-object-meta"; import { Table, TableCell, TableHead, TableRow } from "../table"; -import { apiManager } from "../../api/api-manager"; import { LocaleDate } from "../locale-date"; import { getDetailsUrl } from "../kube-detail-params"; +import { apiManager } from "../../../common/k8s-api/api-manager"; interface Props extends KubeObjectDetailsProps { } diff --git a/src/renderer/components/+events/event.store.ts b/src/renderer/components/+events/event.store.ts index c2f90475d0..b655e7f611 100644 --- a/src/renderer/components/+events/event.store.ts +++ b/src/renderer/components/+events/event.store.ts @@ -21,13 +21,13 @@ import groupBy from "lodash/groupBy"; import compact from "lodash/compact"; -import { KubeObjectStore } from "../../kube-object.store"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; import { autoBind } from "../../utils"; -import { eventApi, KubeEvent } from "../../api/endpoints/events.api"; -import type { KubeObject } from "../../api/kube-object"; -import { Pod } from "../../api/endpoints/pods.api"; +import { eventApi, KubeEvent } from "../../../common/k8s-api/endpoints/events.api"; +import type { KubeObject } from "../../../common/k8s-api/kube-object"; +import { Pod } from "../../../common/k8s-api/endpoints/pods.api"; import { podsStore } from "../+workloads-pods/pods.store"; -import { apiManager } from "../../api/api-manager"; +import { apiManager } from "../../../common/k8s-api/api-manager"; export class EventStore extends KubeObjectStore { api = eventApi; diff --git a/src/renderer/components/+events/events.tsx b/src/renderer/components/+events/events.tsx index ae9d71415d..456de9e2aa 100644 --- a/src/renderer/components/+events/events.tsx +++ b/src/renderer/components/+events/events.tsx @@ -28,16 +28,16 @@ import { orderBy } from "lodash"; import { TabLayout } from "../layout/tab-layout"; import { EventStore, eventStore } from "./event.store"; import { KubeObjectListLayout, KubeObjectListLayoutProps } from "../kube-object-list-layout"; -import type { KubeEvent } from "../../api/endpoints/events.api"; +import type { KubeEvent } from "../../../common/k8s-api/endpoints/events.api"; import type { TableSortCallbacks, TableSortParams } from "../table"; import type { HeaderCustomizer } from "../item-object-list"; import { Tooltip } from "../tooltip"; import { Link } from "react-router-dom"; import { cssNames, IClassName, stopPropagation } from "../../utils"; import { Icon } from "../icon"; -import { apiManager } from "../../api/api-manager"; import { eventsURL } from "../../../common/routes"; import { getDetailsUrl } from "../kube-detail-params"; +import { apiManager } from "../../../common/k8s-api/api-manager"; enum columnId { message = "message", diff --git a/src/renderer/components/+events/kube-event-details.tsx b/src/renderer/components/+events/kube-event-details.tsx index 4ac3e63a84..7f00fd6a15 100644 --- a/src/renderer/components/+events/kube-event-details.tsx +++ b/src/renderer/components/+events/kube-event-details.tsx @@ -23,7 +23,7 @@ import "./kube-event-details.scss"; import React from "react"; import { observer } from "mobx-react"; -import type { KubeObject } from "../../api/kube-object"; +import type { KubeObject } from "../../../common/k8s-api/kube-object"; import { DrawerItem, DrawerTitle } from "../drawer"; import { cssNames } from "../../utils"; import { eventStore } from "./event.store"; diff --git a/src/renderer/components/+events/kube-event-icon.tsx b/src/renderer/components/+events/kube-event-icon.tsx index 03bfa92a07..8fe83d2940 100644 --- a/src/renderer/components/+events/kube-event-icon.tsx +++ b/src/renderer/components/+events/kube-event-icon.tsx @@ -23,10 +23,10 @@ import "./kube-event-icon.scss"; import React from "react"; import { Icon } from "../icon"; -import type { KubeObject } from "../../api/kube-object"; +import type { KubeObject } from "../../../common/k8s-api/kube-object"; import { eventStore } from "./event.store"; import { cssNames } from "../../utils"; -import type { KubeEvent } from "../../api/endpoints/events.api"; +import type { KubeEvent } from "../../../common/k8s-api/endpoints/events.api"; interface Props { object: KubeObject; diff --git a/src/renderer/components/+namespaces/add-namespace-dialog.tsx b/src/renderer/components/+namespaces/add-namespace-dialog.tsx index 2427c9fd9b..e01381efe9 100644 --- a/src/renderer/components/+namespaces/add-namespace-dialog.tsx +++ b/src/renderer/components/+namespaces/add-namespace-dialog.tsx @@ -27,7 +27,7 @@ import { observer } from "mobx-react"; import { Dialog, DialogProps } from "../dialog"; import { Wizard, WizardStep } from "../wizard"; import { namespaceStore } from "./namespace.store"; -import type { Namespace } from "../../api/endpoints"; +import type { Namespace } from "../../../common/k8s-api/endpoints"; import { Input } from "../input"; import { systemName } from "../input/input_validators"; import { Notifications } from "../notifications"; diff --git a/src/renderer/components/+namespaces/namespace-details.tsx b/src/renderer/components/+namespaces/namespace-details.tsx index 784cdef3c8..08493e7a6b 100644 --- a/src/renderer/components/+namespaces/namespace-details.tsx +++ b/src/renderer/components/+namespaces/namespace-details.tsx @@ -26,7 +26,7 @@ import { computed, makeObservable, observable, reaction } from "mobx"; import { disposeOnUnmount, observer } from "mobx-react"; import { DrawerItem } from "../drawer"; import { boundMethod, cssNames } from "../../utils"; -import { getMetricsForNamespace, IPodMetrics, Namespace } from "../../api/endpoints"; +import { getMetricsForNamespace, IPodMetrics, Namespace } from "../../../common/k8s-api/endpoints"; import type { KubeObjectDetailsProps } from "../kube-object-details"; import { Link } from "react-router-dom"; import { Spinner } from "../spinner"; diff --git a/src/renderer/components/+namespaces/namespace-select.tsx b/src/renderer/components/+namespaces/namespace-select.tsx index 3a662ef66c..0cefdb2905 100644 --- a/src/renderer/components/+namespaces/namespace-select.tsx +++ b/src/renderer/components/+namespaces/namespace-select.tsx @@ -28,7 +28,7 @@ import { Select, SelectOption, SelectProps } from "../select"; import { cssNames } from "../../utils"; import { Icon } from "../icon"; import { namespaceStore } from "./namespace.store"; -import { kubeWatchApi } from "../../api/kube-watch-api"; +import { kubeWatchApi } from "../../../common/k8s-api/kube-watch-api"; interface Props extends SelectProps { showIcons?: boolean; diff --git a/src/renderer/components/+namespaces/namespace.store.ts b/src/renderer/components/+namespaces/namespace.store.ts index cc4a8b98ce..54f98702fc 100644 --- a/src/renderer/components/+namespaces/namespace.store.ts +++ b/src/renderer/components/+namespaces/namespace.store.ts @@ -21,9 +21,9 @@ import { action, comparer, computed, IReactionDisposer, IReactionOptions, makeObservable, reaction, } from "mobx"; import { autoBind, createStorage, noop } from "../../utils"; -import { KubeObjectStore, KubeObjectStoreLoadingParams } from "../../kube-object.store"; -import { Namespace, namespacesApi } from "../../api/endpoints/namespaces.api"; -import { apiManager } from "../../api/api-manager"; +import { KubeObjectStore, KubeObjectStoreLoadingParams } from "../../../common/k8s-api/kube-object.store"; +import { Namespace, namespacesApi } from "../../../common/k8s-api/endpoints/namespaces.api"; +import { apiManager } from "../../../common/k8s-api/api-manager"; export class NamespaceStore extends KubeObjectStore { api = namespacesApi; diff --git a/src/renderer/components/+namespaces/namespaces.tsx b/src/renderer/components/+namespaces/namespaces.tsx index cd90d44f9d..f0d3164e23 100644 --- a/src/renderer/components/+namespaces/namespaces.tsx +++ b/src/renderer/components/+namespaces/namespaces.tsx @@ -22,7 +22,7 @@ import "./namespaces.scss"; import React from "react"; -import { NamespaceStatus } from "../../api/endpoints"; +import { NamespaceStatus } from "../../../common/k8s-api/endpoints"; import { AddNamespaceDialog } from "./add-namespace-dialog"; import { TabLayout } from "../layout/tab-layout"; import { Badge } from "../badge"; diff --git a/src/renderer/components/+network-endpoints/endpoint-details.tsx b/src/renderer/components/+network-endpoints/endpoint-details.tsx index 70677cc51e..7805cd8d70 100644 --- a/src/renderer/components/+network-endpoints/endpoint-details.tsx +++ b/src/renderer/components/+network-endpoints/endpoint-details.tsx @@ -25,7 +25,7 @@ import React from "react"; import { observer } from "mobx-react"; import { DrawerTitle } from "../drawer"; import type { KubeObjectDetailsProps } from "../kube-object-details"; -import type { Endpoint } from "../../api/endpoints"; +import type { Endpoint } from "../../../common/k8s-api/endpoints"; import { KubeObjectMeta } from "../kube-object-meta"; import { EndpointSubsetList } from "./endpoint-subset-list"; diff --git a/src/renderer/components/+network-endpoints/endpoint-subset-list.tsx b/src/renderer/components/+network-endpoints/endpoint-subset-list.tsx index 917d03e320..7dcb1fc99b 100644 --- a/src/renderer/components/+network-endpoints/endpoint-subset-list.tsx +++ b/src/renderer/components/+network-endpoints/endpoint-subset-list.tsx @@ -23,10 +23,10 @@ import "./endpoint-subset-list.scss"; import React from "react"; import { observer } from "mobx-react"; -import { EndpointSubset, Endpoint, EndpointAddress} from "../../api/endpoints"; +import { EndpointSubset, Endpoint, EndpointAddress} from "../../../common/k8s-api/endpoints"; import { Table, TableCell, TableHead, TableRow } from "../table"; import { boundMethod } from "../../utils"; -import { apiManager } from "../../api/api-manager"; +import { apiManager } from "../../../common/k8s-api/api-manager"; import { Link } from "react-router-dom"; import { getDetailsUrl } from "../kube-detail-params"; diff --git a/src/renderer/components/+network-endpoints/endpoints.store.ts b/src/renderer/components/+network-endpoints/endpoints.store.ts index f51e8a072a..e19f868dea 100644 --- a/src/renderer/components/+network-endpoints/endpoints.store.ts +++ b/src/renderer/components/+network-endpoints/endpoints.store.ts @@ -19,9 +19,9 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { KubeObjectStore } from "../../kube-object.store"; -import { Endpoint, endpointApi } from "../../api/endpoints/endpoint.api"; -import { apiManager } from "../../api/api-manager"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; +import { Endpoint, endpointApi } from "../../../common/k8s-api/endpoints/endpoint.api"; +import { apiManager } from "../../../common/k8s-api/api-manager"; export class EndpointStore extends KubeObjectStore { api = endpointApi; diff --git a/src/renderer/components/+network-ingresses/ingress-charts.tsx b/src/renderer/components/+network-ingresses/ingress-charts.tsx index 178d61652c..0811209450 100644 --- a/src/renderer/components/+network-ingresses/ingress-charts.tsx +++ b/src/renderer/components/+network-ingresses/ingress-charts.tsx @@ -22,9 +22,9 @@ import React, { useContext } from "react"; import { observer } from "mobx-react"; import type { ChartOptions, ChartPoint } from "chart.js"; -import type { IIngressMetrics, Ingress } from "../../api/endpoints"; +import type { IIngressMetrics, Ingress } from "../../../common/k8s-api/endpoints"; import { BarChart, memoryOptions } from "../chart"; -import { normalizeMetrics, isMetricsEmpty } from "../../api/endpoints/metrics.api"; +import { normalizeMetrics, isMetricsEmpty } from "../../../common/k8s-api/endpoints/metrics.api"; import { NoMetrics } from "../resource-metrics/no-metrics"; import { ResourceMetricsContext, IResourceMetricsValue } from "../resource-metrics"; diff --git a/src/renderer/components/+network-ingresses/ingress-details.tsx b/src/renderer/components/+network-ingresses/ingress-details.tsx index bad75d717b..7fe7665041 100644 --- a/src/renderer/components/+network-ingresses/ingress-details.tsx +++ b/src/renderer/components/+network-ingresses/ingress-details.tsx @@ -25,13 +25,13 @@ import React from "react"; import { disposeOnUnmount, observer } from "mobx-react"; import { observable, reaction } from "mobx"; import { DrawerItem, DrawerTitle } from "../drawer"; -import type { ILoadBalancerIngress, Ingress } from "../../api/endpoints"; +import type { ILoadBalancerIngress, Ingress } from "../../../common/k8s-api/endpoints"; import { Table, TableCell, TableHead, TableRow } from "../table"; import { ResourceMetrics } from "../resource-metrics"; import type { KubeObjectDetailsProps } from "../kube-object-details"; import { IngressCharts } from "./ingress-charts"; import { KubeObjectMeta } from "../kube-object-meta"; -import { getBackendServiceNamePort, getMetricsForIngress, IIngressMetrics } from "../../api/endpoints/ingress.api"; +import { getBackendServiceNamePort, getMetricsForIngress, IIngressMetrics } from "../../../common/k8s-api/endpoints/ingress.api"; import { getActiveClusterEntity } from "../../api/catalog-entity-registry"; import { ClusterMetricsResourceType } from "../../../common/cluster-types"; diff --git a/src/renderer/components/+network-ingresses/ingress.store.ts b/src/renderer/components/+network-ingresses/ingress.store.ts index 72190a5103..ecf25ffa6a 100644 --- a/src/renderer/components/+network-ingresses/ingress.store.ts +++ b/src/renderer/components/+network-ingresses/ingress.store.ts @@ -18,9 +18,9 @@ * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { apiManager } from "../../api/api-manager"; -import { Ingress, ingressApi } from "../../api/endpoints"; -import { KubeObjectStore } from "../../kube-object.store"; +import { apiManager } from "../../../common/k8s-api/api-manager"; +import { Ingress, ingressApi } from "../../../common/k8s-api/endpoints"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; export class IngressStore extends KubeObjectStore { api = ingressApi; diff --git a/src/renderer/components/+network-policies/network-policy-details.tsx b/src/renderer/components/+network-policies/network-policy-details.tsx index a81afc211b..e08b891c41 100644 --- a/src/renderer/components/+network-policies/network-policy-details.tsx +++ b/src/renderer/components/+network-policies/network-policy-details.tsx @@ -24,7 +24,7 @@ import "./network-policy-details.scss"; import get from "lodash/get"; import React, { Fragment } from "react"; import { DrawerItem, DrawerTitle } from "../drawer"; -import type { IPolicyEgress, IPolicyIngress, IPolicyIpBlock, IPolicySelector, NetworkPolicy } from "../../api/endpoints/network-policy.api"; +import type { IPolicyEgress, IPolicyIngress, IPolicyIpBlock, IPolicySelector, NetworkPolicy } from "../../../common/k8s-api/endpoints/network-policy.api"; import { Badge } from "../badge"; import { SubTitle } from "../layout/sub-title"; import { observer } from "mobx-react"; diff --git a/src/renderer/components/+network-policies/network-policy.store.ts b/src/renderer/components/+network-policies/network-policy.store.ts index f5186e4cfd..4dc547a82e 100644 --- a/src/renderer/components/+network-policies/network-policy.store.ts +++ b/src/renderer/components/+network-policies/network-policy.store.ts @@ -19,9 +19,9 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { KubeObjectStore } from "../../kube-object.store"; -import { NetworkPolicy, networkPolicyApi } from "../../api/endpoints/network-policy.api"; -import { apiManager } from "../../api/api-manager"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; +import { NetworkPolicy, networkPolicyApi } from "../../../common/k8s-api/endpoints/network-policy.api"; +import { apiManager } from "../../../common/k8s-api/api-manager"; export class NetworkPolicyStore extends KubeObjectStore { api = networkPolicyApi; diff --git a/src/renderer/components/+network-services/service-details-endpoint.tsx b/src/renderer/components/+network-services/service-details-endpoint.tsx index 1d41ccf9e5..a36425afb6 100644 --- a/src/renderer/components/+network-services/service-details-endpoint.tsx +++ b/src/renderer/components/+network-services/service-details-endpoint.tsx @@ -19,7 +19,7 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import type { KubeObject } from "../../api/kube-object"; +import type { KubeObject } from "../../../common/k8s-api/kube-object"; import { observer } from "mobx-react"; import React from "react"; import { Table, TableHead, TableCell, TableRow } from "../table"; diff --git a/src/renderer/components/+network-services/service-details.tsx b/src/renderer/components/+network-services/service-details.tsx index 6b6067f077..66a09672a1 100644 --- a/src/renderer/components/+network-services/service-details.tsx +++ b/src/renderer/components/+network-services/service-details.tsx @@ -26,12 +26,12 @@ import { disposeOnUnmount, observer } from "mobx-react"; import { DrawerItem, DrawerTitle } from "../drawer"; import { Badge } from "../badge"; import type { KubeObjectDetailsProps } from "../kube-object-details"; -import type { Service } from "../../api/endpoints"; +import type { Service } from "../../../common/k8s-api/endpoints"; import { KubeObjectMeta } from "../kube-object-meta"; import { ServicePortComponent } from "./service-port-component"; import { endpointStore } from "../+network-endpoints/endpoints.store"; import { ServiceDetailsEndpoint } from "./service-details-endpoint"; -import { kubeWatchApi } from "../../api/kube-watch-api"; +import { kubeWatchApi } from "../../../common/k8s-api/kube-watch-api"; interface Props extends KubeObjectDetailsProps { } diff --git a/src/renderer/components/+network-services/service-port-component.tsx b/src/renderer/components/+network-services/service-port-component.tsx index a0c4c32f49..96bb7385cb 100644 --- a/src/renderer/components/+network-services/service-port-component.tsx +++ b/src/renderer/components/+network-services/service-port-component.tsx @@ -23,7 +23,7 @@ import "./service-port-component.scss"; import React from "react"; import { observer } from "mobx-react"; -import type { Service, ServicePort } from "../../api/endpoints"; +import type { Service, ServicePort } from "../../../common/k8s-api/endpoints"; import { apiBase } from "../../api"; import { observable, makeObservable } from "mobx"; import { cssNames } from "../../utils"; diff --git a/src/renderer/components/+network-services/services.store.ts b/src/renderer/components/+network-services/services.store.ts index 608d311617..3da75d70a3 100644 --- a/src/renderer/components/+network-services/services.store.ts +++ b/src/renderer/components/+network-services/services.store.ts @@ -19,9 +19,9 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { KubeObjectStore } from "../../kube-object.store"; -import { Service, serviceApi } from "../../api/endpoints/service.api"; -import { apiManager } from "../../api/api-manager"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; +import { Service, serviceApi } from "../../../common/k8s-api/endpoints/service.api"; +import { apiManager } from "../../../common/k8s-api/api-manager"; export class ServiceStore extends KubeObjectStore { api = serviceApi; diff --git a/src/renderer/components/+nodes/node-charts.tsx b/src/renderer/components/+nodes/node-charts.tsx index 60d6e08842..6f9495fce5 100644 --- a/src/renderer/components/+nodes/node-charts.tsx +++ b/src/renderer/components/+nodes/node-charts.tsx @@ -20,9 +20,9 @@ */ import React, { useContext } from "react"; -import type { IClusterMetrics, Node } from "../../api/endpoints"; +import type { IClusterMetrics, Node } from "../../../common/k8s-api/endpoints"; import { BarChart, cpuOptions, memoryOptions } from "../chart"; -import { isMetricsEmpty, normalizeMetrics } from "../../api/endpoints/metrics.api"; +import { isMetricsEmpty, normalizeMetrics } from "../../../common/k8s-api/endpoints/metrics.api"; import { NoMetrics } from "../resource-metrics/no-metrics"; import { IResourceMetricsValue, ResourceMetricsContext } from "../resource-metrics"; import { observer } from "mobx-react"; @@ -172,7 +172,7 @@ export const NodeCharts = observer(() => { yAxes: [{ ticks: { callback: value => value - } + } }] }, tooltips: { diff --git a/src/renderer/components/+nodes/node-details-resources.tsx b/src/renderer/components/+nodes/node-details-resources.tsx index 636a3f55f0..c53018d62f 100644 --- a/src/renderer/components/+nodes/node-details-resources.tsx +++ b/src/renderer/components/+nodes/node-details-resources.tsx @@ -25,7 +25,7 @@ import { Table } from "../table/table"; import { TableHead } from "../table/table-head"; import { TableRow } from "../table/table-row"; import React from "react"; -import type { Node } from "../../api/endpoints"; +import type { Node } from "../../../common/k8s-api/endpoints"; import { TableCell } from "../table/table-cell"; interface Props { diff --git a/src/renderer/components/+nodes/node-details.tsx b/src/renderer/components/+nodes/node-details.tsx index 24a998ae32..9e86939260 100644 --- a/src/renderer/components/+nodes/node-details.tsx +++ b/src/renderer/components/+nodes/node-details.tsx @@ -30,7 +30,7 @@ import { Badge } from "../badge"; import { ResourceMetrics } from "../resource-metrics"; import { podsStore } from "../+workloads-pods/pods.store"; import type { KubeObjectDetailsProps } from "../kube-object-details"; -import { getMetricsByNodeNames, IClusterMetrics, Node } from "../../api/endpoints"; +import { getMetricsByNodeNames, IClusterMetrics, Node } from "../../../common/k8s-api/endpoints"; import { NodeCharts } from "./node-charts"; import { makeObservable, observable, reaction } from "mobx"; import { PodDetailsList } from "../+workloads-pods/pod-details-list"; diff --git a/src/renderer/components/+nodes/nodes.store.ts b/src/renderer/components/+nodes/nodes.store.ts index 43b5e32cca..e398c2896d 100644 --- a/src/renderer/components/+nodes/nodes.store.ts +++ b/src/renderer/components/+nodes/nodes.store.ts @@ -21,9 +21,9 @@ import { sum } from "lodash"; import { computed, makeObservable } from "mobx"; -import { apiManager } from "../../api/api-manager"; -import { Node, nodesApi } from "../../api/endpoints"; -import { KubeObjectStore } from "../../kube-object.store"; +import { apiManager } from "../../../common/k8s-api/api-manager"; +import { Node, nodesApi } from "../../../common/k8s-api/endpoints"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; import { autoBind } from "../../utils"; export class NodesStore extends KubeObjectStore { diff --git a/src/renderer/components/+nodes/nodes.tsx b/src/renderer/components/+nodes/nodes.tsx index 5a464f1221..d098ab1798 100644 --- a/src/renderer/components/+nodes/nodes.tsx +++ b/src/renderer/components/+nodes/nodes.tsx @@ -28,7 +28,7 @@ import { TabLayout } from "../layout/tab-layout"; import { nodesStore } from "./nodes.store"; import { podsStore } from "../+workloads-pods/pods.store"; import { KubeObjectListLayout } from "../kube-object-list-layout"; -import { getMetricsForAllNodes, INodeMetrics, Node } from "../../api/endpoints/nodes.api"; +import { getMetricsForAllNodes, INodeMetrics, Node } from "../../../common/k8s-api/endpoints/nodes.api"; import { LineProgress } from "../line-progress"; import { bytesToUnits } from "../../utils/convertMemory"; import { Tooltip, TooltipPosition } from "../tooltip"; @@ -36,7 +36,7 @@ import kebabCase from "lodash/kebabCase"; import upperFirst from "lodash/upperFirst"; import { KubeObjectStatusIcon } from "../kube-object-status-icon"; import { Badge } from "../badge/badge"; -import { kubeWatchApi } from "../../api/kube-watch-api"; +import { kubeWatchApi } from "../../../common/k8s-api/kube-watch-api"; import { eventStore } from "../+events/event.store"; import type { NodesRouteParams } from "../../../common/routes"; import { observable } from "mobx"; diff --git a/src/renderer/components/+pod-security-policies/pod-security-policies.store.ts b/src/renderer/components/+pod-security-policies/pod-security-policies.store.ts index ea51c2acb6..afb655b426 100644 --- a/src/renderer/components/+pod-security-policies/pod-security-policies.store.ts +++ b/src/renderer/components/+pod-security-policies/pod-security-policies.store.ts @@ -19,9 +19,9 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { PodSecurityPolicy, pspApi } from "../../api/endpoints"; -import { KubeObjectStore } from "../../kube-object.store"; -import { apiManager } from "../../api/api-manager"; +import { PodSecurityPolicy, pspApi } from "../../../common/k8s-api/endpoints"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; +import { apiManager } from "../../../common/k8s-api/api-manager"; export class PodSecurityPoliciesStore extends KubeObjectStore { api = pspApi; diff --git a/src/renderer/components/+pod-security-policies/pod-security-policy-details.tsx b/src/renderer/components/+pod-security-policies/pod-security-policy-details.tsx index 7da0218a7a..0c1c73567a 100644 --- a/src/renderer/components/+pod-security-policies/pod-security-policy-details.tsx +++ b/src/renderer/components/+pod-security-policies/pod-security-policy-details.tsx @@ -25,7 +25,7 @@ import React from "react"; import { observer } from "mobx-react"; import { DrawerItem, DrawerTitle } from "../drawer"; import type { KubeObjectDetailsProps } from "../kube-object-details"; -import type { PodSecurityPolicy } from "../../api/endpoints"; +import type { PodSecurityPolicy } from "../../../common/k8s-api/endpoints"; import { Badge } from "../badge"; import { Table, TableCell, TableHead, TableRow } from "../table"; import { KubeObjectMeta } from "../kube-object-meta"; diff --git a/src/renderer/components/+storage-classes/storage-class-details.tsx b/src/renderer/components/+storage-classes/storage-class-details.tsx index 302a94b3f4..2e8eae63bb 100644 --- a/src/renderer/components/+storage-classes/storage-class-details.tsx +++ b/src/renderer/components/+storage-classes/storage-class-details.tsx @@ -27,7 +27,7 @@ import { DrawerItem, DrawerTitle } from "../drawer"; import { Badge } from "../badge"; import { observer } from "mobx-react"; import type { KubeObjectDetailsProps } from "../kube-object-details"; -import type { StorageClass } from "../../api/endpoints"; +import type { StorageClass } from "../../../common/k8s-api/endpoints"; import { KubeObjectMeta } from "../kube-object-meta"; import { storageClassStore } from "./storage-class.store"; import { VolumeDetailsList } from "../+storage-volumes/volume-details-list"; diff --git a/src/renderer/components/+storage-classes/storage-class.store.ts b/src/renderer/components/+storage-classes/storage-class.store.ts index f2f7056377..67c7d33f6b 100644 --- a/src/renderer/components/+storage-classes/storage-class.store.ts +++ b/src/renderer/components/+storage-classes/storage-class.store.ts @@ -19,10 +19,10 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { KubeObjectStore } from "../../kube-object.store"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; import { autoBind } from "../../utils"; -import { StorageClass, storageClassApi } from "../../api/endpoints/storage-class.api"; -import { apiManager } from "../../api/api-manager"; +import { StorageClass, storageClassApi } from "../../../common/k8s-api/endpoints/storage-class.api"; +import { apiManager } from "../../../common/k8s-api/api-manager"; import { volumesStore } from "../+storage-volumes/volumes.store"; export class StorageClassStore extends KubeObjectStore { diff --git a/src/renderer/components/+storage-volume-claims/volume-claim-details.tsx b/src/renderer/components/+storage-volume-claims/volume-claim-details.tsx index 5911b202cb..2836d33f91 100644 --- a/src/renderer/components/+storage-volume-claims/volume-claim-details.tsx +++ b/src/renderer/components/+storage-volume-claims/volume-claim-details.tsx @@ -31,7 +31,7 @@ import { Link } from "react-router-dom"; import { ResourceMetrics } from "../resource-metrics"; import { VolumeClaimDiskChart } from "./volume-claim-disk-chart"; import type { KubeObjectDetailsProps } from "../kube-object-details"; -import { getMetricsForPvc, IPvcMetrics, PersistentVolumeClaim } from "../../api/endpoints"; +import { getMetricsForPvc, IPvcMetrics, PersistentVolumeClaim } from "../../../common/k8s-api/endpoints"; import { getActiveClusterEntity } from "../../api/catalog-entity-registry"; import { ClusterMetricsResourceType } from "../../../common/cluster-types"; import { KubeObjectMeta } from "../kube-object-meta"; diff --git a/src/renderer/components/+storage-volume-claims/volume-claim-disk-chart.tsx b/src/renderer/components/+storage-volume-claims/volume-claim-disk-chart.tsx index cd1c6f7024..04e888e4f1 100644 --- a/src/renderer/components/+storage-volume-claims/volume-claim-disk-chart.tsx +++ b/src/renderer/components/+storage-volume-claims/volume-claim-disk-chart.tsx @@ -21,9 +21,9 @@ import React, { useContext } from "react"; import { observer } from "mobx-react"; -import type { IPvcMetrics, PersistentVolumeClaim } from "../../api/endpoints"; +import type { IPvcMetrics, PersistentVolumeClaim } from "../../../common/k8s-api/endpoints"; import { BarChart, ChartDataSets, memoryOptions } from "../chart"; -import { isMetricsEmpty, normalizeMetrics } from "../../api/endpoints/metrics.api"; +import { isMetricsEmpty, normalizeMetrics } from "../../../common/k8s-api/endpoints/metrics.api"; import { NoMetrics } from "../resource-metrics/no-metrics"; import { IResourceMetricsValue, ResourceMetricsContext } from "../resource-metrics"; import { ThemeStore } from "../../theme.store"; diff --git a/src/renderer/components/+storage-volume-claims/volume-claim.store.ts b/src/renderer/components/+storage-volume-claims/volume-claim.store.ts index 4beca645a5..808592083a 100644 --- a/src/renderer/components/+storage-volume-claims/volume-claim.store.ts +++ b/src/renderer/components/+storage-volume-claims/volume-claim.store.ts @@ -18,9 +18,9 @@ * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { apiManager } from "../../api/api-manager"; -import { PersistentVolumeClaim, pvcApi } from "../../api/endpoints"; -import { KubeObjectStore } from "../../kube-object.store"; +import { apiManager } from "../../../common/k8s-api/api-manager"; +import { PersistentVolumeClaim, pvcApi } from "../../../common/k8s-api/endpoints"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; export class VolumeClaimStore extends KubeObjectStore { api = pvcApi; diff --git a/src/renderer/components/+storage-volume-claims/volume-claims.tsx b/src/renderer/components/+storage-volume-claims/volume-claims.tsx index e1f8e38527..4ab822b361 100644 --- a/src/renderer/components/+storage-volume-claims/volume-claims.tsx +++ b/src/renderer/components/+storage-volume-claims/volume-claims.tsx @@ -29,7 +29,7 @@ import { podsStore } from "../+workloads-pods/pods.store"; import { KubeObjectListLayout } from "../kube-object-list-layout"; import { unitsToBytes } from "../../utils/convertMemory"; import { stopPropagation } from "../../utils"; -import { storageClassApi } from "../../api/endpoints"; +import { storageClassApi } from "../../../common/k8s-api/endpoints"; import { KubeObjectStatusIcon } from "../kube-object-status-icon"; import type { VolumeClaimsRouteParams } from "../../../common/routes"; import { getDetailsUrl } from "../kube-detail-params"; diff --git a/src/renderer/components/+storage-volumes/volume-details-list.tsx b/src/renderer/components/+storage-volumes/volume-details-list.tsx index 1bd3e5d6d3..b9e2f9af0d 100644 --- a/src/renderer/components/+storage-volumes/volume-details-list.tsx +++ b/src/renderer/components/+storage-volumes/volume-details-list.tsx @@ -23,7 +23,7 @@ import "./volume-details-list.scss"; import React from "react"; import { observer } from "mobx-react"; -import type { PersistentVolume } from "../../api/endpoints/persistent-volume.api"; +import type { PersistentVolume } from "../../../common/k8s-api/endpoints/persistent-volume.api"; import { boundMethod } from "../../../common/utils/autobind"; import { TableRow } from "../table/table-row"; import { cssNames, prevDefault } from "../../utils"; diff --git a/src/renderer/components/+storage-volumes/volume-details.tsx b/src/renderer/components/+storage-volumes/volume-details.tsx index 0509e8e183..781df4b5b4 100644 --- a/src/renderer/components/+storage-volumes/volume-details.tsx +++ b/src/renderer/components/+storage-volumes/volume-details.tsx @@ -27,7 +27,7 @@ import { Link } from "react-router-dom"; import { observer } from "mobx-react"; import { DrawerItem, DrawerTitle } from "../drawer"; import { Badge } from "../badge"; -import { PersistentVolume, pvcApi } from "../../api/endpoints"; +import { PersistentVolume, pvcApi } from "../../../common/k8s-api/endpoints"; import type { KubeObjectDetailsProps } from "../kube-object-details"; import { KubeObjectMeta } from "../kube-object-meta"; import { getDetailsUrl } from "../kube-detail-params"; diff --git a/src/renderer/components/+storage-volumes/volumes.store.ts b/src/renderer/components/+storage-volumes/volumes.store.ts index 726792884b..f0567db82c 100644 --- a/src/renderer/components/+storage-volumes/volumes.store.ts +++ b/src/renderer/components/+storage-volumes/volumes.store.ts @@ -19,11 +19,11 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { KubeObjectStore } from "../../kube-object.store"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; import { autoBind } from "../../utils"; -import { PersistentVolume, persistentVolumeApi } from "../../api/endpoints/persistent-volume.api"; -import { apiManager } from "../../api/api-manager"; -import type { StorageClass } from "../../api/endpoints/storage-class.api"; +import { PersistentVolume, persistentVolumeApi } from "../../../common/k8s-api/endpoints/persistent-volume.api"; +import { apiManager } from "../../../common/k8s-api/api-manager"; +import type { StorageClass } from "../../../common/k8s-api/endpoints/storage-class.api"; export class PersistentVolumesStore extends KubeObjectStore { api = persistentVolumeApi; diff --git a/src/renderer/components/+storage-volumes/volumes.tsx b/src/renderer/components/+storage-volumes/volumes.tsx index 0d7cafd1b2..c98ff6f8fb 100644 --- a/src/renderer/components/+storage-volumes/volumes.tsx +++ b/src/renderer/components/+storage-volumes/volumes.tsx @@ -28,7 +28,7 @@ import { KubeObjectListLayout } from "../kube-object-list-layout"; import { getDetailsUrl } from "../kube-detail-params"; import { stopPropagation } from "../../utils"; import { volumesStore } from "./volumes.store"; -import { pvcApi, storageClassApi } from "../../api/endpoints"; +import { pvcApi, storageClassApi } from "../../../common/k8s-api/endpoints"; import { KubeObjectStatusIcon } from "../kube-object-status-icon"; import type { VolumesRouteParams } from "../../../common/routes"; diff --git a/src/renderer/components/+user-management/+cluster-role-bindings/details.tsx b/src/renderer/components/+user-management/+cluster-role-bindings/details.tsx index b6a6afba83..2be9588fa7 100644 --- a/src/renderer/components/+user-management/+cluster-role-bindings/details.tsx +++ b/src/renderer/components/+user-management/+cluster-role-bindings/details.tsx @@ -25,7 +25,7 @@ import { reaction } from "mobx"; import { disposeOnUnmount, observer } from "mobx-react"; import React from "react"; -import type { ClusterRoleBinding, ClusterRoleBindingSubject } from "../../../api/endpoints"; +import type { ClusterRoleBinding, ClusterRoleBindingSubject } from "../../../../common/k8s-api/endpoints"; import { autoBind, ObservableHashSet, prevDefault } from "../../../utils"; import { AddRemoveButtons } from "../../add-remove-buttons"; import { ConfirmDialog } from "../../confirm-dialog"; diff --git a/src/renderer/components/+user-management/+cluster-role-bindings/dialog.tsx b/src/renderer/components/+user-management/+cluster-role-bindings/dialog.tsx index 6755edfa74..b575068804 100644 --- a/src/renderer/components/+user-management/+cluster-role-bindings/dialog.tsx +++ b/src/renderer/components/+user-management/+cluster-role-bindings/dialog.tsx @@ -26,7 +26,7 @@ import { disposeOnUnmount, observer } from "mobx-react"; import React from "react"; import { serviceAccountsStore } from "../+service-accounts/store"; -import { ClusterRole, ClusterRoleBinding, ClusterRoleBindingSubject, ServiceAccount } from "../../../api/endpoints"; +import { ClusterRole, ClusterRoleBinding, ClusterRoleBindingSubject, ServiceAccount } from "../../../../common/k8s-api/endpoints"; import { Dialog, DialogProps } from "../../dialog"; import { EditableList } from "../../editable-list"; import { Icon } from "../../icon"; diff --git a/src/renderer/components/+user-management/+cluster-role-bindings/hashers.ts b/src/renderer/components/+user-management/+cluster-role-bindings/hashers.ts index 9bb85576ca..23c7f86f5c 100644 --- a/src/renderer/components/+user-management/+cluster-role-bindings/hashers.ts +++ b/src/renderer/components/+user-management/+cluster-role-bindings/hashers.ts @@ -20,7 +20,7 @@ */ import { MD5 } from "crypto-js"; -import type { ClusterRoleBindingSubject } from "../../../api/endpoints"; +import type { ClusterRoleBindingSubject } from "../../../../common/k8s-api/endpoints"; export function hashClusterRoleBindingSubject(subject: ClusterRoleBindingSubject): string { return MD5(JSON.stringify([ diff --git a/src/renderer/components/+user-management/+cluster-role-bindings/store.ts b/src/renderer/components/+user-management/+cluster-role-bindings/store.ts index 56fce615e0..e9d09f2b3f 100644 --- a/src/renderer/components/+user-management/+cluster-role-bindings/store.ts +++ b/src/renderer/components/+user-management/+cluster-role-bindings/store.ts @@ -19,9 +19,9 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { apiManager } from "../../../api/api-manager"; -import { ClusterRoleBinding, clusterRoleBindingApi, ClusterRoleBindingSubject } from "../../../api/endpoints"; -import { KubeObjectStore } from "../../../kube-object.store"; +import { apiManager } from "../../../../common/k8s-api/api-manager"; +import { ClusterRoleBinding, clusterRoleBindingApi, ClusterRoleBindingSubject } from "../../../../common/k8s-api/endpoints"; +import { KubeObjectStore } from "../../../../common/k8s-api/kube-object.store"; import { autoBind, HashSet } from "../../../utils"; import { hashClusterRoleBindingSubject } from "./hashers"; diff --git a/src/renderer/components/+user-management/+cluster-roles/details.tsx b/src/renderer/components/+user-management/+cluster-roles/details.tsx index 7eec29db12..063d424d75 100644 --- a/src/renderer/components/+user-management/+cluster-roles/details.tsx +++ b/src/renderer/components/+user-management/+cluster-roles/details.tsx @@ -27,7 +27,7 @@ import React from "react"; import { DrawerTitle } from "../../drawer"; import type { KubeObjectDetailsProps } from "../../kube-object-details"; import { KubeObjectMeta } from "../../kube-object-meta"; -import type { ClusterRole } from "../../../api/endpoints"; +import type { ClusterRole } from "../../../../common/k8s-api/endpoints"; interface Props extends KubeObjectDetailsProps { } diff --git a/src/renderer/components/+user-management/+cluster-roles/store.ts b/src/renderer/components/+user-management/+cluster-roles/store.ts index 6fe25a2c42..d3d5da561b 100644 --- a/src/renderer/components/+user-management/+cluster-roles/store.ts +++ b/src/renderer/components/+user-management/+cluster-roles/store.ts @@ -18,9 +18,9 @@ * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { apiManager } from "../../../api/api-manager"; -import { ClusterRole, clusterRoleApi } from "../../../api/endpoints"; -import { KubeObjectStore } from "../../../kube-object.store"; +import { apiManager } from "../../../../common/k8s-api/api-manager"; +import { ClusterRole, clusterRoleApi } from "../../../../common/k8s-api/endpoints"; +import { KubeObjectStore } from "../../../../common/k8s-api/kube-object.store"; import { autoBind } from "../../../utils"; export class ClusterRolesStore extends KubeObjectStore { diff --git a/src/renderer/components/+user-management/+role-bindings/details.tsx b/src/renderer/components/+user-management/+role-bindings/details.tsx index 71f062aa22..b04690dcf7 100644 --- a/src/renderer/components/+user-management/+role-bindings/details.tsx +++ b/src/renderer/components/+user-management/+role-bindings/details.tsx @@ -24,7 +24,7 @@ import "./details.scss"; import { reaction } from "mobx"; import { disposeOnUnmount, observer } from "mobx-react"; import React from "react"; -import type { RoleBinding, RoleBindingSubject } from "../../../api/endpoints"; +import type { RoleBinding, RoleBindingSubject } from "../../../../common/k8s-api/endpoints"; import { prevDefault, boundMethod } from "../../../utils"; import { AddRemoveButtons } from "../../add-remove-buttons"; import { ConfirmDialog } from "../../confirm-dialog"; diff --git a/src/renderer/components/+user-management/+role-bindings/dialog.tsx b/src/renderer/components/+user-management/+role-bindings/dialog.tsx index 6353145cc9..0f331ee698 100644 --- a/src/renderer/components/+user-management/+role-bindings/dialog.tsx +++ b/src/renderer/components/+user-management/+role-bindings/dialog.tsx @@ -28,7 +28,7 @@ import React from "react"; import { rolesStore } from "../+roles/store"; import { serviceAccountsStore } from "../+service-accounts/store"; import { NamespaceSelect } from "../../+namespaces/namespace-select"; -import { ClusterRole, Role, roleApi, RoleBinding, RoleBindingSubject, ServiceAccount } from "../../../api/endpoints"; +import { ClusterRole, Role, roleApi, RoleBinding, RoleBindingSubject, ServiceAccount } from "../../../../common/k8s-api/endpoints"; import { Dialog, DialogProps } from "../../dialog"; import { EditableList } from "../../editable-list"; import { Icon } from "../../icon"; diff --git a/src/renderer/components/+user-management/+role-bindings/hashers.ts b/src/renderer/components/+user-management/+role-bindings/hashers.ts index 2d8771bb18..2ab149738b 100644 --- a/src/renderer/components/+user-management/+role-bindings/hashers.ts +++ b/src/renderer/components/+user-management/+role-bindings/hashers.ts @@ -20,7 +20,7 @@ */ import { MD5 } from "crypto-js"; -import type { RoleBindingSubject } from "../../../api/endpoints"; +import type { RoleBindingSubject } from "../../../../common/k8s-api/endpoints"; export function hashRoleBindingSubject(subject: RoleBindingSubject): string { return MD5(JSON.stringify([ diff --git a/src/renderer/components/+user-management/+role-bindings/store.ts b/src/renderer/components/+user-management/+role-bindings/store.ts index d59db292e6..c55126b1a4 100644 --- a/src/renderer/components/+user-management/+role-bindings/store.ts +++ b/src/renderer/components/+user-management/+role-bindings/store.ts @@ -19,9 +19,9 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { apiManager } from "../../../api/api-manager"; -import { RoleBinding, roleBindingApi, RoleBindingSubject } from "../../../api/endpoints"; -import { KubeObjectStore } from "../../../kube-object.store"; +import { apiManager } from "../../../../common/k8s-api/api-manager"; +import { RoleBinding, roleBindingApi, RoleBindingSubject } from "../../../../common/k8s-api/endpoints"; +import { KubeObjectStore } from "../../../../common/k8s-api/kube-object.store"; import { HashSet } from "../../../utils"; import { hashRoleBindingSubject } from "./hashers"; diff --git a/src/renderer/components/+user-management/+roles/details.tsx b/src/renderer/components/+user-management/+roles/details.tsx index e90ac46e6b..02aa46f560 100644 --- a/src/renderer/components/+user-management/+roles/details.tsx +++ b/src/renderer/components/+user-management/+roles/details.tsx @@ -24,7 +24,7 @@ import "./details.scss"; import { observer } from "mobx-react"; import React from "react"; -import type { Role } from "../../../api/endpoints"; +import type { Role } from "../../../../common/k8s-api/endpoints"; import { DrawerTitle } from "../../drawer"; import type { KubeObjectDetailsProps } from "../../kube-object-details"; import { KubeObjectMeta } from "../../kube-object-meta"; diff --git a/src/renderer/components/+user-management/+roles/store.ts b/src/renderer/components/+user-management/+roles/store.ts index 43774e8b09..e0033af6e7 100644 --- a/src/renderer/components/+user-management/+roles/store.ts +++ b/src/renderer/components/+user-management/+roles/store.ts @@ -18,9 +18,9 @@ * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { apiManager } from "../../../api/api-manager"; -import { Role, roleApi } from "../../../api/endpoints"; -import { KubeObjectStore } from "../../../kube-object.store"; +import { apiManager } from "../../../../common/k8s-api/api-manager"; +import { Role, roleApi } from "../../../../common/k8s-api/endpoints"; +import { KubeObjectStore } from "../../../../common/k8s-api/kube-object.store"; import { autoBind } from "../../../utils"; export class RolesStore extends KubeObjectStore { diff --git a/src/renderer/components/+user-management/+service-accounts/details.tsx b/src/renderer/components/+user-management/+service-accounts/details.tsx index a121b072bb..3cc12dd24d 100644 --- a/src/renderer/components/+user-management/+service-accounts/details.tsx +++ b/src/renderer/components/+user-management/+service-accounts/details.tsx @@ -27,7 +27,7 @@ import React from "react"; import { Link } from "react-router-dom"; import { secretsStore } from "../../+config-secrets/secrets.store"; -import { Secret, ServiceAccount } from "../../../api/endpoints"; +import { Secret, ServiceAccount } from "../../../../common/k8s-api/endpoints"; import { DrawerItem, DrawerTitle } from "../../drawer"; import { Icon } from "../../icon"; import type { KubeObjectDetailsProps } from "../../kube-object-details"; diff --git a/src/renderer/components/+user-management/+service-accounts/secret.tsx b/src/renderer/components/+user-management/+service-accounts/secret.tsx index 4eff2b30dd..3acd53f0dc 100644 --- a/src/renderer/components/+user-management/+service-accounts/secret.tsx +++ b/src/renderer/components/+user-management/+service-accounts/secret.tsx @@ -24,7 +24,7 @@ import "./secret.scss"; import moment from "moment"; import React from "react"; -import type { Secret } from "../../../api/endpoints/secret.api"; +import type { Secret } from "../../../../common/k8s-api/endpoints/secret.api"; import { prevDefault } from "../../../utils"; import { Icon } from "../../icon"; diff --git a/src/renderer/components/+user-management/+service-accounts/store.ts b/src/renderer/components/+user-management/+service-accounts/store.ts index 51bbabca34..3e3abd4d4a 100644 --- a/src/renderer/components/+user-management/+service-accounts/store.ts +++ b/src/renderer/components/+user-management/+service-accounts/store.ts @@ -19,9 +19,9 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { apiManager } from "../../../api/api-manager"; -import { ServiceAccount, serviceAccountsApi } from "../../../api/endpoints"; -import { KubeObjectStore } from "../../../kube-object.store"; +import { apiManager } from "../../../../common/k8s-api/api-manager"; +import { ServiceAccount, serviceAccountsApi } from "../../../../common/k8s-api/endpoints"; +import { KubeObjectStore } from "../../../../common/k8s-api/kube-object.store"; import { autoBind } from "../../../utils"; export class ServiceAccountsStore extends KubeObjectStore { diff --git a/src/renderer/components/+user-management/+service-accounts/view.tsx b/src/renderer/components/+user-management/+service-accounts/view.tsx index af2090018c..a538384b95 100644 --- a/src/renderer/components/+user-management/+service-accounts/view.tsx +++ b/src/renderer/components/+user-management/+service-accounts/view.tsx @@ -24,7 +24,7 @@ import "./view.scss"; import { observer } from "mobx-react"; import React from "react"; import type { RouteComponentProps } from "react-router"; -import type { ServiceAccount } from "../../../api/endpoints/service-accounts.api"; +import type { ServiceAccount } from "../../../../common/k8s-api/endpoints/service-accounts.api"; import { Icon } from "../../icon"; import { KubeObjectListLayout } from "../../kube-object-list-layout"; import { KubeObjectStatusIcon } from "../../kube-object-status-icon"; diff --git a/src/renderer/components/+user-management/select-options.tsx b/src/renderer/components/+user-management/select-options.tsx index 65bfeeec9e..a51824f388 100644 --- a/src/renderer/components/+user-management/select-options.tsx +++ b/src/renderer/components/+user-management/select-options.tsx @@ -20,8 +20,8 @@ */ import React from "react"; -import type { ServiceAccount } from "../../api/endpoints"; -import type { KubeObject } from "../../api/kube-object"; +import type { ServiceAccount } from "../../../common/k8s-api/endpoints"; +import type { KubeObject } from "../../../common/k8s-api/kube-object"; import { Icon } from "../icon"; import type { SelectOption } from "../select"; import { TooltipPosition } from "../tooltip"; diff --git a/src/renderer/components/+workloads-cronjobs/cronjob-details.tsx b/src/renderer/components/+workloads-cronjobs/cronjob-details.tsx index c0e827d40b..108ec47012 100644 --- a/src/renderer/components/+workloads-cronjobs/cronjob-details.tsx +++ b/src/renderer/components/+workloads-cronjobs/cronjob-details.tsx @@ -30,9 +30,9 @@ import { jobStore } from "../+workloads-jobs/job.store"; import { Link } from "react-router-dom"; import { cronJobStore } from "./cronjob.store"; import type { KubeObjectDetailsProps } from "../kube-object-details"; -import type { CronJob, Job } from "../../api/endpoints"; -import { KubeObjectMeta } from "../kube-object-meta"; import { getDetailsUrl } from "../kube-detail-params"; +import type { CronJob, Job } from "../../../common/k8s-api/endpoints"; +import { KubeObjectMeta } from "../kube-object-meta"; interface Props extends KubeObjectDetailsProps { } diff --git a/src/renderer/components/+workloads-cronjobs/cronjob-trigger-dialog.tsx b/src/renderer/components/+workloads-cronjobs/cronjob-trigger-dialog.tsx index 6938185479..aa0d401cae 100644 --- a/src/renderer/components/+workloads-cronjobs/cronjob-trigger-dialog.tsx +++ b/src/renderer/components/+workloads-cronjobs/cronjob-trigger-dialog.tsx @@ -26,12 +26,12 @@ import { observable, makeObservable } from "mobx"; import { observer } from "mobx-react"; import { Dialog, DialogProps } from "../dialog"; import { Wizard, WizardStep } from "../wizard"; -import { CronJob, cronJobApi, jobApi } from "../../api/endpoints"; +import { CronJob, cronJobApi, jobApi } from "../../../common/k8s-api/endpoints"; import { Notifications } from "../notifications"; import { cssNames } from "../../utils"; import { Input } from "../input"; import { systemName, maxLength } from "../input/input_validators"; -import type { KubeObjectMetadata } from "../../api/kube-object"; +import type { KubeObjectMetadata } from "../../../common/k8s-api/kube-object"; interface Props extends Partial { } diff --git a/src/renderer/components/+workloads-cronjobs/cronjob.store.ts b/src/renderer/components/+workloads-cronjobs/cronjob.store.ts index 90ea0e0c2c..4f46eaf60a 100644 --- a/src/renderer/components/+workloads-cronjobs/cronjob.store.ts +++ b/src/renderer/components/+workloads-cronjobs/cronjob.store.ts @@ -19,11 +19,11 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { KubeObjectStore } from "../../kube-object.store"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; import { autoBind } from "../../utils"; -import { CronJob, cronJobApi } from "../../api/endpoints/cron-job.api"; +import { CronJob, cronJobApi } from "../../../common/k8s-api/endpoints/cron-job.api"; import { jobStore } from "../+workloads-jobs/job.store"; -import { apiManager } from "../../api/api-manager"; +import { apiManager } from "../../../common/k8s-api/api-manager"; export class CronJobStore extends KubeObjectStore { api = cronJobApi; diff --git a/src/renderer/components/+workloads-cronjobs/cronjobs.tsx b/src/renderer/components/+workloads-cronjobs/cronjobs.tsx index f17d8ed5f1..40dcb481ba 100644 --- a/src/renderer/components/+workloads-cronjobs/cronjobs.tsx +++ b/src/renderer/components/+workloads-cronjobs/cronjobs.tsx @@ -24,7 +24,7 @@ import "./cronjobs.scss"; import React from "react"; import { observer } from "mobx-react"; import type { RouteComponentProps } from "react-router"; -import { CronJob, cronJobApi } from "../../api/endpoints/cron-job.api"; +import { CronJob, cronJobApi } from "../../../common/k8s-api/endpoints/cron-job.api"; import { MenuItem } from "../menu"; import { Icon } from "../icon"; import { cronJobStore } from "./cronjob.store"; diff --git a/src/renderer/components/+workloads-daemonsets/daemonset-details.tsx b/src/renderer/components/+workloads-daemonsets/daemonset-details.tsx index 7a2fdc62e9..92615e54ef 100644 --- a/src/renderer/components/+workloads-daemonsets/daemonset-details.tsx +++ b/src/renderer/components/+workloads-daemonsets/daemonset-details.tsx @@ -31,7 +31,7 @@ import { PodDetailsAffinities } from "../+workloads-pods/pod-details-affinities" import { daemonSetStore } from "./daemonsets.store"; import { podsStore } from "../+workloads-pods/pods.store"; import type { KubeObjectDetailsProps } from "../kube-object-details"; -import { DaemonSet, getMetricsForDaemonSets, IPodMetrics } from "../../api/endpoints"; +import { DaemonSet, getMetricsForDaemonSets, IPodMetrics } from "../../../common/k8s-api/endpoints"; import { ResourceMetrics, ResourceMetricsText } from "../resource-metrics"; import { PodCharts, podMetricTabs } from "../+workloads-pods/pod-charts"; import { makeObservable, observable, reaction } from "mobx"; diff --git a/src/renderer/components/+workloads-daemonsets/daemonsets.store.ts b/src/renderer/components/+workloads-daemonsets/daemonsets.store.ts index e8f729fde1..605aa65c93 100644 --- a/src/renderer/components/+workloads-daemonsets/daemonsets.store.ts +++ b/src/renderer/components/+workloads-daemonsets/daemonsets.store.ts @@ -21,9 +21,9 @@ import { makeObservable } from "mobx"; import { podsStore } from "../+workloads-pods/pods.store"; -import { apiManager } from "../../api/api-manager"; -import { DaemonSet, daemonSetApi, Pod, PodStatus } from "../../api/endpoints"; -import { KubeObjectStore } from "../../kube-object.store"; +import { apiManager } from "../../../common/k8s-api/api-manager"; +import { DaemonSet, daemonSetApi, Pod, PodStatus } from "../../../common/k8s-api/endpoints"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; import { autoBind } from "../../utils"; export class DaemonSetStore extends KubeObjectStore { diff --git a/src/renderer/components/+workloads-daemonsets/daemonsets.tsx b/src/renderer/components/+workloads-daemonsets/daemonsets.tsx index b8dcb51568..e9c4442b15 100644 --- a/src/renderer/components/+workloads-daemonsets/daemonsets.tsx +++ b/src/renderer/components/+workloads-daemonsets/daemonsets.tsx @@ -24,7 +24,7 @@ import "./daemonsets.scss"; import React from "react"; import { observer } from "mobx-react"; import type { RouteComponentProps } from "react-router"; -import type { DaemonSet } from "../../api/endpoints"; +import type { DaemonSet } from "../../../common/k8s-api/endpoints"; import { eventStore } from "../+events/event.store"; import { daemonSetStore } from "./daemonsets.store"; import { podsStore } from "../+workloads-pods/pods.store"; diff --git a/src/renderer/components/+workloads-deployments/deployment-details.tsx b/src/renderer/components/+workloads-deployments/deployment-details.tsx index 28b450b71c..8f4a45a580 100644 --- a/src/renderer/components/+workloads-deployments/deployment-details.tsx +++ b/src/renderer/components/+workloads-deployments/deployment-details.tsx @@ -26,7 +26,7 @@ import kebabCase from "lodash/kebabCase"; import { disposeOnUnmount, observer } from "mobx-react"; import { DrawerItem } from "../drawer"; import { Badge } from "../badge"; -import { Deployment, getMetricsForDeployments, IPodMetrics } from "../../api/endpoints"; +import { Deployment, getMetricsForDeployments, IPodMetrics } from "../../../common/k8s-api/endpoints"; import { PodDetailsTolerations } from "../+workloads-pods/pod-details-tolerations"; import { PodDetailsAffinities } from "../+workloads-pods/pod-details-affinities"; import { podsStore } from "../+workloads-pods/pods.store"; diff --git a/src/renderer/components/+workloads-deployments/deployment-replicasets.tsx b/src/renderer/components/+workloads-deployments/deployment-replicasets.tsx index 5a8e7edd5b..e332b19fe8 100644 --- a/src/renderer/components/+workloads-deployments/deployment-replicasets.tsx +++ b/src/renderer/components/+workloads-deployments/deployment-replicasets.tsx @@ -23,7 +23,7 @@ import "./deployment-replicasets.scss"; import React from "react"; import { observer } from "mobx-react"; -import type { ReplicaSet } from "../../api/endpoints"; +import type { ReplicaSet } from "../../../common/k8s-api/endpoints"; import { KubeObjectMenu, KubeObjectMenuProps } from "../kube-object-menu"; import { Spinner } from "../spinner"; import { prevDefault, stopPropagation } from "../../utils"; diff --git a/src/renderer/components/+workloads-deployments/deployment-scale-dialog.test.tsx b/src/renderer/components/+workloads-deployments/deployment-scale-dialog.test.tsx index 2df89e90df..655019af9e 100644 --- a/src/renderer/components/+workloads-deployments/deployment-scale-dialog.test.tsx +++ b/src/renderer/components/+workloads-deployments/deployment-scale-dialog.test.tsx @@ -25,7 +25,7 @@ import "@testing-library/jest-dom/extend-expect"; import { DeploymentScaleDialog } from "./deployment-scale-dialog"; jest.mock("../../api/endpoints"); -import { Deployment, deploymentApi } from "../../api/endpoints"; +import { Deployment, deploymentApi } from "../../../common/k8s-api/endpoints"; const dummyDeployment: Deployment = { apiVersion: "v1", @@ -124,7 +124,7 @@ describe("", () => { }); it("inits with a dummy deployment with mocked current/desired scale", async () => { - // mock deploymentApi.getReplicas() which will be called + // mock deploymentApi.getReplicas() which will be called // when rendered. const initReplicas = 3; @@ -143,7 +143,7 @@ describe("", () => { expect(currentScale).toHaveTextContent(`${initReplicas}`); expect(desiredScale).toHaveTextContent(`${initReplicas}`); }); - + }); it("changes the desired scale when clicking the icon buttons +/-", async () => { diff --git a/src/renderer/components/+workloads-deployments/deployment-scale-dialog.tsx b/src/renderer/components/+workloads-deployments/deployment-scale-dialog.tsx index 0e7ae52f3d..176df1ecff 100644 --- a/src/renderer/components/+workloads-deployments/deployment-scale-dialog.tsx +++ b/src/renderer/components/+workloads-deployments/deployment-scale-dialog.tsx @@ -26,7 +26,7 @@ import { computed, observable, makeObservable } from "mobx"; import { observer } from "mobx-react"; import { Dialog, DialogProps } from "../dialog"; import { Wizard, WizardStep } from "../wizard"; -import { Deployment, deploymentApi } from "../../api/endpoints"; +import { Deployment, deploymentApi } from "../../../common/k8s-api/endpoints"; import { Icon } from "../icon"; import { Slider } from "../slider"; import { Notifications } from "../notifications"; diff --git a/src/renderer/components/+workloads-deployments/deployments.store.ts b/src/renderer/components/+workloads-deployments/deployments.store.ts index 34b6e295ad..64f349491e 100644 --- a/src/renderer/components/+workloads-deployments/deployments.store.ts +++ b/src/renderer/components/+workloads-deployments/deployments.store.ts @@ -21,9 +21,9 @@ import { makeObservable } from "mobx"; import { podsStore } from "../+workloads-pods/pods.store"; -import { apiManager } from "../../api/api-manager"; -import { Deployment, deploymentApi, PodStatus } from "../../api/endpoints"; -import { KubeObjectStore } from "../../kube-object.store"; +import { apiManager } from "../../../common/k8s-api/api-manager"; +import { Deployment, deploymentApi, PodStatus } from "../../../common/k8s-api/endpoints"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; import { autoBind } from "../../utils"; export class DeploymentStore extends KubeObjectStore { diff --git a/src/renderer/components/+workloads-deployments/deployments.tsx b/src/renderer/components/+workloads-deployments/deployments.tsx index 6531114fa9..28705fd53d 100644 --- a/src/renderer/components/+workloads-deployments/deployments.tsx +++ b/src/renderer/components/+workloads-deployments/deployments.tsx @@ -24,7 +24,7 @@ import "./deployments.scss"; import React from "react"; import { observer } from "mobx-react"; import type { RouteComponentProps } from "react-router"; -import { Deployment, deploymentApi } from "../../api/endpoints"; +import { Deployment, deploymentApi } from "../../../common/k8s-api/endpoints"; import type { KubeObjectMenuProps } from "../kube-object-menu"; import { MenuItem } from "../menu"; import { Icon } from "../icon"; diff --git a/src/renderer/components/+workloads-jobs/job-details.tsx b/src/renderer/components/+workloads-jobs/job-details.tsx index 9cf5a2e75d..6c4d9d3525 100644 --- a/src/renderer/components/+workloads-jobs/job-details.tsx +++ b/src/renderer/components/+workloads-jobs/job-details.tsx @@ -33,9 +33,8 @@ import { PodDetailsAffinities } from "../+workloads-pods/pod-details-affinities" import { podsStore } from "../+workloads-pods/pods.store"; import { jobStore } from "./job.store"; import type { KubeObjectDetailsProps } from "../kube-object-details"; -import { getMetricsForJobs, IPodMetrics, Job } from "../../api/endpoints"; +import { getMetricsForJobs, IPodMetrics, Job } from "../../../common/k8s-api/endpoints"; import { PodDetailsList } from "../+workloads-pods/pod-details-list"; -import { apiManager } from "../../api/api-manager"; import { KubeObjectMeta } from "../kube-object-meta"; import { makeObservable, observable } from "mobx"; import { podMetricTabs, PodCharts } from "../+workloads-pods/pod-charts"; @@ -44,6 +43,7 @@ import { getActiveClusterEntity } from "../../api/catalog-entity-registry"; import { ResourceMetrics } from "../resource-metrics"; import { boundMethod } from "autobind-decorator"; import { getDetailsUrl } from "../kube-detail-params"; +import { apiManager } from "../../../common/k8s-api/api-manager"; interface Props extends KubeObjectDetailsProps { } diff --git a/src/renderer/components/+workloads-jobs/job.store.ts b/src/renderer/components/+workloads-jobs/job.store.ts index 643f29385a..71f854c6c3 100644 --- a/src/renderer/components/+workloads-jobs/job.store.ts +++ b/src/renderer/components/+workloads-jobs/job.store.ts @@ -19,12 +19,12 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { KubeObjectStore } from "../../kube-object.store"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; import { autoBind } from "../../utils"; -import { Job, jobApi } from "../../api/endpoints/job.api"; -import { CronJob, Pod, PodStatus } from "../../api/endpoints"; +import { Job, jobApi } from "../../../common/k8s-api/endpoints/job.api"; +import { CronJob, Pod, PodStatus } from "../../../common/k8s-api/endpoints"; import { podsStore } from "../+workloads-pods/pods.store"; -import { apiManager } from "../../api/api-manager"; +import { apiManager } from "../../../common/k8s-api/api-manager"; export class JobStore extends KubeObjectStore { api = jobApi; diff --git a/src/renderer/components/+workloads-overview/overview.tsx b/src/renderer/components/+workloads-overview/overview.tsx index ec025f0d80..695e3edf95 100644 --- a/src/renderer/components/+workloads-overview/overview.tsx +++ b/src/renderer/components/+workloads-overview/overview.tsx @@ -32,7 +32,7 @@ import { statefulSetStore } from "../+workloads-statefulsets/statefulset.store"; import { replicaSetStore } from "../+workloads-replicasets/replicasets.store"; import { jobStore } from "../+workloads-jobs/job.store"; import { cronJobStore } from "../+workloads-cronjobs/cronjob.store"; -import { kubeWatchApi } from "../../api/kube-watch-api"; +import { kubeWatchApi } from "../../../common/k8s-api/kube-watch-api"; import { clusterContext } from "../context"; import { WorkloadsOverviewDetailRegistry } from "../../../extensions/registries"; import type { WorkloadsOverviewRouteParams } from "../../../common/routes"; diff --git a/src/renderer/components/+workloads-pods/__tests__/pod-tolerations.test.tsx b/src/renderer/components/+workloads-pods/__tests__/pod-tolerations.test.tsx index 30ef2e98e9..72d12af5a9 100644 --- a/src/renderer/components/+workloads-pods/__tests__/pod-tolerations.test.tsx +++ b/src/renderer/components/+workloads-pods/__tests__/pod-tolerations.test.tsx @@ -22,7 +22,7 @@ import React from "react"; import "@testing-library/jest-dom/extend-expect"; import { fireEvent, render } from "@testing-library/react"; -import type { IToleration } from "../../../api/workload-kube-object"; +import type { IToleration } from "../../../../common/k8s-api/workload-kube-object"; import { PodTolerations } from "../pod-tolerations"; jest.mock("electron", () => ({ diff --git a/src/renderer/components/+workloads-pods/container-charts.tsx b/src/renderer/components/+workloads-pods/container-charts.tsx index 0c810b47de..9586d7bf7c 100644 --- a/src/renderer/components/+workloads-pods/container-charts.tsx +++ b/src/renderer/components/+workloads-pods/container-charts.tsx @@ -21,9 +21,9 @@ import React, { useContext } from "react"; import { observer } from "mobx-react"; -import type { IPodMetrics } from "../../api/endpoints"; +import type { IPodMetrics } from "../../../common/k8s-api/endpoints"; import { BarChart, cpuOptions, memoryOptions } from "../chart"; -import { isMetricsEmpty, normalizeMetrics } from "../../api/endpoints/metrics.api"; +import { isMetricsEmpty, normalizeMetrics } from "../../../common/k8s-api/endpoints/metrics.api"; import { NoMetrics } from "../resource-metrics/no-metrics"; import { IResourceMetricsValue, ResourceMetricsContext } from "../resource-metrics"; import { ThemeStore } from "../../theme.store"; diff --git a/src/renderer/components/+workloads-pods/pod-charts.tsx b/src/renderer/components/+workloads-pods/pod-charts.tsx index cc05aeec55..4caf12fbbd 100644 --- a/src/renderer/components/+workloads-pods/pod-charts.tsx +++ b/src/renderer/components/+workloads-pods/pod-charts.tsx @@ -22,13 +22,13 @@ import { mapValues } from "lodash"; import { observer } from "mobx-react"; import React, { useContext } from "react"; -import { isMetricsEmpty, normalizeMetrics } from "../../api/endpoints/metrics.api"; +import { isMetricsEmpty, normalizeMetrics } from "../../../common/k8s-api/endpoints/metrics.api"; import { BarChart, cpuOptions, memoryOptions } from "../chart"; import { IResourceMetricsValue, ResourceMetricsContext } from "../resource-metrics"; import { NoMetrics } from "../resource-metrics/no-metrics"; -import type { WorkloadKubeObject } from "../../api/workload-kube-object"; -import type { IPodMetrics } from "../../api/endpoints"; +import type { WorkloadKubeObject } from "../../../common/k8s-api/workload-kube-object"; +import type { IPodMetrics } from "../../../common/k8s-api/endpoints"; export const podMetricTabs = [ "CPU", diff --git a/src/renderer/components/+workloads-pods/pod-container-env.tsx b/src/renderer/components/+workloads-pods/pod-container-env.tsx index 3d3eb33474..4c847e68bb 100644 --- a/src/renderer/components/+workloads-pods/pod-container-env.tsx +++ b/src/renderer/components/+workloads-pods/pod-container-env.tsx @@ -23,7 +23,7 @@ import "./pod-container-env.scss"; import React, { useEffect, useState } from "react"; import { observer } from "mobx-react"; -import type { IPodContainer, Secret } from "../../api/endpoints"; +import type { IPodContainer, Secret } from "../../../common/k8s-api/endpoints"; import { DrawerItem } from "../drawer"; import { autorun } from "mobx"; import { secretsStore } from "../+config-secrets/secrets.store"; diff --git a/src/renderer/components/+workloads-pods/pod-container-port.tsx b/src/renderer/components/+workloads-pods/pod-container-port.tsx index 9e035c1fd9..c8bb435b55 100644 --- a/src/renderer/components/+workloads-pods/pod-container-port.tsx +++ b/src/renderer/components/+workloads-pods/pod-container-port.tsx @@ -23,7 +23,7 @@ import "./pod-container-port.scss"; import React from "react"; import { observer } from "mobx-react"; -import type { Pod } from "../../api/endpoints"; +import type { Pod } from "../../../common/k8s-api/endpoints"; import { apiBase } from "../../api"; import { observable, makeObservable } from "mobx"; import { cssNames } from "../../utils"; diff --git a/src/renderer/components/+workloads-pods/pod-details-affinities.tsx b/src/renderer/components/+workloads-pods/pod-details-affinities.tsx index 7be1722286..f20a3b7a65 100644 --- a/src/renderer/components/+workloads-pods/pod-details-affinities.tsx +++ b/src/renderer/components/+workloads-pods/pod-details-affinities.tsx @@ -24,7 +24,7 @@ import React from "react"; import jsYaml from "js-yaml"; import { AceEditor } from "../ace-editor"; import { DrawerParamToggler, DrawerItem } from "../drawer"; -import type { Pod, Deployment, DaemonSet, StatefulSet, ReplicaSet, Job } from "../../api/endpoints"; +import type { Pod, Deployment, DaemonSet, StatefulSet, ReplicaSet, Job } from "../../../common/k8s-api/endpoints"; interface Props { workload: Pod | Deployment | DaemonSet | StatefulSet | ReplicaSet | Job; diff --git a/src/renderer/components/+workloads-pods/pod-details-container.tsx b/src/renderer/components/+workloads-pods/pod-details-container.tsx index 5ae7625fb0..c39ed80751 100644 --- a/src/renderer/components/+workloads-pods/pod-details-container.tsx +++ b/src/renderer/components/+workloads-pods/pod-details-container.tsx @@ -22,7 +22,7 @@ import "./pod-details-container.scss"; import React from "react"; -import type { IPodContainer, IPodContainerStatus, Pod } from "../../api/endpoints"; +import type { IPodContainer, IPodContainerStatus, Pod } from "../../../common/k8s-api/endpoints"; import { DrawerItem } from "../drawer"; import { cssNames } from "../../utils"; import { StatusBrick } from "../status-brick"; @@ -30,7 +30,7 @@ import { Badge } from "../badge"; import { ContainerEnvironment } from "./pod-container-env"; import { PodContainerPort } from "./pod-container-port"; import { ResourceMetrics } from "../resource-metrics"; -import type { IMetrics } from "../../api/endpoints/metrics.api"; +import type { IMetrics } from "../../../common/k8s-api/endpoints/metrics.api"; import { ContainerCharts } from "./container-charts"; import { LocaleDate } from "../locale-date"; import { getActiveClusterEntity } from "../../api/catalog-entity-registry"; diff --git a/src/renderer/components/+workloads-pods/pod-details-list.tsx b/src/renderer/components/+workloads-pods/pod-details-list.tsx index 2ea299f5d0..b3dbe80fe7 100644 --- a/src/renderer/components/+workloads-pods/pod-details-list.tsx +++ b/src/renderer/components/+workloads-pods/pod-details-list.tsx @@ -26,10 +26,10 @@ import kebabCase from "lodash/kebabCase"; import { reaction } from "mobx"; import { disposeOnUnmount, observer } from "mobx-react"; import { podsStore } from "./pods.store"; -import type { Pod } from "../../api/endpoints"; +import type { Pod } from "../../../common/k8s-api/endpoints"; import { boundMethod, bytesToUnits, cssNames, interval, prevDefault } from "../../utils"; import { LineProgress } from "../line-progress"; -import type { KubeObject } from "../../api/kube-object"; +import type { KubeObject } from "../../../common/k8s-api/kube-object"; import { Table, TableCell, TableHead, TableRow } from "../table"; import { Spinner } from "../spinner"; import { DrawerTitle } from "../drawer"; diff --git a/src/renderer/components/+workloads-pods/pod-details-secrets.tsx b/src/renderer/components/+workloads-pods/pod-details-secrets.tsx index 93457cb360..706da34668 100644 --- a/src/renderer/components/+workloads-pods/pod-details-secrets.tsx +++ b/src/renderer/components/+workloads-pods/pod-details-secrets.tsx @@ -25,7 +25,7 @@ import React, { Component } from "react"; import { Link } from "react-router-dom"; import { autorun, observable, makeObservable } from "mobx"; import { disposeOnUnmount, observer } from "mobx-react"; -import { Pod, Secret, secretsApi } from "../../api/endpoints"; +import { Pod, Secret, secretsApi } from "../../../common/k8s-api/endpoints"; import { getDetailsUrl } from "../kube-detail-params"; interface Props { diff --git a/src/renderer/components/+workloads-pods/pod-details-statuses.tsx b/src/renderer/components/+workloads-pods/pod-details-statuses.tsx index 90c59ef778..36e6a26fb4 100644 --- a/src/renderer/components/+workloads-pods/pod-details-statuses.tsx +++ b/src/renderer/components/+workloads-pods/pod-details-statuses.tsx @@ -23,7 +23,7 @@ import "./pod-details-statuses.scss"; import React from "react"; import countBy from "lodash/countBy"; import kebabCase from "lodash/kebabCase"; -import type { Pod } from "../../api/endpoints"; +import type { Pod } from "../../../common/k8s-api/endpoints"; interface Props { pods: Pod[]; diff --git a/src/renderer/components/+workloads-pods/pod-details-tolerations.tsx b/src/renderer/components/+workloads-pods/pod-details-tolerations.tsx index 124192d549..70b1d36e7e 100644 --- a/src/renderer/components/+workloads-pods/pod-details-tolerations.tsx +++ b/src/renderer/components/+workloads-pods/pod-details-tolerations.tsx @@ -22,7 +22,7 @@ import "./pod-details-tolerations.scss"; import React from "react"; import { DrawerParamToggler, DrawerItem } from "../drawer"; -import type { WorkloadKubeObject } from "../../api/workload-kube-object"; +import type { WorkloadKubeObject } from "../../../common/k8s-api/workload-kube-object"; import { PodTolerations } from "./pod-tolerations"; interface Props { diff --git a/src/renderer/components/+workloads-pods/pod-details.tsx b/src/renderer/components/+workloads-pods/pod-details.tsx index 986d979cf2..9f95c5289f 100644 --- a/src/renderer/components/+workloads-pods/pod-details.tsx +++ b/src/renderer/components/+workloads-pods/pod-details.tsx @@ -26,7 +26,7 @@ import kebabCase from "lodash/kebabCase"; import { disposeOnUnmount, observer } from "mobx-react"; import { Link } from "react-router-dom"; import { observable, reaction, makeObservable } from "mobx"; -import { IPodMetrics, nodesApi, Pod, pvcApi, configMapApi, getMetricsForPods } from "../../api/endpoints"; +import { IPodMetrics, nodesApi, Pod, pvcApi, configMapApi, getMetricsForPods } from "../../../common/k8s-api/endpoints"; import { DrawerItem, DrawerTitle } from "../drawer"; import { Badge } from "../badge"; import { boundMethod, cssNames, toJS } from "../../utils"; @@ -37,7 +37,7 @@ import { Icon } from "../icon"; import { PodDetailsSecrets } from "./pod-details-secrets"; import { ResourceMetrics } from "../resource-metrics"; import type { KubeObjectDetailsProps } from "../kube-object-details"; -import { getItemMetrics } from "../../api/endpoints/metrics.api"; +import { getItemMetrics } from "../../../common/k8s-api/endpoints/metrics.api"; import { PodCharts, podMetricTabs } from "./pod-charts"; import { KubeObjectMeta } from "../kube-object-meta"; import { getActiveClusterEntity } from "../../api/catalog-entity-registry"; diff --git a/src/renderer/components/+workloads-pods/pod-tolerations.tsx b/src/renderer/components/+workloads-pods/pod-tolerations.tsx index 28793e0ea5..e2be706b7b 100644 --- a/src/renderer/components/+workloads-pods/pod-tolerations.tsx +++ b/src/renderer/components/+workloads-pods/pod-tolerations.tsx @@ -23,7 +23,7 @@ import "./pod-tolerations.scss"; import React from "react"; import uniqueId from "lodash/uniqueId"; -import type { IToleration } from "../../api/workload-kube-object"; +import type { IToleration } from "../../../common/k8s-api/workload-kube-object"; import { Table, TableCell, TableHead, TableRow } from "../table"; interface Props { diff --git a/src/renderer/components/+workloads-pods/pods.store.ts b/src/renderer/components/+workloads-pods/pods.store.ts index 9c2b925400..8941fc6c05 100644 --- a/src/renderer/components/+workloads-pods/pods.store.ts +++ b/src/renderer/components/+workloads-pods/pods.store.ts @@ -21,11 +21,11 @@ import countBy from "lodash/countBy"; import { observable, makeObservable } from "mobx"; -import { KubeObjectStore } from "../../kube-object.store"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; import { autoBind, cpuUnitsToNumber, unitsToBytes } from "../../utils"; -import { Pod, PodMetrics, podMetricsApi, podsApi } from "../../api/endpoints"; -import { apiManager } from "../../api/api-manager"; -import type { WorkloadKubeObject } from "../../api/workload-kube-object"; +import { Pod, PodMetrics, podMetricsApi, podsApi } from "../../../common/k8s-api/endpoints"; +import { apiManager } from "../../../common/k8s-api/api-manager"; +import type { WorkloadKubeObject } from "../../../common/k8s-api/workload-kube-object"; export class PodsStore extends KubeObjectStore { api = podsApi; diff --git a/src/renderer/components/+workloads-pods/pods.tsx b/src/renderer/components/+workloads-pods/pods.tsx index 46fce21e16..448bfa75c8 100644 --- a/src/renderer/components/+workloads-pods/pods.tsx +++ b/src/renderer/components/+workloads-pods/pods.tsx @@ -29,13 +29,13 @@ import type { RouteComponentProps } from "react-router"; import { volumeClaimStore } from "../+storage-volume-claims/volume-claim.store"; import { eventStore } from "../+events/event.store"; import { KubeObjectListLayout } from "../kube-object-list-layout"; -import { nodesApi, Pod } from "../../api/endpoints"; +import { nodesApi, Pod } from "../../../common/k8s-api/endpoints"; import { StatusBrick } from "../status-brick"; import { cssNames, stopPropagation } from "../../utils"; import toPairs from "lodash/toPairs"; import startCase from "lodash/startCase"; import kebabCase from "lodash/kebabCase"; -import { apiManager } from "../../api/api-manager"; +import { apiManager } from "../../../common/k8s-api/api-manager"; import { KubeObjectStatusIcon } from "../kube-object-status-icon"; import { Badge } from "../badge"; import type { PodsRouteParams } from "../../../common/routes"; diff --git a/src/renderer/components/+workloads-replicasets/replicaset-details.tsx b/src/renderer/components/+workloads-replicasets/replicaset-details.tsx index 59921432c1..7da1e22361 100644 --- a/src/renderer/components/+workloads-replicasets/replicaset-details.tsx +++ b/src/renderer/components/+workloads-replicasets/replicaset-details.tsx @@ -31,7 +31,7 @@ import { PodDetailsAffinities } from "../+workloads-pods/pod-details-affinities" import { disposeOnUnmount, observer } from "mobx-react"; import { podsStore } from "../+workloads-pods/pods.store"; import type { KubeObjectDetailsProps } from "../kube-object-details"; -import { getMetricsForReplicaSets, IPodMetrics, ReplicaSet } from "../../api/endpoints"; +import { getMetricsForReplicaSets, IPodMetrics, ReplicaSet } from "../../../common/k8s-api/endpoints"; import { ResourceMetrics, ResourceMetricsText } from "../resource-metrics"; import { PodCharts, podMetricTabs } from "../+workloads-pods/pod-charts"; import { PodDetailsList } from "../+workloads-pods/pod-details-list"; diff --git a/src/renderer/components/+workloads-replicasets/replicaset-scale-dialog.test.tsx b/src/renderer/components/+workloads-replicasets/replicaset-scale-dialog.test.tsx index 6107d43643..fdff2f8da1 100755 --- a/src/renderer/components/+workloads-replicasets/replicaset-scale-dialog.test.tsx +++ b/src/renderer/components/+workloads-replicasets/replicaset-scale-dialog.test.tsx @@ -25,7 +25,7 @@ jest.mock("../../api/endpoints"); import { ReplicaSetScaleDialog } from "./replicaset-scale-dialog"; import { render, waitFor, fireEvent } from "@testing-library/react"; import React from "react"; -import { ReplicaSet, replicaSetApi } from "../../api/endpoints/replica-set.api"; +import { ReplicaSet, replicaSetApi } from "../../../common/k8s-api/endpoints/replica-set.api"; const dummyReplicaSet: ReplicaSet = { apiVersion: "v1", diff --git a/src/renderer/components/+workloads-replicasets/replicaset-scale-dialog.tsx b/src/renderer/components/+workloads-replicasets/replicaset-scale-dialog.tsx index 0e98dde43a..aeab6b58dd 100644 --- a/src/renderer/components/+workloads-replicasets/replicaset-scale-dialog.tsx +++ b/src/renderer/components/+workloads-replicasets/replicaset-scale-dialog.tsx @@ -30,7 +30,7 @@ import { Icon } from "../icon"; import { Slider } from "../slider"; import { Notifications } from "../notifications"; import { cssNames } from "../../utils"; -import { ReplicaSet, replicaSetApi } from "../../api/endpoints/replica-set.api"; +import { ReplicaSet, replicaSetApi } from "../../../common/k8s-api/endpoints/replica-set.api"; interface Props extends Partial { } diff --git a/src/renderer/components/+workloads-replicasets/replicasets.store.ts b/src/renderer/components/+workloads-replicasets/replicasets.store.ts index 5daa57e45d..15c25c1e4e 100644 --- a/src/renderer/components/+workloads-replicasets/replicasets.store.ts +++ b/src/renderer/components/+workloads-replicasets/replicasets.store.ts @@ -21,10 +21,10 @@ import { makeObservable } from "mobx"; import { podsStore } from "../+workloads-pods/pods.store"; -import { apiManager } from "../../api/api-manager"; -import { Deployment, ReplicaSet, replicaSetApi } from "../../api/endpoints"; -import { PodStatus } from "../../api/endpoints/pods.api"; -import { KubeObjectStore } from "../../kube-object.store"; +import { apiManager } from "../../../common/k8s-api/api-manager"; +import { Deployment, ReplicaSet, replicaSetApi } from "../../../common/k8s-api/endpoints"; +import { PodStatus } from "../../../common/k8s-api/endpoints/pods.api"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; import { autoBind } from "../../utils"; export class ReplicaSetStore extends KubeObjectStore { diff --git a/src/renderer/components/+workloads-replicasets/replicasets.tsx b/src/renderer/components/+workloads-replicasets/replicasets.tsx index 156d3e0a13..8eaaa8f7cb 100644 --- a/src/renderer/components/+workloads-replicasets/replicasets.tsx +++ b/src/renderer/components/+workloads-replicasets/replicasets.tsx @@ -23,7 +23,7 @@ import "./replicasets.scss"; import React from "react"; import { observer } from "mobx-react"; -import type { ReplicaSet } from "../../api/endpoints"; +import type { ReplicaSet } from "../../../common/k8s-api/endpoints"; import type { KubeObjectMenuProps } from "../kube-object-menu"; import { replicaSetStore } from "./replicasets.store"; import { KubeObjectStatusIcon } from "../kube-object-status-icon"; diff --git a/src/renderer/components/+workloads-statefulsets/statefulset-details.tsx b/src/renderer/components/+workloads-statefulsets/statefulset-details.tsx index e6a3cda340..ff116105c9 100644 --- a/src/renderer/components/+workloads-statefulsets/statefulset-details.tsx +++ b/src/renderer/components/+workloads-statefulsets/statefulset-details.tsx @@ -32,7 +32,7 @@ import { PodDetailsAffinities } from "../+workloads-pods/pod-details-affinities" import { podsStore } from "../+workloads-pods/pods.store"; import { statefulSetStore } from "./statefulset.store"; import type { KubeObjectDetailsProps } from "../kube-object-details"; -import { getMetricsForStatefulSets, IPodMetrics, StatefulSet } from "../../api/endpoints"; +import { getMetricsForStatefulSets, IPodMetrics, StatefulSet } from "../../../common/k8s-api/endpoints"; import { ResourceMetrics, ResourceMetricsText } from "../resource-metrics"; import { PodCharts, podMetricTabs } from "../+workloads-pods/pod-charts"; import { PodDetailsList } from "../+workloads-pods/pod-details-list"; diff --git a/src/renderer/components/+workloads-statefulsets/statefulset-scale-dialog.test.tsx b/src/renderer/components/+workloads-statefulsets/statefulset-scale-dialog.test.tsx index 5c12040022..b5ccb40818 100755 --- a/src/renderer/components/+workloads-statefulsets/statefulset-scale-dialog.test.tsx +++ b/src/renderer/components/+workloads-statefulsets/statefulset-scale-dialog.test.tsx @@ -22,7 +22,7 @@ import "@testing-library/jest-dom/extend-expect"; jest.mock("../../api/endpoints"); -import { StatefulSet, statefulSetApi } from "../../api/endpoints"; +import { StatefulSet, statefulSetApi } from "../../../common/k8s-api/endpoints"; import { StatefulSetScaleDialog } from "./statefulset-scale-dialog"; import { render, waitFor, fireEvent } from "@testing-library/react"; import React from "react"; diff --git a/src/renderer/components/+workloads-statefulsets/statefulset-scale-dialog.tsx b/src/renderer/components/+workloads-statefulsets/statefulset-scale-dialog.tsx index cce00287a9..d5a1c8a5d8 100644 --- a/src/renderer/components/+workloads-statefulsets/statefulset-scale-dialog.tsx +++ b/src/renderer/components/+workloads-statefulsets/statefulset-scale-dialog.tsx @@ -21,7 +21,7 @@ import "./statefulset-scale-dialog.scss"; -import { StatefulSet, statefulSetApi } from "../../api/endpoints"; +import { StatefulSet, statefulSetApi } from "../../../common/k8s-api/endpoints"; import React, { Component } from "react"; import { computed, makeObservable, observable } from "mobx"; import { observer } from "mobx-react"; diff --git a/src/renderer/components/+workloads-statefulsets/statefulset.store.ts b/src/renderer/components/+workloads-statefulsets/statefulset.store.ts index 73c03a1b60..cf5b8ea36d 100644 --- a/src/renderer/components/+workloads-statefulsets/statefulset.store.ts +++ b/src/renderer/components/+workloads-statefulsets/statefulset.store.ts @@ -21,9 +21,9 @@ import { makeObservable } from "mobx"; import { podsStore } from "../+workloads-pods/pods.store"; -import { apiManager } from "../../api/api-manager"; -import { PodStatus, StatefulSet, statefulSetApi } from "../../api/endpoints"; -import { KubeObjectStore } from "../../kube-object.store"; +import { apiManager } from "../../../common/k8s-api/api-manager"; +import { PodStatus, StatefulSet, statefulSetApi } from "../../../common/k8s-api/endpoints"; +import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; import { autoBind } from "../../utils"; export class StatefulSetStore extends KubeObjectStore { diff --git a/src/renderer/components/+workloads-statefulsets/statefulsets.tsx b/src/renderer/components/+workloads-statefulsets/statefulsets.tsx index 88997e19c7..c3b5b0e023 100644 --- a/src/renderer/components/+workloads-statefulsets/statefulsets.tsx +++ b/src/renderer/components/+workloads-statefulsets/statefulsets.tsx @@ -24,7 +24,7 @@ import "./statefulsets.scss"; import React from "react"; import { observer } from "mobx-react"; import type { RouteComponentProps } from "react-router"; -import type { StatefulSet } from "../../api/endpoints"; +import type { StatefulSet } from "../../../common/k8s-api/endpoints"; import { podsStore } from "../+workloads-pods/pods.store"; import { statefulSetStore } from "./statefulset.store"; import { nodesStore } from "../+nodes/nodes.store"; diff --git a/src/renderer/components/+workloads/workloads.stores.ts b/src/renderer/components/+workloads/workloads.stores.ts index e53ea7cb03..d3d69c2a17 100644 --- a/src/renderer/components/+workloads/workloads.stores.ts +++ b/src/renderer/components/+workloads/workloads.stores.ts @@ -19,7 +19,7 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import type { KubeObjectStore } from "../../kube-object.store"; +import type { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; import { podsStore } from "../+workloads-pods/pods.store"; import { deploymentStore } from "../+workloads-deployments/deployments.store"; import { daemonSetStore } from "../+workloads-daemonsets/daemonsets.store"; @@ -28,7 +28,7 @@ import { jobStore } from "../+workloads-jobs/job.store"; import { cronJobStore } from "../+workloads-cronjobs/cronjob.store"; import type { KubeResource } from "../../../common/rbac"; import { replicaSetStore } from "../+workloads-replicasets/replicasets.store"; -import type { KubeObject } from "../../api/kube-object"; +import type { KubeObject } from "../../../common/k8s-api/kube-object"; export const workloadStores = new Map>([ ["pods", podsStore], diff --git a/src/renderer/components/__tests__/cronjob.store.test.ts b/src/renderer/components/__tests__/cronjob.store.test.ts index fcd8f93023..35531b2ec2 100644 --- a/src/renderer/components/__tests__/cronjob.store.test.ts +++ b/src/renderer/components/__tests__/cronjob.store.test.ts @@ -19,7 +19,7 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ import { cronJobStore } from "../+workloads-cronjobs/cronjob.store"; -import { CronJob } from "../../api/endpoints"; +import { CronJob } from "../../../common/k8s-api/endpoints"; const spec = { schedule: "test", diff --git a/src/renderer/components/__tests__/daemonset.store.test.ts b/src/renderer/components/__tests__/daemonset.store.test.ts index 00dcce5468..65ea991d9b 100644 --- a/src/renderer/components/__tests__/daemonset.store.test.ts +++ b/src/renderer/components/__tests__/daemonset.store.test.ts @@ -22,7 +22,7 @@ import { observable } from "mobx"; import { daemonSetStore } from "../+workloads-daemonsets/daemonsets.store"; import { podsStore } from "../+workloads-pods/pods.store"; -import { DaemonSet, Pod } from "../../api/endpoints"; +import { DaemonSet, Pod } from "../../../common/k8s-api/endpoints"; const runningDaemonSet = new DaemonSet({ apiVersion: "foo", diff --git a/src/renderer/components/__tests__/deployments.store.test.ts b/src/renderer/components/__tests__/deployments.store.test.ts index 6d7552dd6b..7742b55313 100644 --- a/src/renderer/components/__tests__/deployments.store.test.ts +++ b/src/renderer/components/__tests__/deployments.store.test.ts @@ -22,7 +22,7 @@ import { observable } from "mobx"; import { deploymentStore } from "../+workloads-deployments/deployments.store"; import { podsStore } from "../+workloads-pods/pods.store"; -import { Deployment, Pod } from "../../api/endpoints"; +import { Deployment, Pod } from "../../../common/k8s-api/endpoints"; const spec = { containers: [{ diff --git a/src/renderer/components/__tests__/job.store.test.ts b/src/renderer/components/__tests__/job.store.test.ts index 9f3a81ba91..f3d850e3dc 100644 --- a/src/renderer/components/__tests__/job.store.test.ts +++ b/src/renderer/components/__tests__/job.store.test.ts @@ -22,7 +22,7 @@ import { observable } from "mobx"; import { jobStore } from "../+workloads-jobs/job.store"; import { podsStore } from "../+workloads-pods/pods.store"; -import { Job, Pod } from "../../api/endpoints"; +import { Job, Pod } from "../../../common/k8s-api/endpoints"; const runningJob = new Job({ apiVersion: "foo", diff --git a/src/renderer/components/__tests__/pods.store.test.ts b/src/renderer/components/__tests__/pods.store.test.ts index 69d4f49840..74fe9de9f6 100644 --- a/src/renderer/components/__tests__/pods.store.test.ts +++ b/src/renderer/components/__tests__/pods.store.test.ts @@ -19,7 +19,7 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { Pod } from "../../api/endpoints"; +import { Pod } from "../../../common/k8s-api/endpoints"; import { podsStore } from "../+workloads-pods/pods.store"; const runningPod = new Pod({ diff --git a/src/renderer/components/__tests__/replicaset.store.test.ts b/src/renderer/components/__tests__/replicaset.store.test.ts index 74404e9004..3114290bc7 100644 --- a/src/renderer/components/__tests__/replicaset.store.test.ts +++ b/src/renderer/components/__tests__/replicaset.store.test.ts @@ -22,7 +22,7 @@ import { observable } from "mobx"; import { podsStore } from "../+workloads-pods/pods.store"; import { replicaSetStore } from "../+workloads-replicasets/replicasets.store"; -import { ReplicaSet, Pod } from "../../api/endpoints"; +import { ReplicaSet, Pod } from "../../../common/k8s-api/endpoints"; const runningReplicaSet = new ReplicaSet({ apiVersion: "foo", diff --git a/src/renderer/components/__tests__/statefulset.store.test.ts b/src/renderer/components/__tests__/statefulset.store.test.ts index 162684f092..4121be6c58 100644 --- a/src/renderer/components/__tests__/statefulset.store.test.ts +++ b/src/renderer/components/__tests__/statefulset.store.test.ts @@ -22,7 +22,7 @@ import { observable } from "mobx"; import { podsStore } from "../+workloads-pods/pods.store"; import { statefulSetStore } from "../+workloads-statefulsets/statefulset.store"; -import { StatefulSet, Pod } from "../../api/endpoints"; +import { StatefulSet, Pod } from "../../../common/k8s-api/endpoints"; const runningStatefulSet = new StatefulSet({ apiVersion: "foo", diff --git a/src/renderer/components/app.tsx b/src/renderer/components/app.tsx index b881bb74bb..46e285969a 100755 --- a/src/renderer/components/app.tsx +++ b/src/renderer/components/app.tsx @@ -45,10 +45,10 @@ import { StatefulSetScaleDialog } from "./+workloads-statefulsets/statefulset-sc import { eventStore } from "./+events/event.store"; import { nodesStore } from "./+nodes/nodes.store"; import { podsStore } from "./+workloads-pods/pods.store"; -import { kubeWatchApi } from "../api/kube-watch-api"; +import { kubeWatchApi } from "../../common/k8s-api/kube-watch-api"; import { ReplicaSetScaleDialog } from "./+workloads-replicasets/replicaset-scale-dialog"; import { CommandContainer } from "./command-palette/command-container"; -import { KubeObjectStore } from "../kube-object.store"; +import { KubeObjectStore } from "../../common/k8s-api/kube-object.store"; import { clusterContext } from "./context"; import * as routes from "../../common/routes"; import { TabLayout, TabLayoutRoute } from "./layout/tab-layout"; diff --git a/src/renderer/components/cluster-settings/components/cluster-prometheus-setting.tsx b/src/renderer/components/cluster-settings/components/cluster-prometheus-setting.tsx index a74606b1ec..26469a87ad 100644 --- a/src/renderer/components/cluster-settings/components/cluster-prometheus-setting.tsx +++ b/src/renderer/components/cluster-settings/components/cluster-prometheus-setting.tsx @@ -27,7 +27,7 @@ import { Select, SelectOption } from "../../select"; import { Input } from "../../input"; import { observable, computed, autorun, makeObservable } from "mobx"; import { productName } from "../../../../common/vars"; -import { MetricProviderInfo, metricsApi } from "../../../api/endpoints/metrics.api"; +import { MetricProviderInfo, metricsApi } from "../../../../common/k8s-api/endpoints/metrics.api"; import { Spinner } from "../../spinner"; interface Props { diff --git a/src/renderer/components/context.ts b/src/renderer/components/context.ts index 758e3dd20d..6e37aabdce 100755 --- a/src/renderer/components/context.ts +++ b/src/renderer/components/context.ts @@ -23,12 +23,7 @@ import { ClusterStore } from "../../common/cluster-store"; import type { Cluster } from "../../main/cluster"; import { getHostedClusterId } from "../utils"; import { namespaceStore } from "./+namespaces/namespace.store"; - -export interface ClusterContext { - cluster?: Cluster; - allNamespaces: string[]; // available / allowed namespaces from cluster.ts - contextNamespaces: string[]; // selected by user (see: namespace-select.tsx) -} +import type { ClusterContext } from "../../common/k8s-api/cluster-context"; export const clusterContext: ClusterContext = { get cluster(): Cluster | null { diff --git a/src/renderer/components/dock/__test__/log-resource-selector.test.tsx b/src/renderer/components/dock/__test__/log-resource-selector.test.tsx index 17ebb92d09..45e8a858f1 100644 --- a/src/renderer/components/dock/__test__/log-resource-selector.test.tsx +++ b/src/renderer/components/dock/__test__/log-resource-selector.test.tsx @@ -24,7 +24,7 @@ import "@testing-library/jest-dom/extend-expect"; import { render } from "@testing-library/react"; import selectEvent from "react-select-event"; -import { Pod } from "../../../api/endpoints"; +import { Pod } from "../../../../common/k8s-api/endpoints"; import { LogResourceSelector } from "../log-resource-selector"; import type { LogTabData } from "../log-tab.store"; import { dockerPod, deploymentPod1 } from "./pod.mock"; diff --git a/src/renderer/components/dock/__test__/log-tab.store.test.ts b/src/renderer/components/dock/__test__/log-tab.store.test.ts index da7d0b1052..7048be780a 100644 --- a/src/renderer/components/dock/__test__/log-tab.store.test.ts +++ b/src/renderer/components/dock/__test__/log-tab.store.test.ts @@ -21,7 +21,7 @@ import { podsStore } from "../../+workloads-pods/pods.store"; import { UserStore } from "../../../../common/user-store"; -import { Pod } from "../../../api/endpoints"; +import { Pod } from "../../../../common/k8s-api/endpoints"; import { ThemeStore } from "../../../theme.store"; import { dockStore } from "../dock.store"; import { logTabStore } from "../log-tab.store"; diff --git a/src/renderer/components/dock/create-resource.tsx b/src/renderer/components/dock/create-resource.tsx index c290e3f8bf..f826b772aa 100644 --- a/src/renderer/components/dock/create-resource.tsx +++ b/src/renderer/components/dock/create-resource.tsx @@ -33,8 +33,8 @@ import { createResourceStore } from "./create-resource.store"; import type { DockTab } from "./dock.store"; import { EditorPanel } from "./editor-panel"; import { InfoPanel } from "./info-panel"; -import { resourceApplierApi } from "../../api/endpoints/resource-applier.api"; -import type { JsonApiErrorParsed } from "../../api/json-api"; +import { resourceApplierApi } from "../../../common/k8s-api/endpoints/resource-applier.api"; +import type { JsonApiErrorParsed } from "../../../common/k8s-api/json-api"; import { Notifications } from "../notifications"; interface Props { diff --git a/src/renderer/components/dock/edit-resource.store.ts b/src/renderer/components/dock/edit-resource.store.ts index c0467b330b..2c8d26bbb9 100644 --- a/src/renderer/components/dock/edit-resource.store.ts +++ b/src/renderer/components/dock/edit-resource.store.ts @@ -23,9 +23,9 @@ import { autoBind, noop } from "../../utils"; import { DockTabStore } from "./dock-tab.store"; import { autorun, IReactionDisposer } from "mobx"; import { dockStore, DockTab, DockTabCreateSpecific, TabId, TabKind } from "./dock.store"; -import type { KubeObject } from "../../api/kube-object"; -import { apiManager } from "../../api/api-manager"; -import type { KubeObjectStore } from "../../kube-object.store"; +import type { KubeObject } from "../../../common/k8s-api/kube-object"; +import { apiManager } from "../../../common/k8s-api/api-manager"; +import type { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; export interface EditingResource { resource: string; // resource path, e.g. /api/v1/namespaces/default diff --git a/src/renderer/components/dock/edit-resource.tsx b/src/renderer/components/dock/edit-resource.tsx index 0496ef3104..19a238ab30 100644 --- a/src/renderer/components/dock/edit-resource.tsx +++ b/src/renderer/components/dock/edit-resource.tsx @@ -32,7 +32,7 @@ import { InfoPanel } from "./info-panel"; import { Badge } from "../badge"; import { EditorPanel } from "./editor-panel"; import { Spinner } from "../spinner"; -import type { KubeObject } from "../../api/kube-object"; +import type { KubeObject } from "../../../common/k8s-api/kube-object"; interface Props { className?: string; diff --git a/src/renderer/components/dock/install-chart.store.ts b/src/renderer/components/dock/install-chart.store.ts index f7ae6930e6..fb185ffb52 100644 --- a/src/renderer/components/dock/install-chart.store.ts +++ b/src/renderer/components/dock/install-chart.store.ts @@ -22,8 +22,8 @@ import { action, autorun, makeObservable } from "mobx"; import { dockStore, DockTabCreateSpecific, TabId, TabKind } from "./dock.store"; import { DockTabStore } from "./dock-tab.store"; -import { getChartDetails, getChartValues, HelmChart } from "../../api/endpoints/helm-charts.api"; -import type { IReleaseUpdateDetails } from "../../api/endpoints/helm-releases.api"; +import { getChartDetails, getChartValues, HelmChart } from "../../../common/k8s-api/endpoints/helm-charts.api"; +import type { IReleaseUpdateDetails } from "../../../common/k8s-api/endpoints/helm-releases.api"; import { Notifications } from "../notifications"; export interface IChartInstallData { diff --git a/src/renderer/components/dock/log-controls.tsx b/src/renderer/components/dock/log-controls.tsx index b12350d8f8..b7ac1c5fb4 100644 --- a/src/renderer/components/dock/log-controls.tsx +++ b/src/renderer/components/dock/log-controls.tsx @@ -24,7 +24,7 @@ import "./log-controls.scss"; import React from "react"; import { observer } from "mobx-react"; -import { Pod } from "../../api/endpoints"; +import { Pod } from "../../../common/k8s-api/endpoints"; import { cssNames, saveFileDialog } from "../../utils"; import { logStore } from "./log.store"; import { Checkbox } from "../checkbox"; diff --git a/src/renderer/components/dock/log-resource-selector.tsx b/src/renderer/components/dock/log-resource-selector.tsx index 068ad44d89..ab7a7560ed 100644 --- a/src/renderer/components/dock/log-resource-selector.tsx +++ b/src/renderer/components/dock/log-resource-selector.tsx @@ -24,7 +24,7 @@ import "./log-resource-selector.scss"; import React, { useEffect } from "react"; import { observer } from "mobx-react"; -import { Pod } from "../../api/endpoints"; +import { Pod } from "../../../common/k8s-api/endpoints"; import { Badge } from "../badge"; import { Select, SelectOption } from "../select"; import { LogTabData, logTabStore } from "./log-tab.store"; diff --git a/src/renderer/components/dock/log-tab.store.ts b/src/renderer/components/dock/log-tab.store.ts index bd7d61539b..5b6b73904f 100644 --- a/src/renderer/components/dock/log-tab.store.ts +++ b/src/renderer/components/dock/log-tab.store.ts @@ -23,8 +23,8 @@ import uniqueId from "lodash/uniqueId"; import { reaction } from "mobx"; import { podsStore } from "../+workloads-pods/pods.store"; -import { IPodContainer, Pod } from "../../api/endpoints"; -import type { WorkloadKubeObject } from "../../api/workload-kube-object"; +import { IPodContainer, Pod } from "../../../common/k8s-api/endpoints"; +import type { WorkloadKubeObject } from "../../../common/k8s-api/workload-kube-object"; import { DockTabStore } from "./dock-tab.store"; import { dockStore, DockTabCreateSpecific, TabKind } from "./dock.store"; diff --git a/src/renderer/components/dock/log.store.ts b/src/renderer/components/dock/log.store.ts index 710ed3a690..b03e00becb 100644 --- a/src/renderer/components/dock/log.store.ts +++ b/src/renderer/components/dock/log.store.ts @@ -21,7 +21,7 @@ import { autorun, computed, observable, makeObservable } from "mobx"; -import { IPodLogsQuery, Pod, podsApi } from "../../api/endpoints"; +import { IPodLogsQuery, Pod, podsApi } from "../../../common/k8s-api/endpoints"; import { autoBind, interval } from "../../utils"; import { dockStore, TabId, TabKind } from "./dock.store"; import { logTabStore } from "./log-tab.store"; diff --git a/src/renderer/components/dock/upgrade-chart.store.ts b/src/renderer/components/dock/upgrade-chart.store.ts index 4a43ae4ab1..7667f7c00e 100644 --- a/src/renderer/components/dock/upgrade-chart.store.ts +++ b/src/renderer/components/dock/upgrade-chart.store.ts @@ -22,7 +22,7 @@ import { action, autorun, computed, IReactionDisposer, reaction, makeObservable } from "mobx"; import { dockStore, DockTab, DockTabCreateSpecific, TabId, TabKind } from "./dock.store"; import { DockTabStore } from "./dock-tab.store"; -import { getReleaseValues, HelmRelease } from "../../api/endpoints/helm-releases.api"; +import { getReleaseValues, HelmRelease } from "../../../common/k8s-api/endpoints/helm-releases.api"; import { releaseStore } from "../+apps-releases/release.store"; import { iter } from "../../utils"; diff --git a/src/renderer/components/dock/upgrade-chart.tsx b/src/renderer/components/dock/upgrade-chart.tsx index 0628aeb19e..582bd6b8e0 100644 --- a/src/renderer/components/dock/upgrade-chart.tsx +++ b/src/renderer/components/dock/upgrade-chart.tsx @@ -33,7 +33,7 @@ import { releaseStore } from "../+apps-releases/release.store"; import { Badge } from "../badge"; import { EditorPanel } from "./editor-panel"; import { helmChartStore, IChartVersion } from "../+apps-helm-charts/helm-chart.store"; -import type { HelmRelease } from "../../api/endpoints/helm-releases.api"; +import type { HelmRelease } from "../../../common/k8s-api/endpoints/helm-releases.api"; import { Select, SelectOption } from "../select"; interface Props { diff --git a/src/renderer/components/item-object-list/item-list-layout.tsx b/src/renderer/components/item-object-list/item-list-layout.tsx index 5b27858740..d19e9d20c8 100644 --- a/src/renderer/components/item-object-list/item-list-layout.tsx +++ b/src/renderer/components/item-object-list/item-list-layout.tsx @@ -31,7 +31,7 @@ import { boundMethod, createStorage, cssNames, IClassName, isReactNode, noop, Ob import { AddRemoveButtons, AddRemoveButtonsProps } from "../add-remove-buttons"; import { NoItems } from "../no-items"; import { Spinner } from "../spinner"; -import type { ItemObject, ItemStore } from "../../item.store"; +import type { ItemObject, ItemStore } from "../../../common/item.store"; import { SearchInputUrlProps, SearchInputUrl } from "../input"; import { Filter, FilterType, pageFilters } from "./page-filters.store"; import { PageFiltersList } from "./page-filters-list"; diff --git a/src/renderer/components/kube-object-details/kube-object-details.tsx b/src/renderer/components/kube-object-details/kube-object-details.tsx index c561b29221..be888c6505 100644 --- a/src/renderer/components/kube-object-details/kube-object-details.tsx +++ b/src/renderer/components/kube-object-details/kube-object-details.tsx @@ -25,9 +25,9 @@ import React from "react"; import { disposeOnUnmount, observer } from "mobx-react"; import { computed, observable, reaction, makeObservable } from "mobx"; import { Drawer } from "../drawer"; -import type { KubeObject } from "../../api/kube-object"; +import type { KubeObject } from "../../../common/k8s-api/kube-object"; import { Spinner } from "../spinner"; -import { apiManager } from "../../api/api-manager"; +import { apiManager } from "../../../common/k8s-api/api-manager"; import { crdStore } from "../+custom-resources/crd.store"; import { KubeObjectMenu } from "../kube-object-menu"; import { KubeObjectDetailRegistry } from "../../api/kube-object-detail-registry"; diff --git a/src/renderer/components/kube-object-list-layout/kube-object-list-layout.tsx b/src/renderer/components/kube-object-list-layout/kube-object-list-layout.tsx index 0f0c130fbd..d55e30b28f 100644 --- a/src/renderer/components/kube-object-list-layout/kube-object-list-layout.tsx +++ b/src/renderer/components/kube-object-list-layout/kube-object-list-layout.tsx @@ -23,11 +23,11 @@ import React from "react"; import { computed, makeObservable } from "mobx"; import { disposeOnUnmount, observer } from "mobx-react"; import { cssNames } from "../../utils"; -import type { KubeObject } from "../../api/kube-object"; -import { ItemListLayout, ItemListLayoutProps } from "../item-object-list"; -import type { KubeObjectStore } from "../../kube-object.store"; +import type { KubeObject } from "../../../common/k8s-api/kube-object"; +import { ItemListLayout, ItemListLayoutProps } from "../item-object-list/item-list-layout"; +import type { KubeObjectStore } from "../../../common/k8s-api/kube-object.store"; import { KubeObjectMenu } from "../kube-object-menu"; -import { kubeWatchApi } from "../../api/kube-watch-api"; +import { kubeWatchApi } from "../../../common/k8s-api/kube-watch-api"; import { clusterContext } from "../context"; import { NamespaceSelectFilter } from "../+namespaces/namespace-select-filter"; import { ResourceKindMap, ResourceNames } from "../../utils/rbac"; diff --git a/src/renderer/components/kube-object-menu/kube-object-menu.tsx b/src/renderer/components/kube-object-menu/kube-object-menu.tsx index 5da4427778..1848fa2906 100644 --- a/src/renderer/components/kube-object-menu/kube-object-menu.tsx +++ b/src/renderer/components/kube-object-menu/kube-object-menu.tsx @@ -21,11 +21,11 @@ import React from "react"; import { boundMethod, cssNames } from "../../utils"; -import type { KubeObject } from "../../api/kube-object"; +import type { KubeObject } from "../../../common/k8s-api/kube-object"; import { editResourceTab } from "../dock/edit-resource.store"; import { MenuActions, MenuActionsProps } from "../menu/menu-actions"; import { hideDetails } from "../kube-detail-params"; -import { apiManager } from "../../api/api-manager"; +import { apiManager } from "../../../common/k8s-api/api-manager"; import { KubeObjectMenuRegistry } from "../../../extensions/registries/kube-object-menu-registry"; export interface KubeObjectMenuProps extends MenuActionsProps { diff --git a/src/renderer/components/kube-object-meta/kube-object-meta.tsx b/src/renderer/components/kube-object-meta/kube-object-meta.tsx index ad3cac5998..f9b03b8738 100644 --- a/src/renderer/components/kube-object-meta/kube-object-meta.tsx +++ b/src/renderer/components/kube-object-meta/kube-object-meta.tsx @@ -20,9 +20,9 @@ */ import React from "react"; -import type { KubeMetaField, KubeObject } from "../../api/kube-object"; +import type { KubeMetaField, KubeObject } from "../../../common/k8s-api/kube-object"; import { DrawerItem, DrawerItemLabels } from "../drawer"; -import { apiManager } from "../../api/api-manager"; +import { apiManager } from "../../../common/k8s-api/api-manager"; import { Link } from "react-router-dom"; import { KubeObjectStatusIcon } from "../kube-object-status-icon"; import { LocaleDate } from "../locale-date"; diff --git a/src/renderer/components/kubeconfig-dialog/kubeconfig-dialog.tsx b/src/renderer/components/kubeconfig-dialog/kubeconfig-dialog.tsx index 82903f7b5c..a9a9aacfdc 100644 --- a/src/renderer/components/kubeconfig-dialog/kubeconfig-dialog.tsx +++ b/src/renderer/components/kubeconfig-dialog/kubeconfig-dialog.tsx @@ -26,7 +26,7 @@ import { observable, makeObservable } from "mobx"; import { observer } from "mobx-react"; import jsYaml from "js-yaml"; import { AceEditor } from "../ace-editor"; -import type { ServiceAccount } from "../../api/endpoints"; +import type { ServiceAccount } from "../../../common/k8s-api/endpoints"; import { copyToClipboard, cssNames, saveFileDialog } from "../../utils"; import { Button } from "../button"; import { Dialog, DialogProps } from "../dialog"; diff --git a/src/renderer/components/notifications/notifications.store.tsx b/src/renderer/components/notifications/notifications.store.tsx index 63ab5d5e05..9a47f588ac 100644 --- a/src/renderer/components/notifications/notifications.store.tsx +++ b/src/renderer/components/notifications/notifications.store.tsx @@ -23,7 +23,7 @@ import type React from "react"; import { action, observable, makeObservable } from "mobx"; import { autoBind } from "../../utils"; import uniqueId from "lodash/uniqueId"; -import type { JsonApiErrorParsed } from "../../api/json-api"; +import type { JsonApiErrorParsed } from "../../../common/k8s-api/json-api"; export type NotificationId = string | number; export type NotificationMessage = React.ReactNode | React.ReactNode[] | JsonApiErrorParsed; diff --git a/src/renderer/components/notifications/notifications.tsx b/src/renderer/components/notifications/notifications.tsx index b4e9344aa0..3aa138ef4e 100644 --- a/src/renderer/components/notifications/notifications.tsx +++ b/src/renderer/components/notifications/notifications.tsx @@ -24,7 +24,7 @@ import "./notifications.scss"; import React from "react"; import { reaction } from "mobx"; import { disposeOnUnmount, observer } from "mobx-react"; -import { JsonApiErrorParsed } from "../../api/json-api"; +import { JsonApiErrorParsed } from "../../../common/k8s-api/json-api"; import { cssNames, prevDefault } from "../../utils"; import { Notification, NotificationMessage, notificationsStore, NotificationStatus } from "./notifications.store"; import { Animate } from "../animate"; diff --git a/src/renderer/components/resource-metrics/resource-metrics-text.tsx b/src/renderer/components/resource-metrics/resource-metrics-text.tsx index a83ef8118c..7708711569 100644 --- a/src/renderer/components/resource-metrics/resource-metrics-text.tsx +++ b/src/renderer/components/resource-metrics/resource-metrics-text.tsx @@ -20,8 +20,8 @@ */ import React from "react"; -import type { IPodMetrics } from "../../api/endpoints"; -import { getMetricLastPoints, IMetrics } from "../../api/endpoints/metrics.api"; +import type { IPodMetrics } from "../../../common/k8s-api/endpoints"; +import { getMetricLastPoints, IMetrics } from "../../../common/k8s-api/endpoints/metrics.api"; import { bytesToUnits } from "../../utils"; import { Badge } from "../badge"; import { DrawerItem } from "../drawer"; diff --git a/src/renderer/components/resource-metrics/resource-metrics.tsx b/src/renderer/components/resource-metrics/resource-metrics.tsx index aaf111a8cb..3b7a214fbb 100644 --- a/src/renderer/components/resource-metrics/resource-metrics.tsx +++ b/src/renderer/components/resource-metrics/resource-metrics.tsx @@ -24,7 +24,7 @@ import "./resource-metrics.scss"; import React, { createContext, useEffect, useState } from "react"; import { Radio, RadioGroup } from "../radio"; import { useInterval } from "../../hooks"; -import type { KubeObject } from "../../api/kube-object"; +import type { KubeObject } from "../../../common/k8s-api/kube-object"; import { cssNames } from "../../utils"; import { Spinner } from "../spinner"; diff --git a/src/renderer/components/table/table-row.tsx b/src/renderer/components/table/table-row.tsx index 9b3ce613e1..d4c148b4e3 100644 --- a/src/renderer/components/table/table-row.tsx +++ b/src/renderer/components/table/table-row.tsx @@ -23,7 +23,7 @@ import "./table-row.scss"; import React, { CSSProperties } from "react"; import { cssNames } from "../../utils"; -import type { ItemObject } from "../../item.store"; +import type { ItemObject } from "../../../common/item.store"; export type TableRowElem = React.ReactElement; diff --git a/src/renderer/components/virtual-list/virtual-list.tsx b/src/renderer/components/virtual-list/virtual-list.tsx index ad6d93af3a..36f62dff93 100644 --- a/src/renderer/components/virtual-list/virtual-list.tsx +++ b/src/renderer/components/virtual-list/virtual-list.tsx @@ -28,7 +28,7 @@ import { observer } from "mobx-react"; import { Align, ListChildComponentProps, ListOnScrollProps, VariableSizeList } from "react-window"; import { cssNames, noop } from "../../utils"; import type { TableRowProps } from "../table/table-row"; -import type { ItemObject } from "../../item.store"; +import type { ItemObject } from "../../../common/item.store"; import debounce from "lodash/debounce"; import isEqual from "lodash/isEqual"; import AutoSizer from "react-virtualized-auto-sizer"; diff --git a/src/renderer/utils/index.ts b/src/renderer/utils/index.ts index a0b20d1e2d..693cc94e27 100755 --- a/src/renderer/utils/index.ts +++ b/src/renderer/utils/index.ts @@ -32,7 +32,6 @@ export * from "./storageHelper"; export * from "./createStorage"; export * from "./interval"; export * from "./copyToClipboard"; -export * from "./formatDuration"; export * from "./isReactNode"; export * from "./convertMemory"; export * from "./convertCpu"; diff --git a/yarn.lock b/yarn.lock index 26a1aa7263..d123635946 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4439,6 +4439,13 @@ cross-fetch@^3.0.4: dependencies: node-fetch "2.6.1" +cross-fetch@^3.1.4: + version "3.1.4" + resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-3.1.4.tgz#9723f3a3a247bf8b89039f3a380a9244e8fa2f39" + integrity sha512-1eAtFWdIubi6T4XPy6ei9iUFoKpUkIF971QLN8lIvvvwueI65+Nw5haMNKUwfJxabqlIIDODJKGrQ66gxC0PbQ== + dependencies: + node-fetch "2.6.1" + cross-spawn@6.0.5, cross-spawn@^6.0.0, cross-spawn@^6.0.5: version "6.0.5" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4"