1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00
Commit Graph

368 Commits

Author SHA1 Message Date
Roman
4474d87ed2
Fix: Unhandled exception for <DropFileInput disabled={true}/> (#1512)
* fix: invalid handling disabled={false} causing app crash

Signed-off-by: Roman <ixrock@gmail.com>

* re-fix: put React.Children.only() validation inside try-catch to avoid crash as well

Signed-off-by: Roman <ixrock@gmail.com>
2020-11-25 11:55:30 +02:00
Jari Kolehmainen
8753b2b17c
Tweak install extension ux (#1510)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
Co-authored-by: Roman <ixrock@gmail.com>
2020-11-25 11:53:40 +02:00
Roman
77ae31550a
Allow to install packed extensions from URL or local file (#1456)
* Option to install an extension from filesystem/url #1227 -- part 1 (UI)

Signed-off-by: Roman <ixrock@gmail.com>

* DropFileInput: common component to handle droped files (replaced also in add-cluster-page)

Signed-off-by: Roman <ixrock@gmail.com>

* fix: install via url-string on input.submit

Signed-off-by: Roman <ixrock@gmail.com>

* ui tweaks & minor fixes

Signed-off-by: Roman <ixrock@gmail.com>

* more ui/ux tweaks & fixes

Signed-off-by: Roman <ixrock@gmail.com>

* layout fixes

Signed-off-by: Roman <ixrock@gmail.com>

* component renaming: `copy-to-click` => `copy-to-clipboard` => `clipboard`

Signed-off-by: Roman <ixrock@gmail.com>

* reworks -- part 1

Signed-off-by: Roman <ixrock@gmail.com>

* fix downloading file, added common/utils/downloadFile

Signed-off-by: Roman <ixrock@gmail.com>

* confirm before install, unpack tar first steps

Signed-off-by: Roman <ixrock@gmail.com>

* installation flow, extracting .tgz

Signed-off-by: Roman <ixrock@gmail.com>

* clean up, fix lint issues

Signed-off-by: Roman <ixrock@gmail.com>

* update .azure-pipelines.yml

Signed-off-by: Roman <ixrock@gmail.com>

* fixes & refactoring

Signed-off-by: Roman <ixrock@gmail.com>

* fix lint harder :/

Signed-off-by: Roman <ixrock@gmail.com>

* fix validation

Signed-off-by: Roman <ixrock@gmail.com>

* fix validation harder

Signed-off-by: Roman <ixrock@gmail.com>

* responding to comments, fixed package validation

Signed-off-by: Roman <ixrock@gmail.com>

* common/utils/tar.ts: reject with Error-type

Signed-off-by: Roman <ixrock@gmail.com>

* fix: unit-tests

Signed-off-by: Roman <ixrock@gmail.com>
2020-11-25 09:55:28 +02:00
Alex Andreev
2da598b66e
Set scrollbar colors as global styles (#1484)
* Setting global webkit-scrollbar styles

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Removing usage of custom-scrollbar mixin

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Set overflow:auto on .Table

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Fixing .drawer-content paddings

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Cleaning up

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-25 10:25:37 +03:00
Lauri Nevala
29ea0c8404
Resolve extension enabled status when loading it (#1485)
* Resolve extension enabled status when loading it

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>

* Check if extension is enabled in store unless it is bundled

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>

* Return false by default for isEnabled

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>

* Refactor isEnabled assignment

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-25 09:09:26 +02:00
Sebastian Malton
ca49fb98d9
remove @observable.shallow from Lens(M|R)Extension (#1504)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-24 12:41:57 -05:00
Sebastian Malton
4e6b8ee10e
Add designated folder for extensions (#1245)
* add store for mapping extension names to filesystem paths

- add extension mechinism for getting a folder to save files to

- add test to make sure that extensions are being loaded

- skip extension loading test

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-24 10:28:08 -05:00
Jari Kolehmainen
1be86b34f4
Add LensRendererExtension.isEnabledForCluster (#1502)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-24 16:15:14 +02:00
Lauri Nevala
cb14d77a56
Track more events from adding a cluster (#1481)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-24 14:01:51 +02:00
Panu Horsmalahti
ff93760dc4
Enable object-shorthand rule (#1500)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-24 13:16:35 +02:00
Panu Horsmalahti
2a8cfe5e67
Add React Developers Tools (#1410)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-24 12:45:12 +02:00
Panu Horsmalahti
c79cee0311
Watch for added/removed local extensions (#1482)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-24 10:48:40 +02:00
Sebastian Malton
5005d34c2e
change BaseRegistry to only have one type parameter (#1474)
* change BaseRegistry to only have one type parameter

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-23 12:54:39 -05:00
Lauri Nevala
0a5e7a048d
Report enabled extensions (#1451)
* Report enabled extensions

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>

* Add missing semicolons

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>

* Refactoring

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>

* Add missing semicolon

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-23 13:47:14 +02:00
Lauri Nevala
19150fca84
Catch errors return error response when fetching chart or chart values fails (#1478)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-23 13:45:07 +02:00
Jari Kolehmainen
2f17a7ec67
Replace support-page extension with a link to the documentation support page (#1469)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-23 13:01:40 +02:00
Lauri Nevala
6a0dd4edfb
Replace deprecated stable helm repository with bitnami (#1479)
* Replace deprecated stable repo with bitnami

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-23 09:07:37 +02:00
Alex Andreev
8c73861962
Open last active cluster after switching workspaces (#1444)
* Save and restore lastActiveClusterId

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Activate clusters from workspaces page

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Fix saving last cluster while jumping from tray

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Adding workspace switch tests

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Remove console.log()

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Cleaning up

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Clean duplicated ClusterId definition

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Moving lastActiveClusterId field into WorkspaceModel

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* fix extensionLoader error on dev environments where renderer might start early (#1447)

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* Add Search by Ip to Pod View (#1445)

Signed-off-by: Pavel Ashevskii <pashevskii@mirantis.com>

* Make BaseStore abstract (#1431)

* make BaseStore abstract so that implementers are forced to decide how to store data

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Enforce semicolons in eslint

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>

* Add a few missing folders to be linted.

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>

* Use @typescript-eslint/semi.

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>

* Allow extension cluster menus to have a parent (#1452)

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* fix SwitchCase indent rule in eslint (#1454)

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Revert "fix SwitchCase indent rule in eslint (#1454)"

This reverts commit 082774fe6e.

* Revert "Allow extension cluster menus to have a parent (#1452)"

This reverts commit 622c45cd6d.

* Revert "Use @typescript-eslint/semi."

This reverts commit 890fa5dd9e.

* Revert "Add a few missing folders to be linted."

This reverts commit c7b24c2922.

* Revert "Enforce semicolons in eslint"

This reverts commit ca67caea60.

* Revert "Make BaseStore abstract (#1431)"

This reverts commit 4b56ab7c61.

* Revert "Add Search by Ip to Pod View (#1445)"

This reverts commit 4079214dc1.

* Revert "fix extensionLoader error on dev environments where renderer might start early (#1447)"

This reverts commit 8a3613ac6f.

* Split workspace tests to smaller ones

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Missing semicolons

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Split workspace tests a bit more

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Adding extra click in Add Cluster button

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Adding more awaits to check running cluster

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Wait for minikube before running tests

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

Co-authored-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
Co-authored-by: pashevskii <53330707+pashevskii@users.noreply.github.com>
Co-authored-by: Sebastian Malton <sebastian@malton.name>
Co-authored-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-20 14:53:28 +03:00
Panu Horsmalahti
22ff706f4c
Support networking.k8s.io/v1 for Ingress (#1439)
* Support networking.k8s.io/v1 for Ingress

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>

* Add helper method to Ingress

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>

* Fix lint errors.

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-20 11:59:11 +02:00
Alex Andreev
57a879c2e8
Making text selection bg color transparent a bit (#1463)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-20 12:55:16 +03:00
Jari Kolehmainen
6e73c8ffc2
Fix extension cluster menu highlight/routing issues (#1459)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-20 09:29:38 +02:00
Sebastian Malton
43976f5bd9
fix SwitchCase indent rule in eslint (#1454)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-19 15:15:49 -05:00
Jari Kolehmainen
d7cba7d4d6
Allow extension cluster menus to have a parent (#1452)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-19 21:39:53 +02:00
Panu Horsmalahti
460dfe4d2b Use @typescript-eslint/semi.
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-19 18:12:52 +02:00
Panu Horsmalahti
1477bb8274 Enforce semicolons in eslint
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2020-11-19 16:35:04 +02:00
Sebastian Malton
0f3f5611ba
Make BaseStore abstract (#1431)
* make BaseStore abstract so that implementers are forced to decide how to store data

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-19 09:24:41 -05:00
pashevskii
b64694acda
Add Search by Ip to Pod View (#1445)
Signed-off-by: Pavel Ashevskii <pashevskii@mirantis.com>
2020-11-19 09:24:06 -05:00
Jari Kolehmainen
d60eee20cc
fix extensionLoader error on dev environments where renderer might start early (#1447)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-19 16:11:58 +02:00
Jari Kolehmainen
5589a99e7e
Fix TypeError: Cannot read property 'stopServer' of undefined (#1440)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-19 13:48:43 +02:00
Jari Kolehmainen
5aaacb21f9
Refactor ipc module (#1225)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-19 11:48:13 +02:00
Jari Kolehmainen
c4b98534dc
kube-auth-proxy: accept only target cluster hostname (#1433)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-19 08:32:07 +02:00
Lauri Nevala
3197e3a1fe
Catch errors when responding from proxy error (#1416)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-18 12:33:53 +02:00
Lauri Nevala
126e1ff7a8
Reorder File menu (#1420)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-18 11:03:38 +02:00
Lauri Nevala
04517148c0
Add computed name property to cluster (#1428)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-18 09:12:11 +02:00
Lauri Nevala
d19eb57037
Track service start and stop events (#1414)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-18 08:55:57 +02:00
Alex Andreev
960bbe6813
Showing colors in logs (#1419)
* Converting ansi values to colored html

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Rewriting AnsiUp colors for search overlay

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-18 08:31:36 +03:00
Alex Andreev
6fd0bebdd6
Fixing workspaces adding/editing (#1405)
* Fix creating new workspace

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Show not yet enabled workspaces in list

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Not showing disabled workspaces

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-17 16:35:59 +03:00
Sebastian Malton
25be6401e2
cleanup main side of metrics route for readability (#988)
* cleanup main side of metrics route for readability

* split out ??= for headers

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-16 10:43:53 -05:00
Roman
13dbdac2f2
PageRegistration / PageMenuRegistration fixes & more simplification (#1386)
* PageRegistration & PageMenuRegistration fixes & more simplification, fix #1383

Signed-off-by: Roman <ixrock@gmail.com>

* clean up test, deprecate page.routePath

Signed-off-by: Roman <ixrock@gmail.com>

* fix: proper `isActive` state matching for page-menu-target to page considering current document location

Signed-off-by: Roman <ixrock@gmail.com>
2020-11-16 15:18:53 +02:00
Jari Kolehmainen
596e60a6f3
Generate extension-api .d.ts and .js files using tsc (#1387)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-16 15:09:16 +02:00
Alex Andreev
d612626801
Adding Extensions item for non-mac menu (#1392)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-16 13:50:32 +03:00
Alex Andreev
d559d5e62a
Exporting active theme to extensions (#1371)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-16 12:10:35 +02:00
techknowlogick
fce05c6cb2
Use latest alpine version (3.12) for shell sessions (#1384)
Signed-off-by: Matti R <matti@mdranta.net>
2020-11-16 12:09:21 +02:00
Alex Andreev
f98d11a0be
MInor workspace fixes (#1382)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-15 17:04:21 +03:00
Jari Kolehmainen
55b6edfc2a
Fix PageRegistry.getByPageMenuTarget issue when package name has special chars (#1380)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-14 10:16:40 +02:00
Sebastian Malton
4d3204766b
add retry cap to handleStaticFile to prevent an infitite loop (#1373)
* add retry cap to handleStaticFile to prevent an infitite loop

* 'yarn -> yarn run' for node_module dependencies

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-13 15:45:57 -05:00
Jari Kolehmainen
0fb859a22a
Default PageRegistration.routePath to path based on id (#1374)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-13 19:37:03 +02:00
Jari Kolehmainen
df0f080380
Simplify pages/menus/registry extension api internal implementation (#1364)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
Co-authored-by: Roman <ixrock@gmail.com>
2020-11-13 17:04:39 +02:00
Alex Andreev
73d50f4695
Fix Landing Page width (#1359)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-13 15:36:45 +03:00
Roman
faa1cef307
PageRegistration & BaseRegistry refactoring (#1334)
Signed-off-by: Roman <ixrock@gmail.com>
Co-authored-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-12 16:29:02 +02:00
Alex Andreev
6432b3bb9e
Removing parental element styles that affect extensions (#1331)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-12 12:58:59 +02:00
Jari Kolehmainen
4222359bd6
Add LensRendererExtension.navigate (#1345)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-12 10:30:57 +02:00
Jari Kolehmainen
deb4773b44
Allow to specify KubeObjectDetailRegistration priority (#1335)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-12 09:16:22 +02:00
Roman
1f88c05e82
Refactoring: removed kube versioned api (#1328)
Signed-off-by: Roman <ixrock@gmail.com>
2020-11-12 08:39:50 +02:00
Jari Kolehmainen
00be4aa184
Remove windowManager from extension api (#1323)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-11 21:55:49 +02:00
Jari Kolehmainen
6a908cb528
Expose kube object store types to extensions (#1326)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-11 16:12:31 +02:00
Roman
c67dad54e3
fix: allow to select kube-api objects with label & field selectors (#1327)
Signed-off-by: Roman <ixrock@gmail.com>
2020-11-11 13:42:36 +02:00
Lauri Nevala
bcbbe140b9
Expose registration and related component interfaces to extensions (#1322)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-11 11:56:13 +02:00
Jari Kolehmainen
d0102a2d9a
Expose all custom k8s api classes via extension api (#1319)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-11 11:48:13 +02:00
Lauri Nevala
85c4a10114
Implement KubeObjectStatusText extension API (#1188)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-11 08:57:15 +02:00
Sebastian Malton
a78bbb5f6c
Fix rendering of boolean values in CRDs (#1087)
* Fix rendering of boolean values in CRDs

- add optional special casing for boolean values in DrawerItems and
  TableRows since React (imo annoying fashion) does not render boolean
  values by default.
- add a spinner on the sidebar for when the CRD menu is expeanded but
  the entries have not been loaded yet.
- Add ability to double click a Badge to expand, also make it so that
  Badges highligh all text on first click.

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-10 10:10:19 -05:00
Alex Andreev
dd90dcb7f0
Removing !important statements from theme variables (#1303)
* Removing !important statements from theme vars

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Wait for user store to load

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Fix this reference

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Aligning test with resetTheme() fixes

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-10 15:16:16 +03:00
Lauri Nevala
05188ef3cc
Do not expose registries to extensions (#1304)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-10 12:46:40 +02:00
Alex Andreev
b2f3cdd0d2
Keeping Icon focus state only for keyboard (#1234)
* Passing toolbar prop into action menus

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Toggling .mouse-intent

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Icon focus restyling

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Adding what-input dependency

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-10 12:36:06 +03:00
Lauri Nevala
0f8e8c2237
Expose CRD api to extensions (#1297)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-10 09:02:32 +02:00
Jim Ehrismann
033a91f002
implemented app menu testing support (#1105)
* implemented app menu testing support

* addded Preferences page helm repo test

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
2020-11-09 15:10:30 -05:00
Alex Andreev
8d1c29ae4c
Docs: extension styling and theming (#1267)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-09 19:05:27 +02:00
Sebastian Malton
d0ada00a18
Add mechanism for users to specify accessible namespaces (#702)
* Add mechanism for users to specify namespaces that are accessible to them. This is generally useful for when the user doesn't have permission to list the namespaces.

- Add new component "EditableList" which provides a simple way to
  display a list of items that can be added too.

- Add the ClusterAccessibleNamespaces to the GeneralClusterSettings

- style editable list list of lists, switch to using <>

Signed-off-by: Sebastian Malton <sebastian@malton.name>

Co-authored-by: Sebastian Malton <smalton@mirantis.com>
2020-11-09 10:45:09 -05:00
Alex Andreev
16fb35e3f9
Log search (#1114)
* Moving logs to virtual list

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Introducing log search

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Setting ref for VirtualList to access its methods

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Introducing search store

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Centering overlay when scroll to it

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Using SearchInput in PodLogSearch

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Using Prev/Next icons for search

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* No trigger logs load when scrolled by method

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* SearchInput refactoring

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Adding find counters

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Clean search query on dock tab change

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Refresh search when logs get changed

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Case-insensitive search

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Improve logs scrolling experience

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Catching empty logs in various places

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Fixing downloading logs

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Clean up some duplicated styles

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Removing jump-to-bottom animation

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Fixing since label

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Reducing container selector size

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Scroll down to bottom after each reload

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Fix search within timestamps if they not provided

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Use log row hover color from theme

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Add search bindings for 'Esc' & 'Enter' hits

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Focus input fields on CmdOrCtrl+F

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Move search.store.ts in to /common folder

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* search.store.ts -> search-store.ts

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Adding test for search store

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Adding integration tests for logs

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Fixing scroll jumping bug

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Removing download icon check for testing purpose

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Removing clicking on nginx-create-pod-test

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Moving log tests before cluster operations

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Build extensions before integration tests

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>

* Build also npm before integration tests

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>

* Move npm build and extension build into own build step

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>

* Removing separator sketches

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Horizontal scrolling to founded keyword

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Delaying horizontal scrolling

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

Co-authored-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-11-09 17:46:14 +03:00
Roman
f69f8c793f
Export more UI components via extensions-api (#1285)
* export more UI components via extensions-api, touches #1277 #1284

Signed-off-by: Roman <ixrock@gmail.com>

* fix build, added table + notification-store exports

Signed-off-by: Roman <ixrock@gmail.com>
2020-11-09 15:16:32 +02:00
chh
85f0ef8c2e
Add webpack hot-reload/cache plugins to improve Lens DX (#1250)
* Add webpack-dev-server (for hot module replacement) to serve statics, add HardSourceWebpackPlugin to improve re-compiling speed

* Serve statics using webpack-dev-server instead of lens-proxy, redirect request of Lens.html/Lens.js to webpack-dev-server

* Add react-refresh-webpack-plugin and its dep for hot-reload

* Add hot-reload plugin, and make proxy redirects requests to webpackdevserver

* Add hard-source webpack plugin to main process

* Remove parameter 'path' of handleStaticFile

* Upgarde webpack to v4 latest stable

* Fix build error: plugins shouldnt be null

Signed-off-by: Hung-Han (Henry) Chen <1474479+chenhunghan@users.noreply.github.com>
2020-11-09 21:04:41 +08:00
Roman
474aaae8c6
ApiManager.registerStore should be simplified #1275 (#1278)
Signed-off-by: Roman <ixrock@gmail.com>
2020-11-09 13:30:41 +02:00
Roman
94ac081588
Extensions api fixes (#1233)
* fix: create extension instance only when enabled

Signed-off-by: Roman <ixrock@gmail.com>

* mark extension.isEnabled with private modifier

Signed-off-by: Roman <ixrock@gmail.com>

* try-catch errors for extension.disable()

Signed-off-by: Roman <ixrock@gmail.com>

* fixes & refactoring

Signed-off-by: Roman <ixrock@gmail.com>

* make ext.isBundled non optional

Signed-off-by: Roman <ixrock@gmail.com>
2020-11-07 18:56:26 +02:00
Alex Andreev
2197e5e53d
Renaming theme .json files (#1256)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-06 15:30:55 +03:00
Mario Sarcher
3bc45218c1
Documentation (MKDOCS) (#1230)
Co-authored-by: Steve Richards <srichards@mirantis.com>
Co-authored-by: Mario Sarcher <msarcher@mirantis.com>
Co-authored-by: steve richards <steve.james.richards@gmail.com>
Co-authored-by: Paul Williams <pawilliams@mirantis.com>
Co-authored-by: pauljwil <pauljwil@gmail.com>
2020-11-05 16:38:56 +02:00
pashevskii
d074e0499f
Restart deployment (#1175)
Signed-off-by: Pavel Ashevskii <pashevskii@mirantis.com>
2020-11-05 10:23:14 +03:00
Roman
f9578ba407
UI for enabling/disabling extensions (#1208)
* Extensions page and menu item

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Basic extension list view

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Adding get userExtensions filter

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Using WizardLayout at extension page

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Adding search to extension page

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Few style fixes

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* clean up

Signed-off-by: Roman <ixrock@gmail.com>

* added folder-icon to open extensions in finder, refactoring

Signed-off-by: Roman <ixrock@gmail.com>

* remove export warnings in dev:main, tooltip.getPosition() fix

Signed-off-by: Roman <ixrock@gmail.com>

* refactoring base lens-extension.ts, added `isBundled` flag

Signed-off-by: Roman <ixrock@gmail.com>

* added enabled/disable buttons

Signed-off-by: Roman <ixrock@gmail.com>

* auto enable/disable extensions -- part 1

Signed-off-by: Roman <ixrock@gmail.com>

* auto enable/disable extensions -- part 2

Signed-off-by: Roman <ixrock@gmail.com>

* auto enable/disable extensions -- part 3

Signed-off-by: Roman <ixrock@gmail.com>

* auto enable/disable extensions -- part 4

Signed-off-by: Roman <ixrock@gmail.com>

* refactoring & fixes

Signed-off-by: Roman <ixrock@gmail.com>

* fix: use page-layout with fullsize viewport

Signed-off-by: Roman <ixrock@gmail.com>

Co-authored-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-04 19:25:36 +02:00
Sebastian Malton
02b9ac6b8b
Add @types/node to devDeps for npm extension (#1217)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2020-11-04 15:44:24 +02:00
pashevskii
0497947159
[BugFix] Chart details are not updated on selecting another chart (#1155)
Signed-off-by: Pavel Ashevskii <pashevskii@mirantis.com>
2020-11-03 18:41:30 +03:00
Alex Andreev
e3354f3b75
Fixing return statements in Pod menus (#1211)
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-11-03 16:22:54 +03:00
chh
484de2ec21
Add +/- buttons in scale deployment popup screen (#1191)
* Add @testing-library/jest-dom and @testing-library/react for writing test cases

* Make eslint check __mocks__/*.ts files

* Mock electron.ipcRenderer.on to prevent errors in React compoment test cases

* Mock <Trans /> from @lingui/macro as a component simplely returns children components

* Use optional chaining operator (?.) to avoid TypeError: Cannot read property 'replicas' of undefined

* Add jest-fetch-mock for mocking global.fetch, activate for all test cases in jest.setup.ts

* Add basic tests for <DeploymentScaleDialog /> to ensure it initialises/renders without errors

* Add +/- button for changing desired replicas, and its test cases

* Adjust the styles of +/- buttons container to make sure it aligns with the slider

* Refactor after rebase from master

* Use var defined in vars.scss

* Add flex align-center to slider-container and remove margin-top: -4px

* Use <Icon /> to replace <i/>

* Add flex gaps to plus-minus-container

Signed-off-by: Hung-Han (Henry) Chen <1474479+chenhunghan@users.noreply.github.com>
2020-11-03 20:30:36 +08:00
Jari Kolehmainen
3ed7d93e91
Load symlinked extension folders (#1207)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-03 08:35:40 +02:00
Jari Kolehmainen
7a6f6441af
Expose more apis for KubeObjectListLayout usage (#1194)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-02 19:28:00 +02:00
Jari Kolehmainen
c7f77a01f9
Fix UI staleness after network issues (#1192)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-02 14:51:04 +02:00
Roman
32ca885596
License extension (#1174)
* License menu item should come from an extension #1141

Signed-off-by: Roman <ixrock@gmail.com>

* fix: expose `Util.openExternal` via extensions-api

Signed-off-by: Roman <ixrock@gmail.com>

* move LICENSE back to root

Signed-off-by: Roman <ixrock@gmail.com>
2020-11-02 13:03:00 +02:00
Jari Kolehmainen
da862db0b9
Fix proxy upgrade socket timeouts (#1190)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-11-02 08:17:08 +02:00
Jari Kolehmainen
70a8982c9f
Add missing kubeObjectDetailItems observable to LensRendererExtension (#1187)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-30 21:49:16 +02:00
Jari Kolehmainen
d23da79538
Expose KubeObjectListLayout to extensions (#1186)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-30 16:25:57 +02:00
Lauri Nevala
f126264d47
Telemetry improvements (#1180)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-10-30 16:09:59 +02:00
Jari Kolehmainen
eb5aca628d
Expose kubeObjectDetailRegistry via extension-api (#1185)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-30 15:57:32 +02:00
Alex Andreev
c5298548cb Replace xs to smallest className
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-10-30 15:13:52 +03:00
Alex Andreev
924cf14fd5 Removing animation visibility delay
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-10-30 13:05:50 +03:00
Alex Andreev
7817db39f2 Status bar improvements
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-10-30 13:05:22 +03:00
Jari Kolehmainen
4a6553967d
Improve how extensions can manage cluster/workspace stores (#1176)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-30 09:45:09 +02:00
Jari Kolehmainen
e4c56512e7
Fix regression caused by #1171 (#1172)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-29 12:06:37 +02:00
Alex Andreev
a583dbe6d3
Fix: path checks in custom extension loader (#1170)
* Check for path existence and directory type

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>

* Check for package.json availability

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2020-10-29 11:23:54 +03:00
Jari Kolehmainen
66d5fdd8b5
Optimize ExtensionManager#load (#1171)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-29 09:53:25 +02:00
Jari Kolehmainen
40e228c1ac
Fix npm package missing types (#1167)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-28 12:48:37 +02:00
Jari Kolehmainen
c3bde1ad00
Fix bundled extension install on Linux/AppImage (#1163)
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
2020-10-28 10:16:52 +02:00
Roman
bfdbf02830
fix: correct command in Makefile for compiling extension-types, typo fix (#1160)
Signed-off-by: Roman <ixrock@gmail.com>
2020-10-27 22:41:35 +02:00