mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
Compare commits
182 Commits
v6.5.0-alp
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f1a960fd78 | ||
|
|
452042f5c5 | ||
|
|
de5fc19240 | ||
|
|
6e8e58eaf9 | ||
|
|
4ab97d2372 | ||
|
|
323b3759fc | ||
|
|
2547b19245 | ||
|
|
8b69c12ed4 | ||
|
|
f602ce8f46 | ||
|
|
7274cdde50 | ||
|
|
34ca6509b8 | ||
|
|
21914db35b | ||
|
|
e7f32bce30 | ||
|
|
d144558c6d | ||
|
|
a546ae1000 | ||
|
|
84017b48db | ||
|
|
0dd833c00b | ||
|
|
eee567b7f2 | ||
|
|
2efa801838 | ||
|
|
48a5e3c3be | ||
|
|
683ac4efcc | ||
|
|
58e4ebcdea | ||
|
|
86fa93ac8b | ||
|
|
847f2b1b7b | ||
|
|
fe77164311 | ||
|
|
9a2d585e62 | ||
|
|
28c9eeec36 | ||
|
|
0c2cc25b5b | ||
|
|
0c1e822788 | ||
|
|
34adfcd20b | ||
|
|
5511a2f461 | ||
|
|
f6cc1b00c2 | ||
|
|
b3990b535e | ||
|
|
a0e38b2178 | ||
|
|
b1a988e133 | ||
|
|
66a7615e9c | ||
|
|
e641509e3d | ||
|
|
147be22db3 | ||
|
|
bedd7a25bb | ||
|
|
49db31a9aa | ||
|
|
1ff2436240 | ||
|
|
54b6375a7e | ||
|
|
eb78edb226 | ||
|
|
d37a765ac2 | ||
|
|
27a14714c3 | ||
|
|
27aaa3623d | ||
|
|
7924ab5504 | ||
|
|
04273dcda2 | ||
|
|
500ac15703 | ||
|
|
d28da8e7ac | ||
|
|
da1d35d1de | ||
|
|
ea1f85f224 | ||
|
|
9e751938bd | ||
|
|
8ebe99ae54 | ||
|
|
3715a47067 | ||
|
|
41798b718a | ||
|
|
7a4f30ab61 | ||
|
|
f02e09245b | ||
|
|
9f13931318 | ||
|
|
5432259e05 | ||
|
|
8fd0b5fab4 | ||
|
|
711ad11bf1 | ||
|
|
75beacfa7c | ||
|
|
b7a636dd74 | ||
|
|
d674680cbb | ||
|
|
0298b36a9f | ||
|
|
7b8bd1e758 | ||
|
|
e8be89eb51 | ||
|
|
1ab5323f68 | ||
|
|
a22229ba60 | ||
|
|
26b8ed66da | ||
|
|
79e4eaa394 | ||
|
|
f9098bf639 | ||
|
|
1ffdb6c89f | ||
|
|
4b63bc238e | ||
|
|
208262a447 | ||
|
|
6520f2d767 | ||
|
|
e493f982d2 | ||
|
|
4e6b51e2ef | ||
|
|
e7b030e2cd | ||
|
|
723e8452cf | ||
|
|
74cf677b1b | ||
|
|
18b89d9a85 | ||
|
|
90c449cc0d | ||
|
|
738985c9b7 | ||
|
|
dd62e034b7 | ||
|
|
597dd36580 | ||
|
|
a8cf8e11f7 | ||
|
|
bffa39c5ba | ||
|
|
dbbb41eca7 | ||
|
|
99b6af7246 | ||
|
|
6bf1544ddb | ||
|
|
84f6a6a5ac | ||
|
|
ac0e384154 | ||
|
|
8f4aa497cc | ||
|
|
cb0e8764ac | ||
|
|
93bc41f9a3 | ||
|
|
9276df0592 | ||
|
|
d90bdf6f14 | ||
|
|
813705fe90 | ||
|
|
be1fbcf8c3 | ||
|
|
753c8bfa85 | ||
|
|
d4c12becfc | ||
|
|
5608a199be | ||
|
|
96b7ecbadd | ||
|
|
1b43de50fe | ||
|
|
1099e65c52 | ||
|
|
7d46cb845d | ||
|
|
fda4b928d2 | ||
|
|
40f1180579 | ||
|
|
d3cf7088d6 | ||
|
|
5f4cdbc519 | ||
|
|
8960142342 | ||
|
|
ec9a68bf09 | ||
|
|
015a585a84 | ||
|
|
e0e2194b11 | ||
|
|
5ba2dbab81 | ||
|
|
f65e5672b5 | ||
|
|
723cfe8ae8 | ||
|
|
897e289514 | ||
|
|
a8ff6ce095 | ||
|
|
58426370de | ||
|
|
6d4d331a41 | ||
|
|
86dcbb10c0 | ||
|
|
d51ccb5dd5 | ||
|
|
a267c0ee7d | ||
|
|
d2183cb975 | ||
|
|
83244ceefc | ||
|
|
747f8cec94 | ||
|
|
e6bef1a168 | ||
|
|
81293304a7 | ||
|
|
72a1e2aaa0 | ||
|
|
8ac66380ad | ||
|
|
add1a0a39e | ||
|
|
99e6b77fc1 | ||
|
|
a20a1eade1 | ||
|
|
00f0b9fce4 | ||
|
|
32a6179681 | ||
|
|
2dfb5c00f7 | ||
|
|
fc641b3838 | ||
|
|
1b5145bac3 | ||
|
|
62a76d05ab | ||
|
|
f9e5f9bf43 | ||
|
|
2e4aba735f | ||
|
|
f7b77c781d | ||
|
|
7c1c7d45e8 | ||
|
|
618a1c7004 | ||
|
|
a9f48ee93a | ||
|
|
33a9f3ea35 | ||
|
|
14653c84e6 | ||
|
|
4f8e4707f9 | ||
|
|
4a7eff1841 | ||
|
|
6fc01284d3 | ||
|
|
f2247adfdb | ||
|
|
1a817d314c | ||
|
|
978015510a | ||
|
|
2ca77ecfe8 | ||
|
|
9ab8cf7bef | ||
|
|
c76b30cf4a | ||
|
|
05784f5dfe | ||
|
|
7b57f0d52d | ||
|
|
58263497ae | ||
|
|
d8823085a8 | ||
|
|
e88de58b5d | ||
|
|
adb288e48a | ||
|
|
15b942aa39 | ||
|
|
9d51ef2aa6 | ||
|
|
f13a145a27 | ||
|
|
5dd49c1c3c | ||
|
|
266ee3917d | ||
|
|
f7755828bf | ||
|
|
0c7a0b3787 | ||
|
|
3714fb24c1 | ||
|
|
cc94b69860 | ||
|
|
8445d6eabc | ||
|
|
4933b2a402 | ||
|
|
c3bc1ff0d9 | ||
|
|
5bc3f604d8 | ||
|
|
7b28cf89f7 | ||
|
|
9fc07ab56c | ||
|
|
4dcdd9152c | ||
|
|
138f9d14ff |
2
.github/workflows/check-docs.yml
vendored
2
.github/workflows/check-docs.yml
vendored
@ -23,7 +23,7 @@ jobs:
|
|||||||
node-version: ${{ matrix.node-version }}
|
node-version: ${{ matrix.node-version }}
|
||||||
|
|
||||||
- name: Install specific npm version
|
- name: Install specific npm version
|
||||||
run: npm install -g npm@9.6.5
|
run: npm install -g npm@^9.6.7
|
||||||
|
|
||||||
- name: Generate Extensions API Reference using typedocs
|
- name: Generate Extensions API Reference using typedocs
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
2
.github/workflows/cron-test.yaml
vendored
2
.github/workflows/cron-test.yaml
vendored
@ -28,7 +28,7 @@ jobs:
|
|||||||
node-version: ${{ matrix.node-version }}
|
node-version: ${{ matrix.node-version }}
|
||||||
|
|
||||||
- name: Install specific npm version
|
- name: Install specific npm version
|
||||||
run: npm install -g npm@9.6.5
|
run: npm install -g npm@^9.6.7
|
||||||
|
|
||||||
- name: Get npm cache directory path
|
- name: Get npm cache directory path
|
||||||
if: ${{ runner.os != 'Windows' }}
|
if: ${{ runner.os != 'Windows' }}
|
||||||
|
|||||||
2
.github/workflows/daily-alpha.yml
vendored
2
.github/workflows/daily-alpha.yml
vendored
@ -19,7 +19,7 @@ jobs:
|
|||||||
registry-url: "https://npm.pkg.github.com"
|
registry-url: "https://npm.pkg.github.com"
|
||||||
|
|
||||||
- name: Install specific npm version
|
- name: Install specific npm version
|
||||||
run: npm install -g npm@9.6.5
|
run: npm install -g npm@^9.6.7
|
||||||
|
|
||||||
- name: Install deps
|
- name: Install deps
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
5
.github/workflows/linter.yml
vendored
5
.github/workflows/linter.yml
vendored
@ -23,7 +23,7 @@ jobs:
|
|||||||
node-version: ${{ matrix.node-version }}
|
node-version: ${{ matrix.node-version }}
|
||||||
|
|
||||||
- name: Install specific npm version
|
- name: Install specific npm version
|
||||||
run: npm install -g npm@9.6.5
|
run: npm install -g npm@^9.6.7
|
||||||
|
|
||||||
- name: Install deps
|
- name: Install deps
|
||||||
run: npm install
|
run: npm install
|
||||||
@ -33,3 +33,6 @@ jobs:
|
|||||||
|
|
||||||
- name: Verify Publish Configurations
|
- name: Verify Publish Configurations
|
||||||
run: ./scripts/lint-publish-configs.sh
|
run: ./scripts/lint-publish-configs.sh
|
||||||
|
|
||||||
|
- name: Verify No Duplicate Dependencies
|
||||||
|
run: ./scripts/lint-package-dependencies.sh
|
||||||
|
|||||||
2
.github/workflows/mkdocs-manual.yml
vendored
2
.github/workflows/mkdocs-manual.yml
vendored
@ -36,7 +36,7 @@ jobs:
|
|||||||
node-version: ${{ matrix.node-version }}
|
node-version: ${{ matrix.node-version }}
|
||||||
|
|
||||||
- name: Install specific npm version
|
- name: Install specific npm version
|
||||||
run: npm install -g npm@9.6.5
|
run: npm install -g npm@^9.6.7
|
||||||
|
|
||||||
- name: Generate Extensions API Reference using typedocs
|
- name: Generate Extensions API Reference using typedocs
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
4
.github/workflows/publish-docs.yml
vendored
4
.github/workflows/publish-docs.yml
vendored
@ -33,7 +33,7 @@ jobs:
|
|||||||
node-version: ${{ matrix.node-version }}
|
node-version: ${{ matrix.node-version }}
|
||||||
|
|
||||||
- name: Install specific npm version
|
- name: Install specific npm version
|
||||||
run: npm install -g npm@9.6.5
|
run: npm install -g npm@^9.6.7
|
||||||
|
|
||||||
- name: Generate Extensions API Reference using typedocs
|
- name: Generate Extensions API Reference using typedocs
|
||||||
run: |
|
run: |
|
||||||
@ -79,7 +79,7 @@ jobs:
|
|||||||
node-version: ${{ matrix.node-version }}
|
node-version: ${{ matrix.node-version }}
|
||||||
|
|
||||||
- name: Install specific npm version
|
- name: Install specific npm version
|
||||||
run: npm install -g npm@9.6.5
|
run: npm install -g npm@^9.6.7
|
||||||
|
|
||||||
- name: Generate Extensions API Reference using typedocs
|
- name: Generate Extensions API Reference using typedocs
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
2
.github/workflows/publish-release-npm.yml
vendored
2
.github/workflows/publish-release-npm.yml
vendored
@ -31,7 +31,7 @@ jobs:
|
|||||||
node-version: ${{ matrix.node-version }}
|
node-version: ${{ matrix.node-version }}
|
||||||
|
|
||||||
- name: Install specific npm version
|
- name: Install specific npm version
|
||||||
run: npm install -g npm@9.6.5
|
run: npm install -g npm@^9.6.7
|
||||||
|
|
||||||
- name: Generate NPM packages
|
- name: Generate NPM packages
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
4
.github/workflows/test.yml
vendored
4
.github/workflows/test.yml
vendored
@ -35,7 +35,7 @@ jobs:
|
|||||||
node-version: ${{ matrix.node-version }}
|
node-version: ${{ matrix.node-version }}
|
||||||
|
|
||||||
- name: Install specific npm version
|
- name: Install specific npm version
|
||||||
run: npm install -g npm@9.6.5
|
run: npm install -g npm@^9.6.7
|
||||||
|
|
||||||
- name: Get npm cache directory path
|
- name: Get npm cache directory path
|
||||||
if: ${{ runner.os != 'Windows' }}
|
if: ${{ runner.os != 'Windows' }}
|
||||||
@ -105,7 +105,7 @@ jobs:
|
|||||||
node-version: ${{ matrix.node-version }}
|
node-version: ${{ matrix.node-version }}
|
||||||
|
|
||||||
- name: Install specific npm version
|
- name: Install specific npm version
|
||||||
run: npm install -g npm@9.6.5
|
run: npm install -g npm@^9.6.7
|
||||||
|
|
||||||
- name: Get npm cache directory path
|
- name: Get npm cache directory path
|
||||||
if: ${{ runner.os != 'Windows' }}
|
if: ${{ runner.os != 'Windows' }}
|
||||||
|
|||||||
3
.gitignore
vendored
3
.gitignore
vendored
@ -9,3 +9,6 @@ lerna-debug.log
|
|||||||
coverage
|
coverage
|
||||||
dist
|
dist
|
||||||
node_modules
|
node_modules
|
||||||
|
.linkable.json
|
||||||
|
yalc.lock
|
||||||
|
.yalc
|
||||||
|
|||||||
@ -1,3 +1,7 @@
|
|||||||
|
open-lens/dist
|
||||||
|
open-lens/static/build
|
||||||
|
open-lens/static/webpack
|
||||||
|
open-lens/binaries
|
||||||
packages/**/dist
|
packages/**/dist
|
||||||
packages/**/static/build
|
packages/**/static/build
|
||||||
packages/**/build/webpack
|
packages/**/build/webpack
|
||||||
|
|||||||
@ -1,3 +1,3 @@
|
|||||||
# Contributing to Lens
|
# Contributing to Lens
|
||||||
|
|
||||||
See [Contributing to Lens](https://docs.k8slens.dev/contributing/) documentation.
|
See [Contributing to Lens](https://docs.k8slens.dev/contributing/contribute-to-lens/) documentation.
|
||||||
|
|||||||
19
nx.json
19
nx.json
@ -15,24 +15,29 @@
|
|||||||
"^build"
|
"^build"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
"build:app": {
|
||||||
|
"dependsOn": [
|
||||||
|
"^build"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"test:integration": {
|
||||||
|
"dependsOn": [
|
||||||
|
"^build"
|
||||||
|
]
|
||||||
|
},
|
||||||
"build:docs": {
|
"build:docs": {
|
||||||
"dependsOn": [
|
"dependsOn": [
|
||||||
"^build"
|
"^build"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"dev": {
|
|
||||||
"dependsOn": [
|
|
||||||
"prepare:dev"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"lint": {
|
"lint": {
|
||||||
"dependsOn": [
|
"dependsOn": [
|
||||||
"^prepare:test"
|
"^build"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"test:unit": {
|
"test:unit": {
|
||||||
"dependsOn": [
|
"dependsOn": [
|
||||||
"^prepare:test"
|
"^build"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,6 +3,227 @@
|
|||||||
All notable changes to this project will be documented in this file.
|
All notable changes to this project will be documented in this file.
|
||||||
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
||||||
|
|
||||||
|
# 6.5.0 (2023-05-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.16 (2023-05-25)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Make application size not blow up by consolidating dependencies in core package to peerDependencies ([738985c](https://github.com/lensapp/lens/commit/738985c9b7406ef0722c3994c560f0337e3c5b7c))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.15 (2023-05-23)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.14 (2023-05-23)
|
||||||
|
|
||||||
|
|
||||||
|
### Reverts
|
||||||
|
|
||||||
|
* Revert "chore: Extract sidebar item injection token into separate package" ([8f4aa49](https://github.com/lensapp/lens/commit/8f4aa497cc54655f83813d57c224f77dd1472141))
|
||||||
|
* Revert "chore: Update integration tests to new testid format" ([be1fbcf](https://github.com/lensapp/lens/commit/be1fbcf8c3642fbf5a5ee06c3b03ac1756e4b1dd))
|
||||||
|
* Revert "chore: Improve title formatting for Horizontal/Vertical Pod Autoscalers" ([d4c12be](https://github.com/lensapp/lens/commit/d4c12becfc9020009d64f48e4c8f9dd3b7725bb6))
|
||||||
|
* Revert "chore: Fix integration tests failing due to helm testid's changing" ([96b7ecb](https://github.com/lensapp/lens/commit/96b7ecbaddedd45cc667cc2d6c25fdc0813557ec))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.13 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Copy fonts from @k8slens/core to open-lens correctly ([33a9f3e](https://github.com/lensapp/lens/commit/33a9f3ea3501c04738c8d74b82725bbe83e148bb))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.12 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.11 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Add missing styles to fix terminal resizing ([6902851](https://github.com/lensapp/lens/commit/6902851026e74428f515fc5f3e01e6dc8a4c2d50))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.17 (2023-05-25)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Make application size not blow up by consolidating dependencies in core package to peerDependencies ([738985c](https://github.com/lensapp/lens/commit/738985c9b7406ef0722c3994c560f0337e3c5b7c))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.15 (2023-05-23)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.14 (2023-05-23)
|
||||||
|
|
||||||
|
|
||||||
|
### Reverts
|
||||||
|
|
||||||
|
* Revert "chore: Extract sidebar item injection token into separate package" ([8f4aa49](https://github.com/lensapp/lens/commit/8f4aa497cc54655f83813d57c224f77dd1472141))
|
||||||
|
* Revert "chore: Update integration tests to new testid format" ([be1fbcf](https://github.com/lensapp/lens/commit/be1fbcf8c3642fbf5a5ee06c3b03ac1756e4b1dd))
|
||||||
|
* Revert "chore: Improve title formatting for Horizontal/Vertical Pod Autoscalers" ([d4c12be](https://github.com/lensapp/lens/commit/d4c12becfc9020009d64f48e4c8f9dd3b7725bb6))
|
||||||
|
* Revert "chore: Fix integration tests failing due to helm testid's changing" ([96b7ecb](https://github.com/lensapp/lens/commit/96b7ecbaddedd45cc667cc2d6c25fdc0813557ec))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.13 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Copy fonts from @k8slens/core to open-lens correctly ([33a9f3e](https://github.com/lensapp/lens/commit/33a9f3ea3501c04738c8d74b82725bbe83e148bb))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.12 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.11 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Add missing styles to fix terminal resizing ([6902851](https://github.com/lensapp/lens/commit/6902851026e74428f515fc5f3e01e6dc8a4c2d50))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.16 (2023-05-23)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.14 (2023-05-23)
|
||||||
|
|
||||||
|
|
||||||
|
### Reverts
|
||||||
|
|
||||||
|
* Revert "chore: Extract sidebar item injection token into separate package" ([8f4aa49](https://github.com/lensapp/lens/commit/8f4aa497cc54655f83813d57c224f77dd1472141))
|
||||||
|
* Revert "chore: Update integration tests to new testid format" ([be1fbcf](https://github.com/lensapp/lens/commit/be1fbcf8c3642fbf5a5ee06c3b03ac1756e4b1dd))
|
||||||
|
* Revert "chore: Improve title formatting for Horizontal/Vertical Pod Autoscalers" ([d4c12be](https://github.com/lensapp/lens/commit/d4c12becfc9020009d64f48e4c8f9dd3b7725bb6))
|
||||||
|
* Revert "chore: Fix integration tests failing due to helm testid's changing" ([96b7ecb](https://github.com/lensapp/lens/commit/96b7ecbaddedd45cc667cc2d6c25fdc0813557ec))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.13 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Copy fonts from @k8slens/core to open-lens correctly ([33a9f3e](https://github.com/lensapp/lens/commit/33a9f3ea3501c04738c8d74b82725bbe83e148bb))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.12 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.11 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Add missing styles to fix terminal resizing ([6902851](https://github.com/lensapp/lens/commit/6902851026e74428f515fc5f3e01e6dc8a4c2d50))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.15 (2023-05-23)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.14 (2023-05-23)
|
||||||
|
|
||||||
|
|
||||||
|
### Reverts
|
||||||
|
|
||||||
|
* Revert "chore: Extract sidebar item injection token into separate package" ([8f4aa49](https://github.com/lensapp/lens/commit/8f4aa497cc54655f83813d57c224f77dd1472141))
|
||||||
|
* Revert "chore: Update integration tests to new testid format" ([be1fbcf](https://github.com/lensapp/lens/commit/be1fbcf8c3642fbf5a5ee06c3b03ac1756e4b1dd))
|
||||||
|
* Revert "chore: Improve title formatting for Horizontal/Vertical Pod Autoscalers" ([d4c12be](https://github.com/lensapp/lens/commit/d4c12becfc9020009d64f48e4c8f9dd3b7725bb6))
|
||||||
|
* Revert "chore: Fix integration tests failing due to helm testid's changing" ([96b7ecb](https://github.com/lensapp/lens/commit/96b7ecbaddedd45cc667cc2d6c25fdc0813557ec))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.13 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Copy fonts from @k8slens/core to open-lens correctly ([33a9f3e](https://github.com/lensapp/lens/commit/33a9f3ea3501c04738c8d74b82725bbe83e148bb))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.12 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.11 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Add missing styles to fix terminal resizing ([6902851](https://github.com/lensapp/lens/commit/6902851026e74428f515fc5f3e01e6dc8a4c2d50))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.13 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Copy fonts from @k8slens/core to open-lens correctly ([33a9f3e](https://github.com/lensapp/lens/commit/33a9f3ea3501c04738c8d74b82725bbe83e148bb))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.12 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.11 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Add missing styles to fix terminal resizing ([6902851](https://github.com/lensapp/lens/commit/6902851026e74428f515fc5f3e01e6dc8a4c2d50))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.12 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.11 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Add missing styles to fix terminal resizing ([6902851](https://github.com/lensapp/lens/commit/6902851026e74428f515fc5f3e01e6dc8a4c2d50))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# 6.5.0-alpha.11 (2023-05-11)
|
# 6.5.0-alpha.11 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
* Copyright (c) OpenLens Authors. All rights reserved.
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
||||||
*/
|
*/
|
||||||
const { notarize } = require("electron-notarize");
|
const { notarize } = require("@electron/notarize");
|
||||||
|
|
||||||
exports.default = async function notarizing(context) {
|
exports.default = async function notarizing(context) {
|
||||||
const { electronPlatformName, appOutDir } = context;
|
const { electronPlatformName, appOutDir } = context;
|
||||||
@ -23,5 +23,7 @@ exports.default = async function notarizing(context) {
|
|||||||
appleId: process.env.APPLEID,
|
appleId: process.env.APPLEID,
|
||||||
appleIdPassword: process.env.APPLEIDPASS,
|
appleIdPassword: process.env.APPLEIDPASS,
|
||||||
ascProvider: process.env.ASCPROVIDER,
|
ascProvider: process.env.ASCPROVIDER,
|
||||||
|
teamId: process.env.APPLETEAMID,
|
||||||
|
tool: process.env.NOTARIZE_TOOL || "legacy",
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|||||||
@ -172,219 +172,219 @@ const scenarios = [
|
|||||||
{
|
{
|
||||||
expectedSelector: "div[data-testid='cluster-overview-page'] div.label",
|
expectedSelector: "div[data-testid='cluster-overview-page'] div.label",
|
||||||
parentSidebarItemTestId: null,
|
parentSidebarItemTestId: null,
|
||||||
sidebarItemTestId: "sidebar-item-link-for-cluster-overview",
|
sidebarItemTestId: "link-for-sidebar-item-cluster-overview",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: null,
|
parentSidebarItemTestId: null,
|
||||||
sidebarItemTestId: "sidebar-item-link-for-nodes",
|
sidebarItemTestId: "link-for-sidebar-item-nodes",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: 'h5 >> text="Overview"',
|
expectedSelector: 'h5 >> text="Overview"',
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-workloads",
|
parentSidebarItemTestId: "link-for-sidebar-item-workloads",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-overview",
|
sidebarItemTestId: "link-for-sidebar-item-workloads-overview",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-workloads",
|
parentSidebarItemTestId: "link-for-sidebar-item-workloads",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-pods",
|
sidebarItemTestId: "link-for-sidebar-item-pods",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-workloads",
|
parentSidebarItemTestId: "link-for-sidebar-item-workloads",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-deployments",
|
sidebarItemTestId: "link-for-sidebar-item-deployments",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-workloads",
|
parentSidebarItemTestId: "link-for-sidebar-item-workloads",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-daemon-sets",
|
sidebarItemTestId: "link-for-sidebar-item-daemon-sets",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-workloads",
|
parentSidebarItemTestId: "link-for-sidebar-item-workloads",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-stateful-sets",
|
sidebarItemTestId: "link-for-sidebar-item-stateful-sets",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-workloads",
|
parentSidebarItemTestId: "link-for-sidebar-item-workloads",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-replica-sets",
|
sidebarItemTestId: "link-for-sidebar-item-replica-sets",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-workloads",
|
parentSidebarItemTestId: "link-for-sidebar-item-workloads",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-jobs",
|
sidebarItemTestId: "link-for-sidebar-item-jobs",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-workloads",
|
parentSidebarItemTestId: "link-for-sidebar-item-workloads",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-cron-jobs",
|
sidebarItemTestId: "link-for-sidebar-item-cron-jobs",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-config",
|
parentSidebarItemTestId: "link-for-sidebar-item-config",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-config-maps",
|
sidebarItemTestId: "link-for-sidebar-item-config-maps",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-config",
|
parentSidebarItemTestId: "link-for-sidebar-item-config",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-secrets",
|
sidebarItemTestId: "link-for-sidebar-item-secrets",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-config",
|
parentSidebarItemTestId: "link-for-sidebar-item-config",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-resource-quotas",
|
sidebarItemTestId: "link-for-sidebar-item-resource-quotas",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-config",
|
parentSidebarItemTestId: "link-for-sidebar-item-config",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-limit-ranges",
|
sidebarItemTestId: "link-for-sidebar-item-limit-ranges",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-config",
|
parentSidebarItemTestId: "link-for-sidebar-item-config",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-horizontal-pod-auto-scalers",
|
sidebarItemTestId: "link-for-sidebar-item-horizontal-pod-autoscalers",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-config",
|
parentSidebarItemTestId: "link-for-sidebar-item-config",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-pod-disruption-budgets",
|
sidebarItemTestId: "link-for-sidebar-item-pod-disruption-budgets",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-network",
|
parentSidebarItemTestId: "link-for-sidebar-item-network",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-services",
|
sidebarItemTestId: "link-for-sidebar-item-services",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-network",
|
parentSidebarItemTestId: "link-for-sidebar-item-network",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-endpoints",
|
sidebarItemTestId: "link-for-sidebar-item-endpoints",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-network",
|
parentSidebarItemTestId: "link-for-sidebar-item-network",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-ingresses",
|
sidebarItemTestId: "link-for-sidebar-item-ingresses",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-network",
|
parentSidebarItemTestId: "link-for-sidebar-item-network",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-network-policies",
|
sidebarItemTestId: "link-for-sidebar-item-network-policies",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-storage",
|
parentSidebarItemTestId: "link-for-sidebar-item-storage",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-persistent-volume-claims",
|
sidebarItemTestId: "link-for-sidebar-item-persistent-volume-claims",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-storage",
|
parentSidebarItemTestId: "link-for-sidebar-item-storage",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-persistent-volumes",
|
sidebarItemTestId: "link-for-sidebar-item-persistent-volumes",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-storage",
|
parentSidebarItemTestId: "link-for-sidebar-item-storage",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-storage-classes",
|
sidebarItemTestId: "link-for-sidebar-item-storage-classes",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: null,
|
parentSidebarItemTestId: null,
|
||||||
sidebarItemTestId: "sidebar-item-link-for-namespaces",
|
sidebarItemTestId: "link-for-sidebar-item-namespaces",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: null,
|
parentSidebarItemTestId: null,
|
||||||
sidebarItemTestId: "sidebar-item-link-for-events",
|
sidebarItemTestId: "link-for-sidebar-item-events",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "div.HelmCharts input",
|
expectedSelector: "div.HelmCharts input",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-helm",
|
parentSidebarItemTestId: "link-for-sidebar-item-helm",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-charts",
|
sidebarItemTestId: "link-for-sidebar-item-helm-charts",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-helm",
|
parentSidebarItemTestId: "link-for-sidebar-item-helm",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-releases",
|
sidebarItemTestId: "link-for-sidebar-item-helm-releases",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-user-management",
|
parentSidebarItemTestId: "link-for-sidebar-item-user-management",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-service-accounts",
|
sidebarItemTestId: "link-for-sidebar-item-service-accounts",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-user-management",
|
parentSidebarItemTestId: "link-for-sidebar-item-user-management",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-cluster-roles",
|
sidebarItemTestId: "link-for-sidebar-item-cluster-roles",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-user-management",
|
parentSidebarItemTestId: "link-for-sidebar-item-user-management",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-roles",
|
sidebarItemTestId: "link-for-sidebar-item-roles",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-user-management",
|
parentSidebarItemTestId: "link-for-sidebar-item-user-management",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-cluster-role-bindings",
|
sidebarItemTestId: "link-for-sidebar-item-cluster-role-bindings",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-user-management",
|
parentSidebarItemTestId: "link-for-sidebar-item-user-management",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-role-bindings",
|
sidebarItemTestId: "link-for-sidebar-item-role-bindings",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: null,
|
parentSidebarItemTestId: null,
|
||||||
sidebarItemTestId: "sidebar-item-link-for-custom-resources",
|
sidebarItemTestId: "link-for-sidebar-item-custom-resources",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-config",
|
parentSidebarItemTestId: "link-for-sidebar-item-config",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-validating-webhook-configurations",
|
sidebarItemTestId: "link-for-sidebar-item-validating-webhook-configurations",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
expectedSelector: "h5.title",
|
expectedSelector: "h5.title",
|
||||||
parentSidebarItemTestId: "sidebar-item-link-for-config",
|
parentSidebarItemTestId: "link-for-sidebar-item-config",
|
||||||
sidebarItemTestId: "sidebar-item-link-for-mutating-webhook-configurations",
|
sidebarItemTestId: "link-for-sidebar-item-mutating-webhook-configurations",
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
const navigateToPods = async (frame: Frame) => {
|
const navigateToPods = async (frame: Frame) => {
|
||||||
await frame.click(`[data-testid="sidebar-item-link-for-workloads"]`);
|
await frame.click(`[data-testid="link-for-sidebar-item-workloads"]`);
|
||||||
await frame.click(`[data-testid="sidebar-item-link-for-pods"]`);
|
await frame.click(`[data-testid="link-for-sidebar-item-pods"]`);
|
||||||
};
|
};
|
||||||
|
|
||||||
const navigateToNamespaces = async (frame: Frame) => {
|
const navigateToNamespaces = async (frame: Frame) => {
|
||||||
await frame.click(`[data-testid="sidebar-item-link-for-namespaces"]`);
|
await frame.click(`[data-testid="link-for-sidebar-item-namespaces"]`);
|
||||||
};
|
};
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
"productName": "OpenLens",
|
"productName": "OpenLens",
|
||||||
"description": "OpenLens - Open Source IDE for Kubernetes",
|
"description": "OpenLens - Open Source IDE for Kubernetes",
|
||||||
"homepage": "https://github.com/lensapp/lens",
|
"homepage": "https://github.com/lensapp/lens",
|
||||||
"version": "6.5.0-alpha.11",
|
"version": "6.5.0",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git+https://github.com/lensapp/lens.git"
|
"url": "git+https://github.com/lensapp/lens.git"
|
||||||
@ -19,28 +19,25 @@
|
|||||||
"author": "OpenLens Authors <info@k8slens.dev>",
|
"author": "OpenLens Authors <info@k8slens.dev>",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"clean": "rimraf binaries/ dist/ static/build",
|
"clean": "rimraf binaries/ dist/ static/build",
|
||||||
"build": "npm run compile",
|
"build": "cross-env NODE_ENV=production webpack --config webpack/webpack.ts --progress",
|
||||||
"postbuild": "npm run build:tray-icons && npm run download:binaries",
|
"postbuild": "npm run build:tray-icons && npm run download:binaries",
|
||||||
"build:app": "electron-builder --publish onTag",
|
"build:app": "electron-builder --publish onTag",
|
||||||
"prebuild:app": "run-script-os",
|
"prebuild:app": "run-script-os",
|
||||||
"prebuild:app:default": "exit 0",
|
"prebuild:app:default": "exit 0",
|
||||||
"prebuild:app:win32": "rimraf node_modules/win-ca/pem",
|
"prebuild:app:win32": "rimraf node_modules/win-ca/pem",
|
||||||
"build:dir": "npm run compile && electron-builder --dir",
|
|
||||||
"compile": "cross-env NODE_ENV=production webpack --config webpack/webpack.ts --progress",
|
|
||||||
"postcompile": "npm run build:tray-icons && npm run download:binaries",
|
|
||||||
"start": "concurrently -i -k \"npm run dev-run -C\" npm:dev:*",
|
"start": "concurrently -i -k \"npm run dev-run -C\" npm:dev:*",
|
||||||
"dev-run": "nodemon --watch ./static/build/main.js --exec \"electron --remote-debugging-port=9223 --inspect .\"",
|
"dev-run": "nodemon --watch ./static/build/main.js --exec \"electron --remote-debugging-port=9223 --inspect .\"",
|
||||||
"dev:main": "cross-env NODE_ENV=development webpack --config webpack/main.ts --progress --watch",
|
"dev:main": "cross-env NODE_ENV=development webpack --config webpack/main.ts --progress --watch",
|
||||||
"dev:renderer": "cross-env NODE_ENV=development ts-node ./webpack/dev-server.ts",
|
"dev:renderer": "cross-env NODE_ENV=development ts-node ./webpack/dev-server.ts",
|
||||||
"test:integration": "jest -xyz --runInBand --modulePaths=[\"<rootDir>/integration/\"];",
|
"test:integration": "jest -xyz --runInBand --modulePaths=[\"<rootDir>/integration/\"];",
|
||||||
"build:tray-icons": "npm run --workspace @k8slens/generate-tray-icons generate -- --output static/build/tray --input @k8slens/core/icons/logo-lens.svg --notice-icon @k8slens/core/icons/notice.svg --spinner-icon @k8slens/core/icons/arrow-spinner.svg",
|
"build:tray-icons": "npm run --workspace @k8slens/generate-tray-icons generate -- --output static/build/tray --input @k8slens/icon/icons/logo-lens.svg --notice-icon @k8slens/icon/icons/notice.svg --spinner-icon @k8slens/icon/icons/arrow-spinner.svg",
|
||||||
"download:binaries": "npm run --workspace @k8slens/ensure-binaries ensure -- --package package.json --base-dir binaries/client",
|
"download:binaries": "npm run --workspace @k8slens/ensure-binaries ensure -- --package package.json --base-dir binaries/client",
|
||||||
"postinstall": "electron-rebuild"
|
"postinstall": "electron-rebuild"
|
||||||
},
|
},
|
||||||
"config": {
|
"config": {
|
||||||
"k8sProxyVersion": "0.3.0",
|
"k8sProxyVersion": "0.3.0",
|
||||||
"bundledKubectlVersion": "1.23.3",
|
"bundledKubectlVersion": "1.23.3",
|
||||||
"bundledHelmVersion": "3.7.2",
|
"bundledHelmVersion": "3.11.0",
|
||||||
"sentryDsn": "",
|
"sentryDsn": "",
|
||||||
"contentSecurityPolicy": "script-src 'unsafe-eval' 'self'; frame-src https://*.lens.app:*/; img-src * data:",
|
"contentSecurityPolicy": "script-src 'unsafe-eval' 'self'; frame-src https://*.lens.app:*/; img-src * data:",
|
||||||
"welcomeRoute": "/welcome"
|
"welcomeRoute": "/welcome"
|
||||||
@ -180,40 +177,132 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@k8slens/application": "^6.5.0-alpha.6",
|
"@astronautlabs/jsonpath": "^1.1.0",
|
||||||
"@k8slens/application-for-electron-main": "^6.5.0-alpha.5",
|
"@hapi/call": "^9.0.1",
|
||||||
"@k8slens/core": "^6.5.0-alpha.11",
|
"@hapi/subtext": "^7.1.0",
|
||||||
"@k8slens/ensure-binaries": "^6.5.0-alpha.5",
|
"@k8slens/application": "^6.5.0",
|
||||||
"@k8slens/event-emitter": "^1.0.0-alpha.3",
|
"@k8slens/application-for-electron-main": "^6.5.0",
|
||||||
"@k8slens/feature-core": "^6.5.0-alpha.5",
|
"@k8slens/button": "^1.0.0",
|
||||||
"@k8slens/keyboard-shortcuts": "^1.0.0-alpha.5",
|
"@k8slens/cluster-settings": "^6.5.0",
|
||||||
"@k8slens/kube-object": "^1.0.0-alpha.3",
|
"@k8slens/cluster-sidebar": "^1.0.0",
|
||||||
"@k8slens/kubectl-versions": "^1.0.0-alpha.4",
|
"@k8slens/core": "^6.5.0",
|
||||||
"@k8slens/legacy-extension-example": "^1.0.0-alpha.9",
|
"@k8slens/ensure-binaries": "^6.5.0",
|
||||||
"@k8slens/legacy-extensions": "^1.0.0-alpha.5",
|
"@k8slens/error-boundary": "^1.0.0",
|
||||||
"@k8slens/legacy-global-di": "^1.0.0-alpha.2",
|
"@k8slens/event-emitter": "^1.0.0",
|
||||||
"@k8slens/logger": "^1.0.0-alpha.6",
|
"@k8slens/feature-core": "^6.5.0",
|
||||||
"@k8slens/messaging": "^1.0.0-alpha.5",
|
"@k8slens/json-api": "^1.0.0-alpha.3",
|
||||||
"@k8slens/messaging-for-main": "^1.0.0-alpha.5",
|
"@k8slens/keyboard-shortcuts": "^1.0.0",
|
||||||
"@k8slens/messaging-for-renderer": "^1.0.0-alpha.5",
|
"@k8slens/kube-api": "^1.0.0-alpha.1",
|
||||||
"@k8slens/node-fetch": "^6.5.0-alpha.3",
|
"@k8slens/kube-api-specifics": "^1.0.0",
|
||||||
"@k8slens/react-application": "^1.0.0-alpha.4",
|
"@k8slens/kube-object": "^1.0.0",
|
||||||
"@k8slens/resizing-anchor": "^1.0.0-alpha.7",
|
"@k8slens/kubectl-versions": "^1.0.0",
|
||||||
"@k8slens/run-many": "^1.0.0-alpha.5",
|
"@k8slens/legacy-extension-example": "^1.0.0",
|
||||||
"@k8slens/startable-stoppable": "^1.0.0-alpha.4",
|
"@k8slens/legacy-extensions": "^1.0.0",
|
||||||
"@k8slens/utilities": "^1.0.0-alpha.4",
|
"@k8slens/legacy-global-di": "^1.0.0",
|
||||||
"@ogre-tools/fp": "^15.8.1",
|
"@k8slens/list-layout": "^1.0.0",
|
||||||
"@ogre-tools/injectable": "^15.8.1",
|
"@k8slens/logger": "^1.0.0",
|
||||||
"@ogre-tools/injectable-extension-for-auto-registration": "^15.8.1",
|
"@k8slens/messaging": "^1.0.0",
|
||||||
"@ogre-tools/injectable-extension-for-mobx": "^15.8.1",
|
"@k8slens/messaging-for-main": "^1.0.0",
|
||||||
"@ogre-tools/injectable-react": "^15.8.1",
|
"@k8slens/messaging-for-renderer": "^1.0.0",
|
||||||
"mobx": "^6.8.0",
|
"@k8slens/metrics": "^6.5.0",
|
||||||
"rimraf": "^4.4.1"
|
"@k8slens/node-fetch": "^6.5.0",
|
||||||
|
"@k8slens/prometheus": "^1.0.0",
|
||||||
|
"@k8slens/random": "^1.0.0",
|
||||||
|
"@k8slens/react-application": "^1.0.0",
|
||||||
|
"@k8slens/resizing-anchor": "^1.0.0",
|
||||||
|
"@k8slens/resource-templates": "^1.0.0",
|
||||||
|
"@k8slens/routing": "^1.0.0",
|
||||||
|
"@k8slens/run-many": "^1.0.0",
|
||||||
|
"@k8slens/startable-stoppable": "^1.0.0",
|
||||||
|
"@k8slens/tooltip": "^1.0.0",
|
||||||
|
"@k8slens/utilities": "^1.0.0",
|
||||||
|
"@kubernetes/client-node": "^0.18.1",
|
||||||
|
"@material-ui/core": "^4.12.3",
|
||||||
|
"@material-ui/lab": "^4.0.0-alpha.60",
|
||||||
|
"@ogre-tools/fp": "^17.2.0",
|
||||||
|
"@ogre-tools/injectable": "^17.2.0",
|
||||||
|
"@ogre-tools/injectable-extension-for-auto-registration": "^17.2.0",
|
||||||
|
"@ogre-tools/injectable-extension-for-mobx": "^17.2.0",
|
||||||
|
"@ogre-tools/injectable-react": "^17.2.0",
|
||||||
|
"@sentry/electron": "^3.0.8",
|
||||||
|
"@sentry/integrations": "^6.19.3",
|
||||||
|
"ansi_up": "^5.2.1",
|
||||||
|
"auto-bind": "^4.0.0",
|
||||||
|
"await-lock": "^2.2.2",
|
||||||
|
"byline": "^5.0.0",
|
||||||
|
"chalk": "^4.1.2",
|
||||||
|
"chart.js": "^2.9.4",
|
||||||
|
"chokidar": "^3.5.3",
|
||||||
|
"color": "^3.2.1",
|
||||||
|
"conf": "^10.2.0",
|
||||||
|
"crypto-js": "^4.1.1",
|
||||||
|
"dompurify": "^2.4.4",
|
||||||
|
"electron-devtools-installer": "^3.2.0",
|
||||||
|
"electron-updater": "^4.6.5",
|
||||||
|
"electron-window-state": "^5.0.3",
|
||||||
|
"fs-extra": "^9.0.1",
|
||||||
|
"glob-to-regexp": "^0.4.1",
|
||||||
|
"grapheme-splitter": "^1.0.4",
|
||||||
|
"handlebars": "^4.7.7",
|
||||||
|
"history": "^4.10.1",
|
||||||
|
"hpagent": "^1.2.0",
|
||||||
|
"http-proxy": "^1.18.1",
|
||||||
|
"immer": "^9.0.21",
|
||||||
|
"joi": "^17.9.1",
|
||||||
|
"js-yaml": "^4.1.0",
|
||||||
|
"lodash": "^4.17.15",
|
||||||
|
"marked": "^4.2.12",
|
||||||
|
"mobx": "^6.9.0",
|
||||||
|
"mobx-observable-history": "^2.0.3",
|
||||||
|
"mobx-react": "^7.6.0",
|
||||||
|
"mobx-utils": "^6.0.4",
|
||||||
|
"moment": "^2.29.4",
|
||||||
|
"moment-timezone": "^0.5.40",
|
||||||
|
"monaco-editor": "^0.38.0",
|
||||||
|
"node-pty": "0.10.1",
|
||||||
|
"npm": "^9.6.7",
|
||||||
|
"p-limit": "^3.1.0",
|
||||||
|
"path-to-regexp": "^6.2.0",
|
||||||
|
"proper-lockfile": "^4.1.2",
|
||||||
|
"query-string": "^7.1.3",
|
||||||
|
"randomcolor": "^0.6.2",
|
||||||
|
"react": "^17.0.2",
|
||||||
|
"react-beautiful-dnd": "^13.1.1",
|
||||||
|
"react-dom": "^17.0.2",
|
||||||
|
"react-material-ui-carousel": "^2.3.11",
|
||||||
|
"react-router": "^5.3.4",
|
||||||
|
"react-router-dom": "^5.3.4",
|
||||||
|
"react-select": "^5.7.0",
|
||||||
|
"react-select-event": "^5.5.1",
|
||||||
|
"react-table": "^7.8.0",
|
||||||
|
"react-virtualized-auto-sizer": "^1.0.7",
|
||||||
|
"react-window": "^1.8.8",
|
||||||
|
"readable-stream": "^3.6.2",
|
||||||
|
"rfc6902": "^5.0.1",
|
||||||
|
"selfsigned": "^2.1.1",
|
||||||
|
"semver": "^7.3.8",
|
||||||
|
"stoppable": "^1.1.0",
|
||||||
|
"tar": "^6.1.13",
|
||||||
|
"tcp-port-used": "^1.0.2",
|
||||||
|
"tempy": "1.0.1",
|
||||||
|
"type-fest": "^2.14.0",
|
||||||
|
"typed-emitter": "^1.4.0",
|
||||||
|
"typed-regex": "^0.0.8",
|
||||||
|
"url-parse": "^1.5.10",
|
||||||
|
"uuid": "^8.3.2",
|
||||||
|
"win-ca": "^3.5.0",
|
||||||
|
"winston": "^3.8.2",
|
||||||
|
"winston-transport-browserconsole": "^1.0.5",
|
||||||
|
"ws": "^8.12.1",
|
||||||
|
"xterm": "^4.19.0",
|
||||||
|
"xterm-addon-fit": "^0.5.0",
|
||||||
|
"xterm-link-provider": "^1.3.1"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
"@electron/notarize": "^1.2.3",
|
||||||
"@electron/rebuild": "^3.2.10",
|
"@electron/rebuild": "^3.2.10",
|
||||||
"@k8slens/generate-tray-icons": "^6.5.0-alpha.6",
|
"@k8slens/generate-tray-icons": "^6.5.0",
|
||||||
"@k8slens/test-utils": "^1.0.0-alpha.5",
|
"@k8slens/test-utils": "^1.0.0",
|
||||||
"@pmmmwh/react-refresh-webpack-plugin": "^0.5.10",
|
"@pmmmwh/react-refresh-webpack-plugin": "^0.5.10",
|
||||||
"@swc/cli": "^0.1.62",
|
"@swc/cli": "^0.1.62",
|
||||||
"@swc/core": "^1.3.53",
|
"@swc/core": "^1.3.53",
|
||||||
@ -235,18 +324,15 @@
|
|||||||
"@types/url-parse": "^1.4.8",
|
"@types/url-parse": "^1.4.8",
|
||||||
"@types/uuid": "^8.3.4",
|
"@types/uuid": "^8.3.4",
|
||||||
"@types/webpack": "^5.28.1",
|
"@types/webpack": "^5.28.1",
|
||||||
"@types/webpack-dev-server": "^4.7.2",
|
|
||||||
"@types/webpack-env": "^1.18.0",
|
"@types/webpack-env": "^1.18.0",
|
||||||
"@types/webpack-node-externals": "2.5.3",
|
"@types/webpack-node-externals": "2.5.3",
|
||||||
"autoprefixer": "^10.4.13",
|
|
||||||
"circular-dependency-plugin": "^5.2.2",
|
"circular-dependency-plugin": "^5.2.2",
|
||||||
"concurrently": "^7.6.0",
|
"concurrently": "^7.6.0",
|
||||||
"copy-webpack-plugin": "^11.0.0",
|
"copy-webpack-plugin": "^11.0.0",
|
||||||
"cross-env": "^7.0.3",
|
"cross-env": "^7.0.3",
|
||||||
"css-loader": "^6.7.2",
|
"css-loader": "^6.7.2",
|
||||||
"electron": "^22.3.7",
|
"electron": "^22.3.10",
|
||||||
"electron-builder": "^23.6.0",
|
"electron-builder": "^23.6.0",
|
||||||
"electron-notarize": "^0.3.0",
|
|
||||||
"esbuild-loader": "^2.20.0",
|
"esbuild-loader": "^2.20.0",
|
||||||
"fork-ts-checker-webpack-plugin": "^7.3.0",
|
"fork-ts-checker-webpack-plugin": "^7.3.0",
|
||||||
"html-webpack-plugin": "^5.5.1",
|
"html-webpack-plugin": "^5.5.1",
|
||||||
@ -254,28 +340,21 @@
|
|||||||
"jest-environment-jsdom": "^28.1.3",
|
"jest-environment-jsdom": "^28.1.3",
|
||||||
"jsonfile": "^6.1.0",
|
"jsonfile": "^6.1.0",
|
||||||
"mini-css-extract-plugin": "^2.7.1",
|
"mini-css-extract-plugin": "^2.7.1",
|
||||||
"monaco-editor": "^0.37.1",
|
|
||||||
"monaco-editor-webpack-plugin": "^7.0.1",
|
"monaco-editor-webpack-plugin": "^7.0.1",
|
||||||
"node-loader": "^2.0.0",
|
"node-loader": "^2.0.0",
|
||||||
"nodemon": "^2.0.20",
|
"nodemon": "^2.0.20",
|
||||||
"playwright": "^1.33.0",
|
"playwright": "^1.33.0",
|
||||||
"react-refresh": "^0.14.0",
|
|
||||||
"react-refresh-typescript": "^2.0.7",
|
|
||||||
"react-select": "^5.7.0",
|
|
||||||
"rimraf": "^4.4.1",
|
"rimraf": "^4.4.1",
|
||||||
"run-script-os": "^1.1.6",
|
"run-script-os": "^1.1.6",
|
||||||
"style-loader": "^3.3.1",
|
"style-loader": "^3.3.1",
|
||||||
"tailwindcss": "^3.3.2",
|
"tailwindcss": "^3.3.2",
|
||||||
"ts-loader": "^9.4.2",
|
"ts-loader": "^9.4.2",
|
||||||
"ts-node": "^10.9.1",
|
"ts-node": "^10.9.1",
|
||||||
"type-fest": "^2.14.0",
|
|
||||||
"typed-emitter": "^1.4.0",
|
|
||||||
"typescript": "^4.9.5",
|
"typescript": "^4.9.5",
|
||||||
"typescript-plugin-css-modules": "^4.1.1",
|
"typescript-plugin-css-modules": "^5.0.1",
|
||||||
"webpack": "^5.81.0",
|
"webpack": "^5.81.0",
|
||||||
"webpack-cli": "^4.9.2",
|
"webpack-cli": "^4.9.2",
|
||||||
"webpack-dev-server": "^4.13.3",
|
"webpack-dev-server": "^4.13.3",
|
||||||
"webpack-node-externals": "^3.0.0",
|
"webpack-node-externals": "^3.0.0"
|
||||||
"xterm-addon-fit": "^0.5.0"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -12,6 +12,9 @@ import { applicationFeature, startApplicationInjectionToken } from '@k8slens/app
|
|||||||
import { applicationFeatureForElectronMain } from '@k8slens/application-for-electron-main'
|
import { applicationFeatureForElectronMain } from '@k8slens/application-for-electron-main'
|
||||||
import { messagingFeatureForMain } from "@k8slens/messaging-for-main";
|
import { messagingFeatureForMain } from "@k8slens/messaging-for-main";
|
||||||
import { loggerFeature } from "@k8slens/logger";
|
import { loggerFeature } from "@k8slens/logger";
|
||||||
|
import { randomFeature } from "@k8slens/random";
|
||||||
|
import { kubeApiSpecificsFeature } from "@k8slens/kube-api-specifics";
|
||||||
|
import { prometheusFeature } from "@k8slens/prometheus";
|
||||||
|
|
||||||
const environment = "main";
|
const environment = "main";
|
||||||
|
|
||||||
@ -24,14 +27,15 @@ registerMobX(di);
|
|||||||
runInAction(() => {
|
runInAction(() => {
|
||||||
registerLensCore(di, environment);
|
registerLensCore(di, environment);
|
||||||
|
|
||||||
registerFeature(di,
|
registerFeature(
|
||||||
|
di,
|
||||||
loggerFeature,
|
loggerFeature,
|
||||||
);
|
prometheusFeature,
|
||||||
|
|
||||||
registerFeature(di,
|
|
||||||
applicationFeature,
|
applicationFeature,
|
||||||
applicationFeatureForElectronMain,
|
applicationFeatureForElectronMain,
|
||||||
messagingFeatureForMain,
|
messagingFeatureForMain,
|
||||||
|
randomFeature,
|
||||||
|
kubeApiSpecificsFeature,
|
||||||
);
|
);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|||||||
@ -1,15 +1,19 @@
|
|||||||
import "@k8slens/core/styles";
|
import "@k8slens/core/styles";
|
||||||
import "@k8slens/button/dist/index.css";
|
import "@k8slens/button/styles";
|
||||||
import "@k8slens/error-boundary/dist/index.css";
|
import "@k8slens/error-boundary/styles";
|
||||||
import "@k8slens/tooltip/dist/index.css";
|
import "@k8slens/tooltip/styles";
|
||||||
import "@k8slens/resizing-anchor/dist/index.css";
|
import "@k8slens/resizing-anchor/styles";
|
||||||
|
import "@k8slens/icon/styles";
|
||||||
|
import "@k8slens/animate/styles";
|
||||||
|
import "@k8slens/notifications/styles";
|
||||||
|
import "@k8slens/spinner/styles";
|
||||||
|
|
||||||
import { runInAction } from "mobx";
|
import { runInAction } from "mobx";
|
||||||
import {
|
import {
|
||||||
rendererExtensionApi as Renderer,
|
rendererExtensionApi as Renderer,
|
||||||
commonExtensionApi as Common,
|
commonExtensionApi as Common,
|
||||||
registerLensCore,
|
registerLensCore,
|
||||||
metricsFeature
|
metricsFeature,
|
||||||
} from "@k8slens/core/renderer";
|
} from "@k8slens/core/renderer";
|
||||||
import { autoRegister } from "@ogre-tools/injectable-extension-for-auto-registration";
|
import { autoRegister } from "@ogre-tools/injectable-extension-for-auto-registration";
|
||||||
import { registerFeature } from "@k8slens/feature-core";
|
import { registerFeature } from "@k8slens/feature-core";
|
||||||
@ -25,6 +29,11 @@ import { keyboardShortcutsFeature } from "@k8slens/keyboard-shortcuts";
|
|||||||
import { reactApplicationFeature } from "@k8slens/react-application";
|
import { reactApplicationFeature } from "@k8slens/react-application";
|
||||||
import { routingFeature } from "@k8slens/routing";
|
import { routingFeature } from "@k8slens/routing";
|
||||||
import { loggerFeature } from "@k8slens/logger";
|
import { loggerFeature } from "@k8slens/logger";
|
||||||
|
import { animateFeature } from "@k8slens/animate";
|
||||||
|
import { clusterSidebarFeature } from "@k8slens/cluster-sidebar";
|
||||||
|
import { randomFeature } from "@k8slens/random";
|
||||||
|
import { kubeApiSpecificsFeature } from "@k8slens/kube-api-specifics";
|
||||||
|
import { notificationsFeature } from "@k8slens/notifications";
|
||||||
|
|
||||||
const environment = "renderer";
|
const environment = "renderer";
|
||||||
|
|
||||||
@ -49,7 +58,12 @@ runInAction(() => {
|
|||||||
keyboardShortcutsFeature,
|
keyboardShortcutsFeature,
|
||||||
reactApplicationFeature,
|
reactApplicationFeature,
|
||||||
routingFeature,
|
routingFeature,
|
||||||
metricsFeature
|
metricsFeature,
|
||||||
|
animateFeature,
|
||||||
|
clusterSidebarFeature,
|
||||||
|
randomFeature,
|
||||||
|
kubeApiSpecificsFeature,
|
||||||
|
notificationsFeature,
|
||||||
);
|
);
|
||||||
|
|
||||||
autoRegister({
|
autoRegister({
|
||||||
|
|||||||
@ -122,7 +122,7 @@ const renderer: webpack.Configuration = {
|
|||||||
path.dirname(require.resolve("@k8slens/core/package.json")),
|
path.dirname(require.resolve("@k8slens/core/package.json")),
|
||||||
corePackageJson.exports["./fonts"]
|
corePackageJson.exports["./fonts"]
|
||||||
),
|
),
|
||||||
to: "[name][ext]",
|
to: "fonts/[name][ext]",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
}),
|
}),
|
||||||
|
|||||||
13654
package-lock.json
generated
13654
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
15
package.json
15
package.json
@ -1,15 +1,13 @@
|
|||||||
{
|
{
|
||||||
"name": "lens-monorepo",
|
"name": "lens-monorepo",
|
||||||
"private": true,
|
"private": true,
|
||||||
|
|
||||||
"workspaces": [
|
"workspaces": [
|
||||||
"packages/**/*",
|
"packages/**/*",
|
||||||
"open-lens"
|
"open-lens"
|
||||||
],
|
],
|
||||||
|
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"all:reinstall": "npm run clean:node_modules && npm run all:install",
|
"all:reinstall": "npm run clean:node_modules && npm run all:install",
|
||||||
"all:install": "npx --yes --package npm@9.6.5 npm install",
|
"all:install": "npx --yes --package npm@^9.6.7 npm install",
|
||||||
"adr:create": "echo \"What is the title?\"; read title; adr new \"$title\"",
|
"adr:create": "echo \"What is the title?\"; read title; adr new \"$title\"",
|
||||||
"adr:change-status": "echo \"Decision number?:\"; read decision; adr status $decision",
|
"adr:change-status": "echo \"Decision number?:\"; read decision; adr status $decision",
|
||||||
"adr:update-readme": "adr update",
|
"adr:update-readme": "adr update",
|
||||||
@ -20,14 +18,16 @@
|
|||||||
"clean": "lerna run clean --stream",
|
"clean": "lerna run clean --stream",
|
||||||
"clean:node_modules": "lerna clean -y && rimraf node_modules",
|
"clean:node_modules": "lerna clean -y && rimraf node_modules",
|
||||||
"dev": "cross-env NODE_ENV=development lerna run build --stream --skip-nx-cache",
|
"dev": "cross-env NODE_ENV=development lerna run build --stream --skip-nx-cache",
|
||||||
"postdev": "lerna watch -- lerna run build --stream --scope \\$LERNA_PACKAGE_NAME",
|
"postdev": "lerna watch -- lerna run build --stream --include-dependents --scope \\$LERNA_PACKAGE_NAME",
|
||||||
"prestart-dev": "cd ./open-lens && rimraf static/build/ && npm run build:tray-icons && npm run download:binaries",
|
"prestart-dev": "cd ./open-lens && npm run build:tray-icons && npm run download:binaries",
|
||||||
"start-dev": "lerna run start",
|
"start-dev": "lerna run start",
|
||||||
|
"postinstall": "linkable",
|
||||||
"lint": "lerna run lint --stream --no-bail",
|
"lint": "lerna run lint --stream --no-bail",
|
||||||
"lint:fix": "lerna run lint:fix --stream",
|
"lint:fix": "lerna run lint:fix --stream",
|
||||||
"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",
|
"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",
|
||||||
"mkdocs:verify": "docker build -t mkdocs-serve-local:latest mkdocs/ && docker run --rm -v ${PWD}:/docs mkdocs-serve-local:latest build --strict",
|
"mkdocs:verify": "docker build -t mkdocs-serve-local:latest mkdocs/ && docker run --rm -v ${PWD}:/docs mkdocs-serve-local:latest build --strict",
|
||||||
"test:unit": "lerna run --stream test:unit --no-bail",
|
"test:unit": "lerna run --stream test:unit --no-bail",
|
||||||
|
"test:unit:updatesnapshot": "lerna run --stream test:unit --no-bail -- -u",
|
||||||
"test:unit:watch": "jest --watch",
|
"test:unit:watch": "jest --watch",
|
||||||
"test:integration": "lerna run --stream test:integration --no-bail",
|
"test:integration": "lerna run --stream test:integration --no-bail",
|
||||||
"bump-version": "lerna version --no-git-tag-version --no-push",
|
"bump-version": "lerna version --no-git-tag-version --no-push",
|
||||||
@ -40,13 +40,14 @@
|
|||||||
"@types/react": "^17"
|
"@types/react": "^17"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@ogre-tools/linkable": "^15.8.1",
|
"@ogre-tools/linkable": "^17.2.0",
|
||||||
"adr": "^1.4.3",
|
"adr": "^1.4.3",
|
||||||
"cross-env": "^7.0.3",
|
"cross-env": "^7.0.3",
|
||||||
"lerna": "^6.6.1",
|
"lerna": "^6.6.1",
|
||||||
|
"npm": "^9.6.7",
|
||||||
"rimraf": "^4.4.1"
|
"rimraf": "^4.4.1"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"npm": "9.6.5"
|
"npm": "^9.6.7"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,6 +3,103 @@
|
|||||||
All notable changes to this project will be documented in this file.
|
All notable changes to this project will be documented in this file.
|
||||||
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
||||||
|
|
||||||
|
# 1.0.0 (2023-05-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.14 (2023-05-23)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.13 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.12 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Don't crash when hovering hotbar menu index ([9d51ef2](https://github.com/lensapp/lens/commit/9d51ef2aa69c6c9df0fd57281b25131a10efd27a))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.11 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.9 (2023-05-04)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.5 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.4 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 1.0.0-alpha.7 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.12 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Don't crash when hovering hotbar menu index ([9d51ef2](https://github.com/lensapp/lens/commit/9d51ef2aa69c6c9df0fd57281b25131a10efd27a))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.11 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.9 (2023-05-04)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.5 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.4 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 1.0.0-alpha.6 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Don't crash when hovering hotbar menu index ([9d51ef2](https://github.com/lensapp/lens/commit/9d51ef2aa69c6c9df0fd57281b25131a10efd27a))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.11 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.9 (2023-05-04)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.5 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.4 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# 1.0.0-alpha.5 (2023-05-11)
|
# 1.0.0-alpha.5 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "@k8slens/keyboard-shortcuts",
|
"name": "@k8slens/keyboard-shortcuts",
|
||||||
"private": false,
|
"private": false,
|
||||||
"version": "1.0.0-alpha.5",
|
"version": "1.0.0",
|
||||||
"description": "Keyboard shortcuts for Lens",
|
"description": "Keyboard shortcuts for Lens",
|
||||||
"type": "commonjs",
|
"type": "commonjs",
|
||||||
"files": [
|
"files": [
|
||||||
@ -33,17 +33,17 @@
|
|||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@k8slens/feature-core": "^6.5.0-alpha.0",
|
"@k8slens/feature-core": "^6.5.0-alpha.0",
|
||||||
"@k8slens/react-application": "^1.0.0-alpha.0",
|
"@k8slens/react-application": "^1.0.0-alpha.0",
|
||||||
"@ogre-tools/fp": "^15.8.1",
|
"@ogre-tools/fp": "^17.2.0",
|
||||||
"@ogre-tools/injectable": "^15.8.1",
|
"@ogre-tools/injectable": "^17.2.0",
|
||||||
"@ogre-tools/injectable-extension-for-auto-registration": "^15.8.1",
|
"@ogre-tools/injectable-extension-for-auto-registration": "^17.2.0",
|
||||||
"@ogre-tools/injectable-react": "^15.8.1",
|
"@ogre-tools/injectable-react": "^17.2.0",
|
||||||
"lodash": "^4.17.21",
|
"lodash": "^4.17.21",
|
||||||
"react": "^17 || ^18"
|
"react": "^17 || ^18"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@async-fn/jest": "^1.6.4",
|
"@async-fn/jest": "^1.6.4",
|
||||||
"@k8slens/eslint-config": "^6.5.0-alpha.3",
|
"@k8slens/eslint-config": "^6.5.0",
|
||||||
"@k8slens/react-testing-library-discovery": "^1.0.0-alpha.4",
|
"@k8slens/react-testing-library-discovery": "^1.0.0",
|
||||||
"@k8slens/webpack": "^6.5.0-alpha.6"
|
"@k8slens/webpack": "^6.5.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,10 +1,11 @@
|
|||||||
|
import type { StrictReactNode } from "@k8slens/utilities";
|
||||||
import { withInjectables } from "@ogre-tools/injectable-react";
|
import { withInjectables } from "@ogre-tools/injectable-react";
|
||||||
import React, { useEffect } from "react";
|
import React, { useEffect } from "react";
|
||||||
|
|
||||||
import invokeShortcutInjectable, { InvokeShortcut } from "./invoke-shortcut.injectable";
|
import invokeShortcutInjectable, { InvokeShortcut } from "./invoke-shortcut.injectable";
|
||||||
|
|
||||||
export interface KeyboardShortcutListenerProps {
|
export interface KeyboardShortcutListenerProps {
|
||||||
children: React.ReactNode;
|
children: StrictReactNode;
|
||||||
}
|
}
|
||||||
|
|
||||||
interface Dependencies {
|
interface Dependencies {
|
||||||
|
|||||||
@ -1,8 +1,9 @@
|
|||||||
|
import type { StrictReactNode } from "@k8slens/utilities";
|
||||||
import React from "react";
|
import React from "react";
|
||||||
|
|
||||||
export interface KeyboardShortcutScopeProps {
|
export interface KeyboardShortcutScopeProps {
|
||||||
id: string;
|
id: string;
|
||||||
children: React.ReactNode;
|
children: StrictReactNode;
|
||||||
}
|
}
|
||||||
|
|
||||||
export const KeyboardShortcutScope = ({ id, children }: KeyboardShortcutScopeProps) => (
|
export const KeyboardShortcutScope = ({ id, children }: KeyboardShortcutScopeProps) => (
|
||||||
|
|||||||
@ -3,6 +3,91 @@
|
|||||||
All notable changes to this project will be documented in this file.
|
All notable changes to this project will be documented in this file.
|
||||||
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
||||||
|
|
||||||
|
# 6.5.0 (2023-05-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.14 (2023-05-23)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.13 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.12 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.11 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.9 (2023-05-04)
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* Compute the kubectl download version map at build time ([0bd7b1f](https://github.com/lensapp/lens/commit/0bd7b1fe92a173379c8a5a1ab7e13cf9e4f8223b))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.4 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.7 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.12 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.11 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.9 (2023-05-04)
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* Compute the kubectl download version map at build time ([0bd7b1f](https://github.com/lensapp/lens/commit/0bd7b1fe92a173379c8a5a1ab7e13cf9e4f8223b))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.4 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.6 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.11 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.9 (2023-05-04)
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* Compute the kubectl download version map at build time ([0bd7b1f](https://github.com/lensapp/lens/commit/0bd7b1fe92a173379c8a5a1ab7e13cf9e4f8223b))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.4 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# 6.5.0-alpha.5 (2023-05-11)
|
# 6.5.0-alpha.5 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@k8slens/cluster-settings",
|
"name": "@k8slens/cluster-settings",
|
||||||
"version": "6.5.0-alpha.5",
|
"version": "6.5.0",
|
||||||
"description": "Injection token exporter for cluster settings configuration",
|
"description": "Injection token exporter for cluster settings configuration",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"type": "commonjs",
|
"type": "commonjs",
|
||||||
@ -19,10 +19,10 @@
|
|||||||
"build": "lens-webpack-build"
|
"build": "lens-webpack-build"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@k8slens/webpack": "^6.5.0-alpha.6",
|
"@k8slens/webpack": "^6.5.0",
|
||||||
"rimraf": "^4.4.1"
|
"rimraf": "^4.4.1"
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@ogre-tools/injectable": "^15.8.1"
|
"@ogre-tools/injectable": "^17.2.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
6
packages/cluster-sidebar/.eslintrc.js
Normal file
6
packages/cluster-sidebar/.eslintrc.js
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
module.exports = {
|
||||||
|
extends: "@k8slens/eslint-config/eslint",
|
||||||
|
parserOptions: {
|
||||||
|
project: "./tsconfig.json",
|
||||||
|
},
|
||||||
|
};
|
||||||
1
packages/cluster-sidebar/.prettierrc
Normal file
1
packages/cluster-sidebar/.prettierrc
Normal file
@ -0,0 +1 @@
|
|||||||
|
"@k8slens/eslint-config/prettier"
|
||||||
@ -3,7 +3,6 @@
|
|||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
export * from "./crd-list";
|
export * from "./src/tokens";
|
||||||
export * from "./crd-details";
|
export * from "./src/feature";
|
||||||
export * from "./crd-resources";
|
export { default as sidebarItemsInjectable } from "./src/sidebar-items.injectable";
|
||||||
export * from "./crd-resource-details";
|
|
||||||
1
packages/cluster-sidebar/jest.config.js
Normal file
1
packages/cluster-sidebar/jest.config.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
module.exports = require("@k8slens/jest").monorepoPackageConfig(__dirname).configForReact;
|
||||||
48
packages/cluster-sidebar/package.json
Normal file
48
packages/cluster-sidebar/package.json
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
{
|
||||||
|
"name": "@k8slens/cluster-sidebar",
|
||||||
|
"private": false,
|
||||||
|
"version": "1.0.0",
|
||||||
|
"description": "Injection tokens for adding new sidebar items within the Cluster View",
|
||||||
|
"type": "commonjs",
|
||||||
|
"publishConfig": {
|
||||||
|
"access": "public",
|
||||||
|
"registry": "https://registry.npmjs.org/"
|
||||||
|
},
|
||||||
|
"files": [
|
||||||
|
"dist"
|
||||||
|
],
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "git+https://github.com/lensapp/lens.git"
|
||||||
|
},
|
||||||
|
"main": "dist/index.js",
|
||||||
|
"types": "dist/index.d.ts",
|
||||||
|
"author": {
|
||||||
|
"name": "OpenLens Authors",
|
||||||
|
"email": "info@k8slens.dev"
|
||||||
|
},
|
||||||
|
"license": "MIT",
|
||||||
|
"homepage": "https://github.com/lensapp/lens",
|
||||||
|
"scripts": {
|
||||||
|
"build": "lens-webpack-build",
|
||||||
|
"clean": "rimraf dist/",
|
||||||
|
"test": "jest --coverage --runInBand",
|
||||||
|
"lint": "lens-lint",
|
||||||
|
"lint:fix": "lens-lint --fix"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@k8slens/feature-core": "^6.5.0-alpha.4",
|
||||||
|
"@k8slens/utilities": "^1.0.0-alpha.3",
|
||||||
|
"@ogre-tools/injectable": "^17.2.0",
|
||||||
|
"@ogre-tools/injectable-extension-for-auto-registration": "^17.2.0",
|
||||||
|
"@ogre-tools/injectable-extension-for-mobx": "^17.2.0",
|
||||||
|
"mobx": "^6.9.0",
|
||||||
|
"react": "^17.0.2"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@k8slens/eslint-config": "^6.5.0-alpha.3",
|
||||||
|
"@k8slens/jest": "^6.5.0-alpha.5",
|
||||||
|
"@k8slens/typescript": "^6.5.0-alpha.2",
|
||||||
|
"@k8slens/webpack": "^6.5.0-alpha.5"
|
||||||
|
}
|
||||||
|
}
|
||||||
14
packages/cluster-sidebar/src/feature.ts
Normal file
14
packages/cluster-sidebar/src/feature.ts
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
import { getFeature } from "@k8slens/feature-core";
|
||||||
|
import { autoRegister } from "@ogre-tools/injectable-extension-for-auto-registration";
|
||||||
|
|
||||||
|
export const clusterSidebarFeature = getFeature({
|
||||||
|
id: "cluster-side-feature",
|
||||||
|
|
||||||
|
register: (di) => {
|
||||||
|
autoRegister({
|
||||||
|
di,
|
||||||
|
targetModule: module,
|
||||||
|
getRequireContexts: () => [require.context("./", true, /\.injectable\.(ts|tsx)$/)],
|
||||||
|
});
|
||||||
|
},
|
||||||
|
});
|
||||||
174
packages/cluster-sidebar/src/order-of-sidebar-items.test.ts
Normal file
174
packages/cluster-sidebar/src/order-of-sidebar-items.test.ts
Normal file
@ -0,0 +1,174 @@
|
|||||||
|
/**
|
||||||
|
* Copyright (c) OpenLens Authors. All rights reserved.
|
||||||
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
||||||
|
*/
|
||||||
|
import { createContainer, DiContainer, getInjectable } from "@ogre-tools/injectable";
|
||||||
|
import { computed, IComputedValue } from "mobx";
|
||||||
|
import { noop } from "lodash/fp";
|
||||||
|
import sidebarItemsInjectable from "./sidebar-items.injectable";
|
||||||
|
import { SidebarItemDeclaration, sidebarItemInjectionToken } from "./tokens";
|
||||||
|
import { registerMobX } from "@ogre-tools/injectable-extension-for-mobx";
|
||||||
|
import { clusterSidebarFeature } from "./feature";
|
||||||
|
|
||||||
|
const someParentSidebarItemInjectable = getInjectable({
|
||||||
|
id: "sidebar-item-some-parent",
|
||||||
|
instantiate: () => ({
|
||||||
|
parentId: null,
|
||||||
|
title: "Some parent",
|
||||||
|
onClick: noop,
|
||||||
|
orderNumber: 42,
|
||||||
|
}),
|
||||||
|
injectionToken: sidebarItemInjectionToken,
|
||||||
|
});
|
||||||
|
|
||||||
|
const someOtherParentSidebarItemInjectable = getInjectable({
|
||||||
|
id: "sidebar-item-some-other-parent",
|
||||||
|
instantiate: () => ({
|
||||||
|
parentId: null,
|
||||||
|
title: "Some other parent",
|
||||||
|
onClick: noop,
|
||||||
|
orderNumber: 126,
|
||||||
|
}),
|
||||||
|
injectionToken: sidebarItemInjectionToken,
|
||||||
|
});
|
||||||
|
|
||||||
|
const someAnotherParentSidebarItemInjectable = getInjectable({
|
||||||
|
id: "sidebar-item-some-another-parent",
|
||||||
|
instantiate: () => ({
|
||||||
|
parentId: null,
|
||||||
|
title: "Some another parent",
|
||||||
|
onClick: noop,
|
||||||
|
orderNumber: 84,
|
||||||
|
}),
|
||||||
|
injectionToken: sidebarItemInjectionToken,
|
||||||
|
});
|
||||||
|
|
||||||
|
const someForthParentSidebarItemInjectable = getInjectable({
|
||||||
|
id: "sidebar-item-some-forth-parent",
|
||||||
|
instantiate: () => ({
|
||||||
|
parentId: null,
|
||||||
|
title: "Some another parent",
|
||||||
|
onClick: noop,
|
||||||
|
orderNumber: 84,
|
||||||
|
isVisible: computed(() => false),
|
||||||
|
isActive: computed(() => true),
|
||||||
|
}),
|
||||||
|
injectionToken: sidebarItemInjectionToken,
|
||||||
|
});
|
||||||
|
|
||||||
|
const someChildSidebarItemInjectable = getInjectable({
|
||||||
|
id: "sidebar-item-some-child",
|
||||||
|
instantiate: () => ({
|
||||||
|
parentId: someParentSidebarItemInjectable.id,
|
||||||
|
title: "Some child",
|
||||||
|
onClick: noop,
|
||||||
|
orderNumber: 168,
|
||||||
|
}),
|
||||||
|
injectionToken: sidebarItemInjectionToken,
|
||||||
|
});
|
||||||
|
|
||||||
|
const someOtherChildSidebarItemInjectable = getInjectable({
|
||||||
|
id: "sidebar-item-some-other-child",
|
||||||
|
instantiate: () => ({
|
||||||
|
parentId: someParentSidebarItemInjectable.id,
|
||||||
|
title: "Some other child",
|
||||||
|
onClick: noop,
|
||||||
|
orderNumber: 252,
|
||||||
|
}),
|
||||||
|
injectionToken: sidebarItemInjectionToken,
|
||||||
|
});
|
||||||
|
|
||||||
|
const someAnotherChildSidebarItemInjectable = getInjectable({
|
||||||
|
id: "sidebar-item-some-another-child",
|
||||||
|
instantiate: () => ({
|
||||||
|
parentId: someParentSidebarItemInjectable.id,
|
||||||
|
title: "Some another child",
|
||||||
|
onClick: noop,
|
||||||
|
orderNumber: 210,
|
||||||
|
}),
|
||||||
|
injectionToken: sidebarItemInjectionToken,
|
||||||
|
});
|
||||||
|
|
||||||
|
describe("order of sidebar items", () => {
|
||||||
|
let di: DiContainer;
|
||||||
|
let sidebarItems: IComputedValue<SidebarItemDeclaration[]>;
|
||||||
|
|
||||||
|
beforeEach(() => {
|
||||||
|
di = createContainer("test");
|
||||||
|
|
||||||
|
di.register(
|
||||||
|
someParentSidebarItemInjectable,
|
||||||
|
someOtherParentSidebarItemInjectable,
|
||||||
|
someAnotherParentSidebarItemInjectable,
|
||||||
|
someChildSidebarItemInjectable,
|
||||||
|
someOtherChildSidebarItemInjectable,
|
||||||
|
someAnotherChildSidebarItemInjectable,
|
||||||
|
someForthParentSidebarItemInjectable,
|
||||||
|
);
|
||||||
|
|
||||||
|
clusterSidebarFeature.register(di);
|
||||||
|
registerMobX(di);
|
||||||
|
|
||||||
|
sidebarItems = di.inject(sidebarItemsInjectable);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("has parent items in order", () => {
|
||||||
|
const actual = sidebarItems.get().map((item) => item.id);
|
||||||
|
|
||||||
|
expect(actual).toEqual([
|
||||||
|
"sidebar-item-some-parent",
|
||||||
|
"sidebar-item-some-another-parent",
|
||||||
|
"sidebar-item-some-forth-parent",
|
||||||
|
"sidebar-item-some-other-parent",
|
||||||
|
]);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("an item with no children and no isVisible configuration by default is visible", () => {
|
||||||
|
const item = sidebarItems.get().find((item) => item.id === someAnotherParentSidebarItemInjectable.id);
|
||||||
|
|
||||||
|
expect(item?.isVisible.get()).toBe(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("an item with no children and an isVisible configuration is whatever the configuration specifies", () => {
|
||||||
|
const item = sidebarItems.get().find((item) => item.id === someForthParentSidebarItemInjectable.id);
|
||||||
|
|
||||||
|
expect(item?.isVisible.get()).toBe(false);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("an item with children is visible if at least one of the children is visible", () => {
|
||||||
|
const item = sidebarItems.get().find((item) => item.id === "sidebar-item-some-parent");
|
||||||
|
|
||||||
|
expect(item?.isVisible.get()).toBe(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("an item with no children and no isActive configuration by default is not active", () => {
|
||||||
|
const item = sidebarItems.get().find((item) => item.id === someAnotherParentSidebarItemInjectable.id);
|
||||||
|
|
||||||
|
expect(item?.isActive.get()).toBe(false);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("an item with no children and an isActive configuration is whatever the configuration specifies", () => {
|
||||||
|
const item = sidebarItems.get().find((item) => item.id === someForthParentSidebarItemInjectable.id);
|
||||||
|
|
||||||
|
expect(item?.isActive.get()).toBe(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("an item with children is active if at least one of the children is active", () => {
|
||||||
|
const item = sidebarItems.get().find((item) => item.id === "sidebar-item-some-parent");
|
||||||
|
|
||||||
|
expect(item?.isActive.get()).toBe(false);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("has child items in order", () => {
|
||||||
|
const actual = sidebarItems
|
||||||
|
.get()
|
||||||
|
.find((item) => item.id === "sidebar-item-some-parent")
|
||||||
|
?.children.map((item) => item.id);
|
||||||
|
|
||||||
|
expect(actual).toEqual([
|
||||||
|
"sidebar-item-some-child",
|
||||||
|
"sidebar-item-some-another-child",
|
||||||
|
"sidebar-item-some-other-child",
|
||||||
|
]);
|
||||||
|
});
|
||||||
|
});
|
||||||
60
packages/cluster-sidebar/src/sidebar-items.injectable.ts
Normal file
60
packages/cluster-sidebar/src/sidebar-items.injectable.ts
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
import { getInjectable, InjectionInstanceWithMeta } from "@ogre-tools/injectable";
|
||||||
|
import { computedInjectManyInjectable } from "@ogre-tools/injectable-extension-for-mobx";
|
||||||
|
import { SidebarItemDeclaration, sidebarItemInjectionToken, SidebarItemRegistration } from "./tokens";
|
||||||
|
import { computed } from "mobx";
|
||||||
|
import { byOrderNumber } from "@k8slens/utilities";
|
||||||
|
|
||||||
|
const getSidebarItemsHierarchy = (
|
||||||
|
registrations: InjectionInstanceWithMeta<SidebarItemRegistration>[],
|
||||||
|
parentId: string | null,
|
||||||
|
): SidebarItemDeclaration[] =>
|
||||||
|
registrations
|
||||||
|
.filter(({ instance }) => instance.parentId === parentId)
|
||||||
|
.map(({ instance: { isActive, isVisible, ...registration }, meta: { id } }) => {
|
||||||
|
const children = getSidebarItemsHierarchy(registrations, id);
|
||||||
|
|
||||||
|
return {
|
||||||
|
...registration,
|
||||||
|
id,
|
||||||
|
children,
|
||||||
|
isVisible: computed(() => {
|
||||||
|
if (children.length === 0) {
|
||||||
|
if (isVisible) {
|
||||||
|
return isVisible.get();
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return children.some((child) => child.isVisible.get());
|
||||||
|
}),
|
||||||
|
isActive: computed(() => {
|
||||||
|
if (children.length === 0) {
|
||||||
|
if (isActive) {
|
||||||
|
return isActive.get();
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return children.some((child) => child.isActive.get());
|
||||||
|
}),
|
||||||
|
};
|
||||||
|
})
|
||||||
|
.sort(byOrderNumber);
|
||||||
|
|
||||||
|
const sidebarItemsInjectable = getInjectable({
|
||||||
|
id: "sidebar-items",
|
||||||
|
instantiate: (di) => {
|
||||||
|
const computedInjectMany = di.inject(computedInjectManyInjectable);
|
||||||
|
const sidebarItemRegistrations = computedInjectMany(sidebarItemInjectionToken);
|
||||||
|
|
||||||
|
return computed(() => {
|
||||||
|
void sidebarItemRegistrations.get();
|
||||||
|
|
||||||
|
return getSidebarItemsHierarchy(di.injectManyWithMeta(sidebarItemInjectionToken), null);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
export default sidebarItemsInjectable;
|
||||||
34
packages/cluster-sidebar/src/tokens.ts
Normal file
34
packages/cluster-sidebar/src/tokens.ts
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
/**
|
||||||
|
* Copyright (c) OpenLens Authors. All rights reserved.
|
||||||
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { getInjectionToken } from "@ogre-tools/injectable";
|
||||||
|
import type { IComputedValue } from "mobx";
|
||||||
|
import type { StrictReactNode } from "@k8slens/utilities";
|
||||||
|
|
||||||
|
export interface SidebarItemRegistration {
|
||||||
|
id?: undefined;
|
||||||
|
parentId: string | null;
|
||||||
|
title: StrictReactNode;
|
||||||
|
onClick: () => void;
|
||||||
|
getIcon?: () => StrictReactNode;
|
||||||
|
isActive?: IComputedValue<boolean>;
|
||||||
|
isVisible?: IComputedValue<boolean>;
|
||||||
|
orderNumber: number;
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface SidebarItemDeclaration {
|
||||||
|
id: string;
|
||||||
|
parentId: string | null;
|
||||||
|
title: StrictReactNode;
|
||||||
|
onClick: () => void;
|
||||||
|
getIcon?: () => StrictReactNode;
|
||||||
|
isActive: IComputedValue<boolean>;
|
||||||
|
isVisible: IComputedValue<boolean>;
|
||||||
|
children: SidebarItemDeclaration[];
|
||||||
|
}
|
||||||
|
|
||||||
|
export const sidebarItemInjectionToken = getInjectionToken<SidebarItemRegistration>({
|
||||||
|
id: "sidebar-item-injection-token",
|
||||||
|
});
|
||||||
4
packages/cluster-sidebar/tsconfig.json
Normal file
4
packages/cluster-sidebar/tsconfig.json
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"extends": "@k8slens/typescript/config/base.json",
|
||||||
|
"include": ["**/*.ts"]
|
||||||
|
}
|
||||||
1
packages/cluster-sidebar/webpack.config.js
Normal file
1
packages/cluster-sidebar/webpack.config.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
module.exports = require("@k8slens/webpack").configForReact;
|
||||||
@ -3,6 +3,905 @@
|
|||||||
All notable changes to this project will be documented in this file.
|
All notable changes to this project will be documented in this file.
|
||||||
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
||||||
|
|
||||||
|
# 6.5.0 (2023-05-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.16 (2023-05-25)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Handle log responses as text ([#7776](https://github.com/lensapp/lens/issues/7776)) ([90c449c](https://github.com/lensapp/lens/commit/90c449cc0dd68ef46eb3c32bae170c3386238db9))
|
||||||
|
* Make application size not blow up by consolidating dependencies in core package to peerDependencies ([738985c](https://github.com/lensapp/lens/commit/738985c9b7406ef0722c3994c560f0337e3c5b7c))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.15 (2023-05-23)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.14 (2023-05-23)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Use correct path for node-shell shell PTY ([99e6b77](https://github.com/lensapp/lens/commit/99e6b77fc1c5a74cfef90981b8b0162b46ecfb43))
|
||||||
|
|
||||||
|
|
||||||
|
### Reverts
|
||||||
|
|
||||||
|
* Revert "chore: Extract sidebar item injection token into separate package" ([8f4aa49](https://github.com/lensapp/lens/commit/8f4aa497cc54655f83813d57c224f77dd1472141))
|
||||||
|
* Revert "chore: Rename sidebar item injectable files" ([cb0e876](https://github.com/lensapp/lens/commit/cb0e8764aca9e0d28e6e23c5ae87a5ab6d414065))
|
||||||
|
* Revert "chore: Convert sidebarItemInjectionToken to use InjectWithMetadata instead of duplicating the IDs" ([93bc41f](https://github.com/lensapp/lens/commit/93bc41f9a3f47f5c777c882c9241f4fd5e3f1952))
|
||||||
|
* Revert "chore: Fixup tests snapshots to match new testid behaviour" ([9276df0](https://github.com/lensapp/lens/commit/9276df05924794d30d7d97bc79cf701a6106e8ec))
|
||||||
|
* Revert "chore: Fix lint" ([d90bdf6](https://github.com/lensapp/lens/commit/d90bdf6f1497cb25f17788a4170feba31d366b74))
|
||||||
|
* Revert "chore: Fix more lint" ([813705f](https://github.com/lensapp/lens/commit/813705fe9097012cd7fc62a8d543d1f7bc2be2ed))
|
||||||
|
* Revert "chore: Fix IDs for some sidebar items" ([753c8bf](https://github.com/lensapp/lens/commit/753c8bfa85ccc74980553bb512b5038ff18767a2))
|
||||||
|
* Revert "chore: Improve title formatting for Horizontal/Vertical Pod Autoscalers" ([d4c12be](https://github.com/lensapp/lens/commit/d4c12becfc9020009d64f48e4c8f9dd3b7725bb6))
|
||||||
|
* Revert "fix: Fix formatting of custom resource sidebar items" ([5608a19](https://github.com/lensapp/lens/commit/5608a199be1067039403b85abe776fab928a956c))
|
||||||
|
* Revert "chore: Fix integration tests failing due to helm testid's changing" ([96b7ecb](https://github.com/lensapp/lens/commit/96b7ecbaddedd45cc667cc2d6c25fdc0813557ec))
|
||||||
|
* Revert "chore: Fix tests after rebase" ([1b43de5](https://github.com/lensapp/lens/commit/1b43de50fe6431367bf259799f5e0b42f6b38ad9))
|
||||||
|
* Revert "fix: Custom Resource Definitions should be the first entry in the side bar" ([1099e65](https://github.com/lensapp/lens/commit/1099e65c52c62153b3d28d0654fffaaa6f6715a7))
|
||||||
|
* Revert "fix: Custom Resource Definitions sidebar item should navigate to the correct route" ([7d46cb8](https://github.com/lensapp/lens/commit/7d46cb845d0f1748c0f83a8dc34bbe783270ca2c))
|
||||||
|
* Revert "chore: Cleanup custom resource route definition" ([40f1180](https://github.com/lensapp/lens/commit/40f118057925a3b946f5dcc60162bad7e8b12e58))
|
||||||
|
* Revert "chore: Factor out NavigateToCustomResources type" ([d3cf708](https://github.com/lensapp/lens/commit/d3cf7088d6c37860984ce0295a3d8a5c528c2a66))
|
||||||
|
* Revert "chore: Move around Custom Resource and Custom Resource Definition files to simplify names" ([5f4cdbc](https://github.com/lensapp/lens/commit/5f4cdbc51950c04804139e9b961cfe394ad4ae30))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.13 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Switch to using IAsyncComputed to resolve bad setState error within ClusterOverview from react ([4f8e470](https://github.com/lensapp/lens/commit/4f8e4707f929eee04ff1345c9e93f00d50ac0a92))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.12 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Don't crash when hovering hotbar menu index ([9d51ef2](https://github.com/lensapp/lens/commit/9d51ef2aa69c6c9df0fd57281b25131a10efd27a))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.11 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Add test as repro, and fix bug about kube API details not opening ([bb400ae](https://github.com/lensapp/lens/commit/bb400ae66797fe160567e6b728d85d5e79caef4d))
|
||||||
|
* Bring back search filters for pods which were accidentally removed previously ([9c7be39](https://github.com/lensapp/lens/commit/9c7be39eb135b747945f76f61811695d2f96c761))
|
||||||
|
* Do not crash when opening details of a helm release ([40af0d3](https://github.com/lensapp/lens/commit/40af0d31c529e252a45c7370852755c4e63067a7))
|
||||||
|
* Kludge cluster settings not opening when extension introduces new settings without ID when title contains spaces ([e8491ca](https://github.com/lensapp/lens/commit/e8491ca2d39971d06842f6741eae042554fbc9a0))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.10 (2023-05-09)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.9 (2023-05-04)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Add checks to KubeObject constructor to ensure shape ([bf6af58](https://github.com/lensapp/lens/commit/bf6af58d80552a16be7a547f772902b138a12fbd))
|
||||||
|
* add routingFeature to getDiForUnitTesting ([b33a8b4](https://github.com/lensapp/lens/commit/b33a8b49607935450f70b1d5535431ba416fc22e))
|
||||||
|
* change class name behaviour to limit snapshot diffs ([bfb2b8e](https://github.com/lensapp/lens/commit/bfb2b8e6591891b529d5cf0f8757ff8b7080e004))
|
||||||
|
* **core:** hide update button if downloading of an update fails ([f697742](https://github.com/lensapp/lens/commit/f6977428daa3f61482e7066689ebf7092b0fb2b1))
|
||||||
|
* Fix selfLink being missing from requestKubeResource ([b90e04e](https://github.com/lensapp/lens/commit/b90e04e02dfd18896d5f08f1bc36f90179635797))
|
||||||
|
* lint:fix ([76c11aa](https://github.com/lensapp/lens/commit/76c11aa697e3ada81c876fe8a3ac6e33b4ce8cb9))
|
||||||
|
* observableHistoryInjectionToken and 1 revert for GlobalOverride ([8c0220c](https://github.com/lensapp/lens/commit/8c0220c353c9047a2a4df570b598c31868b5f7e2))
|
||||||
|
* Only show Update Channel preferences when applicable ([43cedae](https://github.com/lensapp/lens/commit/43cedae7b05eaa7f932f2718939f7b856a1b86c5))
|
||||||
|
* Remove incorrect timeout on standard info notifications ([bcf95a6](https://github.com/lensapp/lens/commit/bcf95a65f1d2be91fa613f0da9d0ae978faaef75))
|
||||||
|
* removed as-legacy-globals-for-extension-api ([f1f2634](https://github.com/lensapp/lens/commit/f1f26344900b99c70b2bed2f453ed27574d7b417))
|
||||||
|
* removed dependencies: [reactApplicationFeature], ([0dae159](https://github.com/lensapp/lens/commit/0dae1594baabbd06e798f9a1b4c132cee998bb65))
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* Add deleting subNamespaces to contextMenu ([89cf491](https://github.com/lensapp/lens/commit/89cf491bc0aa80ee398f8b5dc39ec7c69d00c7bb))
|
||||||
|
* Add removing subNamespaces to Namespace route ([aa95002](https://github.com/lensapp/lens/commit/aa950026a3162abf6322afb4b5c5bf56f9f7e10f))
|
||||||
|
* Adjust container status colors to be distinguable with red/green filter ([#7621](https://github.com/lensapp/lens/issues/7621)) ([3532fc1](https://github.com/lensapp/lens/commit/3532fc1dab918190fa76199a9d7b04d6efe40c47))
|
||||||
|
* Compute the kubectl download version map at build time ([0bd7b1f](https://github.com/lensapp/lens/commit/0bd7b1fe92a173379c8a5a1ab7e13cf9e4f8223b))
|
||||||
|
* Improve formatting error messages from apiKube ([3439472](https://github.com/lensapp/lens/commit/3439472065e6b850e286f6a34bccc23b827b8e28))
|
||||||
|
* Introduce API for changing the status bar colour ([06a0dce](https://github.com/lensapp/lens/commit/06a0dce612b67084f8f36ba552ea23f8ac071201))
|
||||||
|
* Introduce injectables to remove subNamespaces ([c557225](https://github.com/lensapp/lens/commit/c5572257bd6a32a2f05fc78f54ece428f54389fe))
|
||||||
|
* Never auto-close error notifications ([561d8db](https://github.com/lensapp/lens/commit/561d8dbc09581ff21aa79e85f3903c45e99ac33b))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.6 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.5 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.4 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Fix tests by recreating non-specific injection token ([c0ebe60](https://github.com/lensapp/lens/commit/c0ebe605c4d36c0d98454e25565818f75ffb1b69))
|
||||||
|
* Referencing apiManager should not throw ([#7468](https://github.com/lensapp/lens/issues/7468)) ([351f9d4](https://github.com/lensapp/lens/commit/351f9d492f6e52e9e97d17d71e2bbdbbde4ea2db))
|
||||||
|
* remove platform specific injectable file names ([9b0318b](https://github.com/lensapp/lens/commit/9b0318b493fe2e49a34b8a4cb3d0bef1600759b8))
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* Allow built versions to specify an environment ([#7495](https://github.com/lensapp/lens/issues/7495)) ([128b05d](https://github.com/lensapp/lens/commit/128b05d4d46344a511398f654865c133c6e36514))
|
||||||
|
|
||||||
|
|
||||||
|
### Reverts
|
||||||
|
|
||||||
|
* Revert "Renderer file logging through IPC" (#7393) ([5409324](https://github.com/lensapp/lens/commit/54093242367717292312df01905d052b66017953)), closes [#7393](https://github.com/lensapp/lens/issues/7393)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.3 (2023-03-15)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.2 (2023-03-14)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.1 (2023-03-14)
|
||||||
|
|
||||||
|
|
||||||
|
### Reverts
|
||||||
|
|
||||||
|
* Revert "Renderer file logging transport (#6795)" (#7245) ([ec81af4](https://github.com/lensapp/lens/commit/ec81af4e6c5f8d0c25469a56dfa602894f85734b)), closes [#6795](https://github.com/lensapp/lens/issues/6795) [#7245](https://github.com/lensapp/lens/issues/7245) [#544](https://github.com/lensapp/lens/issues/544)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.13 (2023-02-03)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.12 (2023-02-01)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.11 (2023-02-01)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.10 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.9 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.8 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.7 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.6 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.5 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.4 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.3 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.16 (2023-05-25)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Handle log responses as text ([#7776](https://github.com/lensapp/lens/issues/7776)) ([90c449c](https://github.com/lensapp/lens/commit/90c449cc0dd68ef46eb3c32bae170c3386238db9))
|
||||||
|
* Make application size not blow up by consolidating dependencies in core package to peerDependencies ([738985c](https://github.com/lensapp/lens/commit/738985c9b7406ef0722c3994c560f0337e3c5b7c))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.15 (2023-05-23)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.14 (2023-05-23)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Use correct path for node-shell shell PTY ([99e6b77](https://github.com/lensapp/lens/commit/99e6b77fc1c5a74cfef90981b8b0162b46ecfb43))
|
||||||
|
|
||||||
|
|
||||||
|
### Reverts
|
||||||
|
|
||||||
|
* Revert "chore: Extract sidebar item injection token into separate package" ([8f4aa49](https://github.com/lensapp/lens/commit/8f4aa497cc54655f83813d57c224f77dd1472141))
|
||||||
|
* Revert "chore: Rename sidebar item injectable files" ([cb0e876](https://github.com/lensapp/lens/commit/cb0e8764aca9e0d28e6e23c5ae87a5ab6d414065))
|
||||||
|
* Revert "chore: Convert sidebarItemInjectionToken to use InjectWithMetadata instead of duplicating the IDs" ([93bc41f](https://github.com/lensapp/lens/commit/93bc41f9a3f47f5c777c882c9241f4fd5e3f1952))
|
||||||
|
* Revert "chore: Fixup tests snapshots to match new testid behaviour" ([9276df0](https://github.com/lensapp/lens/commit/9276df05924794d30d7d97bc79cf701a6106e8ec))
|
||||||
|
* Revert "chore: Fix lint" ([d90bdf6](https://github.com/lensapp/lens/commit/d90bdf6f1497cb25f17788a4170feba31d366b74))
|
||||||
|
* Revert "chore: Fix more lint" ([813705f](https://github.com/lensapp/lens/commit/813705fe9097012cd7fc62a8d543d1f7bc2be2ed))
|
||||||
|
* Revert "chore: Fix IDs for some sidebar items" ([753c8bf](https://github.com/lensapp/lens/commit/753c8bfa85ccc74980553bb512b5038ff18767a2))
|
||||||
|
* Revert "chore: Improve title formatting for Horizontal/Vertical Pod Autoscalers" ([d4c12be](https://github.com/lensapp/lens/commit/d4c12becfc9020009d64f48e4c8f9dd3b7725bb6))
|
||||||
|
* Revert "fix: Fix formatting of custom resource sidebar items" ([5608a19](https://github.com/lensapp/lens/commit/5608a199be1067039403b85abe776fab928a956c))
|
||||||
|
* Revert "chore: Fix integration tests failing due to helm testid's changing" ([96b7ecb](https://github.com/lensapp/lens/commit/96b7ecbaddedd45cc667cc2d6c25fdc0813557ec))
|
||||||
|
* Revert "chore: Fix tests after rebase" ([1b43de5](https://github.com/lensapp/lens/commit/1b43de50fe6431367bf259799f5e0b42f6b38ad9))
|
||||||
|
* Revert "fix: Custom Resource Definitions should be the first entry in the side bar" ([1099e65](https://github.com/lensapp/lens/commit/1099e65c52c62153b3d28d0654fffaaa6f6715a7))
|
||||||
|
* Revert "fix: Custom Resource Definitions sidebar item should navigate to the correct route" ([7d46cb8](https://github.com/lensapp/lens/commit/7d46cb845d0f1748c0f83a8dc34bbe783270ca2c))
|
||||||
|
* Revert "chore: Cleanup custom resource route definition" ([40f1180](https://github.com/lensapp/lens/commit/40f118057925a3b946f5dcc60162bad7e8b12e58))
|
||||||
|
* Revert "chore: Factor out NavigateToCustomResources type" ([d3cf708](https://github.com/lensapp/lens/commit/d3cf7088d6c37860984ce0295a3d8a5c528c2a66))
|
||||||
|
* Revert "chore: Move around Custom Resource and Custom Resource Definition files to simplify names" ([5f4cdbc](https://github.com/lensapp/lens/commit/5f4cdbc51950c04804139e9b961cfe394ad4ae30))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.13 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Switch to using IAsyncComputed to resolve bad setState error within ClusterOverview from react ([4f8e470](https://github.com/lensapp/lens/commit/4f8e4707f929eee04ff1345c9e93f00d50ac0a92))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.12 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Don't crash when hovering hotbar menu index ([9d51ef2](https://github.com/lensapp/lens/commit/9d51ef2aa69c6c9df0fd57281b25131a10efd27a))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.11 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Add test as repro, and fix bug about kube API details not opening ([bb400ae](https://github.com/lensapp/lens/commit/bb400ae66797fe160567e6b728d85d5e79caef4d))
|
||||||
|
* Bring back search filters for pods which were accidentally removed previously ([9c7be39](https://github.com/lensapp/lens/commit/9c7be39eb135b747945f76f61811695d2f96c761))
|
||||||
|
* Do not crash when opening details of a helm release ([40af0d3](https://github.com/lensapp/lens/commit/40af0d31c529e252a45c7370852755c4e63067a7))
|
||||||
|
* Kludge cluster settings not opening when extension introduces new settings without ID when title contains spaces ([e8491ca](https://github.com/lensapp/lens/commit/e8491ca2d39971d06842f6741eae042554fbc9a0))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.10 (2023-05-09)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.9 (2023-05-04)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Add checks to KubeObject constructor to ensure shape ([bf6af58](https://github.com/lensapp/lens/commit/bf6af58d80552a16be7a547f772902b138a12fbd))
|
||||||
|
* add routingFeature to getDiForUnitTesting ([b33a8b4](https://github.com/lensapp/lens/commit/b33a8b49607935450f70b1d5535431ba416fc22e))
|
||||||
|
* change class name behaviour to limit snapshot diffs ([bfb2b8e](https://github.com/lensapp/lens/commit/bfb2b8e6591891b529d5cf0f8757ff8b7080e004))
|
||||||
|
* **core:** hide update button if downloading of an update fails ([f697742](https://github.com/lensapp/lens/commit/f6977428daa3f61482e7066689ebf7092b0fb2b1))
|
||||||
|
* Fix selfLink being missing from requestKubeResource ([b90e04e](https://github.com/lensapp/lens/commit/b90e04e02dfd18896d5f08f1bc36f90179635797))
|
||||||
|
* lint:fix ([76c11aa](https://github.com/lensapp/lens/commit/76c11aa697e3ada81c876fe8a3ac6e33b4ce8cb9))
|
||||||
|
* observableHistoryInjectionToken and 1 revert for GlobalOverride ([8c0220c](https://github.com/lensapp/lens/commit/8c0220c353c9047a2a4df570b598c31868b5f7e2))
|
||||||
|
* Only show Update Channel preferences when applicable ([43cedae](https://github.com/lensapp/lens/commit/43cedae7b05eaa7f932f2718939f7b856a1b86c5))
|
||||||
|
* Remove incorrect timeout on standard info notifications ([bcf95a6](https://github.com/lensapp/lens/commit/bcf95a65f1d2be91fa613f0da9d0ae978faaef75))
|
||||||
|
* removed as-legacy-globals-for-extension-api ([f1f2634](https://github.com/lensapp/lens/commit/f1f26344900b99c70b2bed2f453ed27574d7b417))
|
||||||
|
* removed dependencies: [reactApplicationFeature], ([0dae159](https://github.com/lensapp/lens/commit/0dae1594baabbd06e798f9a1b4c132cee998bb65))
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* Add deleting subNamespaces to contextMenu ([89cf491](https://github.com/lensapp/lens/commit/89cf491bc0aa80ee398f8b5dc39ec7c69d00c7bb))
|
||||||
|
* Add removing subNamespaces to Namespace route ([aa95002](https://github.com/lensapp/lens/commit/aa950026a3162abf6322afb4b5c5bf56f9f7e10f))
|
||||||
|
* Adjust container status colors to be distinguable with red/green filter ([#7621](https://github.com/lensapp/lens/issues/7621)) ([3532fc1](https://github.com/lensapp/lens/commit/3532fc1dab918190fa76199a9d7b04d6efe40c47))
|
||||||
|
* Compute the kubectl download version map at build time ([0bd7b1f](https://github.com/lensapp/lens/commit/0bd7b1fe92a173379c8a5a1ab7e13cf9e4f8223b))
|
||||||
|
* Improve formatting error messages from apiKube ([3439472](https://github.com/lensapp/lens/commit/3439472065e6b850e286f6a34bccc23b827b8e28))
|
||||||
|
* Introduce API for changing the status bar colour ([06a0dce](https://github.com/lensapp/lens/commit/06a0dce612b67084f8f36ba552ea23f8ac071201))
|
||||||
|
* Introduce injectables to remove subNamespaces ([c557225](https://github.com/lensapp/lens/commit/c5572257bd6a32a2f05fc78f54ece428f54389fe))
|
||||||
|
* Never auto-close error notifications ([561d8db](https://github.com/lensapp/lens/commit/561d8dbc09581ff21aa79e85f3903c45e99ac33b))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.6 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.5 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.4 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Fix tests by recreating non-specific injection token ([c0ebe60](https://github.com/lensapp/lens/commit/c0ebe605c4d36c0d98454e25565818f75ffb1b69))
|
||||||
|
* Referencing apiManager should not throw ([#7468](https://github.com/lensapp/lens/issues/7468)) ([351f9d4](https://github.com/lensapp/lens/commit/351f9d492f6e52e9e97d17d71e2bbdbbde4ea2db))
|
||||||
|
* remove platform specific injectable file names ([9b0318b](https://github.com/lensapp/lens/commit/9b0318b493fe2e49a34b8a4cb3d0bef1600759b8))
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* Allow built versions to specify an environment ([#7495](https://github.com/lensapp/lens/issues/7495)) ([128b05d](https://github.com/lensapp/lens/commit/128b05d4d46344a511398f654865c133c6e36514))
|
||||||
|
|
||||||
|
|
||||||
|
### Reverts
|
||||||
|
|
||||||
|
* Revert "Renderer file logging through IPC" (#7393) ([5409324](https://github.com/lensapp/lens/commit/54093242367717292312df01905d052b66017953)), closes [#7393](https://github.com/lensapp/lens/issues/7393)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.3 (2023-03-15)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.2 (2023-03-14)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.1 (2023-03-14)
|
||||||
|
|
||||||
|
|
||||||
|
### Reverts
|
||||||
|
|
||||||
|
* Revert "Renderer file logging transport (#6795)" (#7245) ([ec81af4](https://github.com/lensapp/lens/commit/ec81af4e6c5f8d0c25469a56dfa602894f85734b)), closes [#6795](https://github.com/lensapp/lens/issues/6795) [#7245](https://github.com/lensapp/lens/issues/7245) [#544](https://github.com/lensapp/lens/issues/544)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.13 (2023-02-03)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.12 (2023-02-01)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.11 (2023-02-01)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.10 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.9 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.8 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.7 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.6 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.5 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.4 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.3 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.15 (2023-05-23)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.14 (2023-05-23)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Use correct path for node-shell shell PTY ([99e6b77](https://github.com/lensapp/lens/commit/99e6b77fc1c5a74cfef90981b8b0162b46ecfb43))
|
||||||
|
|
||||||
|
|
||||||
|
### Reverts
|
||||||
|
|
||||||
|
* Revert "chore: Extract sidebar item injection token into separate package" ([8f4aa49](https://github.com/lensapp/lens/commit/8f4aa497cc54655f83813d57c224f77dd1472141))
|
||||||
|
* Revert "chore: Rename sidebar item injectable files" ([cb0e876](https://github.com/lensapp/lens/commit/cb0e8764aca9e0d28e6e23c5ae87a5ab6d414065))
|
||||||
|
* Revert "chore: Convert sidebarItemInjectionToken to use InjectWithMetadata instead of duplicating the IDs" ([93bc41f](https://github.com/lensapp/lens/commit/93bc41f9a3f47f5c777c882c9241f4fd5e3f1952))
|
||||||
|
* Revert "chore: Fixup tests snapshots to match new testid behaviour" ([9276df0](https://github.com/lensapp/lens/commit/9276df05924794d30d7d97bc79cf701a6106e8ec))
|
||||||
|
* Revert "chore: Fix lint" ([d90bdf6](https://github.com/lensapp/lens/commit/d90bdf6f1497cb25f17788a4170feba31d366b74))
|
||||||
|
* Revert "chore: Fix more lint" ([813705f](https://github.com/lensapp/lens/commit/813705fe9097012cd7fc62a8d543d1f7bc2be2ed))
|
||||||
|
* Revert "chore: Fix IDs for some sidebar items" ([753c8bf](https://github.com/lensapp/lens/commit/753c8bfa85ccc74980553bb512b5038ff18767a2))
|
||||||
|
* Revert "chore: Improve title formatting for Horizontal/Vertical Pod Autoscalers" ([d4c12be](https://github.com/lensapp/lens/commit/d4c12becfc9020009d64f48e4c8f9dd3b7725bb6))
|
||||||
|
* Revert "fix: Fix formatting of custom resource sidebar items" ([5608a19](https://github.com/lensapp/lens/commit/5608a199be1067039403b85abe776fab928a956c))
|
||||||
|
* Revert "chore: Fix integration tests failing due to helm testid's changing" ([96b7ecb](https://github.com/lensapp/lens/commit/96b7ecbaddedd45cc667cc2d6c25fdc0813557ec))
|
||||||
|
* Revert "chore: Fix tests after rebase" ([1b43de5](https://github.com/lensapp/lens/commit/1b43de50fe6431367bf259799f5e0b42f6b38ad9))
|
||||||
|
* Revert "fix: Custom Resource Definitions should be the first entry in the side bar" ([1099e65](https://github.com/lensapp/lens/commit/1099e65c52c62153b3d28d0654fffaaa6f6715a7))
|
||||||
|
* Revert "fix: Custom Resource Definitions sidebar item should navigate to the correct route" ([7d46cb8](https://github.com/lensapp/lens/commit/7d46cb845d0f1748c0f83a8dc34bbe783270ca2c))
|
||||||
|
* Revert "chore: Cleanup custom resource route definition" ([40f1180](https://github.com/lensapp/lens/commit/40f118057925a3b946f5dcc60162bad7e8b12e58))
|
||||||
|
* Revert "chore: Factor out NavigateToCustomResources type" ([d3cf708](https://github.com/lensapp/lens/commit/d3cf7088d6c37860984ce0295a3d8a5c528c2a66))
|
||||||
|
* Revert "chore: Move around Custom Resource and Custom Resource Definition files to simplify names" ([5f4cdbc](https://github.com/lensapp/lens/commit/5f4cdbc51950c04804139e9b961cfe394ad4ae30))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.13 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Switch to using IAsyncComputed to resolve bad setState error within ClusterOverview from react ([4f8e470](https://github.com/lensapp/lens/commit/4f8e4707f929eee04ff1345c9e93f00d50ac0a92))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.12 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Don't crash when hovering hotbar menu index ([9d51ef2](https://github.com/lensapp/lens/commit/9d51ef2aa69c6c9df0fd57281b25131a10efd27a))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.11 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Add test as repro, and fix bug about kube API details not opening ([bb400ae](https://github.com/lensapp/lens/commit/bb400ae66797fe160567e6b728d85d5e79caef4d))
|
||||||
|
* Bring back search filters for pods which were accidentally removed previously ([9c7be39](https://github.com/lensapp/lens/commit/9c7be39eb135b747945f76f61811695d2f96c761))
|
||||||
|
* Do not crash when opening details of a helm release ([40af0d3](https://github.com/lensapp/lens/commit/40af0d31c529e252a45c7370852755c4e63067a7))
|
||||||
|
* Kludge cluster settings not opening when extension introduces new settings without ID when title contains spaces ([e8491ca](https://github.com/lensapp/lens/commit/e8491ca2d39971d06842f6741eae042554fbc9a0))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.10 (2023-05-09)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.9 (2023-05-04)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Add checks to KubeObject constructor to ensure shape ([bf6af58](https://github.com/lensapp/lens/commit/bf6af58d80552a16be7a547f772902b138a12fbd))
|
||||||
|
* add routingFeature to getDiForUnitTesting ([b33a8b4](https://github.com/lensapp/lens/commit/b33a8b49607935450f70b1d5535431ba416fc22e))
|
||||||
|
* change class name behaviour to limit snapshot diffs ([bfb2b8e](https://github.com/lensapp/lens/commit/bfb2b8e6591891b529d5cf0f8757ff8b7080e004))
|
||||||
|
* **core:** hide update button if downloading of an update fails ([f697742](https://github.com/lensapp/lens/commit/f6977428daa3f61482e7066689ebf7092b0fb2b1))
|
||||||
|
* Fix selfLink being missing from requestKubeResource ([b90e04e](https://github.com/lensapp/lens/commit/b90e04e02dfd18896d5f08f1bc36f90179635797))
|
||||||
|
* lint:fix ([76c11aa](https://github.com/lensapp/lens/commit/76c11aa697e3ada81c876fe8a3ac6e33b4ce8cb9))
|
||||||
|
* observableHistoryInjectionToken and 1 revert for GlobalOverride ([8c0220c](https://github.com/lensapp/lens/commit/8c0220c353c9047a2a4df570b598c31868b5f7e2))
|
||||||
|
* Only show Update Channel preferences when applicable ([43cedae](https://github.com/lensapp/lens/commit/43cedae7b05eaa7f932f2718939f7b856a1b86c5))
|
||||||
|
* Remove incorrect timeout on standard info notifications ([bcf95a6](https://github.com/lensapp/lens/commit/bcf95a65f1d2be91fa613f0da9d0ae978faaef75))
|
||||||
|
* removed as-legacy-globals-for-extension-api ([f1f2634](https://github.com/lensapp/lens/commit/f1f26344900b99c70b2bed2f453ed27574d7b417))
|
||||||
|
* removed dependencies: [reactApplicationFeature], ([0dae159](https://github.com/lensapp/lens/commit/0dae1594baabbd06e798f9a1b4c132cee998bb65))
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* Add deleting subNamespaces to contextMenu ([89cf491](https://github.com/lensapp/lens/commit/89cf491bc0aa80ee398f8b5dc39ec7c69d00c7bb))
|
||||||
|
* Add removing subNamespaces to Namespace route ([aa95002](https://github.com/lensapp/lens/commit/aa950026a3162abf6322afb4b5c5bf56f9f7e10f))
|
||||||
|
* Adjust container status colors to be distinguable with red/green filter ([#7621](https://github.com/lensapp/lens/issues/7621)) ([3532fc1](https://github.com/lensapp/lens/commit/3532fc1dab918190fa76199a9d7b04d6efe40c47))
|
||||||
|
* Compute the kubectl download version map at build time ([0bd7b1f](https://github.com/lensapp/lens/commit/0bd7b1fe92a173379c8a5a1ab7e13cf9e4f8223b))
|
||||||
|
* Improve formatting error messages from apiKube ([3439472](https://github.com/lensapp/lens/commit/3439472065e6b850e286f6a34bccc23b827b8e28))
|
||||||
|
* Introduce API for changing the status bar colour ([06a0dce](https://github.com/lensapp/lens/commit/06a0dce612b67084f8f36ba552ea23f8ac071201))
|
||||||
|
* Introduce injectables to remove subNamespaces ([c557225](https://github.com/lensapp/lens/commit/c5572257bd6a32a2f05fc78f54ece428f54389fe))
|
||||||
|
* Never auto-close error notifications ([561d8db](https://github.com/lensapp/lens/commit/561d8dbc09581ff21aa79e85f3903c45e99ac33b))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.6 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.5 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.4 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Fix tests by recreating non-specific injection token ([c0ebe60](https://github.com/lensapp/lens/commit/c0ebe605c4d36c0d98454e25565818f75ffb1b69))
|
||||||
|
* Referencing apiManager should not throw ([#7468](https://github.com/lensapp/lens/issues/7468)) ([351f9d4](https://github.com/lensapp/lens/commit/351f9d492f6e52e9e97d17d71e2bbdbbde4ea2db))
|
||||||
|
* remove platform specific injectable file names ([9b0318b](https://github.com/lensapp/lens/commit/9b0318b493fe2e49a34b8a4cb3d0bef1600759b8))
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* Allow built versions to specify an environment ([#7495](https://github.com/lensapp/lens/issues/7495)) ([128b05d](https://github.com/lensapp/lens/commit/128b05d4d46344a511398f654865c133c6e36514))
|
||||||
|
|
||||||
|
|
||||||
|
### Reverts
|
||||||
|
|
||||||
|
* Revert "Renderer file logging through IPC" (#7393) ([5409324](https://github.com/lensapp/lens/commit/54093242367717292312df01905d052b66017953)), closes [#7393](https://github.com/lensapp/lens/issues/7393)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.3 (2023-03-15)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.2 (2023-03-14)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.1 (2023-03-14)
|
||||||
|
|
||||||
|
|
||||||
|
### Reverts
|
||||||
|
|
||||||
|
* Revert "Renderer file logging transport (#6795)" (#7245) ([ec81af4](https://github.com/lensapp/lens/commit/ec81af4e6c5f8d0c25469a56dfa602894f85734b)), closes [#6795](https://github.com/lensapp/lens/issues/6795) [#7245](https://github.com/lensapp/lens/issues/7245) [#544](https://github.com/lensapp/lens/issues/544)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.13 (2023-02-03)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.12 (2023-02-01)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.11 (2023-02-01)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.10 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.9 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.8 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.7 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.6 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.5 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.4 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.3 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.13 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Switch to using IAsyncComputed to resolve bad setState error within ClusterOverview from react ([4f8e470](https://github.com/lensapp/lens/commit/4f8e4707f929eee04ff1345c9e93f00d50ac0a92))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.12 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Don't crash when hovering hotbar menu index ([9d51ef2](https://github.com/lensapp/lens/commit/9d51ef2aa69c6c9df0fd57281b25131a10efd27a))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.11 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Add test as repro, and fix bug about kube API details not opening ([bb400ae](https://github.com/lensapp/lens/commit/bb400ae66797fe160567e6b728d85d5e79caef4d))
|
||||||
|
* Bring back search filters for pods which were accidentally removed previously ([9c7be39](https://github.com/lensapp/lens/commit/9c7be39eb135b747945f76f61811695d2f96c761))
|
||||||
|
* Do not crash when opening details of a helm release ([40af0d3](https://github.com/lensapp/lens/commit/40af0d31c529e252a45c7370852755c4e63067a7))
|
||||||
|
* Kludge cluster settings not opening when extension introduces new settings without ID when title contains spaces ([e8491ca](https://github.com/lensapp/lens/commit/e8491ca2d39971d06842f6741eae042554fbc9a0))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.10 (2023-05-09)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.9 (2023-05-04)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Add checks to KubeObject constructor to ensure shape ([bf6af58](https://github.com/lensapp/lens/commit/bf6af58d80552a16be7a547f772902b138a12fbd))
|
||||||
|
* add routingFeature to getDiForUnitTesting ([b33a8b4](https://github.com/lensapp/lens/commit/b33a8b49607935450f70b1d5535431ba416fc22e))
|
||||||
|
* change class name behaviour to limit snapshot diffs ([bfb2b8e](https://github.com/lensapp/lens/commit/bfb2b8e6591891b529d5cf0f8757ff8b7080e004))
|
||||||
|
* **core:** hide update button if downloading of an update fails ([f697742](https://github.com/lensapp/lens/commit/f6977428daa3f61482e7066689ebf7092b0fb2b1))
|
||||||
|
* Fix selfLink being missing from requestKubeResource ([b90e04e](https://github.com/lensapp/lens/commit/b90e04e02dfd18896d5f08f1bc36f90179635797))
|
||||||
|
* lint:fix ([76c11aa](https://github.com/lensapp/lens/commit/76c11aa697e3ada81c876fe8a3ac6e33b4ce8cb9))
|
||||||
|
* observableHistoryInjectionToken and 1 revert for GlobalOverride ([8c0220c](https://github.com/lensapp/lens/commit/8c0220c353c9047a2a4df570b598c31868b5f7e2))
|
||||||
|
* Only show Update Channel preferences when applicable ([43cedae](https://github.com/lensapp/lens/commit/43cedae7b05eaa7f932f2718939f7b856a1b86c5))
|
||||||
|
* Remove incorrect timeout on standard info notifications ([bcf95a6](https://github.com/lensapp/lens/commit/bcf95a65f1d2be91fa613f0da9d0ae978faaef75))
|
||||||
|
* removed as-legacy-globals-for-extension-api ([f1f2634](https://github.com/lensapp/lens/commit/f1f26344900b99c70b2bed2f453ed27574d7b417))
|
||||||
|
* removed dependencies: [reactApplicationFeature], ([0dae159](https://github.com/lensapp/lens/commit/0dae1594baabbd06e798f9a1b4c132cee998bb65))
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* Add deleting subNamespaces to contextMenu ([89cf491](https://github.com/lensapp/lens/commit/89cf491bc0aa80ee398f8b5dc39ec7c69d00c7bb))
|
||||||
|
* Add removing subNamespaces to Namespace route ([aa95002](https://github.com/lensapp/lens/commit/aa950026a3162abf6322afb4b5c5bf56f9f7e10f))
|
||||||
|
* Adjust container status colors to be distinguable with red/green filter ([#7621](https://github.com/lensapp/lens/issues/7621)) ([3532fc1](https://github.com/lensapp/lens/commit/3532fc1dab918190fa76199a9d7b04d6efe40c47))
|
||||||
|
* Compute the kubectl download version map at build time ([0bd7b1f](https://github.com/lensapp/lens/commit/0bd7b1fe92a173379c8a5a1ab7e13cf9e4f8223b))
|
||||||
|
* Improve formatting error messages from apiKube ([3439472](https://github.com/lensapp/lens/commit/3439472065e6b850e286f6a34bccc23b827b8e28))
|
||||||
|
* Introduce API for changing the status bar colour ([06a0dce](https://github.com/lensapp/lens/commit/06a0dce612b67084f8f36ba552ea23f8ac071201))
|
||||||
|
* Introduce injectables to remove subNamespaces ([c557225](https://github.com/lensapp/lens/commit/c5572257bd6a32a2f05fc78f54ece428f54389fe))
|
||||||
|
* Never auto-close error notifications ([561d8db](https://github.com/lensapp/lens/commit/561d8dbc09581ff21aa79e85f3903c45e99ac33b))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.6 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.5 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.4 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Fix tests by recreating non-specific injection token ([c0ebe60](https://github.com/lensapp/lens/commit/c0ebe605c4d36c0d98454e25565818f75ffb1b69))
|
||||||
|
* Referencing apiManager should not throw ([#7468](https://github.com/lensapp/lens/issues/7468)) ([351f9d4](https://github.com/lensapp/lens/commit/351f9d492f6e52e9e97d17d71e2bbdbbde4ea2db))
|
||||||
|
* remove platform specific injectable file names ([9b0318b](https://github.com/lensapp/lens/commit/9b0318b493fe2e49a34b8a4cb3d0bef1600759b8))
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* Allow built versions to specify an environment ([#7495](https://github.com/lensapp/lens/issues/7495)) ([128b05d](https://github.com/lensapp/lens/commit/128b05d4d46344a511398f654865c133c6e36514))
|
||||||
|
|
||||||
|
|
||||||
|
### Reverts
|
||||||
|
|
||||||
|
* Revert "Renderer file logging through IPC" (#7393) ([5409324](https://github.com/lensapp/lens/commit/54093242367717292312df01905d052b66017953)), closes [#7393](https://github.com/lensapp/lens/issues/7393)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.3 (2023-03-15)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.2 (2023-03-14)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.1 (2023-03-14)
|
||||||
|
|
||||||
|
|
||||||
|
### Reverts
|
||||||
|
|
||||||
|
* Revert "Renderer file logging transport (#6795)" (#7245) ([ec81af4](https://github.com/lensapp/lens/commit/ec81af4e6c5f8d0c25469a56dfa602894f85734b)), closes [#6795](https://github.com/lensapp/lens/issues/6795) [#7245](https://github.com/lensapp/lens/issues/7245) [#544](https://github.com/lensapp/lens/issues/544)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.13 (2023-02-03)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.12 (2023-02-01)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.11 (2023-02-01)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.10 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.9 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.8 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.7 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.6 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.5 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.4 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.3 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.12 (2023-05-16)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Don't crash when hovering hotbar menu index ([9d51ef2](https://github.com/lensapp/lens/commit/9d51ef2aa69c6c9df0fd57281b25131a10efd27a))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.11 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Add test as repro, and fix bug about kube API details not opening ([bb400ae](https://github.com/lensapp/lens/commit/bb400ae66797fe160567e6b728d85d5e79caef4d))
|
||||||
|
* Bring back search filters for pods which were accidentally removed previously ([9c7be39](https://github.com/lensapp/lens/commit/9c7be39eb135b747945f76f61811695d2f96c761))
|
||||||
|
* Do not crash when opening details of a helm release ([40af0d3](https://github.com/lensapp/lens/commit/40af0d31c529e252a45c7370852755c4e63067a7))
|
||||||
|
* Kludge cluster settings not opening when extension introduces new settings without ID when title contains spaces ([e8491ca](https://github.com/lensapp/lens/commit/e8491ca2d39971d06842f6741eae042554fbc9a0))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.10 (2023-05-09)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.9 (2023-05-04)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Add checks to KubeObject constructor to ensure shape ([bf6af58](https://github.com/lensapp/lens/commit/bf6af58d80552a16be7a547f772902b138a12fbd))
|
||||||
|
* add routingFeature to getDiForUnitTesting ([b33a8b4](https://github.com/lensapp/lens/commit/b33a8b49607935450f70b1d5535431ba416fc22e))
|
||||||
|
* change class name behaviour to limit snapshot diffs ([bfb2b8e](https://github.com/lensapp/lens/commit/bfb2b8e6591891b529d5cf0f8757ff8b7080e004))
|
||||||
|
* **core:** hide update button if downloading of an update fails ([f697742](https://github.com/lensapp/lens/commit/f6977428daa3f61482e7066689ebf7092b0fb2b1))
|
||||||
|
* Fix selfLink being missing from requestKubeResource ([b90e04e](https://github.com/lensapp/lens/commit/b90e04e02dfd18896d5f08f1bc36f90179635797))
|
||||||
|
* lint:fix ([76c11aa](https://github.com/lensapp/lens/commit/76c11aa697e3ada81c876fe8a3ac6e33b4ce8cb9))
|
||||||
|
* observableHistoryInjectionToken and 1 revert for GlobalOverride ([8c0220c](https://github.com/lensapp/lens/commit/8c0220c353c9047a2a4df570b598c31868b5f7e2))
|
||||||
|
* Only show Update Channel preferences when applicable ([43cedae](https://github.com/lensapp/lens/commit/43cedae7b05eaa7f932f2718939f7b856a1b86c5))
|
||||||
|
* Remove incorrect timeout on standard info notifications ([bcf95a6](https://github.com/lensapp/lens/commit/bcf95a65f1d2be91fa613f0da9d0ae978faaef75))
|
||||||
|
* removed as-legacy-globals-for-extension-api ([f1f2634](https://github.com/lensapp/lens/commit/f1f26344900b99c70b2bed2f453ed27574d7b417))
|
||||||
|
* removed dependencies: [reactApplicationFeature], ([0dae159](https://github.com/lensapp/lens/commit/0dae1594baabbd06e798f9a1b4c132cee998bb65))
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* Add deleting subNamespaces to contextMenu ([89cf491](https://github.com/lensapp/lens/commit/89cf491bc0aa80ee398f8b5dc39ec7c69d00c7bb))
|
||||||
|
* Add removing subNamespaces to Namespace route ([aa95002](https://github.com/lensapp/lens/commit/aa950026a3162abf6322afb4b5c5bf56f9f7e10f))
|
||||||
|
* Adjust container status colors to be distinguable with red/green filter ([#7621](https://github.com/lensapp/lens/issues/7621)) ([3532fc1](https://github.com/lensapp/lens/commit/3532fc1dab918190fa76199a9d7b04d6efe40c47))
|
||||||
|
* Compute the kubectl download version map at build time ([0bd7b1f](https://github.com/lensapp/lens/commit/0bd7b1fe92a173379c8a5a1ab7e13cf9e4f8223b))
|
||||||
|
* Improve formatting error messages from apiKube ([3439472](https://github.com/lensapp/lens/commit/3439472065e6b850e286f6a34bccc23b827b8e28))
|
||||||
|
* Introduce API for changing the status bar colour ([06a0dce](https://github.com/lensapp/lens/commit/06a0dce612b67084f8f36ba552ea23f8ac071201))
|
||||||
|
* Introduce injectables to remove subNamespaces ([c557225](https://github.com/lensapp/lens/commit/c5572257bd6a32a2f05fc78f54ece428f54389fe))
|
||||||
|
* Never auto-close error notifications ([561d8db](https://github.com/lensapp/lens/commit/561d8dbc09581ff21aa79e85f3903c45e99ac33b))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.6 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.5 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.4 (2023-04-12)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Fix tests by recreating non-specific injection token ([c0ebe60](https://github.com/lensapp/lens/commit/c0ebe605c4d36c0d98454e25565818f75ffb1b69))
|
||||||
|
* Referencing apiManager should not throw ([#7468](https://github.com/lensapp/lens/issues/7468)) ([351f9d4](https://github.com/lensapp/lens/commit/351f9d492f6e52e9e97d17d71e2bbdbbde4ea2db))
|
||||||
|
* remove platform specific injectable file names ([9b0318b](https://github.com/lensapp/lens/commit/9b0318b493fe2e49a34b8a4cb3d0bef1600759b8))
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* Allow built versions to specify an environment ([#7495](https://github.com/lensapp/lens/issues/7495)) ([128b05d](https://github.com/lensapp/lens/commit/128b05d4d46344a511398f654865c133c6e36514))
|
||||||
|
|
||||||
|
|
||||||
|
### Reverts
|
||||||
|
|
||||||
|
* Revert "Renderer file logging through IPC" (#7393) ([5409324](https://github.com/lensapp/lens/commit/54093242367717292312df01905d052b66017953)), closes [#7393](https://github.com/lensapp/lens/issues/7393)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.3 (2023-03-15)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.2 (2023-03-14)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.5.0-alpha.1 (2023-03-14)
|
||||||
|
|
||||||
|
|
||||||
|
### Reverts
|
||||||
|
|
||||||
|
* Revert "Renderer file logging transport (#6795)" (#7245) ([ec81af4](https://github.com/lensapp/lens/commit/ec81af4e6c5f8d0c25469a56dfa602894f85734b)), closes [#6795](https://github.com/lensapp/lens/issues/6795) [#7245](https://github.com/lensapp/lens/issues/7245) [#544](https://github.com/lensapp/lens/issues/544)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.13 (2023-02-03)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.12 (2023-02-01)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.11 (2023-02-01)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.10 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.9 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.8 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.7 (2023-01-27)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.6 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.5 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.4 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 6.4.0-beta.3 (2023-01-26)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# 6.5.0-alpha.11 (2023-05-11)
|
# 6.5.0-alpha.11 (2023-05-11)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -3,7 +3,7 @@
|
|||||||
"productName": "",
|
"productName": "",
|
||||||
"description": "Lens Desktop Core",
|
"description": "Lens Desktop Core",
|
||||||
"homepage": "https://github.com/lensapp/lens",
|
"homepage": "https://github.com/lensapp/lens",
|
||||||
"version": "6.5.0-alpha.11",
|
"version": "6.5.0",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git+https://github.com/lensapp/lens.git"
|
"url": "git+https://github.com/lensapp/lens.git"
|
||||||
@ -24,8 +24,7 @@
|
|||||||
"./styles": "./static/build/library/renderer.css",
|
"./styles": "./static/build/library/renderer.css",
|
||||||
"./template.html": "./src/renderer/template.html",
|
"./template.html": "./src/renderer/template.html",
|
||||||
"./vars.scss": "./src/renderer/components/vars.scss",
|
"./vars.scss": "./src/renderer/components/vars.scss",
|
||||||
"./fonts": "./static/build/library/fonts",
|
"./fonts": "./static/build/library/fonts"
|
||||||
"./icons/*.svg": "./src/renderer/components/icon/*.svg"
|
|
||||||
},
|
},
|
||||||
"typesVersions": {
|
"typesVersions": {
|
||||||
"*": {
|
"*": {
|
||||||
@ -44,7 +43,6 @@
|
|||||||
"static/build/library/**/*",
|
"static/build/library/**/*",
|
||||||
"src/renderer/template.html",
|
"src/renderer/template.html",
|
||||||
"src/renderer/components/vars.scss",
|
"src/renderer/components/vars.scss",
|
||||||
"src/renderer/components/icon/*.svg",
|
|
||||||
"types/*",
|
"types/*",
|
||||||
"tsconfig.json"
|
"tsconfig.json"
|
||||||
],
|
],
|
||||||
@ -102,97 +100,14 @@
|
|||||||
],
|
],
|
||||||
"runtime": "@side/jest-runtime"
|
"runtime": "@side/jest-runtime"
|
||||||
},
|
},
|
||||||
"nx": {
|
|
||||||
"targets": {
|
|
||||||
"build": {
|
|
||||||
"dependsOn": [
|
|
||||||
"^build"
|
|
||||||
],
|
|
||||||
"outputs": [
|
|
||||||
"{workspaceRoot}/static/build/"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"@astronautlabs/jsonpath": "^1.1.0",
|
|
||||||
"@hapi/call": "^9.0.1",
|
|
||||||
"@hapi/subtext": "^7.1.0",
|
|
||||||
"@k8slens/list-layout": "^1.0.0-alpha.3",
|
|
||||||
"@k8slens/metrics": "^6.5.0-alpha.6",
|
|
||||||
"@k8slens/node-fetch": "^6.5.0-alpha.3",
|
|
||||||
"@k8slens/react-application": "^1.0.0-alpha.4",
|
|
||||||
"@k8slens/resource-templates": "^1.0.0-alpha.1",
|
|
||||||
"@kubernetes/client-node": "^0.18.1",
|
|
||||||
"@material-ui/styles": "^4.11.5",
|
|
||||||
"@sentry/electron": "^3.0.8",
|
|
||||||
"@sentry/integrations": "^6.19.3",
|
|
||||||
"@side/jest-runtime": "^1.1.0",
|
|
||||||
"auto-bind": "^4.0.0",
|
|
||||||
"await-lock": "^2.2.2",
|
|
||||||
"byline": "^5.0.0",
|
|
||||||
"chokidar": "^3.5.3",
|
|
||||||
"conf": "^10.2.0",
|
|
||||||
"crypto-js": "^4.1.1",
|
|
||||||
"electron-devtools-installer": "^3.2.0",
|
|
||||||
"electron-updater": "^4.6.5",
|
|
||||||
"electron-window-state": "^5.0.3",
|
|
||||||
"filehound": "^1.17.6",
|
|
||||||
"fs-extra": "^9.0.1",
|
|
||||||
"glob-to-regexp": "^0.4.1",
|
|
||||||
"grapheme-splitter": "^1.0.4",
|
|
||||||
"handlebars": "^4.7.7",
|
|
||||||
"history": "^4.10.1",
|
|
||||||
"hpagent": "^1.2.0",
|
|
||||||
"http-proxy": "^1.18.1",
|
|
||||||
"immer": "^9.0.21",
|
|
||||||
"joi": "^17.9.1",
|
|
||||||
"js-yaml": "^4.1.0",
|
|
||||||
"lodash": "^4.17.15",
|
|
||||||
"marked": "^4.2.12",
|
|
||||||
"md5-file": "^5.0.0",
|
|
||||||
"mobx": "^6.8.0",
|
|
||||||
"mobx-observable-history": "^2.0.3",
|
|
||||||
"mobx-react": "^7.6.0",
|
|
||||||
"mobx-utils": "^6.0.4",
|
|
||||||
"moment": "^2.29.4",
|
|
||||||
"moment-timezone": "^0.5.40",
|
|
||||||
"node-pty": "0.10.1",
|
|
||||||
"npm": "^9.6.5",
|
|
||||||
"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.11",
|
|
||||||
"react-router": "^5.3.4",
|
|
||||||
"react-virtualized-auto-sizer": "^1.0.7",
|
|
||||||
"readable-stream": "^3.6.0",
|
|
||||||
"rfc6902": "^5.0.1",
|
|
||||||
"selfsigned": "^2.1.1",
|
|
||||||
"semver": "^7.3.8",
|
|
||||||
"stoppable": "^1.1.0",
|
|
||||||
"tar": "^6.1.13",
|
|
||||||
"tcp-port-used": "^1.0.2",
|
|
||||||
"tempy": "1.0.1",
|
|
||||||
"typed-regex": "^0.0.8",
|
|
||||||
"url-parse": "^1.5.10",
|
|
||||||
"uuid": "^8.3.2",
|
|
||||||
"win-ca": "^3.5.0",
|
|
||||||
"winston": "^3.8.2",
|
|
||||||
"winston-transport-browserconsole": "^1.0.5",
|
|
||||||
"ws": "^8.12.1",
|
|
||||||
"xterm-link-provider": "^1.3.1"
|
|
||||||
},
|
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@async-fn/jest": "1.6.4",
|
"@async-fn/jest": "1.6.4",
|
||||||
"@k8slens/messaging-fake-bridge": "^1.0.0-alpha.5",
|
"@k8slens/messaging-fake-bridge": "^1.0.0",
|
||||||
"@k8slens/react-testing-library-discovery": "^1.0.0-alpha.4",
|
"@k8slens/react-testing-library-discovery": "^1.0.0",
|
||||||
"@material-ui/core": "^4.12.3",
|
"@k8slens/test-utils": "^1.0.0",
|
||||||
"@material-ui/icons": "^4.11.2",
|
"@ogre-tools/linkable": "^17.2.0",
|
||||||
"@material-ui/lab": "^4.0.0-alpha.60",
|
|
||||||
"@ogre-tools/linkable": "^15.8.1",
|
|
||||||
"@sentry/types": "^6.19.7",
|
"@sentry/types": "^6.19.7",
|
||||||
|
"@side/jest-runtime": "^1.1.0",
|
||||||
"@swc/cli": "^0.1.62",
|
"@swc/cli": "^0.1.62",
|
||||||
"@swc/core": "^1.3.53",
|
"@swc/core": "^1.3.53",
|
||||||
"@swc/jest": "^0.2.26",
|
"@swc/jest": "^0.2.26",
|
||||||
@ -240,24 +155,14 @@
|
|||||||
"@types/url-parse": "^1.4.8",
|
"@types/url-parse": "^1.4.8",
|
||||||
"@types/uuid": "^8.3.4",
|
"@types/uuid": "^8.3.4",
|
||||||
"@types/webpack": "^5.28.1",
|
"@types/webpack": "^5.28.1",
|
||||||
"@types/webpack-dev-server": "^4.7.2",
|
|
||||||
"@types/webpack-env": "^1.18.0",
|
"@types/webpack-env": "^1.18.0",
|
||||||
"@types/webpack-node-externals": "^2.5.3",
|
"@types/webpack-node-externals": "^2.5.3",
|
||||||
"@typescript-eslint/eslint-plugin": "^5.59.1",
|
"@typescript-eslint/eslint-plugin": "^5.59.1",
|
||||||
"@typescript-eslint/parser": "^5.59.1",
|
"@typescript-eslint/parser": "^5.59.1",
|
||||||
"adr": "^1.4.3",
|
|
||||||
"ansi_up": "^5.2.1",
|
|
||||||
"chalk": "^4.1.2",
|
|
||||||
"chart.js": "^2.9.4",
|
|
||||||
"circular-dependency-plugin": "^5.2.2",
|
"circular-dependency-plugin": "^5.2.2",
|
||||||
"color": "^3.2.1",
|
|
||||||
"command-line-args": "^5.2.1",
|
|
||||||
"concurrently": "^7.6.0",
|
"concurrently": "^7.6.0",
|
||||||
"cross-env": "^7.0.3",
|
"cross-env": "^7.0.3",
|
||||||
"css-loader": "^6.7.3",
|
"css-loader": "^6.7.3",
|
||||||
"deepdash": "^5.3.9",
|
|
||||||
"dompurify": "^2.4.4",
|
|
||||||
"electron": "^22.3.7",
|
|
||||||
"electron-builder": "^23.6.0",
|
"electron-builder": "^23.6.0",
|
||||||
"esbuild": "^0.17.8",
|
"esbuild": "^0.17.8",
|
||||||
"esbuild-loader": "^2.21.0",
|
"esbuild-loader": "^2.21.0",
|
||||||
@ -269,98 +174,151 @@
|
|||||||
"eslint-plugin-react-hooks": "^4.6.0",
|
"eslint-plugin-react-hooks": "^4.6.0",
|
||||||
"eslint-plugin-unused-imports": "^2.0.0",
|
"eslint-plugin-unused-imports": "^2.0.0",
|
||||||
"fork-ts-checker-webpack-plugin": "^7.3.0",
|
"fork-ts-checker-webpack-plugin": "^7.3.0",
|
||||||
"identity-obj-proxy": "^3.0.0",
|
|
||||||
"ignore-loader": "^0.1.2",
|
"ignore-loader": "^0.1.2",
|
||||||
"include-media": "^1.4.9",
|
"include-media": "^1.4.10",
|
||||||
"jest": "^29.5.0",
|
"jest": "^29.5.0",
|
||||||
"jest-canvas-mock": "^2.3.1",
|
"jest-canvas-mock": "^2.3.1",
|
||||||
"jest-environment-jsdom": "^28.1.3",
|
"jest-environment-jsdom": "^28.1.3",
|
||||||
"jest-mock-extended": "^2.0.9",
|
"jest-mock-extended": "^2.0.9",
|
||||||
"make-plural": "^6.2.2",
|
|
||||||
"memfs": "^3.5.1",
|
"memfs": "^3.5.1",
|
||||||
"memorystream": "^0.3.1",
|
"memorystream": "^0.3.1",
|
||||||
"mini-css-extract-plugin": "^2.7.2",
|
"mini-css-extract-plugin": "^2.7.2",
|
||||||
"mock-http": "^1.1.0",
|
"mock-http": "^1.1.0",
|
||||||
"monaco-editor": "^0.37.1",
|
|
||||||
"monaco-editor-webpack-plugin": "^7.0.1",
|
"monaco-editor-webpack-plugin": "^7.0.1",
|
||||||
"node-gyp": "^8.3.0",
|
|
||||||
"node-loader": "^2.0.0",
|
"node-loader": "^2.0.0",
|
||||||
"nodemon": "^2.0.20",
|
"nodemon": "^2.0.20",
|
||||||
"postcss": "^8.4.23",
|
|
||||||
"postcss-loader": "^6.2.1",
|
"postcss-loader": "^6.2.1",
|
||||||
"query-string": "^7.1.3",
|
|
||||||
"randomcolor": "^0.6.2",
|
|
||||||
"react-beautiful-dnd": "^13.1.1",
|
|
||||||
"react-refresh": "^0.14.0",
|
|
||||||
"react-refresh-typescript": "^2.0.7",
|
|
||||||
"react-router-dom": "^5.3.4",
|
|
||||||
"react-select": "^5.7.0",
|
|
||||||
"react-select-event": "^5.5.1",
|
|
||||||
"react-table": "^7.8.0",
|
|
||||||
"react-window": "^1.8.8",
|
|
||||||
"rimraf": "^4.4.1",
|
"rimraf": "^4.4.1",
|
||||||
"sass": "^1.62.1",
|
|
||||||
"sass-loader": "^12.6.0",
|
"sass-loader": "^12.6.0",
|
||||||
"style-loader": "^3.3.1",
|
"style-loader": "^3.3.1",
|
||||||
"tailwindcss": "^3.3.2",
|
"tailwindcss": "^3.3.2",
|
||||||
"ts-loader": "^9.4.2",
|
"ts-loader": "^9.4.2",
|
||||||
"ts-node": "^10.9.1",
|
"ts-node": "^10.9.1",
|
||||||
"type-fest": "^2.14.0",
|
|
||||||
"typed-emitter": "^1.4.0",
|
|
||||||
"typedoc": "^0.24.6",
|
"typedoc": "^0.24.6",
|
||||||
"typedoc-plugin-markdown": "^3.15.1",
|
"typedoc-plugin-markdown": "^3.15.1",
|
||||||
"typescript": "^4.9.5",
|
"typescript": "^4.9.5",
|
||||||
"typescript-plugin-css-modules": "^3.4.0",
|
"typescript-plugin-css-modules": "^5.0.1",
|
||||||
"webpack": "^5.81.0",
|
"webpack": "^5.81.0",
|
||||||
"webpack-cli": "^4.9.2",
|
"webpack-cli": "^4.9.2",
|
||||||
"webpack-dev-server": "^4.13.3",
|
"webpack-dev-server": "^4.13.3",
|
||||||
"webpack-node-externals": "^3.0.0",
|
"webpack-node-externals": "^3.0.0"
|
||||||
"xterm": "4.17.0",
|
|
||||||
"xterm-addon-fit": "^0.5.0"
|
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
|
"@hapi/call": "^9.0.1",
|
||||||
|
"@hapi/subtext": "^7.1.0",
|
||||||
|
"@k8slens/animate": "^1.0.0-alpha.0",
|
||||||
|
"@k8slens/notifications": "^1.0.0",
|
||||||
"@k8slens/application": "^6.5.0-alpha.0",
|
"@k8slens/application": "^6.5.0-alpha.0",
|
||||||
"@k8slens/application-for-electron-main": "^6.5.0-alpha.0",
|
"@k8slens/application-for-electron-main": "^6.5.0-alpha.0",
|
||||||
"@k8slens/button": "^1.0.0-alpha.5",
|
"@k8slens/button": "^1.0.0-alpha.5",
|
||||||
"@k8slens/cluster-settings": "^6.5.0-alpha.1",
|
"@k8slens/cluster-settings": "^6.5.0-alpha.1",
|
||||||
|
"@k8slens/cluster-sidebar": "^1.0.0",
|
||||||
"@k8slens/error-boundary": "^1.0.0-alpha.5",
|
"@k8slens/error-boundary": "^1.0.0-alpha.5",
|
||||||
"@k8slens/event-emitter": "^1.0.0-alpha.1",
|
"@k8slens/event-emitter": "^1.0.0-alpha.1",
|
||||||
|
"@k8slens/icon": "^1.0.0-alpha.7",
|
||||||
|
"@k8slens/kube-api": "^1.0.0-alpha.1",
|
||||||
|
"@k8slens/kube-api-specifics": "^1.0.0-alpha.1",
|
||||||
|
"@k8slens/kube-object": "^1.0.0-alpha.5",
|
||||||
"@k8slens/kubectl-versions": "^1.0.0-alpha.0",
|
"@k8slens/kubectl-versions": "^1.0.0-alpha.0",
|
||||||
"@k8slens/legacy-extensions": "^1.0.0-alpha.0",
|
"@k8slens/legacy-extensions": "^1.0.0-alpha.0",
|
||||||
"@k8slens/legacy-global-di": "^1.0.0-alpha.0",
|
"@k8slens/legacy-global-di": "^1.0.0-alpha.0",
|
||||||
|
"@k8slens/list-layout": "^1.0.0-alpha.4",
|
||||||
"@k8slens/logger": "^1.0.0-alpha.5",
|
"@k8slens/logger": "^1.0.0-alpha.5",
|
||||||
"@k8slens/messaging": "^1.0.0-alpha.1",
|
"@k8slens/messaging": "^1.0.0-alpha.1",
|
||||||
"@k8slens/messaging-for-main": "^1.0.0-alpha.1",
|
"@k8slens/messaging-for-main": "^1.0.0-alpha.1",
|
||||||
"@k8slens/messaging-for-renderer": "^1.0.0-alpha.1",
|
"@k8slens/messaging-for-renderer": "^1.0.0-alpha.1",
|
||||||
|
"@k8slens/metrics": "^6.5.0-alpha.7",
|
||||||
|
"@k8slens/node-fetch": "^6.5.0-alpha.3",
|
||||||
|
"@k8slens/prometheus": "^1.0.0",
|
||||||
|
"@k8slens/react-application": "^1.0.0-alpha.5",
|
||||||
|
"@k8slens/random": "^1.0.0",
|
||||||
"@k8slens/resizing-anchor": "^1.0.0-alpha.5",
|
"@k8slens/resizing-anchor": "^1.0.0-alpha.5",
|
||||||
|
"@k8slens/resource-templates": "^1.0.0-alpha.1",
|
||||||
"@k8slens/routing": "^1.0.0-alpha.5",
|
"@k8slens/routing": "^1.0.0-alpha.5",
|
||||||
"@k8slens/run-many": "^1.0.0-alpha.1",
|
"@k8slens/run-many": "^1.0.0-alpha.1",
|
||||||
|
"@k8slens/spinner": "^1.0.0",
|
||||||
"@k8slens/startable-stoppable": "^1.0.0-alpha.1",
|
"@k8slens/startable-stoppable": "^1.0.0-alpha.1",
|
||||||
"@k8slens/test-utils": "^1.0.0-alpha.3",
|
|
||||||
"@k8slens/tooltip": "^1.0.0-alpha.5",
|
"@k8slens/tooltip": "^1.0.0-alpha.5",
|
||||||
"@k8slens/utilities": "^1.0.0-alpha.1",
|
"@k8slens/utilities": "^1.0.0-alpha.1",
|
||||||
"@ogre-tools/fp": "^15.8.1",
|
"@kubernetes/client-node": "^0.18.1",
|
||||||
"@ogre-tools/injectable": "^15.8.1",
|
"@material-ui/core": "^4.12.3",
|
||||||
"@ogre-tools/injectable-extension-for-auto-registration": "^15.8.1",
|
"@material-ui/lab": "^4.0.0-alpha.60",
|
||||||
"@ogre-tools/injectable-extension-for-mobx": "^15.8.1",
|
"@ogre-tools/fp": "^17.2.0",
|
||||||
"@ogre-tools/injectable-react": "^15.8.1",
|
"@ogre-tools/injectable": "^17.2.0",
|
||||||
"@types/byline": "^4.2.33",
|
"@ogre-tools/injectable-extension-for-auto-registration": "^17.2.0",
|
||||||
"@types/chart.js": "^2.9.36",
|
"@ogre-tools/injectable-extension-for-mobx": "^17.2.0",
|
||||||
"@types/color": "^3.0.3",
|
"@ogre-tools/injectable-react": "^17.2.0",
|
||||||
"@types/crypto-js": "^3.1.47",
|
"@sentry/electron": "^3.0.8",
|
||||||
"@types/lodash": "^4.14.191",
|
"@sentry/integrations": "^6.19.3",
|
||||||
"@types/proper-lockfile": "^4.1.2",
|
"ansi_up": "^5.2.1",
|
||||||
"@types/react-dom": "^17.0.16",
|
"auto-bind": "^4.0.0",
|
||||||
"@types/react-router-dom": "^5.3.3",
|
"await-lock": "^2.2.2",
|
||||||
"@types/react-virtualized-auto-sizer": "^1.0.1",
|
"byline": "^5.0.0",
|
||||||
"@types/react-window": "^1.8.5",
|
"chalk": "^4.1.2",
|
||||||
"@types/tar": "^6.1.4",
|
"chart.js": "^2.9.4",
|
||||||
"@types/tcp-port-used": "^1.0.1",
|
"chokidar": "^3.5.3",
|
||||||
"@types/url-parse": "^1.4.8",
|
"color": "^3.2.1",
|
||||||
"@types/uuid": "^8.3.4",
|
"conf": "^10.2.0",
|
||||||
"monaco-editor": "^0.37.1",
|
"crypto-js": "^4.1.1",
|
||||||
|
"dompurify": "^2.4.4",
|
||||||
|
"electron": "^22.3.10",
|
||||||
|
"electron-devtools-installer": "^3.2.0",
|
||||||
|
"electron-updater": "^4.6.5",
|
||||||
|
"electron-window-state": "^5.0.3",
|
||||||
|
"fs-extra": "^9.0.1",
|
||||||
|
"glob-to-regexp": "^0.4.1",
|
||||||
|
"grapheme-splitter": "^1.0.4",
|
||||||
|
"handlebars": "^4.7.7",
|
||||||
|
"history": "^4.10.1",
|
||||||
|
"hpagent": "^1.2.0",
|
||||||
|
"http-proxy": "^1.18.1",
|
||||||
|
"immer": "^9.0.21",
|
||||||
|
"joi": "^17.9.1",
|
||||||
|
"js-yaml": "^4.1.0",
|
||||||
|
"lodash": "^4.17.15",
|
||||||
|
"marked": "^4.2.12",
|
||||||
|
"mobx": "^6.9.0",
|
||||||
|
"mobx-observable-history": "^2.0.3",
|
||||||
|
"mobx-react": "^7.6.0",
|
||||||
|
"mobx-utils": "^6.0.4",
|
||||||
|
"moment": "^2.29.4",
|
||||||
|
"moment-timezone": "^0.5.40",
|
||||||
|
"monaco-editor": "^0.38.0",
|
||||||
|
"node-pty": "0.10.1",
|
||||||
|
"npm": "^9.6.7",
|
||||||
|
"path-to-regexp": "^6.2.0",
|
||||||
|
"proper-lockfile": "^4.1.2",
|
||||||
|
"query-string": "^7.1.3",
|
||||||
|
"randomcolor": "^0.6.2",
|
||||||
|
"react": "^17.0.2",
|
||||||
|
"react-beautiful-dnd": "^13.1.1",
|
||||||
|
"react-dom": "^17.0.2",
|
||||||
|
"react-material-ui-carousel": "^2.3.11",
|
||||||
|
"react-router": "^5.3.4",
|
||||||
|
"react-router-dom": "^5.3.4",
|
||||||
"react-select": "^5.7.0",
|
"react-select": "^5.7.0",
|
||||||
|
"react-select-event": "^5.5.1",
|
||||||
|
"react-table": "^7.8.0",
|
||||||
|
"react-virtualized-auto-sizer": "^1.0.7",
|
||||||
|
"react-window": "^1.8.8",
|
||||||
|
"rfc6902": "^5.0.1",
|
||||||
|
"selfsigned": "^2.1.1",
|
||||||
|
"semver": "^7.3.8",
|
||||||
|
"stoppable": "^1.1.0",
|
||||||
|
"tar": "^6.1.13",
|
||||||
|
"tcp-port-used": "^1.0.2",
|
||||||
|
"tempy": "1.0.1",
|
||||||
|
"type-fest": "^2.14.0",
|
||||||
"typed-emitter": "^1.4.0",
|
"typed-emitter": "^1.4.0",
|
||||||
"xterm-addon-fit": "^0.5.0"
|
"typed-regex": "^0.0.8",
|
||||||
|
"url-parse": "^1.5.10",
|
||||||
|
"uuid": "^8.3.2",
|
||||||
|
"win-ca": "^3.5.0",
|
||||||
|
"winston": "^3.8.2",
|
||||||
|
"winston-transport-browserconsole": "^1.0.5",
|
||||||
|
"ws": "^8.12.1",
|
||||||
|
"xterm": "^4.19.0",
|
||||||
|
"xterm-addon-fit": "^0.5.0",
|
||||||
|
"xterm-link-provider": "^1.3.1"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,7 +7,7 @@ import EventEmitter from "events";
|
|||||||
import type TypedEmitter from "typed-emitter";
|
import type TypedEmitter from "typed-emitter";
|
||||||
import { observable, makeObservable } from "mobx";
|
import { observable, makeObservable } from "mobx";
|
||||||
import { once } from "lodash";
|
import { once } from "lodash";
|
||||||
import type { Disposer } from "@k8slens/utilities";
|
import type { Disposer, StrictReactNode } from "@k8slens/utilities";
|
||||||
import { iter } from "@k8slens/utilities";
|
import { iter } from "@k8slens/utilities";
|
||||||
import type { CategoryColumnRegistration, TitleCellProps } from "../../renderer/components/catalog/custom-category-columns";
|
import type { CategoryColumnRegistration, TitleCellProps } from "../../renderer/components/catalog/custom-category-columns";
|
||||||
|
|
||||||
@ -201,7 +201,7 @@ export abstract class CatalogCategory extends (EventEmitter as new () => TypedEm
|
|||||||
* Defaults to no badge.
|
* Defaults to no badge.
|
||||||
* The badge is displayed next to the Category name in the Catalog Category menu
|
* The badge is displayed next to the Category name in the Catalog Category menu
|
||||||
*/
|
*/
|
||||||
public getBadge(): React.ReactNode {
|
public getBadge(): StrictReactNode {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,21 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import { computed } from "mobx";
|
|
||||||
import { frontEndRouteInjectionToken } from "../../../../front-end-route-injection-token";
|
|
||||||
|
|
||||||
const crdListRouteInjectable = getInjectable({
|
|
||||||
id: "crd-list-route",
|
|
||||||
|
|
||||||
instantiate: () => ({
|
|
||||||
path: "/crd/definitions",
|
|
||||||
clusterFrame: true,
|
|
||||||
isEnabled: computed(() => true),
|
|
||||||
}),
|
|
||||||
|
|
||||||
injectionToken: frontEndRouteInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default crdListRouteInjectable;
|
|
||||||
@ -0,0 +1,24 @@
|
|||||||
|
/**
|
||||||
|
* Copyright (c) OpenLens Authors. All rights reserved.
|
||||||
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
||||||
|
*/
|
||||||
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
|
import { shouldShowResourceInjectionToken } from "../../../../../features/cluster/showing-kube-resources/common/allowed-resources-injection-token";
|
||||||
|
import { frontEndRouteInjectionToken } from "../../../front-end-route-injection-token";
|
||||||
|
|
||||||
|
const customResourceDefinitionsRouteInjectable = getInjectable({
|
||||||
|
id: "custom-resource-definitions-route",
|
||||||
|
|
||||||
|
instantiate: (di) => ({
|
||||||
|
path: "/crd/definitions",
|
||||||
|
clusterFrame: true,
|
||||||
|
isEnabled: di.inject(shouldShowResourceInjectionToken, {
|
||||||
|
group: "apiextensions.k8s.io",
|
||||||
|
apiName: "customresourcedefinitions",
|
||||||
|
}),
|
||||||
|
}),
|
||||||
|
|
||||||
|
injectionToken: frontEndRouteInjectionToken,
|
||||||
|
});
|
||||||
|
|
||||||
|
export default customResourceDefinitionsRouteInjectable;
|
||||||
@ -4,19 +4,19 @@
|
|||||||
*/
|
*/
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
import { computed } from "mobx";
|
import { computed } from "mobx";
|
||||||
import type { Route } from "../../../../front-end-route-injection-token";
|
import type { Route } from "../../../front-end-route-injection-token";
|
||||||
import { frontEndRouteInjectionToken } from "../../../../front-end-route-injection-token";
|
import { frontEndRouteInjectionToken } from "../../../front-end-route-injection-token";
|
||||||
|
|
||||||
export interface CustomResourcesPathParameters {
|
export interface CustomResourcesPathParameters {
|
||||||
group?: string;
|
group: string;
|
||||||
name?: string;
|
name: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
const customResourcesRouteInjectable = getInjectable({
|
const customResourcesRouteInjectable = getInjectable({
|
||||||
id: "custom-resources-route",
|
id: "custom-resources-route",
|
||||||
|
|
||||||
instantiate: (): Route<CustomResourcesPathParameters> => ({
|
instantiate: (): Route<CustomResourcesPathParameters> => ({
|
||||||
path: "/crd/:group?/:name?",
|
path: "/crd/:group/:name",
|
||||||
clusterFrame: true,
|
clusterFrame: true,
|
||||||
isEnabled: computed(() => true),
|
isEnabled: computed(() => true),
|
||||||
}),
|
}),
|
||||||
@ -3,11 +3,11 @@
|
|||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
||||||
*/
|
*/
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
import crdListRouteInjectable from "./crd-list-route.injectable";
|
import { navigateToRouteInjectionToken } from "../../../navigate-to-route-injection-token";
|
||||||
import { navigateToRouteInjectionToken } from "../../../../navigate-to-route-injection-token";
|
import crdListRouteInjectable from "./custom-resource-definitions.injectable";
|
||||||
|
|
||||||
const navigateToCrdListInjectable = getInjectable({
|
const navigateToCustomResourceDefinitionsInjectable = getInjectable({
|
||||||
id: "navigate-to-crd-list",
|
id: "navigate-to-custom-resource-definitions",
|
||||||
|
|
||||||
instantiate: (di) => {
|
instantiate: (di) => {
|
||||||
const navigateToRoute = di.inject(navigateToRouteInjectionToken);
|
const navigateToRoute = di.inject(navigateToRouteInjectionToken);
|
||||||
@ -17,4 +17,4 @@ const navigateToCrdListInjectable = getInjectable({
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
export default navigateToCrdListInjectable;
|
export default navigateToCustomResourceDefinitionsInjectable;
|
||||||
@ -3,19 +3,20 @@
|
|||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
||||||
*/
|
*/
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
|
import { navigateToRouteInjectionToken } from "../../../navigate-to-route-injection-token";
|
||||||
import type { CustomResourcesPathParameters } from "./custom-resources-route.injectable";
|
import type { CustomResourcesPathParameters } from "./custom-resources-route.injectable";
|
||||||
import customResourcesRouteInjectable from "./custom-resources-route.injectable";
|
import customResourcesRouteInjectable from "./custom-resources-route.injectable";
|
||||||
import { navigateToRouteInjectionToken } from "../../../../navigate-to-route-injection-token";
|
|
||||||
|
export type NavigateToCustomResources = (parameters: CustomResourcesPathParameters) => void;
|
||||||
|
|
||||||
const navigateToCustomResourcesInjectable = getInjectable({
|
const navigateToCustomResourcesInjectable = getInjectable({
|
||||||
id: "navigate-to-custom-resources",
|
id: "navigate-to-custom-resources",
|
||||||
|
|
||||||
instantiate: (di) => {
|
instantiate: (di): NavigateToCustomResources => {
|
||||||
const navigateToRoute = di.inject(navigateToRouteInjectionToken);
|
const navigateToRoute = di.inject(navigateToRouteInjectionToken);
|
||||||
const route = di.inject(customResourcesRouteInjectable);
|
const route = di.inject(customResourcesRouteInjectable);
|
||||||
|
|
||||||
return (parameters?: CustomResourcesPathParameters) =>
|
return (parameters) => navigateToRoute(route, { parameters });
|
||||||
navigateToRoute(route, { parameters });
|
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -0,0 +1,24 @@
|
|||||||
|
/**
|
||||||
|
* Copyright (c) OpenLens Authors. All rights reserved.
|
||||||
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
||||||
|
*/
|
||||||
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
|
import { frontEndRouteInjectionToken } from "../../../../front-end-route-injection-token";
|
||||||
|
import { shouldShowResourceInjectionToken } from "../../../../../../features/cluster/showing-kube-resources/common/allowed-resources-injection-token";
|
||||||
|
|
||||||
|
const ingressClassesRouteInjectable = getInjectable({
|
||||||
|
id: "ingress-classes-route",
|
||||||
|
|
||||||
|
instantiate: (di) => ({
|
||||||
|
path: "/ingress-classes",
|
||||||
|
clusterFrame: true,
|
||||||
|
isEnabled: di.inject(shouldShowResourceInjectionToken, {
|
||||||
|
apiName: "ingressclasses",
|
||||||
|
group: "networking.k8s.io",
|
||||||
|
}),
|
||||||
|
}),
|
||||||
|
|
||||||
|
injectionToken: frontEndRouteInjectionToken,
|
||||||
|
});
|
||||||
|
|
||||||
|
export default ingressClassesRouteInjectable;
|
||||||
@ -1,30 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import { frontEndRouteInjectionToken } from "../../../../front-end-route-injection-token";
|
|
||||||
import {
|
|
||||||
shouldShowResourceInjectionToken,
|
|
||||||
} from "../../../../../../features/cluster/showing-kube-resources/common/allowed-resources-injection-token";
|
|
||||||
|
|
||||||
const ingressClassesesRouteInjectable = getInjectable({
|
|
||||||
id: "ingress-classes-route",
|
|
||||||
|
|
||||||
instantiate: (di) => {
|
|
||||||
const isEnabled = di.inject(shouldShowResourceInjectionToken, {
|
|
||||||
apiName: "ingressclasses",
|
|
||||||
group: "networking.k8s.io",
|
|
||||||
});
|
|
||||||
|
|
||||||
return {
|
|
||||||
path: "/ingress-classes",
|
|
||||||
clusterFrame: true,
|
|
||||||
isEnabled,
|
|
||||||
};
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: frontEndRouteInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default ingressClassesesRouteInjectable;
|
|
||||||
@ -4,14 +4,14 @@
|
|||||||
*/
|
*/
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
import { navigateToRouteInjectionToken } from "../../../../navigate-to-route-injection-token";
|
import { navigateToRouteInjectionToken } from "../../../../navigate-to-route-injection-token";
|
||||||
import ingressClassesesRouteInjectable from "./ingress-classeses-route.injectable";
|
import ingressClassesRouteInjectable from "./ingress-classes-route.injectable";
|
||||||
|
|
||||||
const navigateToIngressesInjectable = getInjectable({
|
const navigateToIngressesInjectable = getInjectable({
|
||||||
id: "navigate-to-ingress-classes",
|
id: "navigate-to-ingress-classes",
|
||||||
|
|
||||||
instantiate: (di) => {
|
instantiate: (di) => {
|
||||||
const navigateToRoute = di.inject(navigateToRouteInjectionToken);
|
const navigateToRoute = di.inject(navigateToRouteInjectionToken);
|
||||||
const route = di.inject(ingressClassesesRouteInjectable);
|
const route = di.inject(ingressClassesRouteInjectable);
|
||||||
|
|
||||||
return () => navigateToRoute(route);
|
return () => navigateToRoute(route);
|
||||||
},
|
},
|
||||||
|
|||||||
@ -26,12 +26,11 @@ export type ImplInitializableInjectionTokensArgs<T> = {
|
|||||||
token: Initializable<T>;
|
token: Initializable<T>;
|
||||||
init: (di: DiContainerForInjection) => T | Promise<T>;
|
init: (di: DiContainerForInjection) => T | Promise<T>;
|
||||||
} & (
|
} & (
|
||||||
{
|
| {
|
||||||
phase: InjectionToken<Runnable<void>, void>;
|
phase: InjectionToken<Runnable<void>, void>;
|
||||||
runAfter?: Injectable<Runnable<void>, Runnable<void>, void>[];
|
runAfter?: Injectable<Runnable<void>, Runnable<void>, void>[];
|
||||||
}
|
}
|
||||||
|
|
| {
|
||||||
{
|
|
||||||
runAfter: Injectable<Runnable<void>, Runnable<void>, void>;
|
runAfter: Injectable<Runnable<void>, Runnable<void>, void>;
|
||||||
phase?: undefined;
|
phase?: undefined;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -11,13 +11,12 @@ import { getDiForUnitTesting } from "../../../renderer/getDiForUnitTesting";
|
|||||||
import storesAndApisCanBeCreatedInjectable from "../../../renderer/stores-apis-can-be-created.injectable";
|
import storesAndApisCanBeCreatedInjectable from "../../../renderer/stores-apis-can-be-created.injectable";
|
||||||
import directoryForKubeConfigsInjectable from "../../app-paths/directory-for-kube-configs/directory-for-kube-configs.injectable";
|
import directoryForKubeConfigsInjectable from "../../app-paths/directory-for-kube-configs/directory-for-kube-configs.injectable";
|
||||||
import directoryForUserDataInjectable from "../../app-paths/directory-for-user-data/directory-for-user-data.injectable";
|
import directoryForUserDataInjectable from "../../app-paths/directory-for-user-data/directory-for-user-data.injectable";
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
import { logErrorInjectionToken, loggerInjectionToken, logInfoInjectionToken, logWarningInjectionToken } from "@k8slens/logger";
|
||||||
import type { ApiManager } from "../api-manager";
|
import type { ApiManager } from "../api-manager";
|
||||||
import apiManagerInjectable from "../api-manager/manager.injectable";
|
import apiManagerInjectable from "../api-manager/manager.injectable";
|
||||||
import { KubeApi } from "../kube-api";
|
import { KubeApi } from "@k8slens/kube-api";
|
||||||
import { KubeObject } from "@k8slens/kube-object";
|
import { KubeObject } from "@k8slens/kube-object";
|
||||||
import { KubeObjectStore } from "../kube-object.store";
|
import { KubeObjectStore } from "../kube-object.store";
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
// eslint-disable-next-line no-restricted-imports
|
// eslint-disable-next-line no-restricted-imports
|
||||||
import { KubeApi as ExternalKubeApi } from "../../../extensions/common-api/k8s-api";
|
import { KubeApi as ExternalKubeApi } from "../../../extensions/common-api/k8s-api";
|
||||||
@ -25,6 +24,7 @@ import { Cluster } from "../../cluster/cluster";
|
|||||||
import { runInAction } from "mobx";
|
import { runInAction } from "mobx";
|
||||||
import { customResourceDefinitionApiInjectionToken } from "../api-manager/crd-api-token";
|
import { customResourceDefinitionApiInjectionToken } from "../api-manager/crd-api-token";
|
||||||
import assert from "assert";
|
import assert from "assert";
|
||||||
|
import { maybeKubeApiInjectable } from "@k8slens/kube-api-specifics";
|
||||||
|
|
||||||
class TestApi extends KubeApi<KubeObject> {
|
class TestApi extends KubeApi<KubeObject> {
|
||||||
protected checkPreferredVersion() {
|
protected checkPreferredVersion() {
|
||||||
@ -61,7 +61,9 @@ describe("ApiManager", () => {
|
|||||||
const apiBase = "api/v1/foo";
|
const apiBase = "api/v1/foo";
|
||||||
const fallbackApiBase = "/apis/extensions/v1beta1/foo";
|
const fallbackApiBase = "/apis/extensions/v1beta1/foo";
|
||||||
const kubeApi = new TestApi({
|
const kubeApi = new TestApi({
|
||||||
logger: di.inject(loggerInjectionToken),
|
logError: di.inject(logErrorInjectionToken),
|
||||||
|
logInfo: di.inject(logInfoInjectionToken),
|
||||||
|
logWarn: di.inject(logWarningInjectionToken),
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
||||||
}, {
|
}, {
|
||||||
objectConstructor: KubeObject,
|
objectConstructor: KubeObject,
|
||||||
@ -136,7 +138,9 @@ describe("ApiManager", () => {
|
|||||||
|
|
||||||
return Object.assign(
|
return Object.assign(
|
||||||
new KubeApi({
|
new KubeApi({
|
||||||
logger: di.inject(loggerInjectionToken),
|
logError: di.inject(logErrorInjectionToken),
|
||||||
|
logInfo: di.inject(logInfoInjectionToken),
|
||||||
|
logWarn: di.inject(logWarningInjectionToken),
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
||||||
}, { objectConstructor }),
|
}, { objectConstructor }),
|
||||||
{
|
{
|
||||||
|
|||||||
@ -1,52 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
|
|
||||||
import { getDiForUnitTesting } from "../../../renderer/getDiForUnitTesting";
|
|
||||||
import storesAndApisCanBeCreatedInjectable from "../../../renderer/stores-apis-can-be-created.injectable";
|
|
||||||
import apiKubeInjectable from "../../../renderer/k8s/api-kube.injectable";
|
|
||||||
import type { DeploymentApi } from "../endpoints/deployment.api";
|
|
||||||
import deploymentApiInjectable from "../endpoints/deployment.api.injectable";
|
|
||||||
import type { KubeJsonApi } from "../kube-json-api";
|
|
||||||
|
|
||||||
describe("DeploymentApi", () => {
|
|
||||||
let deploymentApi: DeploymentApi;
|
|
||||||
let kubeJsonApi: jest.Mocked<KubeJsonApi>;
|
|
||||||
|
|
||||||
beforeEach(() => {
|
|
||||||
const di = getDiForUnitTesting();
|
|
||||||
|
|
||||||
di.override(storesAndApisCanBeCreatedInjectable, () => true);
|
|
||||||
kubeJsonApi = {
|
|
||||||
getResponse: jest.fn(),
|
|
||||||
get: jest.fn(),
|
|
||||||
post: jest.fn(),
|
|
||||||
put: jest.fn(),
|
|
||||||
patch: jest.fn(),
|
|
||||||
del: jest.fn(),
|
|
||||||
} as never;
|
|
||||||
di.override(apiKubeInjectable, () => kubeJsonApi);
|
|
||||||
|
|
||||||
deploymentApi = di.inject(deploymentApiInjectable);
|
|
||||||
});
|
|
||||||
|
|
||||||
describe("scale", () => {
|
|
||||||
it("requests Kubernetes API with PATCH verb and correct amount of replicas", async () => {
|
|
||||||
await deploymentApi.scale({ namespace: "default", name: "deployment-1" }, 5);
|
|
||||||
|
|
||||||
expect(kubeJsonApi.patch).toHaveBeenCalledWith("/apis/apps/v1/namespaces/default/deployments/deployment-1/scale", {
|
|
||||||
data: {
|
|
||||||
spec: {
|
|
||||||
replicas: 5,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
headers: {
|
|
||||||
"content-type": "application/merge-patch+json",
|
|
||||||
},
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
@ -3,8 +3,8 @@
|
|||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
||||||
*/
|
*/
|
||||||
import type { ApiManager } from "../api-manager";
|
import type { ApiManager } from "../api-manager";
|
||||||
import type { IngressApi } from "../endpoints";
|
import type { IngressApi } from "@k8slens/kube-api";
|
||||||
import { HorizontalPodAutoscalerApi } from "../endpoints";
|
import { HorizontalPodAutoscalerApi } from "@k8slens/kube-api";
|
||||||
import { Ingress } from "@k8slens/kube-object";
|
import { Ingress } from "@k8slens/kube-object";
|
||||||
import { getDiForUnitTesting } from "../../../renderer/getDiForUnitTesting";
|
import { getDiForUnitTesting } from "../../../renderer/getDiForUnitTesting";
|
||||||
import type { Fetch } from "../../fetch/fetch.injectable";
|
import type { Fetch } from "../../fetch/fetch.injectable";
|
||||||
@ -20,9 +20,8 @@ import hostedClusterInjectable from "../../../renderer/cluster-frame-context/hos
|
|||||||
import directoryForKubeConfigsInjectable from "../../app-paths/directory-for-kube-configs/directory-for-kube-configs.injectable";
|
import directoryForKubeConfigsInjectable from "../../app-paths/directory-for-kube-configs/directory-for-kube-configs.injectable";
|
||||||
import apiManagerInjectable from "../api-manager/manager.injectable";
|
import apiManagerInjectable from "../api-manager/manager.injectable";
|
||||||
import type { DiContainer } from "@ogre-tools/injectable";
|
import type { DiContainer } from "@ogre-tools/injectable";
|
||||||
import ingressApiInjectable from "../endpoints/ingress.api.injectable";
|
import { ingressApiInjectable, maybeKubeApiInjectable } from "@k8slens/kube-api-specifics";
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
import { logErrorInjectionToken, logInfoInjectionToken, logWarningInjectionToken } from "@k8slens/logger";
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
import { Cluster } from "../../cluster/cluster";
|
import { Cluster } from "../../cluster/cluster";
|
||||||
|
|
||||||
describe("KubeApi", () => {
|
describe("KubeApi", () => {
|
||||||
@ -710,7 +709,9 @@ describe("KubeApi", () => {
|
|||||||
|
|
||||||
beforeEach(async () => {
|
beforeEach(async () => {
|
||||||
horizontalPodAutoscalerApi = new HorizontalPodAutoscalerApi({
|
horizontalPodAutoscalerApi = new HorizontalPodAutoscalerApi({
|
||||||
logger: di.inject(loggerInjectionToken),
|
logError: di.inject(logErrorInjectionToken),
|
||||||
|
logInfo: di.inject(logInfoInjectionToken),
|
||||||
|
logWarn: di.inject(logWarningInjectionToken),
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
||||||
}, {
|
}, {
|
||||||
allowedUsableVersions: {
|
allowedUsableVersions: {
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@ -4,7 +4,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import { noop } from "@k8slens/utilities";
|
import { noop } from "@k8slens/utilities";
|
||||||
import type { KubeApi } from "../kube-api";
|
import type { KubeApi } from "@k8slens/kube-api";
|
||||||
import { KubeObject } from "@k8slens/kube-object";
|
import { KubeObject } from "@k8slens/kube-object";
|
||||||
import type { KubeObjectStoreLoadingParams } from "../kube-object.store";
|
import type { KubeObjectStoreLoadingParams } from "../kube-object.store";
|
||||||
import { KubeObjectStore } from "../kube-object.store";
|
import { KubeObjectStore } from "../kube-object.store";
|
||||||
|
|||||||
@ -7,9 +7,9 @@ import type { KubeObjectStore } from "../kube-object.store";
|
|||||||
|
|
||||||
import type { IComputedValue } from "mobx";
|
import type { IComputedValue } from "mobx";
|
||||||
import { autorun, action, observable } from "mobx";
|
import { autorun, action, observable } from "mobx";
|
||||||
import type { KubeApi } from "../kube-api";
|
import type { KubeApi } from "@k8slens/kube-api";
|
||||||
import type { KubeObject, ObjectReference } from "@k8slens/kube-object";
|
import type { KubeObject, ObjectReference } from "@k8slens/kube-object";
|
||||||
import { parseKubeApi, createKubeApiURL } from "../kube-api-parse";
|
import { parseKubeApi, createKubeApiURL } from "@k8slens/kube-api";
|
||||||
import { getOrInsertWith, iter } from "@k8slens/utilities";
|
import { getOrInsertWith, iter } from "@k8slens/utilities";
|
||||||
import type { CreateCustomResourceStore } from "./create-custom-resource-store.injectable";
|
import type { CreateCustomResourceStore } from "./create-custom-resource-store.injectable";
|
||||||
|
|
||||||
|
|||||||
@ -5,7 +5,7 @@
|
|||||||
import { getInjectable } from "@ogre-tools/injectable";
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
import EventEmitter from "events";
|
import EventEmitter from "events";
|
||||||
import type TypedEventEmitter from "typed-emitter";
|
import type TypedEventEmitter from "typed-emitter";
|
||||||
import type { KubeApi } from "../kube-api";
|
import type { KubeApi } from "@k8slens/kube-api";
|
||||||
|
|
||||||
export interface LegacyAutoRegistration {
|
export interface LegacyAutoRegistration {
|
||||||
kubeApi: (api: KubeApi<any, any>) => void;
|
kubeApi: (api: KubeApi<any, any>) => void;
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import { getInjectionToken } from "@ogre-tools/injectable";
|
import { getInjectionToken } from "@ogre-tools/injectable";
|
||||||
import type { KubeApi } from "../kube-api";
|
import type { KubeApi } from "@k8slens/kube-api";
|
||||||
|
|
||||||
export const customResourceDefinitionApiInjectionToken = getInjectionToken<KubeApi>({
|
export const customResourceDefinitionApiInjectionToken = getInjectionToken<KubeApi>({
|
||||||
id: "custom-resource-definition-api-token",
|
id: "custom-resource-definition-api-token",
|
||||||
|
|||||||
@ -5,7 +5,7 @@
|
|||||||
import { getInjectable } from "@ogre-tools/injectable";
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
import clusterFrameContextForNamespacedResourcesInjectable from "../../../renderer/cluster-frame-context/for-namespaced-resources.injectable";
|
import clusterFrameContextForNamespacedResourcesInjectable from "../../../renderer/cluster-frame-context/for-namespaced-resources.injectable";
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
import { loggerInjectionToken } from "@k8slens/logger";
|
||||||
import type { KubeApi } from "../kube-api";
|
import type { KubeApi } from "@k8slens/kube-api";
|
||||||
import type { KubeObject } from "@k8slens/kube-object";
|
import type { KubeObject } from "@k8slens/kube-object";
|
||||||
import type { KubeObjectStoreDependencies } from "../kube-object.store";
|
import type { KubeObjectStoreDependencies } from "../kube-object.store";
|
||||||
import { CustomResourceStore } from "./resource.store";
|
import { CustomResourceStore } from "./resource.store";
|
||||||
|
|||||||
@ -3,11 +3,10 @@
|
|||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
||||||
*/
|
*/
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { ApiManager } from "./api-manager";
|
import { ApiManager } from "./api-manager";
|
||||||
import { computedInjectManyInjectable } from "@ogre-tools/injectable-extension-for-mobx";
|
import { computedInjectManyInjectable } from "@ogre-tools/injectable-extension-for-mobx";
|
||||||
import { kubeObjectStoreInjectionToken } from "./kube-object-store-token";
|
import { kubeObjectStoreInjectionToken } from "./kube-object-store-token";
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
import { kubeApiInjectionToken, storesAndApisCanBeCreatedInjectionToken } from "@k8slens/kube-api-specifics";
|
||||||
import { computed } from "mobx";
|
import { computed } from "mobx";
|
||||||
import { customResourceDefinitionApiInjectionToken } from "./crd-api-token";
|
import { customResourceDefinitionApiInjectionToken } from "./crd-api-token";
|
||||||
import createCustomResourceStoreInjectable from "./create-custom-resource-store.injectable";
|
import createCustomResourceStoreInjectable from "./create-custom-resource-store.injectable";
|
||||||
|
|||||||
@ -3,7 +3,7 @@
|
|||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import type { KubeApi } from "../kube-api";
|
import type { KubeApi } from "@k8slens/kube-api";
|
||||||
import type { KubeObjectStoreDependencies } from "../kube-object.store";
|
import type { KubeObjectStoreDependencies } from "../kube-object.store";
|
||||||
import { KubeObjectStore } from "../kube-object.store";
|
import { KubeObjectStore } from "../kube-object.store";
|
||||||
import type { KubeObject } from "@k8slens/kube-object";
|
import type { KubeObject } from "@k8slens/kube-object";
|
||||||
|
|||||||
@ -3,13 +3,13 @@
|
|||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
||||||
*/
|
*/
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
import { logErrorInjectionToken, logInfoInjectionToken, logWarningInjectionToken } from "@k8slens/logger";
|
||||||
import { apiKubePrefix } from "../vars";
|
import { apiKubePrefix } from "../vars";
|
||||||
import isDevelopmentInjectable from "../vars/is-development.injectable";
|
import isDevelopmentInjectable from "../vars/is-development.injectable";
|
||||||
import apiBaseInjectable from "./api-base.injectable";
|
import apiBaseInjectable from "./api-base.injectable";
|
||||||
import type { KubeApiConstructor } from "./create-kube-api-for-remote-cluster.injectable";
|
import type { KubeApiConstructor } from "./create-kube-api-for-remote-cluster.injectable";
|
||||||
import createKubeJsonApiInjectable from "./create-kube-json-api.injectable";
|
import createKubeJsonApiInjectable from "./create-kube-json-api.injectable";
|
||||||
import { KubeApi } from "./kube-api";
|
import { KubeApi } from "@k8slens/kube-api";
|
||||||
import type { KubeJsonApiDataFor, KubeObject, KubeObjectConstructor } from "@k8slens/kube-object";
|
import type { KubeJsonApiDataFor, KubeObject, KubeObjectConstructor } from "@k8slens/kube-object";
|
||||||
|
|
||||||
export interface CreateKubeApiForLocalClusterConfig {
|
export interface CreateKubeApiForLocalClusterConfig {
|
||||||
@ -37,7 +37,9 @@ const createKubeApiForClusterInjectable = getInjectable({
|
|||||||
const apiBase = di.inject(apiBaseInjectable);
|
const apiBase = di.inject(apiBaseInjectable);
|
||||||
const isDevelopment = di.inject(isDevelopmentInjectable);
|
const isDevelopment = di.inject(isDevelopmentInjectable);
|
||||||
const createKubeJsonApi = di.inject(createKubeJsonApiInjectable);
|
const createKubeJsonApi = di.inject(createKubeJsonApiInjectable);
|
||||||
const logger = di.inject(loggerInjectionToken);
|
const logError = di.inject(logErrorInjectionToken);
|
||||||
|
const logInfo = di.inject(logInfoInjectionToken);
|
||||||
|
const logWarn = di.inject(logWarningInjectionToken);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
cluster: CreateKubeApiForLocalClusterConfig,
|
cluster: CreateKubeApiForLocalClusterConfig,
|
||||||
@ -64,7 +66,9 @@ const createKubeApiForClusterInjectable = getInjectable({
|
|||||||
|
|
||||||
return new KubeApi(
|
return new KubeApi(
|
||||||
{
|
{
|
||||||
logger,
|
logError,
|
||||||
|
logInfo,
|
||||||
|
logWarn,
|
||||||
maybeKubeApi: undefined,
|
maybeKubeApi: undefined,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
@ -6,11 +6,11 @@ import { getInjectable } from "@ogre-tools/injectable";
|
|||||||
import type { AgentOptions } from "https";
|
import type { AgentOptions } from "https";
|
||||||
import { Agent } from "https";
|
import { Agent } from "https";
|
||||||
import type { RequestInit } from "@k8slens/node-fetch";
|
import type { RequestInit } from "@k8slens/node-fetch";
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
import { logErrorInjectionToken, logInfoInjectionToken, logWarningInjectionToken } from "@k8slens/logger";
|
||||||
import isDevelopmentInjectable from "../vars/is-development.injectable";
|
import isDevelopmentInjectable from "../vars/is-development.injectable";
|
||||||
import createKubeJsonApiInjectable from "./create-kube-json-api.injectable";
|
import createKubeJsonApiInjectable from "./create-kube-json-api.injectable";
|
||||||
import type { KubeApiOptions } from "./kube-api";
|
import type { KubeApiOptions } from "@k8slens/kube-api";
|
||||||
import { KubeApi } from "./kube-api";
|
import { KubeApi } from "@k8slens/kube-api";
|
||||||
import type { KubeJsonApiDataFor, KubeObject, KubeObjectConstructor } from "@k8slens/kube-object";
|
import type { KubeJsonApiDataFor, KubeObject, KubeObjectConstructor } from "@k8slens/kube-object";
|
||||||
|
|
||||||
export interface CreateKubeApiForRemoteClusterConfig {
|
export interface CreateKubeApiForRemoteClusterConfig {
|
||||||
@ -53,7 +53,9 @@ const createKubeApiForRemoteClusterInjectable = getInjectable({
|
|||||||
instantiate: (di): CreateKubeApiForRemoteCluster => {
|
instantiate: (di): CreateKubeApiForRemoteCluster => {
|
||||||
const isDevelopment = di.inject(isDevelopmentInjectable);
|
const isDevelopment = di.inject(isDevelopmentInjectable);
|
||||||
const createKubeJsonApi = di.inject(createKubeJsonApiInjectable);
|
const createKubeJsonApi = di.inject(createKubeJsonApiInjectable);
|
||||||
const logger = di.inject(loggerInjectionToken);
|
const logError = di.inject(logErrorInjectionToken);
|
||||||
|
const logInfo = di.inject(logInfoInjectionToken);
|
||||||
|
const logWarn = di.inject(logWarningInjectionToken);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
config: CreateKubeApiForRemoteClusterConfig,
|
config: CreateKubeApiForRemoteClusterConfig,
|
||||||
@ -110,7 +112,9 @@ const createKubeApiForRemoteClusterInjectable = getInjectable({
|
|||||||
|
|
||||||
return new KubeApi(
|
return new KubeApi(
|
||||||
{
|
{
|
||||||
logger,
|
logError,
|
||||||
|
logInfo,
|
||||||
|
logWarn,
|
||||||
maybeKubeApi: undefined,
|
maybeKubeApi: undefined,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
@ -3,9 +3,9 @@
|
|||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
||||||
*/
|
*/
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
import { logErrorInjectionToken, logInfoInjectionToken, logWarningInjectionToken } from "@k8slens/logger";
|
||||||
import type { DerivedKubeApiOptions, KubeApiDependencies } from "./kube-api";
|
import type { DerivedKubeApiOptions, KubeApiDependencies } from "@k8slens/kube-api";
|
||||||
import maybeKubeApiInjectable from "./maybe-kube-api.injectable";
|
import { maybeKubeApiInjectable } from "@k8slens/kube-api-specifics";
|
||||||
|
|
||||||
export interface CreateKubeApi {
|
export interface CreateKubeApi {
|
||||||
<Api>(ctor: new (deps: KubeApiDependencies, opts: DerivedKubeApiOptions) => Api, opts?: DerivedKubeApiOptions): Api;
|
<Api>(ctor: new (deps: KubeApiDependencies, opts: DerivedKubeApiOptions) => Api, opts?: DerivedKubeApiOptions): Api;
|
||||||
@ -15,7 +15,9 @@ const createKubeApiInjectable = getInjectable({
|
|||||||
id: "create-kube-api",
|
id: "create-kube-api",
|
||||||
instantiate: (di): CreateKubeApi => {
|
instantiate: (di): CreateKubeApi => {
|
||||||
const deps: KubeApiDependencies = {
|
const deps: KubeApiDependencies = {
|
||||||
logger: di.inject(loggerInjectionToken),
|
logError: di.inject(logErrorInjectionToken),
|
||||||
|
logInfo: di.inject(logInfoInjectionToken),
|
||||||
|
logWarn: di.inject(logWarningInjectionToken),
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@ -7,7 +7,7 @@ import { apiKubePrefix } from "../vars";
|
|||||||
import isDebuggingInjectable from "../vars/is-debugging.injectable";
|
import isDebuggingInjectable from "../vars/is-debugging.injectable";
|
||||||
import { apiBaseHostHeaderInjectionToken, apiBaseServerAddressInjectionToken } from "./api-base-configs";
|
import { apiBaseHostHeaderInjectionToken, apiBaseServerAddressInjectionToken } from "./api-base-configs";
|
||||||
import createKubeJsonApiInjectable from "./create-kube-json-api.injectable";
|
import createKubeJsonApiInjectable from "./create-kube-json-api.injectable";
|
||||||
import type { KubeJsonApi } from "./kube-json-api";
|
import type { KubeJsonApi } from "@k8slens/kube-api";
|
||||||
|
|
||||||
export type CreateKubeJsonApiForCluster = (clusterId: string) => KubeJsonApi;
|
export type CreateKubeJsonApiForCluster = (clusterId: string) => KubeJsonApi;
|
||||||
|
|
||||||
|
|||||||
@ -9,7 +9,7 @@ import lensProxyCertificateInjectable from "../certificate/lens-proxy-certificat
|
|||||||
import fetchInjectable from "../fetch/fetch.injectable";
|
import fetchInjectable from "../fetch/fetch.injectable";
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
import { loggerInjectionToken } from "@k8slens/logger";
|
||||||
import type { JsonApiConfig, JsonApiDependencies } from "@k8slens/json-api";
|
import type { JsonApiConfig, JsonApiDependencies } from "@k8slens/json-api";
|
||||||
import { KubeJsonApi } from "./kube-json-api";
|
import { KubeJsonApi } from "@k8slens/kube-api";
|
||||||
|
|
||||||
export type CreateKubeJsonApi = (config: JsonApiConfig, reqInit?: RequestInit) => KubeJsonApi;
|
export type CreateKubeJsonApi = (config: JsonApiConfig, reqInit?: RequestInit) => KubeJsonApi;
|
||||||
|
|
||||||
|
|||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { ClusterRoleBindingApi } from "./cluster-role-binding.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const clusterRoleBindingApiInjectable = getInjectable({
|
|
||||||
id: "cluster-role-binding-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "clusterRoleBindingApi is only accessible in certain environments");
|
|
||||||
|
|
||||||
return new ClusterRoleBindingApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default clusterRoleBindingApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { ClusterRoleApi } from "./cluster-role.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const clusterRoleApiInjectable = getInjectable({
|
|
||||||
id: "cluster-role-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "clusterRoleApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new ClusterRoleApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default clusterRoleApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { ClusterApi } from "./cluster.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const clusterApiInjectable = getInjectable({
|
|
||||||
id: "cluster-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "clusterApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new ClusterApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default clusterApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { ComponentStatusApi } from "./component-status.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
|
|
||||||
const componentStatusApiInjectable = getInjectable({
|
|
||||||
id: "component-status-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "componentStatusApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new ComponentStatusApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default componentStatusApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { ConfigMapApi } from "./config-map.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const configMapApiInjectable = getInjectable({
|
|
||||||
id: "config-map-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "configMapApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new ConfigMapApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default configMapApiInjectable;
|
|
||||||
@ -1,29 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { CronJobApi } from "./cron-job.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const cronJobApiInjectable = getInjectable({
|
|
||||||
id: "cron-job-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "cronJobApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new CronJobApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
}, {
|
|
||||||
checkPreferredVersion: true,
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default cronJobApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { CustomResourceDefinitionApi } from "./custom-resource-definition.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
|
|
||||||
const customResourceDefinitionApiInjectable = getInjectable({
|
|
||||||
id: "custom-resource-definition-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "customResourceDefinitionApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new CustomResourceDefinitionApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default customResourceDefinitionApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { DaemonSetApi } from "./daemon-set.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const daemonSetApiInjectable = getInjectable({
|
|
||||||
id: "daemon-set-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "daemonSetApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new DaemonSetApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default daemonSetApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { DeploymentApi } from "./deployment.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const deploymentApiInjectable = getInjectable({
|
|
||||||
id: "deployment-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "deploymentApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new DeploymentApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default deploymentApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { EndpointsApi } from "./endpoint.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const endpointsApiInjectable = getInjectable({
|
|
||||||
id: "endpoints-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "endpointsApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new EndpointsApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default endpointsApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { KubeEventApi } from "./events.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const kubeEventApiInjectable = getInjectable({
|
|
||||||
id: "kube-event-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "kubeEventApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new KubeEventApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default kubeEventApiInjectable;
|
|
||||||
@ -8,7 +8,7 @@ import apiBaseInjectable from "../../api-base.injectable";
|
|||||||
|
|
||||||
export type RequestHelmReleaseRollback = (name: string, namespace: string, revision: number) => Promise<void>;
|
export type RequestHelmReleaseRollback = (name: string, namespace: string, revision: number) => Promise<void>;
|
||||||
|
|
||||||
const requestRollbackEndpoint = urlBuilderFor("/v2/releases/:namespace/:name");
|
const requestRollbackEndpoint = urlBuilderFor("/v2/releases/:namespace/:name/rollback");
|
||||||
|
|
||||||
const requestHelmReleaseRollbackInjectable = getInjectable({
|
const requestHelmReleaseRollbackInjectable = getInjectable({
|
||||||
id: "request-helm-release-rollback",
|
id: "request-helm-release-rollback",
|
||||||
|
|||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { HorizontalPodAutoscalerApi } from "./horizontal-pod-autoscaler.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const horizontalPodAutoscalerApiInjectable = getInjectable({
|
|
||||||
id: "horizontal-pod-autoscaler-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "horizontalPodAutoscalerApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new HorizontalPodAutoscalerApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default horizontalPodAutoscalerApiInjectable;
|
|
||||||
@ -1,21 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import { IngressClassApi } from "./ingress-class.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const ingressClassApiInjectable = getInjectable({
|
|
||||||
id: "ingress-class-api",
|
|
||||||
instantiate: (di) => new IngressClassApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
}),
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default ingressClassApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { IngressApi } from "./ingress.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const ingressApiInjectable = getInjectable({
|
|
||||||
id: "ingress-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "ingressApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new IngressApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default ingressApiInjectable;
|
|
||||||
@ -1,29 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { JobApi } from "./job.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const jobApiInjectable = getInjectable({
|
|
||||||
id: "job-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "jobApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new JobApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
}, {
|
|
||||||
checkPreferredVersion: true,
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default jobApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { LeaseApi } from "./lease.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const leaseApiInjectable = getInjectable({
|
|
||||||
id: "lease-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "leaseApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new LeaseApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default leaseApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { LimitRangeApi } from "./limit-range.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const limitRangeApiInjectable = getInjectable({
|
|
||||||
id: "limit-range-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "limitRangeApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new LimitRangeApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default limitRangeApiInjectable;
|
|
||||||
@ -4,7 +4,7 @@
|
|||||||
*/
|
*/
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
import type { MetricData } from "../metrics.api";
|
import type { MetricData } from "../metrics.api";
|
||||||
import type { Pod } from "@k8slens/kube-object";
|
import type { Pod, Container } from "@k8slens/kube-object";
|
||||||
import requestMetricsInjectable from "./request-metrics.injectable";
|
import requestMetricsInjectable from "./request-metrics.injectable";
|
||||||
|
|
||||||
export interface PodMetricData {
|
export interface PodMetricData {
|
||||||
@ -21,16 +21,16 @@ export interface PodMetricData {
|
|||||||
memoryLimits: MetricData;
|
memoryLimits: MetricData;
|
||||||
}
|
}
|
||||||
|
|
||||||
export type RequestPodMetrics = (pods: Pod[], namespace: string, selector?: string) => Promise<PodMetricData>;
|
export type RequestPodMetrics = (pods: Pod[], namespace: string, container?: Container, selector?: string) => Promise<PodMetricData>;
|
||||||
|
|
||||||
const requestPodMetricsInjectable = getInjectable({
|
const requestPodMetricsInjectable = getInjectable({
|
||||||
id: "request-pod-metrics",
|
id: "request-pod-metrics",
|
||||||
instantiate: (di): RequestPodMetrics => {
|
instantiate: (di): RequestPodMetrics => {
|
||||||
const requestMetrics = di.inject(requestMetricsInjectable);
|
const requestMetrics = di.inject(requestMetricsInjectable);
|
||||||
|
|
||||||
return (pods, namespace, selector = "pod, namespace") => {
|
return (pods, namespace, container, selector = "pod, namespace") => {
|
||||||
const podSelector = pods.map(pod => pod.getName()).join("|");
|
const podSelector = pods.map(pod => pod.getName()).join("|");
|
||||||
const opts = { category: "pods", pods: podSelector, namespace, selector };
|
const opts = { category: "pods", pods: podSelector, container: container?.name, namespace, selector };
|
||||||
|
|
||||||
return requestMetrics({
|
return requestMetrics({
|
||||||
cpuUsage: opts,
|
cpuUsage: opts,
|
||||||
|
|||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
import { MutatingWebhookConfigurationApi } from "./mutating-webhook-configuration.api";
|
|
||||||
|
|
||||||
const mutatingWebhookConfigurationApiInjectable = getInjectable({
|
|
||||||
id: "mutating-webhook-configuration",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "mutatingWebhookApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new MutatingWebhookConfigurationApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default mutatingWebhookConfigurationApiInjectable;
|
|
||||||
@ -1,28 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { NamespaceApi } from "./namespace.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const namespaceApiInjectable = getInjectable({
|
|
||||||
id: "namespace-api",
|
|
||||||
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "namespaceApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new NamespaceApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default namespaceApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { NetworkPolicyApi } from "./network-policy.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const networkPolicyApiInjectable = getInjectable({
|
|
||||||
id: "network-policy-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "networkPolicyApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new NetworkPolicyApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default networkPolicyApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { NodeApi } from "./node.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const nodeApiInjectable = getInjectable({
|
|
||||||
id: "node-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "nodeApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new NodeApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default nodeApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { PersistentVolumeClaimApi } from "./persistent-volume-claim.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const persistentVolumeClaimApiInjectable = getInjectable({
|
|
||||||
id: "persistent-volume-claim-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "persistentVolumeClaimApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new PersistentVolumeClaimApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default persistentVolumeClaimApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { PersistentVolumeApi } from "./persistent-volume.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const persistentVolumeApiInjectable = getInjectable({
|
|
||||||
id: "persistent-volume-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "persistentVolumeApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new PersistentVolumeApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default persistentVolumeApiInjectable;
|
|
||||||
@ -1,35 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { PodDisruptionBudgetApi } from "./pod-disruption-budget.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const podDisruptionBudgetApiInjectable = getInjectable({
|
|
||||||
id: "pod-disruption-budget-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "podDisruptionBudgetApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new PodDisruptionBudgetApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
}, {
|
|
||||||
checkPreferredVersion: true,
|
|
||||||
allowedUsableVersions: {
|
|
||||||
policy: [
|
|
||||||
"v1",
|
|
||||||
"v1beta1",
|
|
||||||
],
|
|
||||||
},
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default podDisruptionBudgetApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { PodMetricsApi } from "./pod-metrics.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const podMetricsApiInjectable = getInjectable({
|
|
||||||
id: "pod-metrics-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "podMetricsApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new PodMetricsApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default podMetricsApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { PodSecurityPolicyApi } from "./pod-security-policy.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const podSecurityPolicyApiInjectable = getInjectable({
|
|
||||||
id: "pod-security-policy-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "podSecurityPolicyApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new PodSecurityPolicyApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default podSecurityPolicyApiInjectable;
|
|
||||||
@ -1,28 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { PodApi } from "./pod.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const podApiInjectable = getInjectable({
|
|
||||||
id: "pod-api",
|
|
||||||
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "podApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new PodApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default podApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { PriorityClassApi } from "./priority-class.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const priorityClassApiInjectable = getInjectable({
|
|
||||||
id: "priority-class-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "PriorityClassApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new PriorityClassApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default priorityClassApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { ReplicaSetApi } from "./replica-set.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const replicaSetApiInjectable = getInjectable({
|
|
||||||
id: "replica-set-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "replicaSetApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new ReplicaSetApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default replicaSetApiInjectable;
|
|
||||||
@ -1,23 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
import { ReplicationControllerApi } from "./replication-controller.api";
|
|
||||||
|
|
||||||
const replicationControllerApiInjectable = getInjectable({
|
|
||||||
id: "replication-controller-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
return new ReplicationControllerApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default replicationControllerApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { ResourceQuotaApi } from "./resource-quota.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const resourceQuotaApiInjectable = getInjectable({
|
|
||||||
id: "resource-quota-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "resourceQuotaApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new ResourceQuotaApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default resourceQuotaApiInjectable;
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
/**
|
|
||||||
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
||||||
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
||||||
*/
|
|
||||||
import { getInjectable } from "@ogre-tools/injectable";
|
|
||||||
import assert from "assert";
|
|
||||||
import { storesAndApisCanBeCreatedInjectionToken } from "../stores-apis-can-be-created.token";
|
|
||||||
import { RoleBindingApi } from "./role-binding.api";
|
|
||||||
import { kubeApiInjectionToken } from "../kube-api/kube-api-injection-token";
|
|
||||||
import { loggerInjectionToken } from "@k8slens/logger";
|
|
||||||
import maybeKubeApiInjectable from "../maybe-kube-api.injectable";
|
|
||||||
|
|
||||||
const roleBindingApiInjectable = getInjectable({
|
|
||||||
id: "role-binding-api",
|
|
||||||
instantiate: (di) => {
|
|
||||||
assert(di.inject(storesAndApisCanBeCreatedInjectionToken), "roleBindingApi is only available in certain environments");
|
|
||||||
|
|
||||||
return new RoleBindingApi({
|
|
||||||
logger: di.inject(loggerInjectionToken),
|
|
||||||
maybeKubeApi: di.inject(maybeKubeApiInjectable),
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
injectionToken: kubeApiInjectionToken,
|
|
||||||
});
|
|
||||||
|
|
||||||
export default roleBindingApiInjectable;
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user