Commit Graph

80 Commits

Author SHA1 Message Date
Richard Cox 53544f5d19
Add an alternative List loading indicator for use with server-side paginated (#11129)
* Changes for new design
- New visuals
- Pagination controls --> load more
- finished testing of label select with pagination off

# Conflicts:
#	shell/edit/provisioning.cattle.io.cluster/__tests__/Basics.tests.ts

* Changes following review

* Update Node list to support server-side pagination
- Setup pagination headers for the node type
- Define a pattern for fetching custom list secondary resources
- Major improvements to the way pagination settings are defined and created
- Lots of docs improvements
- Handle calling fetch again once fetch is in progress (nuxt caches running request)
- Validate filter fields (not all are supported by the vai cache
- General pagination fixes

* Lint / test / fixes

* Improvements to configmap e2e test & Improve pagination disabled

* Beef up validation

* Fix missing name column in non-server-side paginated node list

* Fix PR automation actions
- fix syntax
- catch scenario where a pr has no fixed issue

> There's duplication between files, see https://github.com/rancher/dashboard/pull/10534

* CI bump

* Fixes post merge

* Wire in 2.9.0 settings for server-side pagination
- Everything is gated on `on-disk-steve-cache` feature flag
  - There's a backend in progress item to resolve a `revision` issue, until then disable watching a resource given it
- Global Settings - Performance
  - Added new setting to enable server side pagination
  - this is incompatible with two other performance settings

* Integrate pagination with configmaps in cis clusterscanbenchmark edit form
Also
- improved labeled select pagination
- gate label select pagination functinality on steve cache being enabled

* - harvester machine-config
- project monitoring (and bug fixes)

* Disable workload screen if vai cache is on
- temp step until we get new overview

* TODOs and TEST

* Conditionally remove fetch of all secrets from SelectOrCreateAuthSecret

* TODOs and TEST

* Update SimpleSecretSelector
- only used in monitoring.coreos.com.alertmanagerconfig context

* View and Edit ingress - secrets

* node detail page - pods list

* Backup/Restore: Secrets (WIP)

* Backup/Restore: Secrets, and other usages of SimpleSecretSelector / SelectOrCreateAuthSecret

* Edit: Service account

* Add comments for remaining items

* Paginate Secret selection for logging providers
- Allow `None` option in Paginationed LabelSelect
- Optionally classify pagination response

* WIP

* fixes arfter merge

* Don't suggest container names, not practical
- previously all pods were fetched... and we scrapped all container names from them
- this is a scaling nightmare, user now must just enter the name/s to match

* Avoid findAll secrets in SimpleSecretSelector

* tidying up

* Move LabeledSelect/index.vue back to LabeledSelect.vue to not break extensions

* changes after self review... 1

* changes after self review... 2

* ooof

* changes after self review... 3

* fix formatting

* Link new paginated label select with pagination setting

* Work around failing kubewarden unit tests in check-plugins gate

* Fix backup.spec e2e test

* fix formatting, paginationUtils.isSteveCacheEnabled --> paginationUtils.isEnabled

* Don't fetch all secrets on cloud creds page

* Fix backup.spec e2e test

* TODO tidying / tracking

* don't getch ALL workloads for hacky way to get a link to a service's workload

* Fix bad merge

* Updates after working with vai cache image

* test fixes

* Create a convienence wrapper called ResourceLabelSelector that hides most of the complexity

* fix unit test

* Add alt-loading indicator to sortable table, use for pagination

* Updates following review

* Remove workload health until #10417 is resolved

* Updates following review

* changes following self review

* Fix bottom bar of edit backup, edit restore pages

* revert temp change

* changes following self review

* Workaround for kubewarden unit tests in check plugin gate

* bump

* Fix e2e

* Fix linting

* type fixing

* fix standard loading indicator

* - improve filtering without pagination
- update allowed fields given latest backend changes
- enable on by default exact filter string matches (disable for lists

* remove temp code

* fix linting

* Changes following review

* Fixes for vai cache feature flag
- name was changed from on-disk-steve-cache to ui-sql-cache
- fix timing issue - don't watch resources until we know the vai cache feature flag

* Changes following review

* Fix two sketchy tests
- new exception in docs page
- don't nav to page via button click and then goto same page

* More test improvement
- force user to go to tab which is source of route guard issue
- move setup stuff to a test for cypress to re-retry

* changes following review
2024-06-11 20:08:29 +01:00
Mo Mesgin a4dc21b20c make thead vertically top aligned when a column with sub-label exists 2024-05-13 15:43:02 -07:00
Neil MacDougall f5431cbbaf
Add i18n string usage checker script (#10805)
* Add i18n string usage checker script

* Fix lint issues

* Add i18n check to GH Action workflow

* Update to node 16

* Update workflow to run script properly

* Allow script to return okay if when there are errors

* Add documentation

* Remove commented code
2024-05-02 20:52:15 +01:00
Richard Cox f0c397c001 Update Node list to support server-side pagination
- Setup pagination headers for the node type
- Define a pattern for fetching custom list secondary resources
- Major improvements to the way pagination settings are defined and created
- Lots of docs improvements
- Handle calling fetch again once fetch is in progress (nuxt caches running request)
- Validate filter fields (not all are supported by the vai cache
- General pagination fixes
2024-04-30 11:04:06 +01:00
Francesco Torchia be3ce0c7ee
Add column sublabel to SortableTable component
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2024-04-15 13:05:18 +02:00
Alexandre Alves e6c4d0194e
Don't show state column on import yaml dialog (#10730)
* remove state col and subrows from import YAML action success screen + add tests

* fix e2e test issue

* address pr comments

* address pr comments
2024-04-09 09:04:30 +01:00
Richard Cox 1dfe72af03 external-pagination prop to external-pagination-enabled 2024-04-02 13:34:36 +01:00
Richard Cox 09614b0136 Server-side pagination
Polish and fixes from alpha
2024-04-02 13:34:36 +01:00
Richard Cox ae7eb102ad Pagination Alpha 2024-04-02 13:34:36 +01:00
yonasberhe23 c272370ced
RKE2 Amazon EC2 cluster provisioning tests (#10384)
* amazon ec2 rke2 cluster tests

* update saveAndWaitForRequest fn

* add loading po and use in test

* updates per change requests

---------

Co-authored-by: Yonas Berhe <yberhe@Yonass-MacBook-Pro.local>
2024-02-08 12:44:12 -08:00
Alexandre Alves 095d63e844
fix position of adv table option (#10039)
Co-authored-by: Alexandre Alves <aalves@Alexandres-MBP.lan>
2023-11-16 09:56:11 +00:00
Alexandre Alves b752ff5a17
create new manual-refresh action to not confuse with other refresh actions + update translations + remove tooltip from manual refresh btn (#10033)
Co-authored-by: Alexandre Alves <aalves@Alexandres-MBP.lan>
2023-11-14 15:19:27 +00:00
Richard Cox df9c4be595
Merge pull request #9714 from torchiaf/9665-provissioning-actions-error
Fix 'Scale Down' crash in cluster provisioning details page
2023-09-28 16:06:56 +01:00
Jordon Leach 8874a42305
Update bulk action condition to check for empty resource actions (#9784) 2023-09-27 13:43:41 -04:00
Francesco Torchia 09168d3683
Add empty availableActions to fake rows in cluster provisioning details page
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2023-09-14 17:38:41 +02:00
Francesco Torchia 14d4077a5d
Fix lint
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2023-09-04 10:49:11 +02:00
Francesco Torchia fa4d3dd1ca
Implement the page number getter of a row
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2023-09-04 10:49:10 +02:00
Yonas Berhe f0ba82c83f made updates per change request and fix merge conflict 2023-06-26 10:44:05 -07:00
Giuseppe Leo 01eeb0548f
Add recommended lint rules globally (#8997)
* Update configuration

* Create default config for eslint

* Restore plugin:vue/recommended

* Add exceptions and overrides

* Correct manually remaining issues

* Adding further picked exceptions groupped up

* Fix or disable specific cases manually and singularly

* Add naming linting exception

* Remove unused variable in component

* Move rules to default

* Autocorrect rancher/components linting issues

* Configure VSCode to use multiple files, to display linting for rancher components

* Disable jest lint hook restriction for string list component

* Autofix
2023-06-23 17:02:55 +02:00
yonasberhe23 5e9824edfd
cypress UI automation: account and api keys tests (#8857)
* account and api keys tests

* account & api keys tests: updates made per review

* account and api keys tests: added checkRowCount fn and added step to make test deterministic

* account and api keys tests: removed unused import

* account and api keys tests: update assertion

* account and api keys tests: update navigation test

* account and api keys tests: move deleteButton function, update selector value

---------

Co-authored-by: Yonas Berhe <yberhe@Yonass-MacBook-Pro.local>
2023-05-23 07:34:38 -07:00
Phillip Rak ade3c9f4e7 Replace all instances of `v-tooltip` with `v-clean-tooltip`
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2023-05-18 15:39:14 -07:00
codyrancher 2d575a7cb3
Merge pull request #8767 from codyrancher/standalone
Adding standalone layout for use with standalone extensions
2023-05-01 16:47:33 +02:00
codyrancher f09cb03733 Adding standalone layout for use with standalone extensions 2023-04-29 21:53:19 +02:00
richa 34c9a42147
Removed hasClass method (#8752)
* Removed hasClass method

* Clean code
2023-04-28 14:02:20 +02:00
richa a98ae8a7a9
Fixed selected rows counter (#8419)
* Fixed selected rows counter

* Fixed lint

* Fixed counter in selection.js

* Small fix in toAdd condition

* Lints

* Fixed condition for selected row counter

* Changes in focusAdjacent function

* Fixed lints
2023-04-27 09:26:33 +02:00
Francesco Torchia 74d2a0463d
SortableTable, safe scroll listener remove
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2023-04-19 16:29:41 +02:00
Francesco Torchia 110a5544f2
selection, fix event propagation on row click
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2023-04-19 16:18:13 +02:00
Francesco Torchia 8d0bc71df1
selection, safe classes update on row click
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2023-04-19 16:18:06 +02:00
Francesco Torchia eb1b97da1e
remove jquery, SortableTable
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2023-04-19 16:17:58 +02:00
Phillip Rak 7cecbc0f62 Replace all instances of `v-html` with `v-clean-html`
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2023-03-22 08:30:15 -07:00
Richard Cox f93ee861fc Fix stale RKE1 cluser information in clusters list
- For RKE1 clusters we use the mgmt cluster state instead of row's prov cluster
- This should all work generically by using the prov clusters stateObj
- However this does not work, updates sometimes bubble to the prov cluster level and when they do sometimes they even make it to the list
- Workaround is to conver the state column and sub row into custom cell and sub row slots
- These update correctly given changes to the mgmt object

Note - I haven't touched the machine summary column, a similar fix might be needed there
2023-02-24 16:04:01 +00:00
Alexandre Alves 6516e094b8
Extensions enhancements (#7777)
* add extensions API methods
---------

Co-authored-by: Alexandre Alves <aalves@Alexandres-MBP.lan>
Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro.local>
Co-authored-by: Neil MacDougall <nmacdougall@suse.com>
Co-authored-by: Richard Cox <richard.cox@suse.com>
2023-02-09 10:58:29 +00:00
Alexandre Alves 31ec71f75c
fix issue detected on advanced filtering where searching for a text with an uppercase yelded no results (should be case insensitive) (#8055)
Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro.local>
2023-02-06 17:07:15 +00:00
Alexandre Alves d00e8dc4cd
fix styling of visible cols in advanced filtering (#8071)
Co-authored-by: Alexandre Alves <aalves@Alexandres-MBP.lan>
2023-02-06 17:06:59 +00:00
Alexandre Alves 84e260d95e
Manual Refresh Performance Option (#7904)
* update resource fetching on list views so that secondary resources follow the logic of manual refres
h and/or incremental loading if the main resource defines it

* Update resource-fetch logic to take into consideration the storeType for each individual request + fix logic regarding namespace for fetching resources + update missing resources logic (nodes and prov clusters)

* fix tipo

* reinstate hash system to handle requests for nodes and prov cluster lists

* revert mutation code + add check to register type if it doesnt exist on loadDataPage action

* fix issue with timeout that wasnt working properly for the update of live and delayed cols after manual refresh

* Take in to account the per resource count when calculating `limit`
- This means primary resources with a smaller amount don't restrict secondary resources with larger amounts

Co-authored-by: Alexandre Alves <aalves@Alexandres-MBP.lan>
Co-authored-by: Richard Cox <richard.cox@suse.com>
2023-01-27 14:32:42 +00:00
Francesco Torchia 5895859a2b
Events tab, restore tooltips
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2023-01-25 10:01:49 +01:00
richa 45236c4a80
Fixed column-header tooltip postion (#7901)
* Fixed column-header tooltip postion

* Fixed tooltip position
2023-01-13 10:34:38 +01:00
richa c792d21dd9
Fixed icon size (#7557)
* Fixed icon size

* Add node inactive warning indicator (#7548)

* StringList, delete item on editing

Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>

* Bump @rancher/components version

Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>

* Add manage button to home page (#7546)

* Add manage button to home page

* Fix button spacing

* Make buttons smaller - looks better with extra button

* Fixed icon size in simplebox

* icon fix in GrowlManager.vue

* Add node inactive warning indicator (#7548)

* StringList, delete item on editing

Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>

* Bump @rancher/components version

Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>

* Add manage button to home page (#7546)

* Add manage button to home page

* Fix button spacing

* Make buttons smaller - looks better with extra button

* Fixed close icon size

* Fixed more icons sizes

* Fixed icon size in namespaces filter

* Reverd css changes in LabeledSelect component

* Fix on Header

Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
Co-authored-by: Neil MacDougall <nwmac@users.noreply.github.com>
Co-authored-by: Francesco Torchia <francesco.torchia@suse.com>
Co-authored-by: Richa Bisht <RBISHT@Richas-MacBook-Pro.local>
2022-12-08 16:52:53 +01:00
Richard Cox 762b3e4163 Updates following review
- Tweak settings text
- Use new filter icon
- Tweak "too many" text
- Allow only selecting a single namespace when in 'too many' mode
2022-12-02 12:37:35 +00:00
Richard Cox ab2ea9bc9f
Merge pull request #7422 from richard-cox/fix-multi-bulk-actions
Fix initial display of table bulk actions
2022-11-21 13:56:45 +00:00
Francesco Torchia 397069c6b3
Merge pull request #7297 from torchiaf/fix/7264
Sortable Table: prevent sort icons wrap
2022-11-18 10:54:47 +01:00
Phillip Rak a54c91d73d
Merge pull request #7475 from rak-phillip/chore/eslint-key-spacing
Update key-spacing eslint rule
2022-11-17 13:39:05 -07:00
Alexandre Alves 54032dd8d1
fix advanced filtering issue (#7453)
* fix adv filtering issue + bump rancher icons version

* update fix for advanced filtering

Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro.local>
2022-11-17 11:36:42 +00:00
Phillip Rak 3d410d0974 Apply linter auto-fixes
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2022-11-16 18:38:20 -07:00
Alexandre Alves 649d300e83
add query param to url for simple table filtering on SortableTable (#7368)
* add query param to url for simple table filtering on SortableTable

* enable query param for simple filtering for only default and custom single tabled list pages

* enable query param for simple filtering for workloads list + other minor updates

Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro.local>
2022-11-14 09:31:38 +00:00
Alexandre Alves 1259c4d3f2
fix height of applied filters in advanced filtering (#7340)
Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro.local>
2022-11-14 09:25:51 +00:00
Richard Cox e697d74f6c Fix initial display of table bulk actions
Issue 1)
- When there are multiple instances of the table the bulk actions weren't initially visible
- Caused by the `dedounce` definition shared between different instances of the table
Issue 2)
- K3s cluster nodes list would initially show 'delete' action and then magically dissappears
- Caused by mgmt node model canDelete returning undefined instead of false (due to missing norman node which is letter there)
- The check to then show the actions only checked for `false` rather than a falsey
- This would affect anywhere canDelete/canUpdate returns an undefined instead of false
2022-11-11 18:58:52 +00:00
Giuseppe Leo d2d4122bc0
Review HTML formatting rules (#6805)
* Prevent ESLint to format generated paths

* Add HTML ESLint Rules

* Format all the Vue HTML templates except Harvester

* Exclude Harvester package from linting HTML, keeping old formatting rules
2022-11-11 17:04:22 +01:00
Francesco Torchia 9393fb763d
Sortable Table: prevent sort icons wrap
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2022-10-27 11:15:01 +02:00
Alexandre Alves d23fdce250
extend nuxt.config to allow for passing of proxies as config options + fix issue label cols in sortable table for advanced filtering (#7257)
Co-authored-by: Alexandre Alves <aalves@Alexandres-MBP.lan>
2022-10-25 11:46:30 +01:00