Commit Graph

159 Commits

Author SHA1 Message Date
Michael Lange
3cf81d2741 Handle node-only views 2020-05-18 15:30:00 -07:00
Michael Lange
b3475add53 Adjust gauge chart stories 2020-05-13 08:36:05 -07:00
Michael Lange
df3c24f968 Bottom aligned columns variant 2020-05-13 08:36:05 -07:00
Michael Lange
4e7354117a Add gauge chart stories 2020-05-13 08:36:05 -07:00
Michael Lange
fe26e904bb Style the gauge chart component 2020-05-13 08:36:05 -07:00
Michael Lange
7e93f9033d Refactor metrics styles to allow for standalone metrics 2020-05-13 08:36:04 -07:00
Michael Lange
d0d1c1fdef Set color in addition to fill for the icon class
Structure icons have fill set to currentColor hardcored in their markup.
This mean setting fill to a color in CSS does nothing, but setting color
now does.
2020-05-06 17:21:47 -07:00
Buck Doyle
bd8d418705 UI: Remove Ember Freestyle (#7839)
This completes the migration to Storybook by replacing the colour palette and typeface components that I left out.
2020-05-06 15:11:15 -05:00
Jasmine Dahilig
c10ac6394f UI: Add representations for task lifecycles (#7659)
This adds details about task lifecycles to allocations, task groups,
and tasks. It includes a live-updating timeline-like chart on allocations.
2020-04-30 08:15:19 -05:00
Buck Doyle
edff4cc78c UI: update exec styles to match conventions (#7811) 2020-04-28 08:33:07 -05:00
Michael Lange
a845c318b8 Merge pull request #7577 from hashicorp/f-ui/csi-beta-label
UI: Change CSI to Storage and mark it as beta
2020-04-06 13:21:11 -07:00
Buck Doyle
90ec5e6457 UI: add exec handling for dead jobs/task states (#7637)
This closes #7456. It hides the terminal when the job is dead and
displays an error when trying to open an exec session for a task
that isn’t running. There’s a skipped test for the latter behaviour
that I’ll have to come back for.
2020-04-06 14:08:22 -05:00
Buck Doyle
f32780355d UI: add live-updating to exec sidebar (#7499)
This closes #7454. It makes use of the existing watchable tools to
allow the exec popup sidebar to be live-updating. It also adds
alphabetic sorting of task groups and tasks.
2020-04-06 13:52:42 -05:00
Michael Lange
0c23b54062 Make table foot fields consistent at all breakpoints
This effectively overrides Bulma's default field layout tweaks
at different breakpoints. This includes going from flex to block
and different font-sizes.
2020-04-02 13:41:41 -07:00
Michael Lange
a6a58ce55d Remove extranneous order property
The "default" order values as set by Bulma are different for different
breakpoints. Since this wasn't considering breakpoints, it resulted
in the unexpected reordering of pagination elements as different page
widths. Turns out removing this property gives us what we want.
2020-04-02 13:27:29 -07:00
Michael Lange
163807fde2 Style the page size selector 2020-04-02 12:50:31 -07:00
Michael Lange
cd8c92b7d4 Move beta to a tag 2020-04-01 10:49:47 -07:00
Michael Lange
524e3a96f8 Change CSI to Storage and mark it as beta 2020-03-31 18:21:55 -07:00
Buck Doyle
e2efb0c0f7 UI: Add exec loading template (#7566)
This closes #7460. Before this, there was an incongruous flash
of the non-exec UI during loading.
2020-03-31 13:59:43 -05:00
Michael Lange
508404ccba UI: Support for CSI (#7446)
Closes #7197 #7199

Note: Test coverage is limited to adapter and serializer unit tests. All
acceptance tests have been stubbed and all features have been manually
tested end-to-end.

This represents Phase 1 of #6993 which is the core workflow of CSI in
the UI. It includes a couple new pages for viewing all external volumes
as well as the allocations associated with each. It also updates
existing volume related views on job and allocation pages to handle both
Host Volumes and CSI Volumes.
2020-03-25 07:51:26 -05:00
Buck Doyle
27df92a967 UI: add exec terminal (#6697)
This connects Xterm.js to a Nomad exec websocket so people
can interact on clients via live sessions. There are buttons on
job, allocation, task group, and task detail pages that open a
popup that lets them edit their shell command and start a
session.

More is to come, as recorded in issues.
2020-03-24 18:22:16 -05:00
Michael Lange
4757f87f0c Merge pull request #7099 from hashicorp/b-ui/mobile-styles-not-full-width
UI: Override the max-width on mobile to avoid losing space due to non-existent gutter menu
2020-02-07 14:27:50 -08:00
Michael Lange
17e2947475 Override the max-width on mobile to avoid losing space due to non-existent gutter menu 2020-02-07 14:22:00 -08:00
Michael Lange
b73ac893a4 Explicit transparent bg on popover actions 2020-02-07 14:17:13 -08:00
Michael Lange
2e2bcc50a7 Add an animation for the initializing state 2020-01-31 12:56:11 -08:00
Michael Lange
e95370464a Redo the node-status-light CSS to be icon-based 2020-01-31 12:56:08 -08:00
Michael Lange
2f1dec2924 Allow for an icon within the node status light 2020-01-31 12:55:55 -08:00
Michael Lange
29c3cdaeb6 Disabled button styles 2020-01-30 21:29:28 -08:00
Michael Lange
40d65319e7 Tweak vertical spacing of headings 2020-01-23 16:34:37 -08:00
Michael Lange
66ea7c100f Increase the size and spacing of the toggle component 2020-01-23 16:34:35 -08:00
Michael Lange
1d6799e5e5 Stack the popover menu under the subnav 2020-01-23 16:34:34 -08:00
Michael Lange
a36290ddc4 Toggle bugs: focus and multiline alignment 2020-01-23 16:34:28 -08:00
Michael Lange
2e39c0a529 New toggle component 2020-01-23 16:34:27 -08:00
Michael Lange
4bcd47c0b3 Make outline buttons have a solid white background 2020-01-23 16:34:25 -08:00
Michael Lange
504a7afa03 Modifiers to the two-step-button 2020-01-23 16:34:25 -08:00
Michael Lange
96522e7f53 Drain stop and update and notifications 2020-01-23 16:34:24 -08:00
Michael Lange
ad8df16c44 Fill in the drain strategy ribbon values 2020-01-23 16:34:22 -08:00
Michael Lange
e47d255b07 Factor out the drain popover and implement its behaviors 2020-01-23 16:34:18 -08:00
Michael Lange
7eb71ca439 Let dropdowns assume their full width 2020-01-23 16:34:17 -08:00
Michael Lange
030b449463 More form styles as needed for the drain form 2020-01-23 16:34:16 -08:00
Michael Lange
5098b552cf Multiline modifier for tooltips 2020-01-23 16:34:15 -08:00
Michael Lange
b02f05fbda Update the dropdown styles to be more similar to button styles 2020-01-23 16:34:14 -08:00
Michael Lange
de03d82df9 PopoverMenu component 2020-01-23 16:34:14 -08:00
Michael Lange
09b62eb8cb Add tooltip to the eligibility control 2020-01-23 16:34:11 -08:00
Michael Lange
3ad898762b Reformat the client detail page to use the two-row header design 2020-01-23 16:34:11 -08:00
Buck Doyle
9f86f5a1fc UI: Migrate to Storybook (#6507)
I originally planned to add component documentation, but as this dragged on and I found that JSDoc-to-Markdown sometimes needed hand-tuning, I decided to skip it and focus on replicating what was already present in Freestyle. Adding documentation is a finite task that can be revisited in the future.

My goal was to migrate everything from Freestyle with as few changes as possible. Some adaptations that I found necessary:
• the DelayedArray and DelayedTruth utilities that delay component rendering until slightly after initial render because without them:
  ◦ charts were rendering with zero width
  ◦ the JSON viewer was rendering with empty content
• Storybook in Ember renders components in a routerless/controllerless context by default, so some component stories needed changes:
  ◦ table pagination/sorting stories access to query params, which necessitates some reaching into Ember internals to start routing and dynamically generate a Storybook route/controller to render components into
  ◦ some stories have a faux controller as part of their Storybook context that hosts setInterval-linked dynamic computed properties
• some jiggery-pokery with anchor tags
  ◦ inert href='#' had to become href='javascript:;
  ◦ links that are actually meant to navigate need target='_parent' so they don’t navigate inside the Storybook iframe

Maybe some of these could be addressed by fixes in ember-cli-storybook but I’m wary of digging around in there any more than I already have, as I’ve lost a lot of time to Storybook confusion and frustrations already 😞

The STORYBOOK=true environment variable tweaks some environment settings to get things working as expected in the Storybook context.

I chose to:
• use angle bracket invocation within stories rather than have to migrate them soon after having moved to Storybook
• keep Freestyle around for now for its palette and typeface components
2020-01-21 15:46:32 -06:00
Buck Doyle
3adb3cd1fe ui: Change Run Job availability based on ACLs (#5944)
This builds on API changes in #6017 and #6021 to conditionally turn off the
“Run Job” button based on the current token’s capabilities, or the capabilities
of the anonymous policy if no token is present.

If you try to visit the job-run route directly, it redirects to the job list.
2020-01-20 14:57:01 -06:00
Buck Doyle
83d92251c5 UI: Fix client sorting (#6817)
There are two changes here, and some caveats/commentary:

1. The “State“ table column was actually sorting only by status. The state was not an actual property, just something calculated in each client row, as a product of status, isEligible, and isDraining. This PR adds isDraining as a component of compositeState so it can be used for sorting.

2. The Sortable mixin declares dependent keys that cause the sort to be live-updating, but only if the members of the array change, such as if a new client is added, but not if any of the sortable properties change. This PR adds a SortableFactory function that generates a mixin whose listSorted computed property includes dependent keys for the sortable properties, so the table will live-update if any of the sortable properties change, not just the array members. There’s a warning if you use SortableFactory without dependent keys and via the original Sortable interface, so we can eventually migrate away from it.
2019-12-12 13:06:54 -06:00
Michael Lange
c9bd7c89ed Use max-width to ensure the width rule is observed in Firefox 2019-10-10 10:34:33 -07:00
Michael Lange
354da0f60c Merge pull request #6048 from hashicorp/f-ui/alloc-fs-files
UI: Alloc FS: File Viewer
2019-08-19 10:36:28 -07:00