#
7d6b44cb |
| 23-Mar-2024 |
Ed Tanous <ed@tanous.net> |
Upgrade vue3 and all dependencies
Start the process of porting everything to Vue 3. I have most things working. npm run-scripts build works, npm install works. prettier passes. Styles load, logi
Upgrade vue3 and all dependencies
Start the process of porting everything to Vue 3. I have most things working. npm run-scripts build works, npm install works. prettier passes. Styles load, login works, webui loads.
This was primarily done using the linked documents below. It makes the following design decisions: 1. Vue is put in compat 2 mode, which allows most of the components to work as-is. 2. Bootstrap v4 is used along with bootstrap-vue to keep our components working. 3. Minor changes are made to load the latest versions of vue-router, vuex, and vue-i18n.
I suspect this patchset is good enough to start with, and we can clean up the broken things one patchset at a time. The things that need to happen are:
1. Get remaining features working again. This primiarily is vue-i18n for mixins, and non vue components. This likely needs to be done by not pulling in i18n into the non vue components, then using the .Vue files to do the internationalization in the component context, NOT in the mixin context. Alternatively, we could drop MixIns alltogether. 2. Get custom styles working again. Previously, we used some path hackery in vue.config.js to optionally pre-load styles. This stops working now that we're required to @import our modules. Likely we need some rearangement of the paths such that custom styles are a complete replacement (possibly importing the original) rather than additive with overrides. That's a guess, but I don't really see anyone else doing customization the way we've defined it here. 3. Bootstrap 5 no longer requires ANY custom vue modules, as it has dropped the jquery dependency. We won't be able to pull in bootstrap 5 all at once, so pull in bootstrap 5 under an alias, like "bootstrap5" that we can optionally import 5 or 4. 4. One at a time, start porting components over to Vue3 syntax and bootstrap 5. This will be the bulk of the manual work and review.
The only thing I think left is getting unit tests passing, which I commented out the pre-commit hook to make this PR.
Tested: Code builds. Needs better testing.
[1] https://router.vuejs.org/guide/migration/ [2] https://vue-i18n.intlify.dev/guide/migration/vue3 [3] https://vuelidate-next.netlify.app/migration_guide.html#package-name-and-imports
Change-Id: I5bb3187b9efbf2e4ff63e57994bc528756e2a981 Signed-off-by: Ed Tanous <ed@tanous.net>
show more ...
|
#
a0c29207 |
| 27-Feb-2024 |
Ed Tanous <ed@tanous.net> |
Upgrade eslint
Being on an old version of eslint is causing conflicts in our builds, but because we pull in the @vue/cli-plugin-eslint plugin, we can't upgrade. @vue is non trial to update, because
Upgrade eslint
Being on an old version of eslint is causing conflicts in our builds, but because we pull in the @vue/cli-plugin-eslint plugin, we can't upgrade. @vue is non trial to update, because webui-vue is on vue 4.X, while the latest is 5.X.
This commit upgrades eslint to the latest version, and at the same time disables @vue/cli-plugin-eslint. Not having a cli plugin doesn't seem like it would be any amount of impact, as devs can just run eslint manually.
At the same time, to fix a minor issue, update all of @vue to the latest minor revision 4.5.12->4.5.19
Change-Id: I3ca9c7bbee5bdf9046d86e25e7130808b9caaa2b Signed-off-by: Ed Tanous <ed@tanous.net>
show more ...
|
#
edb8a774 |
| 29-Oct-2020 |
Sukanya Pandey <sukapan1@in.ibm.com> |
Resolve custom-event-name-casing lint warnings
Signed-off-by: Sukanya Pandey <sukapan1@in.ibm.com> Change-Id: I9eea4eac3b8cacc216fc9ad1011e51622622e75f
|
#
f833c7e3 |
| 27-Oct-2020 |
Derick Montague <derick.montague@ibm.com> |
Update failing unit tests
- Add babel plugin to handle Jest import of SVG. Without plugin the test fails with a require.context() is undefined - Update snapshot tests that have changed - Removed glo
Update failing unit tests
- Add babel plugin to handle Jest import of SVG. Without plugin the test fails with a require.context() is undefined - Update snapshot tests that have changed - Removed globals from .eslintrc.js that were needed prior to migrating from Mocha and Chai to Jest
Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: Ibd01d2e629b5ecb47d072e277e4e9b5ae5c5f001
show more ...
|
#
1837503c |
| 30-Oct-2020 |
Sukanya Pandey <sukapan1@in.ibm.com> |
Resolve vue/no-unused-vars lint warnings
Signed-off-by: Sukanya Pandey <sukapan1@in.ibm.com> Change-Id: I25ca1e451af5e793cd864d484572049e04cf09bc
|
#
efd7c884 |
| 30-Oct-2020 |
Yoshie Muranaka <yoshiemuranaka@gmail.com> |
Fix eslint no-prototype-builtins errors
Made updates to TableToolbar, ModalAddRoleGroup, and ModalUploadCertificate components.
https://eslint.org/docs/rules/no-prototype-builtins
Signed-off-by: Y
Fix eslint no-prototype-builtins errors
Made updates to TableToolbar, ModalAddRoleGroup, and ModalUploadCertificate components.
https://eslint.org/docs/rules/no-prototype-builtins
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: Ic143cd244b288bc089a9416699d7c3d4349a500c
show more ...
|
#
602e98aa |
| 21-Oct-2020 |
Derick Montague <derick.montague@ibm.com> |
Update linting packages to use latest
- 99% of changes were small syntax changes that were changed by the lint command. There were a couple of small manual changes to meet the property order pattern
Update linting packages to use latest
- 99% of changes were small syntax changes that were changed by the lint command. There were a couple of small manual changes to meet the property order patterns established as part of the vue:recommended guidelines.
There are rules that were set from errors to warnings and new stories are being opened to address those issues.
Testing: - Successfully ran npm run serve - Successfully ran npm run lint - Verified functionality works as expected, e.g. success and failure use cases - Resolved any JavaScript errors thrown to the console
Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: Ie082f31c73ccbe8a60afa8f88a9ef6dbf33d9fd2
show more ...
|
#
ad2ceb6d |
| 24-Apr-2020 |
Derick Montague <derick.montague@ibm.com> |
Use Jest as the test framework
- Remove mocha, chai, sinon and setup.js - Add snapshot test to ApplicationHeader spec and remove skip nav link test - Add an update snapshot test that can be run if a
Use Jest as the test framework
- Remove mocha, chai, sinon and setup.js - Add snapshot test to ApplicationHeader spec and remove skip nav link test - Add an update snapshot test that can be run if a page changes and the snapshot needs to be updated - Remove tight coupling of application structure and test in ApplicationHeader spec
We are changing to Jest for a few reasons: 1. Jest is the testing framework used by most Vue applications and has robust documentation 2. It requires less configuration and works out of the box 3. It includes the ability to perform snapshot testing of rendered UI, which is much easier to maintain than trying to test specific UI elements.
Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I7bca3613991ebae1fd464fa3a60f079d044ed7b4
show more ...
|
#
5ee04ef5 |
| 18-Mar-2020 |
Sukanya Pandey <sukapan1@in.ibm.com> |
Add mocha and chai test framework
- Mocha/Chai/Sinon test frameowrk because it has 100% feature parity with vue-loader. - Code for making 'expect' function accessible globally.
Signed-off-by: S
Add mocha and chai test framework
- Mocha/Chai/Sinon test frameowrk because it has 100% feature parity with vue-loader. - Code for making 'expect' function accessible globally.
Signed-off-by: Sukanya Pandey <sukapan1@in.ibm.com> Change-Id: Idf809cb08d8c1ef177ff92f0ee1be04ac74059a3
show more ...
|
#
09e45cd4 |
| 23-Jan-2020 |
Derick Montague <derick.montague@ibm.com> |
Change eslint rules to use vue recommended
Resubmitting after reverted–original commit here https://gerrit.openbmc-project.xyz/c/openbmc/webui-vue/+/28763/7
- Ran npm run lint - Resolved eslint iss
Change eslint rules to use vue recommended
Resubmitting after reverted–original commit here https://gerrit.openbmc-project.xyz/c/openbmc/webui-vue/+/28763/7
- Ran npm run lint - Resolved eslint issues
Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I2b8b9244acddd483d0a72f9a5d156a79de9869a0
show more ...
|
#
c4844b45 |
| 28-Jan-2020 |
Gunnar Mills <gmills@us.ibm.com> |
Revert "Change eslint rules to use vue recommended"
Merged accidentally. Although this one did have the proper +1s/+2s. The 2 underneath did not. The author will resubmit.
This reverts commit 5e7ac
Revert "Change eslint rules to use vue recommended"
Merged accidentally. Although this one did have the proper +1s/+2s. The 2 underneath did not. The author will resubmit.
This reverts commit 5e7ac49058e5dc37fd43ecf3c0d06f5dda14af5b.
Change-Id: Iceb1de3a170cc0b592b183545c792aa3eb87bfee Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
show more ...
|
#
5e7ac490 |
| 23-Jan-2020 |
Derick Montague <derick.montague@ibm.com> |
Change eslint rules to use vue recommended
- Ran npm run lint - Resolved eslint issues
Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: Icd433ca55321d8bceb941e2d13ebade72bd4981f
|
#
e2fd1567 |
| 20-Dec-2019 |
Derick Montague <derick.montague@ibm.com> |
Fix linting in script blocks in vue files
- Removed the .eslintrc and added the pretteri rules to the eslintrc file - Ran `npm run lint --fix`
Signed-off-by: Derick Montague <derick.montague@ibm.co
Fix linting in script blocks in vue files
- Removed the .eslintrc and added the pretteri rules to the eslintrc file - Ran `npm run lint --fix`
Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I4e36c1967ae9b4d839ef88f1d47ffa20ab4e4991
show more ...
|
#
fded0d11 |
| 11-Dec-2019 |
Derick Montague <derick.montague@ibm.com> |
Add singlequote override and fix files
Based on phosphor-webui and JavaScript common practices we are setting ESLint to required single quote for JS files and double quote for SCSS files. This commi
Add singlequote override and fix files
Based on phosphor-webui and JavaScript common practices we are setting ESLint to required single quote for JS files and double quote for SCSS files. This commit adds the ESLint override to the prettier rules and runs the npm lint script that fixes the files that violate the rule.
Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I50cba77b2d0797595ce94258029608efa8665005
show more ...
|
#
a2988f40 |
| 17-Jan-2020 |
Derick Montague <derick.montague@ibm.com> |
Create basic application using vue
- Create vue app - Add AppHeader and AppNavigation - Set up routes for server overview and local user management - Add themes and set to gray-10 theme - Add a
Create basic application using vue
- Create vue app - Add AppHeader and AppNavigation - Set up routes for server overview and local user management - Add themes and set to gray-10 theme - Add active class for current navigation - Add a prototype method named $http to vue prototype - The UI uses console logs in production to communicate to users - Add boostrap vue component library
Change-Id: Ib6618e6357ca01bdac6de4ed031a15c8552226f3 Signed-off-by: Derick Montague <derick.montague@ibm.com>
show more ...
|