Commit Graph
260 Commits
Author SHA1 Message Date
Lauri Nevala d26322df1a Merge branch 'master' into extension-auto-update 2022-01-20 13:35:13 +02:00
Panu Horsmalahti 23c38b1f4e Fix race condition with extension loading. (#4724)
Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2022-01-20 12:01:42 +02:00
Sebastian Malton 411b9a9a88 Add support for custom columns on catalog categories (#4708) 2022-01-19 10:22:22 -05:00
Jim Ehrismann d31ab690c2 Refactor app-preferences-registry to use di (#4671)
* converting app-preferences to use di

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* address review comments and fix lint

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>

* use compact license header

Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
2022-01-19 08:54:45 -05:00
Panu Horsmalahti 79c01daf6a Support extending KubernetesCluster in extensions (#4702)
* Support extending KubernetesCluster in extensions

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

* Simplify getItemsByEntityClass

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

* Make apiVersion string.

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

* Improve entity loading for extension custom types.

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

* Improve comment.

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

* Fix lint.

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

* Properly handle loading custom entity in cluster-frame

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

* Avoid .bind with .loadOnClusterRenderer

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

* Fix lint.

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

* Revert style change.

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

* Make loadOnClusterRenderer arrow function again, revert autoInitExtensions change as unnecessary

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

* Remove commented code.

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

* Document extending KubernetesCluster in extension guides.

Signed-off-by: Panu Horsmalahti <phorsmalahti@mirantis.com>
2022-01-19 14:57:42 +02:00
Lauri Nevala 4e081e3cc2 Fix license headers
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2022-01-18 15:11:10 +02:00
Lauri Nevala cc7a031814 Merge branch 'master' into extension-auto-update 2022-01-18 15:05:24 +02:00
Lauri Nevala 7561e04213 Fix lint issues
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2022-01-18 14:53:11 +02:00
Lauri Nevala 798ad85fad Do not check updates for bundled extensions from default sources
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2022-01-18 14:37:26 +02:00
Lauri Nevala f11c51d6df Merge branch 'master' into extension-auto-update 2022-01-18 10:36:58 +02:00
Janne Savolainen 589472c2b5 Shorten license header to reduce amount of clutter in top of the files (#4709)
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2022-01-18 10:18:10 +02:00
Lauri Nevala ee265a9db6 Merge branch 'master' into extension-auto-update 2022-01-17 11:11:02 +02:00
Janne Savolainen edd9dcd44b Fix duplicate import
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2022-01-14 08:04:25 +02:00
Janne Savolainen 00f6d6bc1f Merge remote-tracking branch 'origin/master' into eliminate-gst-from-app-paths 2022-01-14 07:59:42 +02:00
Sebastian Malton 2ee47a442a Reroute to landing page from previously registered extension cluster pages (#4385) 2022-01-12 08:47:42 -05:00
Sebastian Malton d40071a9d5 Fix CommandOverlay for extension API (#4673) 2022-01-11 11:58:23 -05:00
Janne Savolainen 995983f0b0 Fix code style
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>

Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2022-01-11 14:03:51 +02:00
Janne Savolainen 8d87bd0985 Merge remote-tracking branch 'origin/master' into eliminate-gst-from-app-paths
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2022-01-11 13:56:23 +02:00
Janne Savolainen e1a6d4c4a9 Merge remote-tracking branch 'origin/master' into eliminate-gst-from-app-paths 2022-01-10 17:13:20 +02:00
Janne SavolainenandMikko Aspiala ff9e9bd169 Re-implement some Extension API features using injectables
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>

Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2022-01-07 12:10:02 +02:00
Sebastian Malton f8ae1149fb Make all of Command* injectable, with some others too
Signed-off-by: Sebastian Malton <sebastian@malton.name>
2022-01-05 11:48:52 -05:00
Sebastian Malton abe90ad92a Add CRDs to Command Palette and fix bugs
- Deprecate the "scope" on command registrations as it is buggy and
  generally unfixable

- Switch to mounting CommandContainer in each new frame so that there is
  no need to broadcast anything other than opening palette

- Add CRD entries to the command registry within each cluster

- Add navigate to CommandActionContext to simplify handling of root
  frame scoped URLs

- Switch to using DI for some of the deps

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2022-01-05 11:48:51 -05:00
Sebastian Malton 4f75acf2b4 Ban circular dependencies (#3547) 2022-01-05 11:35:44 -05:00
Janne Savolainen 4224937260 Merge remote-tracking branch 'origin/master' into eliminate-gst-from-app-paths
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2022-01-05 15:04:43 +02:00
Janne SavolainenandMikko Aspiala 9d33fff906 Cascade different refactorings to eliminate global shared state from app paths
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>

Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2022-01-05 13:26:49 +02:00
Lauri Nevala 2bc7757907 Check if url starts with https://github.com
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2022-01-03 15:25:30 +02:00
Lauri Nevala 66d8e698fd Fix extension discovery test
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2022-01-03 15:09:11 +02:00
Lauri Nevala c332e2a0d9 Refactor update checking
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2022-01-03 14:33:38 +02:00
Juho Heikka 1db805b451 Extension tray menu items (#4619)
* Add extension ability to add tray menu items.

Signed-off-by: Juho Heikka <juho.heikka@gmail.com>

* Add tray menu extension documentation

Signed-off-by: Juho Heikka <juho.heikka@gmail.com>

* Add tests to tray menu items. Fix autorun infinite loop.

Signed-off-by: Juho Heikka <juho.heikka@gmail.com>

* Fix documentation

Signed-off-by: Juho Heikka <juho.heikka@gmail.com>

* Remove unnecessary slice()

Signed-off-by: Juho Heikka <juho.heikka@gmail.com>

* Define a type for tray menu registration

Signed-off-by: Juho Heikka <juho.heikka@gmail.com>

* Change TrayMenuRegistration not to leak or depend on Electron Menu API

Signed-off-by: Juho Heikka <juho.heikka@gmail.com>

* Update trayMenus Extension API documentation

Signed-off-by: Juho Heikka <juho.heikka@gmail.com>

* Refactor all tests to use runInAction

Signed-off-by: Juho Heikka <juho.heikka@gmail.com>
2021-12-31 15:50:01 +02:00
Janne SavolainenandMikko Aspiala 6ca58570b0 Replace TopBarRegistry with reactive solution
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2021-12-31 09:32:19 +02:00
Lauri Nevala e5d9de3206 Allow to auto-update extensions
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
2021-12-29 12:59:14 +02:00
Janne SavolainenandMikko Aspiala c5613a2e6a Remove WelcomeBannerRegistry in favor of reactive solution
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2021-12-28 13:55:55 +02:00
Janne SavolainenandMikko Aspiala 04ac2ff3dd Remove WelcomeMenuRegistry in favor of reactive solution
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2021-12-28 13:55:54 +02:00
Janne SavolainenandMikko Aspiala 908a40975e Extract minimal dependencies over a god class to satisfy Interface Segregation Principle and make stubbing in unit testing easier
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2021-12-28 11:51:35 +02:00
Janne SavolainenandMikko Aspiala 13873f5d85 Replace a dependency to full implementation with an interface to allow minimal stubbing
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2021-12-28 11:51:34 +02:00
Janne SavolainenandMikko Aspiala a9189f82e6 Stop using global shared state for ExtensionDiscovery and it's relatives
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2021-12-28 11:51:34 +02:00
Janne SavolainenandMikko Aspiala 6f0686e9a4 Adapt to changes in injectable
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2021-12-27 14:17:38 +02:00
Juho Heikka 9284741df5 Show splash window until bundled extensions have been loaded (#4570)
* Show splash window until bundled extensions have been loaded

Signed-off-by: Juho Heikka <juho.heikka@gmail.com>

* Remove unnecessary variable.

Signed-off-by: Juho Heikka <juho.heikka@gmail.com>

* Refactor autoInitExtensions

Signed-off-by: Juho Heikka <juho.heikka@gmail.com>

* Add timeout to waiting for bundled extensions to load

Signed-off-by: Juho Heikka <juho.heikka@gmail.com>
2021-12-23 11:00:18 +02:00
Sebastian Malton bde0a9ef91 Change isEnabledForCluster to use KubernetesCluster instead of Cluster (#4584) 2021-12-17 08:28:47 -05:00
Janne Savolainen 2189679a30 Merge remote-tracking branch 'upstream/master' into make-menu-registry-obsolete
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2021-12-15 16:14:08 +02:00
Janne Savolainen 9f7515db0e Revert "Introduce a way to start replacing usages of Singleton base-class with no changes required on use places"
This reverts commit 34a47f5f

Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2021-12-15 15:37:37 +02:00
Janne Savolainen c92c8f8a11 Replace global state usages of ExtensionLoader with DI
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2021-12-15 15:37:36 +02:00
Sebastian Malton 1e22cffcd8 Fix extension engine range not working for some ^ ranges (#4554) 2021-12-14 11:57:34 -05:00
Alex Andreev 3dd6b432c9 Export KubeJsonApi to extensions (#4496)
* Export KubeJsonApi to extensions

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

* Make forCluster() to consume clusterId as arg

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

* Fix lint

Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
2021-12-09 15:11:34 +03:00
Janne Savolainen b4a1c2af9f Make ExtensionLoader injectable to avoid confusion when instance should be created
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2021-12-09 08:14:15 +02:00
Janne Savolainen f9cf08b4a8 Make sure that extensions have been initialized before exposing them as enabled extensions
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2021-12-09 07:41:43 +02:00
Janne Savolainen 717b62d2e6 Remove obsolete code
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
2021-12-08 13:10:50 +02:00
Janne SavolainenandMikko Aspiala 67c24cac9a Switch to getting menu items by observing change in extensions instead local state
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
2021-12-08 13:10:50 +02:00
Alex Andreev d73df7fe0d Show active hotbar on bottom (#4476)
- Extends extension API to support choosing sides for bottom bar entries
2021-12-03 09:41:08 -05:00
Sebastian Malton 8f84f394fe Fix all-or-nothing when initially loading extensions (#4384)
* Fix all-or-nothing when initially loading extensions

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

* Log error instead of displaying error box

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2021-11-22 20:30:47 -05:00