Commit Graph

85 Commits

Author SHA1 Message Date
Richard Cox 66f73dab5b fixes / updates 2024-12-04 11:54:28 +00:00
Richard Cox 475aaef2eb Merge branch 'pagination-home-page' into pagination-cluster-explorer 2024-12-02 17:45:16 +00:00
Richard Cox f1858b6f02 Iteration
Note - prov clusters is broken (only fetches local) due to blocking pr. breals
- notPinned list
2024-12-02 17:32:41 +00:00
Richard Cox 419cc30fd1 Server-side pagination for home page clusters list and side bar clusters
- Functional Changes
  - SSP now works after vue3 bump
  - Home Page Clusters list now uses server-side pagination
  - Side Bar clusters list now uses server-side pagination
  - Wire in now supported sorting / filtering by id and name used for table columns
  - Allow pagination to be enabled given a specific context
  - Call findPage without persisting to store

- New Pagination Tools
  - PaginatedResourceTable - Convenience Component, wraps ResourceTable with pagination specific props
  - PaginationWrapper - Convenience class to handle requests for resources and updates to them (avoiding store)

- Regressions
  - Side Nav menu ready state was `mgmtCluster.isReady && !pCluster?.hasError`, now ???
2024-12-02 15:48:23 +00:00
Richard Cox 006debbda7 fix async button in manual refresh mode 2024-11-15 16:38:02 +00:00
Richard Cox 6bfc45d978 fixes after merge. apply PagResTable to node list, vue3 fixes 2024-11-14 17:05:34 +00:00
Richard Cox bbf4bcd929 Merge branch 'pagination-home-page' into pagination-cluster-explorer 2024-11-14 16:16:17 +00:00
Richard Cox 8e0fabc8ed Server-side pagination for home page clusters list and side bar clusters
- Functional Changes
  - SSP now works after vue3 bump
  - Home Page Clusters list now uses server-side pagination
  - Side Bar clusters list now uses server-side pagination
  - Wire in now supported sorting / filtering by id and name used for table columns
  - Allow pagination to be enabled given a specific context
  - Call findPage without persisting to store

- New Pagination Tools
  - PaginatedResourceTable - Convenience Component, wraps ResourceTable with pagination specific props
  - PaginationWrapper - Convenience class to handle requests for resources and updates to them (avoiding store)

- Regressions
  - Side Nav menu ready state was `mgmtCluster.isReady && !pCluster?.hasError`, now ???
2024-11-14 16:01:32 +00:00
Richard Cox 33876135ca
Ensure lists update when switching between workspaces with the same number of rows (#12449) 2024-10-31 17:16:04 -07:00
Phillip Rak 997da50f44 Replace instances of "Borderless" multi action buttons
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2024-09-26 15:57:48 -07:00
Cody Jackson 0b4208ef5f Adding missing emits values to sortable table
These emits were being done within the selection.js mixin. I looked through all the other mixins and didn't find additional emits.

I noticed this while working on harvester.
2024-09-24 09:22:06 -07:00
Cody Jackson 5052c2a8e8 Enabling `vue/require-explicit-emits` linting rule
https://github.com/rancher/dashboard/issues/11961
2024-09-19 09:58:53 -07:00
Cody Jackson a2a16e1440 Fixes for harvester 2024-09-13 09:43:38 -07:00
Phillip Rak b68adb3833 Revert "Refactoring the plain element <input> data bindings"
This reverts commit 7f1536d9cf.

Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2024-08-27 15:39:02 -07:00
Cody Jackson d1ccb6c91e Fix sortable table search bar filter
We were just handling the input event wrong. Probably a typo either in our script or when preparing for our script
2024-08-22 16:09:54 -07:00
Cody Jackson 0666d4f1a8 Changing how we evaluate if a slot is present in sortable table. Length was 0 even when the slot was being used. 2024-08-22 16:09:54 -07:00
Phillip Rak 7f52a60490 Resolve error: `TypeError: this.slots['header-left'] is not a function`
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2024-08-22 16:09:54 -07:00
Phillip Rak 399696ae73 Upgrade `v-tooltip` to `floating-vue`
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2024-08-22 16:05:37 -07:00
Phillip Rak 0c9361a024 render the login page
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2024-08-22 16:05:37 -07:00
Cody Jackson 9b829c55ea Ran `yarn lint --fix` 2024-08-22 16:05:36 -07:00
Cody Jackson d5ce4fff2e Run the vue3 migration script
Commands run:

➤ yarn migrate
➤ git clean -fdx
➤ nvm use 20
➤ yarn
2024-08-22 16:05:36 -07:00
Cody Jackson 7f1536d9cf Refactoring the plain element <input> data bindings
Performing this change so the vue3 migration script can modify all @input, @v-model of components without changing plain elements. This will reduce the number of vue3 compiler errors.
2024-08-22 16:04:52 -07:00
Richard Cox 8b03d567f0 Add server-side pagination to cluster explorer events and general events list 2024-08-20 14:38:10 +01:00
Richard Cox a0a6883a7b tidying up 2024-08-19 16:23:35 +01:00
Richard Cox 8e120d0d32 WIP 2024-08-19 16:23:35 +01:00
Richard Cox 25c0c702c2 cluster list now uses resource table 2024-08-19 16:23:35 +01:00
Giuseppe Leo a2304f462e
Remove or replace all the @nuxt libraries (#11302)
* Update checkout to v4 and bump Node to 16

* Update GHA workflow migration paths

* Removed named exports from Vue files

* Move code outside of the Vue app element

* Remove @nuxtjs/eslint-config-typescript

* Remove @nuxt/types and @nuxt/typescript-build

* Fix import issue with http-proxy-middleware

* Replace @nuxtjs/axios with axios and axios-retry

* Remove @nuxtjs/webpack-profile

* Fix linting issues after Nuxt webpack removal

* Pin resolution for glob after rebase

* Update yarn.lock after rebase

* Fix issue with rancher-components

* Bump rancher-component GHA config to match rebase changes

* Generate yarn file

* Add dependency

* Remove nuxt global var in app template

* Pin version for babel/plugin-proposal-private-methods
2024-08-08 15:31:44 +02:00
Izaac Zavaleta fa80996a04 Use testid locators rather than positionl on pagination 2024-06-15 10:13:56 -07:00
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
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
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 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
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
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 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