@k8slens/extensions 5.6.0-git.eb6cc70143.0 → 5.6.0-git.ede8a2e91f.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/dist/src/behaviours/application-update/force-user-to-update-when-too-long-time-since-update-was-downloaded.test.d.ts +1 -0
  2. package/dist/src/behaviours/cluster/extension-api/disable-cluster-pages-when-cluster-is-not-relevant.test.d.ts +1 -0
  3. package/dist/src/behaviours/cluster/extension-api/disable-sidebar-items-when-cluster-is-not-relevant.test.d.ts +1 -0
  4. package/dist/src/behaviours/cluster/extension-api/reactively-disable-cluster-pages.test.d.ts +1 -0
  5. package/dist/src/behaviours/cluster/kube-object-details/extension-api/disable-kube-object-detail-items-when-cluster-is-not-relevant.test.d.ts +1 -0
  6. package/dist/src/behaviours/cluster/kube-object-details/extension-api/reactively-hide-kube-object-detail-item.test.d.ts +1 -0
  7. package/dist/src/behaviours/cluster/kube-object-menu/extension-api/disable-kube-object-menu-items-when-cluster-is-not-relevant.test.d.ts +1 -0
  8. package/dist/src/behaviours/cluster/kube-object-menu/extension-api/reactively-hide-kube-object-menu-item.test.d.ts +1 -0
  9. package/dist/src/behaviours/cluster/kube-object-status-icon/extension-api/disable-kube-object-statuses-when-cluster-is-not-relevant.test.d.ts +1 -0
  10. package/dist/src/behaviours/cluster/kube-object-status-icon/extension-api/reactively-hide-kube-object-status.test.d.ts +1 -0
  11. package/dist/src/behaviours/cluster/workloads/overview/extension-api/disable-workloads-overview-details-when-cluster-is-not-relevant.test.d.ts +1 -0
  12. package/dist/src/behaviours/cluster/workloads/overview/extension-api/order-of-workload-overview-details.test.d.ts +1 -0
  13. package/dist/src/behaviours/cluster/workloads/overview/extension-api/reactively-hide-workloads-overview-details-item.test.d.ts +1 -0
  14. package/dist/src/{renderer/initializers/kube-object-detail-registry.d.ts → behaviours/command-pallet/keyboard-shortcuts.test.d.ts} +1 -1
  15. package/dist/src/behaviours/routes/extension-api/reactively-disable-global-pages.test.d.ts +1 -0
  16. package/dist/src/common/k8s-api/api-manager/api-manager.d.ts +2 -2
  17. package/dist/src/common/k8s-api/endpoints/cluster-role-binding.api.d.ts +2 -2
  18. package/dist/src/common/k8s-api/endpoints/cluster-role.api.d.ts +2 -2
  19. package/dist/src/common/k8s-api/endpoints/config-map.api.d.ts +2 -2
  20. package/dist/src/common/k8s-api/endpoints/cron-job.api.d.ts +4 -8
  21. package/dist/src/common/k8s-api/endpoints/custom-resource-definition.api.d.ts +2 -2
  22. package/dist/src/common/k8s-api/endpoints/daemon-set.api.d.ts +2 -2
  23. package/dist/src/common/k8s-api/endpoints/deployment.api.d.ts +4 -8
  24. package/dist/src/common/k8s-api/endpoints/endpoint.api.d.ts +2 -2
  25. package/dist/src/common/k8s-api/endpoints/horizontal-pod-autoscaler.api.d.ts +2 -2
  26. package/dist/src/common/k8s-api/endpoints/ingress.api.d.ts +2 -2
  27. package/dist/src/common/k8s-api/endpoints/job.api.d.ts +2 -2
  28. package/dist/src/common/k8s-api/endpoints/limit-range.api.d.ts +2 -2
  29. package/dist/src/common/k8s-api/endpoints/namespace.api.d.ts +2 -2
  30. package/dist/src/common/k8s-api/endpoints/network-policy.api.d.ts +2 -5
  31. package/dist/src/common/k8s-api/endpoints/node.api.d.ts +2 -2
  32. package/dist/src/common/k8s-api/endpoints/persistent-volume-claim.api.d.ts +2 -2
  33. package/dist/src/common/k8s-api/endpoints/persistent-volume.api.d.ts +2 -2
  34. package/dist/src/common/k8s-api/endpoints/pod-disruption-budget.api.d.ts +2 -2
  35. package/dist/src/common/k8s-api/endpoints/pod-metrics.api.d.ts +2 -2
  36. package/dist/src/common/k8s-api/endpoints/pod-security-policy.api.d.ts +2 -2
  37. package/dist/src/common/k8s-api/endpoints/pod.api.d.ts +2 -2
  38. package/dist/src/common/k8s-api/endpoints/replica-set.api.d.ts +3 -5
  39. package/dist/src/common/k8s-api/endpoints/resource-quota.api.d.ts +2 -2
  40. package/dist/src/common/k8s-api/endpoints/role-binding.api.d.ts +2 -2
  41. package/dist/src/common/k8s-api/endpoints/role.api.d.ts +2 -2
  42. package/dist/src/common/k8s-api/endpoints/secret.api.d.ts +2 -2
  43. package/dist/src/common/k8s-api/endpoints/service-account.api.d.ts +2 -2
  44. package/dist/src/common/k8s-api/endpoints/service.api.d.ts +2 -2
  45. package/dist/src/common/k8s-api/endpoints/stateful-set.api.d.ts +3 -5
  46. package/dist/src/common/k8s-api/endpoints/storage-class.api.d.ts +2 -2
  47. package/dist/src/common/k8s-api/kube-api.d.ts +8 -10
  48. package/dist/src/common/k8s-api/kube-object.d.ts +15 -15
  49. package/dist/src/common/k8s-api/kube-object.store.d.ts +6 -1
  50. package/dist/src/common/utils/index.d.ts +2 -4
  51. package/dist/src/common/utils/noop.d.ts +8 -0
  52. package/dist/src/common/utils/observable-crate/impl.d.ts +18 -0
  53. package/dist/src/{renderer/api/kube-object-detail-registry.d.ts → common/utils/observable-crate/observable-crate.test.d.ts} +1 -1
  54. package/dist/src/extensions/common-api/k8s-api.d.ts +3 -2
  55. package/dist/src/extensions/common-api/registrations.d.ts +2 -1
  56. package/dist/src/extensions/extension-api.js +143 -265
  57. package/dist/src/extensions/extension-loader/extension-is-enabled-for-cluster.injectable.d.ts +8 -0
  58. package/dist/src/extensions/extension-loader/extension-loader.d.ts +1 -2
  59. package/dist/src/extensions/lens-renderer-extension.d.ts +4 -1
  60. package/dist/src/extensions/registries/entity-setting-registry.d.ts +1 -1
  61. package/dist/src/extensions/registries/index.d.ts +0 -1
  62. package/dist/src/extensions/registries/page-registry.d.ts +2 -0
  63. package/dist/src/extensions/renderer-api/catalog.d.ts +1 -0
  64. package/dist/src/renderer/application-update/force-update-modal/force-update-modal-root-frame-component.injectable.d.ts +7 -0
  65. package/dist/src/renderer/application-update/force-update-modal/force-update-modal.d.ts +2 -0
  66. package/dist/src/renderer/application-update/force-update-modal/install-update-countdown.injectable.d.ts +2 -0
  67. package/dist/src/renderer/application-update/force-update-modal/seconds-after-install-starts.injectable.d.ts +2 -0
  68. package/dist/src/renderer/application-update/force-update-modal/time-after-update-must-be-installed.injectable.d.ts +2 -0
  69. package/dist/src/renderer/application-update/force-update-modal/time-since-update-was-downloaded.injectable.d.ts +2 -0
  70. package/dist/src/renderer/cluster-frame-context/active-kubernetes-cluster.injectable.d.ts +2 -0
  71. package/dist/src/renderer/components/+custom-resources/crd-resource-details.d.ts +1 -2
  72. package/dist/src/renderer/components/+namespaces/namespace-select-filter-model/is-selection-key.injectable.d.ts +4 -0
  73. package/dist/src/renderer/components/+namespaces/namespace-select-filter-model/namespace-select-filter-model.d.ts +20 -20
  74. package/dist/src/renderer/components/+namespaces/namespace-select-filter-model/namespace-select-filter-model.injectable.d.ts +1 -6
  75. package/dist/src/renderer/components/+namespaces/namespace-select-filter.d.ts +1 -1
  76. package/dist/src/renderer/components/+namespaces/namespace-select-filter.test.d.ts +5 -0
  77. package/dist/src/renderer/components/+workloads-overview/workload-overview-details/workload-overview-detail-injection-token.d.ts +9 -0
  78. package/dist/src/renderer/components/+workloads-overview/workload-overview-details/workload-overview-details.injectable.d.ts +3 -0
  79. package/dist/src/renderer/components/+workloads-overview/workloads-overview-detail-registration.d.ts +6 -0
  80. package/dist/src/renderer/components/+workloads-pods/store.d.ts +2 -2
  81. package/dist/src/renderer/components/command-palette/command-container.d.ts +0 -1
  82. package/dist/src/renderer/components/command-palette/registered-commands/get-entity-setting-commands.injectable.d.ts +4 -0
  83. package/dist/src/renderer/components/countdown/countdown-state.injectable.d.ts +5 -0
  84. package/dist/src/renderer/components/countdown/countdown.d.ts +11 -0
  85. package/dist/src/renderer/components/countdown/countdown.test.d.ts +1 -0
  86. package/dist/src/renderer/components/kube-object-details/current-kube-object-in-details.injectable.d.ts +2 -0
  87. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/cluster-role-binding-detail-item.injectable.d.ts +8 -0
  88. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/cluster-role-detail-item.injectable.d.ts +8 -0
  89. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/config-map-detail-item.injectable.d.ts +7 -0
  90. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/cron-job-detail-item.injectable.d.ts +8 -0
  91. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/custom-resource-definitions-detail-item.injectable.d.ts +7 -0
  92. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/daemon-set-detail-item.injectable.d.ts +8 -0
  93. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/deployment-detail-item.injectable.d.ts +8 -0
  94. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/endpoints-detail-item.injectable.d.ts +8 -0
  95. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/events-detail-item.injectable.d.ts +7 -0
  96. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/horizontal-pod-autoscaler-detail-item.injectable.d.ts +8 -0
  97. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/ingress-detail-item.injectable.d.ts +8 -0
  98. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/job-detail-item.injectable.d.ts +8 -0
  99. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/kube-event-detail-item.injectable.d.ts +7 -0
  100. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/limit-range-detail-item.injectable.d.ts +7 -0
  101. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/namespaces-detail-item.injectable.d.ts +7 -0
  102. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/network-policy-detail-item.injectable.d.ts +8 -0
  103. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/node-detail-item.injectable.d.ts +8 -0
  104. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/persistent-volume-claim-detail-item.injectable.d.ts +8 -0
  105. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/persistent-volume-detail-item.injectable.d.ts +8 -0
  106. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/pod-detail-item.injectable.d.ts +8 -0
  107. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/pod-disruption-budget-detail-item.injectable.d.ts +7 -0
  108. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/pod-security-policy-detail-item.injectable.d.ts +7 -0
  109. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/replica-set-detail-item.injectable.d.ts +8 -0
  110. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/resource-quota-detail-item.injectable.d.ts +7 -0
  111. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/role-binding-detail-item.injectable.d.ts +8 -0
  112. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/role-detail-item.injectable.d.ts +8 -0
  113. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/secrets-detail-item.injectable.d.ts +7 -0
  114. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/service-account-detail-item.injectable.d.ts +8 -0
  115. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/service-detail-item.injectable.d.ts +8 -0
  116. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/stateful-set-detail-item.injectable.d.ts +8 -0
  117. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/implementations/storage-class-detail-item.injectable.d.ts +8 -0
  118. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/kube-object-detail-item-injection-token.d.ts +9 -0
  119. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/kube-object-detail-item-registrator.injectable.d.ts +9 -0
  120. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/kube-object-detail-items.injectable.d.ts +3 -0
  121. package/dist/src/renderer/components/kube-object-details/kube-object-detail-items/kube-object-matches-to-kind-and-api-version.d.ts +6 -0
  122. package/dist/src/renderer/components/kube-object-details/kube-object-detail-registration.d.ts +18 -0
  123. package/dist/src/renderer/components/kube-object-list-layout/kube-object-list-layout.d.ts +1 -1
  124. package/dist/src/renderer/components/kube-object-menu/kube-object-menu-item-injection-token.d.ts +13 -0
  125. package/dist/src/renderer/components/kube-object-menu/kube-object-menu-item-registrator.injectable.d.ts +9 -0
  126. package/dist/src/renderer/components/kube-object-menu/kube-object-menu-items/cron-job-menu.injectable.d.ts +9 -0
  127. package/dist/src/renderer/components/kube-object-menu/kube-object-menu-items/deployment-menu.injectable.d.ts +9 -0
  128. package/dist/src/renderer/components/kube-object-menu/kube-object-menu-items/replica-set-menu.injectable.d.ts +9 -0
  129. package/dist/src/renderer/components/kube-object-menu/kube-object-menu-items/service-account-menu.injectable.d.ts +9 -0
  130. package/dist/src/renderer/components/kube-object-menu/kube-object-menu-items.injectable.d.ts +3 -0
  131. package/dist/src/renderer/components/kube-object-menu/kube-object-menu-registration.d.ts +2 -0
  132. package/dist/src/renderer/components/kube-object-menu/kube-object-menu.d.ts +1 -1
  133. package/dist/src/renderer/components/kube-object-status-icon/kube-object-status-registration.d.ts +2 -0
  134. package/dist/src/renderer/components/kube-object-status-icon/kube-object-status-text-injection-token.d.ts +10 -0
  135. package/dist/src/renderer/components/kube-object-status-icon/kube-object-status-text-registrator.injectable.d.ts +8 -0
  136. package/dist/src/renderer/components/kube-object-status-icon/kube-object-status-texts-for-object.injectable.d.ts +3 -0
  137. package/dist/src/renderer/components/kube-object-status-icon/kube-object-status-texts.injectable.d.ts +2 -0
  138. package/dist/src/renderer/components/select/select.d.ts +1 -0
  139. package/dist/src/renderer/extension-loader/extension-should-be-enabled-for-cluster-frame.injectable.d.ts +3 -0
  140. package/dist/src/renderer/initializers/index.d.ts +0 -1
  141. package/dist/src/renderer/routes/extension-route-registrator.injectable.d.ts +3 -2
  142. package/dist/src/renderer/utils/on-keyboard-shortcut.d.ts +6 -0
  143. package/dist/src/renderer/window/event-listener.injectable.d.ts +2 -1
  144. package/package.json +1 -1
  145. package/dist/src/extensions/registries/kube-object-detail-registry.d.ts +0 -23
  146. package/dist/src/renderer/components/+workloads-overview/detail-components.injectable.d.ts +0 -3
  147. package/dist/src/renderer/components/kube-object-menu/dependencies/kube-object-menu-items/get-kube-object-menu-items.d.ts +0 -8
  148. package/dist/src/renderer/components/kube-object-menu/dependencies/kube-object-menu-items/kube-object-menu-items.injectable.d.ts +0 -6
  149. package/dist/src/renderer/components/kube-object-menu/dependencies/static-kube-object-menu-items.d.ts +0 -30
  150. package/dist/src/renderer/components/kube-object-status-icon/status-registrations.injectable.d.ts +0 -2
  151. package/dist/src/renderer/components/kube-object-status-icon/statuses-for-kube-object.injectable.d.ts +0 -3
@@ -2,7 +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 { KubeObjectMetadata, KubeObjectScope, LocalObjectReference, ObjectReference } from "../kube-object";
5
+ import type { KubeObjectMetadata, KubeObjectScope, LocalObjectReference, NamespaceScopedMetadata, ObjectReference } from "../kube-object";
6
6
  import { KubeObject } from "../kube-object";
7
7
  import type { DerivedKubeApiOptions } from "../kube-api";
8
8
  import { KubeApi } from "../kube-api";
@@ -12,7 +12,7 @@ export interface ServiceAccountData extends KubeJsonApiData<KubeObjectMetadata<K
12
12
  imagePullSecrets?: LocalObjectReference[];
13
13
  secrets?: ObjectReference[];
14
14
  }
15
- export declare class ServiceAccount extends KubeObject<void, void, KubeObjectScope.Namespace> {
15
+ export declare class ServiceAccount extends KubeObject<NamespaceScopedMetadata, void, void> {
16
16
  static readonly kind = "ServiceAccount";
17
17
  static readonly namespaced = true;
18
18
  static readonly apiBase = "/api/v1/serviceaccounts";
@@ -2,7 +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 { KubeObjectScope } from "../kube-object";
5
+ import type { NamespaceScopedMetadata } from "../kube-object";
6
6
  import { KubeObject } from "../kube-object";
7
7
  import type { DerivedKubeApiOptions } from "../kube-api";
8
8
  import { KubeApi } from "../kube-api";
@@ -45,7 +45,7 @@ export interface ServiceStatus {
45
45
  }[];
46
46
  };
47
47
  }
48
- export declare class Service extends KubeObject<ServiceStatus, ServiceSpec, KubeObjectScope.Namespace> {
48
+ export declare class Service extends KubeObject<NamespaceScopedMetadata, ServiceStatus, ServiceSpec> {
49
49
  static readonly kind = "Service";
50
50
  static readonly namespaced = true;
51
51
  static readonly apiBase = "/api/v1/services";
@@ -5,7 +5,7 @@
5
5
  import type { DerivedKubeApiOptions, IgnoredKubeApiOptions } from "../kube-api";
6
6
  import { KubeApi } from "../kube-api";
7
7
  import type { PodMetricData } from "./pod.api";
8
- import type { KubeObjectScope, LabelSelector } from "../kube-object";
8
+ import type { LabelSelector, NamespaceScopedMetadata } from "../kube-object";
9
9
  import { KubeObject } from "../kube-object";
10
10
  import type { PodTemplateSpec } from "./types/pod-template-spec";
11
11
  import type { PersistentVolumeClaimTemplateSpec } from "./types/persistent-volume-claim-template-spec";
@@ -22,9 +22,7 @@ export declare class StatefulSetApi extends KubeApi<StatefulSet> {
22
22
  scale(params: {
23
23
  namespace: string;
24
24
  name: string;
25
- }, replicas: number): Promise<import("../kube-json-api").KubeJsonApiData<(import("../kube-object").BaseKubeJsonApiObjectMetadata<KubeObjectScope.Namespace> & {
26
- readonly namespace: string;
27
- }) | import("../kube-object").BaseKubeJsonApiObjectMetadata<KubeObjectScope.Cluster>, unknown, unknown>>;
25
+ }, replicas: number): Promise<import("../kube-json-api").KubeJsonApiData<import("../kube-object").KubeJsonApiObjectMetadata<import("../kube-object").KubeObjectScope>, unknown, unknown>>;
28
26
  }
29
27
  export declare function getMetricsForStatefulSets(statefulSets: StatefulSet[], namespace: string, selector?: string): Promise<PodMetricData>;
30
28
  export interface StatefulSetSpec {
@@ -43,7 +41,7 @@ export interface StatefulSetStatus {
43
41
  updateRevision: string;
44
42
  collisionCount: number;
45
43
  }
46
- export declare class StatefulSet extends KubeObject<StatefulSetStatus, StatefulSetSpec, KubeObjectScope.Namespace> {
44
+ export declare class StatefulSet extends KubeObject<NamespaceScopedMetadata, StatefulSetStatus, StatefulSetSpec> {
47
45
  static readonly kind = "StatefulSet";
48
46
  static readonly namespaced = true;
49
47
  static readonly apiBase = "/apis/apps/v1/statefulsets";
@@ -2,7 +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 { KubeObjectMetadata, KubeObjectScope } from "../kube-object";
5
+ import type { ClusterScopedMetadata, KubeObjectMetadata, KubeObjectScope } from "../kube-object";
6
6
  import { KubeObject } from "../kube-object";
7
7
  import type { DerivedKubeApiOptions } from "../kube-api";
8
8
  import { KubeApi } from "../kube-api";
@@ -23,7 +23,7 @@ export interface StorageClassData extends KubeJsonApiData<KubeObjectMetadata<Kub
23
23
  reclaimPolicy?: string;
24
24
  volumeBindingMode?: string;
25
25
  }
26
- export declare class StorageClass extends KubeObject<void, void, KubeObjectScope.Cluster> {
26
+ export declare class StorageClass extends KubeObject<ClusterScopedMetadata, void, void> {
27
27
  static readonly kind = "StorageClass";
28
28
  static readonly namespaced = false;
29
29
  static readonly apiBase = "/apis/storage.k8s.io/v1/storageclasses";
@@ -3,7 +3,7 @@
3
3
  * Licensed under MIT License. See LICENSE in root directory for more information.
4
4
  */
5
5
  /// <reference types="node" />
6
- import type { KubeObjectConstructor, KubeJsonApiDataFor, KubeObjectMetadata, KubeObjectScope } from "./kube-object";
6
+ import type { KubeObjectConstructor, KubeJsonApiDataFor, KubeObjectMetadata } from "./kube-object";
7
7
  import { KubeObject } from "./kube-object";
8
8
  import type { IKubeWatchEvent } from "./kube-watch-event";
9
9
  import type { KubeJsonApiData } from "./kube-json-api";
@@ -17,7 +17,7 @@ import type { PartialDeep } from "type-fest";
17
17
  /**
18
18
  * The options used for creating a `KubeApi`
19
19
  */
20
- export interface KubeApiOptions<T extends KubeObject<any, any, KubeObjectScope>, Data extends KubeJsonApiDataFor<T> = KubeJsonApiDataFor<T>> extends DerivedKubeApiOptions {
20
+ export interface KubeApiOptions<T extends KubeObject, Data extends KubeJsonApiDataFor<T> = KubeJsonApiDataFor<T>> extends DerivedKubeApiOptions {
21
21
  /**
22
22
  * base api-path for listing all resources, e.g. "/api/v1/pods"
23
23
  *
@@ -147,12 +147,12 @@ export interface IRemoteKubeApiConfig {
147
147
  */
148
148
  agent?: Agent;
149
149
  }
150
- export declare function forCluster<Object extends KubeObject<any, any, KubeObjectScope>, Api extends KubeApi<Object>, Data extends KubeJsonApiDataFor<Object>>(cluster: ILocalKubeApiConfig, kubeClass: KubeObjectConstructor<Object, Data>, apiClass: new (apiOpts: KubeApiOptions<Object>) => Api): Api;
151
- export declare function forCluster<Object extends KubeObject<any, any, KubeObjectScope>, Data extends KubeJsonApiDataFor<Object>>(cluster: ILocalKubeApiConfig, kubeClass: KubeObjectConstructor<Object, Data>, apiClass?: new (apiOpts: KubeApiOptions<Object>) => KubeApi<Object>): KubeApi<Object>;
152
- export declare function forRemoteCluster<Object extends KubeObject<any, any, KubeObjectScope>, Api extends KubeApi<Object>, Data extends KubeJsonApiDataFor<Object>>(config: IRemoteKubeApiConfig, kubeClass: KubeObjectConstructor<Object, Data>, apiClass: new (apiOpts: KubeApiOptions<Object>) => Api): Api;
153
- export declare function forRemoteCluster<Object extends KubeObject<any, any, KubeObjectScope>, Data extends KubeJsonApiDataFor<Object>>(config: IRemoteKubeApiConfig, kubeClass: KubeObjectConstructor<Object, Data>, apiClass?: new (apiOpts: KubeApiOptions<Object>) => KubeApi<Object>): KubeApi<Object>;
150
+ export declare function forCluster<Object extends KubeObject, Api extends KubeApi<Object>, Data extends KubeJsonApiDataFor<Object>>(cluster: ILocalKubeApiConfig, kubeClass: KubeObjectConstructor<Object, Data>, apiClass: new (apiOpts: KubeApiOptions<Object>) => Api): Api;
151
+ export declare function forCluster<Object extends KubeObject, Data extends KubeJsonApiDataFor<Object>>(cluster: ILocalKubeApiConfig, kubeClass: KubeObjectConstructor<Object, Data>, apiClass?: new (apiOpts: KubeApiOptions<Object>) => KubeApi<Object>): KubeApi<Object>;
152
+ export declare function forRemoteCluster<Object extends KubeObject, Api extends KubeApi<Object>, Data extends KubeJsonApiDataFor<Object>>(config: IRemoteKubeApiConfig, kubeClass: KubeObjectConstructor<Object, Data>, apiClass: new (apiOpts: KubeApiOptions<Object>) => Api): Api;
153
+ export declare function forRemoteCluster<Object extends KubeObject, Data extends KubeJsonApiDataFor<Object>>(config: IRemoteKubeApiConfig, kubeClass: KubeObjectConstructor<Object, Data>, apiClass?: new (apiOpts: KubeApiOptions<Object>) => KubeApi<Object>): KubeApi<Object>;
154
154
  export declare type KubeApiWatchCallback<T extends KubeJsonApiData = KubeJsonApiData> = (data: IKubeWatchEvent<T>, error: any) => void;
155
- export interface KubeApiWatchOptions<Object extends KubeObject<any, any, KubeObjectScope>, Data extends KubeJsonApiDataFor<Object>> {
155
+ export interface KubeApiWatchOptions<Object extends KubeObject, Data extends KubeJsonApiDataFor<Object>> {
156
156
  namespace: string;
157
157
  callback?: KubeApiWatchCallback<Data>;
158
158
  abortController?: AbortController;
@@ -223,9 +223,7 @@ export declare class KubeApi<Object extends KubeObject = KubeObject, Data extend
223
223
  create({ name, namespace }: Partial<ResourceDescriptor>, partialData?: PartialDeep<Object>): Promise<Object | null>;
224
224
  update({ name, namespace }: ResourceDescriptor, data: PartialDeep<Object>): Promise<Object | null>;
225
225
  patch(desc: ResourceDescriptor, data: PartialDeep<Object> | Patch, strategy?: KubeApiPatchType): Promise<Object | null>;
226
- delete({ propagationPolicy, ...desc }: DeleteResourceDescriptor): Promise<KubeJsonApiData<(import("./kube-object").BaseKubeJsonApiObjectMetadata<KubeObjectScope.Namespace> & {
227
- readonly namespace: string;
228
- }) | import("./kube-object").BaseKubeJsonApiObjectMetadata<KubeObjectScope.Cluster>, unknown, unknown>>;
226
+ delete({ propagationPolicy, ...desc }: DeleteResourceDescriptor): Promise<KubeJsonApiData<import("./kube-object").KubeJsonApiObjectMetadata<import("./kube-object").KubeObjectScope>, unknown, unknown>>;
229
227
  getWatchUrl(namespace?: string, query?: KubeApiQueryParams): string;
230
228
  watch(opts?: KubeApiWatchOptions<Object, Data>): () => void;
231
229
  protected modifyWatchEvent(event: IKubeWatchEvent<KubeJsonApiData<KubeObjectMetadata>>): void;
@@ -6,13 +6,13 @@ import type { KubeJsonApiData, KubeJsonApiDataList, KubeJsonApiListMetadata } fr
6
6
  import type { ItemObject } from "../item.store";
7
7
  import type { Patch } from "rfc6902";
8
8
  import type { JsonObject } from "type-fest";
9
- export declare type KubeJsonApiDataFor<K> = K extends KubeObject<infer Status, infer Spec, infer Scope> ? KubeJsonApiData<KubeObjectMetadata<Scope>, Status, Spec> : never;
9
+ export declare type KubeJsonApiDataFor<K> = K extends KubeObject<infer Metadata, infer Status, infer Spec> ? KubeJsonApiData<Metadata, Status, Spec> : never;
10
10
  export interface KubeObjectConstructorData {
11
11
  readonly kind?: string;
12
12
  readonly namespaced?: boolean;
13
13
  readonly apiBase?: string;
14
14
  }
15
- export declare type KubeObjectConstructor<K extends KubeObject<any, any, KubeObjectScope>, Data> = (new (data: Data) => K) & KubeObjectConstructorData;
15
+ export declare type KubeObjectConstructor<K extends KubeObject, Data> = (new (data: Data) => K) & KubeObjectConstructorData;
16
16
  export interface OwnerReference {
17
17
  apiVersion: string;
18
18
  kind: string;
@@ -166,15 +166,17 @@ export interface BaseKubeJsonApiObjectMetadata<Namespaced extends KubeObjectScop
166
166
  readonly uid?: string;
167
167
  [key: string]: unknown;
168
168
  }
169
- export declare type KubeJsonApiObjectMetadata<Namespaced extends KubeObjectScope = KubeObjectScope> = Namespaced extends KubeObjectScope.Namespace ? BaseKubeJsonApiObjectMetadata<KubeObjectScope.Namespace> & {
169
+ export declare type KubeJsonApiObjectMetadata<Namespaced extends KubeObjectScope = KubeObjectScope> = BaseKubeJsonApiObjectMetadata<Namespaced> & (Namespaced extends KubeObjectScope.Namespace ? {
170
170
  readonly namespace: string;
171
- } : BaseKubeJsonApiObjectMetadata<Namespaced>;
171
+ } : {});
172
172
  export declare type KubeObjectMetadata<Namespaced extends KubeObjectScope = KubeObjectScope> = KubeJsonApiObjectMetadata<Namespaced> & {
173
173
  readonly selfLink: string;
174
174
  readonly uid: string;
175
175
  readonly name: string;
176
176
  readonly resourceVersion: string;
177
177
  };
178
+ export declare type NamespaceScopedMetadata = KubeObjectMetadata<KubeObjectScope.Namespace>;
179
+ export declare type ClusterScopedMetadata = KubeObjectMetadata<KubeObjectScope.Cluster>;
178
180
  export interface KubeStatusData {
179
181
  kind: string;
180
182
  apiVersion: string;
@@ -292,17 +294,17 @@ export declare enum KubeObjectScope {
292
294
  Cluster = 1
293
295
  }
294
296
  export declare type ScopedNamespace<Namespaced extends KubeObjectScope> = (Namespaced extends KubeObjectScope.Namespace ? string : Namespaced extends KubeObjectScope.Cluster ? undefined : string | undefined);
295
- export declare class KubeObject<Status = unknown, Spec = unknown, Namespaced extends KubeObjectScope = KubeObjectScope> implements ItemObject {
297
+ export declare class KubeObject<Metadata extends KubeObjectMetadata<KubeObjectScope> = KubeObjectMetadata<KubeObjectScope>, Status = unknown, Spec = unknown> implements ItemObject {
296
298
  static readonly kind?: string;
297
299
  static readonly namespaced?: boolean;
298
300
  static readonly apiBase?: string;
299
301
  apiVersion: string;
300
302
  kind: string;
301
- metadata: KubeObjectMetadata<Namespaced>;
303
+ metadata: Metadata;
302
304
  status?: Status;
303
305
  spec: Spec;
304
- static create<Metadata extends KubeObjectMetadata = KubeObjectMetadata, Status = unknown, Spec = unknown>(data: KubeJsonApiData<Metadata, Status, Spec>): KubeObject<Status, Spec, KubeObjectScope>;
305
- static isNonSystem(item: KubeJsonApiData | KubeObject<unknown, unknown, KubeObjectScope>): boolean;
306
+ static create<Metadata extends KubeObjectMetadata = KubeObjectMetadata, Status = unknown, Spec = unknown>(data: KubeJsonApiData<Metadata, Status, Spec>): KubeObject<Metadata, Status, Spec>;
307
+ static isNonSystem(item: KubeJsonApiData | KubeObject<KubeObjectMetadata<KubeObjectScope>, unknown, unknown>): boolean;
306
308
  static isJsonApiData(object: unknown): object is KubeJsonApiData;
307
309
  static isKubeJsonApiListMetadata(object: unknown): object is KubeJsonApiListMetadata;
308
310
  static isKubeJsonApiMetadata(object: unknown): object is KubeJsonApiObjectMetadata;
@@ -315,13 +317,13 @@ export declare class KubeObject<Status = unknown, Spec = unknown, Namespaced ext
315
317
  */
316
318
  private static readonly nonEditablePathPrefixes;
317
319
  private static readonly nonEditablePaths;
318
- constructor(data: KubeJsonApiData<KubeObjectMetadata<Namespaced>, Status, Spec>);
320
+ constructor(data: KubeJsonApiData<Metadata, Status, Spec>);
319
321
  get selfLink(): string;
320
322
  getId(): string;
321
323
  getResourceVersion(): string;
322
324
  getScopedName(): string;
323
325
  getName(): string;
324
- getNs(): ScopedNamespace<Namespaced>;
326
+ getNs(): Metadata["namespace"];
325
327
  /**
326
328
  * This function computes the number of milliseconds from the UNIX EPOCH to the
327
329
  * creation timestamp of this object.
@@ -343,7 +345,7 @@ export declare class KubeObject<Status = unknown, Spec = unknown, Namespaced ext
343
345
  getLabels(): string[];
344
346
  getAnnotations(filter?: boolean): string[];
345
347
  getOwnerRefs(): {
346
- namespace: ScopedNamespace<Namespaced>;
348
+ namespace: Metadata["namespace"];
347
349
  apiVersion: string;
348
350
  kind: string;
349
351
  name: string;
@@ -351,7 +353,7 @@ export declare class KubeObject<Status = unknown, Spec = unknown, Namespaced ext
351
353
  controller?: boolean | undefined;
352
354
  blockOwnerDeletion?: boolean | undefined;
353
355
  }[];
354
- getSearchFields(): (string | ScopedNamespace<Namespaced>)[];
356
+ getSearchFields(): (string | Metadata["namespace"])[];
355
357
  toPlainObject(): JsonObject;
356
358
  /**
357
359
  * @deprecated use KubeApi.patch instead
@@ -370,7 +372,5 @@ export declare class KubeObject<Status = unknown, Spec = unknown, Namespaced ext
370
372
  /**
371
373
  * @deprecated use KubeApi.delete instead
372
374
  */
373
- delete(params?: object): Promise<KubeJsonApiData<(BaseKubeJsonApiObjectMetadata<KubeObjectScope.Namespace> & {
374
- readonly namespace: string;
375
- }) | BaseKubeJsonApiObjectMetadata<KubeObjectScope.Cluster>, unknown, unknown>>;
375
+ delete(params?: object): Promise<KubeJsonApiData<KubeJsonApiObjectMetadata<KubeObjectScope>, unknown, unknown>>;
376
376
  }
@@ -58,6 +58,7 @@ export interface KubeObjectStoreOptions {
58
58
  bufferSize?: number;
59
59
  }
60
60
  export declare type KubeApiDataFrom<K extends KubeObject, A> = A extends KubeApi<K, infer D> ? D extends KubeJsonApiDataFor<K> ? D : never : never;
61
+ export declare type JsonPatch = Patch;
61
62
  export declare abstract class KubeObjectStore<K extends KubeObject = KubeObject, A extends KubeApi<K, D> = KubeApi<K, KubeJsonApiDataFor<K>>, D extends KubeJsonApiDataFor<K> = KubeApiDataFrom<K, A>> extends ItemStore<K> {
62
63
  static readonly defaultContext: import("mobx").IObservableValue<ClusterContext | undefined>;
63
64
  readonly api: A;
@@ -71,6 +72,10 @@ export declare abstract class KubeObjectStore<K extends KubeObject = KubeObject,
71
72
  cancel(): void;
72
73
  };
73
74
  constructor(api: A, opts?: KubeObjectStoreOptions);
75
+ /**
76
+ * @deprecated Supply API instance through constructor
77
+ */
78
+ constructor();
74
79
  get context(): ClusterContext | undefined;
75
80
  get contextItems(): K[];
76
81
  getTotalCount(): number;
@@ -108,7 +113,7 @@ export declare abstract class KubeObjectStore<K extends KubeObject = KubeObject,
108
113
  namespace?: string;
109
114
  }, data?: PartialDeep<K>): Promise<K>;
110
115
  private postUpdate;
111
- patch(item: K, patch: Patch): Promise<K>;
116
+ patch(item: K, patch: JsonPatch): Promise<K>;
112
117
  update(item: K, data: PartialDeep<K>): Promise<K>;
113
118
  remove(item: K): Promise<void>;
114
119
  removeSelectedItems(): Promise<void>;
@@ -2,10 +2,6 @@
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
- * A function that does nothing
7
- */
8
- export declare function noop<T extends any[]>(...args: T): void;
9
5
  export * from "./abort-controller";
10
6
  export * from "./app-version";
11
7
  export * from "./autobind";
@@ -23,6 +19,8 @@ export * from "./formatDuration";
23
19
  export * from "./getRandId";
24
20
  export * from "./hash-set";
25
21
  export * from "./n-fircate";
22
+ export * from "./noop";
23
+ export * from "./observable-crate/impl";
26
24
  export * from "./openBrowser";
27
25
  export * from "./paths";
28
26
  export * from "./promise-exec";
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Copyright (c) OpenLens Authors. All rights reserved.
3
+ * Licensed under MIT License. See LICENSE in root directory for more information.
4
+ */
5
+ /**
6
+ * A function that does nothing
7
+ */
8
+ export declare function noop<T extends any[]>(...args: T): void;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Copyright (c) OpenLens Authors. All rights reserved.
3
+ * Licensed under MIT License. See LICENSE in root directory for more information.
4
+ */
5
+ export interface ObservableCrate<T> {
6
+ get(): T;
7
+ set(value: T): void;
8
+ }
9
+ export interface ObservableCrateFactory {
10
+ <T>(initialValue: T, transitionHandlers?: ObservableCrateTransitionHandlers<T>): ObservableCrate<T>;
11
+ }
12
+ export interface ObservableCrateTransitionHandler<T> {
13
+ from: T;
14
+ to: T;
15
+ onTransition: () => void;
16
+ }
17
+ export declare type ObservableCrateTransitionHandlers<T> = ObservableCrateTransitionHandler<T>[];
18
+ export declare const observableCrate: ObservableCrateFactory;
@@ -2,4 +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
- export { KubeObjectDetailRegistry } from "../../extensions/registries/kube-object-detail-registry";
5
+ export {};
@@ -5,6 +5,7 @@
5
5
  export { ResourceStack } from "../../common/k8s/resource-stack";
6
6
  export declare const apiManager: import("../../common/k8s-api/api-manager").ApiManager;
7
7
  export { KubeApi, forCluster, forRemoteCluster, type ILocalKubeApiConfig, type IRemoteKubeApiConfig, type IKubeApiCluster, } from "../../common/k8s-api/kube-api";
8
- export { KubeObject, KubeStatus, type KubeObjectMetadata, type BaseKubeJsonApiObjectMetadata, type KubeJsonApiObjectMetadata, type KubeStatusData, } from "../../common/k8s-api/kube-object";
9
- export { KubeObjectStore, type KubeObjectStoreLoadAllParams, type KubeObjectStoreLoadingParams, type KubeObjectStoreSubscribeParams, } from "../../common/k8s-api/kube-object.store";
8
+ export { KubeObject, KubeStatus, type OwnerReference, type KubeObjectMetadata, type NamespaceScopedMetadata, type ClusterScopedMetadata, type BaseKubeJsonApiObjectMetadata, type KubeJsonApiObjectMetadata, type KubeStatusData, } from "../../common/k8s-api/kube-object";
9
+ export { type KubeJsonApiData, } from "../../common/k8s-api/kube-json-api";
10
+ export { KubeObjectStore, type JsonPatch, type KubeObjectStoreLoadAllParams, type KubeObjectStoreLoadingParams, type KubeObjectStoreSubscribeParams, } from "../../common/k8s-api/kube-object.store";
10
11
  export { type PodContainer as IPodContainer, type PodContainerStatus as IPodContainerStatus, Pod, PodApi as PodsApi, Node, NodeApi as NodesApi, Deployment, DeploymentApi, DaemonSet, StatefulSet, Job, CronJob, ConfigMap, type SecretReference as ISecretRef, Secret, ReplicaSet, ResourceQuota, LimitRange, HorizontalPodAutoscaler, PodDisruptionBudget, Service, Endpoints as Endpoint, Ingress, IngressApi, NetworkPolicy, PersistentVolume, PersistentVolumeClaim, PersistentVolumeClaimApi as PersistentVolumeClaimsApi, StorageClass, Namespace, KubeEvent, ServiceAccount, Role, RoleBinding, ClusterRole, ClusterRoleBinding, CustomResourceDefinition, } from "../../common/k8s-api/endpoints";
@@ -5,7 +5,7 @@
5
5
  export type { StatusBarRegistration } from "../../renderer/components/status-bar/status-bar-registration";
6
6
  export type { KubeObjectMenuRegistration, KubeObjectMenuComponents } from "../../renderer/components/kube-object-menu/kube-object-menu-registration";
7
7
  export type { AppPreferenceRegistration, AppPreferenceComponents } from "../../renderer/components/+preferences/app-preferences/app-preference-registration";
8
- export type { KubeObjectDetailRegistration, KubeObjectDetailComponents } from "../registries/kube-object-detail-registry";
8
+ export type { KubeObjectDetailRegistration, KubeObjectDetailComponents } from "../../renderer/components/kube-object-details/kube-object-detail-registration";
9
9
  export type { KubeObjectStatusRegistration } from "../../renderer/components/kube-object-status-icon/kube-object-status-registration";
10
10
  export type { PageRegistration, RegisteredPage, PageParams, PageComponentProps, PageComponents, PageTarget } from "../registries/page-registry";
11
11
  export type { ClusterPageMenuRegistration, ClusterPageMenuComponents } from "../registries/page-menu-registry";
@@ -13,3 +13,4 @@ export type { ProtocolHandlerRegistration, RouteParams as ProtocolRouteParams, R
13
13
  export type { CustomCategoryViewProps, CustomCategoryViewComponents, CustomCategoryViewRegistration } from "../../renderer/components/+catalog/custom-views";
14
14
  export type { ShellEnvModifier, ShellEnvContext } from "../../main/shell-session/shell-env-modifier/shell-env-modifier-registration";
15
15
  export type { KubeObjectContextMenuItem, KubeObjectOnContextMenuOpenContext, KubeObjectOnContextMenuOpen, KubeObjectHandlers, KubeObjectHandlerRegistration } from "../../renderer/kube-object/handler";
16
+ export type { TrayMenuRegistration } from "../../main/tray/tray-menu-registration";