@k8slens/extensions 6.3.0-git.fbaa9de007.0 → 6.3.1-git.6aee907dc5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (97) hide show
  1. package/dist/src/common/cluster/cluster.d.ts +13 -23
  2. package/dist/src/common/cluster/request-namespace-list-permissions.injectable.d.ts +18 -0
  3. package/dist/src/common/cluster-store/allowed-resources-injection-token.d.ts +2 -1
  4. package/dist/src/common/fetch/download-json/impl.d.ts +11 -0
  5. package/dist/src/common/fetch/download-json/normal.injectable.d.ts +2 -0
  6. package/dist/src/common/fetch/download-json/proxy.injectable.d.ts +2 -0
  7. package/dist/src/common/fetch/fetch-module.injectable.d.ts +7 -0
  8. package/dist/src/common/fetch/fetch.injectable.d.ts +1 -3
  9. package/dist/src/common/fetch/proxy-fetch.injectable.d.ts +3 -0
  10. package/dist/src/common/k8s-api/api-base-configs.d.ts +6 -0
  11. package/dist/src/common/k8s-api/api-base.injectable.d.ts +2 -0
  12. package/dist/src/common/k8s-api/api-manager/resource.store.d.ts +2 -1
  13. package/dist/src/common/k8s-api/endpoints/helm-charts.api/request-readme.injectable.d.ts +2 -1
  14. package/dist/src/common/k8s-api/endpoints/helm-charts.api/request-values.injectable.d.ts +2 -1
  15. package/dist/src/common/k8s-api/endpoints/resource-applier.api/request-patch.injectable.d.ts +2 -1
  16. package/dist/src/common/k8s-api/endpoints/resource-applier.api/request-update.injectable.d.ts +2 -1
  17. package/dist/src/common/k8s-api/kube-api.d.ts +5 -4
  18. package/dist/src/common/k8s-api/kube-object.store.d.ts +8 -16
  19. package/dist/src/common/logger.d.ts +2 -2
  20. package/dist/src/common/rbac.d.ts +12 -4
  21. package/dist/src/common/utils/computed-or.d.ts +6 -0
  22. package/dist/src/common/utils/iter.d.ts +2 -2
  23. package/dist/src/common/utils/with-concurrency-limit.d.ts +2 -0
  24. package/dist/src/common/vars.d.ts +0 -16
  25. package/dist/src/extensions/common-api/k8s-api.d.ts +21 -1
  26. package/dist/src/extensions/extension-api.js +2573 -1406
  27. package/dist/src/extensions/extension-discovery/bundled-extension-token.d.ts +11 -0
  28. package/dist/src/extensions/extension-discovery/extension-discovery.d.ts +1 -4
  29. package/dist/src/{common/configure-packages.d.ts → extensions/extension-loader/entry-point-name.d.ts} +1 -4
  30. package/dist/src/extensions/extension-loader/extension-loader.d.ts +12 -8
  31. package/dist/src/extensions/renderer-api/k8s-api.d.ts +1 -1
  32. package/dist/src/main/cluster/request-api-resources.injectable.d.ts +13 -0
  33. package/dist/src/main/cluster/request-api-versions.d.ts +11 -0
  34. package/dist/src/main/cluster/request-core-api-versions.injectable.d.ts +5 -0
  35. package/dist/src/main/cluster/request-kube-api-resources-for.injectable.d.ts +7 -0
  36. package/dist/src/main/cluster/request-non-core-api-versions.injectable.d.ts +5 -0
  37. package/dist/src/main/create-cluster/allowed-resources.injectable.d.ts +2 -1
  38. package/dist/src/main/extension-loader/entry-point-name.injectable.d.ts +2 -0
  39. package/dist/src/main/k8s/api-base-host-header.injectable.d.ts +2 -0
  40. package/dist/src/main/k8s/api-base-server-address.injectable.d.ts +2 -0
  41. package/dist/src/main/k8s-request.injectable.d.ts +2 -2
  42. package/dist/src/main/routes/resource-applier/create-resource-route.injectable.d.ts +5 -5
  43. package/dist/src/main/shell-session/node-shell-session/open.injectable.d.ts +2 -1
  44. package/dist/src/renderer/before-frame-starts/tokens.d.ts +5 -3
  45. package/dist/src/renderer/cluster/accessible-namespaces.injectable.d.ts +2 -0
  46. package/dist/src/renderer/{create-cluster → cluster}/create-cluster.injectable.d.ts +0 -0
  47. package/dist/src/renderer/cluster-frame-context/cluster-frame-context.d.ts +9 -14
  48. package/dist/src/renderer/cluster-frame-context/for-cluster-scoped-resources.injectable.d.ts +3 -0
  49. package/dist/src/renderer/cluster-frame-context/for-namespaced-resources.injectable.d.ts +3 -0
  50. package/dist/src/renderer/cluster-frame-context/should-show-resource.injectable.d.ts +3 -0
  51. package/dist/src/renderer/components/+cluster/cluster-overview-store/cluster-overview-store.d.ts +2 -1
  52. package/dist/src/renderer/components/+custom-resources/definition.store.d.ts +2 -2
  53. package/dist/src/renderer/components/+events/store.d.ts +4 -5
  54. package/dist/src/renderer/components/+namespaces/store.d.ts +5 -6
  55. package/dist/src/renderer/components/+nodes/store.d.ts +2 -2
  56. package/dist/src/renderer/components/+storage-classes/store.d.ts +2 -2
  57. package/dist/src/renderer/components/+workloads-cronjobs/store.d.ts +2 -2
  58. package/dist/src/renderer/components/+workloads-daemonsets/store.d.ts +2 -2
  59. package/dist/src/renderer/components/+workloads-deployments/store.d.ts +2 -2
  60. package/dist/src/renderer/components/+workloads-jobs/store.d.ts +2 -2
  61. package/dist/src/renderer/components/+workloads-overview/workloads/implementations/cron-jobs-workload.injectable.d.ts +4 -1
  62. package/dist/src/renderer/components/+workloads-overview/workloads/implementations/daemonsets-workload.injectable.d.ts +4 -1
  63. package/dist/src/renderer/components/+workloads-overview/workloads/implementations/deployments-workload.injectable.d.ts +4 -1
  64. package/dist/src/renderer/components/+workloads-overview/workloads/implementations/jobs-workload.injectable.d.ts +4 -1
  65. package/dist/src/renderer/components/+workloads-overview/workloads/implementations/pods-workload.injectable.d.ts +4 -1
  66. package/dist/src/renderer/components/+workloads-overview/workloads/implementations/replicasets-workload.injectable.d.ts +4 -1
  67. package/dist/src/renderer/components/+workloads-overview/workloads/implementations/statefulsets-workload.injectable.d.ts +4 -1
  68. package/dist/src/renderer/components/+workloads-overview/workloads/workload-injection-token.d.ts +2 -1
  69. package/dist/src/renderer/components/+workloads-overview/workloads/workloads.injectable.d.ts +1 -2
  70. package/dist/src/renderer/components/+workloads-pods/load-pods-from-all-namespaces.injectable.d.ts +6 -0
  71. package/dist/src/renderer/components/+workloads-pods/store.d.ts +2 -2
  72. package/dist/src/renderer/components/+workloads-replicasets/store.d.ts +4 -5
  73. package/dist/src/renderer/components/+workloads-statefulsets/store.d.ts +2 -2
  74. package/dist/src/renderer/components/input/search-input.d.ts +1 -11
  75. package/dist/src/renderer/components/test-utils/get-application-builder.d.ts +2 -2
  76. package/dist/src/renderer/extension-loader/entry-point-name.injectable.d.ts +2 -0
  77. package/dist/src/renderer/frames/cluster-frame/init-cluster-frame/init-cluster-frame.d.ts +5 -3
  78. package/dist/src/renderer/frames/load-extensions.injectable.d.ts +1 -4
  79. package/dist/src/renderer/k8s/api-base-host-header.injectable.d.ts +2 -0
  80. package/dist/src/renderer/k8s/api-base-server-address.injectable.d.ts +2 -0
  81. package/dist/src/renderer/kube-watch-api/kube-watch-api.d.ts +3 -3
  82. package/dist/src/renderer/navigation/events.d.ts +0 -2
  83. package/dist/src/renderer/navigation/setup-logging-for-navigation.injectable.d.ts +5 -0
  84. package/dist/src/test-utils/mock-responses.d.ts +8 -0
  85. package/package.json +1 -1
  86. package/dist/src/common/cluster/authorization-namespace-review.injectable.d.ts +0 -19
  87. package/dist/src/common/cluster/is-allowed-resource.d.ts +0 -1
  88. package/dist/src/common/cluster/list-api-resources.injectable.d.ts +0 -13
  89. package/dist/src/common/fetch/download-json.injectable.d.ts +0 -7
  90. package/dist/src/common/k8s-api/api-base.d.ts +0 -6
  91. package/dist/src/common/k8s-api/api-manager/auto-registration.injectable.d.ts +0 -2
  92. package/dist/src/common/k8s-api/cluster-context.d.ts +0 -11
  93. package/dist/src/common/utils/is-allowed-resource.injectable.d.ts +0 -4
  94. package/dist/src/main/k8s/api-base.injectable.d.ts +0 -2
  95. package/dist/src/renderer/cluster-frame-context/allowed-resources.injectable.d.ts +0 -2
  96. package/dist/src/renderer/cluster-frame-context/cluster-frame-context.injectable.d.ts +0 -3
  97. package/dist/src/renderer/k8s/api-base.injectable.d.ts +0 -2
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Copyright (c) OpenLens Authors. All rights reserved.
3
+ * Licensed under MIT License. See LICENSE in root directory for more information.
4
+ */
5
+ import type { LensExtensionConstructor, LensExtensionManifest } from "../lens-extension";
6
+ export interface BundledExtension {
7
+ readonly manifest: LensExtensionManifest;
8
+ main: () => LensExtensionConstructor | null;
9
+ renderer: () => LensExtensionConstructor | null;
10
+ }
11
+ export declare const bundledExtensionInjectionToken: import("@ogre-tools/injectable").InjectionToken<BundledExtension, void>;
@@ -21,7 +21,6 @@ import type { GetDirnameOfPath } from "../../common/path/get-dirname.injectable"
21
21
  import type { GetRelativePath } from "../../common/path/get-relative-path.injectable";
22
22
  import type { RemovePath } from "../../common/fs/remove.injectable";
23
23
  import type TypedEventEmitter from "typed-emitter";
24
- import type { ApplicationInformation } from "../../common/vars/application-information.injectable";
25
24
  interface Dependencies {
26
25
  readonly extensionLoader: ExtensionLoader;
27
26
  readonly extensionsStore: ExtensionsStore;
@@ -32,7 +31,6 @@ interface Dependencies {
32
31
  readonly isProduction: boolean;
33
32
  readonly fileSystemSeparator: string;
34
33
  readonly homeDirectoryPath: string;
35
- readonly applicationInformation: ApplicationInformation;
36
34
  isCompatibleExtension: (manifest: LensExtensionManifest) => boolean;
37
35
  installExtension: (name: string) => Promise<void>;
38
36
  readJsonFile: ReadJson;
@@ -143,8 +141,7 @@ export declare class ExtensionDiscovery {
143
141
  isBundled?: boolean | undefined;
144
142
  }): Promise<InstalledExtension | null>;
145
143
  ensureExtensions(): Promise<Map<LensExtensionId, InstalledExtension>>;
146
- loadBundledExtensions(): Promise<InstalledExtension[]>;
147
- loadFromFolder(folderPath: string, bundledExtensions: string[]): Promise<InstalledExtension[]>;
144
+ loadFromFolder(folderPath: string): Promise<InstalledExtension[]>;
148
145
  /**
149
146
  * Loads extension from absolute path, updates this.packagesJson to include it and returns the extension.
150
147
  * @param folderPath Folder path to extension
@@ -2,7 +2,4 @@
2
2
  * Copyright (c) OpenLens Authors. All rights reserved.
3
3
  * Licensed under MIT License. See LICENSE in root directory for more information.
4
4
  */
5
- /**
6
- * Setup default configuration for external npm-packages
7
- */
8
- export default function configurePackages(): void;
5
+ export declare const extensionEntryPointNameInjectionToken: import("@ogre-tools/injectable").InjectionToken<"main" | "renderer", void>;
@@ -11,15 +11,23 @@ import type { Extension } from "./extension/extension.injectable";
11
11
  import type { Logger } from "../../common/logger";
12
12
  import type { JoinPaths } from "../../common/path/join-paths.injectable";
13
13
  import type { GetDirnameOfPath } from "../../common/path/get-dirname.injectable";
14
+ import type { BundledExtension } from "../extension-discovery/bundled-extension-token";
14
15
  interface Dependencies {
15
16
  readonly extensionInstances: ObservableMap<LensExtensionId, LensExtension>;
17
+ readonly bundledExtensions: BundledExtension[];
16
18
  readonly logger: Logger;
19
+ readonly extensionEntryPointName: "main" | "renderer";
17
20
  updateExtensionsState: (extensionsState: Record<LensExtensionId, LensExtensionState>) => void;
18
21
  createExtensionInstance: CreateExtensionInstance;
19
22
  getExtension: (instance: LensExtension) => Extension;
20
23
  joinPaths: JoinPaths;
21
24
  getDirnameOfPath: GetDirnameOfPath;
22
25
  }
26
+ interface ExtensionBeingActivated {
27
+ instance: LensExtension;
28
+ installedExtension: InstalledExtension;
29
+ activated: Promise<void>;
30
+ }
23
31
  export interface ExtensionLoading {
24
32
  isBundled: boolean;
25
33
  loaded: Promise<void>;
@@ -73,14 +81,10 @@ export declare class ExtensionLoader {
73
81
  protected initRenderer(): Promise<void>;
74
82
  broadcastExtensions(): void;
75
83
  syncExtensions(extensions: [LensExtensionId, InstalledExtension][]): void;
76
- protected loadExtensions(installedExtensions: Map<string, InstalledExtension>): Promise<{
77
- isBundled: boolean;
78
- loaded: Promise<void>;
79
- }[]>;
80
- autoInitExtensions(): Promise<{
81
- isBundled: boolean;
82
- loaded: Promise<void>;
83
- }[]>;
84
+ protected loadBundledExtensions(): Promise<ExtensionBeingActivated[]>;
85
+ protected loadExtensions(extensions: ExtensionBeingActivated[]): Promise<ExtensionLoading[]>;
86
+ protected loadUserExtensions(installedExtensions: Map<string, InstalledExtension>): Promise<ExtensionBeingActivated[]>;
87
+ autoInitExtensions(): Promise<ExtensionLoading[]>;
84
88
  protected requireExtension(extension: InstalledExtension): LensExtensionConstructor | null;
85
89
  getExtension(extId: LensExtensionId): InstalledExtension | undefined;
86
90
  getInstanceById(extId: LensExtensionId): LensExtension<import("../lens-extension-set-dependencies").LensExtensionDependencies> | undefined;
@@ -3,7 +3,7 @@
3
3
  * Licensed under MIT License. See LICENSE in root directory for more information.
4
4
  */
5
5
  import type { KubeResource } from "../../common/rbac";
6
- export declare function isAllowedResource(resource: KubeResource | KubeResource[]): boolean;
6
+ export declare function isAllowedResource(resources: KubeResource | KubeResource[]): boolean;
7
7
  export declare const serviceAccountsApi: import("../../common/k8s-api/endpoints").ServiceAccountApi;
8
8
  export declare const clusterRoleApi: import("../../common/k8s-api/endpoints").ClusterRoleApi;
9
9
  export declare const clusterRoleBindingApi: import("../../common/k8s-api/endpoints").ClusterRoleBindingApi;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Copyright (c) OpenLens Authors. All rights reserved.
3
+ * Licensed under MIT License. See LICENSE in root directory for more information.
4
+ */
5
+ import type { KubeApiResource } from "../../common/rbac";
6
+ import type { Cluster } from "../../common/cluster/cluster";
7
+ export type RequestApiResources = (cluster: Cluster) => Promise<KubeApiResource[]>;
8
+ export interface KubeResourceListGroup {
9
+ group: string;
10
+ path: string;
11
+ }
12
+ declare const requestApiResourcesInjectable: import("@ogre-tools/injectable").Injectable<RequestApiResources, unknown, void>;
13
+ export default requestApiResourcesInjectable;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Copyright (c) OpenLens Authors. All rights reserved.
3
+ * Licensed under MIT License. See LICENSE in root directory for more information.
4
+ */
5
+ import type { Cluster } from "../../common/cluster/cluster";
6
+ export interface KubeResourceListGroup {
7
+ group: string;
8
+ path: string;
9
+ }
10
+ export type RequestApiVersions = (cluster: Cluster) => Promise<KubeResourceListGroup[]>;
11
+ export declare const requestApiVersionsInjectionToken: import("@ogre-tools/injectable").InjectionToken<RequestApiVersions, void>;
@@ -0,0 +1,5 @@
1
+ declare const requestCoreApiVersionsInjectable: import("@ogre-tools/injectable").Injectable<(cluster: import("../../common/cluster/cluster").Cluster) => Promise<{
2
+ group: string;
3
+ path: string;
4
+ }[]>, import("./request-api-versions").RequestApiVersions, void>;
5
+ export default requestCoreApiVersionsInjectable;
@@ -0,0 +1,7 @@
1
+ import type { Cluster } from "../../common/cluster/cluster";
2
+ import type { KubeApiResource } from "../../common/rbac";
3
+ import type { KubeResourceListGroup } from "./request-api-versions";
4
+ export type RequestKubeApiResources = (grouping: KubeResourceListGroup) => Promise<KubeApiResource[]>;
5
+ export type RequestKubeApiResourcesFor = (cluster: Cluster) => RequestKubeApiResources;
6
+ declare const requestKubeApiResourcesForInjectable: import("@ogre-tools/injectable").Injectable<RequestKubeApiResourcesFor, unknown, void>;
7
+ export default requestKubeApiResourcesForInjectable;
@@ -0,0 +1,5 @@
1
+ declare const requestNonCoreApiVersionsInjectable: import("@ogre-tools/injectable").Injectable<(cluster: import("../../common/cluster/cluster").Cluster) => Promise<{
2
+ group: string;
3
+ path: string;
4
+ }[]>, import("./request-api-versions").RequestApiVersions, void>;
5
+ export default requestNonCoreApiVersionsInjectable;
@@ -1,2 +1,3 @@
1
- declare const allowedResourcesInjectable: import("@ogre-tools/injectable").Injectable<import("mobx").IComputedValue<Set<string>>, import("mobx").IComputedValue<Set<string>>, void>;
1
+ import type { KubeApiResourceDescriptor } from "../../common/rbac";
2
+ declare const allowedResourcesInjectable: import("@ogre-tools/injectable").Injectable<import("mobx").IComputedValue<boolean>, import("mobx").IComputedValue<boolean>, KubeApiResourceDescriptor>;
2
3
  export default allowedResourcesInjectable;
@@ -0,0 +1,2 @@
1
+ declare const extensionEntryPointNameInjectable: import("@ogre-tools/injectable").Injectable<"main", "main" | "renderer", void>;
2
+ export default extensionEntryPointNameInjectable;
@@ -0,0 +1,2 @@
1
+ declare const apiBaseHostHeaderInjectable: import("@ogre-tools/injectable").Injectable<string, string, void>;
2
+ export default apiBaseHostHeaderInjectable;
@@ -0,0 +1,2 @@
1
+ declare const apiBaseServerAddressInjectable: import("@ogre-tools/injectable").Injectable<string, string, void>;
2
+ export default apiBaseServerAddressInjectable;
@@ -5,5 +5,5 @@
5
5
  import type { RequestPromiseOptions } from "request-promise-native";
6
6
  import type { Cluster } from "../common/cluster/cluster";
7
7
  export type K8sRequest = (cluster: Cluster, path: string, options?: RequestPromiseOptions) => Promise<any>;
8
- declare const k8SRequestInjectable: import("@ogre-tools/injectable").Injectable<(cluster: Cluster, path: string, options?: RequestPromiseOptions) => Promise<any>, unknown, void>;
9
- export default k8SRequestInjectable;
8
+ declare const k8sRequestInjectable: import("@ogre-tools/injectable").Injectable<(cluster: Cluster, path: string, options?: RequestPromiseOptions) => Promise<any>, unknown, void>;
9
+ export default k8sRequestInjectable;
@@ -1,14 +1,14 @@
1
1
  declare const createResourceRouteInjectable: import("@ogre-tools/injectable").Injectable<import("../../router/route").Route<{
2
- callWasSuccessful: true;
3
- response: string;
4
- } | {
5
2
  callWasSuccessful: false;
6
3
  error: string;
7
- }, "/api/stack">, import("../../router/route").Route<{
4
+ } | {
8
5
  callWasSuccessful: true;
9
6
  response: string;
10
- } | {
7
+ }, "/api/stack">, import("../../router/route").Route<{
11
8
  callWasSuccessful: false;
12
9
  error: string;
10
+ } | {
11
+ callWasSuccessful: true;
12
+ response: string;
13
13
  }, "/api/stack">, void>;
14
14
  export default createResourceRouteInjectable;
@@ -6,5 +6,6 @@ export interface NodeShellSessionArgs {
6
6
  tabId: string;
7
7
  nodeName: string;
8
8
  }
9
- declare const openNodeShellSessionInjectable: import("@ogre-tools/injectable").Injectable<Promise<void>, unknown, NodeShellSessionArgs>;
9
+ export type OpenNodeShellSession = (args: NodeShellSessionArgs) => Promise<void>;
10
+ declare const openNodeShellSessionInjectable: import("@ogre-tools/injectable").Injectable<OpenNodeShellSession, unknown, void>;
10
11
  export default openNodeShellSessionInjectable;
@@ -1,5 +1,7 @@
1
1
  import type { Runnable } from "../../common/runnable/run-many-for";
2
2
  export declare const beforeFrameStartsFirstInjectionToken: import("@ogre-tools/injectable").InjectionToken<Runnable<void>, void>;
3
- export declare const beforeMainFrameStartsInjectionToken: import("@ogre-tools/injectable").InjectionToken<Runnable<void>, void>;
4
- export declare const beforeClusterFrameStartsInjectionToken: import("@ogre-tools/injectable").InjectionToken<Runnable<void>, void>;
5
- export declare const beforeFrameStartsInjectionToken: import("@ogre-tools/injectable").InjectionToken<Runnable<void>, void>;
3
+ export declare const beforeMainFrameStartsFirstInjectionToken: import("@ogre-tools/injectable").InjectionToken<Runnable<void>, void>;
4
+ export declare const beforeClusterFrameStartsFirstInjectionToken: import("@ogre-tools/injectable").InjectionToken<Runnable<void>, void>;
5
+ export declare const beforeFrameStartsSecondInjectionToken: import("@ogre-tools/injectable").InjectionToken<Runnable<void>, void>;
6
+ export declare const beforeMainFrameStartsSecondInjectionToken: import("@ogre-tools/injectable").InjectionToken<Runnable<void>, void>;
7
+ export declare const beforeClusterFrameStartsSecondInjectionToken: import("@ogre-tools/injectable").InjectionToken<Runnable<void>, void>;
@@ -0,0 +1,2 @@
1
+ declare const clusterConfiguredAccessibleNamespacesInjectable: import("@ogre-tools/injectable").Injectable<import("mobx").IComputedValue<string[]>, unknown, void>;
2
+ export default clusterConfiguredAccessibleNamespacesInjectable;
@@ -2,18 +2,13 @@
2
2
  * Copyright (c) OpenLens Authors. All rights reserved.
3
3
  * Licensed under MIT License. See LICENSE in root directory for more information.
4
4
  */
5
- import type { Cluster } from "../../common/cluster/cluster";
6
- import type { NamespaceStore } from "../components/+namespaces/store";
7
- import type { ClusterContext } from "../../common/k8s-api/cluster-context";
8
- interface Dependencies {
9
- namespaceStore: NamespaceStore;
10
- }
11
- export declare class ClusterFrameContext implements ClusterContext {
12
- cluster: Cluster;
13
- private dependencies;
14
- constructor(cluster: Cluster, dependencies: Dependencies);
15
- get allNamespaces(): string[];
16
- get contextNamespaces(): string[];
17
- get hasSelectedAll(): boolean;
5
+ /**
6
+ * This type is used for KubeObjectStores
7
+ */
8
+ export interface ClusterContext {
9
+ readonly allNamespaces: string[];
10
+ readonly contextNamespaces: string[];
11
+ readonly hasSelectedAll: boolean;
12
+ isLoadingAll(namespaces: string[]): boolean;
13
+ isGlobalWatchEnabled(): boolean;
18
14
  }
19
- export {};
@@ -0,0 +1,3 @@
1
+ import type { ClusterContext } from "./cluster-frame-context";
2
+ declare const clusterFrameContextForClusterScopedResourcesInjectable: import("@ogre-tools/injectable").Injectable<ClusterContext, unknown, void>;
3
+ export default clusterFrameContextForClusterScopedResourcesInjectable;
@@ -0,0 +1,3 @@
1
+ import type { ClusterContext } from "./cluster-frame-context";
2
+ declare const clusterFrameContextForNamespacedResourcesInjectable: import("@ogre-tools/injectable").Injectable<ClusterContext, unknown, void>;
3
+ export default clusterFrameContextForNamespacedResourcesInjectable;
@@ -0,0 +1,3 @@
1
+ import type { KubeApiResourceDescriptor } from "../../common/rbac";
2
+ declare const shouldShowResourceInjectable: import("@ogre-tools/injectable").Injectable<import("mobx").IComputedValue<boolean>, import("mobx").IComputedValue<boolean>, KubeApiResourceDescriptor>;
3
+ export default shouldShowResourceInjectable;
@@ -2,6 +2,7 @@
2
2
  * Copyright (c) OpenLens Authors. All rights reserved.
3
3
  * Licensed under MIT License. See LICENSE in root directory for more information.
4
4
  */
5
+ import type { KubeObjectStoreDependencies } from "../../../../common/k8s-api/kube-object.store";
5
6
  import { KubeObjectStore } from "../../../../common/k8s-api/kube-object.store";
6
7
  import type { Cluster, ClusterApi } from "../../../../common/k8s-api/endpoints";
7
8
  import type { StorageLayer } from "../../../utils";
@@ -20,7 +21,7 @@ export interface ClusterOverviewStorageState {
20
21
  metricType: MetricType;
21
22
  metricNodeRole: MetricNodeRole;
22
23
  }
23
- interface ClusterOverviewStoreDependencies {
24
+ interface ClusterOverviewStoreDependencies extends KubeObjectStoreDependencies {
24
25
  readonly storage: StorageLayer<ClusterOverviewStorageState>;
25
26
  readonly nodeStore: NodeStore;
26
27
  requestClusterMetricsByNodeNames: RequestClusterMetricsByNodeNames;
@@ -2,13 +2,13 @@
2
2
  * Copyright (c) OpenLens Authors. All rights reserved.
3
3
  * Licensed under MIT License. See LICENSE in root directory for more information.
4
4
  */
5
- import type { KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
5
+ import type { KubeObjectStoreDependencies, KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
6
6
  import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store";
7
7
  import type { CustomResourceDefinition, CustomResourceDefinitionApi } from "../../../common/k8s-api/endpoints/custom-resource-definition.api";
8
8
  import type { KubeObject } from "../../../common/k8s-api/kube-object";
9
9
  import type TypedEventEmitter from "typed-emitter";
10
10
  import type { LegacyAutoRegistration } from "../../../common/k8s-api/api-manager/auto-registration-emitter.injectable";
11
- export interface CustomResourceDefinitionStoreDependencies {
11
+ export interface CustomResourceDefinitionStoreDependencies extends KubeObjectStoreDependencies {
12
12
  readonly autoRegistration: TypedEventEmitter<LegacyAutoRegistration>;
13
13
  }
14
14
  export declare class CustomResourceDefinitionStore extends KubeObjectStore<CustomResourceDefinition, CustomResourceDefinitionApi> {
@@ -2,21 +2,20 @@
2
2
  * Copyright (c) OpenLens Authors. All rights reserved.
3
3
  * Licensed under MIT License. See LICENSE in root directory for more information.
4
4
  */
5
- import type { KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
5
+ import type { KubeObjectStoreDependencies, KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
6
6
  import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store";
7
7
  import type { KubeEvent, KubeEventApi } from "../../../common/k8s-api/endpoints/events.api";
8
8
  import type { KubeObject } from "../../../common/k8s-api/kube-object";
9
9
  import type { GetPodById } from "../+workloads-pods/get-pod-by-id.injectable";
10
- interface Dependencies {
10
+ export interface EventStoreDependencies extends KubeObjectStoreDependencies {
11
11
  getPodById: GetPodById;
12
12
  }
13
13
  export declare class EventStore extends KubeObjectStore<KubeEvent, KubeEventApi> {
14
- protected readonly dependencies: Dependencies;
15
- constructor(dependencies: Dependencies, api: KubeEventApi, opts?: KubeObjectStoreOptions);
14
+ protected readonly dependencies: EventStoreDependencies;
15
+ constructor(dependencies: EventStoreDependencies, api: KubeEventApi, opts?: KubeObjectStoreOptions);
16
16
  protected bindWatchEventsUpdater(): void;
17
17
  protected sortItems(items: KubeEvent[]): KubeEvent[];
18
18
  getEventsByObject(obj: KubeObject): KubeEvent[];
19
19
  getWarnings(): KubeEvent[];
20
20
  getWarningsCount(): number;
21
21
  }
22
- export {};
@@ -2,15 +2,16 @@
2
2
  * Copyright (c) OpenLens Authors. All rights reserved.
3
3
  * Licensed under MIT License. See LICENSE in root directory for more information.
4
4
  */
5
- import type { IReactionDisposer } from "mobx";
5
+ import type { IComputedValue, IReactionDisposer } from "mobx";
6
6
  import type { StorageLayer } from "../../utils";
7
7
  import { noop } from "../../utils";
8
- import type { KubeObjectStoreLoadingParams } from "../../../common/k8s-api/kube-object.store";
8
+ import type { KubeObjectStoreDependencies, KubeObjectStoreLoadingParams } from "../../../common/k8s-api/kube-object.store";
9
9
  import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store";
10
10
  import type { NamespaceApi } from "../../../common/k8s-api/endpoints/namespace.api";
11
11
  import { Namespace } from "../../../common/k8s-api/endpoints/namespace.api";
12
- interface Dependencies {
13
- storage: StorageLayer<string[] | undefined>;
12
+ interface Dependencies extends KubeObjectStoreDependencies {
13
+ readonly storage: StorageLayer<string[] | undefined>;
14
+ readonly clusterConfiguredAccessibleNamespaces: IComputedValue<string[]>;
14
15
  }
15
16
  export declare class NamespaceStore extends KubeObjectStore<Namespace, NamespaceApi> {
16
17
  protected readonly dependencies: Dependencies;
@@ -19,8 +20,6 @@ export declare class NamespaceStore extends KubeObjectStore<Namespace, Namespace
19
20
  onContextChange(callback: (namespaces: string[]) => void, opts?: {
20
21
  fireImmediately?: boolean;
21
22
  }): IReactionDisposer;
22
- private autoLoadAllowedNamespaces;
23
- private get initialNamespaces();
24
23
  /**
25
24
  * @private
26
25
  * The current value (list of namespaces names) in the storage layer
@@ -1,8 +1,8 @@
1
1
  import type { Node, NodeApi } from "../../../common/k8s-api/endpoints";
2
- import type { KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
2
+ import type { KubeObjectStoreDependencies, KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
3
3
  import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store";
4
4
  export declare class NodeStore extends KubeObjectStore<Node, NodeApi> {
5
- constructor(api: NodeApi, opts?: KubeObjectStoreOptions);
5
+ constructor(dependencies: KubeObjectStoreDependencies, api: NodeApi, opts?: KubeObjectStoreOptions);
6
6
  get masterNodes(): Node[];
7
7
  get workerNodes(): Node[];
8
8
  getWarningsCount(): number;
@@ -2,11 +2,11 @@
2
2
  * Copyright (c) OpenLens Authors. All rights reserved.
3
3
  * Licensed under MIT License. See LICENSE in root directory for more information.
4
4
  */
5
- import type { KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
5
+ import type { KubeObjectStoreDependencies, KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
6
6
  import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store";
7
7
  import type { StorageClass, StorageClassApi, StorageClassData } from "../../../common/k8s-api/endpoints/storage-class.api";
8
8
  import type { GetPersistentVolumesByStorageClass } from "../+storage-volumes/get-persisten-volumes-by-storage-class.injectable";
9
- export interface StorageClassStoreDependencies {
9
+ export interface StorageClassStoreDependencies extends KubeObjectStoreDependencies {
10
10
  getPersistentVolumesByStorageClass: GetPersistentVolumesByStorageClass;
11
11
  }
12
12
  export declare class StorageClassStore extends KubeObjectStore<StorageClass, StorageClassApi, StorageClassData> {
@@ -2,11 +2,11 @@
2
2
  * Copyright (c) OpenLens Authors. All rights reserved.
3
3
  * Licensed under MIT License. See LICENSE in root directory for more information.
4
4
  */
5
- import type { KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
5
+ import type { KubeObjectStoreDependencies, KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
6
6
  import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store";
7
7
  import type { CronJob, CronJobApi } from "../../../common/k8s-api/endpoints/cron-job.api";
8
8
  import type { GetJobsByOwner } from "../+workloads-jobs/get-jobs-by-owner.injectable";
9
- interface Dependencies {
9
+ interface Dependencies extends KubeObjectStoreDependencies {
10
10
  getJobsByOwner: GetJobsByOwner;
11
11
  }
12
12
  export declare class CronJobStore extends KubeObjectStore<CronJob, CronJobApi> {
@@ -4,9 +4,9 @@
4
4
  */
5
5
  import type { GetPodsByOwnerId } from "../+workloads-pods/get-pods-by-owner-id.injectable";
6
6
  import type { DaemonSet, DaemonSetApi, Pod } from "../../../common/k8s-api/endpoints";
7
- import type { KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
7
+ import type { KubeObjectStoreDependencies, KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
8
8
  import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store";
9
- export interface DaemonSetStoreDependencies {
9
+ export interface DaemonSetStoreDependencies extends KubeObjectStoreDependencies {
10
10
  readonly getPodsByOwnerId: GetPodsByOwnerId;
11
11
  }
12
12
  export declare class DaemonSetStore extends KubeObjectStore<DaemonSet, DaemonSetApi> {
@@ -4,14 +4,14 @@
4
4
  */
5
5
  import type { PodStore } from "../+workloads-pods/store";
6
6
  import type { Deployment, DeploymentApi } from "../../../common/k8s-api/endpoints";
7
- import type { KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
7
+ import type { KubeObjectStoreDependencies, KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
8
8
  import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store";
9
9
  export type DeploymentStatuses = {
10
10
  running: number;
11
11
  failed: number;
12
12
  pending: number;
13
13
  };
14
- export interface DeploymentStoreDependencies {
14
+ export interface DeploymentStoreDependencies extends KubeObjectStoreDependencies {
15
15
  readonly podStore: PodStore;
16
16
  }
17
17
  export declare class DeploymentStore extends KubeObjectStore<Deployment, DeploymentApi> {
@@ -2,12 +2,12 @@
2
2
  * Copyright (c) OpenLens Authors. All rights reserved.
3
3
  * Licensed under MIT License. See LICENSE in root directory for more information.
4
4
  */
5
- import type { KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
5
+ import type { KubeObjectStoreDependencies, KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
6
6
  import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store";
7
7
  import type { Job, JobApi } from "../../../common/k8s-api/endpoints/job.api";
8
8
  import type { CronJob, Pod } from "../../../common/k8s-api/endpoints";
9
9
  import type { GetPodsByOwnerId } from "../+workloads-pods/get-pods-by-owner-id.injectable";
10
- interface Dependencies {
10
+ interface Dependencies extends KubeObjectStoreDependencies {
11
11
  getPodsByOwnerId: GetPodsByOwnerId;
12
12
  }
13
13
  export declare class JobStore extends KubeObjectStore<Job, JobApi> {
@@ -1,5 +1,8 @@
1
1
  declare const cronJobsWorkloadInjectable: import("@ogre-tools/injectable").Injectable<{
2
- resourceName: string;
2
+ resource: {
3
+ apiName: string;
4
+ group: string;
5
+ };
3
6
  open: () => void;
4
7
  amountOfItems: import("mobx").IComputedValue<number>;
5
8
  status: import("mobx").IComputedValue<{
@@ -1,5 +1,8 @@
1
1
  declare const daemonsetsWorkloadInjectable: import("@ogre-tools/injectable").Injectable<{
2
- resourceName: string;
2
+ resource: {
3
+ apiName: string;
4
+ group: string;
5
+ };
3
6
  open: () => void;
4
7
  amountOfItems: import("mobx").IComputedValue<number>;
5
8
  status: import("mobx").IComputedValue<{
@@ -1,5 +1,8 @@
1
1
  declare const deploymentsWorkloadInjectable: import("@ogre-tools/injectable").Injectable<{
2
- resourceName: string;
2
+ resource: {
3
+ apiName: string;
4
+ group: string;
5
+ };
3
6
  open: () => void;
4
7
  amountOfItems: import("mobx").IComputedValue<number>;
5
8
  status: import("mobx").IComputedValue<import("../../../+workloads-deployments/store").DeploymentStatuses>;
@@ -1,5 +1,8 @@
1
1
  declare const jobsWorkloadInjectable: import("@ogre-tools/injectable").Injectable<{
2
- resourceName: string;
2
+ resource: {
3
+ apiName: string;
4
+ group: string;
5
+ };
3
6
  open: () => void;
4
7
  amountOfItems: import("mobx").IComputedValue<number>;
5
8
  status: import("mobx").IComputedValue<{
@@ -1,6 +1,9 @@
1
1
  /// <reference types="lodash" />
2
2
  declare const podsWorkloadInjectable: import("@ogre-tools/injectable").Injectable<{
3
- resourceName: string;
3
+ resource: {
4
+ apiName: string;
5
+ group: string;
6
+ };
4
7
  open: () => void;
5
8
  amountOfItems: import("mobx").IComputedValue<number>;
6
9
  status: import("mobx").IComputedValue<import("lodash").Dictionary<number>>;
@@ -1,5 +1,8 @@
1
1
  declare const replicasetsWorkloadInjectable: import("@ogre-tools/injectable").Injectable<{
2
- resourceName: string;
2
+ resource: {
3
+ apiName: string;
4
+ group: string;
5
+ };
3
6
  open: () => void;
4
7
  amountOfItems: import("mobx").IComputedValue<number>;
5
8
  status: import("mobx").IComputedValue<{
@@ -1,5 +1,8 @@
1
1
  declare const statefulsetsWorkloadInjectable: import("@ogre-tools/injectable").Injectable<{
2
- resourceName: string;
2
+ resource: {
3
+ apiName: string;
4
+ group: string;
5
+ };
3
6
  open: () => void;
4
7
  amountOfItems: import("mobx").IComputedValue<number>;
5
8
  status: import("mobx").IComputedValue<{
@@ -1,7 +1,8 @@
1
1
  import type { IComputedValue } from "mobx";
2
+ import type { KubeApiResourceDescriptor } from "../../../../common/rbac";
2
3
  import type { WorkloadStatus } from "../overview-workload-status";
3
4
  export interface Workload {
4
- resourceName: string;
5
+ resource: KubeApiResourceDescriptor;
5
6
  open: () => void;
6
7
  amountOfItems: IComputedValue<number>;
7
8
  status: IComputedValue<WorkloadStatus>;
@@ -1,3 +1,2 @@
1
- import type { Workload } from "./workload-injection-token";
2
- declare const workloadsInjectable: import("@ogre-tools/injectable").Injectable<import("mobx").IComputedValue<Workload[]>, unknown, void>;
1
+ declare const workloadsInjectable: import("@ogre-tools/injectable").Injectable<import("mobx").IComputedValue<import("./workload-injection-token").Workload[]>, unknown, void>;
3
2
  export default workloadsInjectable;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Copyright (c) OpenLens Authors. All rights reserved.
3
+ * Licensed under MIT License. See LICENSE in root directory for more information.
4
+ */
5
+ declare const loadPodsFromAllNamespacesInjectable: import("@ogre-tools/injectable").Injectable<() => void, unknown, void>;
6
+ export default loadPodsFromAllNamespacesInjectable;
@@ -3,11 +3,11 @@
3
3
  * Licensed under MIT License. See LICENSE in root directory for more information.
4
4
  */
5
5
  /// <reference types="lodash" />
6
- import type { KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
6
+ import type { KubeObjectStoreDependencies, KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
7
7
  import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store";
8
8
  import type { Pod, PodMetrics, PodApi, PodMetricsApi } from "../../../common/k8s-api/endpoints";
9
9
  import type { KubeObject, NamespaceScopedMetadata } from "../../../common/k8s-api/kube-object";
10
- export interface PodStoreDependencies {
10
+ export interface PodStoreDependencies extends KubeObjectStoreDependencies {
11
11
  readonly podMetricsApi: PodMetricsApi;
12
12
  }
13
13
  export declare class PodStore extends KubeObjectStore<Pod, PodApi> {
@@ -4,14 +4,14 @@
4
4
  */
5
5
  import type { GetPodsByOwnerId } from "../+workloads-pods/get-pods-by-owner-id.injectable";
6
6
  import type { Deployment, ReplicaSet, ReplicaSetApi } from "../../../common/k8s-api/endpoints";
7
- import type { KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
7
+ import type { KubeObjectStoreDependencies, KubeObjectStoreOptions } from "../../../common/k8s-api/kube-object.store";
8
8
  import { KubeObjectStore } from "../../../common/k8s-api/kube-object.store";
9
- interface Dependencies {
9
+ export interface ReplicaSetStoreDependencies extends KubeObjectStoreDependencies {
10
10
  getPodsByOwnerId: GetPodsByOwnerId;
11
11
  }
12
12
  export declare class ReplicaSetStore extends KubeObjectStore<ReplicaSet, ReplicaSetApi> {
13
- protected readonly dependencies: Dependencies;
14
- constructor(dependencies: Dependencies, api: ReplicaSetApi, opts?: KubeObjectStoreOptions);
13
+ protected readonly dependencies: ReplicaSetStoreDependencies;
14
+ constructor(dependencies: ReplicaSetStoreDependencies, api: ReplicaSetApi, opts?: KubeObjectStoreOptions);
15
15
  getChildPods(replicaSet: ReplicaSet): import("../../../common/k8s-api/endpoints").Pod[];
16
16
  getStatuses(replicaSets: ReplicaSet[]): {
17
17
  running: number;
@@ -20,4 +20,3 @@ export declare class ReplicaSetStore extends KubeObjectStore<ReplicaSet, Replica
20
20
  };
21
21
  getReplicaSetsByOwner(deployment: Deployment): ReplicaSet[];
22
22
  }
23
- export {};