@k8slens/extensions 5.4.3 → 5.4.6
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.
- package/dist/src/common/__tests__/catalog-entity.test.d.ts +5 -0
- package/dist/src/common/catalog/catalog-entity.d.ts +4 -0
- package/dist/src/common/k8s-api/api-base.d.ts +6 -0
- package/dist/src/common/k8s-api/api-kube.d.ts +6 -0
- package/dist/src/common/k8s-api/index.d.ts +2 -5
- package/dist/src/common/k8s-api/kube-watch-event.d.ts +8 -4
- package/dist/src/common/utils/__tests__/convert-memory.test.d.ts +5 -0
- package/dist/src/common/utils/convertMemory.d.ts +8 -1
- package/dist/src/common/utils/iter.d.ts +8 -0
- package/dist/src/common/vars.d.ts +6 -0
- package/dist/src/extensions/extension-api.js +67 -19
- package/dist/src/migrations/weblinks-store/5.1.4.d.ts +6 -0
- package/dist/src/migrations/weblinks-store/5.4.5-beta.1.d.ts +7 -0
- package/dist/src/migrations/weblinks-store/currentVersion.d.ts +7 -0
- package/dist/src/renderer/components/chart/pie-chart.d.ts +9 -0
- package/dist/src/renderer/components/cluster-manager/cluster-status.d.ts +1 -0
- package/dist/src/renderer/components/layout/sidebar-cluster.d.ts +2 -2
- package/dist/src/renderer/components/menu/menu.d.ts +1 -1
- package/dist/src/renderer/components/tooltip/tooltip.d.ts +1 -0
- package/package.json +1 -1
|
@@ -139,6 +139,10 @@ export declare abstract class CatalogCategory extends CatalogCategory_base {
|
|
|
139
139
|
* Get the ID of this category
|
|
140
140
|
*/
|
|
141
141
|
getId(): string;
|
|
142
|
+
/**
|
|
143
|
+
* Get the name of this category
|
|
144
|
+
*/
|
|
145
|
+
getName(): string;
|
|
142
146
|
/**
|
|
143
147
|
* Add a filter for menu items of catalogAddMenu
|
|
144
148
|
* @param fn The function that should return a truthy value if that menu item should be displayed
|
|
@@ -2,8 +2,5 @@
|
|
|
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
|
-
|
|
7
|
-
declare let apiBase: JsonApi;
|
|
8
|
-
declare let apiKube: KubeJsonApi;
|
|
9
|
-
export { apiBase, apiKube, };
|
|
5
|
+
export { apiBase } from "./api-base";
|
|
6
|
+
export { apiKube } from "./api-kube";
|
|
@@ -3,7 +3,11 @@
|
|
|
3
3
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
4
4
|
*/
|
|
5
5
|
import type { KubeJsonApiData } from "./kube-json-api";
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
import type { KubeStatusData } from "./kube-object";
|
|
7
|
+
export declare type IKubeWatchEvent<T extends KubeJsonApiData> = {
|
|
8
|
+
type: "ADDED" | "MODIFIED" | "DELETED";
|
|
9
|
+
object: T;
|
|
10
|
+
} | {
|
|
11
|
+
type: "ERROR";
|
|
12
|
+
object: KubeStatusData;
|
|
13
|
+
};
|
|
@@ -3,4 +3,11 @@
|
|
|
3
3
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
4
4
|
*/
|
|
5
5
|
export declare function unitsToBytes(value: string): number;
|
|
6
|
-
export
|
|
6
|
+
export interface BytesToUnitesOptions {
|
|
7
|
+
/**
|
|
8
|
+
* The number of decimal places. MUST be an integer. MUST be in the range [0, 20].
|
|
9
|
+
* @default 1
|
|
10
|
+
*/
|
|
11
|
+
precision?: number;
|
|
12
|
+
}
|
|
13
|
+
export declare function bytesToUnits(bytes: number, { precision }?: BytesToUnitesOptions): string;
|
|
@@ -77,6 +77,14 @@ export declare function reduce<T, R extends Iterable<any>>(src: Iterable<T>, red
|
|
|
77
77
|
* @returns The concatenated entries of `src` interspersed with copies of `connector`
|
|
78
78
|
*/
|
|
79
79
|
export declare function join(src: Iterable<string>, connector?: string): string;
|
|
80
|
+
/**
|
|
81
|
+
* Returns the next value after iterating over the iterable `index` times.
|
|
82
|
+
*
|
|
83
|
+
* For example: `nth(["a", "b"], 0)` will return `"a"`
|
|
84
|
+
* For example: `nth(["a", "b"], 1)` will return `"b"`
|
|
85
|
+
* For example: `nth(["a", "b"], 2)` will return `undefined`
|
|
86
|
+
*/
|
|
87
|
+
export declare function nth<T>(src: Iterable<T>, index: number): T | undefined;
|
|
80
88
|
/**
|
|
81
89
|
* Iterate through `src` and return `true` if `fn` returns a thruthy value for every yielded value.
|
|
82
90
|
* Otherwise, return `false`. This function short circuits.
|
|
@@ -34,6 +34,12 @@ export declare const apiKubePrefix: string;
|
|
|
34
34
|
export declare const issuesTrackerUrl: string;
|
|
35
35
|
export declare const slackUrl: string;
|
|
36
36
|
export declare const supportUrl: string;
|
|
37
|
+
export declare const lensWebsiteWeblinkId = "lens-website-link";
|
|
38
|
+
export declare const lensDocumentationWeblinkId = "lens-documentation-link";
|
|
39
|
+
export declare const lensSlackWeblinkId = "lens-slack-link";
|
|
40
|
+
export declare const lensTwitterWeblinkId = "lens-twitter-link";
|
|
41
|
+
export declare const lensBlogWeblinkId = "lens-blog-link";
|
|
42
|
+
export declare const kubernetesDocumentationWeblinkId = "kubernetes-documentation-link";
|
|
37
43
|
export declare const appSemVer: SemVer;
|
|
38
44
|
export declare const docsUrl: string;
|
|
39
45
|
export declare const sentryDsn: string;
|
|
@@ -38520,7 +38520,7 @@ eval("class Node {\n\t/// value;\n\t/// next;\n\n\tconstructor(value) {\n\t\tthi
|
|
|
38520
38520
|
/*! exports provided: name, productName, description, homepage, version, main, copyright, license, author, scripts, config, engines, jest, build, dependencies, devDependencies, default */
|
|
38521
38521
|
/***/ (function(module) {
|
|
38522
38522
|
|
|
38523
|
-
eval("module.exports = JSON.parse(\"{\\\"name\\\":\\\"open-lens\\\",\\\"productName\\\":\\\"OpenLens\\\",\\\"description\\\":\\\"OpenLens - Open Source IDE for Kubernetes\\\",\\\"homepage\\\":\\\"https://github.com/lensapp/lens\\\",\\\"version\\\":\\\"5.4.3\\\",\\\"main\\\":\\\"static/build/main.js\\\",\\\"copyright\\\":\\\"© 2021 OpenLens Authors\\\",\\\"license\\\":\\\"MIT\\\",\\\"author\\\":{\\\"name\\\":\\\"OpenLens Authors\\\",\\\"email\\\":\\\"info@k8slens.dev\\\"},\\\"scripts\\\":{\\\"dev\\\":\\\"concurrently -i -k \\\\\\\"yarn run dev-run -C\\\\\\\" yarn:dev:*\\\",\\\"dev-build\\\":\\\"concurrently yarn:compile:*\\\",\\\"debug-build\\\":\\\"concurrently yarn:compile:main yarn:compile:extension-types\\\",\\\"dev-run\\\":\\\"nodemon --watch static/build/main.js --exec \\\\\\\"electron --remote-debugging-port=9223 --inspect .\\\\\\\"\\\",\\\"dev:main\\\":\\\"yarn run compile:main --watch\\\",\\\"dev:renderer\\\":\\\"yarn run webpack-dev-server --config webpack.renderer.ts\\\",\\\"dev:extension-types\\\":\\\"yarn run compile:extension-types --watch\\\",\\\"compile\\\":\\\"env NODE_ENV=production concurrently yarn:compile:*\\\",\\\"compile:main\\\":\\\"yarn run webpack --config webpack.main.ts\\\",\\\"compile:renderer\\\":\\\"yarn run webpack --config webpack.renderer.ts\\\",\\\"compile:extension-types\\\":\\\"yarn run webpack --config webpack.extensions.ts\\\",\\\"npm:fix-build-version\\\":\\\"yarn run ts-node build/set_build_version.ts\\\",\\\"npm:fix-package-version\\\":\\\"yarn run ts-node build/set_npm_version.ts\\\",\\\"build:linux\\\":\\\"yarn run compile && electron-builder --linux --dir\\\",\\\"build:mac\\\":\\\"yarn run compile && electron-builder --mac --dir\\\",\\\"build:win\\\":\\\"yarn run compile && electron-builder --win --dir\\\",\\\"integration\\\":\\\"jest --runInBand --detectOpenHandles --forceExit integration\\\",\\\"dist\\\":\\\"yarn run compile && electron-builder --publish onTag\\\",\\\"dist:dir\\\":\\\"yarn run dist --dir -c.compression=store -c.mac.identity=null\\\",\\\"download-bins\\\":\\\"concurrently yarn:download:*\\\",\\\"download:kubectl\\\":\\\"yarn run ts-node build/download_kubectl.ts\\\",\\\"download:helm\\\":\\\"yarn run ts-node build/download_helm.ts\\\",\\\"build:tray-icons\\\":\\\"yarn run ts-node build/build_tray_icon.ts\\\",\\\"build:theme-vars\\\":\\\"yarn run ts-node build/build_theme_vars.ts\\\",\\\"lint\\\":\\\"PROD=true yarn run eslint --ext js,ts,tsx --max-warnings=0 .\\\",\\\"lint:fix\\\":\\\"yarn run lint --fix\\\",\\\"mkdocs-serve-local\\\":\\\"docker build -t mkdocs-serve-local:latest mkdocs/ && docker run --rm -it -p 8000:8000 -v ${PWD}:/docs mkdocs-serve-local:latest\\\",\\\"verify-docs\\\":\\\"docker build -t mkdocs-serve-local:latest mkdocs/ && docker run --rm -v ${PWD}:/docs mkdocs-serve-local:latest build --strict\\\",\\\"typedocs-extensions-api\\\":\\\"yarn run typedoc src/extensions/extension-api.ts\\\",\\\"version-checkout\\\":\\\"cat package.json | jq '.version' -r | xargs printf \\\\\\\"release/v%s\\\\\\\" | xargs git checkout -b\\\",\\\"version-commit\\\":\\\"cat package.json | jq '.version' -r | xargs printf \\\\\\\"release v%s\\\\\\\" | git commit --no-edit -s -F -\\\",\\\"version\\\":\\\"yarn run version-checkout && git add package.json && yarn run version-commit\\\",\\\"postversion\\\":\\\"git push --set-upstream ${GIT_REMOTE:-origin} release/v$npm_package_version\\\"},\\\"config\\\":{\\\"bundledKubectlVersion\\\":\\\"1.23.3\\\",\\\"bundledHelmVersion\\\":\\\"3.7.2\\\",\\\"sentryDsn\\\":\\\"\\\"},\\\"engines\\\":{\\\"node\\\":\\\">=14 <15\\\"},\\\"jest\\\":{\\\"collectCoverage\\\":false,\\\"verbose\\\":true,\\\"transform\\\":{\\\"^.+\\\\\\\\.tsx?$\\\":\\\"ts-jest\\\"},\\\"moduleNameMapper\\\":{\\\"\\\\\\\\.(css|scss)$\\\":\\\"<rootDir>/__mocks__/styleMock.ts\\\",\\\"\\\\\\\\.(svg)$\\\":\\\"<rootDir>/__mocks__/imageMock.ts\\\"},\\\"modulePathIgnorePatterns\\\":[\\\"<rootDir>/dist\\\",\\\"<rootDir>/src/extensions/npm\\\"],\\\"setupFiles\\\":[\\\"<rootDir>/src/jest.setup.ts\\\",\\\"jest-canvas-mock\\\"],\\\"globals\\\":{\\\"ts-jest\\\":{\\\"isolatedModules\\\":true}}},\\\"build\\\":{\\\"generateUpdatesFilesForAllChannels\\\":true,\\\"files\\\":[\\\"static/build/main.js\\\"],\\\"afterSign\\\":\\\"build/notarize.js\\\",\\\"extraResources\\\":[{\\\"from\\\":\\\"locales/\\\",\\\"to\\\":\\\"locales/\\\",\\\"filter\\\":\\\"**/*.js\\\"},{\\\"from\\\":\\\"static/\\\",\\\"to\\\":\\\"static/\\\",\\\"filter\\\":\\\"!**/main.js\\\"},{\\\"from\\\":\\\"build/tray\\\",\\\"to\\\":\\\"static/icons\\\",\\\"filter\\\":\\\"*.png\\\"},{\\\"from\\\":\\\"extensions/\\\",\\\"to\\\":\\\"./extensions/\\\",\\\"filter\\\":[\\\"**/*.tgz\\\",\\\"**/package.json\\\",\\\"!**/node_modules\\\"]},{\\\"from\\\":\\\"templates/\\\",\\\"to\\\":\\\"./templates/\\\",\\\"filter\\\":\\\"**/*.yaml\\\"},\\\"LICENSE\\\"],\\\"linux\\\":{\\\"category\\\":\\\"Network\\\",\\\"artifactName\\\":\\\"${productName}-${version}.${arch}.${ext}\\\",\\\"target\\\":[\\\"deb\\\",\\\"rpm\\\",\\\"AppImage\\\"],\\\"extraResources\\\":[{\\\"from\\\":\\\"binaries/client/linux/${arch}/kubectl\\\",\\\"to\\\":\\\"./${arch}/kubectl\\\"},{\\\"from\\\":\\\"binaries/client/${arch}/helm3/helm3\\\",\\\"to\\\":\\\"./helm3/helm3\\\"}]},\\\"rpm\\\":{\\\"fpm\\\":[\\\"--rpm-rpmbuild-define=%define _build_id_links none\\\"]},\\\"mac\\\":{\\\"hardenedRuntime\\\":true,\\\"gatekeeperAssess\\\":false,\\\"entitlements\\\":\\\"build/entitlements.mac.plist\\\",\\\"entitlementsInherit\\\":\\\"build/entitlements.mac.plist\\\",\\\"extraResources\\\":[{\\\"from\\\":\\\"binaries/client/darwin/${arch}/kubectl\\\",\\\"to\\\":\\\"./${arch}/kubectl\\\"},{\\\"from\\\":\\\"binaries/client/${arch}/helm3/helm3\\\",\\\"to\\\":\\\"./helm3/helm3\\\"}]},\\\"win\\\":{\\\"target\\\":[\\\"nsis\\\"],\\\"extraResources\\\":[{\\\"from\\\":\\\"binaries/client/windows/x64/kubectl.exe\\\",\\\"to\\\":\\\"./x64/kubectl.exe\\\"},{\\\"from\\\":\\\"binaries/client/windows/ia32/kubectl.exe\\\",\\\"to\\\":\\\"./ia32/kubectl.exe\\\"},{\\\"from\\\":\\\"binaries/client/x64/helm3/helm3.exe\\\",\\\"to\\\":\\\"./helm3/helm3.exe\\\"}]},\\\"nsis\\\":{\\\"include\\\":\\\"build/installer.nsh\\\",\\\"oneClick\\\":false,\\\"allowElevation\\\":true,\\\"createStartMenuShortcut\\\":true,\\\"allowToChangeInstallationDirectory\\\":true},\\\"protocols\\\":{\\\"name\\\":\\\"Lens Protocol Handler\\\",\\\"schemes\\\":[\\\"lens\\\"],\\\"role\\\":\\\"Viewer\\\"}},\\\"dependencies\\\":{\\\"@hapi/call\\\":\\\"^8.0.1\\\",\\\"@hapi/subtext\\\":\\\"^7.0.3\\\",\\\"@kubernetes/client-node\\\":\\\"^0.16.1\\\",\\\"@ogre-tools/injectable\\\":\\\"3.2.1\\\",\\\"@ogre-tools/injectable-react\\\":\\\"3.2.1\\\",\\\"@sentry/electron\\\":\\\"^2.5.4\\\",\\\"@sentry/integrations\\\":\\\"^6.15.0\\\",\\\"@types/circular-dependency-plugin\\\":\\\"5.0.4\\\",\\\"abort-controller\\\":\\\"^3.0.0\\\",\\\"auto-bind\\\":\\\"^4.0.0\\\",\\\"autobind-decorator\\\":\\\"^2.4.0\\\",\\\"await-lock\\\":\\\"^2.1.0\\\",\\\"byline\\\":\\\"^5.0.0\\\",\\\"chokidar\\\":\\\"^3.4.3\\\",\\\"conf\\\":\\\"^7.1.2\\\",\\\"crypto-js\\\":\\\"^4.1.1\\\",\\\"electron-devtools-installer\\\":\\\"^3.2.0\\\",\\\"electron-updater\\\":\\\"^4.6.1\\\",\\\"electron-window-state\\\":\\\"^5.0.3\\\",\\\"filehound\\\":\\\"^1.17.5\\\",\\\"fs-extra\\\":\\\"^9.0.1\\\",\\\"glob-to-regexp\\\":\\\"^0.4.1\\\",\\\"got\\\":\\\"^11.8.3\\\",\\\"grapheme-splitter\\\":\\\"^1.0.4\\\",\\\"handlebars\\\":\\\"^4.7.7\\\",\\\"http-proxy\\\":\\\"^1.18.1\\\",\\\"immer\\\":\\\"^9.0.6\\\",\\\"joi\\\":\\\"^17.5.0\\\",\\\"js-yaml\\\":\\\"^4.1.0\\\",\\\"jsdom\\\":\\\"^16.7.0\\\",\\\"jsonpath\\\":\\\"^1.1.1\\\",\\\"lodash\\\":\\\"^4.17.15\\\",\\\"mac-ca\\\":\\\"^1.0.6\\\",\\\"marked\\\":\\\"^4.0.10\\\",\\\"md5-file\\\":\\\"^5.0.0\\\",\\\"mobx\\\":\\\"^6.3.7\\\",\\\"mobx-observable-history\\\":\\\"^2.0.3\\\",\\\"mobx-react\\\":\\\"^7.2.1\\\",\\\"mock-fs\\\":\\\"^5.1.2\\\",\\\"moment\\\":\\\"^2.29.1\\\",\\\"moment-timezone\\\":\\\"^0.5.34\\\",\\\"monaco-editor\\\":\\\"^0.29.1\\\",\\\"monaco-editor-webpack-plugin\\\":\\\"^5.0.0\\\",\\\"node-fetch\\\":\\\"lensapp/node-fetch#2.x\\\",\\\"node-pty\\\":\\\"^0.10.1\\\",\\\"npm\\\":\\\"^6.14.15\\\",\\\"p-limit\\\":\\\"^3.1.0\\\",\\\"path-to-regexp\\\":\\\"^6.2.0\\\",\\\"proper-lockfile\\\":\\\"^4.1.2\\\",\\\"react\\\":\\\"^17.0.2\\\",\\\"react-dom\\\":\\\"^17.0.2\\\",\\\"react-material-ui-carousel\\\":\\\"^2.3.8\\\",\\\"react-router\\\":\\\"^5.2.0\\\",\\\"react-virtualized-auto-sizer\\\":\\\"^1.0.6\\\",\\\"readable-stream\\\":\\\"^3.6.0\\\",\\\"request\\\":\\\"^2.88.2\\\",\\\"request-promise-native\\\":\\\"^1.0.9\\\",\\\"rfc6902\\\":\\\"^4.0.2\\\",\\\"semver\\\":\\\"^7.3.2\\\",\\\"shell-env\\\":\\\"^3.0.1\\\",\\\"spdy\\\":\\\"^4.0.2\\\",\\\"tar\\\":\\\"^6.1.11\\\",\\\"tcp-port-used\\\":\\\"^1.0.2\\\",\\\"tempy\\\":\\\"1.0.1\\\",\\\"url-parse\\\":\\\"^1.5.3\\\",\\\"uuid\\\":\\\"^8.3.2\\\",\\\"win-ca\\\":\\\"^3.4.5\\\",\\\"winston\\\":\\\"^3.3.3\\\",\\\"winston-console-format\\\":\\\"^1.0.8\\\",\\\"winston-transport-browserconsole\\\":\\\"^1.0.5\\\",\\\"ws\\\":\\\"^7.5.5\\\"},\\\"devDependencies\\\":{\\\"@async-fn/jest\\\":\\\"1.5.3\\\",\\\"@material-ui/core\\\":\\\"^4.12.3\\\",\\\"@material-ui/icons\\\":\\\"^4.11.2\\\",\\\"@material-ui/lab\\\":\\\"^4.0.0-alpha.60\\\",\\\"@pmmmwh/react-refresh-webpack-plugin\\\":\\\"^0.4.3\\\",\\\"@sentry/types\\\":\\\"^6.14.1\\\",\\\"@testing-library/jest-dom\\\":\\\"^5.16.1\\\",\\\"@testing-library/react\\\":\\\"^11.2.7\\\",\\\"@testing-library/user-event\\\":\\\"^13.5.0\\\",\\\"@types/byline\\\":\\\"^4.2.33\\\",\\\"@types/chart.js\\\":\\\"^2.9.34\\\",\\\"@types/color\\\":\\\"^3.0.2\\\",\\\"@types/crypto-js\\\":\\\"^3.1.47\\\",\\\"@types/dompurify\\\":\\\"^2.3.1\\\",\\\"@types/electron-devtools-installer\\\":\\\"^2.2.0\\\",\\\"@types/fs-extra\\\":\\\"^9.0.13\\\",\\\"@types/glob-to-regexp\\\":\\\"^0.4.1\\\",\\\"@types/hoist-non-react-statics\\\":\\\"^3.3.1\\\",\\\"@types/html-webpack-plugin\\\":\\\"^3.2.6\\\",\\\"@types/http-proxy\\\":\\\"^1.17.7\\\",\\\"@types/jest\\\":\\\"^26.0.24\\\",\\\"@types/js-yaml\\\":\\\"^4.0.5\\\",\\\"@types/jsdom\\\":\\\"^16.2.13\\\",\\\"@types/jsonpath\\\":\\\"^0.2.0\\\",\\\"@types/lodash\\\":\\\"^4.14.177\\\",\\\"@types/marked\\\":\\\"^4.0.1\\\",\\\"@types/md5-file\\\":\\\"^4.0.2\\\",\\\"@types/mini-css-extract-plugin\\\":\\\"^0.9.1\\\",\\\"@types/mock-fs\\\":\\\"^4.13.1\\\",\\\"@types/node\\\":\\\"14.17.33\\\",\\\"@types/node-fetch\\\":\\\"^2.5.12\\\",\\\"@types/npm\\\":\\\"^2.0.32\\\",\\\"@types/progress-bar-webpack-plugin\\\":\\\"^2.1.2\\\",\\\"@types/proper-lockfile\\\":\\\"^4.1.2\\\",\\\"@types/randomcolor\\\":\\\"^0.5.6\\\",\\\"@types/react\\\":\\\"^17.0.34\\\",\\\"@types/react-beautiful-dnd\\\":\\\"^13.1.2\\\",\\\"@types/react-dom\\\":\\\"^17.0.11\\\",\\\"@types/react-router-dom\\\":\\\"^5.3.2\\\",\\\"@types/react-select\\\":\\\"3.1.2\\\",\\\"@types/react-table\\\":\\\"^7.7.9\\\",\\\"@types/react-virtualized-auto-sizer\\\":\\\"^1.0.1\\\",\\\"@types/react-window\\\":\\\"^1.8.5\\\",\\\"@types/readable-stream\\\":\\\"^2.3.12\\\",\\\"@types/request\\\":\\\"^2.48.7\\\",\\\"@types/request-promise-native\\\":\\\"^1.0.18\\\",\\\"@types/semver\\\":\\\"^7.3.9\\\",\\\"@types/sharp\\\":\\\"^0.29.4\\\",\\\"@types/spdy\\\":\\\"^3.4.5\\\",\\\"@types/tar\\\":\\\"^4.0.5\\\",\\\"@types/tcp-port-used\\\":\\\"^1.0.0\\\",\\\"@types/tempy\\\":\\\"^0.3.0\\\",\\\"@types/triple-beam\\\":\\\"^1.3.2\\\",\\\"@types/url-parse\\\":\\\"^1.4.5\\\",\\\"@types/uuid\\\":\\\"^8.3.3\\\",\\\"@types/webpack\\\":\\\"^4.41.32\\\",\\\"@types/webpack-dev-server\\\":\\\"^3.11.6\\\",\\\"@types/webpack-env\\\":\\\"^1.16.3\\\",\\\"@types/webpack-node-externals\\\":\\\"^1.7.1\\\",\\\"@typescript-eslint/eslint-plugin\\\":\\\"^5.10.1\\\",\\\"@typescript-eslint/parser\\\":\\\"^5.10.1\\\",\\\"ansi_up\\\":\\\"^5.1.0\\\",\\\"chart.js\\\":\\\"^2.9.4\\\",\\\"circular-dependency-plugin\\\":\\\"^5.2.2\\\",\\\"color\\\":\\\"^3.2.1\\\",\\\"concurrently\\\":\\\"^5.3.0\\\",\\\"css-loader\\\":\\\"^5.2.7\\\",\\\"deepdash\\\":\\\"^5.3.9\\\",\\\"dompurify\\\":\\\"^2.3.4\\\",\\\"electron\\\":\\\"^14.2.4\\\",\\\"electron-builder\\\":\\\"^22.14.5\\\",\\\"electron-notarize\\\":\\\"^0.3.0\\\",\\\"esbuild\\\":\\\"^0.13.15\\\",\\\"esbuild-loader\\\":\\\"^2.16.0\\\",\\\"eslint\\\":\\\"^8.7.0\\\",\\\"eslint-plugin-header\\\":\\\"^3.1.1\\\",\\\"eslint-plugin-import\\\":\\\"^2.25.4\\\",\\\"eslint-plugin-react\\\":\\\"^7.28.0\\\",\\\"eslint-plugin-react-hooks\\\":\\\"^4.3.0\\\",\\\"eslint-plugin-unused-imports\\\":\\\"^2.0.0\\\",\\\"file-loader\\\":\\\"^6.2.0\\\",\\\"flex.box\\\":\\\"^3.4.4\\\",\\\"fork-ts-checker-webpack-plugin\\\":\\\"^5.2.1\\\",\\\"hoist-non-react-statics\\\":\\\"^3.3.2\\\",\\\"html-webpack-plugin\\\":\\\"^4.5.2\\\",\\\"ignore-loader\\\":\\\"^0.1.2\\\",\\\"include-media\\\":\\\"^1.4.9\\\",\\\"jest\\\":\\\"26.6.3\\\",\\\"jest-canvas-mock\\\":\\\"^2.3.1\\\",\\\"jest-fetch-mock\\\":\\\"^3.0.3\\\",\\\"jest-mock-extended\\\":\\\"^1.0.18\\\",\\\"make-plural\\\":\\\"^6.2.2\\\",\\\"mini-css-extract-plugin\\\":\\\"^1.6.2\\\",\\\"node-gyp\\\":\\\"7.1.2\\\",\\\"node-loader\\\":\\\"^1.0.3\\\",\\\"nodemon\\\":\\\"^2.0.15\\\",\\\"playwright\\\":\\\"^1.17.1\\\",\\\"postcss\\\":\\\"^8.4.5\\\",\\\"postcss-loader\\\":\\\"^4.3.0\\\",\\\"progress-bar-webpack-plugin\\\":\\\"^2.1.0\\\",\\\"randomcolor\\\":\\\"^0.6.2\\\",\\\"raw-loader\\\":\\\"^4.0.2\\\",\\\"react-beautiful-dnd\\\":\\\"^13.1.0\\\",\\\"react-refresh\\\":\\\"^0.9.0\\\",\\\"react-router-dom\\\":\\\"^5.3.0\\\",\\\"react-select\\\":\\\"3.2.0\\\",\\\"react-select-event\\\":\\\"^5.1.0\\\",\\\"react-table\\\":\\\"^7.7.0\\\",\\\"react-window\\\":\\\"^1.8.6\\\",\\\"sass\\\":\\\"^1.45.1\\\",\\\"sass-loader\\\":\\\"^10.2.0\\\",\\\"sharp\\\":\\\"^0.29.3\\\",\\\"style-loader\\\":\\\"^2.0.0\\\",\\\"tailwindcss\\\":\\\"^3.0.7\\\",\\\"ts-jest\\\":\\\"26.5.6\\\",\\\"ts-loader\\\":\\\"^7.0.5\\\",\\\"ts-node\\\":\\\"^10.4.0\\\",\\\"type-fest\\\":\\\"^1.0.2\\\",\\\"typed-emitter\\\":\\\"^1.4.0\\\",\\\"typedoc\\\":\\\"0.22.10\\\",\\\"typedoc-plugin-markdown\\\":\\\"^3.11.3\\\",\\\"typeface-roboto\\\":\\\"^1.1.13\\\",\\\"typescript\\\":\\\"^4.5.2\\\",\\\"typescript-plugin-css-modules\\\":\\\"^3.4.0\\\",\\\"url-loader\\\":\\\"^4.1.1\\\",\\\"webpack\\\":\\\"^4.46.0\\\",\\\"webpack-cli\\\":\\\"^3.3.12\\\",\\\"webpack-dev-server\\\":\\\"^3.11.3\\\",\\\"webpack-node-externals\\\":\\\"^1.7.2\\\",\\\"xterm\\\":\\\"^4.15.0\\\",\\\"xterm-addon-fit\\\":\\\"^0.5.0\\\"}}\");\n\n//# sourceURL=webpack:///./package.json?");
|
|
38523
|
+
eval("module.exports = JSON.parse(\"{\\\"name\\\":\\\"open-lens\\\",\\\"productName\\\":\\\"OpenLens\\\",\\\"description\\\":\\\"OpenLens - Open Source IDE for Kubernetes\\\",\\\"homepage\\\":\\\"https://github.com/lensapp/lens\\\",\\\"version\\\":\\\"5.4.6\\\",\\\"main\\\":\\\"static/build/main.js\\\",\\\"copyright\\\":\\\"© 2021 OpenLens Authors\\\",\\\"license\\\":\\\"MIT\\\",\\\"author\\\":{\\\"name\\\":\\\"OpenLens Authors\\\",\\\"email\\\":\\\"info@k8slens.dev\\\"},\\\"scripts\\\":{\\\"dev\\\":\\\"concurrently -i -k \\\\\\\"yarn run dev-run -C\\\\\\\" yarn:dev:*\\\",\\\"dev-build\\\":\\\"concurrently yarn:compile:*\\\",\\\"debug-build\\\":\\\"concurrently yarn:compile:main yarn:compile:extension-types\\\",\\\"dev-run\\\":\\\"nodemon --watch static/build/main.js --exec \\\\\\\"electron --remote-debugging-port=9223 --inspect .\\\\\\\"\\\",\\\"dev:main\\\":\\\"yarn run compile:main --watch\\\",\\\"dev:renderer\\\":\\\"yarn run webpack-dev-server --config webpack.renderer.ts\\\",\\\"dev:extension-types\\\":\\\"yarn run compile:extension-types --watch\\\",\\\"compile\\\":\\\"env NODE_ENV=production concurrently yarn:compile:*\\\",\\\"compile:main\\\":\\\"yarn run webpack --config webpack.main.ts\\\",\\\"compile:renderer\\\":\\\"yarn run webpack --config webpack.renderer.ts\\\",\\\"compile:extension-types\\\":\\\"yarn run webpack --config webpack.extensions.ts\\\",\\\"npm:fix-build-version\\\":\\\"yarn run ts-node build/set_build_version.ts\\\",\\\"npm:fix-package-version\\\":\\\"yarn run ts-node build/set_npm_version.ts\\\",\\\"build:linux\\\":\\\"yarn run compile && electron-builder --linux --dir\\\",\\\"build:mac\\\":\\\"yarn run compile && electron-builder --mac --dir\\\",\\\"build:win\\\":\\\"yarn run compile && electron-builder --win --dir\\\",\\\"integration\\\":\\\"jest --runInBand --detectOpenHandles --forceExit integration\\\",\\\"dist\\\":\\\"yarn run compile && electron-builder --publish onTag\\\",\\\"dist:dir\\\":\\\"yarn run dist --dir -c.compression=store -c.mac.identity=null\\\",\\\"download-bins\\\":\\\"concurrently yarn:download:*\\\",\\\"download:kubectl\\\":\\\"yarn run ts-node build/download_kubectl.ts\\\",\\\"download:helm\\\":\\\"yarn run ts-node build/download_helm.ts\\\",\\\"build:tray-icons\\\":\\\"yarn run ts-node build/build_tray_icon.ts\\\",\\\"build:theme-vars\\\":\\\"yarn run ts-node build/build_theme_vars.ts\\\",\\\"lint\\\":\\\"PROD=true yarn run eslint --ext js,ts,tsx --max-warnings=0 .\\\",\\\"lint:fix\\\":\\\"yarn run lint --fix\\\",\\\"mkdocs-serve-local\\\":\\\"docker build -t mkdocs-serve-local:latest mkdocs/ && docker run --rm -it -p 8000:8000 -v ${PWD}:/docs mkdocs-serve-local:latest\\\",\\\"verify-docs\\\":\\\"docker build -t mkdocs-serve-local:latest mkdocs/ && docker run --rm -v ${PWD}:/docs mkdocs-serve-local:latest build --strict\\\",\\\"typedocs-extensions-api\\\":\\\"yarn run typedoc src/extensions/extension-api.ts\\\",\\\"version-checkout\\\":\\\"cat package.json | jq '.version' -r | xargs printf \\\\\\\"release/v%s\\\\\\\" | xargs git checkout -b\\\",\\\"version-commit\\\":\\\"cat package.json | jq '.version' -r | xargs printf \\\\\\\"release v%s\\\\\\\" | git commit --no-edit -s -F -\\\",\\\"version\\\":\\\"yarn run version-checkout && git add package.json && yarn run version-commit\\\",\\\"postversion\\\":\\\"git push --set-upstream ${GIT_REMOTE:-origin} release/v$npm_package_version\\\"},\\\"config\\\":{\\\"bundledKubectlVersion\\\":\\\"1.23.3\\\",\\\"bundledHelmVersion\\\":\\\"3.7.2\\\",\\\"sentryDsn\\\":\\\"\\\"},\\\"engines\\\":{\\\"node\\\":\\\">=14 <15\\\"},\\\"jest\\\":{\\\"collectCoverage\\\":false,\\\"verbose\\\":true,\\\"transform\\\":{\\\"^.+\\\\\\\\.tsx?$\\\":\\\"ts-jest\\\"},\\\"moduleNameMapper\\\":{\\\"\\\\\\\\.(css|scss)$\\\":\\\"<rootDir>/__mocks__/styleMock.ts\\\",\\\"\\\\\\\\.(svg)$\\\":\\\"<rootDir>/__mocks__/imageMock.ts\\\"},\\\"modulePathIgnorePatterns\\\":[\\\"<rootDir>/dist\\\",\\\"<rootDir>/src/extensions/npm\\\"],\\\"setupFiles\\\":[\\\"<rootDir>/src/jest.setup.ts\\\",\\\"jest-canvas-mock\\\"],\\\"globals\\\":{\\\"ts-jest\\\":{\\\"isolatedModules\\\":true}}},\\\"build\\\":{\\\"generateUpdatesFilesForAllChannels\\\":true,\\\"files\\\":[\\\"static/build/main.js\\\"],\\\"afterSign\\\":\\\"build/notarize.js\\\",\\\"extraResources\\\":[{\\\"from\\\":\\\"locales/\\\",\\\"to\\\":\\\"locales/\\\",\\\"filter\\\":\\\"**/*.js\\\"},{\\\"from\\\":\\\"static/\\\",\\\"to\\\":\\\"static/\\\",\\\"filter\\\":\\\"!**/main.js\\\"},{\\\"from\\\":\\\"build/tray\\\",\\\"to\\\":\\\"static/icons\\\",\\\"filter\\\":\\\"*.png\\\"},{\\\"from\\\":\\\"extensions/\\\",\\\"to\\\":\\\"./extensions/\\\",\\\"filter\\\":[\\\"**/*.tgz\\\",\\\"**/package.json\\\",\\\"!**/node_modules\\\"]},{\\\"from\\\":\\\"templates/\\\",\\\"to\\\":\\\"./templates/\\\",\\\"filter\\\":\\\"**/*.yaml\\\"},\\\"LICENSE\\\"],\\\"linux\\\":{\\\"category\\\":\\\"Network\\\",\\\"artifactName\\\":\\\"${productName}-${version}.${arch}.${ext}\\\",\\\"target\\\":[\\\"deb\\\",\\\"rpm\\\",\\\"AppImage\\\"],\\\"extraResources\\\":[{\\\"from\\\":\\\"binaries/client/linux/${arch}/kubectl\\\",\\\"to\\\":\\\"./${arch}/kubectl\\\"},{\\\"from\\\":\\\"binaries/client/${arch}/helm3/helm3\\\",\\\"to\\\":\\\"./helm3/helm3\\\"}]},\\\"rpm\\\":{\\\"fpm\\\":[\\\"--rpm-rpmbuild-define=%define _build_id_links none\\\"]},\\\"mac\\\":{\\\"hardenedRuntime\\\":true,\\\"gatekeeperAssess\\\":false,\\\"entitlements\\\":\\\"build/entitlements.mac.plist\\\",\\\"entitlementsInherit\\\":\\\"build/entitlements.mac.plist\\\",\\\"extraResources\\\":[{\\\"from\\\":\\\"binaries/client/darwin/${arch}/kubectl\\\",\\\"to\\\":\\\"./${arch}/kubectl\\\"},{\\\"from\\\":\\\"binaries/client/${arch}/helm3/helm3\\\",\\\"to\\\":\\\"./helm3/helm3\\\"}]},\\\"win\\\":{\\\"target\\\":[\\\"nsis\\\"],\\\"extraResources\\\":[{\\\"from\\\":\\\"binaries/client/windows/x64/kubectl.exe\\\",\\\"to\\\":\\\"./x64/kubectl.exe\\\"},{\\\"from\\\":\\\"binaries/client/windows/ia32/kubectl.exe\\\",\\\"to\\\":\\\"./ia32/kubectl.exe\\\"},{\\\"from\\\":\\\"binaries/client/x64/helm3/helm3.exe\\\",\\\"to\\\":\\\"./helm3/helm3.exe\\\"}]},\\\"nsis\\\":{\\\"include\\\":\\\"build/installer.nsh\\\",\\\"oneClick\\\":false,\\\"allowElevation\\\":true,\\\"createStartMenuShortcut\\\":true,\\\"allowToChangeInstallationDirectory\\\":true},\\\"protocols\\\":{\\\"name\\\":\\\"Lens Protocol Handler\\\",\\\"schemes\\\":[\\\"lens\\\"],\\\"role\\\":\\\"Viewer\\\"}},\\\"dependencies\\\":{\\\"@hapi/call\\\":\\\"^8.0.1\\\",\\\"@hapi/subtext\\\":\\\"^7.0.3\\\",\\\"@kubernetes/client-node\\\":\\\"^0.16.1\\\",\\\"@ogre-tools/injectable\\\":\\\"3.2.1\\\",\\\"@ogre-tools/injectable-react\\\":\\\"3.2.1\\\",\\\"@sentry/electron\\\":\\\"^2.5.4\\\",\\\"@sentry/integrations\\\":\\\"^6.15.0\\\",\\\"@types/circular-dependency-plugin\\\":\\\"5.0.4\\\",\\\"abort-controller\\\":\\\"^3.0.0\\\",\\\"auto-bind\\\":\\\"^4.0.0\\\",\\\"autobind-decorator\\\":\\\"^2.4.0\\\",\\\"await-lock\\\":\\\"^2.1.0\\\",\\\"byline\\\":\\\"^5.0.0\\\",\\\"chokidar\\\":\\\"^3.4.3\\\",\\\"conf\\\":\\\"^7.1.2\\\",\\\"crypto-js\\\":\\\"^4.1.1\\\",\\\"electron-devtools-installer\\\":\\\"^3.2.0\\\",\\\"electron-updater\\\":\\\"^4.6.1\\\",\\\"electron-window-state\\\":\\\"^5.0.3\\\",\\\"filehound\\\":\\\"^1.17.5\\\",\\\"fs-extra\\\":\\\"^9.0.1\\\",\\\"glob-to-regexp\\\":\\\"^0.4.1\\\",\\\"got\\\":\\\"^11.8.3\\\",\\\"grapheme-splitter\\\":\\\"^1.0.4\\\",\\\"handlebars\\\":\\\"^4.7.7\\\",\\\"http-proxy\\\":\\\"^1.18.1\\\",\\\"immer\\\":\\\"^9.0.6\\\",\\\"joi\\\":\\\"^17.5.0\\\",\\\"js-yaml\\\":\\\"^4.1.0\\\",\\\"jsdom\\\":\\\"^16.7.0\\\",\\\"jsonpath\\\":\\\"^1.1.1\\\",\\\"lodash\\\":\\\"^4.17.15\\\",\\\"mac-ca\\\":\\\"^1.0.6\\\",\\\"marked\\\":\\\"^4.0.10\\\",\\\"md5-file\\\":\\\"^5.0.0\\\",\\\"mobx\\\":\\\"^6.3.7\\\",\\\"mobx-observable-history\\\":\\\"^2.0.3\\\",\\\"mobx-react\\\":\\\"^7.2.1\\\",\\\"mock-fs\\\":\\\"^5.1.2\\\",\\\"moment\\\":\\\"^2.29.1\\\",\\\"moment-timezone\\\":\\\"^0.5.34\\\",\\\"monaco-editor\\\":\\\"^0.29.1\\\",\\\"monaco-editor-webpack-plugin\\\":\\\"^5.0.0\\\",\\\"node-fetch\\\":\\\"lensapp/node-fetch#2.x\\\",\\\"node-pty\\\":\\\"^0.10.1\\\",\\\"npm\\\":\\\"^6.14.15\\\",\\\"p-limit\\\":\\\"^3.1.0\\\",\\\"path-to-regexp\\\":\\\"^6.2.0\\\",\\\"proper-lockfile\\\":\\\"^4.1.2\\\",\\\"react\\\":\\\"^17.0.2\\\",\\\"react-dom\\\":\\\"^17.0.2\\\",\\\"react-material-ui-carousel\\\":\\\"^2.3.8\\\",\\\"react-router\\\":\\\"^5.2.0\\\",\\\"react-virtualized-auto-sizer\\\":\\\"^1.0.6\\\",\\\"readable-stream\\\":\\\"^3.6.0\\\",\\\"request\\\":\\\"^2.88.2\\\",\\\"request-promise-native\\\":\\\"^1.0.9\\\",\\\"rfc6902\\\":\\\"^4.0.2\\\",\\\"semver\\\":\\\"^7.3.2\\\",\\\"shell-env\\\":\\\"^3.0.1\\\",\\\"spdy\\\":\\\"^4.0.2\\\",\\\"tar\\\":\\\"^6.1.11\\\",\\\"tcp-port-used\\\":\\\"^1.0.2\\\",\\\"tempy\\\":\\\"1.0.1\\\",\\\"url-parse\\\":\\\"^1.5.3\\\",\\\"uuid\\\":\\\"^8.3.2\\\",\\\"win-ca\\\":\\\"^3.4.5\\\",\\\"winston\\\":\\\"^3.3.3\\\",\\\"winston-console-format\\\":\\\"^1.0.8\\\",\\\"winston-transport-browserconsole\\\":\\\"^1.0.5\\\",\\\"ws\\\":\\\"^7.5.5\\\"},\\\"devDependencies\\\":{\\\"@async-fn/jest\\\":\\\"1.5.3\\\",\\\"@material-ui/core\\\":\\\"^4.12.3\\\",\\\"@material-ui/icons\\\":\\\"^4.11.2\\\",\\\"@material-ui/lab\\\":\\\"^4.0.0-alpha.60\\\",\\\"@pmmmwh/react-refresh-webpack-plugin\\\":\\\"^0.4.3\\\",\\\"@sentry/types\\\":\\\"^6.14.1\\\",\\\"@testing-library/jest-dom\\\":\\\"^5.16.1\\\",\\\"@testing-library/react\\\":\\\"^11.2.7\\\",\\\"@testing-library/user-event\\\":\\\"^13.5.0\\\",\\\"@types/byline\\\":\\\"^4.2.33\\\",\\\"@types/chart.js\\\":\\\"^2.9.34\\\",\\\"@types/color\\\":\\\"^3.0.2\\\",\\\"@types/crypto-js\\\":\\\"^3.1.47\\\",\\\"@types/dompurify\\\":\\\"^2.3.1\\\",\\\"@types/electron-devtools-installer\\\":\\\"^2.2.0\\\",\\\"@types/fs-extra\\\":\\\"^9.0.13\\\",\\\"@types/glob-to-regexp\\\":\\\"^0.4.1\\\",\\\"@types/hoist-non-react-statics\\\":\\\"^3.3.1\\\",\\\"@types/html-webpack-plugin\\\":\\\"^3.2.6\\\",\\\"@types/http-proxy\\\":\\\"^1.17.7\\\",\\\"@types/jest\\\":\\\"^26.0.24\\\",\\\"@types/js-yaml\\\":\\\"^4.0.5\\\",\\\"@types/jsdom\\\":\\\"^16.2.13\\\",\\\"@types/jsonpath\\\":\\\"^0.2.0\\\",\\\"@types/lodash\\\":\\\"^4.14.177\\\",\\\"@types/marked\\\":\\\"^4.0.1\\\",\\\"@types/md5-file\\\":\\\"^4.0.2\\\",\\\"@types/mini-css-extract-plugin\\\":\\\"^0.9.1\\\",\\\"@types/mock-fs\\\":\\\"^4.13.1\\\",\\\"@types/node\\\":\\\"14.17.33\\\",\\\"@types/node-fetch\\\":\\\"^2.5.12\\\",\\\"@types/npm\\\":\\\"^2.0.32\\\",\\\"@types/progress-bar-webpack-plugin\\\":\\\"^2.1.2\\\",\\\"@types/proper-lockfile\\\":\\\"^4.1.2\\\",\\\"@types/randomcolor\\\":\\\"^0.5.6\\\",\\\"@types/react\\\":\\\"^17.0.34\\\",\\\"@types/react-beautiful-dnd\\\":\\\"^13.1.2\\\",\\\"@types/react-dom\\\":\\\"^17.0.11\\\",\\\"@types/react-router-dom\\\":\\\"^5.3.2\\\",\\\"@types/react-select\\\":\\\"3.1.2\\\",\\\"@types/react-table\\\":\\\"^7.7.9\\\",\\\"@types/react-virtualized-auto-sizer\\\":\\\"^1.0.1\\\",\\\"@types/react-window\\\":\\\"^1.8.5\\\",\\\"@types/readable-stream\\\":\\\"^2.3.12\\\",\\\"@types/request\\\":\\\"^2.48.7\\\",\\\"@types/request-promise-native\\\":\\\"^1.0.18\\\",\\\"@types/semver\\\":\\\"^7.3.9\\\",\\\"@types/sharp\\\":\\\"^0.29.4\\\",\\\"@types/spdy\\\":\\\"^3.4.5\\\",\\\"@types/tar\\\":\\\"^4.0.5\\\",\\\"@types/tcp-port-used\\\":\\\"^1.0.0\\\",\\\"@types/tempy\\\":\\\"^0.3.0\\\",\\\"@types/triple-beam\\\":\\\"^1.3.2\\\",\\\"@types/url-parse\\\":\\\"^1.4.5\\\",\\\"@types/uuid\\\":\\\"^8.3.3\\\",\\\"@types/webpack\\\":\\\"^4.41.32\\\",\\\"@types/webpack-dev-server\\\":\\\"^3.11.6\\\",\\\"@types/webpack-env\\\":\\\"^1.16.3\\\",\\\"@types/webpack-node-externals\\\":\\\"^1.7.1\\\",\\\"@typescript-eslint/eslint-plugin\\\":\\\"^5.10.1\\\",\\\"@typescript-eslint/parser\\\":\\\"^5.10.1\\\",\\\"ansi_up\\\":\\\"^5.1.0\\\",\\\"chart.js\\\":\\\"^2.9.4\\\",\\\"circular-dependency-plugin\\\":\\\"^5.2.2\\\",\\\"color\\\":\\\"^3.2.1\\\",\\\"concurrently\\\":\\\"^5.3.0\\\",\\\"css-loader\\\":\\\"^5.2.7\\\",\\\"deepdash\\\":\\\"^5.3.9\\\",\\\"dompurify\\\":\\\"^2.3.4\\\",\\\"electron\\\":\\\"^14.2.4\\\",\\\"electron-builder\\\":\\\"^22.14.5\\\",\\\"electron-notarize\\\":\\\"^0.3.0\\\",\\\"esbuild\\\":\\\"^0.13.15\\\",\\\"esbuild-loader\\\":\\\"^2.16.0\\\",\\\"eslint\\\":\\\"^8.7.0\\\",\\\"eslint-plugin-header\\\":\\\"^3.1.1\\\",\\\"eslint-plugin-import\\\":\\\"^2.25.4\\\",\\\"eslint-plugin-react\\\":\\\"^7.28.0\\\",\\\"eslint-plugin-react-hooks\\\":\\\"^4.3.0\\\",\\\"eslint-plugin-unused-imports\\\":\\\"^2.0.0\\\",\\\"file-loader\\\":\\\"^6.2.0\\\",\\\"flex.box\\\":\\\"^3.4.4\\\",\\\"fork-ts-checker-webpack-plugin\\\":\\\"^5.2.1\\\",\\\"hoist-non-react-statics\\\":\\\"^3.3.2\\\",\\\"html-webpack-plugin\\\":\\\"^4.5.2\\\",\\\"ignore-loader\\\":\\\"^0.1.2\\\",\\\"include-media\\\":\\\"^1.4.9\\\",\\\"jest\\\":\\\"26.6.3\\\",\\\"jest-canvas-mock\\\":\\\"^2.3.1\\\",\\\"jest-fetch-mock\\\":\\\"^3.0.3\\\",\\\"jest-mock-extended\\\":\\\"^1.0.18\\\",\\\"make-plural\\\":\\\"^6.2.2\\\",\\\"mini-css-extract-plugin\\\":\\\"^1.6.2\\\",\\\"node-gyp\\\":\\\"7.1.2\\\",\\\"node-loader\\\":\\\"^1.0.3\\\",\\\"nodemon\\\":\\\"^2.0.15\\\",\\\"playwright\\\":\\\"^1.17.1\\\",\\\"postcss\\\":\\\"^8.4.5\\\",\\\"postcss-loader\\\":\\\"^4.3.0\\\",\\\"progress-bar-webpack-plugin\\\":\\\"^2.1.0\\\",\\\"randomcolor\\\":\\\"^0.6.2\\\",\\\"raw-loader\\\":\\\"^4.0.2\\\",\\\"react-beautiful-dnd\\\":\\\"^13.1.0\\\",\\\"react-refresh\\\":\\\"^0.9.0\\\",\\\"react-router-dom\\\":\\\"^5.3.0\\\",\\\"react-select\\\":\\\"3.2.0\\\",\\\"react-select-event\\\":\\\"^5.1.0\\\",\\\"react-table\\\":\\\"^7.7.0\\\",\\\"react-window\\\":\\\"^1.8.6\\\",\\\"sass\\\":\\\"^1.45.1\\\",\\\"sass-loader\\\":\\\"^10.2.0\\\",\\\"sharp\\\":\\\"^0.29.3\\\",\\\"style-loader\\\":\\\"^2.0.0\\\",\\\"tailwindcss\\\":\\\"^3.0.7\\\",\\\"ts-jest\\\":\\\"26.5.6\\\",\\\"ts-loader\\\":\\\"^7.0.5\\\",\\\"ts-node\\\":\\\"^10.4.0\\\",\\\"type-fest\\\":\\\"^1.0.2\\\",\\\"typed-emitter\\\":\\\"^1.4.0\\\",\\\"typedoc\\\":\\\"0.22.10\\\",\\\"typedoc-plugin-markdown\\\":\\\"^3.11.3\\\",\\\"typeface-roboto\\\":\\\"^1.1.13\\\",\\\"typescript\\\":\\\"^4.5.2\\\",\\\"typescript-plugin-css-modules\\\":\\\"^3.4.0\\\",\\\"url-loader\\\":\\\"^4.1.1\\\",\\\"webpack\\\":\\\"^4.46.0\\\",\\\"webpack-cli\\\":\\\"^3.3.12\\\",\\\"webpack-dev-server\\\":\\\"^3.11.3\\\",\\\"webpack-node-externals\\\":\\\"^1.7.2\\\",\\\"xterm\\\":\\\"^4.15.0\\\",\\\"xterm-addon-fit\\\":\\\"^0.5.0\\\"}}\");\n\n//# sourceURL=webpack:///./package.json?");
|
|
38524
38524
|
|
|
38525
38525
|
/***/ }),
|
|
38526
38526
|
|
|
@@ -38664,7 +38664,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
|
|
|
38664
38664
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
38665
38665
|
|
|
38666
38666
|
"use strict";
|
|
38667
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"CatalogCategory\", function() { return CatalogCategory; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"CatalogEntity\", function() { return CatalogEntity; });\n/* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! events */ \"events\");\n/* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(events__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var mobx__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! mobx */ \"./node_modules/mobx/dist/mobx.esm.js\");\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash */ \"./node_modules/lodash/lodash.js\");\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils */ \"./src/common/utils/index.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __metadata = (undefined && undefined.__metadata) || function (k, v) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(k, v);\n};\n\n\n\n\nclass CatalogCategory extends events__WEBPACK_IMPORTED_MODULE_0___default.a {\n constructor() {\n super(...arguments);\n /**\n * @internal\n */\n Object.defineProperty(this, \"filters\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: mobx__WEBPACK_IMPORTED_MODULE_1__[\"observable\"].set([], {\n deep: false,\n })\n });\n }\n /**\n * Parse a category ID into parts.\n * @param id The id of a category is parse\n * @returns The group and kind parts of the ID\n */\n static parseId(id) {\n var _a;\n const [group, kind] = (_a = id.split(\"/\")) !== null && _a !== void 0 ? _a : [];\n return { group, kind };\n }\n /**\n * Get the ID of this category\n */\n getId() {\n return `${this.spec.group}/${this.spec.names.kind}`;\n }\n /**\n * Add a filter for menu items of catalogAddMenu\n * @param fn The function that should return a truthy value if that menu item should be displayed\n * @returns A function to remove that filter\n */\n addMenuFilter(fn) {\n this.filters.add(fn);\n return Object(lodash__WEBPACK_IMPORTED_MODULE_2__[\"once\"])(() => void this.filters.delete(fn));\n }\n /**\n * Filter menuItems according to the Category's set filters\n * @param menuItems menu items to filter\n * @returns filtered menu items\n */\n filteredItems(menuItems) {\n return Array.from(_utils__WEBPACK_IMPORTED_MODULE_3__[\"iter\"].reduce(this.filters, _utils__WEBPACK_IMPORTED_MODULE_3__[\"iter\"].filter, menuItems.values()));\n }\n}\nclass CatalogEntity {\n constructor({ metadata, status, spec }) {\n Object.defineProperty(this, \"metadata\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"status\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"spec\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object(mobx__WEBPACK_IMPORTED_MODULE_1__[\"makeObservable\"])(this);\n if (!metadata || typeof metadata !== \"object\") {\n throw new TypeError(\"CatalogEntity's metadata must be a defined object\");\n }\n if (!status || typeof status !== \"object\") {\n throw new TypeError(\"CatalogEntity's status must be a defined object\");\n }\n if (!spec || typeof spec !== \"object\") {\n throw new TypeError(\"CatalogEntity's spec must be a defined object\");\n }\n this.metadata = metadata;\n this.status = status;\n this.spec = spec;\n }\n /**\n * Get the UID of this entity\n */\n getId() {\n return this.metadata.uid;\n }\n /**\n * Get the name of this entity\n */\n getName() {\n return this.metadata.name;\n }\n /**\n * Get the specified source of this entity, defaulting to `\"unknown\"` if not\n * provided\n */\n getSource() {\n var _a;\n return (_a = this.metadata.source) !== null && _a !== void 0 ? _a : \"unknown\";\n }\n /**\n * Get if this entity is enabled.\n */\n isEnabled() {\n var _a;\n return (_a = this.status.enabled) !== null && _a !== void 0 ? _a : true;\n }\n}\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_1__[\"observable\"],\n __metadata(\"design:type\", Object)\n], CatalogEntity.prototype, \"metadata\", void 0);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_1__[\"observable\"],\n __metadata(\"design:type\", Object)\n], CatalogEntity.prototype, \"status\", void 0);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_1__[\"observable\"],\n __metadata(\"design:type\", Object)\n], CatalogEntity.prototype, \"spec\", void 0);\n\n\n//# sourceURL=webpack:///./src/common/catalog/catalog-entity.ts?");
|
|
38667
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"CatalogCategory\", function() { return CatalogCategory; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"CatalogEntity\", function() { return CatalogEntity; });\n/* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! events */ \"events\");\n/* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(events__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var mobx__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! mobx */ \"./node_modules/mobx/dist/mobx.esm.js\");\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash */ \"./node_modules/lodash/lodash.js\");\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils */ \"./src/common/utils/index.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __metadata = (undefined && undefined.__metadata) || function (k, v) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(k, v);\n};\n\n\n\n\nclass CatalogCategory extends events__WEBPACK_IMPORTED_MODULE_0___default.a {\n constructor() {\n super(...arguments);\n /**\n * @internal\n */\n Object.defineProperty(this, \"filters\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: mobx__WEBPACK_IMPORTED_MODULE_1__[\"observable\"].set([], {\n deep: false,\n })\n });\n }\n /**\n * Parse a category ID into parts.\n * @param id The id of a category is parse\n * @returns The group and kind parts of the ID\n */\n static parseId(id) {\n var _a;\n const [group, kind] = (_a = id.split(\"/\")) !== null && _a !== void 0 ? _a : [];\n return { group, kind };\n }\n /**\n * Get the ID of this category\n */\n getId() {\n return `${this.spec.group}/${this.spec.names.kind}`;\n }\n /**\n * Get the name of this category\n */\n getName() {\n return this.metadata.name;\n }\n /**\n * Add a filter for menu items of catalogAddMenu\n * @param fn The function that should return a truthy value if that menu item should be displayed\n * @returns A function to remove that filter\n */\n addMenuFilter(fn) {\n this.filters.add(fn);\n return Object(lodash__WEBPACK_IMPORTED_MODULE_2__[\"once\"])(() => void this.filters.delete(fn));\n }\n /**\n * Filter menuItems according to the Category's set filters\n * @param menuItems menu items to filter\n * @returns filtered menu items\n */\n filteredItems(menuItems) {\n return Array.from(_utils__WEBPACK_IMPORTED_MODULE_3__[\"iter\"].reduce(this.filters, _utils__WEBPACK_IMPORTED_MODULE_3__[\"iter\"].filter, menuItems.values()));\n }\n}\nclass CatalogEntity {\n constructor({ metadata, status, spec }) {\n Object.defineProperty(this, \"metadata\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"status\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"spec\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object(mobx__WEBPACK_IMPORTED_MODULE_1__[\"makeObservable\"])(this);\n if (!metadata || typeof metadata !== \"object\") {\n throw new TypeError(\"CatalogEntity's metadata must be a defined object\");\n }\n if (!status || typeof status !== \"object\") {\n throw new TypeError(\"CatalogEntity's status must be a defined object\");\n }\n if (!spec || typeof spec !== \"object\") {\n throw new TypeError(\"CatalogEntity's spec must be a defined object\");\n }\n this.metadata = metadata;\n this.status = status;\n this.spec = spec;\n }\n /**\n * Get the UID of this entity\n */\n getId() {\n return this.metadata.uid;\n }\n /**\n * Get the name of this entity\n */\n getName() {\n return this.metadata.name;\n }\n /**\n * Get the specified source of this entity, defaulting to `\"unknown\"` if not\n * provided\n */\n getSource() {\n var _a;\n return (_a = this.metadata.source) !== null && _a !== void 0 ? _a : \"unknown\";\n }\n /**\n * Get if this entity is enabled.\n */\n isEnabled() {\n var _a;\n return (_a = this.status.enabled) !== null && _a !== void 0 ? _a : true;\n }\n}\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_1__[\"observable\"],\n __metadata(\"design:type\", Object)\n], CatalogEntity.prototype, \"metadata\", void 0);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_1__[\"observable\"],\n __metadata(\"design:type\", Object)\n], CatalogEntity.prototype, \"status\", void 0);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_1__[\"observable\"],\n __metadata(\"design:type\", Object)\n], CatalogEntity.prototype, \"spec\", void 0);\n\n\n//# sourceURL=webpack:///./src/common/catalog/catalog-entity.ts?");
|
|
38668
38668
|
|
|
38669
38669
|
/***/ }),
|
|
38670
38670
|
|
|
@@ -38992,6 +38992,30 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
|
|
|
38992
38992
|
|
|
38993
38993
|
/***/ }),
|
|
38994
38994
|
|
|
38995
|
+
/***/ "./src/common/k8s-api/api-base.ts":
|
|
38996
|
+
/*!****************************************!*\
|
|
38997
|
+
!*** ./src/common/k8s-api/api-base.ts ***!
|
|
38998
|
+
\****************************************/
|
|
38999
|
+
/*! exports provided: apiBase */
|
|
39000
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
39001
|
+
|
|
39002
|
+
"use strict";
|
|
39003
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"apiBase\", function() { return apiBase; });\n/* harmony import */ var _json_api__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./json-api */ \"./src/common/k8s-api/json-api.ts\");\n/* harmony import */ var _vars__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../vars */ \"./src/common/vars.ts\");\n/* harmony import */ var _app_event_bus_event_bus__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../app-event-bus/event-bus */ \"./src/common/app-event-bus/event-bus.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\n\n\n\nlet apiBase;\nif (typeof window === \"undefined\") {\n _app_event_bus_event_bus__WEBPACK_IMPORTED_MODULE_2__[\"appEventBus\"].addListener((event) => {\n if (event.name !== \"lens-proxy\" && event.action !== \"listen\")\n return;\n const params = event.params;\n if (!params.port)\n return;\n apiBase = new _json_api__WEBPACK_IMPORTED_MODULE_0__[\"JsonApi\"]({\n serverAddress: `http://127.0.0.1:${params.port}`,\n apiBase: _vars__WEBPACK_IMPORTED_MODULE_1__[\"apiPrefix\"],\n debug: _vars__WEBPACK_IMPORTED_MODULE_1__[\"isDevelopment\"] || _vars__WEBPACK_IMPORTED_MODULE_1__[\"isDebugging\"],\n }, {\n headers: {\n \"Host\": `localhost:${params.port}`,\n },\n });\n });\n}\nelse {\n apiBase = new _json_api__WEBPACK_IMPORTED_MODULE_0__[\"JsonApi\"]({\n serverAddress: `http://127.0.0.1:${window.location.port}`,\n apiBase: _vars__WEBPACK_IMPORTED_MODULE_1__[\"apiPrefix\"],\n debug: _vars__WEBPACK_IMPORTED_MODULE_1__[\"isDevelopment\"] || _vars__WEBPACK_IMPORTED_MODULE_1__[\"isDebugging\"],\n }, {\n headers: {\n \"Host\": window.location.host,\n },\n });\n}\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/api-base.ts?");
|
|
39004
|
+
|
|
39005
|
+
/***/ }),
|
|
39006
|
+
|
|
39007
|
+
/***/ "./src/common/k8s-api/api-kube.ts":
|
|
39008
|
+
/*!****************************************!*\
|
|
39009
|
+
!*** ./src/common/k8s-api/api-kube.ts ***!
|
|
39010
|
+
\****************************************/
|
|
39011
|
+
/*! exports provided: apiKube */
|
|
39012
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
39013
|
+
|
|
39014
|
+
"use strict";
|
|
39015
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"apiKube\", function() { return apiKube; });\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils */ \"./src/common/utils/index.ts\");\n/* harmony import */ var _kube_json_api__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./kube-json-api */ \"./src/common/k8s-api/kube-json-api.ts\");\n/* harmony import */ var _vars__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../vars */ \"./src/common/vars.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\n\n\n\nconst apiKube = Object(_utils__WEBPACK_IMPORTED_MODULE_0__[\"isClusterPageContext\"])()\n ? new _kube_json_api__WEBPACK_IMPORTED_MODULE_1__[\"KubeJsonApi\"]({\n serverAddress: `http://127.0.0.1:${window.location.port}`,\n apiBase: _vars__WEBPACK_IMPORTED_MODULE_2__[\"apiKubePrefix\"],\n debug: _vars__WEBPACK_IMPORTED_MODULE_2__[\"isDevelopment\"],\n }, {\n headers: {\n \"Host\": window.location.host,\n },\n })\n : undefined;\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/api-kube.ts?");
|
|
39016
|
+
|
|
39017
|
+
/***/ }),
|
|
39018
|
+
|
|
38995
39019
|
/***/ "./src/common/k8s-api/api-manager.ts":
|
|
38996
39020
|
/*!*******************************************!*\
|
|
38997
39021
|
!*** ./src/common/k8s-api/api-manager.ts ***!
|
|
@@ -39468,7 +39492,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
|
|
|
39468
39492
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
39469
39493
|
|
|
39470
39494
|
"use strict";
|
|
39471
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony
|
|
39495
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _api_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./api-base */ \"./src/common/k8s-api/api-base.ts\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"apiBase\", function() { return _api_base__WEBPACK_IMPORTED_MODULE_0__[\"apiBase\"]; });\n\n/* harmony import */ var _api_kube__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./api-kube */ \"./src/common/k8s-api/api-kube.ts\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"apiKube\", function() { return _api_kube__WEBPACK_IMPORTED_MODULE_1__[\"apiKube\"]; });\n\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\n\n\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/index.ts?");
|
|
39472
39496
|
|
|
39473
39497
|
/***/ }),
|
|
39474
39498
|
|
|
@@ -39516,7 +39540,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
|
|
|
39516
39540
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
39517
39541
|
|
|
39518
39542
|
"use strict";
|
|
39519
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"KubeJsonApi\", function() { return KubeJsonApi; });\n/* harmony import */ var _json_api__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./json-api */ \"./src/common/k8s-api/json-api.ts\");\n/* harmony import */ var
|
|
39543
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"KubeJsonApi\", function() { return KubeJsonApi; });\n/* harmony import */ var _json_api__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./json-api */ \"./src/common/k8s-api/json-api.ts\");\n/* harmony import */ var _vars__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../vars */ \"./src/common/vars.ts\");\n/* harmony import */ var _api_base__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./api-base */ \"./src/common/k8s-api/api-base.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\n\n\n\nclass KubeJsonApi extends _json_api__WEBPACK_IMPORTED_MODULE_0__[\"JsonApi\"] {\n static forCluster(clusterId) {\n const url = new URL(_api_base__WEBPACK_IMPORTED_MODULE_2__[\"apiBase\"].config.serverAddress);\n return new this({\n serverAddress: _api_base__WEBPACK_IMPORTED_MODULE_2__[\"apiBase\"].config.serverAddress,\n apiBase: _vars__WEBPACK_IMPORTED_MODULE_1__[\"apiKubePrefix\"],\n debug: _vars__WEBPACK_IMPORTED_MODULE_1__[\"isDebugging\"],\n }, {\n headers: {\n \"Host\": `${clusterId}.localhost:${url.port}`,\n },\n });\n }\n parseError(error, res) {\n const { status, reason, message } = error;\n if (status && reason) {\n return [message || `${status}: ${reason}`];\n }\n return super.parseError(error, res);\n }\n}\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/kube-json-api.ts?");
|
|
39520
39544
|
|
|
39521
39545
|
/***/ }),
|
|
39522
39546
|
|
|
@@ -39528,7 +39552,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
|
|
|
39528
39552
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
39529
39553
|
|
|
39530
39554
|
"use strict";
|
|
39531
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"KubeObjectStore\", function() { return KubeObjectStore; });\n/* harmony import */ var mobx__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! mobx */ \"./node_modules/mobx/dist/mobx.esm.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils */ \"./src/common/utils/index.ts\");\n/* harmony import */ var _kube_object__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./kube-object */ \"./src/common/k8s-api/kube-object.ts\");\n/* harmony import */ var _item_store__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../item.store */ \"./src/common/item.store.ts\");\n/* harmony import */ var _kube_api__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./kube-api */ \"./src/common/k8s-api/kube-api.ts\");\n/* harmony import */ var _kube_api_parse__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./kube-api-parse */ \"./src/common/k8s-api/kube-api-parse.ts\");\n/* harmony import */ var abort_controller__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! abort-controller */ \"./node_modules/abort-controller/browser.js\");\n/* harmony import */ var abort_controller__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(abort_controller__WEBPACK_IMPORTED_MODULE_6__);\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __metadata = (undefined && undefined.__metadata) || function (k, v) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(k, v);\n};\nvar __rest = (undefined && undefined.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\n\n\n\n\n\n\n// BUG: https://github.com/mysticatea/abort-controller/pull/22\n// eslint-disable-next-line import/no-named-as-default\n\nclass KubeObjectStore extends _item_store__WEBPACK_IMPORTED_MODULE_3__[\"ItemStore\"] {\n constructor(api) {\n super();\n Object.defineProperty(this, \"api\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"limit\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"bufferSize\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 50000\n });\n Object.defineProperty(this, \"loadedNamespaces\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n // collect items from watch-api events to avoid UI blowing up with huge streams of data\n Object.defineProperty(this, \"eventsBuffer\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: mobx__WEBPACK_IMPORTED_MODULE_0__[\"observable\"].array([], { deep: false })\n });\n if (api)\n this.api = api;\n Object(mobx__WEBPACK_IMPORTED_MODULE_0__[\"makeObservable\"])(this);\n Object(_utils__WEBPACK_IMPORTED_MODULE_1__[\"autoBind\"])(this);\n this.bindWatchEventsUpdater();\n }\n get contextReady() {\n return Object(mobx__WEBPACK_IMPORTED_MODULE_0__[\"when\"])(() => Boolean(this.context));\n }\n get namespacesReady() {\n return Object(mobx__WEBPACK_IMPORTED_MODULE_0__[\"when\"])(() => Boolean(this.loadedNamespaces));\n }\n get context() {\n return KubeObjectStore.defaultContext.get();\n }\n // TODO: Circular dependency: KubeObjectStore -> ClusterFrameContext -> NamespaceStore -> KubeObjectStore\n get contextItems() {\n var _a, _b;\n const namespaces = (_b = (_a = this.context) === null || _a === void 0 ? void 0 : _a.contextNamespaces) !== null && _b !== void 0 ? _b : [];\n return this.items.filter(item => {\n const itemNamespace = item.getNs();\n return !itemNamespace /* cluster-wide */ || namespaces.includes(itemNamespace);\n });\n }\n getTotalCount() {\n return this.contextItems.length;\n }\n get query() {\n const { limit } = this;\n if (!limit) {\n return {};\n }\n return { limit };\n }\n getAllByNs(namespace, strict = false) {\n const namespaces = [].concat(namespace);\n if (namespaces.length) {\n return this.items.filter(item => namespaces.includes(item.getNs()));\n }\n if (!strict) {\n return this.items;\n }\n return [];\n }\n getById(id) {\n return this.items.find(item => item.getId() === id);\n }\n getByName(name, namespace) {\n return this.items.find(item => {\n return item.getName() === name && (namespace ? item.getNs() === namespace : true);\n });\n }\n getByPath(path) {\n return this.items.find(item => item.selfLink === path);\n }\n getByLabel(labels) {\n if (Array.isArray(labels)) {\n return this.items.filter((item) => {\n const itemLabels = item.getLabels();\n return labels.every(label => itemLabels.includes(label));\n });\n }\n else {\n return this.items.filter((item) => {\n const itemLabels = item.metadata.labels || {};\n return Object.entries(labels)\n .every(([key, value]) => itemLabels[key] === value);\n });\n }\n }\n async loadItems({ namespaces, reqInit, onLoadFailure }) {\n var _a, _b;\n if (!((_a = this.context) === null || _a === void 0 ? void 0 : _a.cluster.isAllowedResource(this.api.kind))) {\n return [];\n }\n const isLoadingAll = ((_b = this.context.allNamespaces) === null || _b === void 0 ? void 0 : _b.length) > 1\n && this.context.cluster.accessibleNamespaces.length === 0\n && this.context.allNamespaces.every(ns => namespaces.includes(ns));\n if (!this.api.isNamespaced || isLoadingAll) {\n if (this.api.isNamespaced) {\n this.loadedNamespaces = [];\n }\n const res = this.api.list({ reqInit }, this.query);\n if (onLoadFailure) {\n try {\n return await res;\n }\n catch (error) {\n onLoadFailure((error === null || error === void 0 ? void 0 : error.message) || (error === null || error === void 0 ? void 0 : error.toString()) || \"Unknown error\");\n // reset the store because we are loading all, so that nothing is displayed\n this.items.clear();\n this.selectedItemsIds.clear();\n return [];\n }\n }\n return res;\n }\n this.loadedNamespaces = namespaces;\n const results = await Promise.allSettled(namespaces.map(namespace => this.api.list({ namespace, reqInit }, this.query)));\n const res = [];\n for (const result of results) {\n switch (result.status) {\n case \"fulfilled\":\n res.push(...result.value);\n break;\n case \"rejected\":\n if (onLoadFailure) {\n onLoadFailure(result.reason.message || result.reason);\n }\n else {\n // if onLoadFailure is not provided then preserve old behaviour\n throw result.reason;\n }\n }\n }\n return res;\n }\n filterItemsOnLoad(items) {\n return items;\n }\n async loadAll({ namespaces, merge = true, reqInit, onLoadFailure } = {}) {\n await this.contextReady;\n namespaces !== null && namespaces !== void 0 ? namespaces : (namespaces = this.context.contextNamespaces);\n this.isLoading = true;\n try {\n const items = await this.loadItems({ namespaces, reqInit, onLoadFailure });\n this.mergeItems(items, { merge });\n this.isLoaded = true;\n this.failedLoading = false;\n return items;\n }\n catch (error) {\n console.warn(\"[KubeObjectStore] loadAll failed\", this.api.apiBase, error);\n this.resetOnError(error);\n this.failedLoading = true;\n }\n finally {\n this.isLoading = false;\n }\n }\n async reloadAll(opts = {}) {\n const { force = false } = opts, loadingOptions = __rest(opts, [\"force\"]);\n if (this.isLoading || (this.isLoaded && !force)) {\n return;\n }\n return this.loadAll(loadingOptions);\n }\n mergeItems(partialItems, { merge = true, updateStore = true, sort = true, filter = true } = {}) {\n let items = partialItems;\n // update existing items\n if (merge) {\n const namespaces = partialItems.map(item => item.getNs());\n items = [\n ...this.items.filter(existingItem => !namespaces.includes(existingItem.getNs())),\n ...partialItems,\n ];\n }\n if (filter)\n items = this.filterItemsOnLoad(items);\n if (sort)\n items = this.sortItems(items);\n if (updateStore)\n this.items.replace(items);\n return items;\n }\n resetOnError(error) {\n if (error)\n this.reset();\n }\n async loadItem(params) {\n return this.api.get(params);\n }\n async load(params) {\n const { name, namespace } = params;\n let item = this.getByName(name, namespace);\n if (!item) {\n item = await this.loadItem(params);\n const newItems = this.sortItems([...this.items, item]);\n this.items.replace(newItems);\n }\n return item;\n }\n async loadFromPath(resourcePath) {\n const { namespace, name } = Object(_kube_api_parse__WEBPACK_IMPORTED_MODULE_5__[\"parseKubeApi\"])(resourcePath);\n return this.load({ name, namespace });\n }\n async createItem(params, data) {\n return this.api.create(params, data);\n }\n async create(params, data) {\n const newItem = await this.createItem(params, data);\n const items = this.sortItems([...this.items, newItem]);\n this.items.replace(items);\n return newItem;\n }\n postUpdate(rawItem) {\n const newItem = new this.api.objectConstructor(rawItem);\n const index = this.items.findIndex(item => item.getId() === newItem.getId());\n Object(_kube_api__WEBPACK_IMPORTED_MODULE_4__[\"ensureObjectSelfLink\"])(this.api, newItem);\n if (index < 0) {\n this.items.push(newItem);\n }\n else {\n this.items[index] = newItem;\n }\n return newItem;\n }\n async patch(item, patch) {\n return this.postUpdate(await this.api.patch({\n name: item.getName(), namespace: item.getNs(),\n }, patch, \"json\"));\n }\n async update(item, data) {\n return this.postUpdate(await this.api.update({\n name: item.getName(),\n namespace: item.getNs(),\n }, data));\n }\n async remove(item) {\n await this.api.delete({ name: item.getName(), namespace: item.getNs() });\n this.selectedItemsIds.delete(item.getId());\n }\n async removeSelectedItems() {\n return Promise.all(this.selectedItems.map(this.remove));\n }\n async removeItems(items) {\n await Promise.all(items.map(this.remove));\n }\n bindWatchEventsUpdater(delay = 1000) {\n Object(mobx__WEBPACK_IMPORTED_MODULE_0__[\"reaction\"])(() => this.eventsBuffer.length, this.updateFromEventsBuffer, {\n delay,\n });\n }\n subscribe({ onLoadFailure, abortController = new abort_controller__WEBPACK_IMPORTED_MODULE_6___default.a() } = {}) {\n if (this.api.isNamespaced) {\n Promise.race([Object(_utils__WEBPACK_IMPORTED_MODULE_1__[\"rejectPromiseBy\"])(abortController.signal), Promise.all([this.contextReady, this.namespacesReady])])\n .then(() => {\n if (this.context.cluster.isGlobalWatchEnabled && this.loadedNamespaces.length === 0) {\n return this.watchNamespace(\"\", abortController, { onLoadFailure });\n }\n for (const namespace of this.loadedNamespaces) {\n this.watchNamespace(namespace, abortController, { onLoadFailure });\n }\n })\n .catch(_utils__WEBPACK_IMPORTED_MODULE_1__[\"noop\"]); // ignore DOMExceptions\n }\n else {\n this.watchNamespace(\"\", abortController, { onLoadFailure });\n }\n return () => abortController.abort();\n }\n watchNamespace(namespace, abortController, opts) {\n if (!this.api.getResourceVersion(namespace)) {\n return;\n }\n let timedRetry;\n const watch = () => this.api.watch({\n namespace,\n abortController,\n callback,\n });\n const { signal } = abortController;\n const callback = (data, error) => {\n if (!this.isLoaded || (error === null || error === void 0 ? void 0 : error.type) === \"aborted\")\n return;\n if (error instanceof Response) {\n if (error.status === 404 || error.status === 401) {\n // api has gone, or credentials are not permitted, let's not retry\n return;\n }\n // not sure what to do, best to retry\n clearTimeout(timedRetry);\n timedRetry = setTimeout(watch, 5000);\n }\n else if (error instanceof _kube_object__WEBPACK_IMPORTED_MODULE_2__[\"KubeStatus\"] && error.code === 410) {\n clearTimeout(timedRetry);\n // resourceVersion has gone, let's try to reload\n timedRetry = setTimeout(() => {\n (namespace\n ? this.loadAll(Object.assign({ namespaces: [namespace], reqInit: { signal } }, opts))\n : this.loadAll(Object.assign({ merge: false, reqInit: { signal } }, opts))).then(watch);\n }, 1000);\n }\n else if (error) { // not sure what to do, best to retry\n clearTimeout(timedRetry);\n timedRetry = setTimeout(watch, 5000);\n }\n if (data) {\n this.eventsBuffer.push(data);\n }\n };\n signal.addEventListener(\"abort\", () => clearTimeout(timedRetry));\n watch();\n }\n updateFromEventsBuffer() {\n const items = this.getItems();\n for (const { type, object } of this.eventsBuffer.clear()) {\n const index = items.findIndex(item => { var _a; return item.getId() === ((_a = object.metadata) === null || _a === void 0 ? void 0 : _a.uid); });\n const item = items[index];\n switch (type) {\n case \"ADDED\":\n // falls through\n case \"MODIFIED\": {\n const newItem = new this.api.objectConstructor(object);\n if (!item) {\n items.push(newItem);\n }\n else {\n items[index] = newItem;\n }\n break;\n }\n case \"DELETED\":\n if (item) {\n items.splice(index, 1);\n }\n break;\n }\n }\n // update items\n this.items.replace(this.sortItems(items.slice(-this.bufferSize)));\n }\n}\nObject.defineProperty(KubeObjectStore, \"defaultContext\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: mobx__WEBPACK_IMPORTED_MODULE_0__[\"observable\"].box()\n}); // TODO: support multiple cluster contexts\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_0__[\"observable\"],\n __metadata(\"design:type\", Array)\n], KubeObjectStore.prototype, \"loadedNamespaces\", void 0);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_0__[\"computed\"],\n __metadata(\"design:type\", Array),\n __metadata(\"design:paramtypes\", [])\n], KubeObjectStore.prototype, \"contextItems\", null);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_0__[\"action\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", [Object]),\n __metadata(\"design:returntype\", Promise)\n], KubeObjectStore.prototype, \"loadAll\", null);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_0__[\"action\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", [Object]),\n __metadata(\"design:returntype\", Promise)\n], KubeObjectStore.prototype, \"reloadAll\", null);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_0__[\"action\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", [Array, Object]),\n __metadata(\"design:returntype\", Array)\n], KubeObjectStore.prototype, \"mergeItems\", null);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_0__[\"action\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", [Object]),\n __metadata(\"design:returntype\", Promise)\n], KubeObjectStore.prototype, \"load\", null);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_0__[\"action\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", [String]),\n __metadata(\"design:returntype\", Promise)\n], KubeObjectStore.prototype, \"loadFromPath\", null);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_0__[\"action\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", []),\n __metadata(\"design:returntype\", void 0)\n], KubeObjectStore.prototype, \"updateFromEventsBuffer\", null);\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/kube-object.store.ts?");
|
|
39555
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"KubeObjectStore\", function() { return KubeObjectStore; });\n/* harmony import */ var mobx__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! mobx */ \"./node_modules/mobx/dist/mobx.esm.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils */ \"./src/common/utils/index.ts\");\n/* harmony import */ var _kube_object__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./kube-object */ \"./src/common/k8s-api/kube-object.ts\");\n/* harmony import */ var _item_store__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../item.store */ \"./src/common/item.store.ts\");\n/* harmony import */ var _kube_api__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./kube-api */ \"./src/common/k8s-api/kube-api.ts\");\n/* harmony import */ var _kube_api_parse__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./kube-api-parse */ \"./src/common/k8s-api/kube-api-parse.ts\");\n/* harmony import */ var abort_controller__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! abort-controller */ \"./node_modules/abort-controller/browser.js\");\n/* harmony import */ var abort_controller__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(abort_controller__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var _logger__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../logger */ \"./src/common/logger.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __metadata = (undefined && undefined.__metadata) || function (k, v) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(k, v);\n};\nvar __rest = (undefined && undefined.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\n\n\n\n\n\n\n// BUG: https://github.com/mysticatea/abort-controller/pull/22\n// eslint-disable-next-line import/no-named-as-default\n\n\nclass KubeObjectStore extends _item_store__WEBPACK_IMPORTED_MODULE_3__[\"ItemStore\"] {\n constructor(api) {\n super();\n Object.defineProperty(this, \"api\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"limit\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"bufferSize\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: 50000\n });\n Object.defineProperty(this, \"loadedNamespaces\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n // collect items from watch-api events to avoid UI blowing up with huge streams of data\n Object.defineProperty(this, \"eventsBuffer\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: mobx__WEBPACK_IMPORTED_MODULE_0__[\"observable\"].array([], { deep: false })\n });\n if (api)\n this.api = api;\n Object(mobx__WEBPACK_IMPORTED_MODULE_0__[\"makeObservable\"])(this);\n Object(_utils__WEBPACK_IMPORTED_MODULE_1__[\"autoBind\"])(this);\n this.bindWatchEventsUpdater();\n }\n get contextReady() {\n return Object(mobx__WEBPACK_IMPORTED_MODULE_0__[\"when\"])(() => Boolean(this.context));\n }\n get namespacesReady() {\n return Object(mobx__WEBPACK_IMPORTED_MODULE_0__[\"when\"])(() => Boolean(this.loadedNamespaces));\n }\n get context() {\n return KubeObjectStore.defaultContext.get();\n }\n // TODO: Circular dependency: KubeObjectStore -> ClusterFrameContext -> NamespaceStore -> KubeObjectStore\n get contextItems() {\n var _a, _b;\n const namespaces = (_b = (_a = this.context) === null || _a === void 0 ? void 0 : _a.contextNamespaces) !== null && _b !== void 0 ? _b : [];\n return this.items.filter(item => {\n const itemNamespace = item.getNs();\n return !itemNamespace /* cluster-wide */ || namespaces.includes(itemNamespace);\n });\n }\n getTotalCount() {\n return this.contextItems.length;\n }\n get query() {\n const { limit } = this;\n if (!limit) {\n return {};\n }\n return { limit };\n }\n getAllByNs(namespace, strict = false) {\n const namespaces = [].concat(namespace);\n if (namespaces.length) {\n return this.items.filter(item => namespaces.includes(item.getNs()));\n }\n if (!strict) {\n return this.items;\n }\n return [];\n }\n getById(id) {\n return this.items.find(item => item.getId() === id);\n }\n getByName(name, namespace) {\n return this.items.find(item => {\n return item.getName() === name && (namespace ? item.getNs() === namespace : true);\n });\n }\n getByPath(path) {\n return this.items.find(item => item.selfLink === path);\n }\n getByLabel(labels) {\n if (Array.isArray(labels)) {\n return this.items.filter((item) => {\n const itemLabels = item.getLabels();\n return labels.every(label => itemLabels.includes(label));\n });\n }\n else {\n return this.items.filter((item) => {\n const itemLabels = item.metadata.labels || {};\n return Object.entries(labels)\n .every(([key, value]) => itemLabels[key] === value);\n });\n }\n }\n async loadItems({ namespaces, reqInit, onLoadFailure }) {\n var _a, _b;\n if (!((_a = this.context) === null || _a === void 0 ? void 0 : _a.cluster.isAllowedResource(this.api.kind))) {\n return [];\n }\n const isLoadingAll = ((_b = this.context.allNamespaces) === null || _b === void 0 ? void 0 : _b.length) > 1\n && this.context.cluster.accessibleNamespaces.length === 0\n && this.context.allNamespaces.every(ns => namespaces.includes(ns));\n if (!this.api.isNamespaced || isLoadingAll) {\n if (this.api.isNamespaced) {\n this.loadedNamespaces = [];\n }\n const res = this.api.list({ reqInit }, this.query);\n if (onLoadFailure) {\n try {\n return await res;\n }\n catch (error) {\n onLoadFailure((error === null || error === void 0 ? void 0 : error.message) || (error === null || error === void 0 ? void 0 : error.toString()) || \"Unknown error\");\n // reset the store because we are loading all, so that nothing is displayed\n this.items.clear();\n this.selectedItemsIds.clear();\n return [];\n }\n }\n return res;\n }\n this.loadedNamespaces = namespaces;\n const results = await Promise.allSettled(namespaces.map(namespace => this.api.list({ namespace, reqInit }, this.query)));\n const res = [];\n for (const result of results) {\n switch (result.status) {\n case \"fulfilled\":\n res.push(...result.value);\n break;\n case \"rejected\":\n if (onLoadFailure) {\n onLoadFailure(result.reason.message || result.reason);\n }\n else {\n // if onLoadFailure is not provided then preserve old behaviour\n throw result.reason;\n }\n }\n }\n return res;\n }\n filterItemsOnLoad(items) {\n return items;\n }\n async loadAll({ namespaces, merge = true, reqInit, onLoadFailure } = {}) {\n await this.contextReady;\n namespaces !== null && namespaces !== void 0 ? namespaces : (namespaces = this.context.contextNamespaces);\n this.isLoading = true;\n try {\n const items = await this.loadItems({ namespaces, reqInit, onLoadFailure });\n this.mergeItems(items, { merge });\n this.isLoaded = true;\n this.failedLoading = false;\n return items;\n }\n catch (error) {\n console.warn(\"[KubeObjectStore] loadAll failed\", this.api.apiBase, error);\n this.resetOnError(error);\n this.failedLoading = true;\n }\n finally {\n this.isLoading = false;\n }\n }\n async reloadAll(opts = {}) {\n const { force = false } = opts, loadingOptions = __rest(opts, [\"force\"]);\n if (this.isLoading || (this.isLoaded && !force)) {\n return;\n }\n return this.loadAll(loadingOptions);\n }\n mergeItems(partialItems, { merge = true, updateStore = true, sort = true, filter = true } = {}) {\n let items = partialItems;\n // update existing items\n if (merge) {\n const namespaces = partialItems.map(item => item.getNs());\n items = [\n ...this.items.filter(existingItem => !namespaces.includes(existingItem.getNs())),\n ...partialItems,\n ];\n }\n if (filter)\n items = this.filterItemsOnLoad(items);\n if (sort)\n items = this.sortItems(items);\n if (updateStore)\n this.items.replace(items);\n return items;\n }\n resetOnError(error) {\n if (error)\n this.reset();\n }\n async loadItem(params) {\n return this.api.get(params);\n }\n async load(params) {\n const { name, namespace } = params;\n let item = this.getByName(name, namespace);\n if (!item) {\n item = await this.loadItem(params);\n const newItems = this.sortItems([...this.items, item]);\n this.items.replace(newItems);\n }\n return item;\n }\n async loadFromPath(resourcePath) {\n const { namespace, name } = Object(_kube_api_parse__WEBPACK_IMPORTED_MODULE_5__[\"parseKubeApi\"])(resourcePath);\n return this.load({ name, namespace });\n }\n async createItem(params, data) {\n return this.api.create(params, data);\n }\n async create(params, data) {\n const newItem = await this.createItem(params, data);\n const items = this.sortItems([...this.items, newItem]);\n this.items.replace(items);\n return newItem;\n }\n postUpdate(rawItem) {\n const newItem = new this.api.objectConstructor(rawItem);\n const index = this.items.findIndex(item => item.getId() === newItem.getId());\n Object(_kube_api__WEBPACK_IMPORTED_MODULE_4__[\"ensureObjectSelfLink\"])(this.api, newItem);\n if (index < 0) {\n this.items.push(newItem);\n }\n else {\n this.items[index] = newItem;\n }\n return newItem;\n }\n async patch(item, patch) {\n return this.postUpdate(await this.api.patch({\n name: item.getName(), namespace: item.getNs(),\n }, patch, \"json\"));\n }\n async update(item, data) {\n return this.postUpdate(await this.api.update({\n name: item.getName(),\n namespace: item.getNs(),\n }, data));\n }\n async remove(item) {\n await this.api.delete({ name: item.getName(), namespace: item.getNs() });\n this.selectedItemsIds.delete(item.getId());\n }\n async removeSelectedItems() {\n return Promise.all(this.selectedItems.map(this.remove));\n }\n async removeItems(items) {\n await Promise.all(items.map(this.remove));\n }\n bindWatchEventsUpdater(delay = 1000) {\n Object(mobx__WEBPACK_IMPORTED_MODULE_0__[\"reaction\"])(() => this.eventsBuffer.length, this.updateFromEventsBuffer, {\n delay,\n });\n }\n subscribe({ onLoadFailure, abortController = new abort_controller__WEBPACK_IMPORTED_MODULE_6___default.a() } = {}) {\n if (this.api.isNamespaced) {\n Promise.race([Object(_utils__WEBPACK_IMPORTED_MODULE_1__[\"rejectPromiseBy\"])(abortController.signal), Promise.all([this.contextReady, this.namespacesReady])])\n .then(() => {\n if (this.context.cluster.isGlobalWatchEnabled && this.loadedNamespaces.length === 0) {\n return this.watchNamespace(\"\", abortController, { onLoadFailure });\n }\n for (const namespace of this.loadedNamespaces) {\n this.watchNamespace(namespace, abortController, { onLoadFailure });\n }\n })\n .catch(_utils__WEBPACK_IMPORTED_MODULE_1__[\"noop\"]); // ignore DOMExceptions\n }\n else {\n this.watchNamespace(\"\", abortController, { onLoadFailure });\n }\n return () => abortController.abort();\n }\n watchNamespace(namespace, abortController, opts) {\n if (!this.api.getResourceVersion(namespace)) {\n return;\n }\n let timedRetry;\n const watch = () => this.api.watch({\n namespace,\n abortController,\n callback,\n });\n const { signal } = abortController;\n const callback = (data, error) => {\n if (!this.isLoaded || (error === null || error === void 0 ? void 0 : error.type) === \"aborted\")\n return;\n if (error instanceof Response) {\n if (error.status === 404 || error.status === 401) {\n // api has gone, or credentials are not permitted, let's not retry\n return;\n }\n // not sure what to do, best to retry\n clearTimeout(timedRetry);\n timedRetry = setTimeout(watch, 5000);\n }\n else if (error instanceof _kube_object__WEBPACK_IMPORTED_MODULE_2__[\"KubeStatus\"] && error.code === 410) {\n clearTimeout(timedRetry);\n // resourceVersion has gone, let's try to reload\n timedRetry = setTimeout(() => {\n (namespace\n ? this.loadAll(Object.assign({ namespaces: [namespace], reqInit: { signal } }, opts))\n : this.loadAll(Object.assign({ merge: false, reqInit: { signal } }, opts))).then(watch);\n }, 1000);\n }\n else if (error) { // not sure what to do, best to retry\n clearTimeout(timedRetry);\n timedRetry = setTimeout(watch, 5000);\n }\n if (data) {\n this.eventsBuffer.push(data);\n }\n };\n signal.addEventListener(\"abort\", () => clearTimeout(timedRetry));\n watch();\n }\n updateFromEventsBuffer() {\n var _a;\n const items = this.getItems();\n for (const event of this.eventsBuffer.clear()) {\n if (event.type === \"ERROR\") {\n continue;\n }\n try {\n const { type, object } = event;\n if (!((_a = object.metadata) === null || _a === void 0 ? void 0 : _a.uid)) {\n _logger__WEBPACK_IMPORTED_MODULE_7__[\"default\"].warn(\"[KUBE-STORE]: watch event did not have defined .metadata.uid, skipping\", { event });\n // Other parts of the code will break if this happens\n continue;\n }\n const index = items.findIndex(item => item.getId() === object.metadata.uid);\n const item = items[index];\n switch (type) {\n case \"ADDED\":\n // fallthrough\n case \"MODIFIED\": {\n const newItem = new this.api.objectConstructor(object);\n if (!item) {\n items.push(newItem);\n }\n else {\n items[index] = newItem;\n }\n break;\n }\n case \"DELETED\":\n if (item) {\n items.splice(index, 1);\n }\n break;\n }\n }\n catch (error) {\n _logger__WEBPACK_IMPORTED_MODULE_7__[\"default\"].error(\"[KUBE-STORE]: failed to handle event from watch buffer\", { error, event });\n }\n }\n // update items\n this.items.replace(this.sortItems(items.slice(-this.bufferSize)));\n }\n}\nObject.defineProperty(KubeObjectStore, \"defaultContext\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: mobx__WEBPACK_IMPORTED_MODULE_0__[\"observable\"].box()\n}); // TODO: support multiple cluster contexts\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_0__[\"observable\"],\n __metadata(\"design:type\", Array)\n], KubeObjectStore.prototype, \"loadedNamespaces\", void 0);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_0__[\"computed\"],\n __metadata(\"design:type\", Array),\n __metadata(\"design:paramtypes\", [])\n], KubeObjectStore.prototype, \"contextItems\", null);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_0__[\"action\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", [Object]),\n __metadata(\"design:returntype\", Promise)\n], KubeObjectStore.prototype, \"loadAll\", null);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_0__[\"action\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", [Object]),\n __metadata(\"design:returntype\", Promise)\n], KubeObjectStore.prototype, \"reloadAll\", null);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_0__[\"action\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", [Array, Object]),\n __metadata(\"design:returntype\", Array)\n], KubeObjectStore.prototype, \"mergeItems\", null);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_0__[\"action\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", [Object]),\n __metadata(\"design:returntype\", Promise)\n], KubeObjectStore.prototype, \"load\", null);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_0__[\"action\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", [String]),\n __metadata(\"design:returntype\", Promise)\n], KubeObjectStore.prototype, \"loadFromPath\", null);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_0__[\"action\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", []),\n __metadata(\"design:returntype\", void 0)\n], KubeObjectStore.prototype, \"updateFromEventsBuffer\", null);\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/kube-object.store.ts?");
|
|
39532
39556
|
|
|
39533
39557
|
/***/ }),
|
|
39534
39558
|
|
|
@@ -39588,7 +39612,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
|
|
|
39588
39612
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
39589
39613
|
|
|
39590
39614
|
"use strict";
|
|
39591
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var electron__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! electron */ \"electron\");\n/* harmony import */ var electron__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(electron__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var winston__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! winston */ \"./node_modules/winston/dist/winston.js\");\n/* harmony import */ var winston__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(winston__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var winston_console_format__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! winston-console-format */ \"./node_modules/winston-console-format/dist/index.js\");\n/* harmony import */ var winston_console_format__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(winston_console_format__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _vars__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./vars */ \"./src/common/vars.ts\");\n/* harmony import */ var winston_transport_browserconsole__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! winston-transport-browserconsole */ \"./node_modules/winston-transport-browserconsole/dist/BrowserConsole.js\");\n/* harmony import */ var winston_transport_browserconsole__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(winston_transport_browserconsole__WEBPACK_IMPORTED_MODULE_4__);\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\n\n\n\n\n\nconst logLevel = process.env.LOG_LEVEL\n ? process.env.LOG_LEVEL\n : _vars__WEBPACK_IMPORTED_MODULE_3__[\"isDebugging\"]\n ? \"debug\"\n : _vars__WEBPACK_IMPORTED_MODULE_3__[\"isTestEnv\"]\n ? \"error\"\n : \"info\";\nconst transports = [];\nif (electron__WEBPACK_IMPORTED_MODULE_0__[\"ipcMain\"]) {\n transports.push(new winston__WEBPACK_IMPORTED_MODULE_1___default.a.transports.Console({\n handleExceptions: false,\n level: logLevel,\n format: winston__WEBPACK_IMPORTED_MODULE_1__[\"format\"].combine(winston__WEBPACK_IMPORTED_MODULE_1__[\"format\"].colorize({ level: true, message: false }), winston__WEBPACK_IMPORTED_MODULE_1__[\"format\"].padLevels(), winston__WEBPACK_IMPORTED_MODULE_1__[\"format\"].ms(), Object(winston_console_format__WEBPACK_IMPORTED_MODULE_2__[\"consoleFormat\"])({\n showMeta: true,\n inspectOptions: {\n depth: 4,\n colors: true,\n maxArrayLength: 10,\n breakLength: 120,\n compact: Infinity,\n },\n })),\n }));\n if (!_vars__WEBPACK_IMPORTED_MODULE_3__[\"isTestEnv\"]) {\n transports.push(new winston__WEBPACK_IMPORTED_MODULE_1___default.a.transports.File({\n handleExceptions: false,\n level: logLevel,\n filename: \"lens.log\",\n /**\n * SAFTEY: the `ipcMain` check above should mean that this is only\n * called in the main process\n */\n dirname: electron__WEBPACK_IMPORTED_MODULE_0__[\"app\"].getPath(\"logs\"),\n maxsize: 16 * 1024,\n maxFiles: 16,\n tailable: true,\n }));\n }\n}\nelse {\n transports.push(new winston_transport_browserconsole__WEBPACK_IMPORTED_MODULE_4___default.a());\n}\n/* harmony default export */ __webpack_exports__[\"default\"] = (winston__WEBPACK_IMPORTED_MODULE_1___default.a.createLogger({\n format: winston__WEBPACK_IMPORTED_MODULE_1__[\"format\"].simple(),\n transports,\n}));\n\n\n//# sourceURL=webpack:///./src/common/logger.ts?");
|
|
39615
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var electron__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! electron */ \"electron\");\n/* harmony import */ var electron__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(electron__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var winston__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! winston */ \"./node_modules/winston/dist/winston.js\");\n/* harmony import */ var winston__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(winston__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var winston_console_format__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! winston-console-format */ \"./node_modules/winston-console-format/dist/index.js\");\n/* harmony import */ var winston_console_format__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(winston_console_format__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _vars__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./vars */ \"./src/common/vars.ts\");\n/* harmony import */ var winston_transport_browserconsole__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! winston-transport-browserconsole */ \"./node_modules/winston-transport-browserconsole/dist/BrowserConsole.js\");\n/* harmony import */ var winston_transport_browserconsole__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(winston_transport_browserconsole__WEBPACK_IMPORTED_MODULE_4__);\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\n\n\n\n\n\nconst logLevel = process.env.LOG_LEVEL\n ? process.env.LOG_LEVEL\n : _vars__WEBPACK_IMPORTED_MODULE_3__[\"isDebugging\"]\n ? \"debug\"\n : _vars__WEBPACK_IMPORTED_MODULE_3__[\"isTestEnv\"]\n ? \"error\"\n : \"info\";\nconst transports = [];\nif (electron__WEBPACK_IMPORTED_MODULE_0__[\"ipcMain\"]) {\n transports.push(new winston__WEBPACK_IMPORTED_MODULE_1___default.a.transports.Console({\n handleExceptions: false,\n level: logLevel,\n format: winston__WEBPACK_IMPORTED_MODULE_1__[\"format\"].combine(winston__WEBPACK_IMPORTED_MODULE_1__[\"format\"].colorize({ level: true, message: false }), winston__WEBPACK_IMPORTED_MODULE_1__[\"format\"].padLevels(), winston__WEBPACK_IMPORTED_MODULE_1__[\"format\"].ms(), Object(winston_console_format__WEBPACK_IMPORTED_MODULE_2__[\"consoleFormat\"])({\n showMeta: true,\n inspectOptions: {\n depth: 4,\n colors: true,\n maxArrayLength: 10,\n breakLength: 120,\n compact: Infinity,\n },\n })),\n }));\n if (!_vars__WEBPACK_IMPORTED_MODULE_3__[\"isTestEnv\"]) {\n transports.push(new winston__WEBPACK_IMPORTED_MODULE_1___default.a.transports.File({\n handleExceptions: false,\n level: logLevel,\n filename: \"lens.log\",\n /**\n * SAFTEY: the `ipcMain` check above should mean that this is only\n * called in the main process\n */\n dirname: electron__WEBPACK_IMPORTED_MODULE_0__[\"app\"].getPath(\"logs\"),\n maxsize: 16 * 1024,\n maxFiles: 16,\n tailable: true,\n }));\n }\n}\nelse {\n transports.push(new winston_transport_browserconsole__WEBPACK_IMPORTED_MODULE_4___default.a());\n}\n/* harmony default export */ __webpack_exports__[\"default\"] = (winston__WEBPACK_IMPORTED_MODULE_1___default.a.createLogger({\n format: winston__WEBPACK_IMPORTED_MODULE_1__[\"format\"].combine(winston__WEBPACK_IMPORTED_MODULE_1__[\"format\"].splat(), winston__WEBPACK_IMPORTED_MODULE_1__[\"format\"].simple()),\n transports,\n}));\n\n\n//# sourceURL=webpack:///./src/common/logger.ts?");
|
|
39592
39616
|
|
|
39593
39617
|
/***/ }),
|
|
39594
39618
|
|
|
@@ -40200,7 +40224,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
|
|
|
40200
40224
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
40201
40225
|
|
|
40202
40226
|
"use strict";
|
|
40203
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"unitsToBytes\", function() { return unitsToBytes; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bytesToUnits\", function() { return bytesToUnits; });\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\n// Helper to convert memory from units Ki, Mi, Gi, Ti, Pi to bytes and vise versa\nconst
|
|
40227
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"unitsToBytes\", function() { return unitsToBytes; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"bytesToUnits\", function() { return bytesToUnits; });\n/* harmony import */ var assert__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! assert */ \"assert\");\n/* harmony import */ var assert__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(assert__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _iter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./iter */ \"./src/common/utils/iter.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\n\n\n// Helper to convert memory from units Ki, Mi, Gi, Ti, Pi to bytes and vise versa\nconst baseMagnitude = 1024;\nconst maxMagnitude = [\"EiB\", baseMagnitude ** 6];\nconst magnitudes = new Map([\n [\"B\", 1],\n [\"KiB\", baseMagnitude ** 1],\n [\"MiB\", baseMagnitude ** 2],\n [\"GiB\", baseMagnitude ** 3],\n [\"TiB\", baseMagnitude ** 4],\n [\"PiB\", baseMagnitude ** 5],\n maxMagnitude,\n]);\nconst unitRegex = /(?<value>[0-9]+(\\.[0-9]*)?)(?<suffix>(B|[KMGTPE]iB))?/;\nfunction unitsToBytes(value) {\n var _a;\n const unitsMatch = value.match(unitRegex);\n if (!(unitsMatch === null || unitsMatch === void 0 ? void 0 : unitsMatch.groups)) {\n return NaN;\n }\n const parsedValue = parseFloat(unitsMatch.groups.value);\n if (!((_a = unitsMatch.groups) === null || _a === void 0 ? void 0 : _a.suffix)) {\n return parsedValue;\n }\n const magnitude = magnitudes.get(unitsMatch.groups.suffix);\n assert__WEBPACK_IMPORTED_MODULE_0___default()(magnitude, \"UnitRegex is wrong some how\");\n return parseInt((parsedValue * magnitude).toFixed(1));\n}\nfunction bytesToUnits(bytes, { precision = 1 } = {}) {\n var _a;\n if (bytes <= 0 || isNaN(bytes) || !isFinite(bytes)) {\n return \"N/A\";\n }\n const index = Math.floor(Math.log(bytes) / Math.log(baseMagnitude));\n const [suffix, magnitude] = (_a = _iter__WEBPACK_IMPORTED_MODULE_1__[\"nth\"](magnitudes.entries(), index)) !== null && _a !== void 0 ? _a : maxMagnitude;\n return `${(bytes / magnitude).toFixed(precision)}${suffix}`;\n}\n\n\n//# sourceURL=webpack:///./src/common/utils/convertMemory.ts?");
|
|
40204
40228
|
|
|
40205
40229
|
/***/ }),
|
|
40206
40230
|
|
|
@@ -40340,11 +40364,11 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _ogr
|
|
|
40340
40364
|
/*!**********************************!*\
|
|
40341
40365
|
!*** ./src/common/utils/iter.ts ***!
|
|
40342
40366
|
\**********************************/
|
|
40343
|
-
/*! exports provided: newEmpty, take, map, filterFlatMap, flatMap, filter, filterMap, filterMapStrict, find, reduce, join, every */
|
|
40367
|
+
/*! exports provided: newEmpty, take, map, filterFlatMap, flatMap, filter, filterMap, filterMapStrict, find, reduce, join, nth, every */
|
|
40344
40368
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
40345
40369
|
|
|
40346
40370
|
"use strict";
|
|
40347
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"newEmpty\", function() { return newEmpty; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"take\", function() { return take; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"map\", function() { return map; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"filterFlatMap\", function() { return filterFlatMap; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"flatMap\", function() { return flatMap; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"filter\", function() { return filter; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"filterMap\", function() { return filterMap; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"filterMapStrict\", function() { return filterMapStrict; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"find\", function() { return find; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"reduce\", function() { return reduce; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"join\", function() { return join; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"every\", function() { return every; });\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\n/**\n * Create a new type safe empty Iterable\n * @returns An `Iterable` that yields 0 items\n */\n// eslint-disable-next-line require-yield\nfunction* newEmpty() {\n return;\n}\n/**\n * Creates a new `Iterable` that yields at most n items from src.\n * Does not modify `src` which can be used later.\n * @param src An initial iterator\n * @param n The maximum number of elements to take from src. Yields up to the floor of `n` and 0 items if n < 0\n */\nfunction* take(src, n) {\n outer: for (let i = 0; i < n; i += 1) {\n for (const item of src) {\n yield item;\n continue outer;\n }\n // if we are here that means that `src` has been exhausted. Don't bother trying again.\n break outer;\n }\n}\n/**\n * Creates a new iterator that iterates (lazily) over its input and yields the\n * result of `fn` for each item.\n * @param src A type that can be iterated over\n * @param fn The function that is called for each value\n */\nfunction* map(src, fn) {\n for (const from of src) {\n yield fn(from);\n }\n}\n/**\n * The single layer flattening of an iterator, discarding `Falsey` values.\n * @param src A type that can be iterated over\n * @param fn The function that returns either an iterable over items that should be filtered out or a `Falsey` value indicating that it should be ignored\n */\nfunction* filterFlatMap(src, fn) {\n for (const from of src) {\n if (!from) {\n continue;\n }\n const mapping = fn(from);\n if (!mapping) {\n continue;\n }\n for (const mapped of mapping) {\n if (mapped) {\n yield mapped;\n }\n }\n }\n}\n/**\n * Returns a new iterator that yields the items that each call to `fn` would produce\n * @param src A type that can be iterated over\n * @param fn A function that returns an iterator\n */\nfunction* flatMap(src, fn) {\n for (const from of src) {\n yield* fn(from);\n }\n}\n/**\n * Creates a new iterator that iterates (lazily) over its input and yields the\n * items that return a `truthy` value from `fn`.\n * @param src A type that can be iterated over\n * @param fn The function that is called for each value\n */\nfunction* filter(src, fn) {\n for (const from of src) {\n if (fn(from)) {\n yield from;\n }\n }\n}\n/**\n * Creates a new iterator that iterates (lazily) over its input and yields the\n * result of `fn` when it is `truthy`\n * @param src A type that can be iterated over\n * @param fn The function that is called for each value\n */\nfunction* filterMap(src, fn) {\n for (const from of src) {\n const res = fn(from);\n if (res) {\n yield res;\n }\n }\n}\n/**\n * Creates a new iterator that iterates (lazily) over its input and yields the\n * result of `fn` when it is not null or undefined\n * @param src A type that can be iterated over\n * @param fn The function that is called for each value\n */\nfunction* filterMapStrict(src, fn) {\n for (const from of src) {\n const res = fn(from);\n if (res != null) {\n yield res;\n }\n }\n}\n/**\n * Iterate through `src` until `match` returns a truthy value\n * @param src A type that can be iterated over\n * @param match A function that should return a truthy value for the item that you want to find\n * @returns The first entry that `match` returns a truthy value for, or `undefined`\n */\nfunction find(src, match) {\n for (const from of src) {\n if (match(from)) {\n return from;\n }\n }\n return void 0;\n}\nfunction reduce(src, reducer, initial) {\n let acc = initial;\n for (const item of src) {\n acc = reducer(acc, item);\n }\n return acc;\n}\n/**\n * A convenience function for reducing over an iterator of strings and concatenating them together\n * @param src The value to iterate over\n * @param connector The string value to intersperse between the yielded values\n * @returns The concatenated entries of `src` interspersed with copies of `connector`\n */\nfunction join(src, connector = \",\") {\n return reduce(src, (acc, cur) => `${acc}${connector}${cur}`, \"\");\n}\n/**\n * Iterate through `src` and return `true` if `fn` returns a thruthy value for every yielded value.\n * Otherwise, return `false`. This function short circuits.\n * @param src The type to be iterated over\n * @param fn A function to check each iteration\n */\nfunction every(src, fn) {\n for (const val of src) {\n if (!fn(val)) {\n return false;\n }\n }\n return true;\n}\n\n\n//# sourceURL=webpack:///./src/common/utils/iter.ts?");
|
|
40371
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"newEmpty\", function() { return newEmpty; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"take\", function() { return take; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"map\", function() { return map; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"filterFlatMap\", function() { return filterFlatMap; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"flatMap\", function() { return flatMap; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"filter\", function() { return filter; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"filterMap\", function() { return filterMap; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"filterMapStrict\", function() { return filterMapStrict; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"find\", function() { return find; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"reduce\", function() { return reduce; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"join\", function() { return join; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"nth\", function() { return nth; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"every\", function() { return every; });\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\n/**\n * Create a new type safe empty Iterable\n * @returns An `Iterable` that yields 0 items\n */\n// eslint-disable-next-line require-yield\nfunction* newEmpty() {\n return;\n}\n/**\n * Creates a new `Iterable` that yields at most n items from src.\n * Does not modify `src` which can be used later.\n * @param src An initial iterator\n * @param n The maximum number of elements to take from src. Yields up to the floor of `n` and 0 items if n < 0\n */\nfunction* take(src, n) {\n outer: for (let i = 0; i < n; i += 1) {\n for (const item of src) {\n yield item;\n continue outer;\n }\n // if we are here that means that `src` has been exhausted. Don't bother trying again.\n break outer;\n }\n}\n/**\n * Creates a new iterator that iterates (lazily) over its input and yields the\n * result of `fn` for each item.\n * @param src A type that can be iterated over\n * @param fn The function that is called for each value\n */\nfunction* map(src, fn) {\n for (const from of src) {\n yield fn(from);\n }\n}\n/**\n * The single layer flattening of an iterator, discarding `Falsey` values.\n * @param src A type that can be iterated over\n * @param fn The function that returns either an iterable over items that should be filtered out or a `Falsey` value indicating that it should be ignored\n */\nfunction* filterFlatMap(src, fn) {\n for (const from of src) {\n if (!from) {\n continue;\n }\n const mapping = fn(from);\n if (!mapping) {\n continue;\n }\n for (const mapped of mapping) {\n if (mapped) {\n yield mapped;\n }\n }\n }\n}\n/**\n * Returns a new iterator that yields the items that each call to `fn` would produce\n * @param src A type that can be iterated over\n * @param fn A function that returns an iterator\n */\nfunction* flatMap(src, fn) {\n for (const from of src) {\n yield* fn(from);\n }\n}\n/**\n * Creates a new iterator that iterates (lazily) over its input and yields the\n * items that return a `truthy` value from `fn`.\n * @param src A type that can be iterated over\n * @param fn The function that is called for each value\n */\nfunction* filter(src, fn) {\n for (const from of src) {\n if (fn(from)) {\n yield from;\n }\n }\n}\n/**\n * Creates a new iterator that iterates (lazily) over its input and yields the\n * result of `fn` when it is `truthy`\n * @param src A type that can be iterated over\n * @param fn The function that is called for each value\n */\nfunction* filterMap(src, fn) {\n for (const from of src) {\n const res = fn(from);\n if (res) {\n yield res;\n }\n }\n}\n/**\n * Creates a new iterator that iterates (lazily) over its input and yields the\n * result of `fn` when it is not null or undefined\n * @param src A type that can be iterated over\n * @param fn The function that is called for each value\n */\nfunction* filterMapStrict(src, fn) {\n for (const from of src) {\n const res = fn(from);\n if (res != null) {\n yield res;\n }\n }\n}\n/**\n * Iterate through `src` until `match` returns a truthy value\n * @param src A type that can be iterated over\n * @param match A function that should return a truthy value for the item that you want to find\n * @returns The first entry that `match` returns a truthy value for, or `undefined`\n */\nfunction find(src, match) {\n for (const from of src) {\n if (match(from)) {\n return from;\n }\n }\n return void 0;\n}\nfunction reduce(src, reducer, initial) {\n let acc = initial;\n for (const item of src) {\n acc = reducer(acc, item);\n }\n return acc;\n}\n/**\n * A convenience function for reducing over an iterator of strings and concatenating them together\n * @param src The value to iterate over\n * @param connector The string value to intersperse between the yielded values\n * @returns The concatenated entries of `src` interspersed with copies of `connector`\n */\nfunction join(src, connector = \",\") {\n return reduce(src, (acc, cur) => `${acc}${connector}${cur}`, \"\");\n}\n/**\n * Returns the next value after iterating over the iterable `index` times.\n *\n * For example: `nth([\"a\", \"b\"], 0)` will return `\"a\"`\n * For example: `nth([\"a\", \"b\"], 1)` will return `\"b\"`\n * For example: `nth([\"a\", \"b\"], 2)` will return `undefined`\n */\nfunction nth(src, index) {\n const iteree = src[Symbol.iterator]();\n while (index-- > 0) {\n iteree.next();\n }\n return iteree.next().value;\n}\n/**\n * Iterate through `src` and return `true` if `fn` returns a thruthy value for every yielded value.\n * Otherwise, return `false`. This function short circuits.\n * @param src The type to be iterated over\n * @param fn A function to check each iteration\n */\nfunction every(src, fn) {\n for (const val of src) {\n if (!fn(val)) {\n return false;\n }\n }\n return true;\n}\n\n\n//# sourceURL=webpack:///./src/common/utils/iter.ts?");
|
|
40348
40372
|
|
|
40349
40373
|
/***/ }),
|
|
40350
40374
|
|
|
@@ -40532,11 +40556,11 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
|
|
|
40532
40556
|
/*!****************************!*\
|
|
40533
40557
|
!*** ./src/common/vars.ts ***!
|
|
40534
40558
|
\****************************/
|
|
40535
|
-
/*! exports provided: isMac, isWindows, isLinux, isDebugging, isSnap, isProduction, isTestEnv, isDevelopment, isPublishConfigured, integrationTestingArg, isIntegrationTesting, productName, appName, publicPath, defaultTheme, defaultFontSize, defaultTerminalFontFamily, defaultEditorFontFamily, contextDir, buildDir, preloadEntrypoint, mainDir, rendererDir, htmlTemplate, sassCommonVars, webpackDevServerPort, apiPrefix, apiKubePrefix, issuesTrackerUrl, slackUrl, supportUrl, appSemVer, docsUrl, sentryDsn */
|
|
40559
|
+
/*! exports provided: isMac, isWindows, isLinux, isDebugging, isSnap, isProduction, isTestEnv, isDevelopment, isPublishConfigured, integrationTestingArg, isIntegrationTesting, productName, appName, publicPath, defaultTheme, defaultFontSize, defaultTerminalFontFamily, defaultEditorFontFamily, contextDir, buildDir, preloadEntrypoint, mainDir, rendererDir, htmlTemplate, sassCommonVars, webpackDevServerPort, apiPrefix, apiKubePrefix, issuesTrackerUrl, slackUrl, supportUrl, lensWebsiteWeblinkId, lensDocumentationWeblinkId, lensSlackWeblinkId, lensTwitterWeblinkId, lensBlogWeblinkId, kubernetesDocumentationWeblinkId, appSemVer, docsUrl, sentryDsn */
|
|
40536
40560
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
40537
40561
|
|
|
40538
40562
|
"use strict";
|
|
40539
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isMac\", function() { return isMac; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isWindows\", function() { return isWindows; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isLinux\", function() { return isLinux; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isDebugging\", function() { return isDebugging; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isSnap\", function() { return isSnap; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isProduction\", function() { return isProduction; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isTestEnv\", function() { return isTestEnv; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isDevelopment\", function() { return isDevelopment; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isPublishConfigured\", function() { return isPublishConfigured; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"integrationTestingArg\", function() { return integrationTestingArg; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isIntegrationTesting\", function() { return isIntegrationTesting; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"productName\", function() { return productName; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"appName\", function() { return appName; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"publicPath\", function() { return publicPath; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"defaultTheme\", function() { return defaultTheme; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"defaultFontSize\", function() { return defaultFontSize; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"defaultTerminalFontFamily\", function() { return defaultTerminalFontFamily; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"defaultEditorFontFamily\", function() { return defaultEditorFontFamily; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"contextDir\", function() { return contextDir; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"buildDir\", function() { return buildDir; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"preloadEntrypoint\", function() { return preloadEntrypoint; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"mainDir\", function() { return mainDir; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"rendererDir\", function() { return rendererDir; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"htmlTemplate\", function() { return htmlTemplate; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"sassCommonVars\", function() { return sassCommonVars; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"webpackDevServerPort\", function() { return webpackDevServerPort; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"apiPrefix\", function() { return apiPrefix; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"apiKubePrefix\", function() { return apiKubePrefix; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"issuesTrackerUrl\", function() { return issuesTrackerUrl; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"slackUrl\", function() { return slackUrl; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"supportUrl\", function() { return supportUrl; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"appSemVer\", function() { return appSemVer; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"docsUrl\", function() { return docsUrl; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"sentryDsn\", function() { return sentryDsn; });\n/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! path */ \"path\");\n/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var semver__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! semver */ \"./node_modules/semver/index.js\");\n/* harmony import */ var semver__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(semver__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _package_json__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../package.json */ \"./package.json\");\nvar _package_json__WEBPACK_IMPORTED_MODULE_2___namespace = /*#__PURE__*/__webpack_require__.t(/*! ../../package.json */ \"./package.json\", 1);\n/* harmony import */ var _utils_defineGlobal__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils/defineGlobal */ \"./src/common/utils/defineGlobal.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\nvar _a, _b, _c;\n// App's common configuration for any process (main, renderer, build pipeline, etc.)\n\n\n\n\nconst isMac = process.platform === \"darwin\";\nconst isWindows = process.platform === \"win32\";\nconst isLinux = process.platform === \"linux\";\nconst isDebugging = [\"true\", \"1\", \"yes\", \"y\", \"on\"].includes(((_a = process.env.DEBUG) !== null && _a !== void 0 ? _a : \"\").toLowerCase());\nconst isSnap = !!process.env.SNAP;\nconst isProduction = \"development\" === \"production\";\nconst isTestEnv = !!process.env.JEST_WORKER_ID;\nconst isDevelopment = !isTestEnv && !isProduction;\nconst isPublishConfigured = Object.keys(_package_json__WEBPACK_IMPORTED_MODULE_2__.build).includes(\"publish\");\nconst integrationTestingArg = \"--integration-testing\";\nconst isIntegrationTesting = process.argv.includes(integrationTestingArg);\nconst productName = _package_json__WEBPACK_IMPORTED_MODULE_2__.productName;\nconst appName = `${_package_json__WEBPACK_IMPORTED_MODULE_2__.productName}${isDevelopment ? \"Dev\" : \"\"}`;\nconst publicPath = \"/build/\";\nconst defaultTheme = \"lens-dark\";\nconst defaultFontSize = 12;\nconst defaultTerminalFontFamily = \"RobotoMono\";\nconst defaultEditorFontFamily = \"RobotoMono\";\n// Webpack build paths\nconst contextDir = process.cwd();\nconst buildDir = path__WEBPACK_IMPORTED_MODULE_0___default.a.join(contextDir, \"static\", publicPath);\nconst preloadEntrypoint = path__WEBPACK_IMPORTED_MODULE_0___default.a.join(contextDir, \"src/preload.ts\");\nconst mainDir = path__WEBPACK_IMPORTED_MODULE_0___default.a.join(contextDir, \"src/main\");\nconst rendererDir = path__WEBPACK_IMPORTED_MODULE_0___default.a.join(contextDir, \"src/renderer\");\nconst htmlTemplate = path__WEBPACK_IMPORTED_MODULE_0___default.a.resolve(rendererDir, \"template.html\");\nconst sassCommonVars = path__WEBPACK_IMPORTED_MODULE_0___default.a.resolve(rendererDir, \"components/vars.scss\");\nconst webpackDevServerPort = 9009;\n// Special runtime paths\nObject(_utils_defineGlobal__WEBPACK_IMPORTED_MODULE_3__[\"defineGlobal\"])(\"__static\", {\n get() {\n var _a;\n const root = isDevelopment\n ? contextDir\n : ((_a = process.resourcesPath) !== null && _a !== void 0 ? _a : contextDir);\n return path__WEBPACK_IMPORTED_MODULE_0___default.a.resolve(root, \"static\");\n },\n});\n// Apis\nconst apiPrefix = \"/api\"; // local router apis\nconst apiKubePrefix = \"/api-kube\"; // k8s cluster apis\n// Links\nconst issuesTrackerUrl = \"https://github.com/lensapp/lens/issues\";\nconst slackUrl = \"https://join.slack.com/t/k8slens/shared_invite/zt-wcl8jq3k-68R5Wcmk1o95MLBE5igUDQ\";\nconst supportUrl = \"https://docs.k8slens.dev/latest/support/\";\nconst appSemVer = new semver__WEBPACK_IMPORTED_MODULE_1__[\"SemVer\"](_package_json__WEBPACK_IMPORTED_MODULE_2__.version);\nconst docsUrl = \"https://docs.k8slens.dev/main/\";\nconst sentryDsn = (_c = (_b = _package_json__WEBPACK_IMPORTED_MODULE_2__.config) === null || _b === void 0 ? void 0 : _b.sentryDsn) !== null && _c !== void 0 ? _c : \"\";\n\n\n//# sourceURL=webpack:///./src/common/vars.ts?");
|
|
40563
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isMac\", function() { return isMac; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isWindows\", function() { return isWindows; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isLinux\", function() { return isLinux; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isDebugging\", function() { return isDebugging; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isSnap\", function() { return isSnap; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isProduction\", function() { return isProduction; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isTestEnv\", function() { return isTestEnv; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isDevelopment\", function() { return isDevelopment; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isPublishConfigured\", function() { return isPublishConfigured; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"integrationTestingArg\", function() { return integrationTestingArg; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isIntegrationTesting\", function() { return isIntegrationTesting; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"productName\", function() { return productName; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"appName\", function() { return appName; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"publicPath\", function() { return publicPath; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"defaultTheme\", function() { return defaultTheme; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"defaultFontSize\", function() { return defaultFontSize; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"defaultTerminalFontFamily\", function() { return defaultTerminalFontFamily; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"defaultEditorFontFamily\", function() { return defaultEditorFontFamily; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"contextDir\", function() { return contextDir; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"buildDir\", function() { return buildDir; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"preloadEntrypoint\", function() { return preloadEntrypoint; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"mainDir\", function() { return mainDir; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"rendererDir\", function() { return rendererDir; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"htmlTemplate\", function() { return htmlTemplate; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"sassCommonVars\", function() { return sassCommonVars; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"webpackDevServerPort\", function() { return webpackDevServerPort; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"apiPrefix\", function() { return apiPrefix; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"apiKubePrefix\", function() { return apiKubePrefix; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"issuesTrackerUrl\", function() { return issuesTrackerUrl; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"slackUrl\", function() { return slackUrl; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"supportUrl\", function() { return supportUrl; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"lensWebsiteWeblinkId\", function() { return lensWebsiteWeblinkId; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"lensDocumentationWeblinkId\", function() { return lensDocumentationWeblinkId; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"lensSlackWeblinkId\", function() { return lensSlackWeblinkId; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"lensTwitterWeblinkId\", function() { return lensTwitterWeblinkId; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"lensBlogWeblinkId\", function() { return lensBlogWeblinkId; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"kubernetesDocumentationWeblinkId\", function() { return kubernetesDocumentationWeblinkId; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"appSemVer\", function() { return appSemVer; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"docsUrl\", function() { return docsUrl; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"sentryDsn\", function() { return sentryDsn; });\n/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! path */ \"path\");\n/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var semver__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! semver */ \"./node_modules/semver/index.js\");\n/* harmony import */ var semver__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(semver__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _package_json__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../package.json */ \"./package.json\");\nvar _package_json__WEBPACK_IMPORTED_MODULE_2___namespace = /*#__PURE__*/__webpack_require__.t(/*! ../../package.json */ \"./package.json\", 1);\n/* harmony import */ var _utils_defineGlobal__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils/defineGlobal */ \"./src/common/utils/defineGlobal.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\nvar _a, _b, _c;\n// App's common configuration for any process (main, renderer, build pipeline, etc.)\n\n\n\n\nconst isMac = process.platform === \"darwin\";\nconst isWindows = process.platform === \"win32\";\nconst isLinux = process.platform === \"linux\";\nconst isDebugging = [\"true\", \"1\", \"yes\", \"y\", \"on\"].includes(((_a = process.env.DEBUG) !== null && _a !== void 0 ? _a : \"\").toLowerCase());\nconst isSnap = !!process.env.SNAP;\nconst isProduction = \"development\" === \"production\";\nconst isTestEnv = !!process.env.JEST_WORKER_ID;\nconst isDevelopment = !isTestEnv && !isProduction;\nconst isPublishConfigured = Object.keys(_package_json__WEBPACK_IMPORTED_MODULE_2__.build).includes(\"publish\");\nconst integrationTestingArg = \"--integration-testing\";\nconst isIntegrationTesting = process.argv.includes(integrationTestingArg);\nconst productName = _package_json__WEBPACK_IMPORTED_MODULE_2__.productName;\nconst appName = `${_package_json__WEBPACK_IMPORTED_MODULE_2__.productName}${isDevelopment ? \"Dev\" : \"\"}`;\nconst publicPath = \"/build/\";\nconst defaultTheme = \"lens-dark\";\nconst defaultFontSize = 12;\nconst defaultTerminalFontFamily = \"RobotoMono\";\nconst defaultEditorFontFamily = \"RobotoMono\";\n// Webpack build paths\nconst contextDir = process.cwd();\nconst buildDir = path__WEBPACK_IMPORTED_MODULE_0___default.a.join(contextDir, \"static\", publicPath);\nconst preloadEntrypoint = path__WEBPACK_IMPORTED_MODULE_0___default.a.join(contextDir, \"src/preload.ts\");\nconst mainDir = path__WEBPACK_IMPORTED_MODULE_0___default.a.join(contextDir, \"src/main\");\nconst rendererDir = path__WEBPACK_IMPORTED_MODULE_0___default.a.join(contextDir, \"src/renderer\");\nconst htmlTemplate = path__WEBPACK_IMPORTED_MODULE_0___default.a.resolve(rendererDir, \"template.html\");\nconst sassCommonVars = path__WEBPACK_IMPORTED_MODULE_0___default.a.resolve(rendererDir, \"components/vars.scss\");\nconst webpackDevServerPort = 9009;\n// Special runtime paths\nObject(_utils_defineGlobal__WEBPACK_IMPORTED_MODULE_3__[\"defineGlobal\"])(\"__static\", {\n get() {\n var _a;\n const root = isDevelopment\n ? contextDir\n : ((_a = process.resourcesPath) !== null && _a !== void 0 ? _a : contextDir);\n return path__WEBPACK_IMPORTED_MODULE_0___default.a.resolve(root, \"static\");\n },\n});\n// Apis\nconst apiPrefix = \"/api\"; // local router apis\nconst apiKubePrefix = \"/api-kube\"; // k8s cluster apis\n// Links\nconst issuesTrackerUrl = \"https://github.com/lensapp/lens/issues\";\nconst slackUrl = \"https://join.slack.com/t/k8slens/shared_invite/zt-wcl8jq3k-68R5Wcmk1o95MLBE5igUDQ\";\nconst supportUrl = \"https://docs.k8slens.dev/latest/support/\";\nconst lensWebsiteWeblinkId = \"lens-website-link\";\nconst lensDocumentationWeblinkId = \"lens-documentation-link\";\nconst lensSlackWeblinkId = \"lens-slack-link\";\nconst lensTwitterWeblinkId = \"lens-twitter-link\";\nconst lensBlogWeblinkId = \"lens-blog-link\";\nconst kubernetesDocumentationWeblinkId = \"kubernetes-documentation-link\";\nconst appSemVer = new semver__WEBPACK_IMPORTED_MODULE_1__[\"SemVer\"](_package_json__WEBPACK_IMPORTED_MODULE_2__.version);\nconst docsUrl = \"https://docs.k8slens.dev/main/\";\nconst sentryDsn = (_c = (_b = _package_json__WEBPACK_IMPORTED_MODULE_2__.config) === null || _b === void 0 ? void 0 : _b.sentryDsn) !== null && _c !== void 0 ? _c : \"\";\n\n\n//# sourceURL=webpack:///./src/common/vars.ts?");
|
|
40540
40564
|
|
|
40541
40565
|
/***/ }),
|
|
40542
40566
|
|
|
@@ -41516,11 +41540,35 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
|
|
|
41516
41540
|
/*!************************************************!*\
|
|
41517
41541
|
!*** ./src/migrations/weblinks-store/5.1.4.ts ***!
|
|
41518
41542
|
\************************************************/
|
|
41543
|
+
/*! exports provided: lensWebsiteLinkName, lensDocumentationWeblinkName, lensSlackWeblinkName, lensTwitterWeblinkName, lensBlogWeblinkName, kubernetesDocumentationWeblinkName, default */
|
|
41544
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
41545
|
+
|
|
41546
|
+
"use strict";
|
|
41547
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"lensWebsiteLinkName\", function() { return lensWebsiteLinkName; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"lensDocumentationWeblinkName\", function() { return lensDocumentationWeblinkName; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"lensSlackWeblinkName\", function() { return lensSlackWeblinkName; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"lensTwitterWeblinkName\", function() { return lensTwitterWeblinkName; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"lensBlogWeblinkName\", function() { return lensBlogWeblinkName; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"kubernetesDocumentationWeblinkName\", function() { return kubernetesDocumentationWeblinkName; });\n/* harmony import */ var _common_vars__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../common/vars */ \"./src/common/vars.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\n\nconst lensWebsiteLinkName = \"Lens Website\";\nconst lensDocumentationWeblinkName = \"Lens Documentation\";\nconst lensSlackWeblinkName = \"Lens Community Slack\";\nconst lensTwitterWeblinkName = \"Lens on Twitter\";\nconst lensBlogWeblinkName = \"Lens Official Blog\";\nconst kubernetesDocumentationWeblinkName = \"Kubernetes Documentation\";\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n version: \"5.1.4\",\n run(store) {\n const weblinksRaw = store.get(\"weblinks\");\n const weblinks = (Array.isArray(weblinksRaw) ? weblinksRaw : []);\n weblinks.push({ id: \"https://k8slens.dev\", name: lensWebsiteLinkName, url: \"https://k8slens.dev\" }, { id: _common_vars__WEBPACK_IMPORTED_MODULE_0__[\"docsUrl\"], name: lensDocumentationWeblinkName, url: _common_vars__WEBPACK_IMPORTED_MODULE_0__[\"docsUrl\"] }, { id: _common_vars__WEBPACK_IMPORTED_MODULE_0__[\"slackUrl\"], name: lensSlackWeblinkName, url: _common_vars__WEBPACK_IMPORTED_MODULE_0__[\"slackUrl\"] }, { id: \"https://twitter.com/k8slens\", name: lensTwitterWeblinkName, url: \"https://twitter.com/k8slens\" }, { id: \"https://medium.com/k8slens\", name: lensBlogWeblinkName, url: \"https://medium.com/k8slens\" }, { id: \"https://kubernetes.io/docs/home/\", name: kubernetesDocumentationWeblinkName, url: \"https://kubernetes.io/docs/home/\" });\n store.set(\"weblinks\", weblinks);\n },\n});\n\n\n//# sourceURL=webpack:///./src/migrations/weblinks-store/5.1.4.ts?");
|
|
41548
|
+
|
|
41549
|
+
/***/ }),
|
|
41550
|
+
|
|
41551
|
+
/***/ "./src/migrations/weblinks-store/5.4.5-beta.1.ts":
|
|
41552
|
+
/*!*******************************************************!*\
|
|
41553
|
+
!*** ./src/migrations/weblinks-store/5.4.5-beta.1.ts ***!
|
|
41554
|
+
\*******************************************************/
|
|
41555
|
+
/*! exports provided: default */
|
|
41556
|
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
41557
|
+
|
|
41558
|
+
"use strict";
|
|
41559
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _common_vars__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../common/vars */ \"./src/common/vars.ts\");\n/* harmony import */ var _5_1_4__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./5.1.4 */ \"./src/migrations/weblinks-store/5.1.4.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n version: \"5.4.5-beta.1 || >=5.5.0-alpha.0\",\n run(store) {\n const weblinksRaw = store.get(\"weblinks\");\n const weblinks = (Array.isArray(weblinksRaw) ? weblinksRaw : []);\n const lensWebsiteLink = weblinks.find(weblink => weblink.name === _5_1_4__WEBPACK_IMPORTED_MODULE_1__[\"lensWebsiteLinkName\"]);\n if (lensWebsiteLink) {\n lensWebsiteLink.id = _common_vars__WEBPACK_IMPORTED_MODULE_0__[\"lensWebsiteWeblinkId\"];\n }\n const lensDocumentationWeblinkLink = weblinks.find(weblink => weblink.name === _5_1_4__WEBPACK_IMPORTED_MODULE_1__[\"lensDocumentationWeblinkName\"]);\n if (lensDocumentationWeblinkLink) {\n lensDocumentationWeblinkLink.id = _common_vars__WEBPACK_IMPORTED_MODULE_0__[\"lensDocumentationWeblinkId\"];\n }\n const lensSlackWeblinkLink = weblinks.find(weblink => weblink.name === _5_1_4__WEBPACK_IMPORTED_MODULE_1__[\"lensSlackWeblinkName\"]);\n if (lensSlackWeblinkLink) {\n lensSlackWeblinkLink.id = _common_vars__WEBPACK_IMPORTED_MODULE_0__[\"lensSlackWeblinkId\"];\n }\n const lensTwitterWeblinkLink = weblinks.find(weblink => weblink.name === _5_1_4__WEBPACK_IMPORTED_MODULE_1__[\"lensTwitterWeblinkName\"]);\n if (lensTwitterWeblinkLink) {\n lensTwitterWeblinkLink.id = _common_vars__WEBPACK_IMPORTED_MODULE_0__[\"lensTwitterWeblinkId\"];\n }\n const lensBlogWeblinkLink = weblinks.find(weblink => weblink.name === _5_1_4__WEBPACK_IMPORTED_MODULE_1__[\"lensBlogWeblinkName\"]);\n if (lensBlogWeblinkLink) {\n lensBlogWeblinkLink.id = _common_vars__WEBPACK_IMPORTED_MODULE_0__[\"lensBlogWeblinkId\"];\n }\n const kubernetesDocumentationWeblinkLink = weblinks.find(weblink => weblink.name === _5_1_4__WEBPACK_IMPORTED_MODULE_1__[\"kubernetesDocumentationWeblinkName\"]);\n if (kubernetesDocumentationWeblinkLink) {\n kubernetesDocumentationWeblinkLink.id = _common_vars__WEBPACK_IMPORTED_MODULE_0__[\"kubernetesDocumentationWeblinkId\"];\n }\n store.set(\"weblinks\", weblinks);\n },\n});\n\n\n//# sourceURL=webpack:///./src/migrations/weblinks-store/5.4.5-beta.1.ts?");
|
|
41560
|
+
|
|
41561
|
+
/***/ }),
|
|
41562
|
+
|
|
41563
|
+
/***/ "./src/migrations/weblinks-store/currentVersion.ts":
|
|
41564
|
+
/*!*********************************************************!*\
|
|
41565
|
+
!*** ./src/migrations/weblinks-store/currentVersion.ts ***!
|
|
41566
|
+
\*********************************************************/
|
|
41519
41567
|
/*! exports provided: default */
|
|
41520
41568
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
41521
41569
|
|
|
41522
41570
|
"use strict";
|
|
41523
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var
|
|
41571
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _common_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../common/utils */ \"./src/common/utils/index.ts\");\n/* harmony import */ var _common_vars__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../common/vars */ \"./src/common/vars.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n version: Object(_common_utils__WEBPACK_IMPORTED_MODULE_0__[\"getAppVersion\"])(),\n run(store) {\n const weblinksRaw = store.get(\"weblinks\");\n const weblinks = (Array.isArray(weblinksRaw) ? weblinksRaw : []);\n const slackWeblink = weblinks.find(weblink => weblink.id === _common_vars__WEBPACK_IMPORTED_MODULE_1__[\"lensSlackWeblinkId\"]);\n if (slackWeblink) {\n slackWeblink.url = _common_vars__WEBPACK_IMPORTED_MODULE_1__[\"slackUrl\"];\n }\n store.set(\"weblinks\", weblinks);\n },\n});\n\n\n//# sourceURL=webpack:///./src/migrations/weblinks-store/currentVersion.ts?");
|
|
41524
41572
|
|
|
41525
41573
|
/***/ }),
|
|
41526
41574
|
|
|
@@ -41532,7 +41580,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _com
|
|
|
41532
41580
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
41533
41581
|
|
|
41534
41582
|
"use strict";
|
|
41535
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../helpers */ \"./src/migrations/helpers.ts\");\n/* harmony import */ var _5_1_4__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./5.1.4 */ \"./src/migrations/weblinks-store/5.1.4.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_helpers__WEBPACK_IMPORTED_MODULE_0__[\"joinMigrations\"])(_5_1_4__WEBPACK_IMPORTED_MODULE_1__[\"default\"]));\n\n\n//# sourceURL=webpack:///./src/migrations/weblinks-store/index.ts?");
|
|
41583
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../helpers */ \"./src/migrations/helpers.ts\");\n/* harmony import */ var _5_1_4__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./5.1.4 */ \"./src/migrations/weblinks-store/5.1.4.ts\");\n/* harmony import */ var _5_4_5_beta_1__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./5.4.5-beta.1 */ \"./src/migrations/weblinks-store/5.4.5-beta.1.ts\");\n/* harmony import */ var _currentVersion__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./currentVersion */ \"./src/migrations/weblinks-store/currentVersion.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_helpers__WEBPACK_IMPORTED_MODULE_0__[\"joinMigrations\"])(_5_1_4__WEBPACK_IMPORTED_MODULE_1__[\"default\"], _5_4_5_beta_1__WEBPACK_IMPORTED_MODULE_2__[\"default\"], _currentVersion__WEBPACK_IMPORTED_MODULE_3__[\"default\"]));\n\n\n//# sourceURL=webpack:///./src/migrations/weblinks-store/index.ts?");
|
|
41536
41584
|
|
|
41537
41585
|
/***/ }),
|
|
41538
41586
|
|
|
@@ -42012,7 +42060,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _nod
|
|
|
42012
42060
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
42013
42061
|
|
|
42014
42062
|
"use strict";
|
|
42015
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"PodDetailsList\", function() { return PodDetailsList; });\n/* harmony import */ var _pod_details_list_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./pod-details-list.scss */ \"./src/renderer/components/+workloads-pods/pod-details-list.scss\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var lodash_kebabCase__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/kebabCase */ \"./node_modules/lodash/kebabCase.js\");\n/* harmony import */ var lodash_kebabCase__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_kebabCase__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var mobx__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! mobx */ \"./node_modules/mobx/dist/mobx.esm.js\");\n/* harmony import */ var mobx_react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! mobx-react */ \"./node_modules/mobx-react/dist/mobxreact.esm.js\");\n/* harmony import */ var _pods_store__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./pods.store */ \"./src/renderer/components/+workloads-pods/pods.store.ts\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils */ \"./src/renderer/utils/index.ts\");\n/* harmony import */ var _line_progress__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../line-progress */ \"./src/renderer/components/line-progress/index.ts\");\n/* harmony import */ var _table__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../table */ \"./src/renderer/components/table/index.ts\");\n/* harmony import */ var _spinner__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../spinner */ \"./src/renderer/components/spinner/index.ts\");\n/* harmony import */ var _drawer__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../drawer */ \"./src/renderer/components/drawer/index.ts\");\n/* harmony import */ var _kube_object_status_icon__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../kube-object-status-icon */ \"./src/renderer/components/kube-object-status-icon/index.ts\");\n/* harmony import */ var _kube_detail_params__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../kube-detail-params */ \"./src/renderer/components/kube-detail-params/index.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __metadata = (undefined && undefined.__metadata) || function (k, v) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(k, v);\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar sortBy;\n(function (sortBy) {\n sortBy[\"name\"] = \"name\";\n sortBy[\"namespace\"] = \"namespace\";\n sortBy[\"cpu\"] = \"cpu\";\n sortBy[\"memory\"] = \"memory\";\n})(sortBy || (sortBy = {}));\nlet PodDetailsList = class PodDetailsList extends react__WEBPACK_IMPORTED_MODULE_1___default.a.Component {\n constructor() {\n super(...arguments);\n Object.defineProperty(this, \"metricsWatcher\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: Object(_utils__WEBPACK_IMPORTED_MODULE_6__[\"interval\"])(120, () => {\n _pods_store__WEBPACK_IMPORTED_MODULE_5__[\"podsStore\"].loadKubeMetrics(this.props.owner.getNs());\n })\n });\n }\n componentDidMount() {\n this.metricsWatcher.start(true);\n Object(mobx_react__WEBPACK_IMPORTED_MODULE_4__[\"disposeOnUnmount\"])(this, [\n Object(mobx__WEBPACK_IMPORTED_MODULE_3__[\"reaction\"])(() => this.props.owner, () => this.metricsWatcher.restart(true)),\n ]);\n }\n componentWillUnmount() {\n this.metricsWatcher.stop();\n }\n renderCpuUsage(id, usage) {\n const { maxCpu } = this.props;\n const value = usage.toFixed(3);\n const tooltip = (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"p\", null,\n \"CPU: \",\n Math.ceil(usage * 100) / maxCpu,\n \"%\",\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"br\", null),\n usage.toFixed(3)));\n if (!maxCpu) {\n if (parseFloat(value) === 0)\n return 0;\n return value;\n }\n return (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_line_progress__WEBPACK_IMPORTED_MODULE_7__[\"LineProgress\"], { max: maxCpu, value: usage, tooltip: parseFloat(value) !== 0 ? tooltip : null }));\n }\n renderMemoryUsage(id, usage) {\n const { maxMemory } = this.props;\n const tooltip = (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"p\", null,\n \"Memory: \",\n Math.ceil(usage * 100 / maxMemory),\n \"%\",\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"br\", null),\n Object(_utils__WEBPACK_IMPORTED_MODULE_6__[\"bytesToUnits\"])(usage, 3)));\n if (!maxMemory)\n return usage ? Object(_utils__WEBPACK_IMPORTED_MODULE_6__[\"bytesToUnits\"])(usage) : 0;\n return (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_line_progress__WEBPACK_IMPORTED_MODULE_7__[\"LineProgress\"], { max: maxMemory, value: usage, tooltip: usage != 0 ? tooltip : null }));\n }\n getTableRow(uid) {\n const { pods } = this.props;\n const pod = pods.find(pod => pod.getId() == uid);\n const metrics = _pods_store__WEBPACK_IMPORTED_MODULE_5__[\"podsStore\"].getPodKubeMetrics(pod);\n return (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableRow\"], { key: pod.getId(), sortItem: pod, nowrap: true, onClick: Object(_utils__WEBPACK_IMPORTED_MODULE_6__[\"prevDefault\"])(() => Object(_kube_detail_params__WEBPACK_IMPORTED_MODULE_12__[\"showDetails\"])(pod.selfLink, false)) },\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"name\" }, pod.getName()),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"warning\" },\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_kube_object_status_icon__WEBPACK_IMPORTED_MODULE_11__[\"KubeObjectStatusIcon\"], { key: \"icon\", object: pod })),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"namespace\" }, pod.getNs()),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"ready\" },\n pod.getRunningContainers().length,\n \"/\",\n pod.getContainers().length),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"cpu\" }, this.renderCpuUsage(`cpu-${pod.getId()}`, metrics.cpu)),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"memory\" }, this.renderMemoryUsage(`memory-${pod.getId()}`, metrics.memory)),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: Object(_utils__WEBPACK_IMPORTED_MODULE_6__[\"cssNames\"])(\"status\", lodash_kebabCase__WEBPACK_IMPORTED_MODULE_2___default()(pod.getStatusMessage())) }, pod.getStatusMessage())));\n }\n render() {\n const { pods } = this.props;\n if (!_pods_store__WEBPACK_IMPORTED_MODULE_5__[\"podsStore\"].isLoaded) {\n return (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"div\", { className: \"PodDetailsList flex justify-center\" },\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_spinner__WEBPACK_IMPORTED_MODULE_9__[\"Spinner\"], null)));\n }\n if (!pods.length) {\n return null;\n }\n const virtual = pods.length > 20;\n return (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"div\", { className: \"PodDetailsList flex column\" },\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_drawer__WEBPACK_IMPORTED_MODULE_10__[\"DrawerTitle\"], { title: \"Pods\" }),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"Table\"], { tableId: \"workloads_pod_details_list\", items: pods, selectable: true, scrollable: false, virtual: virtual, \n // 660 is the exact hight required for 20 items with the default paddings\n virtualHeight: 660, sortable: {\n [sortBy.name]: pod => pod.getName(),\n [sortBy.namespace]: pod => pod.getNs(),\n [sortBy.cpu]: pod => _pods_store__WEBPACK_IMPORTED_MODULE_5__[\"podsStore\"].getPodKubeMetrics(pod).cpu,\n [sortBy.memory]: pod => _pods_store__WEBPACK_IMPORTED_MODULE_5__[\"podsStore\"].getPodKubeMetrics(pod).memory,\n }, sortByDefault: { sortBy: sortBy.cpu, orderBy: \"desc\" }, sortSyncWithUrl: false, getTableRow: this.getTableRow, renderRow: !virtual && (pod => this.getTableRow(pod.getId())), className: \"box grow\" },\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableHead\"], null,\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"name\", sortBy: sortBy.name }, \"Name\"),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"warning\" }),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"namespace\", sortBy: sortBy.namespace }, \"Namespace\"),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"ready\" }, \"Ready\"),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"cpu\", sortBy: sortBy.cpu }, \"CPU\"),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"memory\", sortBy: sortBy.memory }, \"Memory\"),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"status\" }, \"Status\")))));\n }\n};\n__decorate([\n _utils__WEBPACK_IMPORTED_MODULE_6__[\"boundMethod\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", [String]),\n __metadata(\"design:returntype\", void 0)\n], PodDetailsList.prototype, \"getTableRow\", null);\nPodDetailsList = __decorate([\n mobx_react__WEBPACK_IMPORTED_MODULE_4__[\"observer\"]\n], PodDetailsList);\n\n\n\n//# sourceURL=webpack:///./src/renderer/components/+workloads-pods/pod-details-list.tsx?");
|
|
42063
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"PodDetailsList\", function() { return PodDetailsList; });\n/* harmony import */ var _pod_details_list_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./pod-details-list.scss */ \"./src/renderer/components/+workloads-pods/pod-details-list.scss\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var lodash_kebabCase__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/kebabCase */ \"./node_modules/lodash/kebabCase.js\");\n/* harmony import */ var lodash_kebabCase__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_kebabCase__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var mobx__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! mobx */ \"./node_modules/mobx/dist/mobx.esm.js\");\n/* harmony import */ var mobx_react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! mobx-react */ \"./node_modules/mobx-react/dist/mobxreact.esm.js\");\n/* harmony import */ var _pods_store__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./pods.store */ \"./src/renderer/components/+workloads-pods/pods.store.ts\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils */ \"./src/renderer/utils/index.ts\");\n/* harmony import */ var _line_progress__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../line-progress */ \"./src/renderer/components/line-progress/index.ts\");\n/* harmony import */ var _table__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../table */ \"./src/renderer/components/table/index.ts\");\n/* harmony import */ var _spinner__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../spinner */ \"./src/renderer/components/spinner/index.ts\");\n/* harmony import */ var _drawer__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../drawer */ \"./src/renderer/components/drawer/index.ts\");\n/* harmony import */ var _kube_object_status_icon__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../kube-object-status-icon */ \"./src/renderer/components/kube-object-status-icon/index.ts\");\n/* harmony import */ var _kube_detail_params__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../kube-detail-params */ \"./src/renderer/components/kube-detail-params/index.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __metadata = (undefined && undefined.__metadata) || function (k, v) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(k, v);\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar sortBy;\n(function (sortBy) {\n sortBy[\"name\"] = \"name\";\n sortBy[\"namespace\"] = \"namespace\";\n sortBy[\"cpu\"] = \"cpu\";\n sortBy[\"memory\"] = \"memory\";\n})(sortBy || (sortBy = {}));\nlet PodDetailsList = class PodDetailsList extends react__WEBPACK_IMPORTED_MODULE_1___default.a.Component {\n constructor() {\n super(...arguments);\n Object.defineProperty(this, \"metricsWatcher\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: Object(_utils__WEBPACK_IMPORTED_MODULE_6__[\"interval\"])(120, () => {\n _pods_store__WEBPACK_IMPORTED_MODULE_5__[\"podsStore\"].loadKubeMetrics(this.props.owner.getNs());\n })\n });\n }\n componentDidMount() {\n this.metricsWatcher.start(true);\n Object(mobx_react__WEBPACK_IMPORTED_MODULE_4__[\"disposeOnUnmount\"])(this, [\n Object(mobx__WEBPACK_IMPORTED_MODULE_3__[\"reaction\"])(() => this.props.owner, () => this.metricsWatcher.restart(true)),\n ]);\n }\n componentWillUnmount() {\n this.metricsWatcher.stop();\n }\n renderCpuUsage(id, usage) {\n const { maxCpu } = this.props;\n const value = usage.toFixed(3);\n const tooltip = (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"p\", null,\n \"CPU: \",\n Math.ceil(usage * 100) / maxCpu,\n \"%\",\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"br\", null),\n usage.toFixed(3)));\n if (!maxCpu) {\n if (parseFloat(value) === 0)\n return 0;\n return value;\n }\n return (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_line_progress__WEBPACK_IMPORTED_MODULE_7__[\"LineProgress\"], { max: maxCpu, value: usage, tooltip: parseFloat(value) !== 0 ? tooltip : null }));\n }\n renderMemoryUsage(id, usage) {\n const { maxMemory } = this.props;\n const tooltip = (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"p\", null,\n \"Memory: \",\n Math.ceil(usage * 100 / maxMemory),\n \"%\",\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"br\", null),\n Object(_utils__WEBPACK_IMPORTED_MODULE_6__[\"bytesToUnits\"])(usage, { precision: 3 })));\n if (!maxMemory)\n return usage ? Object(_utils__WEBPACK_IMPORTED_MODULE_6__[\"bytesToUnits\"])(usage) : 0;\n return (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_line_progress__WEBPACK_IMPORTED_MODULE_7__[\"LineProgress\"], { max: maxMemory, value: usage, tooltip: usage != 0 ? tooltip : null }));\n }\n getTableRow(uid) {\n const { pods } = this.props;\n const pod = pods.find(pod => pod.getId() == uid);\n const metrics = _pods_store__WEBPACK_IMPORTED_MODULE_5__[\"podsStore\"].getPodKubeMetrics(pod);\n return (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableRow\"], { key: pod.getId(), sortItem: pod, nowrap: true, onClick: Object(_utils__WEBPACK_IMPORTED_MODULE_6__[\"prevDefault\"])(() => Object(_kube_detail_params__WEBPACK_IMPORTED_MODULE_12__[\"showDetails\"])(pod.selfLink, false)) },\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"name\" }, pod.getName()),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"warning\" },\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_kube_object_status_icon__WEBPACK_IMPORTED_MODULE_11__[\"KubeObjectStatusIcon\"], { key: \"icon\", object: pod })),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"namespace\" }, pod.getNs()),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"ready\" },\n pod.getRunningContainers().length,\n \"/\",\n pod.getContainers().length),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"cpu\" }, this.renderCpuUsage(`cpu-${pod.getId()}`, metrics.cpu)),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"memory\" }, this.renderMemoryUsage(`memory-${pod.getId()}`, metrics.memory)),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: Object(_utils__WEBPACK_IMPORTED_MODULE_6__[\"cssNames\"])(\"status\", lodash_kebabCase__WEBPACK_IMPORTED_MODULE_2___default()(pod.getStatusMessage())) }, pod.getStatusMessage())));\n }\n render() {\n const { pods } = this.props;\n if (!_pods_store__WEBPACK_IMPORTED_MODULE_5__[\"podsStore\"].isLoaded) {\n return (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"div\", { className: \"PodDetailsList flex justify-center\" },\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_spinner__WEBPACK_IMPORTED_MODULE_9__[\"Spinner\"], null)));\n }\n if (!pods.length) {\n return null;\n }\n const virtual = pods.length > 20;\n return (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"div\", { className: \"PodDetailsList flex column\" },\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_drawer__WEBPACK_IMPORTED_MODULE_10__[\"DrawerTitle\"], { title: \"Pods\" }),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"Table\"], { tableId: \"workloads_pod_details_list\", items: pods, selectable: true, scrollable: false, virtual: virtual, \n // 660 is the exact hight required for 20 items with the default paddings\n virtualHeight: 660, sortable: {\n [sortBy.name]: pod => pod.getName(),\n [sortBy.namespace]: pod => pod.getNs(),\n [sortBy.cpu]: pod => _pods_store__WEBPACK_IMPORTED_MODULE_5__[\"podsStore\"].getPodKubeMetrics(pod).cpu,\n [sortBy.memory]: pod => _pods_store__WEBPACK_IMPORTED_MODULE_5__[\"podsStore\"].getPodKubeMetrics(pod).memory,\n }, sortByDefault: { sortBy: sortBy.cpu, orderBy: \"desc\" }, sortSyncWithUrl: false, getTableRow: this.getTableRow, renderRow: !virtual && (pod => this.getTableRow(pod.getId())), className: \"box grow\" },\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableHead\"], null,\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"name\", sortBy: sortBy.name }, \"Name\"),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"warning\" }),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"namespace\", sortBy: sortBy.namespace }, \"Namespace\"),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"ready\" }, \"Ready\"),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"cpu\", sortBy: sortBy.cpu }, \"CPU\"),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"memory\", sortBy: sortBy.memory }, \"Memory\"),\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_table__WEBPACK_IMPORTED_MODULE_8__[\"TableCell\"], { className: \"status\" }, \"Status\")))));\n }\n};\n__decorate([\n _utils__WEBPACK_IMPORTED_MODULE_6__[\"boundMethod\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", [String]),\n __metadata(\"design:returntype\", void 0)\n], PodDetailsList.prototype, \"getTableRow\", null);\nPodDetailsList = __decorate([\n mobx_react__WEBPACK_IMPORTED_MODULE_4__[\"observer\"]\n], PodDetailsList);\n\n\n\n//# sourceURL=webpack:///./src/renderer/components/+workloads-pods/pod-details-list.tsx?");
|
|
42016
42064
|
|
|
42017
42065
|
/***/ }),
|
|
42018
42066
|
|
|
@@ -42156,7 +42204,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _nod
|
|
|
42156
42204
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
42157
42205
|
|
|
42158
42206
|
"use strict";
|
|
42159
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Animate\", function() { return Animate; });\n/* harmony import */ var _animate_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./animate.scss */ \"./src/renderer/components/animate/animate.scss\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var mobx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! mobx */ \"./node_modules/mobx/dist/mobx.esm.js\");\n/* harmony import */ var mobx_react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! mobx-react */ \"./node_modules/mobx-react/dist/mobxreact.esm.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils */ \"./src/renderer/utils/index.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __metadata = (undefined && undefined.__metadata) || function (k, v) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(k, v);\n};\n\n\n\n\n\nlet Animate = class Animate extends react__WEBPACK_IMPORTED_MODULE_1___default.a.Component {\n constructor(props) {\n super(props);\n Object.defineProperty(this, \"isVisible\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: !!this.props.enter\n });\n Object.defineProperty(this, \"statusClassName\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: {\n enter: false,\n leave: false,\n }\n });\n Object(mobx__WEBPACK_IMPORTED_MODULE_2__[\"makeObservable\"])(this);\n }\n get contentElem() {\n return react__WEBPACK_IMPORTED_MODULE_1___default.a.Children.only(this.props.children);\n }\n componentDidMount() {\n Object(mobx_react__WEBPACK_IMPORTED_MODULE_3__[\"disposeOnUnmount\"])(this, [\n Object(mobx__WEBPACK_IMPORTED_MODULE_2__[\"reaction\"])(() => this.props.enter, enter => {\n if (enter)\n this.enter();\n else\n this.leave();\n }, {\n fireImmediately: true,\n }),\n ]);\n }\n enter() {\n this.isVisible = true; // triggers render() to apply css-animation in existing dom\n requestAnimationFrame(() => {\n this.statusClassName.enter = true;\n this.props.onEnter();\n });\n }\n leave() {\n if (!this.isVisible)\n return;\n this.statusClassName.leave = true;\n this.props.onLeave();\n this.resetAfterLeaveDuration();\n }\n resetAfterLeaveDuration() {\n setTimeout(() => this.reset(), this.props.leaveDuration);\n }\n reset() {\n this.isVisible = false;\n this.statusClassName.enter = false;\n this.statusClassName.leave = false;\n }\n render() {\n const { name, enterDuration, leaveDuration } = this.props;\n const contentElem = this.contentElem;\n const
|
|
42207
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Animate\", function() { return Animate; });\n/* harmony import */ var _animate_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./animate.scss */ \"./src/renderer/components/animate/animate.scss\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var mobx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! mobx */ \"./node_modules/mobx/dist/mobx.esm.js\");\n/* harmony import */ var mobx_react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! mobx-react */ \"./node_modules/mobx-react/dist/mobxreact.esm.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils */ \"./src/renderer/utils/index.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __metadata = (undefined && undefined.__metadata) || function (k, v) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(k, v);\n};\n\n\n\n\n\nlet Animate = class Animate extends react__WEBPACK_IMPORTED_MODULE_1___default.a.Component {\n constructor(props) {\n super(props);\n Object.defineProperty(this, \"isVisible\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: !!this.props.enter\n });\n Object.defineProperty(this, \"statusClassName\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: {\n enter: false,\n leave: false,\n }\n });\n Object(mobx__WEBPACK_IMPORTED_MODULE_2__[\"makeObservable\"])(this);\n }\n get contentElem() {\n return react__WEBPACK_IMPORTED_MODULE_1___default.a.Children.only(this.props.children);\n }\n componentDidMount() {\n Object(mobx_react__WEBPACK_IMPORTED_MODULE_3__[\"disposeOnUnmount\"])(this, [\n Object(mobx__WEBPACK_IMPORTED_MODULE_2__[\"reaction\"])(() => this.props.enter, enter => {\n if (enter)\n this.enter();\n else\n this.leave();\n }, {\n fireImmediately: true,\n }),\n ]);\n }\n enter() {\n this.isVisible = true; // triggers render() to apply css-animation in existing dom\n requestAnimationFrame(() => {\n this.statusClassName.enter = true;\n this.props.onEnter();\n });\n }\n leave() {\n if (!this.isVisible)\n return;\n this.statusClassName.leave = true;\n this.props.onLeave();\n this.resetAfterLeaveDuration();\n }\n resetAfterLeaveDuration() {\n setTimeout(() => this.reset(), this.props.leaveDuration);\n }\n reset() {\n this.isVisible = false;\n this.statusClassName.enter = false;\n this.statusClassName.leave = false;\n }\n render() {\n if (!this.isVisible) {\n return null;\n }\n const { name, enterDuration, leaveDuration } = this.props;\n const contentElem = this.contentElem;\n const cssVarsForAnimation = {\n \"--enter-duration\": `${enterDuration}ms`,\n \"--leave-duration\": `${leaveDuration}ms`,\n };\n return react__WEBPACK_IMPORTED_MODULE_1___default.a.cloneElement(contentElem, {\n className: Object(_utils__WEBPACK_IMPORTED_MODULE_4__[\"cssNames\"])(\"Animate\", name, contentElem.props.className, this.statusClassName),\n children: contentElem.props.children,\n style: Object.assign(Object.assign({}, contentElem.props.style), cssVarsForAnimation),\n });\n }\n};\nObject.defineProperty(Animate, \"defaultProps\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: {\n name: \"opacity\",\n enter: true,\n onEnter: _utils__WEBPACK_IMPORTED_MODULE_4__[\"noop\"],\n onLeave: _utils__WEBPACK_IMPORTED_MODULE_4__[\"noop\"],\n enterDuration: 100,\n leaveDuration: 100,\n }\n});\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_2__[\"observable\"],\n __metadata(\"design:type\", Object)\n], Animate.prototype, \"isVisible\", void 0);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_2__[\"observable\"],\n __metadata(\"design:type\", Object)\n], Animate.prototype, \"statusClassName\", void 0);\nAnimate = __decorate([\n mobx_react__WEBPACK_IMPORTED_MODULE_3__[\"observer\"],\n __metadata(\"design:paramtypes\", [Object])\n], Animate);\n\n\n\n//# sourceURL=webpack:///./src/renderer/components/animate/animate.tsx?");
|
|
42160
42208
|
|
|
42161
42209
|
/***/ }),
|
|
42162
42210
|
|
|
@@ -42252,7 +42300,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _but
|
|
|
42252
42300
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
42253
42301
|
|
|
42254
42302
|
"use strict";
|
|
42255
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"BarChart\", function() { return BarChart; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"memoryOptions\", function() { return memoryOptions; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"cpuOptions\", function() { return cpuOptions; });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var lodash_merge__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/merge */ \"./node_modules/lodash/merge.js\");\n/* harmony import */ var lodash_merge__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_merge__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! moment */ \"./node_modules/moment/moment.js\");\n/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var color__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! color */ \"./node_modules/color/index.js\");\n/* harmony import */ var color__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(color__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var mobx_react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! mobx-react */ \"./node_modules/mobx-react/dist/mobxreact.esm.js\");\n/* harmony import */ var _chart__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./chart */ \"./src/renderer/components/chart/chart.tsx\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils */ \"./src/renderer/utils/index.ts\");\n/* harmony import */ var _zebra_stripes_plugin__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./zebra-stripes.plugin */ \"./src/renderer/components/chart/zebra-stripes.plugin.ts\");\n/* harmony import */ var _theme_store__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../theme.store */ \"./src/renderer/theme.store.ts\");\n/* harmony import */ var _resource_metrics_no_metrics__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../resource-metrics/no-metrics */ \"./src/renderer/components/resource-metrics/no-metrics.tsx\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __rest = (undefined && undefined.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\n\n\n\n\n\n\n\n\n\n\nconst defaultProps = {\n timeLabelStep: 10,\n plugins: [_zebra_stripes_plugin__WEBPACK_IMPORTED_MODULE_7__[\"ZebraStripes\"]],\n};\nlet BarChart = class BarChart extends react__WEBPACK_IMPORTED_MODULE_0___default.a.Component {\n render() {\n const _a = this.props, { name, data, className, timeLabelStep, plugins, options: customOptions } = _a, settings = __rest(_a, [\"name\", \"data\", \"className\", \"timeLabelStep\", \"plugins\", \"options\"]);\n const { textColorPrimary, borderFaintColor, chartStripesColor } = _theme_store__WEBPACK_IMPORTED_MODULE_8__[\"ThemeStore\"].getInstance().activeTheme.colors;\n const getBarColor = ({ dataset }) => {\n const color = dataset.borderColor;\n return color__WEBPACK_IMPORTED_MODULE_3___default()(color).alpha(0.2).string();\n };\n // Remove empty sets and insert default data\n const chartData = Object.assign(Object.assign({}, data), { datasets: data.datasets\n .filter(set => set.data.length)\n .map(item => {\n return Object.assign({ type: _chart__WEBPACK_IMPORTED_MODULE_5__[\"ChartKind\"].BAR, borderWidth: { top: 3 }, barPercentage: 1, categoryPercentage: 1 }, item);\n }) });\n if (chartData.datasets.length == 0) {\n return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_resource_metrics_no_metrics__WEBPACK_IMPORTED_MODULE_9__[\"NoMetrics\"], null);\n }\n const formatTimeLabels = (timestamp, index) => {\n const label = moment__WEBPACK_IMPORTED_MODULE_2___default()(parseInt(timestamp)).format(\"HH:mm\");\n const offset = \" \";\n if (index == 0)\n return offset + label;\n if (index == 60)\n return label + offset;\n return index % timeLabelStep == 0 ? label : \"\";\n };\n const barOptions = {\n maintainAspectRatio: false,\n responsive: true,\n scales: {\n xAxes: [{\n type: \"time\",\n offset: true,\n gridLines: {\n display: false,\n },\n stacked: true,\n ticks: {\n callback: formatTimeLabels,\n autoSkip: false,\n source: \"data\",\n backdropColor: \"white\",\n fontColor: textColorPrimary,\n fontSize: 11,\n maxRotation: 0,\n minRotation: 0,\n },\n bounds: \"data\",\n time: {\n unit: \"minute\",\n displayFormats: {\n minute: \"x\",\n },\n parser: timestamp => moment__WEBPACK_IMPORTED_MODULE_2___default.a.unix(parseInt(timestamp)),\n },\n }],\n yAxes: [{\n position: \"right\",\n gridLines: {\n color: borderFaintColor,\n drawBorder: false,\n tickMarkLength: 0,\n zeroLineWidth: 0,\n },\n ticks: {\n maxTicksLimit: 6,\n fontColor: textColorPrimary,\n fontSize: 11,\n padding: 8,\n min: 0,\n },\n }],\n },\n tooltips: {\n mode: \"index\",\n position: \"cursor\",\n callbacks: {\n title([tooltip]) {\n const xLabel = tooltip === null || tooltip === void 0 ? void 0 : tooltip.xLabel;\n const skipLabel = xLabel == null || new Date(xLabel).getTime() > Date.now();\n if (skipLabel)\n return \"\";\n return String(xLabel);\n },\n labelColor: ({ datasetIndex }) => {\n return {\n borderColor: \"darkgray\",\n backgroundColor: chartData.datasets[datasetIndex].borderColor,\n };\n },\n },\n },\n animation: {\n duration: 0,\n },\n elements: {\n rectangle: {\n backgroundColor: getBarColor.bind(null),\n },\n },\n plugins: {\n ZebraStripes: {\n stripeColor: chartStripesColor,\n interval: chartData.datasets[0].data.length,\n },\n },\n };\n const options = lodash_merge__WEBPACK_IMPORTED_MODULE_1___default()(barOptions, customOptions);\n return (react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_chart__WEBPACK_IMPORTED_MODULE_5__[\"Chart\"], Object.assign({ className: Object(_utils__WEBPACK_IMPORTED_MODULE_6__[\"cssNames\"])(\"BarChart flex box grow column\", className), type: _chart__WEBPACK_IMPORTED_MODULE_5__[\"ChartKind\"].BAR, data: chartData, options: options, plugins: plugins }, settings)));\n }\n};\nObject.defineProperty(BarChart, \"defaultProps\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: defaultProps\n});\nBarChart = __decorate([\n mobx_react__WEBPACK_IMPORTED_MODULE_4__[\"observer\"]\n], BarChart);\n\n// Default options for all charts containing memory units (network, disk, memory, etc)\nconst memoryOptions = {\n scales: {\n yAxes: [{\n ticks: {\n callback: (value) => {\n if (typeof value == \"string\") {\n const float = parseFloat(value);\n if (float < 1) {\n return float.toFixed(3);\n }\n return Object(_utils__WEBPACK_IMPORTED_MODULE_6__[\"bytesToUnits\"])(parseInt(value));\n }\n return Object(_utils__WEBPACK_IMPORTED_MODULE_6__[\"bytesToUnits\"])(value);\n },\n stepSize: 1,\n },\n }],\n },\n tooltips: {\n callbacks: {\n label: ({ datasetIndex, index }, { datasets }) => {\n const { label, data } = datasets[datasetIndex];\n const value = data[index];\n return `${label}: ${Object(_utils__WEBPACK_IMPORTED_MODULE_6__[\"bytesToUnits\"])(parseInt(value.y.toString()), 3)}`;\n },\n },\n },\n};\n// Default options for all charts with cpu units or other decimal numbers\nconst cpuOptions = {\n scales: {\n yAxes: [{\n ticks: {\n callback: (value) => {\n const float = parseFloat(`${value}`);\n if (float == 0)\n return \"0\";\n if (float < 10)\n return float.toFixed(3);\n if (float < 100)\n return float.toFixed(2);\n return float.toFixed(1);\n },\n },\n }],\n },\n tooltips: {\n callbacks: {\n label: ({ datasetIndex, index }, { datasets }) => {\n const { label, data } = datasets[datasetIndex];\n const value = data[index];\n return `${label}: ${parseFloat(value.y).toPrecision(2)}`;\n },\n },\n },\n};\n\n\n//# sourceURL=webpack:///./src/renderer/components/chart/bar-chart.tsx?");
|
|
42303
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"BarChart\", function() { return BarChart; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"memoryOptions\", function() { return memoryOptions; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"cpuOptions\", function() { return cpuOptions; });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var lodash_merge__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/merge */ \"./node_modules/lodash/merge.js\");\n/* harmony import */ var lodash_merge__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_merge__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! moment */ \"./node_modules/moment/moment.js\");\n/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var color__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! color */ \"./node_modules/color/index.js\");\n/* harmony import */ var color__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(color__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var mobx_react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! mobx-react */ \"./node_modules/mobx-react/dist/mobxreact.esm.js\");\n/* harmony import */ var _chart__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./chart */ \"./src/renderer/components/chart/chart.tsx\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils */ \"./src/renderer/utils/index.ts\");\n/* harmony import */ var _zebra_stripes_plugin__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./zebra-stripes.plugin */ \"./src/renderer/components/chart/zebra-stripes.plugin.ts\");\n/* harmony import */ var _theme_store__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../theme.store */ \"./src/renderer/theme.store.ts\");\n/* harmony import */ var _resource_metrics_no_metrics__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../resource-metrics/no-metrics */ \"./src/renderer/components/resource-metrics/no-metrics.tsx\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __rest = (undefined && undefined.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\n\n\n\n\n\n\n\n\n\n\nconst defaultProps = {\n timeLabelStep: 10,\n plugins: [_zebra_stripes_plugin__WEBPACK_IMPORTED_MODULE_7__[\"ZebraStripes\"]],\n};\nlet BarChart = class BarChart extends react__WEBPACK_IMPORTED_MODULE_0___default.a.Component {\n render() {\n const _a = this.props, { name, data, className, timeLabelStep, plugins, options: customOptions } = _a, settings = __rest(_a, [\"name\", \"data\", \"className\", \"timeLabelStep\", \"plugins\", \"options\"]);\n const { textColorPrimary, borderFaintColor, chartStripesColor } = _theme_store__WEBPACK_IMPORTED_MODULE_8__[\"ThemeStore\"].getInstance().activeTheme.colors;\n const getBarColor = ({ dataset }) => {\n const color = dataset.borderColor;\n return color__WEBPACK_IMPORTED_MODULE_3___default()(color).alpha(0.2).string();\n };\n // Remove empty sets and insert default data\n const chartData = Object.assign(Object.assign({}, data), { datasets: data.datasets\n .filter(set => set.data.length)\n .map(item => {\n return Object.assign({ type: _chart__WEBPACK_IMPORTED_MODULE_5__[\"ChartKind\"].BAR, borderWidth: { top: 3 }, barPercentage: 1, categoryPercentage: 1 }, item);\n }) });\n if (chartData.datasets.length == 0) {\n return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_resource_metrics_no_metrics__WEBPACK_IMPORTED_MODULE_9__[\"NoMetrics\"], null);\n }\n const formatTimeLabels = (timestamp, index) => {\n const label = moment__WEBPACK_IMPORTED_MODULE_2___default()(parseInt(timestamp)).format(\"HH:mm\");\n const offset = \" \";\n if (index == 0)\n return offset + label;\n if (index == 60)\n return label + offset;\n return index % timeLabelStep == 0 ? label : \"\";\n };\n const barOptions = {\n maintainAspectRatio: false,\n responsive: true,\n scales: {\n xAxes: [{\n type: \"time\",\n offset: true,\n gridLines: {\n display: false,\n },\n stacked: true,\n ticks: {\n callback: formatTimeLabels,\n autoSkip: false,\n source: \"data\",\n backdropColor: \"white\",\n fontColor: textColorPrimary,\n fontSize: 11,\n maxRotation: 0,\n minRotation: 0,\n },\n bounds: \"data\",\n time: {\n unit: \"minute\",\n displayFormats: {\n minute: \"x\",\n },\n parser: timestamp => moment__WEBPACK_IMPORTED_MODULE_2___default.a.unix(parseInt(timestamp)),\n },\n }],\n yAxes: [{\n position: \"right\",\n gridLines: {\n color: borderFaintColor,\n drawBorder: false,\n tickMarkLength: 0,\n zeroLineWidth: 0,\n },\n ticks: {\n maxTicksLimit: 6,\n fontColor: textColorPrimary,\n fontSize: 11,\n padding: 8,\n min: 0,\n },\n }],\n },\n tooltips: {\n mode: \"index\",\n position: \"cursor\",\n callbacks: {\n title([tooltip]) {\n const xLabel = tooltip === null || tooltip === void 0 ? void 0 : tooltip.xLabel;\n const skipLabel = xLabel == null || new Date(xLabel).getTime() > Date.now();\n if (skipLabel)\n return \"\";\n return String(xLabel);\n },\n labelColor: ({ datasetIndex }) => {\n return {\n borderColor: \"darkgray\",\n backgroundColor: chartData.datasets[datasetIndex].borderColor,\n };\n },\n },\n },\n animation: {\n duration: 0,\n },\n elements: {\n rectangle: {\n backgroundColor: getBarColor.bind(null),\n },\n },\n plugins: {\n ZebraStripes: {\n stripeColor: chartStripesColor,\n interval: chartData.datasets[0].data.length,\n },\n },\n };\n const options = lodash_merge__WEBPACK_IMPORTED_MODULE_1___default()(barOptions, customOptions);\n return (react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_chart__WEBPACK_IMPORTED_MODULE_5__[\"Chart\"], Object.assign({ className: Object(_utils__WEBPACK_IMPORTED_MODULE_6__[\"cssNames\"])(\"BarChart flex box grow column\", className), type: _chart__WEBPACK_IMPORTED_MODULE_5__[\"ChartKind\"].BAR, data: chartData, options: options, plugins: plugins }, settings)));\n }\n};\nObject.defineProperty(BarChart, \"defaultProps\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: defaultProps\n});\nBarChart = __decorate([\n mobx_react__WEBPACK_IMPORTED_MODULE_4__[\"observer\"]\n], BarChart);\n\n// Default options for all charts containing memory units (network, disk, memory, etc)\nconst memoryOptions = {\n scales: {\n yAxes: [{\n ticks: {\n callback: (value) => {\n if (typeof value == \"string\") {\n const float = parseFloat(value);\n if (float < 1) {\n return float.toFixed(3);\n }\n return Object(_utils__WEBPACK_IMPORTED_MODULE_6__[\"bytesToUnits\"])(parseInt(value));\n }\n return Object(_utils__WEBPACK_IMPORTED_MODULE_6__[\"bytesToUnits\"])(value);\n },\n stepSize: 1,\n },\n }],\n },\n tooltips: {\n callbacks: {\n label: ({ datasetIndex, index }, { datasets }) => {\n const { label, data } = datasets[datasetIndex];\n const value = data[index];\n return `${label}: ${Object(_utils__WEBPACK_IMPORTED_MODULE_6__[\"bytesToUnits\"])(parseInt(value.y.toString()), { precision: 3 })}`;\n },\n },\n },\n};\n// Default options for all charts with cpu units or other decimal numbers\nconst cpuOptions = {\n scales: {\n yAxes: [{\n ticks: {\n callback: (value) => {\n const float = parseFloat(`${value}`);\n if (float == 0)\n return \"0\";\n if (float < 10)\n return float.toFixed(3);\n if (float < 100)\n return float.toFixed(2);\n return float.toFixed(1);\n },\n },\n }],\n },\n tooltips: {\n callbacks: {\n label: ({ datasetIndex, index }, { datasets }) => {\n const { label, data } = datasets[datasetIndex];\n const value = data[index];\n return `${label}: ${parseFloat(value.y).toPrecision(2)}`;\n },\n },\n },\n};\n\n\n//# sourceURL=webpack:///./src/renderer/components/chart/bar-chart.tsx?");
|
|
42256
42304
|
|
|
42257
42305
|
/***/ }),
|
|
42258
42306
|
|
|
@@ -42300,7 +42348,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _nod
|
|
|
42300
42348
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
42301
42349
|
|
|
42302
42350
|
"use strict";
|
|
42303
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"PieChart\", function() { return PieChart; });\n/* harmony import */ var _pie_chart_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./pie-chart.scss */ \"./src/renderer/components/chart/pie-chart.scss\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var mobx_react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! mobx-react */ \"./node_modules/mobx-react/dist/mobxreact.esm.js\");\n/* harmony import */ var chart_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! chart.js */ \"./node_modules/chart.js/dist/Chart.js\");\n/* harmony import */ var chart_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(chart_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _chart__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./chart */ \"./src/renderer/components/chart/chart.tsx\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils */ \"./src/renderer/utils/index.ts\");\n/* harmony import */ var _theme_store__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../theme.store */ \"./src/renderer/theme.store.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __rest = (undefined && undefined.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\n\n\n\n\n\n\n\nlet PieChart = class PieChart extends react__WEBPACK_IMPORTED_MODULE_1___default.a.Component {\n render() {\n const _a = this.props, { data, className, options } = _a, chartProps = __rest(_a, [\"data\", \"className\", \"options\"]);\n const { contentColor } = _theme_store__WEBPACK_IMPORTED_MODULE_6__[\"ThemeStore\"].getInstance().activeTheme.colors;\n const cutouts = [88, 76, 63];\n const opts = this.props.showChart === false ? {} : Object.assign({ maintainAspectRatio: false, tooltips: {\n mode: \"index\",\n callbacks: {\n title: () => \"\",\n label: (tooltipItem, data) => {\n const dataset = data
|
|
42351
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"PieChart\", function() { return PieChart; });\n/* harmony import */ var _pie_chart_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./pie-chart.scss */ \"./src/renderer/components/chart/pie-chart.scss\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var mobx_react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! mobx-react */ \"./node_modules/mobx-react/dist/mobxreact.esm.js\");\n/* harmony import */ var chart_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! chart.js */ \"./node_modules/chart.js/dist/Chart.js\");\n/* harmony import */ var chart_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(chart_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _chart__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./chart */ \"./src/renderer/components/chart/chart.tsx\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils */ \"./src/renderer/utils/index.ts\");\n/* harmony import */ var _theme_store__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../theme.store */ \"./src/renderer/theme.store.ts\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __rest = (undefined && undefined.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\n\n\n\n\n\n\n\nlet PieChart = class PieChart extends react__WEBPACK_IMPORTED_MODULE_1___default.a.Component {\n render() {\n const _a = this.props, { data, className, options } = _a, chartProps = __rest(_a, [\"data\", \"className\", \"options\"]);\n const { contentColor } = _theme_store__WEBPACK_IMPORTED_MODULE_6__[\"ThemeStore\"].getInstance().activeTheme.colors;\n const cutouts = [88, 76, 63];\n const opts = this.props.showChart === false ? {} : Object.assign({ maintainAspectRatio: false, tooltips: {\n mode: \"index\",\n callbacks: {\n title: () => \"\",\n label: (tooltipItem, data) => {\n var _a;\n const dataset = data.datasets[tooltipItem.datasetIndex];\n const datasetData = dataset.data;\n const total = datasetData.reduce((acc, cur) => acc + cur, 0);\n const percent = Math.round((datasetData[tooltipItem.index] / total) * 100);\n const percentLabel = isNaN(percent) ? \"N/A\" : `${percent}%`;\n const tooltipLabel = (_a = dataset.tooltipLabels) === null || _a === void 0 ? void 0 : _a[tooltipItem.index];\n let tooltip = `${dataset.label}: ${percentLabel}`;\n if (tooltipLabel) {\n if (typeof tooltipLabel === \"function\") {\n tooltip = tooltipLabel(percentLabel);\n }\n else {\n tooltip = tooltipLabel;\n }\n }\n return tooltip;\n },\n },\n filter: ({ datasetIndex, index }, { datasets }) => {\n const { data } = datasets[datasetIndex];\n if (datasets.length === 1)\n return true;\n return index !== data.length - 1;\n },\n position: \"cursor\",\n }, elements: {\n arc: {\n borderWidth: 1,\n borderColor: contentColor,\n },\n }, cutoutPercentage: cutouts[data.datasets.length - 1] || 50, responsive: true }, options);\n return (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_chart__WEBPACK_IMPORTED_MODULE_4__[\"Chart\"], Object.assign({ className: Object(_utils__WEBPACK_IMPORTED_MODULE_5__[\"cssNames\"])(\"PieChart flex column align-center\", className), data: data, options: opts }, chartProps)));\n }\n};\nPieChart = __decorate([\n mobx_react__WEBPACK_IMPORTED_MODULE_2__[\"observer\"]\n], PieChart);\n\nchart_js__WEBPACK_IMPORTED_MODULE_3___default.a.Tooltip.positioners.cursor = function (elements, position) {\n return position;\n};\n\n\n//# sourceURL=webpack:///./src/renderer/components/chart/pie-chart.tsx?");
|
|
42304
42352
|
|
|
42305
42353
|
/***/ }),
|
|
42306
42354
|
|
|
@@ -43943,7 +43991,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _nod
|
|
|
43943
43991
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
43944
43992
|
|
|
43945
43993
|
"use strict";
|
|
43946
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MenuContext\", function() { return MenuContext; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Menu\", function() { return Menu; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"SubMenu\", function() { return SubMenu; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MenuItem\", function() { return MenuItem; });\n/* harmony import */ var _menu_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./menu.scss */ \"./src/renderer/components/menu/menu.scss\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-dom */ \"./node_modules/react-dom/index.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils */ \"./src/renderer/utils/index.ts\");\n/* harmony import */ var _animate__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../animate */ \"./src/renderer/components/animate/index.ts\");\n/* harmony import */ var _icon__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../icon */ \"./src/renderer/components/icon/index.ts\");\n/* harmony import */ var lodash_isEqual__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! lodash/isEqual */ \"./node_modules/lodash/isEqual.js\");\n/* harmony import */ var lodash_isEqual__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(lodash_isEqual__WEBPACK_IMPORTED_MODULE_6__);\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\nvar __rest = (undefined && undefined.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\n\n\n\n\n\n\n\nconst MenuContext = react__WEBPACK_IMPORTED_MODULE_1___default.a.createContext(null);\nconst defaultPropsMenu = {\n position: { right: true, bottom: true },\n autoFocus: false,\n usePortal: false,\n closeOnClickItem: true,\n closeOnClickOutside: true,\n closeOnScroll: false,\n toggleEvent: \"click\",\n};\nclass Menu extends react__WEBPACK_IMPORTED_MODULE_1___default.a.Component {\n constructor(props) {\n super(props);\n Object.defineProperty(this, \"opener\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"elem\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"items\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: {}\n });\n Object.defineProperty(this, \"state\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: {}\n });\n Object.defineProperty(this, \"refreshPosition\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: () => {\n if (!this.props.usePortal || !this.opener || !this.elem) {\n return;\n }\n const openerClientRect = this.opener.getBoundingClientRect();\n let { left: openerLeft, top: openerTop, bottom: openerBottom, right: openerRight } = this.opener.getBoundingClientRect();\n const withScroll = window.getComputedStyle(this.elem).position !== \"fixed\";\n // window global scroll corrections\n if (withScroll) {\n openerLeft += window.pageXOffset;\n openerTop += window.pageYOffset;\n openerRight = openerLeft + openerClientRect.width;\n openerBottom = openerTop + openerClientRect.height;\n }\n const extraMargin = this.props.usePortal ? 8 : 0;\n const { width: menuWidth, height: menuHeight } = this.elem.getBoundingClientRect();\n const rightSideOfMenu = openerLeft + menuWidth;\n const renderMenuLeft = rightSideOfMenu > window.innerWidth;\n const menuOnLeftSidePosition = `${openerRight - this.elem.offsetWidth}px`;\n const menuOnRightSidePosition = `${openerLeft}px`;\n const bottomOfMenu = openerBottom + extraMargin + menuHeight;\n const renderMenuOnTop = bottomOfMenu > window.innerHeight;\n const menuOnTopPosition = `${openerTop - this.elem.offsetHeight - extraMargin}px`;\n const menuOnBottomPosition = `${openerBottom + extraMargin}px`;\n this.setState({\n position: {\n top: renderMenuOnTop,\n bottom: !renderMenuOnTop,\n left: renderMenuLeft,\n right: !renderMenuLeft,\n },\n menuStyle: {\n top: renderMenuOnTop ? menuOnTopPosition : menuOnBottomPosition,\n left: renderMenuLeft ? menuOnLeftSidePosition : menuOnRightSidePosition,\n },\n });\n }\n });\n Object(_utils__WEBPACK_IMPORTED_MODULE_3__[\"autoBind\"])(this);\n }\n get isOpen() {\n return !!this.props.isOpen;\n }\n get isClosed() {\n return !this.isOpen;\n }\n componentDidMount() {\n if (!this.props.usePortal) {\n const parent = this.elem.parentElement;\n const position = window.getComputedStyle(parent).position;\n if (position === \"static\")\n parent.style.position = \"relative\";\n }\n else if (this.isOpen) {\n this.refreshPosition();\n }\n this.opener = document.getElementById(this.props.htmlFor); // might not exist in sub-menus\n if (this.opener) {\n this.opener.addEventListener(this.props.toggleEvent, this.toggle);\n this.opener.addEventListener(\"keydown\", this.onKeyDown);\n }\n this.elem.addEventListener(\"keydown\", this.onKeyDown);\n window.addEventListener(\"resize\", this.onWindowResize);\n window.addEventListener(\"click\", this.onClickOutside, true);\n window.addEventListener(\"scroll\", this.onScrollOutside, true);\n window.addEventListener(\"contextmenu\", this.onContextMenu, true);\n window.addEventListener(\"blur\", this.onBlur, true);\n }\n componentWillUnmount() {\n if (this.opener) {\n this.opener.removeEventListener(this.props.toggleEvent, this.toggle);\n this.opener.removeEventListener(\"keydown\", this.onKeyDown);\n }\n this.elem.removeEventListener(\"keydown\", this.onKeyDown);\n window.removeEventListener(\"resize\", this.onWindowResize);\n window.removeEventListener(\"click\", this.onClickOutside, true);\n window.removeEventListener(\"scroll\", this.onScrollOutside, true);\n }\n componentDidUpdate(prevProps) {\n if (!lodash_isEqual__WEBPACK_IMPORTED_MODULE_6___default()(prevProps.children, this.props.children)) {\n this.refreshPosition();\n }\n }\n get focusableItems() {\n return Object.values(this.items).filter(item => item.isFocusable);\n }\n get focusedItem() {\n return this.focusableItems.find(item => item.elem === document.activeElement);\n }\n focusNextItem(reverse = false) {\n const items = this.focusableItems;\n const activeIndex = items.findIndex(item => item === this.focusedItem);\n if (!items.length) {\n return;\n }\n if (activeIndex > -1) {\n let nextItem = reverse ? items[activeIndex - 1] : items[activeIndex + 1];\n if (!nextItem)\n nextItem = items[activeIndex];\n nextItem.elem.focus();\n }\n else {\n items[0].elem.focus();\n }\n }\n open() {\n if (this.isOpen) {\n return;\n }\n this.props.open();\n this.refreshPosition();\n if (this.props.autoFocus) {\n this.focusNextItem();\n }\n }\n close() {\n if (this.isClosed) {\n return;\n }\n this.props.close();\n }\n toggle() {\n if (this.isOpen) {\n this.close();\n }\n else {\n this.open();\n }\n }\n onKeyDown(evt) {\n if (!this.isOpen)\n return;\n switch (evt.code) {\n case \"Escape\":\n this.close();\n break;\n case \"Space\":\n // fallthrough\n case \"Enter\": {\n const focusedItem = this.focusedItem;\n if (focusedItem) {\n focusedItem.elem.click();\n evt.preventDefault();\n }\n break;\n }\n case \"ArrowUp\":\n this.focusNextItem(true);\n break;\n case \"ArrowDown\":\n this.focusNextItem();\n break;\n }\n }\n onContextMenu() {\n this.close();\n }\n onWindowResize() {\n if (!this.isOpen)\n return;\n this.refreshPosition();\n }\n onScrollOutside(evt) {\n if (!this.isOpen)\n return;\n const target = evt.target;\n const { usePortal, closeOnScroll } = this.props;\n if (usePortal && closeOnScroll && !target.contains(this.elem)) {\n this.close();\n }\n }\n onClickOutside(evt) {\n if (!this.props.closeOnClickOutside)\n return;\n if (!this.isOpen || evt.target === document.body)\n return;\n const target = evt.target;\n const clickInsideMenu = this.elem.contains(target);\n const clickOnOpener = this.opener && this.opener.contains(target);\n if (!clickInsideMenu && !clickOnOpener) {\n this.close();\n }\n }\n onBlur() {\n var _a;\n if (!this.isOpen)\n return; // Prevents triggering document.activeElement for each <Menu/> instance\n if (((_a = document.activeElement) === null || _a === void 0 ? void 0 : _a.tagName) == \"IFRAME\") {\n this.close();\n }\n }\n bindRef(elem) {\n this.elem = elem;\n }\n bindItemRef(item, index) {\n this.items[index] = item;\n }\n render() {\n var _a, _b, _c, _d;\n const { position, id } = this.props;\n let { className, usePortal } = this.props;\n className = Object(_utils__WEBPACK_IMPORTED_MODULE_3__[\"cssNames\"])(\"Menu\", className, this.state.position || position, {\n portal: usePortal,\n });\n let children = this.props.children;\n if (children.type === react__WEBPACK_IMPORTED_MODULE_1__[\"Fragment\"]) {\n children = children.props.children;\n }\n const menuItems = react__WEBPACK_IMPORTED_MODULE_1___default.a.Children.toArray(children).map((item, index) => {\n if (item.type === MenuItem) {\n return react__WEBPACK_IMPORTED_MODULE_1___default.a.cloneElement(item, {\n ref: (item) => this.bindItemRef(item, index),\n });\n }\n return item;\n });\n const menu = (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(MenuContext.Provider, { value: this },\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_animate__WEBPACK_IMPORTED_MODULE_4__[\"Animate\"], { enter: this.isOpen },\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"ul\", { id: id, ref: this.bindRef, className: className, style: {\n left: (_b = (_a = this.state) === null || _a === void 0 ? void 0 : _a.menuStyle) === null || _b === void 0 ? void 0 : _b.left,\n top: (_d = (_c = this.state) === null || _c === void 0 ? void 0 : _c.menuStyle) === null || _d === void 0 ? void 0 : _d.top,\n } }, menuItems))));\n if (usePortal === true)\n usePortal = document.body;\n return usePortal instanceof HTMLElement ? Object(react_dom__WEBPACK_IMPORTED_MODULE_2__[\"createPortal\"])(menu, usePortal) : menu;\n }\n}\nObject.defineProperty(Menu, \"defaultProps\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: defaultPropsMenu\n});\nfunction SubMenu(props) {\n const { className } = props, menuProps = __rest(props, [\"className\"]);\n return (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(Menu, Object.assign({ className: Object(_utils__WEBPACK_IMPORTED_MODULE_3__[\"cssNames\"])(\"SubMenu\", className), isOpen: true, open: _utils__WEBPACK_IMPORTED_MODULE_3__[\"noop\"], close: _utils__WEBPACK_IMPORTED_MODULE_3__[\"noop\"], position: {}, closeOnClickOutside: false, closeOnClickItem: false }, menuProps)));\n}\nconst defaultPropsMenuItem = {\n onClick: _utils__WEBPACK_IMPORTED_MODULE_3__[\"noop\"],\n};\nclass MenuItem extends react__WEBPACK_IMPORTED_MODULE_1___default.a.Component {\n constructor(props) {\n super(props);\n Object.defineProperty(this, \"elem\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object(_utils__WEBPACK_IMPORTED_MODULE_3__[\"autoBind\"])(this);\n }\n get isFocusable() {\n const { disabled, spacer } = this.props;\n return !(disabled || spacer);\n }\n get isLink() {\n return !!this.props.href;\n }\n onClick(evt) {\n const menu = this.context;\n const { spacer, onClick } = this.props;\n if (spacer)\n return;\n onClick(evt);\n if (menu.props.closeOnClickItem && !evt.defaultPrevented) {\n menu.close();\n }\n }\n bindRef(elem) {\n this.elem = elem;\n }\n render() {\n const _a = this.props, { className, disabled, active, spacer, icon, children } = _a, props = __rest(_a, [\"className\", \"disabled\", \"active\", \"spacer\", \"icon\", \"children\"]);\n let iconProps;\n if (icon) {\n iconProps = {};\n if (typeof icon === \"string\")\n iconProps.material = icon;\n else\n Object.assign(iconProps, icon);\n }\n const elemProps = Object.assign(Object.assign({ tabIndex: this.isFocusable ? 0 : -1 }, props), { className: Object(_utils__WEBPACK_IMPORTED_MODULE_3__[\"cssNames\"])(\"MenuItem\", className, { disabled, active, spacer }), onClick: this.onClick, children: icon ? react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_1___default.a.Fragment, null,\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_icon__WEBPACK_IMPORTED_MODULE_5__[\"Icon\"], Object.assign({}, iconProps)),\n \" \",\n children) : children, ref: this.bindRef });\n if (this.isLink) {\n return react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"a\", Object.assign({}, elemProps));\n }\n return react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"li\", Object.assign({}, elemProps));\n }\n}\nObject.defineProperty(MenuItem, \"defaultProps\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: defaultPropsMenuItem\n});\nObject.defineProperty(MenuItem, \"contextType\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: MenuContext\n});\n\n\n//# sourceURL=webpack:///./src/renderer/components/menu/menu.tsx?");
|
|
43994
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MenuContext\", function() { return MenuContext; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Menu\", function() { return Menu; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"SubMenu\", function() { return SubMenu; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MenuItem\", function() { return MenuItem; });\n/* harmony import */ var _menu_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./menu.scss */ \"./src/renderer/components/menu/menu.scss\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-dom */ \"./node_modules/react-dom/index.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils */ \"./src/renderer/utils/index.ts\");\n/* harmony import */ var _animate__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../animate */ \"./src/renderer/components/animate/index.ts\");\n/* harmony import */ var _icon__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../icon */ \"./src/renderer/components/icon/index.ts\");\n/* harmony import */ var lodash_isEqual__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! lodash/isEqual */ \"./node_modules/lodash/isEqual.js\");\n/* harmony import */ var lodash_isEqual__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(lodash_isEqual__WEBPACK_IMPORTED_MODULE_6__);\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\nvar __rest = (undefined && undefined.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\n\n\n\n\n\n\n\nconst MenuContext = react__WEBPACK_IMPORTED_MODULE_1___default.a.createContext(null);\nconst defaultPropsMenu = {\n position: { right: true, bottom: true },\n autoFocus: false,\n usePortal: false,\n closeOnClickItem: true,\n closeOnClickOutside: true,\n closeOnScroll: false,\n toggleEvent: \"click\",\n};\nclass Menu extends react__WEBPACK_IMPORTED_MODULE_1___default.a.Component {\n constructor(props) {\n super(props);\n Object.defineProperty(this, \"opener\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"elem\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"items\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: {}\n });\n Object.defineProperty(this, \"state\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: {}\n });\n Object.defineProperty(this, \"refreshPosition\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: () => {\n if (!this.props.usePortal || !this.opener || !this.elem) {\n return;\n }\n const openerClientRect = this.opener.getBoundingClientRect();\n let { left: openerLeft, top: openerTop, bottom: openerBottom, right: openerRight } = this.opener.getBoundingClientRect();\n const withScroll = window.getComputedStyle(this.elem).position !== \"fixed\";\n // window global scroll corrections\n if (withScroll) {\n openerLeft += window.pageXOffset;\n openerTop += window.pageYOffset;\n openerRight = openerLeft + openerClientRect.width;\n openerBottom = openerTop + openerClientRect.height;\n }\n const extraMargin = this.props.usePortal ? 8 : 0;\n const { width: menuWidth, height: menuHeight } = this.elem.getBoundingClientRect();\n const rightSideOfMenu = openerLeft + menuWidth;\n const renderMenuLeft = rightSideOfMenu > window.innerWidth;\n const menuOnLeftSidePosition = `${openerRight - this.elem.offsetWidth}px`;\n const menuOnRightSidePosition = `${openerLeft}px`;\n const bottomOfMenu = openerBottom + extraMargin + menuHeight;\n const renderMenuOnTop = bottomOfMenu > window.innerHeight;\n const menuOnTopPosition = `${openerTop - this.elem.offsetHeight - extraMargin}px`;\n const menuOnBottomPosition = `${openerBottom + extraMargin}px`;\n this.setState({\n position: {\n top: renderMenuOnTop,\n bottom: !renderMenuOnTop,\n left: renderMenuLeft,\n right: !renderMenuLeft,\n },\n menuStyle: {\n top: renderMenuOnTop ? menuOnTopPosition : menuOnBottomPosition,\n left: renderMenuLeft ? menuOnLeftSidePosition : menuOnRightSidePosition,\n },\n });\n }\n });\n Object(_utils__WEBPACK_IMPORTED_MODULE_3__[\"autoBind\"])(this);\n }\n get isOpen() {\n return !!this.props.isOpen;\n }\n get isClosed() {\n return !this.isOpen;\n }\n componentDidMount() {\n if (!this.props.usePortal) {\n const parent = this.elem.parentElement;\n const position = window.getComputedStyle(parent).position;\n if (position === \"static\")\n parent.style.position = \"relative\";\n }\n else if (this.isOpen) {\n this.refreshPosition();\n }\n this.opener = document.getElementById(this.props.htmlFor); // might not exist in sub-menus\n if (this.opener) {\n this.opener.addEventListener(this.props.toggleEvent, this.toggle);\n this.opener.addEventListener(\"keydown\", this.onKeyDown);\n }\n window.addEventListener(\"resize\", this.onWindowResize);\n window.addEventListener(\"click\", this.onClickOutside, true);\n window.addEventListener(\"scroll\", this.onScrollOutside, true);\n window.addEventListener(\"contextmenu\", this.onContextMenu, true);\n window.addEventListener(\"blur\", this.onBlur, true);\n }\n componentWillUnmount() {\n if (this.opener) {\n this.opener.removeEventListener(this.props.toggleEvent, this.toggle);\n this.opener.removeEventListener(\"keydown\", this.onKeyDown);\n }\n window.removeEventListener(\"resize\", this.onWindowResize);\n window.removeEventListener(\"click\", this.onClickOutside, true);\n window.removeEventListener(\"scroll\", this.onScrollOutside, true);\n }\n componentDidUpdate(prevProps) {\n if (!lodash_isEqual__WEBPACK_IMPORTED_MODULE_6___default()(prevProps.children, this.props.children)) {\n this.refreshPosition();\n }\n }\n get focusableItems() {\n return Object.values(this.items).filter(item => item.isFocusable);\n }\n get focusedItem() {\n return this.focusableItems.find(item => item.elem === document.activeElement);\n }\n focusNextItem(reverse = false) {\n const items = this.focusableItems;\n const activeIndex = items.findIndex(item => item === this.focusedItem);\n if (!items.length) {\n return;\n }\n if (activeIndex > -1) {\n let nextItem = reverse ? items[activeIndex - 1] : items[activeIndex + 1];\n if (!nextItem)\n nextItem = items[activeIndex];\n nextItem.elem.focus();\n }\n else {\n items[0].elem.focus();\n }\n }\n open() {\n if (this.isOpen) {\n return;\n }\n this.props.open();\n this.refreshPosition();\n if (this.props.autoFocus) {\n this.focusNextItem();\n }\n }\n close() {\n if (this.isClosed) {\n return;\n }\n this.props.close();\n }\n toggle() {\n if (this.isOpen) {\n this.close();\n }\n else {\n this.open();\n }\n }\n onKeyDown(evt) {\n if (!this.isOpen)\n return;\n switch (evt.code) {\n case \"Escape\":\n this.close();\n break;\n case \"Space\":\n // fallthrough\n case \"Enter\": {\n const focusedItem = this.focusedItem;\n if (focusedItem) {\n focusedItem.elem.click();\n evt.preventDefault();\n }\n break;\n }\n case \"ArrowUp\":\n this.focusNextItem(true);\n break;\n case \"ArrowDown\":\n this.focusNextItem();\n break;\n }\n }\n onContextMenu() {\n this.close();\n }\n onWindowResize() {\n if (!this.isOpen)\n return;\n this.refreshPosition();\n }\n onScrollOutside(evt) {\n if (!this.isOpen)\n return;\n const target = evt.target;\n const { usePortal, closeOnScroll } = this.props;\n if (usePortal && closeOnScroll && !target.contains(this.elem)) {\n this.close();\n }\n }\n onClickOutside(evt) {\n if (!this.props.closeOnClickOutside)\n return;\n if (!this.isOpen || evt.target === document.body)\n return;\n const target = evt.target;\n const clickInsideMenu = this.elem.contains(target);\n const clickOnOpener = this.opener && this.opener.contains(target);\n if (!clickInsideMenu && !clickOnOpener) {\n this.close();\n }\n }\n onBlur() {\n var _a;\n if (!this.isOpen)\n return; // Prevents triggering document.activeElement for each <Menu/> instance\n if (((_a = document.activeElement) === null || _a === void 0 ? void 0 : _a.tagName) == \"IFRAME\") {\n this.close();\n }\n }\n bindRef(elem) {\n this.elem = elem;\n }\n bindItemRef(item, index) {\n this.items[index] = item;\n }\n render() {\n var _a, _b, _c, _d;\n const { position, id } = this.props;\n let { className, usePortal } = this.props;\n className = Object(_utils__WEBPACK_IMPORTED_MODULE_3__[\"cssNames\"])(\"Menu\", className, this.state.position || position, {\n portal: usePortal,\n });\n let children = this.props.children;\n if (children.type === react__WEBPACK_IMPORTED_MODULE_1__[\"Fragment\"]) {\n children = children.props.children;\n }\n const menuItems = react__WEBPACK_IMPORTED_MODULE_1___default.a.Children.toArray(children).map((item, index) => {\n if (item.type === MenuItem) {\n return react__WEBPACK_IMPORTED_MODULE_1___default.a.cloneElement(item, {\n ref: (item) => this.bindItemRef(item, index),\n });\n }\n return item;\n });\n const menu = (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(MenuContext.Provider, { value: this },\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_animate__WEBPACK_IMPORTED_MODULE_4__[\"Animate\"], { enter: this.isOpen },\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"ul\", { id: id, ref: this.bindRef, className: className, style: {\n left: (_b = (_a = this.state) === null || _a === void 0 ? void 0 : _a.menuStyle) === null || _b === void 0 ? void 0 : _b.left,\n top: (_d = (_c = this.state) === null || _c === void 0 ? void 0 : _c.menuStyle) === null || _d === void 0 ? void 0 : _d.top,\n }, onKeyDown: this.onKeyDown }, menuItems))));\n if (usePortal === true)\n usePortal = document.body;\n return usePortal instanceof HTMLElement ? Object(react_dom__WEBPACK_IMPORTED_MODULE_2__[\"createPortal\"])(menu, usePortal) : menu;\n }\n}\nObject.defineProperty(Menu, \"defaultProps\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: defaultPropsMenu\n});\nfunction SubMenu(props) {\n const { className } = props, menuProps = __rest(props, [\"className\"]);\n return (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(Menu, Object.assign({ className: Object(_utils__WEBPACK_IMPORTED_MODULE_3__[\"cssNames\"])(\"SubMenu\", className), isOpen: true, open: _utils__WEBPACK_IMPORTED_MODULE_3__[\"noop\"], close: _utils__WEBPACK_IMPORTED_MODULE_3__[\"noop\"], position: {}, closeOnClickOutside: false, closeOnClickItem: false }, menuProps)));\n}\nconst defaultPropsMenuItem = {\n onClick: _utils__WEBPACK_IMPORTED_MODULE_3__[\"noop\"],\n};\nclass MenuItem extends react__WEBPACK_IMPORTED_MODULE_1___default.a.Component {\n constructor(props) {\n super(props);\n Object.defineProperty(this, \"elem\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object(_utils__WEBPACK_IMPORTED_MODULE_3__[\"autoBind\"])(this);\n }\n get isFocusable() {\n const { disabled, spacer } = this.props;\n return !(disabled || spacer);\n }\n get isLink() {\n return !!this.props.href;\n }\n onClick(evt) {\n const menu = this.context;\n const { spacer, onClick } = this.props;\n if (spacer)\n return;\n onClick(evt);\n if (menu.props.closeOnClickItem && !evt.defaultPrevented) {\n menu.close();\n }\n }\n bindRef(elem) {\n this.elem = elem;\n }\n render() {\n const _a = this.props, { className, disabled, active, spacer, icon, children } = _a, props = __rest(_a, [\"className\", \"disabled\", \"active\", \"spacer\", \"icon\", \"children\"]);\n let iconProps;\n if (icon) {\n iconProps = {};\n if (typeof icon === \"string\")\n iconProps.material = icon;\n else\n Object.assign(iconProps, icon);\n }\n const elemProps = Object.assign(Object.assign({ tabIndex: this.isFocusable ? 0 : -1 }, props), { className: Object(_utils__WEBPACK_IMPORTED_MODULE_3__[\"cssNames\"])(\"MenuItem\", className, { disabled, active, spacer }), onClick: this.onClick, children: icon ? react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_1___default.a.Fragment, null,\n react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_icon__WEBPACK_IMPORTED_MODULE_5__[\"Icon\"], Object.assign({}, iconProps)),\n \" \",\n children) : children, ref: this.bindRef });\n if (this.isLink) {\n return react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"a\", Object.assign({}, elemProps));\n }\n return react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"li\", Object.assign({}, elemProps));\n }\n}\nObject.defineProperty(MenuItem, \"defaultProps\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: defaultPropsMenuItem\n});\nObject.defineProperty(MenuItem, \"contextType\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: MenuContext\n});\n\n\n//# sourceURL=webpack:///./src/renderer/components/menu/menu.tsx?");
|
|
43947
43995
|
|
|
43948
43996
|
/***/ }),
|
|
43949
43997
|
|
|
@@ -44649,7 +44697,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _nod
|
|
|
44649
44697
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
44650
44698
|
|
|
44651
44699
|
"use strict";
|
|
44652
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"TooltipPosition\", function() { return TooltipPosition; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Tooltip\", function() { return Tooltip; });\n/* harmony import */ var _tooltip_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./tooltip.scss */ \"./src/renderer/components/tooltip/tooltip.scss\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-dom */ \"./node_modules/react-dom/index.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var mobx_react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! mobx-react */ \"./node_modules/mobx-react/dist/mobxreact.esm.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils */ \"./src/renderer/utils/index.ts\");\n/* harmony import */ var mobx__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! mobx */ \"./node_modules/mobx/dist/mobx.esm.js\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __metadata = (undefined && undefined.__metadata) || function (k, v) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(k, v);\n};\n\n\n\n\n\n\nvar TooltipPosition;\n(function (TooltipPosition) {\n TooltipPosition[\"TOP\"] = \"top\";\n TooltipPosition[\"BOTTOM\"] = \"bottom\";\n TooltipPosition[\"LEFT\"] = \"left\";\n TooltipPosition[\"RIGHT\"] = \"right\";\n TooltipPosition[\"TOP_LEFT\"] = \"top_left\";\n TooltipPosition[\"TOP_RIGHT\"] = \"top_right\";\n TooltipPosition[\"BOTTOM_LEFT\"] = \"bottom_left\";\n TooltipPosition[\"BOTTOM_RIGHT\"] = \"bottom_right\";\n})(TooltipPosition || (TooltipPosition = {}));\nconst defaultProps = {\n usePortal: true,\n offset: 10,\n};\nlet Tooltip = class Tooltip extends react__WEBPACK_IMPORTED_MODULE_1___default.a.Component {\n constructor(props) {\n super(props);\n Object.defineProperty(this, \"elem\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"activePosition\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"isVisible\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: false\n });\n Object(mobx__WEBPACK_IMPORTED_MODULE_5__[\"makeObservable\"])(this);\n }\n get targetElem() {\n return document.getElementById(this.props.targetId);\n }\n get hoverTarget() {\n if (this.props.tooltipOnParentHover) {\n return this.targetElem.parentElement;\n }\n return this.targetElem;\n }\n componentDidMount() {\n this.hoverTarget.addEventListener(\"mouseenter\", this.onEnterTarget);\n this.hoverTarget.addEventListener(\"mouseleave\", this.onLeaveTarget);\n }\n componentDidUpdate() {\n this.refreshPosition();\n }\n componentWillUnmount() {\n this.hoverTarget.removeEventListener(\"mouseenter\", this.onEnterTarget);\n this.hoverTarget.removeEventListener(\"mouseleave\", this.onLeaveTarget);\n }\n onEnterTarget() {\n this.isVisible = true;\n this.refreshPosition();\n }\n onLeaveTarget() {\n this.isVisible = false;\n }\n refreshPosition() {\n const { preferredPositions } = this.props;\n const { elem, targetElem } = this;\n let positions = new Set([\n TooltipPosition.RIGHT,\n TooltipPosition.BOTTOM,\n TooltipPosition.TOP,\n TooltipPosition.LEFT,\n TooltipPosition.TOP_RIGHT,\n TooltipPosition.TOP_LEFT,\n TooltipPosition.BOTTOM_RIGHT,\n TooltipPosition.BOTTOM_LEFT,\n ]);\n if (preferredPositions) {\n positions = new Set([\n ...[preferredPositions].flat(),\n ...positions,\n ]);\n }\n // reset position first and get all possible client-rect area for tooltip element\n this.setPosition({ left: 0, top: 0 });\n const selfBounds = elem.getBoundingClientRect();\n const targetBounds = targetElem.getBoundingClientRect();\n const { innerWidth: viewportWidth, innerHeight: viewportHeight } = window;\n // find proper position\n for (const pos of positions) {\n const { left, top, right, bottom } = this.getPosition(pos, selfBounds, targetBounds);\n const fitsToWindow = left >= 0 && top >= 0 && right <= viewportWidth && bottom <= viewportHeight;\n if (fitsToWindow) {\n this.activePosition = pos;\n this.setPosition({ top, left });\n return;\n }\n }\n // apply fallback position if nothing helped from above\n const fallbackPosition = Array.from(positions)[0];\n const { left, top } = this.getPosition(fallbackPosition, selfBounds, targetBounds);\n this.activePosition = fallbackPosition;\n this.setPosition({ left, top });\n }\n setPosition(pos) {\n const elemStyle = this.elem.style;\n elemStyle.left = `${pos.left}px`;\n elemStyle.top = `${pos.top}px`;\n }\n getPosition(position, tooltipBounds, targetBounds) {\n let left;\n let top;\n const offset = this.props.offset;\n const horizontalCenter = targetBounds.left + (targetBounds.width - tooltipBounds.width) / 2;\n const verticalCenter = targetBounds.top + (targetBounds.height - tooltipBounds.height) / 2;\n const topCenter = targetBounds.top - tooltipBounds.height - offset;\n const bottomCenter = targetBounds.bottom + offset;\n switch (position) {\n case \"top\":\n left = horizontalCenter;\n top = topCenter;\n break;\n case \"bottom\":\n left = horizontalCenter;\n top = bottomCenter;\n break;\n case \"left\":\n top = verticalCenter;\n left = targetBounds.left - tooltipBounds.width - offset;\n break;\n case \"right\":\n top = verticalCenter;\n left = targetBounds.right + offset;\n break;\n case \"top_left\":\n left = targetBounds.left;\n top = topCenter;\n break;\n case \"top_right\":\n left = targetBounds.right - tooltipBounds.width;\n top = topCenter;\n break;\n case \"bottom_left\":\n top = bottomCenter;\n left = targetBounds.left;\n break;\n case \"bottom_right\":\n top = bottomCenter;\n left = targetBounds.right - tooltipBounds.width;\n break;\n }\n return {\n left,\n top,\n right: left + tooltipBounds.width,\n bottom: top + tooltipBounds.height,\n };\n }\n bindRef(elem) {\n this.elem = elem;\n }\n render() {\n const { style, formatters, usePortal, children, visible } = this.props;\n const className = Object(_utils__WEBPACK_IMPORTED_MODULE_4__[\"cssNames\"])(\"Tooltip\", this.props.className, formatters, this.activePosition, {\n visible: visible !== null && visible !== void 0 ? visible : this.isVisible,\n formatter: !!formatters,\n });\n const tooltip = (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"div\", { className: className, style: style, ref: this.bindRef }, children));\n if (usePortal) {\n return Object(react_dom__WEBPACK_IMPORTED_MODULE_2__[\"createPortal\"])(tooltip, document.body);\n }\n return tooltip;\n }\n};\nObject.defineProperty(Tooltip, \"defaultProps\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: defaultProps\n});\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_5__[\"observable\"].ref,\n __metadata(\"design:type\", HTMLElement)\n], Tooltip.prototype, \"elem\", void 0);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_5__[\"observable\"],\n __metadata(\"design:type\", String)\n], Tooltip.prototype, \"activePosition\", void 0);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_5__[\"observable\"],\n __metadata(\"design:type\", Object)\n], Tooltip.prototype, \"isVisible\", void 0);\n__decorate([\n _utils__WEBPACK_IMPORTED_MODULE_4__[\"boundMethod\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", []),\n __metadata(\"design:returntype\", void 0)\n], Tooltip.prototype, \"onEnterTarget\", null);\n__decorate([\n _utils__WEBPACK_IMPORTED_MODULE_4__[\"boundMethod\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", []),\n __metadata(\"design:returntype\", void 0)\n], Tooltip.prototype, \"onLeaveTarget\", null);\n__decorate([\n _utils__WEBPACK_IMPORTED_MODULE_4__[\"boundMethod\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", []),\n __metadata(\"design:returntype\", void 0)\n], Tooltip.prototype, \"refreshPosition\", null);\n__decorate([\n _utils__WEBPACK_IMPORTED_MODULE_4__[\"boundMethod\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", [HTMLElement]),\n __metadata(\"design:returntype\", void 0)\n], Tooltip.prototype, \"bindRef\", null);\nTooltip = __decorate([\n mobx_react__WEBPACK_IMPORTED_MODULE_3__[\"observer\"],\n __metadata(\"design:paramtypes\", [Object])\n], Tooltip);\n\n\n\n//# sourceURL=webpack:///./src/renderer/components/tooltip/tooltip.tsx?");
|
|
44700
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"TooltipPosition\", function() { return TooltipPosition; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Tooltip\", function() { return Tooltip; });\n/* harmony import */ var _tooltip_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./tooltip.scss */ \"./src/renderer/components/tooltip/tooltip.scss\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-dom */ \"./node_modules/react-dom/index.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var mobx_react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! mobx-react */ \"./node_modules/mobx-react/dist/mobxreact.esm.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils */ \"./src/renderer/utils/index.ts\");\n/* harmony import */ var mobx__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! mobx */ \"./node_modules/mobx/dist/mobx.esm.js\");\n/**\n * Copyright (c) OpenLens Authors. All rights reserved.\n * Licensed under MIT License. See LICENSE in root directory for more information.\n */\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __metadata = (undefined && undefined.__metadata) || function (k, v) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(k, v);\n};\n\n\n\n\n\n\nvar TooltipPosition;\n(function (TooltipPosition) {\n TooltipPosition[\"TOP\"] = \"top\";\n TooltipPosition[\"BOTTOM\"] = \"bottom\";\n TooltipPosition[\"LEFT\"] = \"left\";\n TooltipPosition[\"RIGHT\"] = \"right\";\n TooltipPosition[\"TOP_LEFT\"] = \"top_left\";\n TooltipPosition[\"TOP_RIGHT\"] = \"top_right\";\n TooltipPosition[\"BOTTOM_LEFT\"] = \"bottom_left\";\n TooltipPosition[\"BOTTOM_RIGHT\"] = \"bottom_right\";\n})(TooltipPosition || (TooltipPosition = {}));\nconst defaultProps = {\n usePortal: true,\n offset: 10,\n};\nlet Tooltip = class Tooltip extends react__WEBPACK_IMPORTED_MODULE_1___default.a.Component {\n constructor(props) {\n var _a;\n super(props);\n Object.defineProperty(this, \"elem\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"activePosition\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, \"isVisible\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: (_a = this.props.visible) !== null && _a !== void 0 ? _a : false\n });\n Object.defineProperty(this, \"isContentVisible\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: false\n }); // animation manager\n Object(mobx__WEBPACK_IMPORTED_MODULE_5__[\"makeObservable\"])(this);\n }\n get targetElem() {\n return document.getElementById(this.props.targetId);\n }\n get hoverTarget() {\n if (this.props.tooltipOnParentHover) {\n return this.targetElem.parentElement;\n }\n return this.targetElem;\n }\n componentDidMount() {\n this.hoverTarget.addEventListener(\"mouseenter\", this.onEnterTarget);\n this.hoverTarget.addEventListener(\"mouseleave\", this.onLeaveTarget);\n }\n componentDidUpdate() {\n this.refreshPosition();\n }\n componentWillUnmount() {\n this.hoverTarget.removeEventListener(\"mouseenter\", this.onEnterTarget);\n this.hoverTarget.removeEventListener(\"mouseleave\", this.onLeaveTarget);\n }\n onEnterTarget() {\n this.isVisible = true;\n requestAnimationFrame(Object(mobx__WEBPACK_IMPORTED_MODULE_5__[\"action\"])(() => this.isContentVisible = true));\n }\n onLeaveTarget() {\n this.isVisible = false;\n this.isContentVisible = false;\n }\n refreshPosition() {\n const { preferredPositions } = this.props;\n const { elem, targetElem } = this;\n if (!elem) {\n return;\n }\n let positions = new Set([\n TooltipPosition.RIGHT,\n TooltipPosition.BOTTOM,\n TooltipPosition.TOP,\n TooltipPosition.LEFT,\n TooltipPosition.TOP_RIGHT,\n TooltipPosition.TOP_LEFT,\n TooltipPosition.BOTTOM_RIGHT,\n TooltipPosition.BOTTOM_LEFT,\n ]);\n if (preferredPositions) {\n positions = new Set([\n ...[preferredPositions].flat(),\n ...positions,\n ]);\n }\n // reset position first and get all possible client-rect area for tooltip element\n this.setPosition({ left: 0, top: 0 });\n const selfBounds = elem.getBoundingClientRect();\n const targetBounds = targetElem.getBoundingClientRect();\n const { innerWidth: viewportWidth, innerHeight: viewportHeight } = window;\n // find proper position\n for (const pos of positions) {\n const { left, top, right, bottom } = this.getPosition(pos, selfBounds, targetBounds);\n const fitsToWindow = left >= 0 && top >= 0 && right <= viewportWidth && bottom <= viewportHeight;\n if (fitsToWindow) {\n this.activePosition = pos;\n this.setPosition({ top, left });\n return;\n }\n }\n // apply fallback position if nothing helped from above\n const fallbackPosition = Array.from(positions)[0];\n const { left, top } = this.getPosition(fallbackPosition, selfBounds, targetBounds);\n this.activePosition = fallbackPosition;\n this.setPosition({ left, top });\n }\n setPosition(pos) {\n if (!this.elem) {\n return;\n }\n const elemStyle = this.elem.style;\n elemStyle.left = `${pos.left}px`;\n elemStyle.top = `${pos.top}px`;\n }\n getPosition(position, tooltipBounds, targetBounds) {\n let left;\n let top;\n const offset = this.props.offset;\n const horizontalCenter = targetBounds.left + (targetBounds.width - tooltipBounds.width) / 2;\n const verticalCenter = targetBounds.top + (targetBounds.height - tooltipBounds.height) / 2;\n const topCenter = targetBounds.top - tooltipBounds.height - offset;\n const bottomCenter = targetBounds.bottom + offset;\n switch (position) {\n case \"top\":\n left = horizontalCenter;\n top = topCenter;\n break;\n case \"bottom\":\n left = horizontalCenter;\n top = bottomCenter;\n break;\n case \"left\":\n top = verticalCenter;\n left = targetBounds.left - tooltipBounds.width - offset;\n break;\n case \"right\":\n top = verticalCenter;\n left = targetBounds.right + offset;\n break;\n case \"top_left\":\n left = targetBounds.left;\n top = topCenter;\n break;\n case \"top_right\":\n left = targetBounds.right - tooltipBounds.width;\n top = topCenter;\n break;\n case \"bottom_left\":\n top = bottomCenter;\n left = targetBounds.left;\n break;\n case \"bottom_right\":\n top = bottomCenter;\n left = targetBounds.right - tooltipBounds.width;\n break;\n }\n return {\n left,\n top,\n right: left + tooltipBounds.width,\n bottom: top + tooltipBounds.height,\n };\n }\n bindRef(elem) {\n this.elem = elem;\n }\n render() {\n if (!this.isVisible) {\n return null;\n }\n const { style, formatters, usePortal, children } = this.props;\n const className = Object(_utils__WEBPACK_IMPORTED_MODULE_4__[\"cssNames\"])(\"Tooltip\", this.props.className, formatters, this.activePosition, {\n visible: this.isContentVisible,\n formatter: !!formatters,\n });\n const tooltip = (react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(\"div\", { className: className, style: style, ref: this.bindRef, role: \"tooltip\" }, children));\n if (usePortal) {\n return Object(react_dom__WEBPACK_IMPORTED_MODULE_2__[\"createPortal\"])(tooltip, document.body);\n }\n return tooltip;\n }\n};\nObject.defineProperty(Tooltip, \"defaultProps\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: defaultProps\n});\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_5__[\"observable\"].ref,\n __metadata(\"design:type\", HTMLElement)\n], Tooltip.prototype, \"elem\", void 0);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_5__[\"observable\"],\n __metadata(\"design:type\", String)\n], Tooltip.prototype, \"activePosition\", void 0);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_5__[\"observable\"],\n __metadata(\"design:type\", Object)\n], Tooltip.prototype, \"isVisible\", void 0);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_5__[\"observable\"],\n __metadata(\"design:type\", Object)\n], Tooltip.prototype, \"isContentVisible\", void 0);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_5__[\"action\"].bound,\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", []),\n __metadata(\"design:returntype\", void 0)\n], Tooltip.prototype, \"onEnterTarget\", null);\n__decorate([\n mobx__WEBPACK_IMPORTED_MODULE_5__[\"action\"].bound,\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", []),\n __metadata(\"design:returntype\", void 0)\n], Tooltip.prototype, \"onLeaveTarget\", null);\n__decorate([\n _utils__WEBPACK_IMPORTED_MODULE_4__[\"boundMethod\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", []),\n __metadata(\"design:returntype\", void 0)\n], Tooltip.prototype, \"refreshPosition\", null);\n__decorate([\n _utils__WEBPACK_IMPORTED_MODULE_4__[\"boundMethod\"],\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", [HTMLElement]),\n __metadata(\"design:returntype\", void 0)\n], Tooltip.prototype, \"bindRef\", null);\nTooltip = __decorate([\n mobx_react__WEBPACK_IMPORTED_MODULE_3__[\"observer\"],\n __metadata(\"design:paramtypes\", [Object])\n], Tooltip);\n\n\n\n//# sourceURL=webpack:///./src/renderer/components/tooltip/tooltip.tsx?");
|
|
44653
44701
|
|
|
44654
44702
|
/***/ }),
|
|
44655
44703
|
|
|
@@ -3,5 +3,11 @@
|
|
|
3
3
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
4
4
|
*/
|
|
5
5
|
import type { MigrationDeclaration } from "../helpers";
|
|
6
|
+
export declare const lensWebsiteLinkName = "Lens Website";
|
|
7
|
+
export declare const lensDocumentationWeblinkName = "Lens Documentation";
|
|
8
|
+
export declare const lensSlackWeblinkName = "Lens Community Slack";
|
|
9
|
+
export declare const lensTwitterWeblinkName = "Lens on Twitter";
|
|
10
|
+
export declare const lensBlogWeblinkName = "Lens Official Blog";
|
|
11
|
+
export declare const kubernetesDocumentationWeblinkName = "Kubernetes Documentation";
|
|
6
12
|
declare const _default: MigrationDeclaration;
|
|
7
13
|
export default _default;
|
|
@@ -0,0 +1,7 @@
|
|
|
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 { MigrationDeclaration } from "../helpers";
|
|
6
|
+
declare const _default: MigrationDeclaration;
|
|
7
|
+
export default _default;
|
|
@@ -0,0 +1,7 @@
|
|
|
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 { MigrationDeclaration } from "../helpers";
|
|
6
|
+
declare const _default: MigrationDeclaration;
|
|
7
|
+
export default _default;
|
|
@@ -4,9 +4,18 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import "./pie-chart.scss";
|
|
6
6
|
import React from "react";
|
|
7
|
+
import ChartJS from "chart.js";
|
|
7
8
|
import { ChartProps } from "./chart";
|
|
8
9
|
interface Props extends ChartProps {
|
|
9
10
|
}
|
|
11
|
+
export interface PieChartData extends ChartJS.ChartData {
|
|
12
|
+
datasets?: PieChartDataSets[];
|
|
13
|
+
}
|
|
14
|
+
export declare type DatasetTooltipLabel = (percent: string) => string | string;
|
|
15
|
+
interface PieChartDataSets extends ChartJS.ChartDataSets {
|
|
16
|
+
id?: string;
|
|
17
|
+
tooltipLabels?: DatasetTooltipLabel[];
|
|
18
|
+
}
|
|
10
19
|
export declare class PieChart extends React.Component<Props> {
|
|
11
20
|
render(): JSX.Element;
|
|
12
21
|
}
|
|
@@ -18,6 +18,7 @@ export declare class ClusterStatus extends React.Component<Props> {
|
|
|
18
18
|
get entity(): import("../../api/catalog-entity").CatalogEntity<import("../../../common/catalog").CatalogEntityMetadata, import("../../../common/catalog").CatalogEntityStatus, import("../../../common/catalog").CatalogEntitySpec>;
|
|
19
19
|
get hasErrors(): boolean;
|
|
20
20
|
componentDidMount(): void;
|
|
21
|
+
componentDidUpdate(prevProps: Readonly<Props>): void;
|
|
21
22
|
reconnect: () => Promise<void>;
|
|
22
23
|
manageProxySettings: () => void;
|
|
23
24
|
renderAuthenticationOutput(): JSX.Element;
|
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
4
4
|
*/
|
|
5
5
|
import type { CatalogEntity } from "../../api/catalog-entity";
|
|
6
|
-
export declare
|
|
6
|
+
export declare const SidebarCluster: ({ clusterEntity }: {
|
|
7
7
|
clusterEntity: CatalogEntity;
|
|
8
|
-
})
|
|
8
|
+
}) => JSX.Element;
|
|
@@ -58,7 +58,7 @@ export declare class Menu extends React.Component<MenuProps, State> {
|
|
|
58
58
|
open(): void;
|
|
59
59
|
close(): void;
|
|
60
60
|
toggle(): void;
|
|
61
|
-
onKeyDown(evt: KeyboardEvent): void;
|
|
61
|
+
onKeyDown(evt: React.KeyboardEvent | KeyboardEvent): void;
|
|
62
62
|
onContextMenu(): void;
|
|
63
63
|
onWindowResize(): void;
|
|
64
64
|
onScrollOutside(evt: UIEvent): void;
|
|
@@ -39,6 +39,7 @@ export declare class Tooltip extends React.Component<TooltipProps> {
|
|
|
39
39
|
elem: HTMLElement;
|
|
40
40
|
activePosition: TooltipPosition;
|
|
41
41
|
isVisible: boolean;
|
|
42
|
+
isContentVisible: boolean;
|
|
42
43
|
constructor(props: TooltipProps);
|
|
43
44
|
get targetElem(): HTMLElement;
|
|
44
45
|
get hoverTarget(): HTMLElement;
|
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": "5.4.
|
|
5
|
+
"version": "5.4.6",
|
|
6
6
|
"copyright": "© 2021 OpenLens Authors",
|
|
7
7
|
"license": "MIT",
|
|
8
8
|
"main": "dist/src/extensions/extension-api.js",
|