@k8slens/extensions 6.0.1-git.17ddee2bde.0 → 6.0.1-git.27871f57b6.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 (144) hide show
  1. package/dist/src/behaviours/{add-cluster/navigation-using-application-menu.test.d.ts → pod-logs/download-logs.test.d.ts} +0 -0
  2. package/dist/src/common/cluster/cluster.d.ts +2 -0
  3. package/dist/src/common/cluster-store/cluster-store.global-override-for-injectable.d.ts +6 -0
  4. package/dist/src/common/fs/stat/stat.global-override-for-injectable.d.ts +5 -0
  5. package/dist/src/common/fs/stat/stat.injectable.d.ts +2 -0
  6. package/dist/src/common/fs/validate-directory.injectable.d.ts +4 -0
  7. package/dist/src/common/fs/watch/watch.global-override-for-injectable.d.ts +5 -0
  8. package/dist/src/common/fs/watch/watch.injectable.d.ts +4 -0
  9. package/dist/src/common/ipc/broadcast-message.injectable.d.ts +2 -2
  10. package/dist/src/common/k8s-api/endpoints/pod.api.d.ts +1 -0
  11. package/dist/src/common/k8s-api/kube-api.d.ts +1 -1
  12. package/dist/src/common/k8s-api/kube-object.store.d.ts +1 -1
  13. package/dist/src/common/protocol-handler/router.d.ts +2 -0
  14. package/dist/src/common/test-utils/get-global-override.d.ts +4 -0
  15. package/dist/src/common/utils/abort-controller.d.ts +5 -1
  16. package/dist/src/common/utils/delay.d.ts +1 -1
  17. package/dist/src/common/vars/package-json.injectable.d.ts +6 -0
  18. package/dist/src/extensions/extension-api.js +1866 -259
  19. package/dist/src/extensions/extension-discovery/extension-discovery.d.ts +8 -0
  20. package/dist/src/extensions/renderer-api/theming.d.ts +7 -1
  21. package/dist/src/{behaviours/extensions → features/add-cluster}/navigation-using-application-menu.test.d.ts +0 -0
  22. package/dist/src/{behaviours → features}/application-update/analytics-for-installing-update.test.d.ts +0 -0
  23. package/dist/src/{behaviours → features}/application-update/downgrading-version-update.test.d.ts +0 -0
  24. package/dist/src/{behaviours → features}/application-update/force-user-to-update-when-too-long-time-since-update-was-downloaded.test.d.ts +0 -0
  25. package/dist/src/{behaviours → features}/application-update/installing-update-using-topbar-button.test.d.ts +0 -0
  26. package/dist/src/{behaviours → features}/application-update/installing-update-using-tray.test.d.ts +0 -0
  27. package/dist/src/{behaviours → features}/application-update/installing-update.test.d.ts +0 -0
  28. package/dist/src/{behaviours → features}/application-update/periodical-checking-of-updates.test.d.ts +0 -0
  29. package/dist/src/{behaviours → features}/application-update/selection-of-update-stability.test.d.ts +0 -0
  30. package/dist/src/{behaviours → features}/cluster/extension-api/disable-cluster-pages-when-cluster-is-not-relevant.test.d.ts +0 -0
  31. package/dist/src/{behaviours → features}/cluster/extension-api/disable-sidebar-items-when-cluster-is-not-relevant.test.d.ts +0 -0
  32. package/dist/src/{behaviours → features}/cluster/extension-api/reactively-disable-cluster-pages.test.d.ts +0 -0
  33. package/dist/src/{behaviours → features}/cluster/kube-object-details/extension-api/disable-kube-object-detail-items-when-cluster-is-not-relevant.test.d.ts +0 -0
  34. package/dist/src/{behaviours → features}/cluster/kube-object-details/extension-api/reactively-hide-kube-object-detail-item.test.d.ts +0 -0
  35. package/dist/src/{behaviours → features}/cluster/kube-object-menu/extension-api/disable-kube-object-menu-items-when-cluster-is-not-relevant.test.d.ts +0 -0
  36. package/dist/src/{behaviours → features}/cluster/kube-object-menu/extension-api/reactively-hide-kube-object-menu-item.test.d.ts +0 -0
  37. package/dist/src/{behaviours → features}/cluster/kube-object-status-icon/extension-api/disable-kube-object-statuses-when-cluster-is-not-relevant.test.d.ts +0 -0
  38. package/dist/src/{behaviours → features}/cluster/kube-object-status-icon/extension-api/reactively-hide-kube-object-status.test.d.ts +0 -0
  39. package/dist/src/{behaviours → features}/cluster/kube-object-status-icon/show-status-for-a-kube-object.test.d.ts +0 -0
  40. package/dist/src/{behaviours → features}/cluster/namespaces/edit-namespace-from-new-tab.test.d.ts +0 -0
  41. package/dist/src/{behaviours → features}/cluster/namespaces/edit-namespace-from-previously-opened-tab.test.d.ts +0 -0
  42. package/dist/src/{behaviours → features}/cluster/order-of-sidebar-items.test.d.ts +0 -0
  43. package/dist/src/{behaviours → features}/cluster/sidebar-and-tab-navigation-for-core.test.d.ts +0 -0
  44. package/dist/src/{behaviours → features}/cluster/sidebar-and-tab-navigation-for-extensions.test.d.ts +0 -0
  45. package/dist/src/{behaviours → features}/cluster/visibility-of-sidebar-items.test.d.ts +0 -0
  46. package/dist/src/{behaviours/command-pallet/keyboard-shortcuts.test.d.ts → features/cluster/workload-overview.test.d.ts} +0 -0
  47. package/dist/src/{behaviours → features}/cluster/workloads/overview/extension-api/disable-workloads-overview-details-when-cluster-is-not-relevant.test.d.ts +0 -0
  48. package/dist/src/{behaviours → features}/cluster/workloads/overview/extension-api/order-of-workload-overview-details.test.d.ts +0 -0
  49. package/dist/src/{behaviours → features}/cluster/workloads/overview/extension-api/reactively-hide-workloads-overview-details-item.test.d.ts +0 -0
  50. package/dist/src/{behaviours/preferences/navigation-using-application-menu.test.d.ts → features/command-pallet/keyboard-shortcuts.test.d.ts} +0 -0
  51. package/dist/src/{behaviours → features}/extension-special-characters-in-page-registrations.test.d.ts +0 -0
  52. package/dist/src/{behaviours/welcome → features/extensions}/navigation-using-application-menu.test.d.ts +0 -0
  53. package/dist/src/{behaviours → features}/helm-charts/add-custom-helm-repository-in-preferences.test.d.ts +0 -0
  54. package/dist/src/{behaviours → features}/helm-charts/add-helm-repository-from-list-in-preferences.test.d.ts +0 -0
  55. package/dist/src/{behaviours → features}/helm-charts/installing-chart/installing-helm-chart-from-new-tab.test.d.ts +0 -0
  56. package/dist/src/{behaviours → features}/helm-charts/installing-chart/installing-helm-chart-from-previously-opened-tab.test.d.ts +0 -0
  57. package/dist/src/{behaviours → features}/helm-charts/installing-chart/opening-dock-tab-for-installing-helm-chart.test.d.ts +0 -0
  58. package/dist/src/{behaviours → features}/helm-charts/listing-active-helm-repositories-in-preferences.test.d.ts +0 -0
  59. package/dist/src/{behaviours → features}/helm-charts/remove-helm-repository-from-list-of-active-repository-in-preferences.test.d.ts +0 -0
  60. package/dist/src/{behaviours → features}/helm-releases/showing-details-for-helm-release.test.d.ts +0 -0
  61. package/dist/src/{behaviours → features}/navigate-to-extension-page.test.d.ts +0 -0
  62. package/dist/src/{behaviours → features}/navigating-between-routes.test.d.ts +0 -0
  63. package/dist/src/{behaviours → features}/preferences/closing-preferences.test.d.ts +0 -0
  64. package/dist/src/{behaviours → features}/preferences/extension-adding-preference-tabs.test.d.ts +0 -0
  65. package/dist/src/{behaviours → features}/preferences/navigation-to-application-preferences.test.d.ts +0 -0
  66. package/dist/src/{behaviours → features}/preferences/navigation-to-editor-preferences.test.d.ts +0 -0
  67. package/dist/src/{behaviours → features}/preferences/navigation-to-extension-specific-preferences.test.d.ts +0 -0
  68. package/dist/src/{behaviours → features}/preferences/navigation-to-kubernetes-preferences.test.d.ts +0 -0
  69. package/dist/src/{behaviours → features}/preferences/navigation-to-proxy-preferences.test.d.ts +0 -0
  70. package/dist/src/{behaviours → features}/preferences/navigation-to-telemetry-preferences.test.d.ts +0 -0
  71. package/dist/src/{behaviours → features}/preferences/navigation-to-terminal-preferences.test.d.ts +0 -0
  72. package/dist/src/{behaviours/quitting-and-restarting-the-app/opening-application-window-using-tray.test.d.ts → features/preferences/navigation-using-application-menu.test.d.ts} +0 -0
  73. package/dist/src/{behaviours → features}/preferences/navigation-using-tray.test.d.ts +0 -0
  74. package/dist/src/{behaviours/quitting-and-restarting-the-app/quitting-the-app-using-application-menu.test.d.ts → features/quitting-and-restarting-the-app/opening-application-window-using-tray.test.d.ts} +0 -0
  75. package/dist/src/features/quitting-and-restarting-the-app/quitting-the-app-using-application-menu.test.d.ts +5 -0
  76. package/dist/src/{behaviours → features}/resolve-system-proxy/resolve-system-proxy.test.d.ts +0 -0
  77. package/dist/src/{behaviours → features}/routes/extension-api/reactively-disable-global-pages.test.d.ts +0 -0
  78. package/dist/src/{behaviours → features}/status-bar/status-bar-items-originating-from-extensions.test.d.ts +0 -0
  79. package/dist/src/{behaviours → features}/tray/clicking-tray-menu-item-originating-from-extension.test.d.ts +0 -0
  80. package/dist/src/{behaviours → features}/tray/extension-adding-tray-items.test.d.ts +0 -0
  81. package/dist/src/{behaviours → features}/tray/multiple-separators-originating-from-extension.test.d.ts +0 -0
  82. package/dist/src/features/welcome/navigation-using-application-menu.test.d.ts +5 -0
  83. package/dist/src/main/__test__/cluster.test.d.ts +0 -4
  84. package/dist/src/main/helm/helm-chart-manager-cache.injectable.d.ts +7 -0
  85. package/dist/src/main/helm/helm-chart-manager.d.ts +9 -3
  86. package/dist/src/main/helm/helm-chart-manager.injectable.d.ts +4 -0
  87. package/dist/src/main/kube-auth-proxy/kube-auth-proxy.d.ts +3 -1
  88. package/dist/src/main/kube-auth-proxy/wait-until-port-is-used/wait-until-port-is-used.global-override-for-injectable.d.ts +5 -0
  89. package/dist/src/main/kube-auth-proxy/wait-until-port-is-used/wait-until-port-is-used.injectable.d.ts +3 -0
  90. package/dist/src/main/menu/build-version.global-override-for-injectable.d.ts +9 -0
  91. package/dist/src/main/menu/build-version.injectable.d.ts +2 -0
  92. package/dist/src/main/menu/menu.d.ts +3 -1
  93. package/dist/src/main/prometheus/helm.d.ts +3 -3
  94. package/dist/src/main/protocol-handler/lens-protocol-router-main/lens-protocol-router-main.d.ts +2 -0
  95. package/dist/src/main/start-main-application/lens-window/application-window/application-window-injection-token.d.ts +2 -0
  96. package/dist/src/main/start-main-application/lens-window/application-window/create-application-window.injectable.d.ts +2 -0
  97. package/dist/src/main/start-main-application/lens-window/application-window/create-electron-window.global-override-for-injectable.d.ts +5 -0
  98. package/dist/src/main/start-main-application/lens-window/application-window/create-first-application-window.injectable.d.ts +2 -0
  99. package/dist/src/main/start-main-application/lens-window/application-window/create-lens-window.injectable.d.ts +18 -1
  100. package/dist/src/main/start-main-application/lens-window/application-window/get-current-application-window.injectable.d.ts +2 -0
  101. package/dist/src/main/start-main-application/lens-window/application-window/send-to-channel-in-electron-browser-window.injectable.d.ts +2 -2
  102. package/dist/src/main/start-main-application/lens-window/get-visible-windows.injectable.d.ts +1 -1
  103. package/dist/src/main/start-main-application/lens-window/reload-current-application-window.injectable.d.ts +2 -0
  104. package/dist/src/main/start-main-application/lens-window/splash-window/splash-window.injectable.d.ts +1 -1
  105. package/dist/src/main/start-main-application/start-main-application.injectable.d.ts +1 -1
  106. package/dist/src/main/tray/tray-menu-registration.d.ts +1 -1
  107. package/dist/src/main/utils/channel/ipc-main/ipc-main.global-override-for-injectable.d.ts +5 -0
  108. package/dist/src/renderer/api/catalog/entity/registry.d.ts +2 -0
  109. package/dist/src/renderer/components/+helm-releases/release-details/release-details-model/release-details-model.injectable.d.ts +3 -3
  110. package/dist/src/renderer/components/+workloads-overview/overview-workload-status.d.ts +19 -1
  111. package/dist/src/renderer/components/+workloads-overview/workloads/workload-injection-token.d.ts +2 -1
  112. package/dist/src/renderer/components/chart/chart.d.ts +1 -0
  113. package/dist/src/renderer/components/cluster-settings/components/cluster-local-terminal-settings.d.ts +2 -1
  114. package/dist/src/renderer/components/dock/create-resource/view.d.ts +1 -2
  115. package/dist/src/renderer/components/dock/edit-resource/view.d.ts +1 -2
  116. package/dist/src/renderer/components/dock/install-chart/view.d.ts +3 -4
  117. package/dist/src/renderer/components/dock/logs/controls.d.ts +1 -3
  118. package/dist/src/renderer/components/dock/logs/download-all-logs.injectable.d.ts +4 -0
  119. package/dist/src/renderer/components/dock/logs/download-logs-dropdown.d.ts +10 -0
  120. package/dist/src/renderer/components/dock/logs/download-logs.injectable.d.ts +2 -0
  121. package/dist/src/renderer/components/dock/logs/get-random-id-for-pod-logs-tab.injectable.d.ts +2 -0
  122. package/dist/src/renderer/components/dock/logs/logs-view-model.d.ts +6 -1
  123. package/dist/src/renderer/components/dropdown/dropdown.d.ts +11 -0
  124. package/dist/src/renderer/components/layout/sidebar-item.d.ts +0 -1
  125. package/dist/src/renderer/components/switch/form-switcher.d.ts +9 -2
  126. package/dist/src/renderer/components/switch/switcher.d.ts +7 -8
  127. package/dist/src/renderer/components/test-utils/get-application-builder.d.ts +30 -27
  128. package/dist/src/renderer/components/test-utils/get-extension-fake.d.ts +3 -6
  129. package/dist/src/renderer/kube-watch-api/subscribe-stores.global-override-for-injectable.d.ts +5 -0
  130. package/dist/src/renderer/protocol-handler/lens-protocol-router-renderer/lens-protocol-router-renderer.d.ts +2 -5
  131. package/dist/src/renderer/themes/active.injectable.d.ts +2 -0
  132. package/dist/src/renderer/themes/lens-dark.d.ts +2 -2
  133. package/dist/src/renderer/themes/lens-light.d.ts +2 -2
  134. package/dist/src/renderer/themes/store.d.ts +4 -4
  135. package/dist/src/renderer/utils/channel/ipc-renderer.global-override-for-injectable.d.ts +5 -0
  136. package/dist/src/test-utils/channel-fakes/override-channels.d.ts +1 -1
  137. package/dist/src/test-utils/channel-fakes/override-messaging-from-main-to-window.d.ts +1 -1
  138. package/package.json +1 -1
  139. package/dist/src/main/helm/__mocks__/helm-chart-manager.d.ts +0 -11
  140. package/dist/src/main/start-main-application/lens-window/application-window/application-window.injectable.d.ts +0 -2
  141. package/dist/src/main/start-main-application/lens-window/application-window/lens-window-injection-token.d.ts +0 -16
  142. package/dist/src/main/start-main-application/lens-window/reload-all-windows.injectable.d.ts +0 -2
  143. package/dist/src/main/start-main-application/lens-window/reload-window.injectable.d.ts +0 -3
  144. package/dist/src/renderer/components/test-utils/get-renderer-extension-fake.d.ts +0 -12
@@ -0,0 +1,4 @@
1
+ import type { PodLogsQuery } from "../../../../common/k8s-api/endpoints";
2
+ import type { ResourceDescriptor } from "../../../../common/k8s-api/kube-api";
3
+ declare const downloadAllLogsInjectable: import("@ogre-tools/injectable").Injectable<(params: ResourceDescriptor, query: PodLogsQuery) => Promise<void>, unknown, void>;
4
+ export default downloadAllLogsInjectable;
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Copyright (c) OpenLens Authors. All rights reserved.
3
+ * Licensed under MIT License. See LICENSE in root directory for more information.
4
+ */
5
+ interface DownloadLogsDropdownProps {
6
+ downloadVisibleLogs: () => void;
7
+ downloadAllLogs: () => Promise<void> | undefined;
8
+ }
9
+ export declare function DownloadLogsDropdown({ downloadAllLogs, downloadVisibleLogs }: DownloadLogsDropdownProps): JSX.Element;
10
+ export {};
@@ -0,0 +1,2 @@
1
+ declare const downloadLogsInjectable: import("@ogre-tools/injectable").Injectable<(filename: string, logs: string[]) => void, unknown, void>;
2
+ export default downloadLogsInjectable;
@@ -0,0 +1,2 @@
1
+ declare const getRandomIdForPodLogsTabInjectable: import("@ogre-tools/injectable").Injectable<() => string, unknown, void>;
2
+ export default getRandomIdForPodLogsTabInjectable;
@@ -6,10 +6,11 @@ import type { LogTabData } from "./tab-store";
6
6
  import type { IComputedValue } from "mobx";
7
7
  import type { TabId } from "../dock/store";
8
8
  import type { SearchStore } from "../../../search-store/search-store";
9
- import type { Pod } from "../../../../common/k8s-api/endpoints";
9
+ import type { Pod, PodLogsQuery } from "../../../../common/k8s-api/endpoints";
10
10
  import type { GetPodById } from "../../+workloads-pods/get-pod-by-id.injectable";
11
11
  import type { GetPodsByOwnerId } from "../../+workloads-pods/get-pods-by-owner-id.injectable";
12
12
  import type { LoadLogs } from "./load-logs.injectable";
13
+ import type { ResourceDescriptor } from "../../../../common/k8s-api/kube-api";
13
14
  export interface LogTabViewModelDependencies {
14
15
  getLogs: (tabId: TabId) => string[];
15
16
  getLogsWithoutTimestamps: (tabId: TabId) => string[];
@@ -23,6 +24,8 @@ export interface LogTabViewModelDependencies {
23
24
  getPodById: GetPodById;
24
25
  getPodsByOwnerId: GetPodsByOwnerId;
25
26
  areLogsPresent: (tabId: TabId) => boolean;
27
+ downloadLogs: (filename: string, logs: string[]) => void;
28
+ downloadAllLogs: (params: ResourceDescriptor, query: PodLogsQuery) => Promise<void>;
26
29
  searchStore: SearchStore;
27
30
  }
28
31
  export declare class LogTabViewModel {
@@ -42,4 +45,6 @@ export declare class LogTabViewModel {
42
45
  reloadLogs: () => Promise<void>;
43
46
  renameTab: (title: string) => void;
44
47
  stopLoadingLogs: () => void;
48
+ downloadLogs: () => void;
49
+ downloadAllLogs: () => Promise<void> | undefined;
45
50
  }
@@ -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 { HTMLAttributes } from "react";
6
+ import React from "react";
7
+ interface DropdownProps extends HTMLAttributes<HTMLDivElement> {
8
+ contentForToggle: React.ReactNode;
9
+ }
10
+ export declare function Dropdown(props: DropdownProps): JSX.Element;
11
+ export {};
@@ -2,7 +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
- import "./sidebar-item.scss";
6
5
  import React from "react";
7
6
  import type { HierarchicalSidebarItem } from "./sidebar-items.injectable";
8
7
  export interface SidebarItemProps {
@@ -2,8 +2,15 @@
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 { FormControlLabelProps } from "@material-ui/core/FormControlLabel";
5
+ import React from "react";
6
+ interface FormControlLabelProps {
7
+ control: React.ReactElement<any, any>;
8
+ label: React.ReactNode;
9
+ }
6
10
  /**
7
11
  * @deprecated Use <Switch/> instead from "../switch.tsx".
8
12
  */
9
- export declare function FormSwitch(props: FormControlLabelProps): JSX.Element;
13
+ export declare function FormSwitch(props: FormControlLabelProps & {
14
+ children?: React.ReactNode;
15
+ }): React.FunctionComponentElement<any>;
16
+ export {};
@@ -3,15 +3,14 @@
3
3
  * Licensed under MIT License. See LICENSE in root directory for more information.
4
4
  */
5
5
  import React from "react";
6
- import type { SwitchClassKey, SwitchProps } from "@material-ui/core/Switch";
7
- interface Styles extends Partial<Record<SwitchClassKey, string>> {
8
- focusVisible?: string;
9
- }
10
- export interface SwitcherProps extends SwitchProps {
11
- classes: Styles;
6
+ export interface SwitcherProps {
7
+ disabled?: boolean;
8
+ children?: React.ReactNode;
9
+ checked?: boolean;
10
+ onChange?: (event: React.ChangeEvent<HTMLInputElement>, checked: boolean) => void;
11
+ name?: string;
12
12
  }
13
13
  /**
14
14
  * @deprecated Use <Switch/> instead from "../switch.tsx".
15
15
  */
16
- export declare const Switcher: React.ComponentType<Pick<SwitcherProps, "key" | "value" | "id" | "name" | "className" | "form" | "slot" | "style" | "title" | "size" | "type" | "action" | "ref" | "autoFocus" | "checked" | "disabled" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "placeholder" | "readOnly" | "required" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "lang" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "icon" | "inputProps" | "innerRef" | "checkedIcon" | "disableFocusRipple" | "edge" | "buttonRef" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "onFocusVisible" | "TouchRippleProps" | "inputRef"> & import("@material-ui/core/styles").StyledComponentProps<"track" | "checked" | "root" | "thumb" | "focusVisible" | "switchBase">>;
17
- export {};
16
+ export declare function Switcher({ disabled, checked, onChange, name, children }: SwitcherProps): JSX.Element;
@@ -3,9 +3,10 @@
3
3
  * Licensed under MIT License. See LICENSE in root directory for more information.
4
4
  */
5
5
  import type { LensRendererExtension } from "../../../extensions/lens-renderer-extension";
6
+ import type { ObservableMap } from "mobx";
6
7
  import type { RenderResult } from "@testing-library/react";
7
8
  import type { KubeResource } from "../../../common/rbac";
8
- import type { DiContainer } from "@ogre-tools/injectable";
9
+ import type { DiContainer, Injectable } from "@ogre-tools/injectable";
9
10
  import type { MenuItemOpts } from "../../../main/menu/application-menu-items.injectable";
10
11
  import type { MenuItemConstructorOptions } from "electron";
11
12
  import type { NavigateToHelmCharts } from "../../../common/front-end-routing/routes/cluster/helm/charts/navigate-to-helm-charts.injectable";
@@ -13,33 +14,37 @@ import type { MinimalTrayMenuItem } from "../../../main/tray/electron-tray/elect
13
14
  import type { Route } from "../../../common/front-end-routing/front-end-route-injection-token";
14
15
  import type { NavigateToRouteOptions } from "../../../common/front-end-routing/navigate-to-route-injection-token";
15
16
  import type { LensMainExtension } from "../../../extensions/lens-main-extension";
16
- declare type Callback = (dis: DiContainers) => void | Promise<void>;
17
- declare type EnableExtensions<T> = (...extensions: T[]) => void;
18
- declare type DisableExtensions<T> = (...extensions: T[]) => void;
17
+ import type { LensWindow } from "../../../main/start-main-application/lens-window/application-window/create-lens-window.injectable";
18
+ import type { FakeExtensionOptions } from "./get-extension-fake";
19
+ declare type Callback = (di: DiContainer) => void | Promise<void>;
20
+ declare type LensWindowWithHelpers = LensWindow & {
21
+ rendered: RenderResult;
22
+ di: DiContainer;
23
+ };
19
24
  export interface ApplicationBuilder {
20
- dis: DiContainers;
25
+ mainDi: DiContainer;
21
26
  setEnvironmentToClusterFrame: () => ApplicationBuilder;
22
27
  extensions: {
23
- renderer: {
24
- enable: EnableExtensions<LensRendererExtension>;
25
- disable: DisableExtensions<LensRendererExtension>;
26
- };
27
- main: {
28
- enable: EnableExtensions<LensMainExtension>;
29
- disable: DisableExtensions<LensMainExtension>;
30
- };
31
- enable: (...extensions: {
32
- renderer: LensRendererExtension;
28
+ enable: (...extensions: FakeExtensionOptions[]) => void;
29
+ disable: (...extensions: FakeExtensionOptions[]) => void;
30
+ get: (id: string) => {
33
31
  main: LensMainExtension;
34
- }[]) => void;
35
- disable: (...extensions: {
36
- renderer: LensRendererExtension;
37
- main: LensMainExtension;
38
- }[]) => void;
32
+ applicationWindows: Record<string, LensRendererExtension> & {
33
+ only: LensRendererExtension;
34
+ };
35
+ };
36
+ };
37
+ applicationWindow: {
38
+ closeAll: () => void;
39
+ only: LensWindowWithHelpers;
40
+ get: (id: string) => LensWindowWithHelpers;
41
+ getAll: () => LensWindowWithHelpers[];
42
+ create: (id: string) => LensWindowWithHelpers;
39
43
  };
40
44
  allowKubeResource: (resourceName: KubeResource) => ApplicationBuilder;
41
45
  beforeApplicationStart: (callback: Callback) => ApplicationBuilder;
42
- beforeRender: (callback: Callback) => ApplicationBuilder;
46
+ beforeWindowStart: (callback: Callback) => ApplicationBuilder;
47
+ startHidden: () => Promise<void>;
43
48
  render: () => Promise<RenderResult>;
44
49
  tray: {
45
50
  click: (id: string) => Promise<void>;
@@ -60,20 +65,18 @@ export interface ApplicationBuilder {
60
65
  helmCharts: {
61
66
  navigate: NavigateToHelmCharts;
62
67
  };
68
+ navigateWith: (token: Injectable<() => void, any, void>) => void;
63
69
  select: {
64
- openMenu: (id: string) => ({
70
+ openMenu: (id: string) => {
65
71
  selectOption: (labelText: string) => void;
66
- });
72
+ };
67
73
  selectOption: (menuId: string, labelText: string) => void;
68
74
  getValue: (menuId: string) => string;
69
75
  };
70
76
  }
71
- interface DiContainers {
72
- rendererDi: DiContainer;
73
- mainDi: DiContainer;
74
- }
75
77
  export declare const getApplicationBuilder: () => ApplicationBuilder;
76
78
  export declare type ToFlatChildren = (opts: MenuItemConstructorOptions) => (MenuItemOpts & {
77
79
  path: string;
78
80
  })[];
81
+ export declare const rendererExtensionsStateInjectable: Injectable<ObservableMap<string, LensRendererExtension>, unknown, void>;
79
82
  export {};
@@ -1,6 +1,6 @@
1
- import type { ApplicationBuilder } from "./get-application-builder";
2
1
  import { LensMainExtension } from "../../../extensions/lens-main-extension";
3
2
  import { LensRendererExtension } from "../../../extensions/lens-renderer-extension";
3
+ import type { DiContainer } from "@ogre-tools/injectable";
4
4
  export declare class TestExtensionMain extends LensMainExtension {
5
5
  }
6
6
  export declare class TestExtensionRenderer extends LensRendererExtension {
@@ -11,8 +11,5 @@ export interface FakeExtensionOptions {
11
11
  rendererOptions?: Partial<LensRendererExtension>;
12
12
  mainOptions?: Partial<LensMainExtension>;
13
13
  }
14
- export declare type GetExtensionFake = (arg: FakeExtensionOptions) => {
15
- main: TestExtensionMain;
16
- renderer: TestExtensionRenderer;
17
- };
18
- export declare const getExtensionFakeFor: (builder: ApplicationBuilder) => GetExtensionFake;
14
+ export declare const getExtensionFakeForMain: (di: DiContainer, id: string, name: string, options: Partial<LensMainExtension>) => TestExtensionMain;
15
+ export declare const getExtensionFakeForRenderer: (di: DiContainer, id: string, name: string, options: Partial<LensRendererExtension>) => TestExtensionRenderer;
@@ -0,0 +1,5 @@
1
+ declare const _default: {
2
+ injectable: import("@ogre-tools/injectable").Injectable<import("./kube-watch-api").SubscribeStores, unknown, void>;
3
+ overridingInstantiate: import("@ogre-tools/injectable").Instantiate<import("./kube-watch-api").SubscribeStores, void>;
4
+ };
5
+ export default _default;
@@ -3,11 +3,8 @@
3
3
  * Licensed under MIT License. See LICENSE in root directory for more information.
4
4
  */
5
5
  import * as proto from "../../../common/protocol-handler";
6
- import type { ExtensionLoader } from "../../../extensions/extension-loader";
7
- import type { ExtensionsStore } from "../../../extensions/extensions-store/extensions-store";
8
- interface Dependencies {
9
- extensionLoader: ExtensionLoader;
10
- extensionsStore: ExtensionsStore;
6
+ import type { LensProtocolRouterDependencies } from "../../../common/protocol-handler";
7
+ interface Dependencies extends LensProtocolRouterDependencies {
11
8
  }
12
9
  export declare class LensProtocolRouterRenderer extends proto.LensProtocolRouter {
13
10
  protected dependencies: Dependencies;
@@ -0,0 +1,2 @@
1
+ declare const activeThemeInjectable: import("@ogre-tools/injectable").Injectable<import("mobx").IComputedValue<import("./store").LensTheme>, unknown, void>;
2
+ export default activeThemeInjectable;
@@ -2,6 +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
- import type { Theme } from "./store";
6
- declare const lensDarkTheme: Theme;
5
+ import type { LensTheme } from "./store";
6
+ declare const lensDarkTheme: LensTheme;
7
7
  export default lensDarkTheme;
@@ -2,6 +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
- import type { Theme } from "./store";
6
- declare const lensLightTheme: Theme;
5
+ import type { LensTheme } from "./store";
6
+ declare const lensLightTheme: LensTheme;
7
7
  export default lensLightTheme;
@@ -5,7 +5,7 @@
5
5
  import type { MonacoTheme } from "../components/monaco-editor";
6
6
  import type { IpcRenderer } from "electron";
7
7
  export declare type ThemeId = string;
8
- export interface Theme {
8
+ export interface LensTheme {
9
9
  name: string;
10
10
  type: "dark" | "light";
11
11
  colors: Record<string, string>;
@@ -30,13 +30,13 @@ export declare class ThemeStore {
30
30
  private get activeThemeId();
31
31
  private get terminalThemeId();
32
32
  private readonly defaultTheme;
33
- get activeTheme(): Theme;
33
+ get activeTheme(): LensTheme;
34
34
  private get terminalColors();
35
35
  get xtermColors(): Record<string, string>;
36
- get themes(): import("type-fest/source/readonly-deep").ReadonlyMapDeep<string, Theme>;
36
+ get themes(): import("type-fest/source/readonly-deep").ReadonlyMapDeep<string, LensTheme>;
37
37
  constructor(dependencies: Dependencies);
38
38
  init(): Promise<void>;
39
- getThemeById(themeId: ThemeId): Theme | undefined;
39
+ getThemeById(themeId: ThemeId): LensTheme | undefined;
40
40
  protected applyActiveTheme(): void;
41
41
  }
42
42
  export {};
@@ -0,0 +1,5 @@
1
+ declare const _default: {
2
+ injectable: import("@ogre-tools/injectable").Injectable<Electron.IpcRenderer, unknown, void>;
3
+ overridingInstantiate: import("@ogre-tools/injectable").Instantiate<Electron.IpcRenderer, void>;
4
+ };
5
+ export default _default;
@@ -3,4 +3,4 @@
3
3
  * Licensed under MIT License. See LICENSE in root directory for more information.
4
4
  */
5
5
  import type { DiContainer } from "@ogre-tools/injectable";
6
- export declare const overrideChannels: (mainDi: DiContainer) => (windowDi: DiContainer) => void;
6
+ export declare const overrideChannels: (mainDi: DiContainer) => (windowDi: DiContainer, windowId: string) => void;
@@ -1,2 +1,2 @@
1
1
  import type { DiContainer } from "@ogre-tools/injectable";
2
- export declare const overrideMessagingFromMainToWindow: (mainDi: DiContainer) => (windowDi: DiContainer) => void;
2
+ export declare const overrideMessagingFromMainToWindow: (mainDi: DiContainer) => (windowDi: DiContainer, windowId: string) => void;
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@k8slens/extensions",
3
3
  "productName": "OpenLens extensions",
4
4
  "description": "OpenLens - Open Source Kubernetes IDE: extensions",
5
- "version": "6.0.1-git.17ddee2bde.0",
5
+ "version": "6.0.1-git.27871f57b6.0",
6
6
  "copyright": "© 2022 OpenLens Authors",
7
7
  "license": "MIT",
8
8
  "main": "dist/src/extensions/extension-api.js",
@@ -1,11 +0,0 @@
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 { HelmRepo } from "../../../common/helm/helm-repo";
6
- export declare class HelmChartManager {
7
- private repo;
8
- constructor(repo: HelmRepo);
9
- static forRepo(repo: HelmRepo): HelmChartManager;
10
- charts(): Promise<any>;
11
- }
@@ -1,2 +0,0 @@
1
- declare const applicationWindowInjectable: import("@ogre-tools/injectable").Injectable<import("./lens-window-injection-token").LensWindow, import("./lens-window-injection-token").LensWindow, void>;
2
- export default applicationWindowInjectable;
@@ -1,16 +0,0 @@
1
- import type { ClusterFrameInfo } from "../../../../common/cluster-frames";
2
- export interface SendToViewArgs {
3
- channel: string;
4
- frameInfo?: ClusterFrameInfo;
5
- data?: unknown[];
6
- }
7
- export interface LensWindow {
8
- id: string;
9
- start: () => Promise<void>;
10
- close: () => void;
11
- show: () => void;
12
- send: (args: SendToViewArgs) => void;
13
- isVisible: boolean;
14
- isStarting: boolean;
15
- }
16
- export declare const lensWindowInjectionToken: import("@ogre-tools/injectable").InjectionToken<LensWindow, void>;
@@ -1,2 +0,0 @@
1
- declare const reloadAllWindowsInjectable: import("@ogre-tools/injectable").Injectable<() => void, unknown, void>;
2
- export default reloadAllWindowsInjectable;
@@ -1,3 +0,0 @@
1
- import type { LensWindow } from "./application-window/lens-window-injection-token";
2
- declare const reloadWindowInjectable: import("@ogre-tools/injectable").Injectable<() => void, unknown, LensWindow>;
3
- export default reloadWindowInjectable;
@@ -1,12 +0,0 @@
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 { SetRequired } from "type-fest";
6
- import { LensRendererExtension } from "../../../extensions/lens-renderer-extension";
7
- import type { ApplicationBuilder } from "./get-application-builder";
8
- export declare class TestExtension extends LensRendererExtension {
9
- }
10
- export declare type FakeExtensionData = SetRequired<Partial<LensRendererExtension>, "id" | "name">;
11
- export declare type GetRendererExtensionFake = (fakeExtensionData: FakeExtensionData) => TestExtension;
12
- export declare const getRendererExtensionFakeFor: (builder: ApplicationBuilder) => GetRendererExtensionFake;