Watches and computed props didn't update based on the content of slots.
The render method would still be called when the slot was updated so I moved the update to there. I also just use a method to compute the title because the value would get cached and not updated even if you accessed it more than once.
https://github.com/rancher/dashboard/issues/9822#issuecomment-1976814164
* remove legacy items except for project config-maps and secrets
* add kv test
* add a watcher to keyvalue to ensure that it updates when the parent component changes the value being displayed
* add keyvalue unit tests to cover add and remove buttons
* remove testing code
* remove more test code
* use isequal instead of json stringify
---------
Co-authored-by: Mo Mesgin <mmesgin@Mos-M2-MacBook-Pro.local>
- 9318936c72
- BUG 1
- Navigating from nodes list to a node detail page unwatches nodes list but doesn't watch new resources
- Node's list destroy has a forgetType node
- this removes entries from store and unwatches nodes list watch
- we clear the fact we're watching the node list once we receieve a resource.stop from socket
- There's a race condition, the node we're going to is still in the store... but the find action for this doesn't kick off a watch for the rsource
- This was resolved by the change in the find action
- BUG 2
- Refreshing on the detail page results in a watch for that specific node
- Navigating to the list starts a watch for all nodes, but doesn't stop the individual watch
- This was resolved by the change in subscribe
- HOWEVER
- These fixes could impact how what we watch in other cases where we might call find all and find specific in the same context
- Safer to address later
1. Switching from a detail page with a watch on a specific resource to the list page where we watch all resources did not unwatch on the specific one
2. Switching to a detail page of a resource that's already in the store should ensure we're watching it
- examples metrics.k8s.io.podmetrics, metrics.k8s.io.nodemetrics, componentstatus
- change 1
- when these are watched the BE now sends an error... which we ignore and try to watch again
- so handle the error
- change 2
- avoid this scenario though by stopping watches that don't have the watch verb
- because of this change 1 can only be tested by changing code
This replaces the current method of managing the `createNamespace` state with something that will be Vue3 compatible.
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
- before the banner setting was expected upfront
- for the logout case the aunauthenticated middleware that fetches the setting now no longer blocks
- so creating the banner components before the setting was fetched would result in missing banners
- this weirldly was not an issue when using nuxt-link to go to /auth-logout route... but was a problem going via url to it
* fix flaky registries test
* refactor waiting for loading state to finish in e2e
---------
Co-authored-by: Mo Mesgin <mmesgin@Mos-M2-MacBook-Pro.local>