* Make root frame child components comply with open closed principle and include it in the behavioural unit tests
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make cluster frame child components comply with open closed principle and include it in behavioural unit tests
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove duplication
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Simplify test
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make a component more determistic in unit tests
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Mock uninterested, non-deterministic third party library in unit tests
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Optimize registration of injectables in unit tests to make tests faster
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Update snapshots
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove import time side-effect causing memory leak
Signed-off-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>
* Reorganize stuff to prevent circular dependencies
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Install injectable extension to allow injecting reactively many implementations
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Switch to using computedInjectMany over filtering injectMany based on enabled extensions for simplicity
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove await for not being needed
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Sort dependencies alphabetically
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* 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>
* electron v15.5.7
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
* change pipelines to use node 16
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
* bump @types/node
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
* update yarn.lock
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
* use fs.ObjectEncodingOptions
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
Fixes#5132#5133
- bundled 7 new monospaced fonts for terminal
- fix: refresh terminal font after changing in the preferences / keep cluster iframe accessible in DOM while not active/focused
- display terminal's custom font preview with font-name in the select-box + live-preload for current `fontSize`, fix lint
* Fixes for <Input/>:
- remove duplicated error messages for sync validators
- don't propagate invalid values on change (uncontrolled components only)
- more informative error message for numeric input with min/max info
* 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>
* Introduce injection token as competition for injectable setup to have better control of timing of different setups
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Switch to using competition to setup app paths
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Switch to using competition for setupping IPC channel listeners
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Stop running setups in unit tests without need
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Switch to running injection token based setups over legacy DI setups in unit tests
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Consolidate naming for running setups
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Switch to running injection token based setups over legacy DI setups in application roots
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Adapt to typing changes in injectable
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Update injectable
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce concept of runnable as a way to delegate runs to Open Closed Principle compliant runnables
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Deprecate vars in favor of injectables
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Consolidate loading of extensions to injectable instead of setup-code
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Flag injectable causing side effects
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Adapt injectable to auto register using a plugin instead of internal feature that no longer exists
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Simplify late registrations
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce tokens for runnables of specific application events for Open Closed Principle
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Consolidate setup events to more granular timeslots
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Reimplement setup for catalog syncing using runnables instead of non-OCP in index.ts
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Reimplement setup for application menu using runnables instead of non-OCP in index.ts
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Reimplement setup for electron application name using runnables instead of non-OCP in index.ts
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Reimplement setup for immer using runnables instead of non-OCP in index.ts
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Reimplement setup for MobX strictness using runnables instead of non-OCP in index.ts
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Reimplement setup for application proxy using runnables instead of non-OCP in index.ts
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Reimplement setup for system certifications using runnables instead of non-OCP in index.ts
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Reimplement setup for system shutdown using runnables instead of non-OCP in index.ts
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Reimplement setup for main window visibility using runnables instead of non-OCP in index.ts
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Reimplement setup for application quit using runnables instead of non-OCP in index.ts
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Reimplement setup for after application is ready using runnables instead of non-OCP in index.ts
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Reimplement setup for application tray using runnables instead of non-OCP in index.ts
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Reimplement setup for deep linking using runnables instead of non-OCP in index.ts
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Reimplement setup for root frame using runnables instead of non-OCP in index.ts
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove multiple usages of shared global state
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove recently reimplemented stuff from index.ts
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Extract implementation for intent over technical phenomena (here electron events)
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Consolidate naming of event timing window
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Move directories for timing windows among peers
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Consolidate event naming
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Introduce function to remove duplication from things that are startable and stoppable
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Consolidate implementation of something startable and stoppable
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Consolidate naming
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Consolidate more startables and stoppables
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Introduce abstractions for electron application events
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce more abstractions for electron
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Abstract even more Electron specifics to make them overridable in unit tests
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Override dependency for causing side effects
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make running of many delegatees able to be hierarchical
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Bump async-fn
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Make startable-stoppable also restartable
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Extract "isIntegrationTesting" as dependency for having a side-effect
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Make temporal dependency apparent
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Consolidate all setupping related to single feature to same runnable
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Abstract command line arguments to make them overridable in tests
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Deprecate some globals
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce injectable for __static directory to eliminate side effect on import
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Extract responsibilities from electron
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Extract async initialization from sync-injectable
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Accumulate more global overrides
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make lifecycle of injectable store work as expected
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Extract responsibilities to delegatees
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Rename delegate for accuracy
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Rename another delegate for accuracy
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Rename yet another delegate for accuracy
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Add new global overrides
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Consolidate variable naming
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Rename injectable for accuracy
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Make difference between soft and hard quit of application apparent
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Make quit triggered by auto update manifest as hard quit instead of just soft quit
Soft quit is the stand-by quit where only the renderer quits. Hard quit is the full quit of also main.
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Introduce abstraction for publishing and subscribing between processes
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Revert "Introduce abstraction for publishing and subscribing between processes"
This reverts commit 46f2d5a5f28bddcf5ffe124b1c590b19e7b9a15f.
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Adapt code and unit tests to recent changes in application setup and event handling
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Group overrides by category
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Abstract event of application activation from electron
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Abstract event of device shutdown from electron
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Consolidate runnables related to Electron
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Make startableStoppables have ID for better error logging
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Make navigating to Helm Charts not blow up
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Add general override for behavioural tests
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Update snapshot
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Adapt vars after merge
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix code style
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix error about multiple states for React Router being present at once
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Kludge around test setup which is difficult because of circular dependencies
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix setupping of sentry after rebase
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Ensure that LensProxy is setupped before starting the main window
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove redundant import
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Consolidate to use injectable instead of var for static file directory
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Deprecate another var with injectable
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Tweak timing of runnables
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Extract tray icon path as injectable
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make splash screen not blow up by providing compile-time environment variables
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce a way to run many synchronous runnables
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make runnables for before application is ready synchronous as this is technical limitation of Electron
See: https://github.com/electron/electron/issues/21370
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>
* Fix application quit by calling Electron's event.preventDefault in a very specific way and preventing async
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix missing injectable postfix in file name
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Tweak timeslot of a runnable
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make it possible to not stop something that was never started
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make quit of hidden Lens not blow up
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Extract responsibilities of WindowManager as injectables
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Consolidate code for application window
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Simplify directory structures for runnables
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Flag injectable causing side-effect
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Extract helpers for testing promises to test-utils
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make script for running unit tests support targeting
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make startable stoppable support async starting
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce reactive way to get theme from operating system
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Update yarn.lock after rebase
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix code style
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove code-style changes that are not welcome
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Switch to using dependency over using explicit side-effect
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Simplify naming
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>
* Add empty mocks comply to lint
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove global state
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Extract responsibility of setting dependencies to own injectable
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Flag injectable causing side effects
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Extract responsibility to injectable
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Tweak typing
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Tweak naming of runnables
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Revert code-style changes
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Tweak types
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Extract injectable with side-effect for exact overriding
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Tweak name of timeslot to make it more apparent that new content for application load can be added
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Tweak name of the splash window for loading to avoid confusion with similarly named phenomenon
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Tweak comment
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Rename injectable for brevity
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Consolidate LensProxy related stuff to directory
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Rename injectables for accuracy
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove usage of extension for injectable for being YAGNI
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Prevent restarting a startableStoppable when already being started
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Rename callback in ApplicationBuilder for accuracy
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix conflicts after rebase
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix merge conflicts
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Revert switch to react-router-dom by installing history as dependency
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make test more strict
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make runnable give friendly error about incorrect hierarchy for easier debugging
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix code-style
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix code style
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Switch to using dependency instead of legacy-di
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix timing of injects
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
Co-authored-by: Iku-turso <mikko.aspiala@gmail.com>
* Turn on strict mode in tsconfig.json
- Add route, clusterRoute, and payloadValidatedClusterRoute helper
functions to improve types with backend routes
- Turn on the following new lints:
- react/jsx-first-prop-new-line
- react/jsx-wrap-multilines
- react/jsx-one-expression-per-line
- react/jsx-max-props-per-line
- react/jsx-indent
- react/jsx-indent-props
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix build
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Replace KubeObject scope strings with enum
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Revert package.json version changes
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* revert move hostedCluster(Id)
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* change some type param names to be not single letters
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* remove copy-extension-themes
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* add new make clean action
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix build to not use webpack for generating types
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix kube-object-menu.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix select.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix catalog.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* revert move fileNameMigration to index
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix ref logic error
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix log-resource-selector.test.tsx tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix dock-store.test.ts test by overriding createStorage to not touch file system
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix cluster.test.ts tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix kube=api.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fixed hotbar-store.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix kubeconfig-manager.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix cluster-role-bindings/__tests__/dialog.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix role-bindings/__tests__/dialog.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix pods.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix delete-cluster-dialog.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix daemonset.store.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix replicaset.store.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix statefulsets/dialog/dialog.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix replicasets/scale-dialog/dialog.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix deployments.store.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix deployments/scale/dialog.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix cronjob.store.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix stateful-set.api.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix deployment.api.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix api-manager.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix statefulset.store.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix job.store.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix pods.store.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix scroll-spy.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix hotbar-remove-command.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix catalog-entity-registry.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix welcome.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix verify-that-all-routes-have-route-component.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix pod-tolerations.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* better fix for previous 3 fixes, plus also select.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix kube-object-menu.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix app-paths.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix dock-tabs.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix isReactNode typing
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix sub-title.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix drawer.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix list-layout.tsx and header.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix error-boundary.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix upgrade-chart/store.ts and dock-tab.store.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix install-chart/store.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix edit-resource/store.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix create-resource/store.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix namespace-select.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix namespace-select-filter.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix crd-list.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix wrong types for extensions
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix circular dependency
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix circular dependency on catalogCategoryRegistry
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix api-kube
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix type errors, most <Select /> errors
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fixing more type errors
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* some more fixing type errors
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* convert all KubeApis to injectable with legacy global backups
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* factor out into a common file all the exports
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* convert all KubeObjectStores to injectable with legacy global backups
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix lint
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* remove unused legacy KubeApi globals
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix bad previous commit
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* more crash fixing
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* try and fix behavioural tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix sidebar-and-tab-navigation-for-core.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix sidebar-and-tab-navigation-for-extensions.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix navigation-using-application-menu.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix catalog.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Make ThemeStore non-singleton and fix navigation-to-terminal-preferences.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* extensions.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix catalog-entity-registry.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix navigation-using-application-menu.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix log-resource-selector.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix dock-tabs.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix delete-cluster-dialog.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix navigation-to-kubernetes-preferences.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix navigation-to-editor-preferences.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix navigation-to-proxy-preferences.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix navigation-using-application-menu.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix navigation-to-application-preferences.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix dock-store.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix select.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix role-bindings/__tests__/dialog.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix hotbar-remove-command.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix cluster-role-bindings/__tests__/dialog.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix navigation-to-extension-specific-preferences.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix navigation-to-telemetry-preferences.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix closing-preferences.test.tsx
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix navigation-to-editor-preferences.test.ts
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix navigation-to-proxy-preferences.test.ts
- Fix other type errors too
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* final tweaks
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Add more tsconfig files, fix bug in <Catalog>
- Make all of history, navigation injectable
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix type errors
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Convert all of kube-details-params/ and navigate/ to injectable
- This fixes a runtime error that was encountered during testing
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix runtime errors on renderer
- remove all static uses of `createPageParam` (and then removed the
legacy global)
- Made LensRendererExtension and LensMainExtension just used
dependencies and not the getLegacyDi
- Fixed circular dep in extension-loader
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Move registerStore calls to after injectMany
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* replace all the rest of the legacy uses of apiManager
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix stack overflow and cycles in DI
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix NamespaceSelectFilter not opening
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix WizardStep and AddNamespaceDialog
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix KubeApi's not being registered
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* cleanup WindowManager
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Proper fix for Wizard, fix NamespaceStore.subscribe
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Rewrite withTooltip to be more type correct
- Fixes mobx related "too many recursive actions" error
- Change all the uses of withTooltips to be functional components
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Add e2e test to cover kube api registration
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* cleanup internal-commands
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* remove cast in <Animate>
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix command-palette e2e test
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix type error after rebase
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix test name
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix lint
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix code to help CodeQL scanner
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* update intree extension lock files
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix build-extensions picking wrong @types/react
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix tests from rebase
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix type error
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Make KubeconfigSyncManager more injectable
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix crash in test mode for Dialog
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* make Select snapshots deterministic
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix new type error
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix kube-object.store.test.ts typing
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix merge build issues
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix snapshots after merge
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix lint after merge
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* reexport BaseKubeJsonApiObjectMetadata
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix typo in terminalSpawningPool
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* remove duplicate license header
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix typo to waitUntilDefined
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* remove iter use from getLegacyGlobalDiForExtensionApi
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* remove complex createStorage override
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* override logger with mocks only when needed for tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* remove specialized overrideStore flags for getDiForUnitTesting
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* remove unnecessary | undefined types from the exactOptionalFieldTypes experiment
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* use more descriptive name for local test mocks
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* remove unnecessary addition to 'make clean' target
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* remove oddity of KubeObjectStore.getById(undefined) being allowed
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* rename KubeObject.getDescriptor in favour of name without fundemental JS meaning
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Simplify legacyRegisterApi when working in behaviour unit tests
- Don't emit within main environment as there should be no auto
registering there
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* change confusing variable name in ReactiveDuration
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* make visitor pattern more explicit for Entity contextMenuOpen
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* toggleDetails -> toggleKubeDetailsPane is more specific
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* remove outdated comment
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix bug where LensExtension dependencies are not set
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix tests from the revert of react 18
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix more tests from merge
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix typings with new is-compatible-extension tests
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* more type fixing
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Revert in-tree extension versions
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Improve name of guarding injectable for stores and apis
- New name better implies that it is just a guard state and does not do
anything
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Add helper for <Select>.isMulti for storing in a Set<Value>
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* fix is-compatible-extension.test.ts types
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* - maintenance: upgrade react-select to latest version (5+)
- fix: props.styles was ignored and didn't passed to original react-select component from abstraction wrapper
* Implement a lot of technical requirements for behavioural unit tests
Note: the crux of this was to make routing env-agnostic, and not based on URLs as magic strings, but instead something type-enforced.
Note: extension-based routes comply to same exact interface by "late-registering" their routes when installed. Routes are just injectables.
Note: another chunk of global shared state is no more.
Note: a lot of explicit side effects have been cornered to injectables.
Note: a lot of stuff has become reactive as part if this.
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make a directory commonly available
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Require id for <Select /> to prevent non-deterministic renders
This was caused by global state in a 3rd party lib: "react-select".
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Specify id for all <Select /> to satisfy previous commit
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Prevent explicit side effect in component by using existing dependency instead
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Extract instantiation of "conf" as injectables for causing side effects
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Introduce a legacy-helper to make gradual refactoring of inheritors of Singleton easier
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Make legacy unit tests for hotbar green and more simple by using the new legacy helper
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Temporarily kludge all unit tests green with a disclaimer about allowing side-effects
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Remove kludge in previous commit by explicitly permitting specific side effects where old unit tests require it
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Prevent old unit test with side effects from accessing file system
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Migrate to actual typing for di.permitSideEffects
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Prevent unit tests from failing because of non-standard method of HTML-element not present in js-dom
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Adapt integration tests to recent changes
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Fix code style
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Fix artifact from bad rebase
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Add a deprecation from a review comment
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Remove change that is not required
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove redundant comment
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix code style
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove redundant file
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix bad merge
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Improve variable name
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Tweak logger interface to be more descriptive
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make injecting legacy singleton always provide new instance
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove conditional typing when not needed
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Improve naming of variable
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove unnecessary code style changes
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove flag for causing side effects from too broad scope
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Override side-effects in unit test using injectable instead of monkey patching
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Flag some side-effects and add general overrides
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Fix unit tests in CI by removing explicit side-effect
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Remove explicit side-effect from getting default shell
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce abstraction for getting absolute paths
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Switch to using abstraction for getting absolute path to control explicit side effect
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Introduce abstraction for joining paths
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Switch to using abstraction for joining paths to control explicit side effect
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix fake implementation for join paths
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix test after removing explicit side effect
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove explicit side effects from kubeconfig-syncs
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix arguments after removing explicit side effect
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make registrators not async for not being needed anymore
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Make generalCatalogEntities non-observable, as there is no requirement
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Remove redundant code
Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>
Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
* Simplify logic for registering general catalog entity sources
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Add TODO
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Replace function for getting application menu items with reactive solution
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Fix typo in interface name
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove global shared state usages of hot bar store
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
* Remove redundant enum
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>