Commit Graph

337 Commits

Author SHA1 Message Date
John Cowen ca15998b51
UI V2 (#4086)
* Move settings to use the same service/route API as the rest of the app

* Put some ideas down for unit testing on adapters

* Favour `Model` over `Entity`

* Move away from using `reopen` to using Mixins

* Amend messages, comment/document some usage

* Make sure the returns are consistent in normalizePayload, also

Add some todo's in to remind me to think consider this further at a
later date. For example, is normalizePayload to be a hook or an
overridable method

* Start stripping back the HTML to semantics

* Use a variable rather than chaining

* Remove unused helpers

* Start picking through the new designs, start with listing pages

* First draft HTML for every page

* Making progress on the CSS

* Keep plugging away at the catalog css

* Looking at scrolling

* Wire up filtering

* Sort out filter counting, more or less done a few outstanding

* Start knocking the forms into shape

* Add in codemirror

* Keep moving forwards with the form like layouts

* Start looking at ACL editing page, add footer in

* Pull the filters back in, look at an autoresizer for scroll views

* First draft toggles

* 2nd draft healthcheck icons

* Tweak node healthcheck icons

* Looking at healthcheck detail icons

* Tweak the filter-bar and add selections to the in content tabs

* Add ACL create, pill-like acl type highlight

* Tweaking the main nav some more

* Working on the filter-bar and freetext-filter

* Masonry layout

* Stick with `checks` instead of healthy/unhealthy

* Fix up the filter numbers/counts

* Use the thead for a measure

* First draft tomography back in

* First draft DC dropdown

* Add a temporary create buttong to kv's

* Move KV and ACL to use a create page

* Move tags

* Run through old tests

* Injectable server

* Start adding test attributes

* Add some page objects

* More test attributes and pages

* Acl filter objects

* Add a page.. page object

* Clickable items in lists

* Add rest/spread babel plugin, remove mirage for now

* Add fix for ember-collection

* Keep track of acl filters

* ember-cli-page-object

* ember-test-selectors

* ui: update version of ui compile deps

* Update static assets

* Centralize radiogroup helper

* Rejig KV's and begin to clean it up

* Work around lack of Tags for the moment..

* Some little css tweaks and start to remove possibles

* Working on the dc page and incidentals

1. Sort the datacenter-picker list
2. Add a selected state to the datacenter-picker
3. Make dc an {Name: dc}
4. Add an env helper to get to 'env vars' from within templates

* Click outside stuff for the datacenter-picker, is-active on nav

* Make sure the dropdown CTA can be active

* Bump ember add pluralize helper

* Little try at sass based custom queries

* Rejig tablular collection so it deals with resizing, actions

1. WIP: start building actions dropdowns
2. Move tabular collection to deal with resizing to rule out differences

* First draft actions dropdowns

* Add ports, selectable IP's

* Flash messages, plus general cleanup/consistency

1. Add ember-cli-flash for flash messages
2. Move everything to get() instead of item.get
3. Spotted a few things that weren't consistent

* DOn't go lower than zero

* First draft vertical menu

* Missed a get, tweak dropmenu tick

* Big cleanup

1. this.get(), this.set() > get(), set()
2. assign > {...{}, ...{}}
3. Seperator > separator

* WIP: settings

* Moved things into a ui-v2 folder

* Decide on a way to do the settings page whilst maintaining the url + dc's

* Start some error pages

* Remove base64 polyfill

* Tie in settings, fix atob bug, tweak layout css

* Centralize confirmations into a component

* Allow switching between the old and new UI with the CONSUL_UI_BETA env var

Currently all the assets are packaged into a single AssetFS and a prefix is configured to switch between the two.

* Attempt at some updates to integrate the v2 ui build into the main infrastructure

* Add redirect to index.html for unknown paths

* Allow redictor to /index.html for new ui when using -ui-dir

* Take ACLs to the correct place on save

* First pass breadcrumbs

* Remove datacenter selector on the index page

* Tweak overall layout

* Make buttons 'resets'

* Tweak last DC stuff

* Validations plus kv keyname viewing tweaks

* Pull sessions back in

* Tweak the env vars to be more reusable

* Move isAnon to the view

* No items and disabled acl css

* ACL and KV details

1. Unauthorized page
2. Make sure the ACL is always selected when it needs it
3. Check record deletion with a changeset

* Few more acl tweaks/corrections

* Add no items view to node > services

* Tags for node > services

* Make sure we have tags

* Fix up the labels on the tomography graph

* Add node link (agent) to kv sessions

* Duplicate up `create` for KV 'root creation'

* Safety check for health checks

* Fix up the grids

* Truncate td a's, fix kv columns

* Watch for spaces in KV id's

* Move actions to their own mixins for now at least

* Link reset to settings incase I want to type it in

* Tweak error page

* Cleanup healthcheck icons in service listing

* Centralize errors and make getting back easier

* Nice numbers

* Compact buttons

* Some incidental css cleanups

* Use 'Key / Value' for root

* Tweak tomography layout

* Fix single healthcheck unhealthy resource

* Get loading screen ready

* Fix healthy healthcheck tick

* Everything in header starts white

* First draft loader

* Refactor the entire backend to use proper unique keys, plus..

1. Make unique keys form dc + slug (uid)
2. Fun with errors...

* Tweak header colors

* Add noopener noreferrer to external links

* Add supers to setupController

* Implement cloning, using ember-data...

* Move the more expensive down the switch order

* First draft empty record cleanup..

* Add the cusomt store test

* Temporarily use the htmlSafe prototype to remove the console warning

* Encode hashes in urls

* Go back to using title for errors for now

* Start removing unused bulma

* Lint

* WIP: Start looking at failing tests

* Remove single redirect test

* Finish off error message styling

* Add full ember-data cache invalidation to avoid stale data...

* Add uncolorable warning icons

* More info icon

* Rearrange single service, plus tag printing

* Logo

* No quotes

* Add a simple startup logo

* Tweak healthcheck statuses

* Fix border-color for healthchecks

* Tweak node tabs

* Catch 401 ACL errors and rethrow with the provided error message

* Remove old acl unauth and error routes

* Missed a super

* Make 'All' refer to number of checks, not services

* Remove ember-resizer, add autoprefixer

* Don't show tomography if its not worth it, viewify it more also

* Little model cleanup

* Chevrons

* Find a way to reliably set the class of html from the view

* Consistent html

* Make sure session id's are visible as long as possible

* Fix single service check count

* Add filters and searchs to the query string

* Don't remember the selected tab

* Change text

* Eror tweaking

* Use chevrons on all breadcrumbs even in kv's

* Clean up a file

* Tweak some messaging

* Makesure the footer overlays whats in the page

* Tweak KV errors

* Move json toggle over to the right

* feedback-dialog along with copy buttons

* Better confirmation dialogs

* Add git sha comment

* Same title as old UI

* Allow defaults

* Make sure value is a string

* WIP: Scrolling dropdowns/confirmations

* Add to kv's

* Remove set

* First pass trace

* Better table rows

* Pull over the hashi code editor styles

* Editor tweaks

* Responsive tabs

* Add number formatting to tomography

* Review whats left todo

* Lint

* Add a coordinate ember data triplet

* Bump in a v2.0.0

* Update old tests

* Get coverage working again

* Make sure query keys are also encoded

* Don't test console.error

* Unit test some more utils

* Tweak the size of the tabular collections

* Clean up gitignore

* Fix copy button rollovers

* Get healthcheck 'icon icons' onto the text baseline

* Tweak healthcheck padding and alignment

* Make sure commas kick in in rtt, probably never get to that

* Improve vertical menu

* Tweak dropdown active state to not have a bg

* Tweak paddings

* Search entire string not just 'startsWith'

* Button states

* Most buttons have 1px border

* More button tweaks

* You can only view kv folders

* CSS cleanup reduction

* Form input states and little cleanup

* More CSS reduction

* Sort checks by importance

* Fix click outside on datacenter picker

* Make sure table th's also auto calculate properly

* Make sure `json` isn't remembered in KV editing

* Fix recursive deletion in KV's

* Centralize size

* Catch updateRecord

* Don't double envode

* model > item consistency

* Action loading and ACL tweaks

* Add settings dependencies to acl tests

* Better loading

* utf-8 base64 encode/decode

* Don't hang off a prototype for htmlSafe

* Missing base64 files...

* Get atob/btoa polyfill right

* Shadowy rollovers

* Disabled button styling for primaries

* autofocuses only onload for now

* Fix footer centering

* Beginning of 'notices'

* Remove the isLocked disabling as we are letting you do what the API does

* Don't forget the documentation link for sessions

* Updates are more likely

* Use exported constant

* Dont export redirectFS and a few other PR updates

* Remove the old bootstrap config which was used for the old UI skin

* Use curlies for multiple properties
2018-05-10 19:52:53 +01:00
John Cowen 9a53562417 Fix typo ot > to 2018-05-10 18:51:13 +01:00
John Cowen 8567ed6175 Add v2 notification banner at the top of the page 2018-05-10 17:17:12 +01:00
Kyle Havlovitz 2ac0669362
Update static assets 2018-04-13 10:05:30 -07:00
Jack Pearkes 62190439c4 ui: update version of ui compile deps 2018-04-13 09:40:46 -07:00
Josh Soref 1dd8c378b9 Spelling (#3958)
* spelling: another

* spelling: autopilot

* spelling: beginning

* spelling: circonus

* spelling: default

* spelling: definition

* spelling: distance

* spelling: encountered

* spelling: enterprise

* spelling: expands

* spelling: exits

* spelling: formatting

* spelling: health

* spelling: hierarchy

* spelling: imposed

* spelling: independence

* spelling: inspect

* spelling: last

* spelling: latest

* spelling: client

* spelling: message

* spelling: minimum

* spelling: notify

* spelling: nonexistent

* spelling: operator

* spelling: payload

* spelling: preceded

* spelling: prepared

* spelling: programmatically

* spelling: required

* spelling: reconcile

* spelling: responses

* spelling: request

* spelling: response

* spelling: results

* spelling: retrieve

* spelling: service

* spelling: significantly

* spelling: specifies

* spelling: supported

* spelling: synchronization

* spelling: synchronous

* spelling: themselves

* spelling: unexpected

* spelling: validations

* spelling: value
2018-03-19 16:56:00 +00:00
John Cowen 12f36415a4 Fixes erroneous closed <p> tag 2018-01-16 11:29:55 +00:00
James Phillips 3a311b7a18
Manually patches handlebars JS to escape = to prevent XSS. 2017-12-20 19:49:06 -08:00
James Phillips 2c0d7ae4f2
Fixes a JS error that came in as part of #3760. 2017-12-20 17:40:47 -08:00
James Phillips bd9bd8c119
Wraps the key in a property that URL encodes it. 2017-12-20 10:19:50 -08:00
James Phillips 8aeb821bee
Delete development_config.json 2017-11-08 23:43:40 -08:00
James Phillips 39f2359804 Fixes an XSS issue with unescaped node names. (#3578)
* Fixes an XSS issue with node names in the tomography graph.

* Updates built-in static web assets.

* Updates the change log.
2017-10-16 09:12:36 -07:00
James Phillips 539285cf1f
Updates checked in web assets to pick up CSS change.
Closes #3521
2017-10-04 09:52:15 -07:00
Cyril Gaudin d852ee05cd ui: Use monospace font for textarea controls. 2017-10-02 15:49:20 +02:00
Kyle Havlovitz d9fc2b3d75
Update coord display in ui to account for segments 2017-08-30 11:58:29 -07:00
James Phillips 219fb6dd70 UI cleanup follow up from #3245. (#3251)
* Removes unnecessary set for model component which will be null.

* Returns a 404 for a missing node, not a 200 with an empty response.

* Updates built-in web assets.
2017-07-10 09:40:00 -07:00
James Phillips c849458d9b Changes the default ACL token type to "client" in web UI. (#3246)
* Changes the default ACL token type to "client".

* Updates built-in web assets.
2017-07-08 17:28:04 -07:00
James Phillips 0a17a8284f Cleans up web UI and fixes ACL token "stuckness" issue. (#3245)
* Removes GitHub reference.

* Doesn't display ACL token on the unauthorized page.

* Removes useless fetch for nodes and cleans up comments.

* Provides a path to reset the ACL token when it's invalid.

This included making the settings page global so it's reachable, and adding
some more information about an error on the error page.

* Updates built-in web assets.
2017-07-08 17:16:05 -07:00
James Phillips e32b42a222
Updates static assets to latest. 2017-06-07 21:16:59 -07:00
James Phillips 62ee3435e8 Merge pull request #2812 from naaaargle/master
UI Improvement: Add sticky scroll to side panel
2017-05-18 10:28:28 -04:00
Brian Shumate 5b4cf71b38
Use updated ACL guide URL instead 2017-05-05 11:43:06 -04:00
Brian Shumate 601ca89516
UI: open docs links in new tab
- set `target="_blank"` on all docs URLs
2017-05-05 11:19:53 -04:00
James Phillips 0e3d93a0bd Revert "UI: remove ACL ID from the left list" 2017-05-02 14:28:56 -07:00
Seth Vargo 2f8f0b2320 Merge pull request #2517 from bhuisgen/feature/ui-remove-acl-id-from-list
UI: remove ACL ID from the left list
2017-05-02 13:12:57 -07:00
James Phillips a3e1e8e7e5
Updates static assets to pick up #2712. 2017-05-02 10:52:06 -07:00
Jack 2489355975 Add JSON validation to update view
JSON validation has now been added to the update view following the same format
as create. Since 'valueDecoded' does not have the ability to check if the value
is base64 before decoding then this must be checked first; if it is base64 then
use the decoded one, if not just get the value.

Change incorrect trailing span close to label.
2017-05-02 17:20:36 +09:00
Jack cb73d83f1e Add JSON validation to UI
JSON validation added to UI. This has been implemented through the use of a flag
to enable/disable the functionality with a watcher on the value to set the
success/error class on the textarea itself.

No hard validation added to the field.
2017-05-02 17:20:35 +09:00
Brian Shumate 2310a21ff4
ui: Add favicon.png for Chrome
- This completes all favicon related additions and
  completely resolves error in Chrome
2017-04-25 16:11:19 -04:00
Brian Shumate 9b10d4a9d5 ui: Update index to fix #2945 (#2956) 2017-04-25 10:00:19 -07:00
Brian Shumate b264d5cfe3 ui: Add and update favicons (#2948)
ui: Add and update favicons

* Add most popular device/size favicon combinations
* Update existing favicons
* Change permissions to 0644 on static assets

Fixes #2945
2017-04-25 09:23:34 -07:00
James Phillips 1f40dc83e3
Updates static assets to pick up #2899. 2017-04-13 14:40:16 -07:00
Brian Shumate 22c058b115
Everything is pink now 2017-04-13 09:27:32 -04:00
Brian Shumate bf5b75b72c
Pink cylon image! 2017-04-12 20:21:51 -04:00
Brian Shumate 31bd1d0de3
UI: use new pink hues for active/primary btns 2017-04-12 19:32:10 -04:00
Brian Shumate a033e7477d
UI updates for new Consul logo
- Update consul-logo.png
- Update all favicons
- Update UI README
2017-04-12 18:58:06 -04:00
Terror 690c73ecb4 Update index.html
Correct link to the ACL guide.
2017-04-10 13:32:33 +12:00
Seth Vargo b3cd9acdae
Link to new api 2017-04-04 12:52:00 -04:00
Mary Nagle 32faa23d18 Add sticky scroll to side panel 2017-03-21 14:39:57 -04:00
Brian Shumate ef7a8704c5
UI: add notification for disabled JavaScript 2017-01-05 09:10:58 -05:00
Brian Shumate eee78bef83
Remove Deregister from UI for #2541
- Remove Deregister button
- Remove Deregister functionality
2016-11-30 11:07:04 -05:00
Brian Shumate dba25aacfa
Bootstrap w/o Glyphicons (resolves #2485)
- Remove reference to Glyphicon Halflings @fontface
- Remove unused Glphyicon related classes
2016-11-21 18:08:17 -05:00
Boris HUISGEN 71b97640df Remove ACL ID from the left list 2016-11-18 03:18:37 +01:00
James Phillips fb51976469 Merge pull request #2340 from kushniro/b-ui-tags-commas
UI: remove redundant commas in tags list (services view)
2016-11-17 16:36:15 -08:00
Blake Walters 8d4433c88f properly escape session and acl data in UI (#2456)
* update libv8 gem to something that compiles

* properly escape session and acl data in UI

fixes an XSS vulnerability caused by having the sessionName, sessionMeta, and aclName blindly returning data as Handlebars.SafeStrings
2016-10-31 18:16:43 -07:00
Omer Kushnir 362967f0c9 UI: remove redundant commas in tags list (services view)
When some services had no tags(Tags is null) and some did have tags redundant commas were added to the tags list.
2016-09-15 11:37:45 +03:00
James Phillips 8e8f840169
Updates built-in UI static assets to latest. 2016-08-12 18:01:59 -07:00
James Phillips c1f710755a Merge pull request #2055 from patrickbaber/master
Removes fixed height of node/service boxes.
2016-08-10 16:03:18 -07:00
James Phillips 2acb287690
Fixes JS exception when there are no coordinates present. 2016-08-08 17:38:22 -07:00
James Phillips 1955eadc12 Updates web assets to pull in RTT viz. 2016-06-07 09:32:44 -07:00
Ross McFarland c92f681944 Implement a first-pass of tomography node hover
Not at all using Emeber's facilities and no clue how to do so with this.
2016-05-18 10:05:16 -07:00
Ross McFarland 4501904313 Rework sampling to avoid 0 case and always include min and max 2016-05-18 09:50:30 -07:00
Ross McFarland 559dc4599e Sample tomography distances to cap number around 360 2016-05-17 12:57:02 -07:00
Ross McFarland 58c3b08134 Switch tomography to median rather than avg 2016-05-17 10:43:50 -07:00
Patrick Baber 88ab00f468 remove fixed height 2016-05-16 11:29:40 +02:00
Ross McFarland d756a552eb Handle no peers in tomography graph 2016-05-15 06:30:37 -07:00
Ross McFarland 8a9fe0239d Don't include self in tomography 2016-05-15 06:13:52 -07:00
Ross McFarland ba3c4fc3e3 Implementation of a per-node tomography graph
Adds a new section to the node information, Network Tomography. There's a radar
plot of the distances (in ms) between the current node and its peers as well as
min, avg, and max.
2016-05-14 18:35:09 -07:00
James Phillips 92040c2349 Merge pull request #1702 from far-blue/ui-configurable-api-url
Configurable consul host address
2016-03-18 21:05:00 -07:00
James Phillips cb1bf35ce9 Updates to latest compiled ui assets. 2016-03-07 13:49:08 -08:00
captainill 95337b7211 add announcement banner for Consul Enterprise launch 2016-03-03 12:23:30 -08:00
Robert Goldsmith 6cb5fba792 Included support to override the assumed location of the consul so you can run the UI on a normal web server potentially on a different host to your consul servers. 2016-02-09 13:26:48 +00:00
Sean Chittenden c0046e0f30 Acknowledge that we're using GNU make's dialect and rename appropriate
Makefiles to GNUmakefiles so that non-GNU make(1) will error out.  This
should be a transparent change to the universe of people using GNU make.
2016-02-05 14:24:26 -08:00
James Phillips 0fcdd37107 Fixes the static asset generator for new pkg path, updates assets. 2016-01-15 10:21:42 -08:00
Seth Vargo dc9131a732 Use HTTPS + www. where appropriate 2016-01-13 17:44:01 -05:00
James Phillips 35ef5fa975 Fixes a bad merge in the UI. 2016-01-02 06:58:21 -08:00
James Phillips 9f4ac9adc7 Merge pull request #1422 from railsguru/master
Propagate token in UI
2016-01-02 06:55:14 -08:00
Ryan Uber a262115679 agent: compile web assets into consul binary 2015-12-24 22:21:34 -05:00
Mike Oswell 6e23083bbd Add the token to /v1/internal/ui/nodes. (issue #1071) 2015-12-16 12:32:56 -08:00
Matthew Irish c403745a55 ui: swap unicode glyph with inline svg for the settings icon 2015-12-04 10:36:55 -06:00
Andy Lo-A-Foe 3dd740577c Propagate token in UI 2015-11-18 08:29:01 +01:00
James Phillips 0f0736cb27 Moves the static assets into a subfolder where index.html expects them. 2015-10-27 18:19:17 -07:00
Matthew Irish bc79b65f3f Merge pull request #1338 from hashicorp/js-cleaning
Clean up the JS a bit and make Ember code more idiomatic
2015-10-26 13:24:06 -05:00
Matthew Irish b45cde637f Show node status as failing if a service on the node is failing 2015-10-26 10:26:16 -05:00
Matthew Irish 2fe7dd1ea8 Clean up the JS a bit and make Ember code more idiomatic 2015-10-26 09:39:18 -05:00
Seth Vargo 7b2fc2f580 Use gox for building 2015-10-22 14:16:01 -04:00
David Adams 0c130994f7 UI formatURL: render null token correctly
If the token argument to formatURL is null, it should be rendered as the
empty string and not the string 'null'.

Should fix #1316 in which Safari gets a 403 error when visiting the
key/value page in the web UI.
2015-10-19 22:18:19 -05:00
Ryan Uber 10c38f8c3a website: document precedence of Atlas endpoint inputs 2015-08-27 17:54:56 -07:00
Jack Pearkes 1584b35e3b revert 8bf8871, fc2aad3, 503d338.
some misplaced UI development changes
2015-08-07 16:40:49 -07:00
Jack Pearkes 5bbc336a25 ui: update development config to not use ACLs to simplify life 2015-08-07 16:36:39 -07:00
Jack Pearkes 694285b596 ui: update gems for development 2015-08-07 16:36:29 -07:00
Jack Pearkes 2b05a38ede ui: add 'map' route and button, tighten up the nav to give space 2015-08-07 16:36:02 -07:00
孔晨 57dfd1f46a fix base64 issue 2015-07-23 15:56:23 +08:00
孔晨 3cd8a0c214 fix 中文乱码问题 2015-07-23 14:47:32 +08:00
Rafik Salama 479bc1c2db UI: Fix restoring state for service names containing slashes 2015-05-29 18:35:39 -04:00
Blake Walters 98f5d7f96e make sure button text overflow is set to ellipsis
fixes #549
2015-03-10 10:48:02 -07:00
Ryan Breen 53afd77e2d s/data center/datacenter/g 2015-02-19 17:45:47 -05:00
Jack Pearkes 96f1077d9d ui: fix listener on dc controller content
fixes #694
2015-02-19 11:48:03 -08:00
Armon Dadgar d51db8bf8e Change tabs to spaces 2015-02-18 15:09:48 -08:00
Armon Dadgar 8ee0b263e1 ui: Only set blank token if none set 2015-02-18 14:44:52 -08:00
Jack Pearkes df11bff8bb ui: add session behavior and ttl to UI
fixes #649
2015-02-11 18:51:30 -08:00
Jack Pearkes fd84191754 ui: update gemfile 2015-02-11 18:41:40 -08:00
Jack Pearkes e2b11a8e32 ui: add service address
fixes #686
2015-02-11 18:18:31 -08:00
Armon Dadgar 1088a5c170 Merge pull request #558 from ceh/http-api-response-headers
add ability to specify response headers on the HTTP API
2015-01-05 11:36:08 -08:00
Seth Vargo b62eb18b38 Update titles to be consistent with other sites 2014-12-30 13:18:25 -05:00
Emil Hessman db23a3f0e9 add ability to specify response headers on the HTTP API
Add an config object that allows adding HTTP header response fields to every
HTTP API response.

Each specified header is added to every response from all HTTP API endpoints.
Each individual endpoint may overwrite the specified header, which makes sure
that Consul headers such as 'X-Consul-Index' is enforced by the API.
2014-12-28 19:17:08 +01:00
Marin 781692e3a8 ui: confirm dialog only when deleting key directories #521 2014-12-06 12:00:51 -08:00
Marin bed14bb96f ui: ask for confirmation before deleting keys #520 2014-12-05 17:14:11 -08:00
Veres Lajos 850d5bdc32 typofixes - https://github.com/vlajos/misspell_fixer 2014-12-04 23:25:06 +00:00
Jack Pearkes 0f62bed1e5 ui: fix session name overflow
fixes #353
2014-10-15 16:19:14 -07:00
Jack Pearkes 6b39687351 ui: reload acls after creating
fixes #323
2014-10-15 15:55:53 -07:00