Commit Graph

260 Commits

Author SHA1 Message Date
David Kaltschmidt
88fb9fe4de Highlight topologies with no border
* removed background from sidebar items
2016-02-08 12:21:43 +01:00
David Kaltschmidt
c3878eb649 No borders for topology links
* added .btn-opacity to control opacity for buttons on hover/selected
  state

* increased contrast in topology link labels

* removed dark background from status to not confuse with topo links
2016-02-08 10:43:05 +01:00
David Kaltschmidt
4890220984 Highlight selected topology 2016-02-05 16:56:39 +01:00
David
188eea8f33 Merge pull request #795 from weaveworks/638-animate-sparklines
Animate sparklines
2016-02-05 14:48:55 +01:00
Simon Howe
cd66819f6b Removes console.log 2016-02-04 18:13:53 +01:00
David Kaltschmidt
7d73590ced Enable metric feeder also for health overflow items
* tried activating it for child tables too, but that became quite CPU
  intensive, and feed intervals became out of sync (host CPU < container
  CPU, which is hard to believe)
2016-02-04 17:17:11 +01:00
David Kaltschmidt
8f83a73072 Split samples and feed metrics right away
* also increase sparkline feed to 60 secs
* and keep historic max
2016-02-04 16:56:07 +01:00
David Kaltschmidt
d46f1a9d3c dont format metadata 2016-02-03 16:35:03 +01:00
David Kaltschmidt
64f08dcf96 Metric feeder as higher order component to feed sparklines data 2016-02-03 16:25:54 +01:00
Paul Bellamy
28de56f43f just show the untruncated label in the tooltip on children 2016-02-03 12:34:52 +00:00
Paul Bellamy
0a292f530c move docker labels into their own table of the details panel 2016-02-03 10:29:28 +00:00
David Kaltschmidt
0a0179aeb1 Integrated animated sparklines into new details panel
also added sortBy date after merge in value buffer
2016-02-02 18:06:33 +01:00
David Kaltschmidt
a8809cadfd Animate sparklines by feeding data item by item
* Refactored sparklines to be rendered by react

* Correct row key for sparklines

* Extracted data feed into animated-sparkline

* last value is rendered by sparkline now, because it relies on the
  last value that it is fed, not the lastest availble value
2016-02-02 12:23:51 +01:00
Paul Bellamy
1e4b872a63 Merge pull request #866 from weaveworks/852-processes
Rename Applications -> Process, sort topologies by rank.
2016-02-02 10:45:28 +00:00
David
02a449348b Merge pull request #895 from weaveworks/891-fix-details-columns
Details panel table header looks up label in all rows
2016-02-01 17:32:43 +01:00
David
6f70e70192 Merge pull request #894 from weaveworks/no-npm-progress
Disable npm progress to speed up build
2016-02-01 16:53:39 +01:00
David Kaltschmidt
9c4b4e2745 Details panel table header looks up label in all rows
Also fixes sorting of rows that have a missing metrics (0 vs null)

Fixes #891
2016-02-01 16:47:06 +01:00
Simon
6bec4bca7c Merge pull request #892 from weaveworks/864-fix-overflowing-details-panel
Fixes some fields overflowing badly.
2016-02-01 16:07:15 +01:00
Tom Wilkie
d3b11ee040 Rename Applications -> Process, sort topologies by rank. 2016-02-01 06:54:18 -08:00
David Kaltschmidt
6cf295ea9f Disable npm progress to speed up build 2016-02-01 15:52:41 +01:00
Simon
00755896de Merge pull request #882 from weaveworks/848-resize-terminal-on-card
Stop details cards popping up over the terminal.
2016-02-01 15:33:44 +01:00
Simon Howe
3c23bd950a Fixes some fields overflowing badly.
The Chrome guys have implmeneted a new change (in Chrome 48) in the CSS
flexbox spec, min-width now defaults to auto instead of 0. "auto" has
some complicated behaviour described in the table here:
https://drafts.csswg.org/css-flexbox/#min-size-auto

This results in a very long min-width (I don't understand why). So we
have to let the browser know it can make it smaller if it wants to,
which in this case would be great.

Here's another person's experience with the issue.
 - https://code.google.com/p/chromium/issues/detail?id=551336
2016-02-01 15:12:52 +01:00
Simon Howe
aad6e1fbeb Fixes new browser window size when popping out terminal.
Calculate the size more dynamically based on the size of the terminal
dom element.
2016-01-29 13:19:06 +01:00
Simon Howe
06aff39548 Fixes details cards opening out over the terminal 2016-01-29 13:17:58 +01:00
Simon Howe
ab75bb5e41 Move details panel styling dimensions into common constants file.
They are used in a couple of places around the code base.
2016-01-29 13:16:33 +01:00
Simon Howe
dcb621d7e6 Close terminal when we click "show node in its topology" 2016-01-29 13:14:47 +01:00
Simon Howe
5500c2f280 Fixes harmless exception: hitting esc with no cards open. 2016-01-29 13:14:08 +01:00
Simon Howe
bac56c6c03 Fixes terminal being closed when its node's card is closed. 2016-01-29 13:13:33 +01:00
Simon Howe
2c74196c1c Fixes host node/details panel color mismatch
- 'label_major' has been changed to 'label' in the details api response.
- getNodeColorDark was giving up too early if a rank wasn't provided.
  The topo diagram which uses getNodeColor will select a color even w/
  no rank. Hosts don't have ranks at the mo.
2016-01-29 11:26:59 +01:00
Simon Howe
6edbd49791 Fixes pipe status when reloading page.
Correctly load in state from the url.
2016-01-21 21:15:54 +01:00
Simon Howe
d5cf3d2c59 Fixes exec/attach from the 2nd+ card.
- Also fixes strange issue where hitting ESC while a terminal was
  active, would update the route, reload the top card, and break the
  terminal connection status.
2016-01-21 16:57:22 +01:00
Simon Howe
f63c50475c Corrects the node control error placement 2016-01-19 18:23:21 +01:00
Simon Howe
c43abd6075 Reconcile some details-panel stuff after the rebase. 2016-01-19 16:31:17 +00:00
Simon Howe
0785d5393a Fixes pipes again
- Treat control objects that come back from the server as little
  black boxes.
- Pass our local client nodeId around more instead, use that for
  comparisons etc, (vs. inspecting the control object and doing brittle
  magic w/ the ids).
2016-01-19 16:48:35 +01:00
Paul Bellamy
bf13a824d4 render detail status section for metadata or metrics 2016-01-19 16:47:49 +01:00
Tom Wilkie
9e61ad37f4 Get Pipes working again.
They stopped working because of the change to container node IDs (and rendered nodes IDs for containers).  The UI was comparing the IDs, which was never safe.  I have just removed that code.  This does leave the possibility of us having the pipe control operation take a long time, the user navigate to a different node, and then the terminal pop up, but I think thats better that teaching the UI to understand the format of the node IDs.
2016-01-19 16:47:48 +01:00
David Kaltschmidt
d39fd847b7 Details Panel UI Redesign
Refactored nodedetails to support multiple data sets, probably broke some tests
  Allow api requests to out-of-view topologies
  Fix ESC behavior with details panel
  Stack details panel like cards
  Details pain side-by-side
  Details panel piles
  Fix node details table header styles
  Render load and not-found captions like relatives
  Fix topology click action
  Make node detail tables sortable
  Grouped metrics for details health
  Group metrics in same style
  Link node details children
  Fix scroll issues on double-details
  Fix DESC sort order for node details table
  Save selected node labels in state - allows rendering of node labels from other topologies before details are loaded
  Change detail card UX, newest one at top, pile at bottom
  Details panel one pile w/ animation
  Sort details table nodes by metadata too
  Animate sidepanel from children too
  Fix radial layout
  Dont set origin if a node was already selected, suppresses animation
  stack effect: shift top cards to the left, shrink lower cards vertically
  Clear details card stack if sibling is selected
  Check if node is still selected on API response
  Make detail table sorters robust against non-uniform metadata
  Dont show scrollbar all the time, fix sort icon issue
  Button to show topology for relative
  Overflow metrics for details panel health
  Fix JS error when no metrics are available for container image details
  Column-based rendering of node details table
  Fix JS tests
  Review feedback (UI)
2016-01-19 16:47:05 +01:00
Simon
359ec29c09 Merge pull request #797 from weaveworks/758-independent-node-controls
Fix node controls so they behave independently across nodes
2016-01-19 14:41:37 +01:00
Simon
4c4748e722 Merge pull request #819 from weaveworks/818-close-disconnected-pipe-with-esc
Allow dismissing a disconnected terminal w/ <esc>
2016-01-19 10:30:01 +01:00
Simon Howe
b2774ed981 Fixes scope from crashing with "long" edges.
Long edges are those w/ a lot of points on them. Which can pop up in
heavily connected layouts.
2016-01-18 18:06:02 +01:00
Simon Howe
8a7cfdb46f Allow dismissing a disconnected terminal w/ <esc> 2016-01-14 18:08:08 +01:00
Simon Howe
18d31a0d08 Send xterm equivilant codes for ctrl-arrow keys
Docker sets $TERM=xterm.
2016-01-14 17:30:24 +01:00
Simon Howe
3c5e357150 Highlight a single unconnected node on hover.
Wasn't happening before.
2016-01-13 17:01:37 +01:00
Simon Howe
5b390994b8 Fix node controls so they behave independently across nodes
If one node was busy performing an action, any other nodes controls
would also be in a 'blocked and waiting' state.
2016-01-05 19:17:10 +01:00
Simon Howe
22247130d3 Log proxy connection errors rather than killing server.
Don't have accurate repro for when they occur.
2016-01-04 16:40:02 +01:00
Simon Howe
a17355e667 Fixes display of unicode characters in the terminal 2015-12-29 09:33:31 +00:00
David
4ea854519b Merge pull request #775 from weaveworks/build-performance
Speed up npm bundle builds
2015-12-16 18:54:35 +01:00
David Kaltschmidt
57dfe4a4e8 Dont use -p on webpack when declaring uglifyjs plugin 2015-12-16 18:53:11 +01:00
Simon Howe
a166ecc92c Tidying up a little bit. 2015-12-16 17:32:46 +01:00
Simon Howe
4df1cac033 Set correct size for terminal which fixes text wrapping.
Sometimes it was going off the sides/bottom.
2015-12-16 17:32:45 +01:00