Commit Graph

115 Commits

Author SHA1 Message Date
Daniel Holbach
a494f00964 run 'eslint app server.js --fix' 2019-08-01 08:39:42 +02:00
Filip Barl
765d9a06ac Fixed contrast mode in the URL. 2019-05-23 16:22:46 +02:00
guyfedwards
272b9a5d6a add eslint sort-keys rule and run codemod 2019-01-09 13:59:15 +00:00
Filip Barl
3c6cced4d3 Use new Search component. 2018-09-04 14:11:50 +02:00
Simon Howe
3791198edc Adds a scope-cmp prop to disable storing the view state in localStorage
- Scope will forget where it was last opened.
2018-08-23 15:44:33 +02:00
Filip Barl
7d85ed6a74 Got rid of all NodeDetailsImageStatus code and replaced it with renderNodeDetailsExtras function. 2018-06-29 12:02:48 +02:00
Filip Barl
a7282552ab Simplified TimeTravel state update from the route. 2018-06-27 11:27:56 +02:00
Simon Howe
1353eb5506 Fixes sending the default topologyOptions to the /api
- Which fails sometimes as we overwrite them whatever we find in the
  url state. Url state is not complete anymore so this doesn't work
2018-05-28 14:29:50 +02:00
Filip Barl
e9cafc634a Close xterm on exit. 2018-05-14 16:39:58 +02:00
Filip Barl
179f97160d Pick up default topology options on initial load. 2018-02-26 17:08:42 +01:00
Roberto Bruggemann
72255468c1 Disable detail panel link
The link is disabled if the `monitor` flag is not true.
If Weave Cloud runs without Monitor, the link is dead. The flag allows to pass Weave Cloud's Monitor state down to Scope.
2018-02-15 17:22:18 +00:00
Filip Barl
165f3be2b4 Always show time travel. 2018-02-12 13:38:36 +01:00
Filip Barl
7e729ddb6a Fixed the failing tests. 2018-01-22 15:52:52 +01:00
Filip Barl
4b4a861f7a Remove all the default Scope state values from the URL. 2018-01-22 15:52:52 +01:00
Filip Barl
39c95a97c3 Correctly handle Time Travel resuming in Monitor. 2018-01-22 15:16:16 +01:00
Filip Barl
77b691ca0b Change pausedAt format from moment() back to ISO string for easier handling. 2018-01-19 19:26:39 +01:00
Filip Barl
4bd7fc759a Store the pausedAt state in the app URL. 2017-11-10 16:46:56 +01:00
Filip Barl
adea60b07e Set initial viewport size in global state. 2017-10-23 16:28:46 +02:00
Filip Barl
397b839678 Removed all legacy TimeTravel code. 2017-10-20 11:50:40 +02:00
Filip Barl
228c9c4ab3 Updated all possible devDependencies. 2017-10-18 14:54:45 +02:00
Filip Barl
c26914087f Use destructuring instead of deep assignment whenever possible. 2017-10-17 19:07:14 +02:00
Filip Barl
2fcbdb7e16 Applied autofix for object-curly-newline rule. 2017-10-17 19:07:14 +02:00
Filip Barl
58922730f5 Fixed function-paren-newline. 2017-10-17 19:04:41 +02:00
Filip Barl
6b8424305c Merged TimeTravelTimeline into TimeTravelComponent so that whole of time travel is contained in one component. 2017-10-16 15:15:30 +02:00
Filip Barl
16e520da5e Proper handling of namespace selection when time travelling. 2017-08-24 18:11:46 +02:00
Filip Barl
a2de44514c Smarter node details transition and polishing the edge cases. 2017-08-11 16:26:07 +02:00
Filip Barl
596885ed81 Improved the node details time transitioning logic 2017-08-11 13:26:42 +02:00
Filip Barl
1b028e1e04 Add fade out transition to node details panel and activate it when switching the top panel. 2017-08-11 12:41:59 +02:00
Filip Barl
f98827698f Replaced the feature flag with historic reports capability flag. 2017-08-08 14:29:54 +01:00
Filip Barl
2183a93916 Time Travel 3.0 (#2703)
* Experimental.

* Getting somewhere.

* Good zooming behaviour.

* Working timeline zooming & panning.

* Clickable timestamps.

* Dragging cursor

* Timeline panning buttons.

* Capping at current time.

* Scale limits.

* Better ticks.

* Time tags fading in smoothly.

* Removed seconds.

* Better tick spacing.

* Vertical panning as zooming.

* Organizing the code..

* Replaced d3-zoom with native events.

* Got rid of scaleX

* More code beautified.

* Almost done polishing the code.

* Some cleanup.

* Better request triggers.

* More cleaning up.

* Styled the timestamp input.

* Final cleanup.

* Update yarn.lock

* Zoom tracking.

* Animate timeline translations.

* Fixed the PAUSE button glitch and updating the time control info.

* Opacity fix and timeline arrows removed.

* Fixed the red vertical bar.

* Use preventDefault() on timeline scrolling.
2017-07-27 14:40:20 +02:00
Filip Barl
8f1fdeb477 Make Resource view nodes clickable (#2679)
* Made Resource view nodes clickable.

* Remove selection when clicking on the background.

* Use opacity instead of the blue overlay for selected nodes.
2017-07-25 17:46:17 +02:00
Roland Schilter
a6d3542c89 Merge pull request #2713 from weaveworks/2708-reset-nodes-when-scope-app-restarted
Reset nodes in frontend when scope-app restarted
2017-07-14 19:02:41 +02:00
Roland Schilter
5329efa528 Reset nodes in frontend when scope-app restarted
When the scope-app restarts, it no longer has a
reference to the previous node set. Therefore,
the delta update adds *all* nodes but does not
remove legacy ones.

`reset==true` tells the frontend to start fresh.

Fixes #2708
2017-07-13 14:28:17 +02:00
Roland Schilter
e9945e78cb Keep topo nav visible if subnav selected
Follow-up to 21a0093c but also displays parent topology if
an empty sub_topology is selected.
2017-07-12 18:53:33 +02:00
Roland Schilter
21a0093c08 Keep topology nav visible if selected
If the scope-app API unexpectedly restarts, it has no report
at hand (until it gets one from the probe) and sends node
count 0 to the frontend for all topologies. Once the report
arrives, it will send the proper count.

What happened was the frontend did hide Processes for a short
time till the node count recovered. This moved the topology
selection to the always visible Containers (hide_if_empty == false)
while keeping the graph as is.

Once the node count recovers, Processes comes back but the
selection is still at Containers.

We now keep the selected topology visible at all time even if
the API returns a node count of 0. This recovers nicely when
the correct node counts come in. Once the user selects a different
topology while and a backend response arrives, it disappears.

Fixes #2646
2017-07-12 17:12:43 +02:00
Filip Barl
8f2d47ce4e Time travel redesign (#2651)
* Initial top level control.

* Added the jump buttons.

* Tiny styling adjustments.

* Massive renaming.

* Pause info

* Added slider marks.

* Improved messaging.

* Freeze all updates when paused.

* Repositioned for Configure button.

* Improved the flow.

* Working browsing through slider.

* Small styling.

* Hide time travel button behind the feature flag.

* Fixed actions.

* Elements positioning corner cases.

* Removed nodes delta buffering code.

* Fixed the flow.

* Fixed almost all API call cases.

* Final touches

* Fixed the tests.

* Fix resource view updates when time travelling.

* Added some comments.

* Addressed some of @foot's comments.
2017-07-06 16:06:55 +02:00
Filip Barl
eb64d3f09b Make API calls with time travel timestamp (#2600)
* Node details fetching reports at proper timestamp.

* Corrected all the relevant timestamps in the UI.

* Renamed some state variables.

* Time travel works for topologies list.

* Added a whole screen overlay for time travel.

* Polished the backend.

* Make time travel work also with the Resource View.

* Fixed the jest tests.

* Fixed the empty view message for resource view.

* Some naming polishing.

* Addressed the comments.
2017-06-20 12:31:22 +02:00
Alfonso Acosta
e42347addc Merge pull request #2590 from weaveworks/release-1.5
Release 1.5.0
2017-06-19 12:13:26 +02:00
Filip Barl
0869d26ec4 Moved highlighted nodes/edges info to selectors (#2584)
* Use selector for highlighted nodes.

* Use selector for highlighted edges.
2017-06-14 11:11:59 +02:00
Filip Barl
83f557b638 Don't display the empty message when nodes are displayed. (#2597) 2017-06-14 11:03:54 +02:00
Filip Barl
b6dfe25499 Time travel control (#2524)
* Hacky working prototype.

* Operate with time.Duration offset instead of fixed timestamp.

* Polished the backend code.

* Made a nicer UI component.

* Small refactorings of the websockets code.

* Fixed the backend tests.

* Better websocketing and smoother transitions

* Small styling refactoring.

* Detecting empty topologies.

* Improved error messaging.

* Addressed some of David's comments.

* Moved nodesDeltaBuffer to a global state to fix the paused status rendering bug.

* Small styling changes

* Changed the websocket global state variables a bit.

* Polishing & refactoring.

* More polishing.

* Final refactoring.

* Addressed a couple of bugs.

* Hidden the timeline control behind Cloud context and a feature flag.

* Addressed most of @davkal's comments.

* Added mixpanel tracking.
2017-06-12 11:22:17 +02:00
jpellizzari
3ec7cc82e6 Added service images widget 2017-05-03 10:31:25 -07:00
Filip Barl
23fb14d0be Polished the metric selection logic (#2468)
* Polished the metric selection code

* Fixed hovering advantage over pinning.
2017-04-26 16:18:42 +02:00
Filip Barl
b2f06a63ee Don't reset zoom on refresh layout. (#2407) 2017-03-28 14:30:23 +02:00
jpellizzari
9bccc9918e Added noneLabel button to topology options 2017-03-27 12:53:10 -07:00
jpellizzari
fff47ee609 Added 'addOrRemove' flag to change topology action 2017-03-27 10:06:56 -07:00
jpellizzari
454acdd999 Changed option value to list 2017-03-27 10:05:49 -07:00
jpellizzari
828d50fba0 unit test added 2017-03-27 10:04:28 -07:00
Filip Barl
69fd397217 Initial version of the resource view (#2296)
* Added resource view selector button

* Showing resource boxes in the resource view

* Crude CPU resource view prototype

* Improved the viewMode state logic

* Extracted zooming into a separate wrapper component

* Split the layout selectors between graph-view and resource-view

* Proper zooming logic for the resource view

* Moved all node networks utils to selectors

* Improved the zoom caching logic

* Further refactoring of selectors

* Added sticky labels to the resource boxes

* Added panning translation limits in the resource view

* Renamed GridModeSelector -> ViewModeSelector

* Polished the topology resource view selection logic

* Search bar hidden in the resource view

* Added per-layer topology names to the resource view

* Made metric selectors work for the resource view

* Adjusted the viewport selectors

* Renamed viewport selector to canvas (+ maximal zoom fix)

* Showing more useful metric info in the resource box labels

* Fetching only necessary nodes for the resource view

* Refactored the resource view layer component

* Addressed first batch UI comments (from the Scope meeting)

* Switch to deep zooming transform in the resource view to avoid SVG precision errors

* Renamed and moved resource view components

* Polished all the resource view components

* Changing the available metrics selection

* Improved and polished the state transition logic for the resource view

* Separated zoom limits from the zoom active state

* Renaming and bunch of comments

* Addressed all the UI comments (@davkal + @fons)

* Made graph view selectors independent from resource view selectors
2017-03-24 14:51:53 +01:00
jpellizzari
0f86ad1bed Prevent client polling after shutdown 2017-03-20 18:35:04 -07:00