Commit Graph

5 Commits

Author SHA1 Message Date
Risha Mars e69da1b8a8
Move the dashboard's component library from antd to material-ui (#1776)
Switch the dashboard's component library from antd to material-ui.

There are extensive changes to most of the frontend components in the app.

This branch changes all uses of antd components to their closest equivalent in
material. There is still a lot of polish that needs to go into the look of
individual components, but since the major component rewrites are done, I think
get this work in so that further work can be done in smaller branches.

Changes in this branch:

- add Material-UI 3.2.2 to the project
- replace all uses of antd with material-ui components
- remove antd from the project
- slight modifications of eslint rules 
- restructuring of app components to be rendered under the Navigation 
component 
- deleted most of our css (replaced with material's inline styles) 
- pinned package versions in package.json (mostly removing ^)
2018-10-19 11:23:43 -07:00
Risha Mars 1caaefd5c8
Fix errors on the tap form when clearing items (#1666)
If you select a from namespace and from resource in /tap and try to clear them
using the little x in the form field, there would be a huge js error causing the
app to not render. Fix this.

Also removes filterOptions which wasn't being used any more. This will probably
make parsing tap results ever so slightly faster as we're now not trying to also
aggregate potential filter options.

* Fix js errors on Tap form when Clear button is hit
* Remove filter options code since we're not using the filters anywhere
2018-09-17 14:28:01 -07:00
Risha Mars 0eaa9e4952
Tap the entire namespace if no resource is specified (#1558)
- Use an ant Select instead of Autocomplete for resource list, so that the user
can see all available tappable resources 

- Fix bug where the authority autocomplete wasn't showing any options 

- Adds "namespace/" as an option in the resource selection dropdown

This required some weird handling because we allow requests of the form
linkerd tap namespace/linkerd (taps namespace linkerd)
but not
linkerd tap namespace --namespace linkerd (does not work as intended, 
taps every namespace)
2018-08-31 15:50:48 -07:00
Risha Mars 70babbaeba
linkerd top GUI (#1454)
Add a Top page to the linkerd web UI. This is the web equivalent of #1435.
I've used the same fields as in the current implementation.
This branch also includes some slight refactors to the Tap code to enable code reuse.

The request processing logic is pretty similar to that in Tap.jsx, except that we can 
immediately discard the result once we receive the response end and aggregate 
that result into the top results. So the index of tap results will tend to be smaller 
(unless they're long running requests like streaming). But we also add a similar 
index of aggregated Top results, and discard oldest results if top has been
running for a long time.

* Add a Top page to the web UI
* Refactor Tap event parsing into common util code
* Small refactors to the TapQueryForm and the CliCmd display to accomodate Top
* Collate tap events based on the ID (src, dst, stream)
* Also refactor keying of req/rsp/end into requestInit/responseInit/responseEnd for clarity
* Use pod labels when present in top
* Fix bug where src/dst were switched in the Tap display table
2018-08-16 10:51:19 -07:00
Risha Mars e5ab124d76
Refactor Tap query form into its own component (#1446)
Tap.jsx is really large and contains a lot of logic that pertains only to the Tap Query Form.
This PR tries to separate the concerns of the form and the query display from the main 
Tap querying and rendering logic. 
This will also allow us to easily reuse this form/CLI formatting for the Top page.

Changes in this PR:

* moves all the code for the form into its own component (TapQueryForm)
* moves the code that displays the current query into its own component (TapQueryCliCmd)
* formats the current tap query as the equivalent command line format that you 
can paste into a terminal
2018-08-14 11:29:35 -07:00