@k8slens/extensions 5.3.1-git.2148dbda7c.0 → 5.3.1-git.406f595011.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -38714,7 +38714,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
|
|
|
38714
38714
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
38715
38715
|
|
|
38716
38716
|
"use strict";
|
|
38717
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"DaemonSet\", function() { return DaemonSet; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"DaemonSetApi\", function() { return DaemonSetApi; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getMetricsForDaemonSets\", function() { return getMetricsForDaemonSets; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"daemonSetApi\", function() { return daemonSetApi; });\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/get */ \"./node_modules/lodash/get.js\");\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_get__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _workload_kube_object__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../workload-kube-object */ \"./src/common/k8s-api/workload-kube-object.ts\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils */ \"./src/common/utils/index.ts\");\n/* harmony import */ var _kube_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../kube-api */ \"./src/common/k8s-api/kube-api.ts\");\n/* harmony import */ var _metrics_api__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./metrics.api */ \"./src/common/k8s-api/endpoints/metrics.api.ts\");\n/* harmony import */ var _utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/cluster-id-url-parsing */ \"./src/common/utils/cluster-id-url-parsing.ts\");\n/**\n * Copyright (c) 2021 OpenLens Authors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of\n * this software and associated documentation files (the \"Software\"), to deal in\n * the Software without restriction, including without limitation the rights to\n * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n * the Software, and to permit persons to whom the Software is furnished to do so,\n * subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n\n\n\n\n\n\nclass DaemonSet extends _workload_kube_object__WEBPACK_IMPORTED_MODULE_1__[\"WorkloadKubeObject\"] {\n constructor(data) {\n super(data);\n Object(_utils__WEBPACK_IMPORTED_MODULE_2__[\"autoBind\"])(this);\n }\n getImages() {\n const containers = lodash_get__WEBPACK_IMPORTED_MODULE_0___default()(this, \"spec.template.spec.containers\", []);\n const initContainers = lodash_get__WEBPACK_IMPORTED_MODULE_0___default()(this, \"spec.template.spec.initContainers\", []);\n return [...containers, ...initContainers].map(container => container.image);\n }\n}\nObject.defineProperty(DaemonSet, \"kind\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"DaemonSet\"\n});\nObject.defineProperty(DaemonSet, \"namespaced\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: true\n});\nObject.defineProperty(DaemonSet, \"apiBase\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"/apis/apps/v1/daemonsets\"\n});\nclass DaemonSetApi extends _kube_api__WEBPACK_IMPORTED_MODULE_3__[\"KubeApi\"] {\n}\nfunction getMetricsForDaemonSets(daemonsets, namespace, selector = \"\") {\n const podSelector = daemonsets.map(daemonset => `${daemonset.getName()}-[[:alnum:]]{5}`).join(\"|\");\n const opts = { category: \"pods\", pods: podSelector, namespace, selector };\n return _metrics_api__WEBPACK_IMPORTED_MODULE_4__[\"metricsApi\"].getMetrics({\n cpuUsage: opts,\n memoryUsage: opts,\n fsUsage: opts,\n networkReceive: opts,\n networkTransmit: opts,\n }, {\n namespace,\n });\n}\n/**\n * Only available within kubernetes cluster pages\n */\nlet daemonSetApi;\nif (Object(_utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_5__[\"isClusterPageContext\"])()) {\n daemonSetApi = new DaemonSetApi({\n objectConstructor: DaemonSet,\n });\n}\n\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/endpoints/daemon-set.api.ts?");
|
|
38717
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"DaemonSet\", function() { return DaemonSet; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"DaemonSetApi\", function() { return DaemonSetApi; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getMetricsForDaemonSets\", function() { return getMetricsForDaemonSets; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"daemonSetApi\", function() { return daemonSetApi; });\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/get */ \"./node_modules/lodash/get.js\");\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_get__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _workload_kube_object__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../workload-kube-object */ \"./src/common/k8s-api/workload-kube-object.ts\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils */ \"./src/common/utils/index.ts\");\n/* harmony import */ var _kube_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../kube-api */ \"./src/common/k8s-api/kube-api.ts\");\n/* harmony import */ var _metrics_api__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./metrics.api */ \"./src/common/k8s-api/endpoints/metrics.api.ts\");\n/* harmony import */ var _utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/cluster-id-url-parsing */ \"./src/common/utils/cluster-id-url-parsing.ts\");\n/**\n * Copyright (c) 2021 OpenLens Authors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of\n * this software and associated documentation files (the \"Software\"), to deal in\n * the Software without restriction, including without limitation the rights to\n * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n * the Software, and to permit persons to whom the Software is furnished to do so,\n * subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n\n\n\n\n\n\nclass DaemonSet extends _workload_kube_object__WEBPACK_IMPORTED_MODULE_1__[\"WorkloadKubeObject\"] {\n constructor(data) {\n super(data);\n Object(_utils__WEBPACK_IMPORTED_MODULE_2__[\"autoBind\"])(this);\n }\n getImages() {\n const containers = lodash_get__WEBPACK_IMPORTED_MODULE_0___default()(this, \"spec.template.spec.containers\", []);\n const initContainers = lodash_get__WEBPACK_IMPORTED_MODULE_0___default()(this, \"spec.template.spec.initContainers\", []);\n return [...containers, ...initContainers].map(container => container.image);\n }\n}\nObject.defineProperty(DaemonSet, \"kind\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"DaemonSet\"\n});\nObject.defineProperty(DaemonSet, \"namespaced\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: true\n});\nObject.defineProperty(DaemonSet, \"apiBase\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"/apis/apps/v1/daemonsets\"\n});\nclass DaemonSetApi extends _kube_api__WEBPACK_IMPORTED_MODULE_3__[\"KubeApi\"] {\n}\nfunction getMetricsForDaemonSets(daemonsets, namespace, selector = \"\") {\n const podSelector = daemonsets.map(daemonset => `${daemonset.getName()}-[[:alnum:]]{5}`).join(\"|\");\n const opts = { category: \"pods\", pods: podSelector, namespace, selector };\n return _metrics_api__WEBPACK_IMPORTED_MODULE_4__[\"metricsApi\"].getMetrics({\n cpuUsage: opts,\n memoryUsage: opts,\n fsUsage: opts,\n fsWrites: opts,\n fsReads: opts,\n networkReceive: opts,\n networkTransmit: opts,\n }, {\n namespace,\n });\n}\n/**\n * Only available within kubernetes cluster pages\n */\nlet daemonSetApi;\nif (Object(_utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_5__[\"isClusterPageContext\"])()) {\n daemonSetApi = new DaemonSetApi({\n objectConstructor: DaemonSet,\n });\n}\n\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/endpoints/daemon-set.api.ts?");
|
|
38718
38718
|
|
|
38719
38719
|
/***/ }),
|
|
38720
38720
|
|
|
@@ -38726,7 +38726,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
|
|
|
38726
38726
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
38727
38727
|
|
|
38728
38728
|
"use strict";
|
|
38729
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"DeploymentApi\", function() { return DeploymentApi; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getMetricsForDeployments\", function() { return getMetricsForDeployments; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Deployment\", function() { return Deployment; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"deploymentApi\", function() { return deploymentApi; });\n/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! moment */ \"./node_modules/moment/moment.js\");\n/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _workload_kube_object__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../workload-kube-object */ \"./src/common/k8s-api/workload-kube-object.ts\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils */ \"./src/common/utils/index.ts\");\n/* harmony import */ var _kube_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../kube-api */ \"./src/common/k8s-api/kube-api.ts\");\n/* harmony import */ var _metrics_api__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./metrics.api */ \"./src/common/k8s-api/endpoints/metrics.api.ts\");\n/* harmony import */ var _utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/cluster-id-url-parsing */ \"./src/common/utils/cluster-id-url-parsing.ts\");\n/**\n * Copyright (c) 2021 OpenLens Authors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of\n * this software and associated documentation files (the \"Software\"), to deal in\n * the Software without restriction, including without limitation the rights to\n * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n * the Software, and to permit persons to whom the Software is furnished to do so,\n * subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n\n\n\n\n\n\nclass DeploymentApi extends _kube_api__WEBPACK_IMPORTED_MODULE_3__[\"KubeApi\"] {\n getScaleApiUrl(params) {\n return `${this.getUrl(params)}/scale`;\n }\n getReplicas(params) {\n return this.request\n .get(this.getScaleApiUrl(params))\n .then(({ status }) => status === null || status === void 0 ? void 0 : status.replicas);\n }\n scale(params, replicas) {\n return this.request.patch(this.getScaleApiUrl(params), {\n data: {\n spec: {\n replicas,\n },\n },\n }, {\n headers: {\n \"content-type\": \"application/merge-patch+json\",\n },\n });\n }\n restart(params) {\n return this.request.patch(this.getUrl(params), {\n data: {\n spec: {\n template: {\n metadata: {\n annotations: { \"kubectl.kubernetes.io/restartedAt\": moment__WEBPACK_IMPORTED_MODULE_0___default.a.utc().format() },\n },\n },\n },\n },\n }, {\n headers: {\n \"content-type\": \"application/strategic-merge-patch+json\",\n },\n });\n }\n}\nfunction getMetricsForDeployments(deployments, namespace, selector = \"\") {\n const podSelector = deployments.map(deployment => `${deployment.getName()}-[[:alnum:]]{9,}-[[:alnum:]]{5}`).join(\"|\");\n const opts = { category: \"pods\", pods: podSelector, namespace, selector };\n return _metrics_api__WEBPACK_IMPORTED_MODULE_4__[\"metricsApi\"].getMetrics({\n cpuUsage: opts,\n memoryUsage: opts,\n fsUsage: opts,\n networkReceive: opts,\n networkTransmit: opts,\n }, {\n namespace,\n });\n}\nclass Deployment extends _workload_kube_object__WEBPACK_IMPORTED_MODULE_1__[\"WorkloadKubeObject\"] {\n constructor(data) {\n super(data);\n Object(_utils__WEBPACK_IMPORTED_MODULE_2__[\"autoBind\"])(this);\n }\n getConditions(activeOnly = false) {\n const { conditions } = this.status;\n if (!conditions)\n return [];\n if (activeOnly) {\n return conditions.filter(c => c.status === \"True\");\n }\n return conditions;\n }\n getConditionsText(activeOnly = true) {\n return this.getConditions(activeOnly).map(({ type }) => type).join(\" \");\n }\n getReplicas() {\n return this.spec.replicas || 0;\n }\n}\nObject.defineProperty(Deployment, \"kind\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"Deployment\"\n});\nObject.defineProperty(Deployment, \"namespaced\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: true\n});\nObject.defineProperty(Deployment, \"apiBase\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"/apis/apps/v1/deployments\"\n});\nlet deploymentApi;\nif (Object(_utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_5__[\"isClusterPageContext\"])()) {\n deploymentApi = new DeploymentApi({\n objectConstructor: Deployment,\n });\n}\n\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/endpoints/deployment.api.ts?");
|
|
38729
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"DeploymentApi\", function() { return DeploymentApi; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getMetricsForDeployments\", function() { return getMetricsForDeployments; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Deployment\", function() { return Deployment; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"deploymentApi\", function() { return deploymentApi; });\n/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! moment */ \"./node_modules/moment/moment.js\");\n/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _workload_kube_object__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../workload-kube-object */ \"./src/common/k8s-api/workload-kube-object.ts\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils */ \"./src/common/utils/index.ts\");\n/* harmony import */ var _kube_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../kube-api */ \"./src/common/k8s-api/kube-api.ts\");\n/* harmony import */ var _metrics_api__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./metrics.api */ \"./src/common/k8s-api/endpoints/metrics.api.ts\");\n/* harmony import */ var _utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/cluster-id-url-parsing */ \"./src/common/utils/cluster-id-url-parsing.ts\");\n/**\n * Copyright (c) 2021 OpenLens Authors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of\n * this software and associated documentation files (the \"Software\"), to deal in\n * the Software without restriction, including without limitation the rights to\n * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n * the Software, and to permit persons to whom the Software is furnished to do so,\n * subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n\n\n\n\n\n\nclass DeploymentApi extends _kube_api__WEBPACK_IMPORTED_MODULE_3__[\"KubeApi\"] {\n getScaleApiUrl(params) {\n return `${this.getUrl(params)}/scale`;\n }\n getReplicas(params) {\n return this.request\n .get(this.getScaleApiUrl(params))\n .then(({ status }) => status === null || status === void 0 ? void 0 : status.replicas);\n }\n scale(params, replicas) {\n return this.request.patch(this.getScaleApiUrl(params), {\n data: {\n spec: {\n replicas,\n },\n },\n }, {\n headers: {\n \"content-type\": \"application/merge-patch+json\",\n },\n });\n }\n restart(params) {\n return this.request.patch(this.getUrl(params), {\n data: {\n spec: {\n template: {\n metadata: {\n annotations: { \"kubectl.kubernetes.io/restartedAt\": moment__WEBPACK_IMPORTED_MODULE_0___default.a.utc().format() },\n },\n },\n },\n },\n }, {\n headers: {\n \"content-type\": \"application/strategic-merge-patch+json\",\n },\n });\n }\n}\nfunction getMetricsForDeployments(deployments, namespace, selector = \"\") {\n const podSelector = deployments.map(deployment => `${deployment.getName()}-[[:alnum:]]{9,}-[[:alnum:]]{5}`).join(\"|\");\n const opts = { category: \"pods\", pods: podSelector, namespace, selector };\n return _metrics_api__WEBPACK_IMPORTED_MODULE_4__[\"metricsApi\"].getMetrics({\n cpuUsage: opts,\n memoryUsage: opts,\n fsUsage: opts,\n fsWrites: opts,\n fsReads: opts,\n networkReceive: opts,\n networkTransmit: opts,\n }, {\n namespace,\n });\n}\nclass Deployment extends _workload_kube_object__WEBPACK_IMPORTED_MODULE_1__[\"WorkloadKubeObject\"] {\n constructor(data) {\n super(data);\n Object(_utils__WEBPACK_IMPORTED_MODULE_2__[\"autoBind\"])(this);\n }\n getConditions(activeOnly = false) {\n const { conditions } = this.status;\n if (!conditions)\n return [];\n if (activeOnly) {\n return conditions.filter(c => c.status === \"True\");\n }\n return conditions;\n }\n getConditionsText(activeOnly = true) {\n return this.getConditions(activeOnly).map(({ type }) => type).join(\" \");\n }\n getReplicas() {\n return this.spec.replicas || 0;\n }\n}\nObject.defineProperty(Deployment, \"kind\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"Deployment\"\n});\nObject.defineProperty(Deployment, \"namespaced\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: true\n});\nObject.defineProperty(Deployment, \"apiBase\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"/apis/apps/v1/deployments\"\n});\nlet deploymentApi;\nif (Object(_utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_5__[\"isClusterPageContext\"])()) {\n deploymentApi = new DeploymentApi({\n objectConstructor: Deployment,\n });\n}\n\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/endpoints/deployment.api.ts?");
|
|
38730
38730
|
|
|
38731
38731
|
/***/ }),
|
|
38732
38732
|
|
|
@@ -38798,7 +38798,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
|
|
|
38798
38798
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
38799
38799
|
|
|
38800
38800
|
"use strict";
|
|
38801
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Job\", function() { return Job; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"JobApi\", function() { return JobApi; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getMetricsForJobs\", function() { return getMetricsForJobs; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"jobApi\", function() { return jobApi; });\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/get */ \"./node_modules/lodash/get.js\");\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_get__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils */ \"./src/common/utils/index.ts\");\n/* harmony import */ var _workload_kube_object__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../workload-kube-object */ \"./src/common/k8s-api/workload-kube-object.ts\");\n/* harmony import */ var _kube_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../kube-api */ \"./src/common/k8s-api/kube-api.ts\");\n/* harmony import */ var _metrics_api__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./metrics.api */ \"./src/common/k8s-api/endpoints/metrics.api.ts\");\n/* harmony import */ var _utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/cluster-id-url-parsing */ \"./src/common/utils/cluster-id-url-parsing.ts\");\n/**\n * Copyright (c) 2021 OpenLens Authors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of\n * this software and associated documentation files (the \"Software\"), to deal in\n * the Software without restriction, including without limitation the rights to\n * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n * the Software, and to permit persons to whom the Software is furnished to do so,\n * subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n\n\n\n\n\n\nclass Job extends _workload_kube_object__WEBPACK_IMPORTED_MODULE_2__[\"WorkloadKubeObject\"] {\n constructor(data) {\n super(data);\n Object(_utils__WEBPACK_IMPORTED_MODULE_1__[\"autoBind\"])(this);\n }\n getDesiredCompletions() {\n return this.spec.completions || 0;\n }\n getCompletions() {\n return this.status.succeeded || 0;\n }\n getParallelism() {\n return this.spec.parallelism;\n }\n getCondition() {\n var _a;\n // Type of Job condition could be only Complete or Failed\n // https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.14/#jobcondition-v1-batch\n return (_a = this.status.conditions) === null || _a === void 0 ? void 0 : _a.find(({ status }) => status === \"True\");\n }\n getImages() {\n const containers = lodash_get__WEBPACK_IMPORTED_MODULE_0___default()(this, \"spec.template.spec.containers\", []);\n return [...containers].map(container => container.image);\n }\n}\nObject.defineProperty(Job, \"kind\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"Job\"\n});\nObject.defineProperty(Job, \"namespaced\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: true\n});\nObject.defineProperty(Job, \"apiBase\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"/apis/batch/v1/jobs\"\n});\nclass JobApi extends _kube_api__WEBPACK_IMPORTED_MODULE_3__[\"KubeApi\"] {\n}\nfunction getMetricsForJobs(jobs, namespace, selector = \"\") {\n const podSelector = jobs.map(job => `${job.getName()}-[[:alnum:]]{5}`).join(\"|\");\n const opts = { category: \"pods\", pods: podSelector, namespace, selector };\n return _metrics_api__WEBPACK_IMPORTED_MODULE_4__[\"metricsApi\"].getMetrics({\n cpuUsage: opts,\n memoryUsage: opts,\n fsUsage: opts,\n networkReceive: opts,\n networkTransmit: opts,\n }, {\n namespace,\n });\n}\nlet jobApi;\nif (Object(_utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_5__[\"isClusterPageContext\"])()) {\n jobApi = new JobApi({\n objectConstructor: Job,\n });\n}\n\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/endpoints/job.api.ts?");
|
|
38801
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Job\", function() { return Job; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"JobApi\", function() { return JobApi; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getMetricsForJobs\", function() { return getMetricsForJobs; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"jobApi\", function() { return jobApi; });\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/get */ \"./node_modules/lodash/get.js\");\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_get__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils */ \"./src/common/utils/index.ts\");\n/* harmony import */ var _workload_kube_object__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../workload-kube-object */ \"./src/common/k8s-api/workload-kube-object.ts\");\n/* harmony import */ var _kube_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../kube-api */ \"./src/common/k8s-api/kube-api.ts\");\n/* harmony import */ var _metrics_api__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./metrics.api */ \"./src/common/k8s-api/endpoints/metrics.api.ts\");\n/* harmony import */ var _utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/cluster-id-url-parsing */ \"./src/common/utils/cluster-id-url-parsing.ts\");\n/**\n * Copyright (c) 2021 OpenLens Authors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of\n * this software and associated documentation files (the \"Software\"), to deal in\n * the Software without restriction, including without limitation the rights to\n * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n * the Software, and to permit persons to whom the Software is furnished to do so,\n * subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n\n\n\n\n\n\nclass Job extends _workload_kube_object__WEBPACK_IMPORTED_MODULE_2__[\"WorkloadKubeObject\"] {\n constructor(data) {\n super(data);\n Object(_utils__WEBPACK_IMPORTED_MODULE_1__[\"autoBind\"])(this);\n }\n getDesiredCompletions() {\n return this.spec.completions || 0;\n }\n getCompletions() {\n return this.status.succeeded || 0;\n }\n getParallelism() {\n return this.spec.parallelism;\n }\n getCondition() {\n var _a;\n // Type of Job condition could be only Complete or Failed\n // https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.14/#jobcondition-v1-batch\n return (_a = this.status.conditions) === null || _a === void 0 ? void 0 : _a.find(({ status }) => status === \"True\");\n }\n getImages() {\n const containers = lodash_get__WEBPACK_IMPORTED_MODULE_0___default()(this, \"spec.template.spec.containers\", []);\n return [...containers].map(container => container.image);\n }\n}\nObject.defineProperty(Job, \"kind\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"Job\"\n});\nObject.defineProperty(Job, \"namespaced\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: true\n});\nObject.defineProperty(Job, \"apiBase\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"/apis/batch/v1/jobs\"\n});\nclass JobApi extends _kube_api__WEBPACK_IMPORTED_MODULE_3__[\"KubeApi\"] {\n}\nfunction getMetricsForJobs(jobs, namespace, selector = \"\") {\n const podSelector = jobs.map(job => `${job.getName()}-[[:alnum:]]{5}`).join(\"|\");\n const opts = { category: \"pods\", pods: podSelector, namespace, selector };\n return _metrics_api__WEBPACK_IMPORTED_MODULE_4__[\"metricsApi\"].getMetrics({\n cpuUsage: opts,\n memoryUsage: opts,\n fsUsage: opts,\n fsWrites: opts,\n fsReads: opts,\n networkReceive: opts,\n networkTransmit: opts,\n }, {\n namespace,\n });\n}\nlet jobApi;\nif (Object(_utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_5__[\"isClusterPageContext\"])()) {\n jobApi = new JobApi({\n objectConstructor: Job,\n });\n}\n\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/endpoints/job.api.ts?");
|
|
38802
38802
|
|
|
38803
38803
|
/***/ }),
|
|
38804
38804
|
|
|
@@ -38834,7 +38834,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
|
|
|
38834
38834
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
38835
38835
|
|
|
38836
38836
|
"use strict";
|
|
38837
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"NamespaceStatus\", function() { return NamespaceStatus; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Namespace\", function() { return Namespace; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"NamespaceApi\", function() { return NamespaceApi; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getMetricsForNamespace\", function() { return getMetricsForNamespace; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"namespacesApi\", function() { return namespacesApi; });\n/* harmony import */ var _kube_api__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../kube-api */ \"./src/common/k8s-api/kube-api.ts\");\n/* harmony import */ var _kube_object__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../kube-object */ \"./src/common/k8s-api/kube-object.ts\");\n/* harmony import */ var _renderer_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../renderer/utils */ \"./src/renderer/utils/index.ts\");\n/* harmony import */ var _metrics_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./metrics.api */ \"./src/common/k8s-api/endpoints/metrics.api.ts\");\n/* harmony import */ var _utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/cluster-id-url-parsing */ \"./src/common/utils/cluster-id-url-parsing.ts\");\n/**\n * Copyright (c) 2021 OpenLens Authors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of\n * this software and associated documentation files (the \"Software\"), to deal in\n * the Software without restriction, including without limitation the rights to\n * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n * the Software, and to permit persons to whom the Software is furnished to do so,\n * subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n\n\n\n\n\nvar NamespaceStatus;\n(function (NamespaceStatus) {\n NamespaceStatus[\"ACTIVE\"] = \"Active\";\n NamespaceStatus[\"TERMINATING\"] = \"Terminating\";\n})(NamespaceStatus || (NamespaceStatus = {}));\nclass Namespace extends _kube_object__WEBPACK_IMPORTED_MODULE_1__[\"KubeObject\"] {\n constructor(data) {\n super(data);\n Object(_renderer_utils__WEBPACK_IMPORTED_MODULE_2__[\"autoBind\"])(this);\n }\n getStatus() {\n var _a, _b;\n return (_b = (_a = this.status) === null || _a === void 0 ? void 0 : _a.phase) !== null && _b !== void 0 ? _b : \"-\";\n }\n}\nObject.defineProperty(Namespace, \"kind\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"Namespace\"\n});\nObject.defineProperty(Namespace, \"namespaced\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: false\n});\nObject.defineProperty(Namespace, \"apiBase\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"/api/v1/namespaces\"\n});\nclass NamespaceApi extends _kube_api__WEBPACK_IMPORTED_MODULE_0__[\"KubeApi\"] {\n}\nfunction getMetricsForNamespace(namespace, selector = \"\") {\n const opts = { category: \"pods\", pods: \".*\", namespace, selector };\n return _metrics_api__WEBPACK_IMPORTED_MODULE_3__[\"metricsApi\"].getMetrics({\n cpuUsage: opts,\n memoryUsage: opts,\n fsUsage: opts,\n networkReceive: opts,\n networkTransmit: opts,\n }, {\n namespace,\n });\n}\nlet namespacesApi;\nif (Object(_utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_4__[\"isClusterPageContext\"])()) {\n namespacesApi = new NamespaceApi({\n objectConstructor: Namespace,\n });\n}\n\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/endpoints/namespaces.api.ts?");
|
|
38837
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"NamespaceStatus\", function() { return NamespaceStatus; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Namespace\", function() { return Namespace; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"NamespaceApi\", function() { return NamespaceApi; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getMetricsForNamespace\", function() { return getMetricsForNamespace; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"namespacesApi\", function() { return namespacesApi; });\n/* harmony import */ var _kube_api__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../kube-api */ \"./src/common/k8s-api/kube-api.ts\");\n/* harmony import */ var _kube_object__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../kube-object */ \"./src/common/k8s-api/kube-object.ts\");\n/* harmony import */ var _renderer_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../renderer/utils */ \"./src/renderer/utils/index.ts\");\n/* harmony import */ var _metrics_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./metrics.api */ \"./src/common/k8s-api/endpoints/metrics.api.ts\");\n/* harmony import */ var _utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/cluster-id-url-parsing */ \"./src/common/utils/cluster-id-url-parsing.ts\");\n/**\n * Copyright (c) 2021 OpenLens Authors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of\n * this software and associated documentation files (the \"Software\"), to deal in\n * the Software without restriction, including without limitation the rights to\n * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n * the Software, and to permit persons to whom the Software is furnished to do so,\n * subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n\n\n\n\n\nvar NamespaceStatus;\n(function (NamespaceStatus) {\n NamespaceStatus[\"ACTIVE\"] = \"Active\";\n NamespaceStatus[\"TERMINATING\"] = \"Terminating\";\n})(NamespaceStatus || (NamespaceStatus = {}));\nclass Namespace extends _kube_object__WEBPACK_IMPORTED_MODULE_1__[\"KubeObject\"] {\n constructor(data) {\n super(data);\n Object(_renderer_utils__WEBPACK_IMPORTED_MODULE_2__[\"autoBind\"])(this);\n }\n getStatus() {\n var _a, _b;\n return (_b = (_a = this.status) === null || _a === void 0 ? void 0 : _a.phase) !== null && _b !== void 0 ? _b : \"-\";\n }\n}\nObject.defineProperty(Namespace, \"kind\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"Namespace\"\n});\nObject.defineProperty(Namespace, \"namespaced\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: false\n});\nObject.defineProperty(Namespace, \"apiBase\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"/api/v1/namespaces\"\n});\nclass NamespaceApi extends _kube_api__WEBPACK_IMPORTED_MODULE_0__[\"KubeApi\"] {\n}\nfunction getMetricsForNamespace(namespace, selector = \"\") {\n const opts = { category: \"pods\", pods: \".*\", namespace, selector };\n return _metrics_api__WEBPACK_IMPORTED_MODULE_3__[\"metricsApi\"].getMetrics({\n cpuUsage: opts,\n memoryUsage: opts,\n fsUsage: opts,\n fsWrites: opts,\n fsReads: opts,\n networkReceive: opts,\n networkTransmit: opts,\n }, {\n namespace,\n });\n}\nlet namespacesApi;\nif (Object(_utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_4__[\"isClusterPageContext\"])()) {\n namespacesApi = new NamespaceApi({\n objectConstructor: Namespace,\n });\n}\n\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/endpoints/namespaces.api.ts?");
|
|
38838
38838
|
|
|
38839
38839
|
/***/ }),
|
|
38840
38840
|
|
|
@@ -38918,7 +38918,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
|
|
|
38918
38918
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
38919
38919
|
|
|
38920
38920
|
"use strict";
|
|
38921
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"PodsApi\", function() { return PodsApi; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getMetricsForPods\", function() { return getMetricsForPods; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"PodStatus\", function() { return PodStatus; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Pod\", function() { return Pod; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"podsApi\", function() { return podsApi; });\n/* harmony import */ var _workload_kube_object__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../workload-kube-object */ \"./src/common/k8s-api/workload-kube-object.ts\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils */ \"./src/common/utils/index.ts\");\n/* harmony import */ var _metrics_api__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./metrics.api */ \"./src/common/k8s-api/endpoints/metrics.api.ts\");\n/* harmony import */ var _kube_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../kube-api */ \"./src/common/k8s-api/kube-api.ts\");\n/* harmony import */ var _utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/cluster-id-url-parsing */ \"./src/common/utils/cluster-id-url-parsing.ts\");\n/**\n * Copyright (c) 2021 OpenLens Authors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of\n * this software and associated documentation files (the \"Software\"), to deal in\n * the Software without restriction, including without limitation the rights to\n * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n * the Software, and to permit persons to whom the Software is furnished to do so,\n * subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n\n\n\n\n\nclass PodsApi extends _kube_api__WEBPACK_IMPORTED_MODULE_3__[\"KubeApi\"] {\n async getLogs(params, query) {\n const path = `${this.getUrl(params)}/log`;\n return this.request.get(path, { query });\n }\n}\nfunction getMetricsForPods(pods, namespace, selector = \"pod, namespace\") {\n const podSelector = pods.map(pod => pod.getName()).join(\"|\");\n const opts = { category: \"pods\", pods: podSelector, namespace, selector };\n return _metrics_api__WEBPACK_IMPORTED_MODULE_2__[\"metricsApi\"].getMetrics({\n cpuUsage: opts,\n cpuRequests: opts,\n cpuLimits: opts,\n memoryUsage: opts,\n memoryRequests: opts,\n memoryLimits: opts,\n fsUsage: opts,\n networkReceive: opts,\n networkTransmit: opts,\n }, {\n namespace,\n });\n}\nvar PodStatus;\n(function (PodStatus) {\n PodStatus[\"TERMINATED\"] = \"Terminated\";\n PodStatus[\"FAILED\"] = \"Failed\";\n PodStatus[\"PENDING\"] = \"Pending\";\n PodStatus[\"RUNNING\"] = \"Running\";\n PodStatus[\"SUCCEEDED\"] = \"Succeeded\";\n PodStatus[\"EVICTED\"] = \"Evicted\";\n})(PodStatus || (PodStatus = {}));\nclass Pod extends _workload_kube_object__WEBPACK_IMPORTED_MODULE_0__[\"WorkloadKubeObject\"] {\n constructor(data) {\n super(data);\n Object(_utils__WEBPACK_IMPORTED_MODULE_1__[\"autoBind\"])(this);\n }\n getInitContainers() {\n var _a;\n return ((_a = this.spec) === null || _a === void 0 ? void 0 : _a.initContainers) || [];\n }\n getContainers() {\n var _a;\n return ((_a = this.spec) === null || _a === void 0 ? void 0 : _a.containers) || [];\n }\n getAllContainers() {\n return [...this.getContainers(), ...this.getInitContainers()];\n }\n getRunningContainers() {\n const runningContainerNames = new Set(this.getContainerStatuses()\n .filter(({ state }) => state.running)\n .map(({ name }) => name));\n return this.getAllContainers()\n .filter(({ name }) => runningContainerNames.has(name));\n }\n getContainerStatuses(includeInitContainers = true) {\n var _a;\n const { containerStatuses = [], initContainerStatuses = [] } = (_a = this.status) !== null && _a !== void 0 ? _a : {};\n if (includeInitContainers) {\n return [...containerStatuses, ...initContainerStatuses];\n }\n return [...containerStatuses];\n }\n getRestartsCount() {\n var _a;\n const { containerStatuses = [] } = (_a = this.status) !== null && _a !== void 0 ? _a : {};\n return containerStatuses.reduce((totalCount, { restartCount }) => totalCount + restartCount, 0);\n }\n getQosClass() {\n var _a;\n return ((_a = this.status) === null || _a === void 0 ? void 0 : _a.qosClass) || \"\";\n }\n getReason() {\n var _a;\n return ((_a = this.status) === null || _a === void 0 ? void 0 : _a.reason) || \"\";\n }\n getPriorityClassName() {\n return this.spec.priorityClassName || \"\";\n }\n getStatus() {\n const phase = this.getStatusPhase();\n const reason = this.getReason();\n const trueConditionTypes = new Set(this.getConditions()\n .filter(({ status }) => status === \"True\")\n .map(({ type }) => type));\n const isInGoodCondition = [\"Initialized\", \"Ready\"].every(condition => trueConditionTypes.has(condition));\n if (reason === PodStatus.EVICTED) {\n return PodStatus.EVICTED;\n }\n if (phase === PodStatus.FAILED) {\n return PodStatus.FAILED;\n }\n if (phase === PodStatus.SUCCEEDED) {\n return PodStatus.SUCCEEDED;\n }\n if (phase === PodStatus.RUNNING && isInGoodCondition) {\n return PodStatus.RUNNING;\n }\n return PodStatus.PENDING;\n }\n // Returns pod phase or container error if occurred\n getStatusMessage() {\n if (this.getReason() === PodStatus.EVICTED) {\n return \"Evicted\";\n }\n if (this.metadata.deletionTimestamp) {\n return \"Terminating\";\n }\n return this.getStatusPhase() || \"Waiting\";\n }\n getStatusPhase() {\n var _a;\n return (_a = this.status) === null || _a === void 0 ? void 0 : _a.phase;\n }\n getConditions() {\n var _a;\n return ((_a = this.status) === null || _a === void 0 ? void 0 : _a.conditions) || [];\n }\n getVolumes() {\n return this.spec.volumes || [];\n }\n getSecrets() {\n return this.getVolumes()\n .filter(vol => vol.secret)\n .map(vol => vol.secret.secretName);\n }\n getNodeSelectors() {\n const { nodeSelector = {} } = this.spec;\n return Object.entries(nodeSelector).map(values => values.join(\": \"));\n }\n getTolerations() {\n return this.spec.tolerations || [];\n }\n getAffinity() {\n return this.spec.affinity;\n }\n hasIssues() {\n var _a;\n for (const { type, status } of this.getConditions()) {\n if (type === \"Ready\" && status !== \"True\") {\n return true;\n }\n }\n for (const { state } of this.getContainerStatuses()) {\n if (((_a = state === null || state === void 0 ? void 0 : state.waiting) === null || _a === void 0 ? void 0 : _a.reason) === \"CrashLookBackOff\") {\n return true;\n }\n }\n return this.getStatusPhase() !== \"Running\";\n }\n getLivenessProbe(container) {\n return this.getProbe(container, \"livenessProbe\");\n }\n getReadinessProbe(container) {\n return this.getProbe(container, \"readinessProbe\");\n }\n getStartupProbe(container) {\n return this.getProbe(container, \"startupProbe\");\n }\n getProbe(container, field) {\n var _a, _b;\n const probe = [];\n const probeData = container[field];\n if (!probeData) {\n return probe;\n }\n const { httpGet, exec, tcpSocket, initialDelaySeconds = 0, timeoutSeconds = 0, periodSeconds = 0, successThreshold = 0, failureThreshold = 0, } = probeData;\n // HTTP Request\n if (httpGet) {\n const { path = \"\", port, host = \"\", scheme } = httpGet;\n const resolvedPort = typeof port === \"number\"\n ? port\n // Try and find the port number associated witht the name or fallback to the name itself\n : ((_b = (_a = container.ports) === null || _a === void 0 ? void 0 : _a.find(containerPort => containerPort.name === port)) === null || _b === void 0 ? void 0 : _b.containerPort) || port;\n probe.push(\"http-get\", `${scheme.toLowerCase()}://${host}:${resolvedPort}${path}`);\n }\n // Command\n if (exec === null || exec === void 0 ? void 0 : exec.command) {\n probe.push(`exec [${exec.command.join(\" \")}]`);\n }\n // TCP Probe\n if (tcpSocket === null || tcpSocket === void 0 ? void 0 : tcpSocket.port) {\n probe.push(`tcp-socket :${tcpSocket.port}`);\n }\n probe.push(`delay=${initialDelaySeconds}s`, `timeout=${timeoutSeconds}s`, `period=${periodSeconds}s`, `#success=${successThreshold}`, `#failure=${failureThreshold}`);\n return probe;\n }\n getNodeName() {\n return this.spec.nodeName;\n }\n getSelectedNodeOs() {\n var _a, _b;\n return ((_a = this.spec.nodeSelector) === null || _a === void 0 ? void 0 : _a[\"kubernetes.io/os\"]) || ((_b = this.spec.nodeSelector) === null || _b === void 0 ? void 0 : _b[\"beta.kubernetes.io/os\"]);\n }\n getIPs() {\n if (!this.status.podIPs)\n return [];\n const podIPs = this.status.podIPs;\n return podIPs.map(value => value.ip);\n }\n}\nObject.defineProperty(Pod, \"kind\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"Pod\"\n});\nObject.defineProperty(Pod, \"namespaced\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: true\n});\nObject.defineProperty(Pod, \"apiBase\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"/api/v1/pods\"\n});\nlet podsApi;\nif (Object(_utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_4__[\"isClusterPageContext\"])()) {\n podsApi = new PodsApi({\n objectConstructor: Pod,\n });\n}\n\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/endpoints/pods.api.ts?");
|
|
38921
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"PodsApi\", function() { return PodsApi; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getMetricsForPods\", function() { return getMetricsForPods; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"PodStatus\", function() { return PodStatus; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Pod\", function() { return Pod; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"podsApi\", function() { return podsApi; });\n/* harmony import */ var _workload_kube_object__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../workload-kube-object */ \"./src/common/k8s-api/workload-kube-object.ts\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils */ \"./src/common/utils/index.ts\");\n/* harmony import */ var _metrics_api__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./metrics.api */ \"./src/common/k8s-api/endpoints/metrics.api.ts\");\n/* harmony import */ var _kube_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../kube-api */ \"./src/common/k8s-api/kube-api.ts\");\n/* harmony import */ var _utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/cluster-id-url-parsing */ \"./src/common/utils/cluster-id-url-parsing.ts\");\n/**\n * Copyright (c) 2021 OpenLens Authors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of\n * this software and associated documentation files (the \"Software\"), to deal in\n * the Software without restriction, including without limitation the rights to\n * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n * the Software, and to permit persons to whom the Software is furnished to do so,\n * subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n\n\n\n\n\nclass PodsApi extends _kube_api__WEBPACK_IMPORTED_MODULE_3__[\"KubeApi\"] {\n async getLogs(params, query) {\n const path = `${this.getUrl(params)}/log`;\n return this.request.get(path, { query });\n }\n}\nfunction getMetricsForPods(pods, namespace, selector = \"pod, namespace\") {\n const podSelector = pods.map(pod => pod.getName()).join(\"|\");\n const opts = { category: \"pods\", pods: podSelector, namespace, selector };\n return _metrics_api__WEBPACK_IMPORTED_MODULE_2__[\"metricsApi\"].getMetrics({\n cpuUsage: opts,\n cpuRequests: opts,\n cpuLimits: opts,\n memoryUsage: opts,\n memoryRequests: opts,\n memoryLimits: opts,\n fsUsage: opts,\n fsWrites: opts,\n fsReads: opts,\n networkReceive: opts,\n networkTransmit: opts,\n }, {\n namespace,\n });\n}\nvar PodStatus;\n(function (PodStatus) {\n PodStatus[\"TERMINATED\"] = \"Terminated\";\n PodStatus[\"FAILED\"] = \"Failed\";\n PodStatus[\"PENDING\"] = \"Pending\";\n PodStatus[\"RUNNING\"] = \"Running\";\n PodStatus[\"SUCCEEDED\"] = \"Succeeded\";\n PodStatus[\"EVICTED\"] = \"Evicted\";\n})(PodStatus || (PodStatus = {}));\nclass Pod extends _workload_kube_object__WEBPACK_IMPORTED_MODULE_0__[\"WorkloadKubeObject\"] {\n constructor(data) {\n super(data);\n Object(_utils__WEBPACK_IMPORTED_MODULE_1__[\"autoBind\"])(this);\n }\n getInitContainers() {\n var _a;\n return ((_a = this.spec) === null || _a === void 0 ? void 0 : _a.initContainers) || [];\n }\n getContainers() {\n var _a;\n return ((_a = this.spec) === null || _a === void 0 ? void 0 : _a.containers) || [];\n }\n getAllContainers() {\n return [...this.getContainers(), ...this.getInitContainers()];\n }\n getRunningContainers() {\n const runningContainerNames = new Set(this.getContainerStatuses()\n .filter(({ state }) => state.running)\n .map(({ name }) => name));\n return this.getAllContainers()\n .filter(({ name }) => runningContainerNames.has(name));\n }\n getContainerStatuses(includeInitContainers = true) {\n var _a;\n const { containerStatuses = [], initContainerStatuses = [] } = (_a = this.status) !== null && _a !== void 0 ? _a : {};\n if (includeInitContainers) {\n return [...containerStatuses, ...initContainerStatuses];\n }\n return [...containerStatuses];\n }\n getRestartsCount() {\n var _a;\n const { containerStatuses = [] } = (_a = this.status) !== null && _a !== void 0 ? _a : {};\n return containerStatuses.reduce((totalCount, { restartCount }) => totalCount + restartCount, 0);\n }\n getQosClass() {\n var _a;\n return ((_a = this.status) === null || _a === void 0 ? void 0 : _a.qosClass) || \"\";\n }\n getReason() {\n var _a;\n return ((_a = this.status) === null || _a === void 0 ? void 0 : _a.reason) || \"\";\n }\n getPriorityClassName() {\n return this.spec.priorityClassName || \"\";\n }\n getStatus() {\n const phase = this.getStatusPhase();\n const reason = this.getReason();\n const trueConditionTypes = new Set(this.getConditions()\n .filter(({ status }) => status === \"True\")\n .map(({ type }) => type));\n const isInGoodCondition = [\"Initialized\", \"Ready\"].every(condition => trueConditionTypes.has(condition));\n if (reason === PodStatus.EVICTED) {\n return PodStatus.EVICTED;\n }\n if (phase === PodStatus.FAILED) {\n return PodStatus.FAILED;\n }\n if (phase === PodStatus.SUCCEEDED) {\n return PodStatus.SUCCEEDED;\n }\n if (phase === PodStatus.RUNNING && isInGoodCondition) {\n return PodStatus.RUNNING;\n }\n return PodStatus.PENDING;\n }\n // Returns pod phase or container error if occurred\n getStatusMessage() {\n if (this.getReason() === PodStatus.EVICTED) {\n return \"Evicted\";\n }\n if (this.metadata.deletionTimestamp) {\n return \"Terminating\";\n }\n return this.getStatusPhase() || \"Waiting\";\n }\n getStatusPhase() {\n var _a;\n return (_a = this.status) === null || _a === void 0 ? void 0 : _a.phase;\n }\n getConditions() {\n var _a;\n return ((_a = this.status) === null || _a === void 0 ? void 0 : _a.conditions) || [];\n }\n getVolumes() {\n return this.spec.volumes || [];\n }\n getSecrets() {\n return this.getVolumes()\n .filter(vol => vol.secret)\n .map(vol => vol.secret.secretName);\n }\n getNodeSelectors() {\n const { nodeSelector = {} } = this.spec;\n return Object.entries(nodeSelector).map(values => values.join(\": \"));\n }\n getTolerations() {\n return this.spec.tolerations || [];\n }\n getAffinity() {\n return this.spec.affinity;\n }\n hasIssues() {\n var _a;\n for (const { type, status } of this.getConditions()) {\n if (type === \"Ready\" && status !== \"True\") {\n return true;\n }\n }\n for (const { state } of this.getContainerStatuses()) {\n if (((_a = state === null || state === void 0 ? void 0 : state.waiting) === null || _a === void 0 ? void 0 : _a.reason) === \"CrashLookBackOff\") {\n return true;\n }\n }\n return this.getStatusPhase() !== \"Running\";\n }\n getLivenessProbe(container) {\n return this.getProbe(container, \"livenessProbe\");\n }\n getReadinessProbe(container) {\n return this.getProbe(container, \"readinessProbe\");\n }\n getStartupProbe(container) {\n return this.getProbe(container, \"startupProbe\");\n }\n getProbe(container, field) {\n var _a, _b;\n const probe = [];\n const probeData = container[field];\n if (!probeData) {\n return probe;\n }\n const { httpGet, exec, tcpSocket, initialDelaySeconds = 0, timeoutSeconds = 0, periodSeconds = 0, successThreshold = 0, failureThreshold = 0, } = probeData;\n // HTTP Request\n if (httpGet) {\n const { path = \"\", port, host = \"\", scheme } = httpGet;\n const resolvedPort = typeof port === \"number\"\n ? port\n // Try and find the port number associated witht the name or fallback to the name itself\n : ((_b = (_a = container.ports) === null || _a === void 0 ? void 0 : _a.find(containerPort => containerPort.name === port)) === null || _b === void 0 ? void 0 : _b.containerPort) || port;\n probe.push(\"http-get\", `${scheme.toLowerCase()}://${host}:${resolvedPort}${path}`);\n }\n // Command\n if (exec === null || exec === void 0 ? void 0 : exec.command) {\n probe.push(`exec [${exec.command.join(\" \")}]`);\n }\n // TCP Probe\n if (tcpSocket === null || tcpSocket === void 0 ? void 0 : tcpSocket.port) {\n probe.push(`tcp-socket :${tcpSocket.port}`);\n }\n probe.push(`delay=${initialDelaySeconds}s`, `timeout=${timeoutSeconds}s`, `period=${periodSeconds}s`, `#success=${successThreshold}`, `#failure=${failureThreshold}`);\n return probe;\n }\n getNodeName() {\n return this.spec.nodeName;\n }\n getSelectedNodeOs() {\n var _a, _b;\n return ((_a = this.spec.nodeSelector) === null || _a === void 0 ? void 0 : _a[\"kubernetes.io/os\"]) || ((_b = this.spec.nodeSelector) === null || _b === void 0 ? void 0 : _b[\"beta.kubernetes.io/os\"]);\n }\n getIPs() {\n if (!this.status.podIPs)\n return [];\n const podIPs = this.status.podIPs;\n return podIPs.map(value => value.ip);\n }\n}\nObject.defineProperty(Pod, \"kind\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"Pod\"\n});\nObject.defineProperty(Pod, \"namespaced\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: true\n});\nObject.defineProperty(Pod, \"apiBase\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"/api/v1/pods\"\n});\nlet podsApi;\nif (Object(_utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_4__[\"isClusterPageContext\"])()) {\n podsApi = new PodsApi({\n objectConstructor: Pod,\n });\n}\n\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/endpoints/pods.api.ts?");
|
|
38922
38922
|
|
|
38923
38923
|
/***/ }),
|
|
38924
38924
|
|
|
@@ -38942,7 +38942,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
|
|
|
38942
38942
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
38943
38943
|
|
|
38944
38944
|
"use strict";
|
|
38945
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"ReplicaSetApi\", function() { return ReplicaSetApi; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getMetricsForReplicaSets\", function() { return getMetricsForReplicaSets; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"ReplicaSet\", function() { return ReplicaSet; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"replicaSetApi\", function() { return replicaSetApi; });\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/get */ \"./node_modules/lodash/get.js\");\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_get__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _renderer_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../renderer/utils */ \"./src/renderer/utils/index.ts\");\n/* harmony import */ var _workload_kube_object__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../workload-kube-object */ \"./src/common/k8s-api/workload-kube-object.ts\");\n/* harmony import */ var _kube_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../kube-api */ \"./src/common/k8s-api/kube-api.ts\");\n/* harmony import */ var _metrics_api__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./metrics.api */ \"./src/common/k8s-api/endpoints/metrics.api.ts\");\n/* harmony import */ var _utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/cluster-id-url-parsing */ \"./src/common/utils/cluster-id-url-parsing.ts\");\n/**\n * Copyright (c) 2021 OpenLens Authors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of\n * this software and associated documentation files (the \"Software\"), to deal in\n * the Software without restriction, including without limitation the rights to\n * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n * the Software, and to permit persons to whom the Software is furnished to do so,\n * subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n\n\n\n\n\n\nclass ReplicaSetApi extends _kube_api__WEBPACK_IMPORTED_MODULE_3__[\"KubeApi\"] {\n getScaleApiUrl(params) {\n return `${this.getUrl(params)}/scale`;\n }\n getReplicas(params) {\n return this.request\n .get(this.getScaleApiUrl(params))\n .then(({ status }) => status === null || status === void 0 ? void 0 : status.replicas);\n }\n scale(params, replicas) {\n return this.request.put(this.getScaleApiUrl(params), {\n data: {\n metadata: params,\n spec: {\n replicas,\n },\n },\n });\n }\n}\nfunction getMetricsForReplicaSets(replicasets, namespace, selector = \"\") {\n const podSelector = replicasets.map(replicaset => `${replicaset.getName()}-[[:alnum:]]{5}`).join(\"|\");\n const opts = { category: \"pods\", pods: podSelector, namespace, selector };\n return _metrics_api__WEBPACK_IMPORTED_MODULE_4__[\"metricsApi\"].getMetrics({\n cpuUsage: opts,\n memoryUsage: opts,\n fsUsage: opts,\n networkReceive: opts,\n networkTransmit: opts,\n }, {\n namespace,\n });\n}\nclass ReplicaSet extends _workload_kube_object__WEBPACK_IMPORTED_MODULE_2__[\"WorkloadKubeObject\"] {\n constructor(data) {\n super(data);\n Object(_renderer_utils__WEBPACK_IMPORTED_MODULE_1__[\"autoBind\"])(this);\n }\n getDesired() {\n return this.spec.replicas || 0;\n }\n getCurrent() {\n return this.status.availableReplicas || 0;\n }\n getReady() {\n return this.status.readyReplicas || 0;\n }\n getImages() {\n const containers = lodash_get__WEBPACK_IMPORTED_MODULE_0___default()(this, \"spec.template.spec.containers\", []);\n return [...containers].map(container => container.image);\n }\n}\nObject.defineProperty(ReplicaSet, \"kind\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"ReplicaSet\"\n});\nObject.defineProperty(ReplicaSet, \"namespaced\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: true\n});\nObject.defineProperty(ReplicaSet, \"apiBase\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"/apis/apps/v1/replicasets\"\n});\nlet replicaSetApi;\nif (Object(_utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_5__[\"isClusterPageContext\"])()) {\n replicaSetApi = new ReplicaSetApi({\n objectConstructor: ReplicaSet,\n });\n}\n\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/endpoints/replica-set.api.ts?");
|
|
38945
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"ReplicaSetApi\", function() { return ReplicaSetApi; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getMetricsForReplicaSets\", function() { return getMetricsForReplicaSets; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"ReplicaSet\", function() { return ReplicaSet; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"replicaSetApi\", function() { return replicaSetApi; });\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/get */ \"./node_modules/lodash/get.js\");\n/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_get__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _renderer_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../renderer/utils */ \"./src/renderer/utils/index.ts\");\n/* harmony import */ var _workload_kube_object__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../workload-kube-object */ \"./src/common/k8s-api/workload-kube-object.ts\");\n/* harmony import */ var _kube_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../kube-api */ \"./src/common/k8s-api/kube-api.ts\");\n/* harmony import */ var _metrics_api__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./metrics.api */ \"./src/common/k8s-api/endpoints/metrics.api.ts\");\n/* harmony import */ var _utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/cluster-id-url-parsing */ \"./src/common/utils/cluster-id-url-parsing.ts\");\n/**\n * Copyright (c) 2021 OpenLens Authors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of\n * this software and associated documentation files (the \"Software\"), to deal in\n * the Software without restriction, including without limitation the rights to\n * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n * the Software, and to permit persons to whom the Software is furnished to do so,\n * subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n\n\n\n\n\n\nclass ReplicaSetApi extends _kube_api__WEBPACK_IMPORTED_MODULE_3__[\"KubeApi\"] {\n getScaleApiUrl(params) {\n return `${this.getUrl(params)}/scale`;\n }\n getReplicas(params) {\n return this.request\n .get(this.getScaleApiUrl(params))\n .then(({ status }) => status === null || status === void 0 ? void 0 : status.replicas);\n }\n scale(params, replicas) {\n return this.request.put(this.getScaleApiUrl(params), {\n data: {\n metadata: params,\n spec: {\n replicas,\n },\n },\n });\n }\n}\nfunction getMetricsForReplicaSets(replicasets, namespace, selector = \"\") {\n const podSelector = replicasets.map(replicaset => `${replicaset.getName()}-[[:alnum:]]{5}`).join(\"|\");\n const opts = { category: \"pods\", pods: podSelector, namespace, selector };\n return _metrics_api__WEBPACK_IMPORTED_MODULE_4__[\"metricsApi\"].getMetrics({\n cpuUsage: opts,\n memoryUsage: opts,\n fsUsage: opts,\n fsWrites: opts,\n fsReads: opts,\n networkReceive: opts,\n networkTransmit: opts,\n }, {\n namespace,\n });\n}\nclass ReplicaSet extends _workload_kube_object__WEBPACK_IMPORTED_MODULE_2__[\"WorkloadKubeObject\"] {\n constructor(data) {\n super(data);\n Object(_renderer_utils__WEBPACK_IMPORTED_MODULE_1__[\"autoBind\"])(this);\n }\n getDesired() {\n return this.spec.replicas || 0;\n }\n getCurrent() {\n return this.status.availableReplicas || 0;\n }\n getReady() {\n return this.status.readyReplicas || 0;\n }\n getImages() {\n const containers = lodash_get__WEBPACK_IMPORTED_MODULE_0___default()(this, \"spec.template.spec.containers\", []);\n return [...containers].map(container => container.image);\n }\n}\nObject.defineProperty(ReplicaSet, \"kind\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"ReplicaSet\"\n});\nObject.defineProperty(ReplicaSet, \"namespaced\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: true\n});\nObject.defineProperty(ReplicaSet, \"apiBase\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"/apis/apps/v1/replicasets\"\n});\nlet replicaSetApi;\nif (Object(_utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_5__[\"isClusterPageContext\"])()) {\n replicaSetApi = new ReplicaSetApi({\n objectConstructor: ReplicaSet,\n });\n}\n\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/endpoints/replica-set.api.ts?");
|
|
38946
38946
|
|
|
38947
38947
|
/***/ }),
|
|
38948
38948
|
|
|
@@ -39050,7 +39050,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
|
|
|
39050
39050
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
39051
39051
|
|
|
39052
39052
|
"use strict";
|
|
39053
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"StatefulSetApi\", function() { return StatefulSetApi; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getMetricsForStatefulSets\", function() { return getMetricsForStatefulSets; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"StatefulSet\", function() { return StatefulSet; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"statefulSetApi\", function() { return statefulSetApi; });\n/* harmony import */ var _workload_kube_object__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../workload-kube-object */ \"./src/common/k8s-api/workload-kube-object.ts\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils */ \"./src/common/utils/index.ts\");\n/* harmony import */ var _kube_api__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../kube-api */ \"./src/common/k8s-api/kube-api.ts\");\n/* harmony import */ var _metrics_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./metrics.api */ \"./src/common/k8s-api/endpoints/metrics.api.ts\");\n/* harmony import */ var _utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/cluster-id-url-parsing */ \"./src/common/utils/cluster-id-url-parsing.ts\");\n/**\n * Copyright (c) 2021 OpenLens Authors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of\n * this software and associated documentation files (the \"Software\"), to deal in\n * the Software without restriction, including without limitation the rights to\n * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n * the Software, and to permit persons to whom the Software is furnished to do so,\n * subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n\n\n\n\n\nclass StatefulSetApi extends _kube_api__WEBPACK_IMPORTED_MODULE_2__[\"KubeApi\"] {\n getScaleApiUrl(params) {\n return `${this.getUrl(params)}/scale`;\n }\n getReplicas(params) {\n return this.request\n .get(this.getScaleApiUrl(params))\n .then(({ status }) => status === null || status === void 0 ? void 0 : status.replicas);\n }\n scale(params, replicas) {\n return this.request.patch(this.getScaleApiUrl(params), {\n data: {\n spec: {\n replicas,\n },\n },\n }, {\n headers: {\n \"content-type\": \"application/merge-patch+json\",\n },\n });\n }\n}\nfunction getMetricsForStatefulSets(statefulSets, namespace, selector = \"\") {\n const podSelector = statefulSets.map(statefulset => `${statefulset.getName()}-[[:digit:]]+`).join(\"|\");\n const opts = { category: \"pods\", pods: podSelector, namespace, selector };\n return _metrics_api__WEBPACK_IMPORTED_MODULE_3__[\"metricsApi\"].getMetrics({\n cpuUsage: opts,\n memoryUsage: opts,\n fsUsage: opts,\n networkReceive: opts,\n networkTransmit: opts,\n }, {\n namespace,\n });\n}\nclass StatefulSet extends _workload_kube_object__WEBPACK_IMPORTED_MODULE_0__[\"WorkloadKubeObject\"] {\n constructor(data) {\n super(data);\n Object(_utils__WEBPACK_IMPORTED_MODULE_1__[\"autoBind\"])(this);\n }\n getReplicas() {\n return this.spec.replicas || 0;\n }\n getImages() {\n var _a, _b, _c;\n const containers = (_c = (_b = (_a = this.spec.template) === null || _a === void 0 ? void 0 : _a.spec) === null || _b === void 0 ? void 0 : _b.containers) !== null && _c !== void 0 ? _c : [];\n return containers.map(container => container.image);\n }\n}\nObject.defineProperty(StatefulSet, \"kind\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"StatefulSet\"\n});\nObject.defineProperty(StatefulSet, \"namespaced\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: true\n});\nObject.defineProperty(StatefulSet, \"apiBase\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"/apis/apps/v1/statefulsets\"\n});\nlet statefulSetApi;\nif (Object(_utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_4__[\"isClusterPageContext\"])()) {\n statefulSetApi = new StatefulSetApi({\n objectConstructor: StatefulSet,\n });\n}\n\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/endpoints/stateful-set.api.ts?");
|
|
39053
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"StatefulSetApi\", function() { return StatefulSetApi; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getMetricsForStatefulSets\", function() { return getMetricsForStatefulSets; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"StatefulSet\", function() { return StatefulSet; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"statefulSetApi\", function() { return statefulSetApi; });\n/* harmony import */ var _workload_kube_object__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../workload-kube-object */ \"./src/common/k8s-api/workload-kube-object.ts\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils */ \"./src/common/utils/index.ts\");\n/* harmony import */ var _kube_api__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../kube-api */ \"./src/common/k8s-api/kube-api.ts\");\n/* harmony import */ var _metrics_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./metrics.api */ \"./src/common/k8s-api/endpoints/metrics.api.ts\");\n/* harmony import */ var _utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/cluster-id-url-parsing */ \"./src/common/utils/cluster-id-url-parsing.ts\");\n/**\n * Copyright (c) 2021 OpenLens Authors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of\n * this software and associated documentation files (the \"Software\"), to deal in\n * the Software without restriction, including without limitation the rights to\n * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n * the Software, and to permit persons to whom the Software is furnished to do so,\n * subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n\n\n\n\n\nclass StatefulSetApi extends _kube_api__WEBPACK_IMPORTED_MODULE_2__[\"KubeApi\"] {\n getScaleApiUrl(params) {\n return `${this.getUrl(params)}/scale`;\n }\n getReplicas(params) {\n return this.request\n .get(this.getScaleApiUrl(params))\n .then(({ status }) => status === null || status === void 0 ? void 0 : status.replicas);\n }\n scale(params, replicas) {\n return this.request.patch(this.getScaleApiUrl(params), {\n data: {\n spec: {\n replicas,\n },\n },\n }, {\n headers: {\n \"content-type\": \"application/merge-patch+json\",\n },\n });\n }\n}\nfunction getMetricsForStatefulSets(statefulSets, namespace, selector = \"\") {\n const podSelector = statefulSets.map(statefulset => `${statefulset.getName()}-[[:digit:]]+`).join(\"|\");\n const opts = { category: \"pods\", pods: podSelector, namespace, selector };\n return _metrics_api__WEBPACK_IMPORTED_MODULE_3__[\"metricsApi\"].getMetrics({\n cpuUsage: opts,\n memoryUsage: opts,\n fsUsage: opts,\n fsWrites: opts,\n fsReads: opts,\n networkReceive: opts,\n networkTransmit: opts,\n }, {\n namespace,\n });\n}\nclass StatefulSet extends _workload_kube_object__WEBPACK_IMPORTED_MODULE_0__[\"WorkloadKubeObject\"] {\n constructor(data) {\n super(data);\n Object(_utils__WEBPACK_IMPORTED_MODULE_1__[\"autoBind\"])(this);\n }\n getReplicas() {\n return this.spec.replicas || 0;\n }\n getImages() {\n var _a, _b, _c;\n const containers = (_c = (_b = (_a = this.spec.template) === null || _a === void 0 ? void 0 : _a.spec) === null || _b === void 0 ? void 0 : _b.containers) !== null && _c !== void 0 ? _c : [];\n return containers.map(container => container.image);\n }\n}\nObject.defineProperty(StatefulSet, \"kind\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"StatefulSet\"\n});\nObject.defineProperty(StatefulSet, \"namespaced\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: true\n});\nObject.defineProperty(StatefulSet, \"apiBase\", {\n enumerable: true,\n configurable: true,\n writable: true,\n value: \"/apis/apps/v1/statefulsets\"\n});\nlet statefulSetApi;\nif (Object(_utils_cluster_id_url_parsing__WEBPACK_IMPORTED_MODULE_4__[\"isClusterPageContext\"])()) {\n statefulSetApi = new StatefulSetApi({\n objectConstructor: StatefulSet,\n });\n}\n\n\n\n//# sourceURL=webpack:///./src/common/k8s-api/endpoints/stateful-set.api.ts?");
|
|
39054
39054
|
|
|
39055
39055
|
/***/ }),
|
|
39056
39056
|
|
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.3.1-git.
|
|
5
|
+
"version": "5.3.1-git.406f595011.0",
|
|
6
6
|
"copyright": "© 2021 OpenLens Authors",
|
|
7
7
|
"license": "MIT",
|
|
8
8
|
"main": "dist/src/extensions/extension-api.js",
|