* fix keyboard focus being trapped in cluster appearance modal + fixes cluster appearance modal not being activated by enter key
* fix outline cluster appearance toggle btn
* utilize observer in LazyImage to load the image only when it's in viewport
* fix unit tests
* display error image only when src is falsy or got an error
* removed unnecessary data block
* initialize non-reactive data
* move non-reactive data
---------
Co-authored-by: Mo Mesgin <mmesgin@Mos-M2-MacBook-Pro.local>
fixes#14996
When I re-introduced the ExtensionPanel I did it as a separate child of the Metadata component. This implicitly disables inheritAttrs so the class was no longer being passed.
- re-render the core controls, reset the selected values
- also
- fixed typing in labeled-select-pagination. something over the versions broke this
- removed empty comment root output edit page
- removed debug line in awsElasticsearch
* chart detail page
* rename css classes
* update repo link to the detail page
* accessibility improvements
* fix e2e test
* add e2e tests
* tooltip for zero date
* fix e2e tests
* fix e2e tests
* fix e2e test
* use RcButton
* version date tooltip
* add icon to upgrade button
* replace anchor tag with router-link
* fix e2e test
---------
Co-authored-by: Mo Mesgin <mmesgin@Mos-M2-MacBook-Pro.local>
* rename variables
* change button names + fix import
* apply pagination to secrets
* Major Changes
- secrets and project scoped secrets are now two pages
- this fixes the issue where resource-fetch and associated mixins just fail with two of the same type on page
- incremental loading would have been broken for both
- project scoped secrets
- now correct lists upstream secrets that a project scoped based and on the target cluster
- lots of work to get CRUD for management secrets in explore/cluster world
- also includes a specific page to override the store for create/edit/view
- these are now correctly grouped by project
- updated to work with SSP enabled
- secrets list
- shows if the secrets comes from a project
- shows if the secret is a project scoped secret (only used on upstream cluster)
- updated to work with SSP enabled
- disabled update/delete of secrets created from project scoped (these just reset when sync runs again)
- disabled new detail view
- this is broken, it ignores both storeOverride and currentStore, always going to `cluster` store
TODO:
- mostly testing
- blocked on some BE issues (bugs, additional indexed field)
* ... progress. will update commit message
* Revert "Merge pull request #14748 from richard-cox/revert-project-secrets"
This reverts commit be3962261d, reversing
changes made to 62d80084d9.
* tidy, and remove e2e
* test fixes
* fix vai group by
* Fix for grouping (secrets --> group by namespace --> pss --> table is incorrectly grouped but toggle is correct
* fix warning
* fix clone/yaml, fix default/system pss
* don't fetch projects, it wipes out header. this means in upstream we won't show project names for pss downstream
* fix lint
* fix ts complain
* Tweak column tooltips
* Add cypress logs for failing tests
* pipe in `inStore`
* tweaks to cypress logs process
- better name
- log http requests
- only create logs if run failed
* Secret selector improvements and test fixes
- don't cache or watch secrets if we're showing multiple selectors on a page
- ensure we classify secrets (make it into an instance of a model)
---------
Co-authored-by: Mo Mesgin <mmesgin@Mos-M2-MacBook-Pro.local>
Co-authored-by: momesgin <mo.mesgin@suse.com>
This uses the `row.key` as the key in the v-for directive to ensure that each row is uniquely identified by its data. Using a key as an identifier ensures that the local data in the iterated component will sync correctly with the new data.
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
This uses jest fake timers and sets a system time for the LiveDate unit tests.
While rare, there are scenarios where using the actual system time can fail the LiveDate unit test - these failures can occur if a test takes too long, or runs at an innoportune time. Making use of fake timers allows the LiveData tests to be deterministic.
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* add new component to support rich translation
* add test + minor refactor
* add whitelist for tags + fix test
* use new translation component for charts empty state
* fix docs message
* remove unused prop
* remove weak test
* fix tag
* fix tag
* revert removing root tag as prop
* fix type
* minor refactor
* sanitization
* replace escapeHtml with purifyHTML
* use rich translation for no charts docs message
---------
Co-authored-by: Mo Mesgin <mmesgin@Mos-M2-MacBook-Pro.local>
* fix item 2: All page content should be contained by landmarks
* fix item 4. Elements must only use permitted ARIA attributes
* fix item 6. ARIA attributes must conform to valid values
* fix bug on item 6. and fix item 7. <ul> and <ol> must only directly contain <li>, <script> or <template> elements
* fix item 8. Interactive controls must not be nested
* fix item 10. ARIA toggle fields must have an accessible name
* fix item 11. autocomplete attribute must be used correctly
* fix item 12. Form elements must have labels
* fix item 14. ARIA input fields must have an accessible name
* fix item 15. Buttons must have discernible text
* fix item 16. Images must have alternative text
* working on item 17
* finish fix item 17. ARIA role should be appropriate for the element
* fix wrong role in hidden inputs
* address pr comments
- Hide errors in ResourceYaml and display them only in CruResource component to avoid duplicate
- Stick errors on top of the page
- Filter out duplicate errors
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
- two fixes, two places
- Fix - ensure filter=x=1,x=2 format is used and not filter=x=1,2
- this must have worked at some point...
- Fix - ensure partial filter is used when searching secrets by name
- same here...
- SimpleSecretSelector is only used in monitoring alertmanager receive config
- See issue for repro steps
- whoever created it should have used SecretSelector instead
- SecretSelector is only used in logging output providers
- Logging --> Outputs --> Create --> Outputs tab --> Access secret fields
- display errors when adding protected labels/annotations
- discard new labels/annotations when keys are protected and preserve old protected keys
- show protected labels/annotations toggler only in view mode and for EVERY models having custom protected labels/annotations
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
- when we calculate the value of a filter we remove entries that no longer exist
- ensure that this new version of the filter is persisted
- this means whilst on vai supported lists it correctly kicks off a http request
- this also avoids removed namespaces being used in filters if the list changes
Also
- improved some comments
- labelSelector has two primary applicators
- matching utils function
- this should normally NOT be cached and not receive updates over sockets
- this is done by stipulating transient = true
- findLabelSelector
- this should normally be cached and receive updates
- this is done by stipulating transient = false
- when applicable (workload and services detail page) we want live updates whilst we're on the page
- we don't when we leave, so unwatch
- fix and align these two and their usages
- ensure each input (transient) is correct for context
- ensure response is in the correct format and handled correctly
- improved typing
Additionally
- Improve labelling for network policy ingress/egress label selectors
- Replace empty table with 'no details' in cis report detail page's list's sub row
- On services page handle the very weird use case of no visibility on pods
- Fix issue where extension catalog was not showing when refreshing on extension catalog page list
- Fixed an issue where we would ALWAYS show false positive invalid field warning in console
- Bump up default page size from 10k to 100k
- this is for requests we make to the new vai cache outside of pages
- it matches the default they use when proxying requests to target kube cluster
* Fix select controls do not close when clicking on arrow
* Rebase
* Control vue-select state via labeledSelect
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Control vue-select state via Select.vue
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Set isOpen to false when select closes
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Move focus back to select wrapper on close
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Defer more select open state logic to wrapper
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Close when no selection is made
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Allow for multiselect
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Fix failing e2e test
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
---------
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
Co-authored-by: Phillip Rak <rak.phillip@gmail.com>
* Add an id to track members of ArrayList.vue
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Fix unit tests
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Revert change to input
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Fix for e2e test failures
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
---------
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
- Fix issue with undefined routes
- Fix issue with the ResourceDetailDrawer closing when opened in harvester.
- Fixed an issue where the link back to the list page was wrong.
* Simplify spacebar prevent behavior when focusing LabeledSelect
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Fix unit test
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Simplify spacebar prevent behavior when focusing Select
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
---------
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Add support for vue route and extension init
* Fix lint
* Minor doc fix, fix issue with buttons when scrolled
* Ensure onReady is only called once
* Address PD feedback
* Address more PR feedback - simplify close on action
* Add support for vue route and extension init
* Fix lint
* Ensure onReady is only called once
* Address PD feedback
* Tidy ups
* Add one missing tidy up