| commit | 60d5c9ebefbd0d6d96343d1fac360577407f6889 | [log] [tgz] |
|---|---|---|
| author | Jason Westover <jwestover@nvidia.com> | Fri Dec 12 12:49:24 2025 -0600 |
| committer | Sivaprabu Ganesan <sivaprabug@ami.com> | Thu Dec 18 13:12:22 2025 +0000 |
| tree | 0ff43204a30bc5a219aefc745e0a54fad82582f7 | |
| parent | 741a3f30c5b42b6183e9ca2936954e30bb998107 [diff] |
Fix Vue 3 @change event bindings for forms
In Bootstrap-Vue-Next (Vue 3), the @change event on BFormCheckbox
and BFormRadio passes an Event object instead of the boolean value.
This caused malformed API payloads like:
{"LocationIndicatorActive":
{"isTrusted": true, "_vts": 1765562875420}}
instead of:
{"LocationIndicatorActive": true}
Replace @change with @update:model-value which correctly passes the
new value in Vue 3/Bootstrap-Vue-Next.
Components fixed:
- OverviewInventory.vue: LED toggle
- InventoryServiceIndicator.vue: LED toggle
- InventoryTableSystem.vue: LED toggle
- NetworkGlobalSettings.vue: 6 network switches
- Policies.vue: 4 policy switches (SSH, IPMI, vTPM, RTAD)
- TableIpv4.vue: DHCP switch
- TableIpv6.vue: DHCPv6 switch
- Ldap.vue: LDAP auth and service type controls
Also adds safety net in api.js:
- Request interceptor to strip Vue reactivity from payloads
- Detects and warns about Event objects in API payloads
- Improved response error handling with null safety
- Conditional debug logging (development mode only)
Change-Id: I180d9143087284e28c5066a6ffc141cd7f7038c6
Signed-off-by: jason westover <jwestover@nvidia.com>
webui-vue is a web-based user interface for the OpenBMC firmware stack built on Vue.js.
phosphor-webui was built on AngularJS and AngularJS went End of Life on June 30, 2021. This repository is its replacement.
A few, mostly minor, features remain for feature parity. See GitHub Issues label:phosphor-webui-feature-parity for the complete list.
As mentioned, this application is built using Vue.js, a modern open-source Model-View-ViewModel JavaScript framework supported by an active community and strong documentation. It has been architected to allow organizations to easily update the theme to support their brand. This rewrite takes advantage of front-end development best practices and does not suffer from some of the anti-patterns that exist in phosphor-webui today.
It is recommended you switch from phosphor-webui if you haven't already.
webui-vue has the following additional features:
The documentation for coding standards and components is located in the docs directory. It is created using the VuePress static site generator. Information about how to write documentation can be found on the VuePress website.