* Add vee-validate library
* Add validation case for the form
* Add JSDoc for current validator generator
* Add case with existing rules validation
* Add story for nested forms
* Add case for custom component
* Replace list with single value for component validation; Add validation case as real case scenario
* Update validation documentation
* Add Storybook issue note
* Add form for custom component explanation
* Adopt YUP to validate nested forms
* Create custom rule for YUP using existing validations
* Add vertical tab as in Workloadl; Bind tab validation with method
* Add code example for Yup
* Correct nested form markup issues
* Add case with Labeled input using markup
* Add case for nested form components
* Rename files to avoid confusion
* Correct nested definitions for nested components
* Replace inline rule with custom rule
* Simplify documentation
* Fix errors for stories
* Replace Yup with Zod
* Export abstracted chron rule validation and message to match both current architectures
* Add chronSchedule to the parameterized tests; Add @daily case
* Add missing JSDocs for comprension
* Update Cronstrue to 2.53
* Remove unnecessary import
* Fix lint issues
* Add sublabel and chron type with hints
* Add @daily case to the input stories
* Add multiline type story for input
* Added Cron error case
* Add chron tests for input label
* Add periodical case as exceptions
* Linter fix
* Correct unit test definition
* added more validations for server-url on Setup and Global Settings pages
* handling server-url 'use default value' case
* consistent error messages
---------
Co-authored-by: Mo Mesgin <mmesgin@Mos-M2-MacBook-Pro.local>
* Change key for min password due inconsistency with the server value
* Allow to edit env var in settings model
* Allow to pass simple validators in the global settings editor
* Add validation for integer values on global settings password
* Add integer validation
* Add simple validators tests
* Allow integer validation to allow strings from inputs
* Simplify function and extend naming for settings rules
* Add further validations for the min password setting
* Replace logic with regular expression
* Convert Rancher settings into Typescript and add interface
* Allow Rancher settings to be validated
* Add Rancher Settings min password length validation
* Replace settings number input with labeled input of type number for validation; Added missing required, focus, locale and labels attributes
* Add min/max/between value/length cases to global validation cases
* Correct validation syntax
* Add tests for the global settings
* Correct naming and assign directly rules to the inputs
* Create initial tests for CreateEditView
* Prevent Settings view to break if no setting is found for given ID
* Add max password length validation
* Add i18n to settings validation
* Add form validation to the CRUD component
* Prevent form to fail for resource types without validation
* Add test for no validation cases
* Remove form validation in favor of local view logic, due complexity issues
* Correct validator linting issue
* Correct i18n; Add types; Correct min/max/between validations i18n and combine the last
* Add translation type
* Correct validation translation types and definitions
* Replace custom validations with predefined rules
* Reintroduce form validation in abstracted configuration to pass settings through
* Add tests for new generic form validations
* Correct between values and length validation
* Split tests to use pre-existing rulesets due complexity and different cases
* Cleanup jsdoc in form validation
* Cleanup form validation mixin
* Add global settings test for generating rules from config
* Replace value.value with value for validating the resource
* Correct validation call and test instantiation
* Add note about value.value exception
* Disable faulty test due lacks of information
* Replace min/max value validation with between
* Add missing type for settings getter
* Move type folder within shell
* Move settings logic from config to utils
* routing maybe
* remove nested edit views
* harvester custom routes
* fix loading imported dev cluster
* move harvester-manager hci.cluster type out of harvester pkg
* fixes for build-pkg
* fix harvester custom dialogs
* fix harvester pkg routing
* generateDynamicTypeImport hyphenated dirs
rename cloud_credential and machine_config back to cloud-credential and machine-config
* Appease linting
* Fix epinio pkg build
- Includes fixes for some dashboard component references
* Revert "Receiver credential secrets are deleted when secret is set to none"
This reverts commit 836460e2998959bcda0b14a9f6511f248980b7b5.
* Fix plugin modal cancel button in dark mode
* Ensure correct components loaded when a new version of a plugin is loaded
- The route matcher was never updated with new route-->component values
- This was due to `this.router.options.routes` not containing the result of `router.add`
- See https://github.com/vuejs/vue-router/issues/2280
* Revert "Revert "Receiver credential secrets are deleted when secret is set to none""
This reverts commit e524bb3d40ea7adfe35c38ec7870560625965d25.
* fix harvester manager->harvester routing
* rename dialogs
* move harvester-manager files out of harvester pkg
* Revert "remove nested edit views"
This reverts commit e835835943d63e74c50942884fec3706f8703047.
* plugin validators dynamic import - not working
* fix merge conflict
* fix harvester members
* fix conflict
* custom validators
* harvester table formatters
* members routing
* import path fixes
* harvester mutli load
* Port across tweaks made during dynamic plugin work
- harvester plugin can be bundled with the dashboard until dynamic work has been completed
- Nav directly to virt cluster dashboard instead of via /harvester-c-cluster
- Fix missing bottom border on virt cluster list, hide actions (as they're never populated)
* move config/settings and config/harvester-map
fix hci setting custom components
* fix harvester setting import path
* Move over SerialConsole and Novnc, remove harvester.notifications
- These components were so 1-1 with harvester in the end i moved them over
- Also removed the like-for-like generic.notification `harvester.notification` strings
* Remove isSingleVirtualCluster, most of isMultiVirtualCluster
* Fix two nav issues
- harv cluster members --> prefs --> click on-screen back
- dashboard --> prefs --> click on-screen back
Both of these would be better fixed by an incoming change to the default layout (don't show old content before switching page)
* Fix reload of project/namespace page
* Split out project namespace into it's own component (1 or 2)
* Split out project namespace into it's own component (2 or 2)
* use product hideSystemResources opt instead of isVirtual/product===virtual
* fix missing prop in header
* Move FilterLabel and CloudInitType to harv pkg + two other references
* Move Harvester Upgrade components to harv pkg
- Needs a review with Neil regarding generics
* rebase build+load not working
* fix harvester route in authenticated
* Experimental Changes
* Fix merge conflicts
* WIP Fix routing
- includes project/namespace and namespace pages
* Tidying up
* Move harvester core store to plugin, remove harvester code from authenticated flow
- harvester store is a steve store that now lives in the plugin
- harvester `loadVirtual` replaced with a shortened `loadCluster` in it's own store
- Also fix xterm css import
* Fix three routing related bugs
- Fix project/namespace create/edit/cancel/done flows
- Update harvester's loadCluster to better match loadCluster
- Make edit namespace page project resource agnostic
* Build fixes
* Fix create namespace button and other tweaks
* fix two issues with nav out of imported harvester cluster
* Fix alignment of action menu button
- Used in many places
- all generic table action menus
- global settings --> settings
- rke1 cluster detail page machine pool group actions
- project/namespace list project group actions
- resource detail page action menu
* Revert changes to app and pkg creators
- This should fix `check-plugins-build` gate
- It does hide the underlying issue, but that won't have been brought in by this PR?
Co-authored-by: Nancy Butler <42977925+mantis-toboggan-md@users.noreply.github.com>
Fixes#4575 Add in validator injection to form-validation mixin, add in "allTabsExtraContent" slot to "tabbed" for messaging that should span all tabs, Error component optionally displays as banner, InputWithSelect can now show validationMessage on text-box without a label, LabeledSelect can now show tooltip and validationMessage at the same time, Select component can now show validation message, adding and removing rules and rulepaths displays correct content, removing does not reload page (fixes#6319), ingress form shows proper validation messages for the following states: invalid "name" field, invalid request host, invalid rule path, invalid rule target service, invalid rule port, invalid default backend target service, invalid default backend port, either rules or default backend must be present. Ingress form is validated and "Create" button is disabled if payload is not validated as correct.
* Doc
* v0.7.0
* v0.7.1
* v0.7.2
* Add creators
* v0.1.14
* v0.1.17
* Add Yarn link
* Tidy ups and typos
* Allow models to be loaded from plugins
* v0.1.15
* v0.1.18
* v0.6.6
* Improve readme, fix cyperss log msg
* v0.1.17
* v0.1.19
* v0.6.7
* v0.6.8
* Fix logo ref when in shell
* Fix lint issues
* Fix error in example
* Fix script to work on linux
* Add ability to revert moves without losing changes
* Fix bug with custom models in a plugin
* Fix build of UI packages
* Add dist-pkg to .eslintignore
* Pull out util from extend-router to prevent router being pulled in UI packages
* Update PLUGINS.md
* Remove duplicate dependency
* Reduce size of built UI packages
* Share codemirror. Other tidy ups
* Further improvements
* Tidy ups to support i18n in plugins
* Clen up add comments
* More clean-ups and comments added
* Rename from extension to plugin
* Missed file in rename
* v0.6.9
* TIdy ups following rename
* v0.1.20
* v0.1.21
* More refactor and tidy up
* v0.1.22
* v0.1.18
* v0.1.19
* v0.1.23
* v0.6.10
* Version Packages. Improve naming. Unload.
* v0.6.11
* v0.1.20
* v0.1.21
* v0.1.24
* v0.6.12
* v0.1.25
* v0.1.22
* v0.6.13
* Fix issues when plugin is builtin
* Add missing files
* Fix lint issues and watcher ignores
* Fixes following review
* v0.1.28
* v0.1.31
* v0.6.20
* Fix coer.js version
* Fix bug where plugins included via npm don't work
* Changes post merge
* Move plugins doc to dev guide, add note at top of README
* Update cypress version
* Add note about the reset --hard in rejig -d
* Fixes post merge
* Rename @ranch to @rancher and ad plugins
* Improve routes support, add package assets support
* Add uninstall hooks and pass interal opts
* Fix rejig script
* Minor fixes
* disable consent banner text overflow wrap
* add additional metadata to workload detail view
* minor css tweak
* Routing tweaks
- attempted to improve `addRoutes` typing, failed a lot
- improved typings in plugins.ts
- added "@pkg/*" entry and vue-shim (for importing components) to the pkg creator
- fixed some linting
- safely fail when Verdaccio isn't running
- fixed some typos
* Remove frontmatter-markdown-loader reference from nuxt-config
* Add annotation to stop upgrades for managed charts
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Use correct name for Network Attachment Definition Resource (#5579)
* Fix heading levels in Account and API keys page (#5563)
* SortableTable Performance: Optimise row mouse over/leave handlers (#5550)
Co-authored-by: Richard Cox <richard.cox@suse.com>
* Keep the check for fleet bundle ID
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Revert "Remove frontmatter-markdown-loader reference from nuxt-config"
This reverts commit 29ef6f2f7b.
* Exclude creators from dashboard build
* Revert "Exclude creators from dashboard build"
This reverts commit 8ede93ee7c.
* Ingore creators via tsconfig
- We're still susceptible with vue shims in multiple packages
- Need to determine why packages can't use shim from route
- Probably need to move `./vue-shim.d.ts` in to `./shell`. Needs testing with a pkg that imports a component
* warn on adding windows node to cutom cluster
* Display custom error message when login fails. (#5582)
* change rke2 upgradeStrategy to 1 concurrent controlplane and worker (#5580)
Co-authored-by: Alexandre Alves <aalves@AlexandresMBP2.lan>
* update endpoint display, fix ready status for daemonset type
* Fix Sortable Tble SSR (#5599)
* Sortable Table: Fix broken props to slot (#5600)
* expanded error check to include simple type
* fixed error check logic
* Fix async buton wobble with spinner (#5586)
* Add Pod restart count to workload detail page
* Can scale workload from workload detail page
* Enable source map in Nuxt/Webpack configuration for debugging (#5590)
* Move hardcoded values for roles in his own config file
* Allow to set default values also for Clusters and Namespaces
* Allow local cluster to be hidden
* Initialize always auth errors as empty list
* Add translation for snapshot group
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Enable s3 storage in rke2 cluster config
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Group by snapshot location
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* After rejig
* Prevent injection of malformed errors in the generic resource form component
* New Epinio pkg, and updates to dashboard (core, pkg process)
* Remove epinio-select
* correct @shell// reference
* Fix filtering issue
- store/index suffered a bad merge
* Add hide-local-cluster to the settings page
* Fix node table column sorting (#5611)
* Fix issue where private registry auth can be changed in view mode (#5617)
* Change title of support block on home page when custom link set (#5547)
* Tidying up
* Add feedback to the copy kubeconfig header button (#5628)
* Add feedback to the copy kubeconfig header button
* Minor improvement
* Get rke3 and k3s latest versions from settings (#5608)
* Revert previous change and avoid watching spoofed types
* Move the group-by string to computed prop
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Use computed instead of method, use Array.isArray instead of lodash isArray
* Ensure auth provider note appears consistently within form instead of new floating button section
- some auth providers already had this
- possibly better ux to add to top, but that area is already busy
* Fix bug where delay loading only worked on scroll with live columns (#5635)
* Inconsistencies with Cluster metrics across the UI (#5542)
* fix num pods being displayed on the homepage cluster list + set mem to gib for ram on homepage cluster list
* show total number of nodes rather that useful nodes in cluster dashboard view + remove reserved info for CPU and MEM in cluster table in homepage + fix pods usage in nodes list view + clear console logs
* cleanup
* correctly wire PodsUsage as a formatter + display N/A when usage is zero in nodes list values for CPU, MEM, PODS
* add loader icon to PodsUsage formatter
* add string translation to n/a in percentageBar formatter
* add delayedLoading to PodsUsage formatter
Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro-2.local>
Co-authored-by: Alexandre Alves <aalves@AlexandresMBP2.lan>
* Enable filtering by project name on project/namespaces paeg (#5636)
* Fixes post merge
* Rename core-store to dashboard-store
- contains TODO: RCs to resolve
* Tidy up/imporve nav hooks
* Fix some todo's, epinio routing product
* refactor detailtop
* Hide NeuVector product if `cattle-neuvector-system` does not exist
- As per request at https://github.com/rancher/dashboard/issues/5556#issuecomment-1098270110
- fixes#5556
- alternative to #5604
* Fix a number of areas where the sticky footer consumes large amounts of space
- Fixes#5643
- Mostly caused by non-standard ways the CruResource was being used
Effected Areas / Places to test
Note - Only need to visit pages, shouldn't need to make any changes to resources
- Cluster create/import screens (types, credentials (create new / existing), import, rke2)
- Auth providers (shortest form is keycloak saml)
- Create/Edit resource types - project, namespace, some random others
- Create/Edit resource types that have sub-types (secrets, workloads, OPA Gateway / Constraints)
Also Addressed
- Only show top border of the footer if CruResource is in edit view
- Fixed hide of errors
* Fix conditional showing of Group `Assign To` and `Refresh` buttons
Buttons should only show if
- There is a non-local auth provider enabled
- The user has the correct permissions for the relevent action
Fixes#4897
* Fix live expiry badge used on api keys table
* Hide local cluster in LandingPagePreference and api key (token) list
* HARVESTER: Fix Grafana metrics reload failure
* Address some TODOs
* minor fixes
* Rename i18n to l10n, make use of default folders
* Improve adding multiple routes
* Config map view inconsistent for binary data (#5602)
* Fix Config map view inconsistent for binary data
Co-authored-by: Alexandre Alves <aalves@AlexandresMBP2.lan>
Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro-2.local>
* check for existance of limit prop so that deleting a project doesnt silently fail (#5661)
Co-authored-by: Alexandre Alves <aalves@AlexandresMBP2.lan>
* Changes following review
* Fix CruResource `Edit as Yaml` feature
- ensure sticky buttons are stuck at bottom
- doesn't apply sticky buttons to direct `Edit as Yaml` feature outside of CruResource
* Fix navigation & ns filter bugs
- nav from explorer to epinio cluster (errors in console)
- nav from epinio cluster to explorer (ns filter broken)
* Remove epinio ns and config validation
- this was the process that will be replaced with Sean's work
- it's suffered bit rot and was broken after the merge
- not running in places
- it visually broke the labelled select (in multiple places)
* remaining todos
* fixes following validation change
* fix bad yarn lock file
Co-authored-by: Neil MacDougall <nmacdougall@suse.com>
Co-authored-by: Neil MacDougall <nwmac@users.noreply.github.com>
Co-authored-by: Neill Somerville <neill.somerville@gmail.com>
Co-authored-by: Phillip Rak <rak.phillip@gmail.com>
Co-authored-by: Nancy Butler <42977925+mantis-toboggan-md@users.noreply.github.com>
Co-authored-by: Shavin Fonseka <Shavindra@users.noreply.github.com>
Co-authored-by: Alexandre Alves <97888974+aalves08@users.noreply.github.com>
Co-authored-by: Alexandre Alves <aalves@AlexandresMBP2.lan>
Co-authored-by: Catherine Luse <catherine.luse@gmail.com>
Co-authored-by: Giuseppe Leo <giuseppe.leo@suse.com>
Co-authored-by: cnotv <giuseppe.leo@suse.de>
Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro-2.local>
Co-authored-by: n313893254 <n313893254@126.com>
# Conflicts:
# shell/assets/translations/en-us.yaml
# shell/components/CruResource.vue
# shell/components/ResourceDetail/Masthead.vue
# shell/components/ResourceList/Masthead.vue
# shell/components/SortableTable/index.vue
# shell/components/form/KeyValue.vue
# shell/components/form/LabeledInput.vue
# shell/components/form/NameNsDescription.vue
# shell/components/form/NotificationSettings.vue
# shell/components/formatter/PodsUsage.vue
# shell/components/nav/Header.vue
# shell/config/product/neuvector.js
# shell/detail/workload/index.vue
# shell/edit/provisioning.cattle.io.cluster/CustomCommand.vue
# shell/models/cluster.x-k8s.io.machinedeployment.js
# shell/models/harvester/kubevirt.io.virtualmachineinstance.js
# shell/models/workload.js
# shell/pages/c/_cluster/settings/banners.vue
# shell/plugins/steve/actions.js
# shell/store/type-map.js
* Doc
* v0.7.0
* v0.7.1
* v0.7.2
* Add creators
* v0.1.14
* v0.1.17
* Add Yarn link
* Tidy ups and typos
* Allow models to be loaded from plugins
* v0.1.15
* v0.1.18
* v0.6.6
* Improve readme, fix cyperss log msg
* v0.1.17
* v0.1.19
* v0.6.7
* v0.6.8
* Fix logo ref when in shell
* Fix lint issues
* Fix error in example
* Fix script to work on linux
* Add ability to revert moves without losing changes
* Fix bug with custom models in a plugin
* Fix build of UI packages
* Add dist-pkg to .eslintignore
* Pull out util from extend-router to prevent router being pulled in UI packages
* Update PLUGINS.md
* Remove duplicate dependency
* Reduce size of built UI packages
* Share codemirror. Other tidy ups
* Further improvements
* Tidy ups to support i18n in plugins
* Clen up add comments
* More clean-ups and comments added
* Rename from extension to plugin
* Missed file in rename
* v0.6.9
* TIdy ups following rename
* v0.1.20
* v0.1.21
* More refactor and tidy up
* v0.1.22
* v0.1.18
* v0.1.19
* v0.1.23
* v0.6.10
* Version Packages. Improve naming. Unload.
* v0.6.11
* v0.1.20
* v0.1.21
* v0.1.24
* v0.6.12
* v0.1.25
* v0.1.22
* v0.6.13
* Fix issues when plugin is builtin
* Add missing files
* Fix lint issues and watcher ignores
* Fixes following review
* v0.1.28
* v0.1.31
* v0.6.20
* Fix coer.js version
* Fix bug where plugins included via npm don't work
* Changes post merge
* Move plugins doc to dev guide, add note at top of README
* Update cypress version
* Add note about the reset --hard in rejig -d
* Fixes post merge
* Rename @ranch to @rancher and ad plugins
* Improve routes support, add package assets support
* Add uninstall hooks and pass interal opts
* Fix rejig script
* Minor fixes
* Routing tweaks
- attempted to improve `addRoutes` typing, failed a lot
- improved typings in plugins.ts
- added "@pkg/*" entry and vue-shim (for importing components) to the pkg creator
- fixed some linting
- safely fail when Verdaccio isn't running
- fixed some typos
* Remove frontmatter-markdown-loader reference from nuxt-config
* Revert "Remove frontmatter-markdown-loader reference from nuxt-config"
This reverts commit 29ef6f2f7b.
* Exclude creators from dashboard build
* Revert "Exclude creators from dashboard build"
This reverts commit 8ede93ee7c.
* Ingore creators via tsconfig
- We're still susceptible with vue shims in multiple packages
- Need to determine why packages can't use shim from route
- Probably need to move `./vue-shim.d.ts` in to `./shell`. Needs testing with a pkg that imports a component
* After rejig
Co-authored-by: Neil MacDougall <nmacdougall@suse.com>
Co-authored-by: Neil MacDougall <nwmac@users.noreply.github.com>