* Converting ansi values to colored html
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Rewriting AnsiUp colors for search overlay
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Fix creating new workspace
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Show not yet enabled workspaces in list
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Not showing disabled workspaces
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* PageRegistration & PageMenuRegistration fixes & more simplification, fix#1383
Signed-off-by: Roman <ixrock@gmail.com>
* clean up test, deprecate page.routePath
Signed-off-by: Roman <ixrock@gmail.com>
* fix: proper `isActive` state matching for page-menu-target to page considering current document location
Signed-off-by: Roman <ixrock@gmail.com>
* add retry cap to handleStaticFile to prevent an infitite loop
* 'yarn -> yarn run' for node_module dependencies
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Fix rendering of boolean values in CRDs
- add optional special casing for boolean values in DrawerItems and
TableRows since React (imo annoying fashion) does not render boolean
values by default.
- add a spinner on the sidebar for when the CRD menu is expeanded but
the entries have not been loaded yet.
- Add ability to double click a Badge to expand, also make it so that
Badges highligh all text on first click.
Signed-off-by: Sebastian Malton <sebastian@malton.name>
* Removing !important statements from theme vars
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Wait for user store to load
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Fix this reference
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Aligning test with resetTheme() fixes
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Add mechanism for users to specify namespaces that are accessible to them. This is generally useful for when the user doesn't have permission to list the namespaces.
- Add new component "EditableList" which provides a simple way to
display a list of items that can be added too.
- Add the ClusterAccessibleNamespaces to the GeneralClusterSettings
- style editable list list of lists, switch to using <>
Signed-off-by: Sebastian Malton <sebastian@malton.name>
Co-authored-by: Sebastian Malton <smalton@mirantis.com>
* Moving logs to virtual list
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Introducing log search
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Setting ref for VirtualList to access its methods
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Introducing search store
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Centering overlay when scroll to it
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Using SearchInput in PodLogSearch
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Using Prev/Next icons for search
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* No trigger logs load when scrolled by method
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* SearchInput refactoring
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Adding find counters
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Clean search query on dock tab change
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Refresh search when logs get changed
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Case-insensitive search
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Improve logs scrolling experience
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Catching empty logs in various places
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Fixing downloading logs
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Clean up some duplicated styles
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Removing jump-to-bottom animation
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Fixing since label
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Reducing container selector size
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Scroll down to bottom after each reload
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Fix search within timestamps if they not provided
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Use log row hover color from theme
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Add search bindings for 'Esc' & 'Enter' hits
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Focus input fields on CmdOrCtrl+F
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Move search.store.ts in to /common folder
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* search.store.ts -> search-store.ts
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Adding test for search store
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Adding integration tests for logs
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Fixing scroll jumping bug
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Removing download icon check for testing purpose
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Removing clicking on nginx-create-pod-test
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Moving log tests before cluster operations
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Build extensions before integration tests
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
* Build also npm before integration tests
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
* Move npm build and extension build into own build step
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
* Removing separator sketches
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Horizontal scrolling to founded keyword
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Delaying horizontal scrolling
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
Co-authored-by: Lauri Nevala <lauri.nevala@gmail.com>
* Add webpack-dev-server (for hot module replacement) to serve statics, add HardSourceWebpackPlugin to improve re-compiling speed
* Serve statics using webpack-dev-server instead of lens-proxy, redirect request of Lens.html/Lens.js to webpack-dev-server
* Add react-refresh-webpack-plugin and its dep for hot-reload
* Add hot-reload plugin, and make proxy redirects requests to webpackdevserver
* Add hard-source webpack plugin to main process
* Remove parameter 'path' of handleStaticFile
* Upgarde webpack to v4 latest stable
* Fix build error: plugins shouldnt be null
Signed-off-by: Hung-Han (Henry) Chen <1474479+chenhunghan@users.noreply.github.com>
* fix: create extension instance only when enabled
Signed-off-by: Roman <ixrock@gmail.com>
* mark extension.isEnabled with private modifier
Signed-off-by: Roman <ixrock@gmail.com>
* try-catch errors for extension.disable()
Signed-off-by: Roman <ixrock@gmail.com>
* fixes & refactoring
Signed-off-by: Roman <ixrock@gmail.com>
* make ext.isBundled non optional
Signed-off-by: Roman <ixrock@gmail.com>
Co-authored-by: Steve Richards <srichards@mirantis.com>
Co-authored-by: Mario Sarcher <msarcher@mirantis.com>
Co-authored-by: steve richards <steve.james.richards@gmail.com>
Co-authored-by: Paul Williams <pawilliams@mirantis.com>
Co-authored-by: pauljwil <pauljwil@gmail.com>
* Extensions page and menu item
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Basic extension list view
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Adding get userExtensions filter
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Using WizardLayout at extension page
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Adding search to extension page
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Few style fixes
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* clean up
Signed-off-by: Roman <ixrock@gmail.com>
* added folder-icon to open extensions in finder, refactoring
Signed-off-by: Roman <ixrock@gmail.com>
* remove export warnings in dev:main, tooltip.getPosition() fix
Signed-off-by: Roman <ixrock@gmail.com>
* refactoring base lens-extension.ts, added `isBundled` flag
Signed-off-by: Roman <ixrock@gmail.com>
* added enabled/disable buttons
Signed-off-by: Roman <ixrock@gmail.com>
* auto enable/disable extensions -- part 1
Signed-off-by: Roman <ixrock@gmail.com>
* auto enable/disable extensions -- part 2
Signed-off-by: Roman <ixrock@gmail.com>
* auto enable/disable extensions -- part 3
Signed-off-by: Roman <ixrock@gmail.com>
* auto enable/disable extensions -- part 4
Signed-off-by: Roman <ixrock@gmail.com>
* refactoring & fixes
Signed-off-by: Roman <ixrock@gmail.com>
* fix: use page-layout with fullsize viewport
Signed-off-by: Roman <ixrock@gmail.com>
Co-authored-by: Alex Andreev <alex.andreev.email@gmail.com>
* Add @testing-library/jest-dom and @testing-library/react for writing test cases
* Make eslint check __mocks__/*.ts files
* Mock electron.ipcRenderer.on to prevent errors in React compoment test cases
* Mock <Trans /> from @lingui/macro as a component simplely returns children components
* Use optional chaining operator (?.) to avoid TypeError: Cannot read property 'replicas' of undefined
* Add jest-fetch-mock for mocking global.fetch, activate for all test cases in jest.setup.ts
* Add basic tests for <DeploymentScaleDialog /> to ensure it initialises/renders without errors
* Add +/- button for changing desired replicas, and its test cases
* Adjust the styles of +/- buttons container to make sure it aligns with the slider
* Refactor after rebase from master
* Use var defined in vars.scss
* Add flex align-center to slider-container and remove margin-top: -4px
* Use <Icon /> to replace <i/>
* Add flex gaps to plus-minus-container
Signed-off-by: Hung-Han (Henry) Chen <1474479+chenhunghan@users.noreply.github.com>
* License menu item should come from an extension #1141
Signed-off-by: Roman <ixrock@gmail.com>
* fix: expose `Util.openExternal` via extensions-api
Signed-off-by: Roman <ixrock@gmail.com>
* move LICENSE back to root
Signed-off-by: Roman <ixrock@gmail.com>
* Check for path existence and directory type
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Check for package.json availability
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Tray icon #833 -- part 1
Signed-off-by: Roman <ixrock@gmail.com>
* Tray icon #833 -- part 2
Signed-off-by: Roman <ixrock@gmail.com>
* Tray icon #833 -- part 3
Signed-off-by: Roman <ixrock@gmail.com>
* Tray icon #833 -- part 4
Signed-off-by: Roman <ixrock@gmail.com>
* fix: lint / linux build failed
Signed-off-by: Roman <ixrock@gmail.com>
* allow to disable tray from preferences
Signed-off-by: Roman <ixrock@gmail.com>
* allow to tweak svg-icon before applying as tray-icon
Signed-off-by: Roman <ixrock@gmail.com>
* add checkbox indication, setActive workspace on cluster select
Signed-off-by: Roman <ixrock@gmail.com>
* fix build version (cannon find module 'react')
Signed-off-by: Roman <ixrock@gmail.com>
* - switching dark/light icon depending on os-x theme settings
- optimization: don't re-create tray icon on menu udpates (avoid blinking)
Signed-off-by: Roman <ixrock@gmail.com>
* fix: refresh icon after turning on/off + switching dark-mode
Signed-off-by: Roman <ixrock@gmail.com>
* allow to close main window and re-open from dock or tray icon
Signed-off-by: Roman <ixrock@gmail.com>
* small fix
Signed-off-by: Roman <ixrock@gmail.com>
* fix: ensure main-window from global menu
Signed-off-by: Roman <ixrock@gmail.com>
* chore
Signed-off-by: Roman <ixrock@gmail.com>
* fix: hide traffic-light buttons for tray window
Signed-off-by: Roman <ixrock@gmail.com>
* removed redundant tray window
Signed-off-by: Roman <ixrock@gmail.com>
* removed delay from base-store
Signed-off-by: Roman <ixrock@gmail.com>
* adding cluster fix (reverted changes from master)
Signed-off-by: Roman <ixrock@gmail.com>
* - hide icon in dock when main-window closed (mac-os only)
- added preferences checkbox to open app at system start-up
Signed-off-by: Roman <ixrock@gmail.com>
* handle quit app action from tray menu
Signed-off-by: Roman <ixrock@gmail.com>
* moved generating tray icons to build step
Signed-off-by: Roman <ixrock@gmail.com>
* Fix integration tests (#1080)
* Fix integration tests
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
* Update integration/helpers/utils.ts
Co-authored-by: Sebastian Malton <sebastian@malton.name>
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
Co-authored-by: Sebastian Malton <sebastian@malton.name>
* fix-build: invisible app icon when there are more files within "build/icons/*.png"
Signed-off-by: Roman <ixrock@gmail.com>
* chore
Signed-off-by: Roman <ixrock@gmail.com>
* yarn i18n.extract
Signed-off-by: Roman <ixrock@gmail.com>
* clean-up
Signed-off-by: Roman <ixrock@gmail.com>
* navigation refactoring, move out `buildUrl` to common/utils so `react` and `react-router` not required as package.json dependecies in runtime (main)
Signed-off-by: Roman <ixrock@gmail.com>
* Ignore namespace query param on integration tests (#1109)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
* merge-conflicts fixes
Signed-off-by: Roman <ixrock@gmail.com>
* support page fixes
Signed-off-by: Roman <ixrock@gmail.com>
* make eslint happy again
Signed-off-by: Roman <ixrock@gmail.com>
Co-authored-by: Lauri Nevala <lauri.nevala@gmail.com>
Co-authored-by: Sebastian Malton <sebastian@malton.name>
* Adding extension's label text next to Icon
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Removing unused registerStatusBarItem()
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Duplicate "support" items in menu, fix#1128
Signed-off-by: Roman <ixrock@gmail.com>
* clean up (contents moved to extensions/core-api/index.ts)
Signed-off-by: Roman <ixrock@gmail.com>
* Preload logs when scrolled to top
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Adding JumpToBottom button
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Moving jump-to-bottom button to right
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Adding old/new logs separator
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Increase font-size in jump to bottom button
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Moving newLogsSince determination out of component
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Move newLogSince from storage data to observable
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Remove notiifications on log loading errors
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Transform logs into array in store
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Clean up
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Remove excessive join('\n\)s
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Adding pod and namespace data to log controls panel (#1083)
* Move log controls into separate file
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Changing prev container logs icon
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Removing 'Logs' from the tab title
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Remove unused string template quotes
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Hide JumpToBottom btn on error
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Remove mention about dialog
Signed-off-by: Alex Andreev <alex.andreev.email@gmail.com>
* Sort Pod environment values in alphabetical order
Fixes: #739
Signed-off-by: Steve Richards <srichards@mirantis.com>
* Consolidated to a single lodash import. Corrected Lint failure
- Removed the additional import of flatten and updated as needed;
- Changed the variabled `orderedEnv` to be a const;
Signed-off-by: Steve Richards <srichards@mirantis.com>
Co-authored-by: Steve Richards <srichards@mirantis.com>
* fix bundled kubectl path on dev env
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
* fix specs
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>