Commit Graph

43 Commits

Author SHA1 Message Date
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
a390c7633e Make graph layout zoom limits constant (#2678)
* Make zoom limits such that nodes are always between 1px and 200px big.

* Increased minimal node size from 1px to 3px.
2017-07-07 19:52:42 +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
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
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
Filip Barl
c897c18810 Display consistent resource consumption info in the resource view. (#2499) 2017-05-05 15:18:18 +02:00
Filip Barl
65b9b48b53 Added mixpanel tracking for some basic events (#2462)
* Added mixpanel tracking for bunch of events.

* Changed hitEnter action to pinSearch.

* Moved all the event tracking out of app-actions.js

* Addressed @foot's comment.

* Added more keypress events tracking.

* Disable 'r' keyboard shortcut when Resource View is disabled
2017-04-27 14:26:07 +02: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
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
9dfcd213c3 Replaced timely dependency 2017-03-21 12:26:52 -07:00
jpellizzari
376e6f014e Added edge arrows 2017-03-10 12:10:51 -08:00
Filip Barl
19202a2e44 Fixed the selectors performance leaks. 2017-03-01 12:14:36 +01:00
Filip Barl
11ce5638c5 Moved nodes-chart-layout.
Moved nodes-chart-zoom.

Moved zoomCache to global state.

Moved nodes-chart-focus.

Fixed some bugs and polished the code.

Keeping track of topology options in zoomCache.

Fixed forceRelayout and circular layout.

Unified graph complexity heuristic criterion.
2017-03-01 12:14:36 +01:00
Filip Barl
f1b80c0cfc Fix edge directionality in graph layout. 2017-02-22 16:11:57 +01:00
Filip Barl
e5c655aa88 Addressed the comments. 2017-02-20 11:10:44 +01:00
Filip Barl
6d0066cd38 Polished the selectors code and fixed failing tests. 2017-02-20 10:58:26 +01:00
Filip Barl
b9ba83ffca Moved the node networks computation to selectors. 2017-02-20 10:58:26 +01:00
Filip Barl
5bd8e8f690 Renamed 'subLabel' to 'labelMinor' and removed 'node_count' property. 2017-02-20 10:58:26 +01:00
Filip Barl
3987e95465 Moved the node layout metrics computation to selectors. 2017-02-20 10:58:26 +01:00
Filip Barl
2a54085c62 Node transformations done from NodeContainer. Put node searching logic in selectors. 2017-02-20 10:58:26 +01:00
Filip Barl
2b4ba3239c Fixed the node labels bug on Firefox. 2017-02-03 17:06:53 +01:00
Filip Barl
c9ff15f7f3 Re-applied PR #2128 'Graph layout optimizations' 2017-02-03 16:59:25 +01:00
Filip Barl
8eaa12e680 Revert "Graph layout optimizations" 2017-02-02 11:42:12 +01:00
Filip Barl
c802c8c6c1 Addressed @foot's UI comments 2017-02-01 16:27:23 +01:00
Filip Barl
2a6308bf6c Split the zooming and layout logic in nodes-chart.js between a bunch of selectors 2017-02-01 16:27:23 +01:00
Filip Barl
26b3e9efc9 Reapplied all the eslint upgrade changes 2016-12-15 15:04:53 +01:00
David
99bfab89b7 Revert "Upgraded eslint & eslint-config-airbnb" 2016-12-12 16:06:13 +01:00
Filip Barl
b9241b377a Applied no-underscore-dangle linting rule 2016-12-12 11:03:16 +01:00
Filip Barl
3fdcd9b5e7 Applied arrow-parens linting rule 2016-12-12 11:02:18 +01:00
Simon
816224a761 Merge pull request #1919 from weaveworks/1762-improve-search-docs
Add a new search section to the help popover
2016-10-20 10:30:33 +02:00
Simon Howe
ec2551b6bb Optimize re-rendering of help-panel > dynamic fields list 2016-10-19 15:49:17 +02:00
Simon Howe
2ca23507de label_minor -> labelMinor, closer to all camelCase api 2016-10-19 10:50:11 +02:00
Simon Howe
db5baabeee Add a new search section to the help popover 2016-10-12 17:35:26 +02:00
Simon Howe
1d3ae9576d Revert "Add a search section to the help-popup"
This reverts commit cc4c71faf0.

A careless push
2016-10-12 17:26:00 +02:00
Simon Howe
cc4c71faf0 Add a search section to the help-popup 2016-10-12 17:25:08 +02:00
Simon Howe
d48748aafe Fix spelling 2016-09-20 19:25:16 +02:00
Simon Howe
c94e0f95d1 Small refactor of selector helpers with more comments 2016-09-20 18:50:35 +02:00
Simon Howe
eec54415ec Fixes hanging edges caused by a race condition of sorts
New nodes were arriving before they had been laid out.
2016-09-15 11:55:26 +02:00
Simon Howe
85e63ac786 Fixes spelling mistake 2016-09-15 11:55:25 +02:00
Simon Howe
fc95e1efa0 Fixes selected layout!
(was the removal of :id from the node objects)

Only show errors in webpack output!

Tidying up

More tidying

more tidying

More fiddling around

wip

wip

wip

Fixes forceLayout

rm console.log
2016-09-15 11:55:25 +02:00
Simon Howe
a1b8e963dc nodes-chart only re-rendered on prop updates!!! 2016-09-15 11:55:25 +02:00
Simon Howe
4b7471b1b0 things working again, on the way to reselect! 2016-09-15 11:55:25 +02:00