- Fix not displaying spinner while object is not defined
- Fix not displaying loading error if object is not defined
Signed-off-by: Sebastian Malton <sebastian@malton.name>
(cherry picked from commit 07568839f6)
* Make sure release details are updates when opening details
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Relax filtering of resources to prevent crashing when release has installed resources in another namespace
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Add Open Closed Principle compliant way to introduce global overrides without modification in getDiForUnitTesting
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Rework helm release details to fix multiple bugs
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove redundant optional chaining
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Simplify code
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Relax validator for installing charts
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Tweak spacing between words in confirmation dialog
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Add mocks for monaco editor and virtualized auto sizer to allow components to be rendered in unit tests
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Improve typing for a function
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove usage of shared global state from a component
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Provide a way to unit test usages of storages
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Add way to get current value from select in behavioural unit tests
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Rework installation of helm charts to get rid of the majority of bugs
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Update snapshots
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove technical test for being covered in behaviours
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Split behaviour to smaller pieces
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Add tests accidentally removed back
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Mark functions causing side effects
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove behaviour covered by other behaviours
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Tweak naming
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove unused dependency
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Add guards to prevent activation errors slipping through
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Make sure all logging has a message, output less errors when prometheus fails
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Improve logging from getPortFromStream
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* feat: new view for PriorityClass under Config menu
Signed-off-by: Piotr Roszatycki <piotr.roszatycki@gmail.com>
* Added priorityClassDetailItemInjectable
Signed-off-by: Piotr Roszatycki <piotr.roszatycki@gmail.com>
* Removed uneccessary defensive code
Signed-off-by: Piotr Roszatycki <piotr.roszatycki@gmail.com>
* Fix crash in HelmChartDetails
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix bug in helm chart icon fallback
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Update snapshots
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Factor out HelmChartIcon for better reusability
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix compile error
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix remaining type errors
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Remove HelmChart list figure background
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Removing dangerouslySetInnerHTML usage
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Snapshots update
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Using currentColor from cascade instead of specific one
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
Co-authored-by: Alex Andreev <alex.andreev.email@gmail.com>
* Introduce helper for advancing fake time
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce reactive now to kludge around global shared state in library
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Replace all usages of "now" from mobx-utils with our own kludge to get rid of shared global state between unit tests
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Consolidate all usages of advanceTimersByTime to make sure things happening based on timers are run correctly
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix incorrect expect in test
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Enable skipped unit test since prerequisites are done
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* auto-update notifications on the status bar
Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
* integrated with new and improved autoupdate code
Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
* lint
Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
* refactored to include AutoUpdateComponent in the statusBarItemsInjectable
Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
* refactor to use a registrator
Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
* fix lint, remove unused code
Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
* refactored for the simplified logic for injecting many instances PR
Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
* using the update syncBox injectables directly for status bar notifications
Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
* removed update broadcasting/listening, updated snapshots
Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
* fixing tests
Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
* fixed tests
Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
* cleanup after rebase to master
Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
* address review comments
Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
* fixed incorrect injectable id
Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
* address review comments
Signed-off-by: Jim Ehrismann <jehrismann@mirantis.com>
* Tweak code-style
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
* Give an UpdateButton injectables
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* AppUpdateWarning class and injectable
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Rename folder to app-update-warning
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Add appPublishDateInjectable
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Inject ipcRenderer into app-update-warning
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Add setter for downloadedUpdateDate
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Add tests for AppUpdateWarning
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* appPublishDate initial test
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Parsing app release date from the package version
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Introduce appUpdateWarningLevelInjectable
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Fix withInjectables props
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Determine warning from days passed after update available
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Save update available date in session storage
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Move quitAndInstall() to separate function
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Register quit-and-install ipc channel
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Make update function injectable for button
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Update tests
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Set proper timeframes
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Setting global UTC timezone for tests
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Refresh tests
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Testing warning level changes over time
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Remove unused app-publish-date files
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Make linter happy
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Pass quitAndInstallUpdateInjectable to UpdateButton
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Remove updateAppInjectable
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Initial tests for installing update using topbar button
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Refactor AppUpdateWarning class using injectables
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Permit side effects in injectable
periodicalCheckForUpdateWarningInjectable
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Temporarily set noop for UpdateButton update()
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Remove previous implementation files
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Unoverriding topbar injectables
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Render TopBar inside ApplicationBuilder
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Move updateWarningLevelInjectable
to /common subfolders from /main
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Make UpdateButton warning prop observable
by using computed() structure
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Updating snapshots
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Add sync box files allowing to restart & install
update from renderer process
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Add Update button dropdown tests
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Fix jest.advanceTimersByTime usage
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Check for severe warning level
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Linter fixes
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Remove usage of legacy global causing trouble in unit tests
Co-authored-by: Alex Andreev <alex.andreev.email@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make update warning level completely reactive and responsibility of a renderer
Co-authored-by: Alex Andreev <alex.andreev.email@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove dead code
Co-authored-by: Alex Andreev <alex.andreev.email@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove tests that are covered by behaviour
Co-authored-by: Alex Andreev <alex.andreev.email@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix restarting and installing update when pressing update button
Co-authored-by: Alex Andreev <alex.andreev.email@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Update snapshots
Co-authored-by: Alex Andreev <alex.andreev.email@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove dead code
Co-authored-by: Alex Andreev <alex.andreev.email@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Update more snapshots
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove duplication from behavioural unit test
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Reducing too large MenuItems height
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Reduce too large UpdateButton paddings
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Add jest globalSetup into package.json
to fix timezone test
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Do not triggering computed value every time it is being used
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
* Permit modular directory structures for behaviours in spirit of "Screaming Architecture"
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Implement env-agnostic helper to resolve proxy from URL
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Implement way to resolve a proxy, that is not reliant on existing windows
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Restore reliancy on existing windows for resolving proxy for fears of Electron events misbehaving because of a temp-window used in case no windows are open
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Make resolving a proxy throw if no browser window is available
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Extract minimal abstraction for specifically logging error instead of also warn, info, etc.
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Make decorator for error logging not create orphan promise for easier controllability
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Add error logging to resolving of proxy
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Expose resolving of proxy in extension-API
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Add missing general override
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Add test to add documentation
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Disperse implementation of resolve-proxy back to conventional directory structure instead of an experimental one
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Revert "Permit modular directory structures for behaviours in spirit of "Screaming Architecture""
This reverts commit 75e1231b0e61b74d030d12365352226e7f1ce500.
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Rename a helper for less ambiguity
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Add tsdoc for "resolveSystemProxy" exposed in Extension-API
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Fix cluster frame display issue
- Add some defensive code to prevent this sort of infinite loop
- Add some unit tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix unit tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix build
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix lint
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Factor out injectable for getting of cluster config data
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Introduce way for execute file
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make typing of HelmRepo shared
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce way to get Helm environment values
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce function to read YAML file
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce competition for listing active helm repositories in preferences
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make sense in name of injectable
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce helper for opening and selecting values of select
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce competition for activating, deactivating public helm repositories in preferences
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce competition for deactivating helm repository from list of active repositories
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Add missing global overrides
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make some tests more deterministic by mocking tooltips
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce competition for activating custom helm repository in preferences
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Update snapshots
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove old implementation made redundant with competition for preferences of helm repositories
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Add success notification for activating custom helm repository
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce way to get single active helm repository
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Extract responsibilities from god-class and switch to getting helm repositories using competition instead of another god class
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove dead code
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Add TODO
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Tweak position of spinner
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Start handling errors when accessing helm repositories
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Handle error about no helm repositories when updating repositories
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove unwarranted function configuration
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Add missing global overrides
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove duplication how to acquire binary path for helm
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove redundant comment
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Consolidate naming to match Helm's internal
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Relocate file closer to it's relatives
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix changes to InputValidator to resolve accidental breaking changes
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Show changes working by removing no longer required empty props objects
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix type errors
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix async validation errors not being displayed
- And fix validation errors sometimes being displayed multiple times
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Simplify builders for validators
- Replace the boolean type params on `function inputValidator` with a
new builder `function inputValidatorWithRequiredProps` to make the
code easier to read
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Introduce unionizing functions for input validators
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Remove RequiredProps type param
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* enable csp on lens proxy
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
* move csp default value to package.json
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
* Remove all manual uses of v8 serialization
- Seems that sometimes the is a versioning mismatch within the binary
format causes cluster screen the go grey
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* handle ping
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Extract product name as injectable
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make tray items comply with Open Closed Principle
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Replace duplicated overrides with global
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Add behaviour for navigating to preferences using tray
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce a tray item for updating application
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Tweak naming
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Tweak more naming
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove redundant indirection
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Tweak more naming
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce injectable for package.json being side-effect
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Relocate file to directory containing feature
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Switch to using injectable for limiting side effect
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Add missing injection token for implementation of tray item
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove resetting state for update is ready to be installed for being unclear
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Kill dead code
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make label of tray item reactive
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Extract updating is enabled to separate injectable
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce competition for tray
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Expand scope of behaviour for updating using tray also contain checking for updates
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove dead code
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Kill dead code
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Implement checking of updates from multiple update channels
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Start installing updates automatically when quitting application
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Show application window when checking of updates has happened
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Show notifications and dialog for downloading update
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Implement naive notifications for version updates
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Implement checking of Electron specific updates as responsibility
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Implement downloading of Electron specific updates as responsibility
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce competition for channel abstraction
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove redundant global override
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix typing after enabling strict mode
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce abstraction for a state that is shared between environments
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Extract states of application update to be usable from all environments
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Handle failing download of update
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make code for window visibility actually work
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Consolidate code for sending messages between processes to a window
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Split bloated dependency in smaller pieces
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make state of download progress accessible from all environments
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Rename files for accuracy
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Move channel abstraction to more global directory
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Enhance typing of channels and sync-box
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Consolidate channel abstraction types
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Update asyncFn to support strict mode
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix snapshot after rebase
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Add missing global override
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce injection token for channels to allow injecting all of them at once
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Add notifications about change in update status
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Rename property for accuracy
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Tweak code style
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make notifications unit testable in behaviours
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Add implementation for asking boolean over processes
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Reorganize responsibilities for checking updates
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Reorganize tests for installing update under separate scenarios
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make stuff happening when root frame is rendered unit testable
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce periodical check for updates
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Allow downgrading app versions
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Switch to using competition for checking of updates in application menu
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Kill dead code
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make test less prone to fail for wrong reason
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove redundant boilerplate
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make tests for specific migrations less prone to failing for wrong reason
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Move shared stuff under common
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Switch to using single source of truth for selected update channel
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Extract tests for installing update from different update channels to separate scenario
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Add missing global override
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Switch to using release channel of installed application version as default value for selected update channel
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Consolidate usage of channel abstraction to same implementation
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make Channel abstraction support return values
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix direct calling of runnables
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Synchronize initial values of sync boxes when window starts
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Add missing global override
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Tweak message of question from user
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Consolidate names of directories
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Add TODO
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove unimplemented scenario from test
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Simplify test
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Improve name of test
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove redundant overrides
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix code style
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make Animate deterministic in unit tests
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Simplify naming
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Simplify more naming
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Simplify even more naming
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Simplify more and more naming
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Add todo for cleaning unacceptable code encountered
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Improve name of behaviour
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Make unit test more strict
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Enhance name of behaviour
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Introduce dependency to get random IDs
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Make asking of boolean value from user not require explicit ID for question
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Simplify code for asking of boolean value from user
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Make setting of initial state for sync boxes not trigger irrelevant messaging to main
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Make a channel have default type for sent and returned message
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Introduce higher order function to log errors in decorated functions
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Export type for error logging
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Tweak test name
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce higher order function for suppressing errors
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Relocate some explicit error handlings to proper level of abstraction
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make higher order function for logging errors support asynchronous rejecting with non error instance
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make overridden version of application exactly the one required by unit test
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Mark injectable causing side effects
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Revert not required changes
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make code for asserting a promise more strict
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make dependencies readonly
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove duplication for disposers
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Implement initial values for sync-boxes
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Separate concept of message and request channels
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Introduce tests for requesting from channel in renderer
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Implement requesting from renderer in main
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Revert "Implement requesting from renderer in main"
This reverts commit d3e7899d7900516f3dbfacdb317a453202318305.
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Tweak typing of request channel listeners to get rid of unexpected undefined
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove unused variable
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Tweak timing of sentry setup
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Require messages for MessageChannels be JsonValues for serialization
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Require requests and responses for RequestChannels be JsonValues for serialization
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Make different MessageChannels not require explicit "extends JsonObject"
Note: Non-escaped lint breaks type here for forcing interface over type. Reasonable effort brought no understanding for what is the relevant difference between the two.
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Make a primitive argument an object for readability
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Make typing of higher order function for error suppression not lie
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Serialize messages in channels to make IPC not blow up
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce a way to make intentional orphan promises uniform, controllable and deliberate
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Make downloading of update and what follows more deliberate as orphan promise
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Move utility function under directory
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Move another utility function under directory
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix incorrect name of file
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove redundant code
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Kill dead code
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Round percentage of update download progress in tray
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix rebase conflicts
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix CheckForUpdate type errors
Signed-off-by: Sebastian Malton <sebastian@malton.name>
Co-authored-by: Iku-turso <mikko.aspiala@gmail.com>
Co-authored-by: Sebastian Malton <sebastian@malton.name>