Commit Graph

83 Commits

Author SHA1 Message Date
Filip Barl
2fcbdb7e16 Applied autofix for object-curly-newline rule. 2017-10-17 19:07:14 +02:00
Damien Lespiau
a205f6ecb7 tracking: Rename trackMixpanelEvent() to trackAnalyticsEvent()
Might as well not mention Mixpanel now that we're sending all events to
Segment.

Commit done with:

  git grep trackMixpanelEvent | cut -d : -f 1 | sort -u | \
	xargs sed -e s/trackMixpanelEvent/trackAnalyticsEvent/g
2017-09-25 13:57:00 +01:00
jpellizzari
4f341cb1d2 Add new node shapes for k8s combined view
While we're there, adopt a consistent ordering for all places that shapes are listed
Order is least sides to most sides, with circle before polygons, and complex shapes (currently just Cloud) after.

On shape choices for topologies:
* Since the k8s logo is a heptagon, we want pods to be heptagons.
* Since triangle is 'a bit weird', we put it on the least-important type, replica sets.
* Pentagons look a little weirder than octogons (it's the lack of symmetry) so we put octogons on the most common (deployments)
2017-06-27 10:19:04 -07: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
82e373777a Increase cloud node thickness in graph view (#2418)
* Unified node shapes rendering templates.

* Addressed @foot's comments (fix shadow thickness across all shapes).

* Made getClipPathDefinition slightly more readable.
2017-04-06 14:44:52 +02:00
Filip Barl
f87909282f Removed the throb animation for search matching. 2017-03-06 12:53:45 +01:00
jpellizzari
f2f474ac80 Change to load contrast theme dynamically 2017-02-21 10:29:43 -08:00
Filip Barl
e5c655aa88 Addressed the comments. 2017-02-20 11:10:44 +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
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
632e3756c4 Optimized rendering of graph layout and zooming events 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
71f44e8b70 Got rid of findDOMNode helper 2016-12-12 11:04:49 +01:00
fbarl
e47c3e0973 Applied a couple of simpler rules 2016-12-12 10:56:56 +01:00
fbarl
7442ff3f41 Switched to D3 version 4.4.0 2016-11-28 13:16:10 +01:00
Simon Howe
e73440e9f1 Fixes top of node-blue-search-highlight from being chopped off.
- Increase line height so that it doesn't fall over the side of the
  container (which is overflow: hidden).
- Compensate for line-height increase w/ small label position tweak.
2016-08-18 14:50:37 +02:00
Simon
1d4904d56f Merge pull request #1775 from weaveworks/1749-filter-by-relatives
Adds support for filtering graph/table by relatives
2016-08-10 16:01:25 +02:00
Simon Howe
5cf8ee2a6b Move chrome-css-fix out of js into css w/ comment 2016-08-10 14:10:10 +02:00
Simon Howe
4d5d0d5dc2 Fixes origin of node-details-panel expanding animation 2016-08-09 20:16:23 +02:00
Simon Howe
8f4b3ab97d Fixes animation of node labels on focus.
Was a bit janky there for a bit.
2016-08-09 20:00:39 +02:00
Simon Howe
fc2fcfb298 Adds support for filtering node/table by relatives
Now that they are available in the summary data.
2016-08-09 18:20:43 +02:00
Simon Howe
564c64ec21 Fixes truncating of labels 2016-08-09 16:07:25 +02:00
Simon Howe
5846222fe1 Scale node labels with the node's size.
- Within certain bounds. Still have min-label size, mainly effects nodes
  that get really big.
- Set a max size on nodes too, really big ones lose their border.
2016-08-09 14:57:13 +02:00
Simon Howe
d786a075f6 Fixes foreignObject preventing other nodes from receiving hover 2016-08-04 17:36:14 +02:00
Simon Howe
bf8d8a89e7 Smaller node bounding boxes for onHover/onClick
foreignObject was huge on firefox.
2016-08-04 17:36:14 +02:00
Matthias Radestock
d6d5fec960 reduce horizontal gap between nodes in topology views
Fixes #1688
2016-07-17 18:50:12 +01:00
Simon Howe
55bed7b7b6 A couple more tweaks to the network-bar position.
- Center it vertically properly.
2016-07-12 18:29:15 +02:00
Simon Howe
6a79938939 Correct label position for nodes that don't have networks. 2016-07-12 16:10:56 +02:00
Simon Howe
6f8dc22ca3 Move network bar above the label for now.
Positioning the bar in the middle of flowing text is a bit tricky.
2016-07-12 16:09:10 +02:00
Simon Howe
f46025fe10 Fixes network bars position when a node is selected.
Bar position should be a function of node size!

Note: This is still an estimated position though it looks fine. Would be
nice to take into account size of labels (foreignObjects). The
transforms (for "undoing" the canvas zoom level) are a bit hectic here
and would be really nice to pull out and put in a wrapper...)
2016-07-12 15:45:35 +02:00
Simon Howe
570124fbe0 Netview review feedback 2016-06-06 16:24:18 +02:00
David Kaltschmidt
b1cd16d92d Fix node blurring for network hover
Fixes edge focus/blurring when selecting networks

Configurable arc size

net-view variant: Smaller arc (just the top)

net-view revision: Add white container around arcs.

To join them together in a sense. Trying to avoid the edge/arc position
association. Not sure if this really helps

net-view variations: shadows.

bg fill, align network rotation w/ rank.

Cute little dots

Stacked lines

Rounded rects

Slightly thicker "pills" to repr networks

Handle edge case by making line longer

Fix network bar offset
2016-06-06 16:24:09 +02:00
Simon Howe
6b4b07d0bc Copy paste of MoC controls as initial networks-view legend
Needs a bit of de-dup / customization

oops, bad typo

More fleshing out the structure for network-view

onHover netview-legend: highlight relevant nodes.

And the bool rolls on.

Handle nodes w/ no networks better

Corrects deselect-node when used w/ new network-view behaviour

Net view details "node" can be open when with no nodes selected. Hitting
"esc" from:
 - card 0: network-a
 - card 1: node-a
was not deselecting node-a

Deselect selectedNetwork correctly onEsc

Ooops, trailing ws breaks linting.

Adds NodeNetworksOverlay stub

Expands on NodeNetworksOverlay stub and adds arcs and colors

Expand and collapse networks legend

Open arc for network circle, shift for stack

Show our base hue range in the debug bar too..

Was trying to smooth out our hue selector but turned out to be tricky..

Uniquify random data generator!
2016-06-06 16:23:44 +02:00
Simon Howe
af3f18b933 Don't draw svg labels when we don't need them.
Having the DOM nodes w/ display:none is still expensive. We only need
them briefly for svg export.
2016-05-11 18:08:59 +02:00
David Kaltschmidt
749571ebe9 Review feedback
* Fix node-details-test for search
* Label spacing and matched text truncation
* Delete pinned search on backspace, add hint for metrics, escape % in URL
* Fix text-bg on node highlight
* Added tests for search-utils
* Fix matching of other topologies, added comment re quick clear
* s/cx/classnames/
* Ignore MoC keys when search in focus, blur on Esc
* Fixes search term highlighting on-hover
* Fix SVG exports
* Fine-tuned search item rendering
* Fixed search highlighting in the details panel
* Dont throb node on hover
* Hotkey for search: '/'
* Keep focus on search when tabbing away from the browser
* bring hovered node to top
* background for search results on hover
* fixed height for foreign object to prevent layout glitches
* Dont blur focused nodes on search
* More robust metric matchers
* More meaningful search hints
2016-05-11 18:08:59 +02:00
David Kaltschmidt
3ee802a516 Search all fields by default, gray out nodes if no match 2016-05-11 18:08:59 +02:00
David Kaltschmidt
5a325e46fa Search on canvas
* adds a search field next to the topologies
* highlight results on canvas as you type
* non-matching nodes are grayed out
* "prefix:" limits search to field label
2016-05-11 18:08:59 +02:00
David Kaltschmidt
96aae9bc99 Migrate from Flux to Redux
* better state visibility
* pure state changes
* state debug panel (show: crtl-h, move: ctrl-w)
2016-04-27 17:21:46 +02:00
Simon Howe
dcfb7f0c2c Fixes flickering when mouse moves between nodes labels
w/ a secret rect!
2016-04-12 12:45:09 +02:00
Simon Howe
fd193d7edd Untruncate only the hovered node's text, not its adjacents. 2016-04-12 10:28:16 +02:00
Simon
689e06b216 Merge pull request #1259 from weaveworks/1244-focused-node-size
Don't enlarge focused nodes.
2016-04-11 15:34:32 +02:00
Simon Howe
b9ce725561 Don't enlarge focused nodes.
- Calculate size based on number of nodes that come up into the
  selection area.
2016-04-11 15:11:03 +02:00
David Kaltschmidt
c5ea970674 Dont trunctate node labels on hover
* makes it easier to read long node labels on demand
2016-04-11 11:59:04 +02:00
David Kaltschmidt
d520cffec7 Performance tweaks
Add debug.html to show toolbar

Perfjankie test runner

Playing w/ the pure mixin for perf. improvements

* Works well! Smoother zooming/panning when things have settled.
* Extract node movement to node-container, make nodes pure

Extracted node chart elements into own components

Keep control objects immutable while in components

Keep layout state objects alive

Made other components pure, removed mixin from stateless components

Remove font size adjustment from scaling

Fix zoomscale

Move node transform to node

* makes more sense there because the coords are rounded in the container

dynamic coords precision based on topology size

Make edge points immutable

Remove nodes maximum for layout engine

Dont send all canvas state down to next component

moving layout handling back to nodes-chart.js

Omit some props for edges/nodes, dont animate edges on low precision

Moved AppStore access out of lower components
2016-04-05 15:45:13 +02:00