Commit Graph

328 Commits (00cf1fbd44b51db3d331d301c430de10a22e0247)

Author SHA1 Message Date
Tyler Wendlandt 2a9cc3f084
Merge pull request #14971 from hashicorp/ui/feature/agentless-nodes-banner
ui: agentless nodes notice banner banner
2022-10-19 09:06:46 -06:00
wenincode 9da2a73785 Call super with arguments to safeguard against future changes 2022-10-18 11:53:24 -06:00
wenincode c450183b4c Use local-storage service to manage localStorage
Use local-storage service, prototyped here https://github.com/LevelbossMike/local-storage-service, to manage local storage usage in an octane way. Does not write to local storage in tests by default and is easy to stub out.
2022-10-18 09:40:47 -06:00
wenincode 63c4d670d9 Set postfix for agentless-notice storage key based on partition and dc 2022-10-14 14:08:40 -06:00
wenincode 6c2ca0ba3f Save agentless node notice dismissal per dc 2022-10-14 12:21:25 -06:00
wenincode c85d70e80d Address linting errors 2022-10-13 19:05:19 -06:00
wenincode 9355d0d4f6 Add tests for filtering node health checks 2022-10-13 18:45:15 -06:00
Jasmine W 56e3c0884e UI: Copy changes for peering detail page 2022-10-13 13:45:03 -04:00
wenincode 09514daf0c Move agentless-notice banner css to it's own file 2022-10-13 10:38:26 -06:00
wenincode d12a6c5e1a Add tests for agentless-notice-banner 2022-10-13 10:29:03 -06:00
wenincode 8254f243ca Move banner to component and make it dismissable 2022-10-13 10:29:03 -06:00
Michael Klein f06001352a Always sort consul-gateway to bottom sources list 2022-10-13 17:13:00 +02:00
Michael Klein 19fbdb7a0b Fix linting error dimension service 2022-10-13 16:45:03 +02:00
Michael Klein 0532dcc441 Update dimension provider
* simplify implementation
* add docs
2022-10-13 16:43:54 +02:00
Michael Klein 35c7cc8ec1 Rename `peers.edit` to `peers.show` 2022-10-13 16:43:54 +02:00
Michael Klein d6f0fe9f6e Fix bucket-list display depends on navigation
We need to explicitly tell the UI to not show the bucket-list
when we are displaying imported services. If we make
this depend on the data we will sometimes not show
it due to data-loader caching.
2022-10-13 16:43:54 +02:00
Michael Klein e55306e258 Match design order health states imported-services 2022-10-13 16:43:54 +02:00
Michael Klein 9030c32164 Use existing freefilter to match existing design 2022-10-13 16:43:49 +02:00
Michael Klein 71e20c3122 Add filtering for 'unknown' imported services 2022-10-13 16:43:49 +02:00
Michael Klein 45f06149d4 Always transition to imported peers.edit 2022-10-13 16:43:49 +02:00
Michael Klein 128de18ac1 Add tooltips exported/imported tabs 2022-10-13 16:43:38 +02:00
Michael Klein ec6d6d001f Display tab tooltips in tab-nav 2022-10-13 16:43:38 +02:00
Michael Klein 7162005a70 Allow tabs to have tooltips 2022-10-13 16:43:38 +02:00
Michael Klein 20d80ed8eb Implement imported services tab peers.edit 2022-10-13 16:43:38 +02:00
Michael Klein 312e6ff206 Display addresses when receiver peer.edit 2022-10-13 16:43:38 +02:00
Michael Klein 7956576019 Return all items without search term exported 2022-10-13 16:43:38 +02:00
Michael Klein 8707b6c3d3 Always display imported & exported on peer
Peers are bi-directional, we need to reflect that
2022-10-13 16:43:38 +02:00
Michael Klein aebb988daf Create search-provider 2022-10-13 16:43:38 +02:00
Michael Klein 5f670e404d Create dimensions provider
To measure the available space of an element when it
should take up the "rest" of the page. This matches
what `ListCollection` is doing internally but makes
the mechanism available in a composable component.
2022-10-13 16:43:38 +02:00
Michael Klein 3559549db7 Move javascript tab class to tab-nav 2022-10-13 10:44:07 +02:00
Michael Klein 9c1f907ed9 Create Peerings::Provider
We need a component abstraction that encapsulates
creating the dynamic tabs based on peering-type.

We create a `PeerTab`-abstraction that behaves like
the data-structure the tab-nav expects to achieve this
effect.
2022-10-13 10:44:07 +02:00
Michael Klein a6e4239e7d Handle case when this.element is undefined outlet 2022-10-13 10:44:07 +02:00
Tyler Wendlandt 06b67a9928
ui: hide node name and meta on agentless instances (#14921)
* [NET-950] hide node name and meta on agentless instances

* Fix linting issues and set synthetic-node value

* ui: changelog entry
2022-10-11 09:59:53 -06:00
Tyler Wendlandt 3638dc13fb
ui: Wrap service names on show and instance routes (#14771)
* Wrap service names on show and instance routes
Moves the trailing type/kind/actions to the second row of the header
no matter what length the service name is. Wraps service name text.

* Change grid format of AppView globally

* Add tooltips to the last element of breadcrumbs
2022-10-05 13:21:34 -06:00
Michael Klein 6fbe799178
Allow managed-runtime badge to be dynamic (#14853) 2022-10-05 11:48:03 +02:00
Michael Klein 03a1a86dfe
ui: chore - upgrade ember and friends (#14518)
* v3.20.2...v3.24.0

* Fix handle undefined outlet in route component

* Don't use template helper for optional modal.open

Using the optional-helper here will trigger a computation
in the same runloop error. This is because we are setting
the `modal`-property when the `<Ref>` component gets
rendered which will update the `this.modal`-property which
will then recompute the `optional`-helper leading to this
error.

Instead we will create an action that will call the `open`-method
on the modal when it is defined. This gets rid of the double
computation error as we will not access the modal property
twice in the same runloop when `modal` is getting set.

* Fix - fn needs to be passed function tab-nav

We create functions in the component file instead
so that fn-helper stops complaining about the
need to pass a function.

* Update ember-exam to 6.1 version

"Makes it compatible" with ember-qunit v5

* scheduleOnce setMaxHeight paged-collection

We need to schedule to get around double-computation error.

* Fix - model.data is removed from ember-data

This has been private API all along - we need to
work around the removal.

Reference: https://github.com/emberjs/data/pull/7338/files#diff-9a8746fc5c86fd57e6122f00fef3155f76f0f3003a24b53fb7c4621d95dcd9bfL1310

* Fix `propContains` instead of `deepEqual` policy

Recent model.data works differently than iterating attributes.
We use `propContains` instead of `deepEqual`. We are only
interested in the properties we assert against and match
the previous behavior with this change.

* Fix `propContains` instead of `deepEqual` token

* Better handling single-records repo test-helper

`model.data` has been removed we need to handle proxies and
model instances differently.

* Fix remaining repository tests with propContains

We don't want to match entire objects - we don't care
about properties we haven't defined in the assertion.

* Don't use template helper for optional modal.open

Using a template helper will give us a recomputation error -
we work around it by creating an explicit action on
the component instead.

* Await `I $verb the $pageObject object` step

* Fix no more customization ember-can

No need to customize, the helper handles destruction
fine on its own.

* Fix - don't pass `optional` functions to fn

We will declare the functions on the component instead.
This gives us the same behavior but no error from
`fn`, which expects a function to be passed.

* Fix - handle `undefined` state on validate modifier

StateChart can yield out an undefined `state` we need
to handle that in the validate modifier

* Fix linting errors tests directory

* Warn / turn off new ember linting issues

We will tackle them one by one and don't want to
autofix issues that could be dangerous to auto-fix.

* Auto-fix linting issues

* More linting configuration

* Fix remaining linting issues

* Fix linting issues new files after rebase

* ui: Remove ember-cli-uglify config now we are using terser (#14574)

Co-authored-by: John Cowen <johncowen@users.noreply.github.com>
2022-09-15 09:43:17 +01:00
John Cowen acd9d42914
ui: Add AWS Lambda as potential external source (#14605)
* ui: Add AWS Lambda as potential external source

* Update mocks to expect `lambda` as an external-source meta

* Additional mock to make sure all our mocks only contain whats possible
2022-09-14 18:38:03 +01:00
John Cowen ad616a35d3
ui: Fix up tippy console warning... (#14524)
...enabling/disabling now depends on whether the string is non-empty
2022-09-12 11:21:26 +01:00
John Cowen 4a6253d689
ui: Action docs typo (#14512) 2022-09-12 10:39:13 +01:00
Michael Klein 3599aea1c5
ui: update tab nav steps to use `isVisible` vs `clickable` (#14517)
* Add `isVisible` property to tab-nav page-object

* Use `IsVisible` when testing visibility of tabs
2022-09-08 12:46:49 +02:00
John Cowen e81f29f4b8
ui: Add 'self-managed' badge when CONSUL_HCP_MANAGED_RUNTIME=self (#14496) 2022-09-08 11:45:20 +01:00
John Cowen 4f41eaf88f
ui: Additionally use message for displaying errors in DataWriter (#14074) 2022-09-05 19:17:33 +01:00
John Cowen 50380861d0
ui: Adds a HCP home link when in HCP (#14417) 2022-09-01 18:26:12 +01:00
Tyler Wendlandt cdc6fd89d3
ui: Replace file-mask with file-text icon usage on policy list (#14275) 2022-08-24 06:44:01 -06:00
Tyler Wendlandt cb1043d8ac
ui: Update badge / pill icon sizing (#14282)
* Update badge icon sizing to be 16x16

* Update icon sizing in pill component
2022-08-23 13:02:40 -06:00
Michael Klein 7b16b5e9f1
ui: Improve display peer info in service list (#14111)
* Include nspace when surfacing peer in bucket-list

Whenever we display a peer and we are not on OSS we will surface
the namespace as well. The rest of the ui logic of the bucket list
has not changed.

* Display bucket-list after instance-count service-list
2022-08-10 20:07:59 +02:00
Michael Klein 9349bbb706
Don't surface partitions in service search sources (#14078) 2022-08-10 20:04:30 +02:00
John Cowen 50b85c3189
ui: Make DataWriter also deal with more standard shaped errors (#14025)
* ui: Make DataWriter also deal with more standard shaped errors

* ui: Add error states/messages for peering establishment (#14026)

* ui: Add error states/messages for peering establishment

* Inspect state instead of asking about existence of error
2022-08-08 10:51:02 +01:00
John Cowen ff88fcdb39
ui: Ensure CopyableCode copy icon/button is fully clickable (#14016)
* ui: Ensure CopyableCode copy icon/button is fully clickable

* Give it a 40px height also
2022-08-04 13:30:52 +01:00
John Cowen 2547af7e1e
ui: Make peered intentions read-only (#13814)
* ui: Make peered intentions read-only

* Replace "" to undefined for SourcePeer so its the same as PeerName

* Fixup copypasta

* Ensure tests run with no peers
2022-07-26 17:29:37 +01:00