Commit Graph

30 Commits

Author SHA1 Message Date
momesgin 6058587b10
Improve performance in apps/charts page by optimizing LazyImage component (#14906)
* 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>
2025-08-08 16:57:56 -07:00
Cody Jackson 54874e0262 Add the card components necessary for the new detail page
This change will not affect any rendering currently in master
2025-06-12 17:14:56 -07:00
Phillip Rak 594570d37a Fix unit tests
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2025-03-21 15:23:59 -07:00
Giuseppe Leo 28c8b69135
Create page for SCC registration for Rancher Prime (#13591)
* Add initial configuration and data for the registration in Prime extension

* Fix routing issues

* Correct import for components and i18n hook

* Correct markup to match requirements

* Add deregistration; Set shared patch logic with temporary timeout for emulation

* Disable buttons if inputs are empty

* Enable i18n by removing comment for import types; corrected strings

* Set i18n dynamic values and HTML

* Adapt layout paddings

* Correct i18n deregistration

* Add error case

* Update UX to avoid shifting content

* Correct navigation issue; Replaced hardcoded label with i18n key

* Update UI to use file downloader and uploader

* Add IconMessage component

* Replace text notification with banners

* Create view state for registration process; Add comments and bind computed properties

* Correct line break

* Prevent input to be edited while registering

* Add tests for all the input cases combination

* Set useI18n mock globally

* Correct inputs definitions; add store mock; add card stub

* Mute all the Vue console warnings

* Mock initial status of the component

* Define status for input checks; Add CTA tests

* Add de-registering status

* Increase readibility of the markup

* Revert de-registration status

* Update tests format; Correct cases; Add button effects cases

* Create StatusBadge

* Replace Banner with StatusBadge; update i18n

* Bump eslint-plugin-vue to accept new linting rules for 3.5

* Update TODO notes

* Restore Prime env var condition

* Prevent StatusBadge color change inherited from parent components (e.g. card)

* Add StatusBadge story

* Fix linting issues

* Disable new rule for existing code
2025-03-14 15:52:57 +01:00
cnotv 7d16a8ed1f Mute all the Vue console warnings 2025-03-06 17:32:40 +01:00
Alexandre Alves 84c234383a
Fix textual descriptions for cluster appearance in multiple places (#13416)
* Fix textual descriptions for cluster appearance in multiple places

* address pr comments

* address pr comments
2025-02-24 09:00:54 +00:00
momesgin 93a2294b12
Fix rendering raw html content (#11764)
* fix rendering string instead of html

* fix rendering raw html on tooltips by global configuration

* lint

---------

Co-authored-by: Mo Mesgin <mmesgin@Mos-M2-MacBook-Pro.local>
2024-08-30 12:47:45 -07:00
Phillip Rak 557aad2f52 Update jest setup
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2024-08-22 16:09:54 -07:00
cnotv ff08d80e0e Lint: Manually fixed issues related to vueApp variable added by the script 2024-08-22 16:07:03 -07:00
cnotv a96a114cfd Unit test: Update Jest setup
Remove jest i18n extra

Replace v-tooltip with floating-vue in jest setup

Correct jest configuration on i18n t directive
2024-08-22 16:07:03 -07:00
Evgeniya Vashkevich e055771611
[INT] Moved directives into a separate folder (#10981)
* [INT] Moved directives into a separate folder
2024-05-09 13:29:44 -07:00
Evgeniya Vashkevich 6bd67ba3ff
[INT] Refactored some of the plugins - 3 (#10946)
[INT] Refactored some of the plugins - 3
2024-05-08 15:10:27 -07:00
Cody Jackson e4aac445fc Adding e2e tests for pages which use middleware to redirect
Also removed a couple files that were obviously broken and didn't redirect to anything.
2024-05-06 07:45:05 -07:00
Cody Jackson 5312b64817 Removing the i18n middleware from the application 2024-05-02 15:10:03 -07:00
Phillip Rak 6940a250b8 Remove uneeded directives
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2024-04-25 08:18:55 -07:00
Phillip Rak 2fa472afbd Refactor i18n plugin to use install function
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2024-04-25 08:18:55 -07:00
Phillip Rak 15de4b701c Remove `vue-js-modal` dependency
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2024-03-12 15:37:44 -07:00
LiuYan c9bb8a19f0
fix(ContainerLogs): fix display error if log is truncated (#10197)
* fix(ContainerLogs): fix display error if log is truncated

* test(ContainerLogs): adding test cases for truncated log processing

* add test for empty string

---------

Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro.local>
2024-01-02 17:37:29 +00:00
Alexandre Alves 3b953ac6ab
remove components don't need to exist on shell/initialize/index.js (#10129)
* remove vue-client-only component and package

* gremove vue-no-ssr package and component

* remove unused fetch.server

---------

Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro.local>
2023-12-15 10:08:52 +00:00
Nancy b424489c60
update rke2 node drain default value (#9273)
* update rke2 node drain default value

* set machine pool drain before delete to true by default; do not set upgrade strategy drain before delete to true
2023-09-27 16:31:24 -07:00
Bastian Hofmann dcb8b2542b Fix tests
Signed-off-by: Bastian Hofmann <mail@bastianhofmann.de>
2023-08-24 13:58:29 +01:00
Neil MacDougall 02e6e84f41
When execing into a container, try linux and windows commands when we can't determine if the node is windows (#9241)
* When execing into a container, try linux and windows commands when we can't determine if the node is windows

* Fix lint

* Lint: Remove trailing white space

* Use error message rather than last error

* extra failover, caching last working os against pod, errors, tests

* add __mocks__ folders to eslint ignore patterns

* standard user test fix

* removed unnecessary try/catch logic

* Revert "removed unnecessary try/catch logic"

This reverts commit c263131927.

---------

Co-authored-by: Sean <sean.mchugh@suse.com>
2023-07-28 21:28:03 -04:00
momesgin 7e77ec7d5e
remove error icon when the condition is Ready and Waiting (#9309)
* remove error icon when the condition is Ready and Waiting

* fixed importing clean tooltip directive

* change testing component name

* use replace instead of replaceAll to fix node version support issue on GH's unit test action

* added more unit tests

* import replaceAll polyfill and clean tooltip directive to jest setup

---------

Co-authored-by: Mo Mesgin <mmesgin@Mos-M2-MacBook-Pro.local>
2023-07-14 13:09:04 -07:00
Giuseppe Leo 11f7cfe9f1
[RKE2] Cluster unable to provision after switching back to Back to Form from Edit as YAML (#9264)
* Cleanup code

* Prevent to JSON clone agent config if undefined

* Add clean-tooltip directive to jest configuration

* Remove agent cleanup from the before hook

* Split fetch methods in parts

* Move condition to parent

* Add tests for agent configuration

* SKip test till resolved extra setup

* Updated code comment based on changes
2023-07-13 19:52:49 +02: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
Neil MacDougall 3db04f1e9a
Changes to support custom node driver UI extensions (#8735)
* Changes to support custom node driver UI extensions

* Fix bad merge

* Fix merge

* Fix bad merge

* Revert changes that are more impactful for now

* Add mock for $plugin

* Fix lint issue

* Address PR feedback

* Fix bad rebase

* Fix merge issues

* Removed unused import

* Fix merge issue

* Add back in missing validation for roles

* Fix unit test
2023-05-25 15:37:16 +01:00
Giuseppe Leo cd947db43b
Add unit tests for Namespace filtering in resources (#7465)
* Prevent errors if no resource is retrieved for NamespaceFilter; Add data-testid attributes for testing purposes and ocmments for readability

* Add NamespaceFilter component tests

* Add Workload loading unit tests

* Restore mokcs globally after each test

* Add issue number to TODO comment
2022-11-18 00:05:42 +01:00
Giuseppe Leo 6422c1de77
Fix issue with inputs not updating data inside multiple forms while typing (#6070)
* Use plugins globally in Jest configuration over single statements

* Add checkspell terms

* Add test id and cleanup code for Upgrading

* Create test for Upgrading input actually updating values while typing

* Handle missing terminationGracePeriodSeconds value in the spec qhile hanfling Upgrade value

* Replace Deployment Upgrading input event strategy with blur

* Remove container input listener, over single input emitters, to avoid issues in case of blur

* Extend tests to all the inputs to update the data in the Upgrading tab

* Removed deprecated components

* Correct vue-select import in Vue within Jest setup

* Add vue-select type

* Create form tests sample for input with custom select component

* Create unit tests for all the forms

* Create test for Upgrading without verify value

* Changed from component to query selectors in select input unit tests

* Prevent multiple events due inconsistent event input pattern in network update for Harvester

* Correct TS complain about Vue logic

* Add issue number to TODO
2022-06-20 11:25:49 +02:00
Richard Cox 25acc1f8eb Plugins: Rejig files to new shell locations (#5623)
* 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>
2022-05-10 10:04:02 +01:00
Giuseppe Leo 5800b2147b
Enable unit tests with Jest for Typescript components (#5779)
* Correct configuration to use correct vue/jest version based on jest version

* Add cusom command test for cluster configuration

* Add Banner tests

* Add global configuration for Jest

* Mock globally i18n getters for unit tests

* Add global directives for unit tests in Jest

* Add unit test case for tooltip directive and copy clipboard plugin

* Add test for custom command generated from tokens

* Add unit tests for CruResource component
2022-05-02 17:46:09 +02:00