History log of /openbmc/webui-vue/src/views/Operations/ (Results 1 – 25 of 36)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
75a0fc1919-Nov-2025 Thu Nguyen <thu@os.amperecomputing.com>

SOL: change `scrollback` default to 10000

The Host boot log usually has more than 1000 lines. Apply the default
value 1000 for `scrollback` of xterm can cause missing the console
messages. Change th

SOL: change `scrollback` default to 10000

The Host boot log usually has more than 1000 lines. Apply the default
value 1000 for `scrollback` of xterm can cause missing the console
messages. Change the `scrollback` of SOL to 10000.

Tested:
1. Reboot the host while opening the SOL in WebUI
2. The maximum of the number of the scroll back messages in SOL should
be 10000.

Change-Id: I96b8e41bb18f2f9eaaf1b977dea1fb03370eda46
Signed-off-by: Thu Nguyen <thu@os.amperecomputing.com>

show more ...

d36ac8a803-Nov-2025 jason westover <jwestover@nvidia.com>

Migrate to Bootstrap 5 and remove Vue compat plugin

Complete migration from Bootstrap 4 (bootstrap-vue) to Bootstrap 5
(bootstrap-vue-next) and remove the @vue/compat plugin to finalize
the Vue 3 mi

Migrate to Bootstrap 5 and remove Vue compat plugin

Complete migration from Bootstrap 4 (bootstrap-vue) to Bootstrap 5
(bootstrap-vue-next) and remove the @vue/compat plugin to finalize
the Vue 3 migration.

Bundle size impact:
- Before (Bootstrap 4 + bootstrap-vue): 535 KiB gzipped
- After (Bootstrap 5 + bootstrap-vue-next): 511 KiB gzipped
- Reduction: 24 KiB (4.5% smaller)

Package updates:
- Update bootstrap 4.6.2 -> 5.3.8
- Update bootstrap-vue 2.23.1 -> bootstrap-vue-next 0.40.8
- Remove @vue/compat plugin
- Update vue 3.4.29 -> 3.5.24 and related packages
- Add mitt 3.0.1 for global event bus
- Add vue-demi 0.14.10 for library compatibility

Bootstrap 5 CSS updates:
- Replace directional classes: ml/mr/pl/pr -> ms/me/ps/pe
- Replace text-left/right -> text-start/end
- Replace sr-only -> visually-hidden / visually-hidden-focusable
- Update media breakpoint xs -> sm (Bootstrap 5 removed xs)
- Update color functions: gray("700") -> $gray-700
- Add form-switch border-radius for curved toggles
- Update alert, table, toast, form, and button styles

Bootstrap-Vue-Next API changes:
- Use createBootstrap() for plugin registration
- Update modal footer slots: #modal-footer -> #footer
- Fix form select events: @change -> @update:model-value
- Add v-model bindings to modals instead of manual show()/hide()
- Update toast system with custom plugin wrapping useToast()
- Register components and directives explicitly

Vue 3 specific updates:
- Replace $root.$emit with mitt event bus (eventBus.js)
- Update render function from h(App) to createApp(App)
- Add emits option to components
- Use h() instead of $createElement in mixins
- Add Vue 3 compile-time feature flags with documentation
- Update event listeners: $on/$off to eventBus methods
- Add beforeUnmount cleanup for event listeners

New components and significant additions:
- src/plugins/toast.js - Custom toast plugin wrapping useToast() for
Options API compatibility
- src/components/Global/ConfirmModal.vue - Global confirmation dialog
shim to replace Bootstrap 4's removed bvModal.msgBoxConfirm
- src/eventBus.js - mitt-based event bus with Vue 2-compatible API
- Navigation state preservation on page refresh implemented

Critical fixes:
- Add global API interceptor to strip Vue reactivity from payloads
- Preserve binary data (File, Blob, FormData) in API requests
- Fix Generate CSR modal v-model binding for proper open/close
- Remove debug logging and fix jest configuration
- Fix responsive text visibility in AppHeader
- Update BVTableSelectableMixin for proper row selection
- Fix BVToastMixin VNode rendering for Vue 3

Vue 3 modal fixes (lazy-loaded components):
- Add v-model support to network modals (ModalIpv4, ModalIpv6, ModalDns,
ModalHostname, ModalMacAddress, ModalDefaultGateway) by adding
modelValue prop, watcher on modelValue that triggers show(), and
update:modelValue emit in resetForm
- Remove lazy loading from TableIpv4, TableIpv6, TableDns to ensure
modal component refs are available when v-model triggers
- Fix modal title accessibility by adding title prop to modals
(ModalAddDestination, ModalUser, ModalAddRoleGroup, etc.)

i18n fixes (computed properties):
- Fix computed properties using i18n translations in ModalAddRoleGroup,
ModalUser, and ModalUploadCertificate
- Move useI18n() call from data() to setup() and return i18n object
- Use i18n.t() instead of $t in computed properties and templates
- Prevents "this.$t is not a function" and "_ctx.$t is not a function"
errors in Vue 3

Toast notification fixes:
- Fix toast progress bar visibility by setting progressProps to
undefined (documented way to opt-out) instead of false
- Change modelValue prop to interval for auto-dismiss timing
- Remove temporary CSS display:none hack from _toasts.scss

Network settings fixes:
- Fix checkbox @change event sending Vue reactive proxy object instead
of boolean by casting with !! operator in changeDomainNameState and
related methods in NetworkGlobalSettings.vue
- Ensures API receives plain boolean values in PATCH requests

Navigation fixes:
- Fix nav-link styling for navigation items without children by
replacing b-nav-item with router-link in AppNavigation.vue
- Prevents blue font color from .nav-link CSS class

Configuration updates:
- Remove vue-compat webpack configuration
- Add Vue 3 feature flags (__VUE_OPTIONS_API__, etc.)
- Add .cursor to .gitignore

Accessibility improvements:
- Add autocomplete attributes to password and credential inputs
- Add modal title props for screen reader support

Build completes successfully and UI behavior matches pre-migration.

Extracted features (to be submitted in follow-up PRs):
The following features were removed from this migration PR to keep it
focused on the Bootstrap 5 upgrade. They will be submitted separately:
1. UnresponsiveModal - Server connectivity watchdog with auto-retry
2. Auth token persistence - sessionStorage support for X-Auth-Token
3. Hardware store error handling - try/catch, dynamic discovery
4. Login page connecting indicator - Backend polling with spinner
5. Test updates - Jest setup and snapshot updates for
Bootstrap-Vue-Next
6. Documentation updates - Vue 3 and Vue I18n v9+ API documentation
7. Enhanced ConfirmModal - Feature-rich confirmation dialog with
custom actions

Change-Id: Ib76a58f324b3c926cf536e6e4626e4271639de38
Signed-off-by: Jason Westover <jwestover@nvidia.com>

show more ...


/openbmc/webui-vue/.gitignore
/openbmc/webui-vue/package-lock.json
/openbmc/webui-vue/package.json
/openbmc/webui-vue/public/index.html
/openbmc/webui-vue/src/App.vue
/openbmc/webui-vue/src/assets/styles/_obmc-custom.scss
/openbmc/webui-vue/src/assets/styles/bmc/custom/_alert.scss
/openbmc/webui-vue/src/assets/styles/bmc/custom/_badge.scss
/openbmc/webui-vue/src/assets/styles/bmc/custom/_base.scss
/openbmc/webui-vue/src/assets/styles/bmc/custom/_bootstrap-grid.scss
/openbmc/webui-vue/src/assets/styles/bmc/custom/_buttons.scss
/openbmc/webui-vue/src/assets/styles/bmc/custom/_dropdown.scss
/openbmc/webui-vue/src/assets/styles/bmc/custom/_forms.scss
/openbmc/webui-vue/src/assets/styles/bmc/custom/_modal.scss
/openbmc/webui-vue/src/assets/styles/bmc/custom/_pagination.scss
/openbmc/webui-vue/src/assets/styles/bmc/custom/_section-divider.scss
/openbmc/webui-vue/src/assets/styles/bmc/custom/_tables.scss
/openbmc/webui-vue/src/assets/styles/bmc/custom/_toasts.scss
/openbmc/webui-vue/src/assets/styles/bmc/helpers/_colors.scss
/openbmc/webui-vue/src/assets/styles/bmc/helpers/_functions.scss
/openbmc/webui-vue/src/assets/styles/bootstrap/_index.scss
/openbmc/webui-vue/src/components/AppHeader/AppHeader.vue
/openbmc/webui-vue/src/components/AppNavigation/AppNavigation.vue
/openbmc/webui-vue/src/components/Global/Alert.vue
/openbmc/webui-vue/src/components/Global/ButtonBackToTop.vue
/openbmc/webui-vue/src/components/Global/ConfirmModal.vue
/openbmc/webui-vue/src/components/Global/FormFile.vue
/openbmc/webui-vue/src/components/Global/InfoTooltip.vue
/openbmc/webui-vue/src/components/Global/InputPasswordToggle.vue
/openbmc/webui-vue/src/components/Global/LoadingBar.vue
/openbmc/webui-vue/src/components/Global/PageContainer.vue
/openbmc/webui-vue/src/components/Global/Search.vue
/openbmc/webui-vue/src/components/Global/StatusIcon.vue
/openbmc/webui-vue/src/components/Global/TableDateFilter.vue
/openbmc/webui-vue/src/components/Global/TableFilter.vue
/openbmc/webui-vue/src/components/Global/TableRowAction.vue
/openbmc/webui-vue/src/components/Global/TableToolbar.vue
/openbmc/webui-vue/src/components/Mixins/BVPaginationMixin.js
/openbmc/webui-vue/src/components/Mixins/BVTableSelectableMixin.js
/openbmc/webui-vue/src/components/Mixins/BVToastMixin.js
/openbmc/webui-vue/src/components/Mixins/LoadingBarMixin.js
/openbmc/webui-vue/src/components/Mixins/TableRowExpandMixin.js
/openbmc/webui-vue/src/components/Mixins/VuelidateMixin.js
/openbmc/webui-vue/src/eventBus.js
/openbmc/webui-vue/src/layouts/AppLayout.vue
/openbmc/webui-vue/src/layouts/LoginLayout.vue
/openbmc/webui-vue/src/locales/en-US.json
/openbmc/webui-vue/src/locales/ka-GE.json
/openbmc/webui-vue/src/locales/ru-RU.json
/openbmc/webui-vue/src/main.js
/openbmc/webui-vue/src/plugins/toast.js
/openbmc/webui-vue/src/store/index.js
/openbmc/webui-vue/src/store/modules/GlobalStore.js
/openbmc/webui-vue/src/store/modules/Operations/BootSettingsStore.js
/openbmc/webui-vue/src/store/modules/ResourceManagement/PowerControlStore.js
/openbmc/webui-vue/src/store/modules/SecurityAndAccess/LdapStore.js
/openbmc/webui-vue/src/store/modules/Settings/NetworkStore.js
/openbmc/webui-vue/src/utilities/NBDServer.js
/openbmc/webui-vue/src/views/ChangePassword/ChangePassword.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/Inventory.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryServiceIndicator.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableAssembly.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableBmcManager.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableChassis.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableDimmSlot.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableFans.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTablePowerSupplies.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableProcessors.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableSystem.vue
/openbmc/webui-vue/src/views/HardwareStatus/Sensors/Sensors.vue
/openbmc/webui-vue/src/views/Login/Login.vue
/openbmc/webui-vue/src/views/Logs/Dumps/Dumps.vue
/openbmc/webui-vue/src/views/Logs/Dumps/DumpsForm.vue
/openbmc/webui-vue/src/views/Logs/Dumps/DumpsModalConfirmation.vue
/openbmc/webui-vue/src/views/Logs/EventLogs/EventLogs.vue
/openbmc/webui-vue/src/views/Logs/PostCodeLogs/PostCodeLogs.vue
FactoryReset/FactoryReset.vue
FactoryReset/FactoryResetModal.vue
Firmware/FirmwareCardsBios.vue
Firmware/FirmwareCardsBmc.vue
Firmware/FirmwareFormUpdate.vue
KeyClear/KeyClear.vue
Kvm/KvmConsole.vue
RebootBmc/RebootBmc.vue
SerialOverLan/SerialOverLanConsole.vue
ServerPowerOperations/BootSettings.vue
ServerPowerOperations/ServerPowerOperations.vue
VirtualMedia/ModalConfigureConnection.vue
VirtualMedia/VirtualMedia.vue
/openbmc/webui-vue/src/views/Overview/Overview.vue
/openbmc/webui-vue/src/views/Overview/OverviewCard.vue
/openbmc/webui-vue/src/views/Overview/OverviewDumps.vue
/openbmc/webui-vue/src/views/Overview/OverviewEvents.vue
/openbmc/webui-vue/src/views/Overview/OverviewFirmware.vue
/openbmc/webui-vue/src/views/Overview/OverviewInventory.vue
/openbmc/webui-vue/src/views/Overview/OverviewNetwork.vue
/openbmc/webui-vue/src/views/Overview/OverviewPower.vue
/openbmc/webui-vue/src/views/Overview/OverviewQuickLinks.vue
/openbmc/webui-vue/src/views/Overview/OverviewServer.vue
/openbmc/webui-vue/src/views/ProfileSettings/ProfileSettings.vue
/openbmc/webui-vue/src/views/ResourceManagement/Power.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Certificates/Certificates.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Certificates/ModalGenerateCsr.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Certificates/ModalUploadCertificate.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Ldap/Ldap.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Ldap/ModalAddRoleGroup.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Ldap/TableRoleGroups.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Policies/Policies.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Sessions/Sessions.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/ModalSettings.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/ModalUser.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/TableRoles.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/UserManagement.vue
/openbmc/webui-vue/src/views/Settings/DateTime/DateTime.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalDefaultGateway.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalDns.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalHostname.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalIpv4.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalIpv6.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalMacAddress.vue
/openbmc/webui-vue/src/views/Settings/Network/Network.vue
/openbmc/webui-vue/src/views/Settings/Network/NetworkGlobalSettings.vue
/openbmc/webui-vue/src/views/Settings/Network/NetworkInterfaceSettings.vue
/openbmc/webui-vue/src/views/Settings/Network/TableDns.vue
/openbmc/webui-vue/src/views/Settings/Network/TableIpv4.vue
/openbmc/webui-vue/src/views/Settings/Network/TableIpv6.vue
/openbmc/webui-vue/src/views/Settings/SnmpAlerts/ModalAddDestination.vue
/openbmc/webui-vue/src/views/Settings/SnmpAlerts/SnmpAlerts.vue
/openbmc/webui-vue/vue.config.js
c5d60f5231-Oct-2025 Hariharan Rangasamy <hariharanr@ami.com>

Fixed linter warning messages

Warnings:
src/components/AppHeader/AppHeader.vue
235:18 warning The "refresh" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

Fixed linter warning messages

Warnings:
src/components/AppHeader/AppHeader.vue
235:18 warning The "refresh" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/components/Global/FormFile.vue
11:23 warning The "input" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/components/Global/Search.vue
64:18 warning The "change-search" event has been triggered but not
declared on `emits` option vue/require-explicit-emits
68:18 warning The "clear-search" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/components/Global/TableDateFilter.vue
165:18 warning The "change" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/components/Global/TableFilter.vue
107:18 warning The "filter-change" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/components/Global/TableRowAction.vue
47:21 warning The "click-table-action" event has been triggered but
not declared on `emits` option vue/require-explicit-emits

src/components/Global/TableToolbar.vue
16:27 warning The "batch-action" event has been triggered but not
declared on `emits` option vue/require-explicit-emits
23:27 warning The "clear-selected" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/views/Logs/Dumps/DumpsModalConfirmation.vue
85:18 warning The "ok" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/views/Operations/FactoryReset/FactoryResetModal.vue
122:18 warning The "okConfirm" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/views/Operations/Firmware/FirmwareFormUpdate.vue
6:9 warning `<template>` require directive vue/no-lone-template

src/views/Operations/Firmware/FirmwareModalSwitchToRunning.vue
7:16 warning The "ok" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/views/Operations/Firmware/FirmwareModalUpdateFirmware.vue
7:16 warning The "ok" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/views/Operations/VirtualMedia/ModalConfigureConnection.vue
127:18 warning The "ok" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/views/SecurityAndAccess/Certificates/ModalUploadCertificate.vue
147:18 warning The "ok" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/views/SecurityAndAccess/Ldap/ModalAddRoleGroup.vue
147:18 warning The "ok" event has been triggered but not
declared on `emits` option vue/require-explicit-emits
163:18 warning The "hidden" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/views/SecurityAndAccess/UserManagement/ModalSettings.vue
200:18 warning The "ok" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/views/SecurityAndAccess/UserManagement/ModalUser.vue
370:18 warning The "ok" event has been triggered but not
declared on `emits` option vue/require-explicit-emits
386:18 warning The "hidden" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/views/Settings/DateTime/DateTime.vue
328:18 warning The "change" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/views/Settings/Network/ModalDefaultGateway.vue
103:18 warning The "ok" event has been triggered but not
declared on `emits` option vue/require-explicit-emits
114:18 warning The "hidden" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/views/Settings/Network/ModalDns.vue
81:18 warning The "ok" event has been triggered but not
declared on `emits` option vue/require-explicit-emits
92:18 warning The "hidden" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/views/Settings/Network/ModalHostname.vue
99:18 warning The "ok" event has been triggered but not
declared on `emits` option vue/require-explicit-emits
110:18 warning The "hidden" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/views/Settings/Network/ModalIpv4.vue
148:18 warning The "ok" event has been triggered but not
declared on `emits` option vue/require-explicit-emits
165:18 warning The "hidden" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/views/Settings/Network/ModalIpv6.vue
120:18 warning The "ok" event has been triggered but not
declared on `emits` option vue/require-explicit-emits
135:18 warning The "hidden" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/views/Settings/Network/ModalMacAddress.vue
98:18 warning The "ok" event has been triggered but not
declared on `emits` option vue/require-explicit-emits
109:18 warning The "hidden" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

src/views/Settings/SnmpAlerts/ModalAddDestination.vue
124:18 warning The "ok" event has been triggered but not
declared on `emits` option vue/require-explicit-emits
139:18 warning The "hidden" event has been triggered but not
declared on `emits` option vue/require-explicit-emits

Change-Id: I66fb82679cc12003ad435c5c73bb67c2d70b3658
Signed-off-by: Hariharan Rangasamy <hariharanr@ami.com>

show more ...


/openbmc/webui-vue/src/components/AppHeader/AppHeader.vue
/openbmc/webui-vue/src/components/Global/FormFile.vue
/openbmc/webui-vue/src/components/Global/Search.vue
/openbmc/webui-vue/src/components/Global/TableDateFilter.vue
/openbmc/webui-vue/src/components/Global/TableFilter.vue
/openbmc/webui-vue/src/components/Global/TableRowAction.vue
/openbmc/webui-vue/src/components/Global/TableToolbar.vue
/openbmc/webui-vue/src/views/Logs/Dumps/DumpsForm.vue
/openbmc/webui-vue/src/views/Logs/Dumps/DumpsModalConfirmation.vue
FactoryReset/FactoryResetModal.vue
Firmware/FirmwareFormUpdate.vue
Firmware/FirmwareModalSwitchToRunning.vue
Firmware/FirmwareModalUpdateFirmware.vue
VirtualMedia/ModalConfigureConnection.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Certificates/ModalUploadCertificate.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Ldap/ModalAddRoleGroup.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/ModalSettings.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/ModalUser.vue
/openbmc/webui-vue/src/views/Settings/DateTime/DateTime.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalDefaultGateway.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalDns.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalHostname.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalIpv4.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalIpv6.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalMacAddress.vue
/openbmc/webui-vue/src/views/Settings/SnmpAlerts/ModalAddDestination.vue
99fe228e20-Aug-2025 Aravinth S <aravinths@ami.com>

Add privilege check to power operation button

Disables power operation buttons for users with
"Read-only" privileges. This change ensures that only "Operator" and
administrative users can perform po

Add privilege check to power operation button

Disables power operation buttons for users with
"Read-only" privileges. This change ensures that only "Operator" and
administrative users can perform power operations, preventing
unauthorized actions and enhancing system security.

Change-Id: I515ede092cef3c82a110d9534d9f8d3d6afc3135
Signed-off-by: Aravinth S <aravinths@ami.com>

show more ...


/openbmc/webui-vue/CONTRIBUTING.md
/openbmc/webui-vue/OWNERS
/openbmc/webui-vue/docs/customization/build.md
/openbmc/webui-vue/docs/guide/components/buttons/index.md
/openbmc/webui-vue/docs/guide/components/file-upload/readme.md
/openbmc/webui-vue/docs/guide/components/page-title/index.md
/openbmc/webui-vue/docs/guide/components/table/index.md
/openbmc/webui-vue/docs/guide/components/toasts/index.md
/openbmc/webui-vue/docs/guide/guidelines/colors.md
/openbmc/webui-vue/docs/guide/guidelines/internationalization.md
/openbmc/webui-vue/docs/guide/guidelines/motion.md
/openbmc/webui-vue/docs/guide/unit-testing/readme.md
/openbmc/webui-vue/package-lock.json
/openbmc/webui-vue/package.json
/openbmc/webui-vue/src/components/Global/PageTitle.vue
/openbmc/webui-vue/src/env/locales/README.md
/openbmc/webui-vue/src/env/locales/nvidia/en-US.json
/openbmc/webui-vue/src/env/locales/nvidia/ka-GE.json
/openbmc/webui-vue/src/env/locales/nvidia/ru-RU.json
/openbmc/webui-vue/src/env/locales/nvidia/zh-CN.json
/openbmc/webui-vue/src/env/router/ibm.js
/openbmc/webui-vue/src/env/router/intel.js
/openbmc/webui-vue/src/i18n.js
/openbmc/webui-vue/src/layouts/LoginLayout.vue
/openbmc/webui-vue/src/locales/en-US.json
/openbmc/webui-vue/src/locales/ka-GE.json
/openbmc/webui-vue/src/locales/ru-RU.json
/openbmc/webui-vue/src/store/modules/GlobalStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/SensorsStore.js
/openbmc/webui-vue/src/utilities/objectUtils.js
/openbmc/webui-vue/src/views/ChangePassword/ChangePassword.vue
/openbmc/webui-vue/src/views/Login/Login.vue
/openbmc/webui-vue/src/views/Logs/Dumps/DumpsForm.vue
ServerPowerOperations/BootSettings.vue
ServerPowerOperations/ServerPowerOperations.vue
/openbmc/webui-vue/src/views/Overview/OverviewQuickLinks.vue
/openbmc/webui-vue/src/views/ProfileSettings/ProfileSettings.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/TableRoles.vue
/openbmc/webui-vue/tests/unit/i18n.locale-alias.spec.js
/openbmc/webui-vue/tests/unit/i18n.vendor.spec.js
/openbmc/webui-vue/vue.config.js
24b377db24-Jan-2025 suryav9724 <suryav@ami.com>

style: add Sass configuration for Vue 3

Configure sass in the vue.config.js file and remove the
import of the scss file from each page. The styles are
handled by the css loaderOptions in the config

style: add Sass configuration for Vue 3

Configure sass in the vue.config.js file and remove the
import of the scss file from each page. The styles are
handled by the css loaderOptions in the config file.
Every component and page has the appropriate style applied.
The appearance adjusts to the openBmc webui in Vue 2.

Change-Id: I3773c063646185b80b7bd61d05aa80a993cbd121
Signed-off-by: Surya Venkatesan <suryav@ami.com>

show more ...


/openbmc/webui-vue/src/App.vue
/openbmc/webui-vue/src/assets/styles/bmc/custom/_buttons.scss
/openbmc/webui-vue/src/assets/styles/bmc/custom/_dropdown.scss
/openbmc/webui-vue/src/assets/styles/bmc/custom/_tables.scss
/openbmc/webui-vue/src/components/AppHeader/AppHeader.vue
/openbmc/webui-vue/src/components/AppNavigation/AppNavigation.vue
/openbmc/webui-vue/src/components/AppNavigation/AppNavigationMixin.js
/openbmc/webui-vue/src/components/Global/ButtonBackToTop.vue
/openbmc/webui-vue/src/components/Global/FormFile.vue
/openbmc/webui-vue/src/components/Global/InfoTooltip.vue
/openbmc/webui-vue/src/components/Global/InputPasswordToggle.vue
/openbmc/webui-vue/src/components/Global/LoadingBar.vue
/openbmc/webui-vue/src/components/Global/PageContainer.vue
/openbmc/webui-vue/src/components/Global/PageSection.vue
/openbmc/webui-vue/src/components/Global/PageTitle.vue
/openbmc/webui-vue/src/components/Global/Search.vue
/openbmc/webui-vue/src/components/Global/StatusIcon.vue
/openbmc/webui-vue/src/components/Global/TableFilter.vue
/openbmc/webui-vue/src/components/Global/TableToolbar.vue
/openbmc/webui-vue/src/layouts/AppLayout.vue
/openbmc/webui-vue/src/layouts/LoginLayout.vue
/openbmc/webui-vue/src/locales/ru-RU.json
/openbmc/webui-vue/src/main.js
/openbmc/webui-vue/src/router/routes.js
/openbmc/webui-vue/src/views/ChangePassword/ChangePassword.vue
Firmware/FirmwareCardsBios.vue
Kvm/KvmConsole.vue
RebootBmc/RebootBmc.vue
SerialOverLan/SerialOverLanConsole.vue
/openbmc/webui-vue/src/views/Overview/OverviewCard.vue
/openbmc/webui-vue/src/views/Overview/OverviewEvents.vue
/openbmc/webui-vue/src/views/Overview/OverviewQuickLinks.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Policies/Policies.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/UserManagement.vue
/openbmc/webui-vue/tests/unit/Global/__snapshots__/InputPasswordToggle.spec.js.snap
/openbmc/webui-vue/vue.config.js
a5dbf55f13-Jan-2025 Huy Le Anh <hule@amperecomputing.com>

Boot settings: remove oneTimeBootEnabled check

The commit [1] added oneTimeBootEnabled as condition to display
he Boot settings menu. It is not reasonable as the option is disabled
by default [2] an

Boot settings: remove oneTimeBootEnabled check

The commit [1] added oneTimeBootEnabled as condition to display
he Boot settings menu. It is not reasonable as the option is disabled
by default [2] and users can configure for a selected boot option to
be applied once or permanent.
This commit removes the check so that the menu is displayed when the
boot source option is supported.

Tested:
1. Log in to BMC Web and go to the server-power-operations page
2. The boot settings options are shown.

[1]: https://github.com/openbmc/webui-vue/commit/918526f20c16a05c261a56814657942a707323dd

[2]: https://github.com/openbmc/openbmc/blob/f8b0a12a3781e1f771630cad1244016b1ed6f8cd/meta-phosphor/recipes-phosphor/settings/phosphor-settings-manager/boot_type.override.yml#L19

Change-Id: I1efd2ae0c201744076e3fb00229c81847e940687
Signed-off-by: Huy Le Anh <hule@amperecomputing.com>

show more ...

85b2d31512-Nov-2024 Shane Lin <hslin@nvidia.com>

Rename host firmware to bios firmware

Problem:
- Host firmware naming was inconsistent with actual functionality

Changes:
- Rename hostFirmware to biosFirmware in store
- Update component names and

Rename host firmware to bios firmware

Problem:
- Host firmware naming was inconsistent with actual functionality

Changes:
- Rename hostFirmware to biosFirmware in store
- Update component names and references
- Modify i18n translation keys

Tested:
- Verified store mutations/actions
- Confirmed component rendering
- Checked i18n translations
- npx eslint without error related to 'host'

Change-Id: Ib97e4682f649d4a52f65e69df50422d84f23e916
Signed-off-by: Shane Lin <hslin@nvidia.com>

show more ...

b449867216-Nov-2024 HuyLe <hule@amperecomputing.com>

Fix the KVM terminal screen not displaying

During the upgrade to Vue 3 [1], the initialization of the selector,
including the definitions of height, display type, background, overflow,
etc., was ign

Fix the KVM terminal screen not displaying

During the upgrade to Vue 3 [1], the initialization of the selector,
including the definitions of height, display type, background, overflow,
etc., was ignored, resulting in the KVM screen not displaying the
terminal interface. This commit helps to import these properties for the
KVM from the _kvm.scss file to fix bug [2].

Tested:
1. Go to the OBMC web page.
2. Go to the KVM page and check that it works normally
3. By minifying and zooming in on the web browser, the KVM screen
adjusts automatically.
4. Switch between different pages.
5. Return to the KVM page and check that it works normally.

[1]. https://github.com/openbmc/webui-vue/blob/master/src/App.vue#L38
[2]. Bug: https://github.com/openbmc/webui-vue/issues/128

Change-Id: I1842c914e27dd5c68fe20f49999712b68c1e93a5
Signed-off-by: Huy Le Anh <hule@amperecomputing.com>

show more ...

918526f219-Sep-2024 Shubhi Garg <shgarg@nvidia.com>

Fix power operations as per DMTF redfish spec

[Problem Description]:

1) Power Operations page uses "Orderly" and "Immediate" strings
for "Graceful reboot/shutdown" and "Force reboot/shutdown".
Thes

Fix power operations as per DMTF redfish spec

[Problem Description]:

1) Power Operations page uses "Orderly" and "Immediate" strings
for "Graceful reboot/shutdown" and "Force reboot/shutdown".
These names do not align according to redfish spec and causes
user confusion.

2) For boot settings, if "BootSourceOverrideEnabled" flag is false,
WebUI allows to modify boot options.

[Changes]:

1) Changed reboot/shutdown naming convention as per DMTF redfish spec
to view correct names on WebUI.

2) Added info-tooltip to give detailed information on Reboot/Shutdown
options.
Information is referenced from:
https://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/ResetType

3) Added "oneTimeBootEnabled" condition check to render BootSettings if
condition is true. "oneTimeBootEnabled" checks BootSourceOverrideEnabled
flag, if true then BootSettings will be able to modify boot options.

[Testing]:
1) Load WebUI with the changes and go to Power operations page.
2) Check reboot shutdown names have changes to Graceful
reboot/shutdown" and "Force reboot/shutdown".
3) Check if BootSettings template renders as expected.

Change-Id: I5a86e05ee03167ebb93ffd381af3a47c277990fd
Signed-off-by: Shubhi Garg <shgarg@nvidia.com>

show more ...

69be824a23-Sep-2024 Surya Venkatesan <suryav@ami.com>

Invalid feedback if condition change

For required, invalid format, minlength, maxlength, date, pattern
validation if condition change in the few components

Change-Id: Id8eebc140301e48dde833a604ca92

Invalid feedback if condition change

For required, invalid format, minlength, maxlength, date, pattern
validation if condition change in the few components

Change-Id: Id8eebc140301e48dde833a604ca92426ebf77c9c
Signed-off-by: Surya Venkatesan <suryav@ami.com>

show more ...

1a814b9f23-Sep-2024 Surya Venkatesan <suryav@ami.com>

LDAP and server power operation page fix

In LDAP loading declare outside the form, form validation condition
change, server power operation page validation added and i18n method
changed in the event

LDAP and server power operation page fix

In LDAP loading declare outside the form, form validation condition
change, server power operation page validation added and i18n method
changed in the event log store.

Change-Id: I903b4dec7da1a5a2cc8441c65693c57201405d70
Signed-off-by: Surya Venkatesan <suryav@ami.com>

show more ...

f1ccca3f23-Sep-2024 Surya Venkatesan <suryav@ami.com>

Factory reset modal popup and validation issue

In vue3 i18n is not return the object value from the locale, so
unable to do the for loop in Setting list. Remove the for loop and
implement the separa

Factory reset modal popup and validation issue

In vue3 i18n is not return the object value from the locale, so
unable to do the for loop in Setting list. Remove the for loop and
implement the separate list for reset bios and reset to default.
And implement the useVuelidate in the factory reset page.

Change-Id: I10833742475b90f7c5349a5b995ff04e93c306de
Signed-off-by: Surya Venkatesan <suryav@ami.com>

show more ...

00355b6512-Sep-2024 Surya Venkatesan <suryav@ami.com>

Firmware page vuelidate and form file error fix

While add a file in the form file vuelidate error occurs and global
component form file not return a file, by emit the $event in form file
fix the iss

Firmware page vuelidate and form file error fix

While add a file in the form file vuelidate error occurs and global
component form file not return a file, by emit the $event in form file
fix the issue.

Change-Id: Icbeddc7a3faa262f12e85268206ae70950f37905
Signed-off-by: Surya Venkatesan <suryav@ami.com>

show more ...

de23ea2311-Jul-2024 Surya V <suryav@ami.com>

Vuelidate, I18n, and filter are upgraded to vue3

While navigating to the pages i18n, vuelidate, and filters errors
occurred. i18n, and vuelidate code changes in each page adapted to
vue3. Filter glo

Vuelidate, I18n, and filter are upgraded to vue3

While navigating to the pages i18n, vuelidate, and filters errors
occurred. i18n, and vuelidate code changes in each page adapted to
vue3. Filter global function for date and time format implemented
in the main.js file and those files which as called the filter
functions.

Change-Id: If1a2ee22d47750faef1c35ef2c263299067d9a20
Signed-off-by: Surya Venkatesan <suryav@ami.com>

show more ...


/openbmc/webui-vue/package-lock.json
/openbmc/webui-vue/package.json
/openbmc/webui-vue/src/components/AppHeader/AppHeader.vue
/openbmc/webui-vue/src/components/AppNavigation/AppNavigation.vue
/openbmc/webui-vue/src/components/AppNavigation/AppNavigationMixin.js
/openbmc/webui-vue/src/components/Global/ButtonBackToTop.vue
/openbmc/webui-vue/src/components/Global/FormFile.vue
/openbmc/webui-vue/src/components/Global/InfoTooltip.vue
/openbmc/webui-vue/src/components/Global/InputPasswordToggle.vue
/openbmc/webui-vue/src/components/Global/LoadingBar.vue
/openbmc/webui-vue/src/components/Global/Search.vue
/openbmc/webui-vue/src/components/Global/TableCellCount.vue
/openbmc/webui-vue/src/components/Global/TableDateFilter.vue
/openbmc/webui-vue/src/components/Global/TableFilter.vue
/openbmc/webui-vue/src/components/Global/TableRowAction.vue
/openbmc/webui-vue/src/components/Global/TableToolbar.vue
/openbmc/webui-vue/src/components/Global/TableToolbarExport.vue
/openbmc/webui-vue/src/components/Mixins/BVPaginationMixin.js
/openbmc/webui-vue/src/components/Mixins/BVToastMixin.js
/openbmc/webui-vue/src/components/Mixins/LocalTimezoneLabelMixin.js
/openbmc/webui-vue/src/components/Mixins/TableRowExpandMixin.js
/openbmc/webui-vue/src/env/components/AppNavigation/ibm.js
/openbmc/webui-vue/src/env/components/AppNavigation/intel.js
/openbmc/webui-vue/src/i18n.js
/openbmc/webui-vue/src/layouts/AppLayout.vue
/openbmc/webui-vue/src/main.js
/openbmc/webui-vue/src/router/index.js
/openbmc/webui-vue/src/router/routes.js
/openbmc/webui-vue/src/store/modules/GlobalStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/AssemblyStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/BmcStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/ChassisStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/MemoryStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/ProcessorStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/ServerLedStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/SystemStore.js
/openbmc/webui-vue/src/store/modules/Logs/DumpsStore.js
/openbmc/webui-vue/src/store/modules/Logs/EventLogStore.js
/openbmc/webui-vue/src/store/modules/Logs/PostCodeLogsStore.js
/openbmc/webui-vue/src/store/modules/Operations/BootSettingsStore.js
/openbmc/webui-vue/src/store/modules/Operations/ControlStore.js
/openbmc/webui-vue/src/store/modules/Operations/FactoryResetStore.js
/openbmc/webui-vue/src/store/modules/Operations/FirmwareStore.js
/openbmc/webui-vue/src/store/modules/Operations/KeyClearStore.js
/openbmc/webui-vue/src/store/modules/Operations/VirtualMediaStore.js
/openbmc/webui-vue/src/store/modules/ResourceManagement/PowerControlStore.js
/openbmc/webui-vue/src/store/modules/SecurityAndAccess/CertificatesStore.js
/openbmc/webui-vue/src/store/modules/SecurityAndAccess/LdapStore.js
/openbmc/webui-vue/src/store/modules/SecurityAndAccess/PoliciesStore.js
/openbmc/webui-vue/src/store/modules/SecurityAndAccess/SessionsStore.js
/openbmc/webui-vue/src/store/modules/SecurityAndAccess/UserManagementStore.js
/openbmc/webui-vue/src/store/modules/Settings/DateTimeStore.js
/openbmc/webui-vue/src/store/modules/Settings/NetworkStore.js
/openbmc/webui-vue/src/store/modules/Settings/PowerPolicyStore.js
/openbmc/webui-vue/src/store/modules/Settings/SnmpAlertsStore.js
/openbmc/webui-vue/src/views/ChangePassword/ChangePassword.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/Inventory.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryServiceIndicator.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableAssembly.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableBmcManager.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableChassis.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableDimmSlot.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableFans.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTablePowerSupplies.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableProcessors.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableSystem.vue
/openbmc/webui-vue/src/views/HardwareStatus/Sensors/Sensors.vue
/openbmc/webui-vue/src/views/Login/Login.vue
/openbmc/webui-vue/src/views/Logs/Dumps/Dumps.vue
/openbmc/webui-vue/src/views/Logs/Dumps/DumpsForm.vue
/openbmc/webui-vue/src/views/Logs/Dumps/DumpsModalConfirmation.vue
/openbmc/webui-vue/src/views/Logs/EventLogs/EventLogs.vue
/openbmc/webui-vue/src/views/Logs/PostCodeLogs/PostCodeLogs.vue
FactoryReset/FactoryReset.vue
FactoryReset/FactoryResetModal.vue
Firmware/Firmware.vue
Firmware/FirmwareAlertServerPower.vue
Firmware/FirmwareCardsBmc.vue
Firmware/FirmwareCardsHost.vue
Firmware/FirmwareFormUpdate.vue
Firmware/FirmwareModalSwitchToRunning.vue
Firmware/FirmwareModalUpdateFirmware.vue
KeyClear/KeyClear.vue
Kvm/KvmConsole.vue
RebootBmc/RebootBmc.vue
SerialOverLan/SerialOverLan.vue
SerialOverLan/SerialOverLanConsole.vue
ServerPowerOperations/BootSettings.vue
ServerPowerOperations/ServerPowerOperations.vue
VirtualMedia/ModalConfigureConnection.vue
VirtualMedia/VirtualMedia.vue
/openbmc/webui-vue/src/views/Overview/Overview.vue
/openbmc/webui-vue/src/views/Overview/OverviewCard.vue
/openbmc/webui-vue/src/views/Overview/OverviewDumps.vue
/openbmc/webui-vue/src/views/Overview/OverviewEvents.vue
/openbmc/webui-vue/src/views/Overview/OverviewFirmware.vue
/openbmc/webui-vue/src/views/Overview/OverviewInventory.vue
/openbmc/webui-vue/src/views/Overview/OverviewNetwork.vue
/openbmc/webui-vue/src/views/Overview/OverviewPower.vue
/openbmc/webui-vue/src/views/Overview/OverviewQuickLinks.vue
/openbmc/webui-vue/src/views/Overview/OverviewServer.vue
/openbmc/webui-vue/src/views/PageNotFound/PageNotFound.vue
/openbmc/webui-vue/src/views/ProfileSettings/ProfileSettings.vue
/openbmc/webui-vue/src/views/ResourceManagement/Power.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Certificates/Certificates.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Certificates/ModalGenerateCsr.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Certificates/ModalUploadCertificate.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Ldap/Ldap.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Ldap/ModalAddRoleGroup.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Ldap/TableRoleGroups.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Policies/Policies.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Sessions/Sessions.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/ModalSettings.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/ModalUser.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/TableRoles.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/UserManagement.vue
/openbmc/webui-vue/src/views/Settings/DateTime/DateTime.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalDns.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalHostname.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalIpv4.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalMacAddress.vue
/openbmc/webui-vue/src/views/Settings/Network/Network.vue
/openbmc/webui-vue/src/views/Settings/Network/NetworkGlobalSettings.vue
/openbmc/webui-vue/src/views/Settings/Network/NetworkInterfaceSettings.vue
/openbmc/webui-vue/src/views/Settings/Network/TableDns.vue
/openbmc/webui-vue/src/views/Settings/Network/TableIpv4.vue
/openbmc/webui-vue/src/views/Settings/PowerRestorePolicy/PowerRestorePolicy.vue
/openbmc/webui-vue/src/views/Settings/SnmpAlerts/ModalAddDestination.vue
/openbmc/webui-vue/src/views/Settings/SnmpAlerts/SnmpAlerts.vue
7d6b44cb23-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 ...


/openbmc/webui-vue/.eslintrc.js
/openbmc/webui-vue/babel.config.js
/openbmc/webui-vue/package-lock.json
/openbmc/webui-vue/package.json
/openbmc/webui-vue/postcss.config.js
/openbmc/webui-vue/src/App.vue
/openbmc/webui-vue/src/assets/styles/bmc/custom/_buttons.scss
/openbmc/webui-vue/src/assets/styles/bmc/custom/_dropdown.scss
/openbmc/webui-vue/src/assets/styles/bmc/custom/_tables.scss
/openbmc/webui-vue/src/components/AppHeader/AppHeader.vue
/openbmc/webui-vue/src/components/AppNavigation/AppNavigation.vue
/openbmc/webui-vue/src/components/Global/ButtonBackToTop.vue
/openbmc/webui-vue/src/components/Global/FormFile.vue
/openbmc/webui-vue/src/components/Global/InfoTooltip.vue
/openbmc/webui-vue/src/components/Global/InputPasswordToggle.vue
/openbmc/webui-vue/src/components/Global/LoadingBar.vue
/openbmc/webui-vue/src/components/Global/PageContainer.vue
/openbmc/webui-vue/src/components/Global/PageSection.vue
/openbmc/webui-vue/src/components/Global/PageTitle.vue
/openbmc/webui-vue/src/components/Global/Search.vue
/openbmc/webui-vue/src/components/Global/StatusIcon.vue
/openbmc/webui-vue/src/components/Global/TableDateFilter.vue
/openbmc/webui-vue/src/components/Global/TableFilter.vue
/openbmc/webui-vue/src/components/Global/TableToolbar.vue
/openbmc/webui-vue/src/components/Mixins/BVPaginationMixin.js
/openbmc/webui-vue/src/components/Mixins/TableRowExpandMixin.js
/openbmc/webui-vue/src/env/assets/styles/_default.scss
/openbmc/webui-vue/src/env/store/ibm.js
/openbmc/webui-vue/src/eventBus.js
/openbmc/webui-vue/src/i18n.js
/openbmc/webui-vue/src/layouts/AppLayout.vue
/openbmc/webui-vue/src/layouts/LoginLayout.vue
/openbmc/webui-vue/src/main.js
/openbmc/webui-vue/src/router/routes.js
/openbmc/webui-vue/src/store/api.js
/openbmc/webui-vue/src/store/index.js
/openbmc/webui-vue/src/store/modules/Logs/EventLogStore.js
/openbmc/webui-vue/src/store/modules/Operations/FirmwareStore.js
/openbmc/webui-vue/src/store/modules/Settings/PowerPolicyStore.js
/openbmc/webui-vue/src/views/ChangePassword/ChangePassword.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableBmcManager.vue
/openbmc/webui-vue/src/views/Login/Login.vue
/openbmc/webui-vue/src/views/Logs/Dumps/Dumps.vue
/openbmc/webui-vue/src/views/Logs/Dumps/DumpsForm.vue
/openbmc/webui-vue/src/views/Logs/Dumps/DumpsModalConfirmation.vue
/openbmc/webui-vue/src/views/Logs/EventLogs/EventLogs.vue
/openbmc/webui-vue/src/views/Logs/PostCodeLogs/PostCodeLogs.vue
FactoryReset/FactoryReset.vue
Firmware/FirmwareCardsHost.vue
Firmware/FirmwareFormUpdate.vue
Kvm/KvmConsole.vue
RebootBmc/RebootBmc.vue
SerialOverLan/SerialOverLanConsole.vue
ServerPowerOperations/ServerPowerOperations.vue
VirtualMedia/ModalConfigureConnection.vue
/openbmc/webui-vue/src/views/Overview/OverviewCard.vue
/openbmc/webui-vue/src/views/Overview/OverviewDumps.vue
/openbmc/webui-vue/src/views/Overview/OverviewEvents.vue
/openbmc/webui-vue/src/views/Overview/OverviewQuickLinks.vue
/openbmc/webui-vue/src/views/ProfileSettings/ProfileSettings.vue
/openbmc/webui-vue/src/views/ResourceManagement/Power.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Certificates/Certificates.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Certificates/CsrCountryCodes.js
/openbmc/webui-vue/src/views/SecurityAndAccess/Certificates/ModalGenerateCsr.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Certificates/ModalUploadCertificate.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Ldap/Ldap.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Ldap/ModalAddRoleGroup.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Policies/Policies.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/ModalSettings.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/ModalUser.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/UserManagement.vue
/openbmc/webui-vue/src/views/Settings/DateTime/DateTime.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalDns.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalHostname.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalIpv4.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalMacAddress.vue
/openbmc/webui-vue/src/views/Settings/PowerRestorePolicy/PowerRestorePolicy.vue
/openbmc/webui-vue/src/views/Settings/SnmpAlerts/ModalAddDestination.vue
/openbmc/webui-vue/tests/unit/AppHeader.spec.js
/openbmc/webui-vue/tests/unit/AppNavigation.spec.js
/openbmc/webui-vue/tests/unit/Global/InfoTooltip.spec.js
/openbmc/webui-vue/tests/unit/Global/InputPasswordToggle.spec.js
/openbmc/webui-vue/tests/unit/Global/LoadingBar.spec.js
/openbmc/webui-vue/tests/unit/Global/PageContainer.spec.js
/openbmc/webui-vue/tests/unit/Global/PageSection.spec.js
/openbmc/webui-vue/tests/unit/Global/PageTitle.spec.js
/openbmc/webui-vue/tests/unit/Global/Search.spec.js
/openbmc/webui-vue/tests/unit/Global/StatusIcon.spec.js
/openbmc/webui-vue/tests/unit/Global/TableCellCount.spec.js
/openbmc/webui-vue/tests/unit/Global/TableToolbar.spec.js
/openbmc/webui-vue/tests/unit/Global/__snapshots__/PageSection.spec.js.snap
/openbmc/webui-vue/vue.config.js
e2c716a928-Jul-2024 Leo Xu <yongquanx@nvidia.com>

Add support for MultipartHttpPushUri in fw push

According to the Redfish Firmware Update Whitepaper [1]
due to the vendor-specific details of this operation,
HttpPushUri has been deprecated in f

Add support for MultipartHttpPushUri in fw push

According to the Redfish Firmware Update Whitepaper [1]
due to the vendor-specific details of this operation,
HttpPushUri has been deprecated in favor of multipartHTTP push
updates.

Availability of update methods is determined from the UpdateService
response.

If MultipartHttpPushUri is found it will be preferred over HttpPushUri

Tested:
-Firmware update by performed via MultipartHttpPushUri

[1]: https://www.dmtf.org/sites/default/files/standards/documents/DSP2062_1.0.1.pdf

Change-Id: I184a889514d5f9f9598f35b2281404335bc0bc82
Signed-off-by: Leo Xu <yongquanx@nvidia.com>

show more ...

bc49e09111-Jun-2024 Nikhil Ashoka <a.nikhil@ibm.com>

Removed TFTP code update option

- Removed TFTP server firmware update ability in the UI.

Signed-off-by: Nikhil Ashoka <a.nikhil@ibm.com>
Change-Id: Icbeddc7a3faa262f12e85268206ae70850f37905


/openbmc/webui-vue/.env.intel
/openbmc/webui-vue/.gitattributes
/openbmc/webui-vue/CONTRIBUTING.md
/openbmc/webui-vue/package-lock.json
/openbmc/webui-vue/package.json
/openbmc/webui-vue/public/index.html
/openbmc/webui-vue/src/components/AppHeader/AppHeader.vue
/openbmc/webui-vue/src/components/Global/FormFile.vue
/openbmc/webui-vue/src/locales/en-US.json
/openbmc/webui-vue/src/locales/ru-RU.json
/openbmc/webui-vue/src/router/index.js
/openbmc/webui-vue/src/router/routes.js
/openbmc/webui-vue/src/store/api.js
/openbmc/webui-vue/src/store/index.js
/openbmc/webui-vue/src/store/modules/Authentication/AuthenticanStore.js
/openbmc/webui-vue/src/store/modules/GlobalStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/AssemblyStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/BmcStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/ChassisStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/MemoryStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/ProcessorStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/ServerLedStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/SystemStore.js
/openbmc/webui-vue/src/store/modules/Logs/DumpsStore.js
/openbmc/webui-vue/src/store/modules/Logs/EventLogStore.js
/openbmc/webui-vue/src/store/modules/Logs/PostCodeLogsStore.js
/openbmc/webui-vue/src/store/modules/Operations/BootSettingsStore.js
/openbmc/webui-vue/src/store/modules/Operations/ControlStore.js
/openbmc/webui-vue/src/store/modules/Operations/FactoryResetStore.js
/openbmc/webui-vue/src/store/modules/Operations/FirmwareStore.js
/openbmc/webui-vue/src/store/modules/Operations/KeyClearStore.js
/openbmc/webui-vue/src/store/modules/Operations/VirtualMediaStore.js
/openbmc/webui-vue/src/store/modules/SecurityAndAccess/CertificatesStore.js
/openbmc/webui-vue/src/store/modules/SecurityAndAccess/PoliciesStore.js
/openbmc/webui-vue/src/store/modules/Settings/DateTimeStore.js
/openbmc/webui-vue/src/store/modules/Settings/NetworkStore.js
/openbmc/webui-vue/src/store/modules/Settings/PowerPolicyStore.js
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryServiceIndicator.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableAssembly.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableBmcManager.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableChassis.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableDimmSlot.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableProcessors.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableSystem.vue
/openbmc/webui-vue/src/views/Login/Login.vue
/openbmc/webui-vue/src/views/Logs/Dumps/Dumps.vue
Firmware/FirmwareFormUpdate.vue
/openbmc/webui-vue/src/views/Overview/OverviewInventory.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Certificates/ModalGenerateCsr.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Ldap/ModalAddRoleGroup.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/ModalUser.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalDefaultGateway.vue
/openbmc/webui-vue/src/views/Settings/Network/ModalIpv6.vue
/openbmc/webui-vue/src/views/Settings/Network/Network.vue
/openbmc/webui-vue/src/views/Settings/Network/NetworkGlobalSettings.vue
/openbmc/webui-vue/src/views/Settings/Network/TableIpv6.vue
/openbmc/webui-vue/src/views/Settings/PowerRestorePolicy/PowerRestorePolicy.vue
/openbmc/webui-vue/tests/unit/__snapshots__/AppHeader.spec.js.snap
/openbmc/webui-vue/vue.config.js
d1ef18e606-Apr-2024 Paul Fertser <fercerpav@gmail.com>

Focus default action in modal windows

Users of common WIMP GUIs (as opposed to interfaces primarily meant for
touch input) expect dialog boxes to have keyboard focus set on the
button for default ac

Focus default action in modal windows

Users of common WIMP GUIs (as opposed to interfaces primarily meant for
touch input) expect dialog boxes to have keyboard focus set on the
button for default action so that it can be executed by a single key
press. Usually that is chosen to proceed with the operation but in cases
where that leads to data loss the UI designers often pre-select Cancel
as a precaution.

This patch adds suitable property to all invocations of msgBoxConfirm()
method of `this.$bvModal` BootstrapVue object. For regular actions the
confirmation button is selected and can be activated by Enter or Space
bar. For actions deemed dangerous Cancel is focused instead so it takes
two key presses (first being Tab to shift the focus) to prooceed.

This also improves accessibility following the Web Content Accessibility
Guidelines (WCAG) published by W3C.

Tested: manually verified that modals are consistently shown with the
specified button focused, Enter and Space bar key presses produce the
same effect as left pointer button click: when Cancel is focused it just
closes the window, when OK is focused it sends the corresponding request
to the Redfish endpoint.

Change-Id: I66bfd02e48e08dc18994b11bbdd5d6b3ea27047f
Signed-off-by: Paul Fertser <fercerpav@gmail.com>

show more ...

8132399c27-Feb-2024 Ed Tanous <ed@tanous.net>

Reformat files with new linter

All changes should be whitespace, and were done using npm run-script
lint.

Change-Id: I943c6b435c5c872841af5affc1e89910468b5ca6
Signed-off-by: Ed Tanous <ed@tanous.ne

Reformat files with new linter

All changes should be whitespace, and were done using npm run-script
lint.

Change-Id: I943c6b435c5c872841af5affc1e89910468b5ca6
Signed-off-by: Ed Tanous <ed@tanous.net>

show more ...


/openbmc/webui-vue/.eslintrc.js
/openbmc/webui-vue/OWNERS
/openbmc/webui-vue/format-code.sh
/openbmc/webui-vue/package-lock.json
/openbmc/webui-vue/package.json
/openbmc/webui-vue/run-ci
/openbmc/webui-vue/src/components/AppHeader/AppHeader.vue
/openbmc/webui-vue/src/components/Global/FormFile.vue
/openbmc/webui-vue/src/components/Global/PageTitle.vue
/openbmc/webui-vue/src/components/Global/TableFilter.vue
/openbmc/webui-vue/src/components/Mixins/BVToastMixin.js
/openbmc/webui-vue/src/components/Mixins/TableFilterMixin.js
/openbmc/webui-vue/src/i18n.js
/openbmc/webui-vue/src/locales/en-US.json
/openbmc/webui-vue/src/locales/ru-RU.json
/openbmc/webui-vue/src/store/modules/GlobalStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/AssemblyStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/BmcStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/ChassisStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/FanStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/MemoryStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/PowerSupplyStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/ProcessorStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/SensorsStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/ServerLedStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/SystemStore.js
/openbmc/webui-vue/src/store/modules/Logs/DumpsStore.js
/openbmc/webui-vue/src/store/modules/Logs/EventLogStore.js
/openbmc/webui-vue/src/store/modules/Logs/PostCodeLogsStore.js
/openbmc/webui-vue/src/store/modules/Operations/BootSettingsStore.js
/openbmc/webui-vue/src/store/modules/Operations/ControlStore.js
/openbmc/webui-vue/src/store/modules/Operations/FactoryResetStore.js
/openbmc/webui-vue/src/store/modules/Operations/FirmwareStore.js
/openbmc/webui-vue/src/store/modules/Operations/KeyClearStore.js
/openbmc/webui-vue/src/store/modules/Operations/VirtualMediaStore.js
/openbmc/webui-vue/src/store/modules/ResourceManagement/PowerControlStore.js
/openbmc/webui-vue/src/store/modules/SecurityAndAccess/CertificatesStore.js
/openbmc/webui-vue/src/store/modules/SecurityAndAccess/LdapStore.js
/openbmc/webui-vue/src/store/modules/SecurityAndAccess/SessionsStore.js
/openbmc/webui-vue/src/store/modules/SecurityAndAccess/UserManagementStore.js
/openbmc/webui-vue/src/store/modules/Settings/NetworkStore.js
/openbmc/webui-vue/src/store/modules/Settings/PowerPolicyStore.js
/openbmc/webui-vue/src/store/modules/Settings/SnmpAlertsStore.js
/openbmc/webui-vue/src/utilities/NBDServer.js
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/Inventory.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableDimmSlot.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableFans.vue
/openbmc/webui-vue/src/views/Login/Login.vue
/openbmc/webui-vue/src/views/Logs/Dumps/Dumps.vue
/openbmc/webui-vue/src/views/Logs/Dumps/DumpsForm.vue
/openbmc/webui-vue/src/views/Logs/EventLogs/EventLogs.vue
/openbmc/webui-vue/src/views/Logs/PostCodeLogs/PostCodeLogs.vue
FactoryReset/FactoryResetModal.vue
Firmware/FirmwareCardsBmc.vue
Kvm/KvmConsole.vue
SerialOverLan/SerialOverLanConsole.vue
ServerPowerOperations/BootSettings.vue
ServerPowerOperations/ServerPowerOperations.vue
VirtualMedia/VirtualMedia.vue
/openbmc/webui-vue/src/views/Overview/OverviewEvents.vue
/openbmc/webui-vue/src/views/Overview/OverviewNetwork.vue
/openbmc/webui-vue/src/views/ProfileSettings/ProfileSettings.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Certificates/Certificates.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Ldap/Ldap.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Ldap/TableRoleGroups.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Sessions/Sessions.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/ModalUser.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/TableRoles.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/UserManagement.vue
/openbmc/webui-vue/src/views/Settings/DateTime/DateTime.vue
/openbmc/webui-vue/src/views/Settings/Network/Network.vue
/openbmc/webui-vue/src/views/Settings/Network/TableIpv4.vue
/openbmc/webui-vue/src/views/Settings/PowerRestorePolicy/PowerRestorePolicy.vue
/openbmc/webui-vue/src/views/Settings/SnmpAlerts/SnmpAlerts.vue
/openbmc/webui-vue/tests/unit/AppHeader.spec.js
/openbmc/webui-vue/tests/unit/__snapshots__/AppNavigation.spec.js.snap
/openbmc/webui-vue/vue.config.js
c3cf361027-Jan-2022 Kenneth Fullbright <kennyneedsmilky@gmail.com>

Update Firmware page interactions when system is powered on

- if isServerPowerOffRequired is true & !isServerOff is true
a warning will be shown that the server must be powered off
to switch images

Update Firmware page interactions when system is powered on

- if isServerPowerOffRequired is true & !isServerOff is true
a warning will be shown that the server must be powered off
to switch images and update the firmware.

- When system power is on,
the switch to "running button" is disabled.

Signed-off-by: Kenneth Fullbright <kennyneedsmilky@gmail.com>
Change-Id: I65a24984c36f6ae39d715f4fa66e9884d031cb20

show more ...

37b22a1312-May-2023 Nikhil Ashoka <a.nikhil@ibm.com>

WebSocket tries to connect with 'console/default' instead of 'console0'

- This patchset will try to connect to the WebSocket with the path 'console/default'.
- Until now, we were connecting to 'con

WebSocket tries to connect with 'console/default' instead of 'console0'

- This patchset will try to connect to the WebSocket with the path 'console/default'.
- Until now, we were connecting to 'console0'.

Signed-off-by: Nikhil Ashoka <a.nikhil@ibm.com>
Change-Id: I6136e09458284b76f5b03f89be247db3e3ff82fd

show more ...

fb6c6de914-Jun-2023 Konstantin <sulwirld@gmail.com>

Fix kvm session and add event bus

Bug description:
Before this commit KVM window wasn't being closed
after logging out

Test: Step1. Launch webui on browser and see KVM page on /#/operations

Fix kvm session and add event bus

Bug description:
Before this commit KVM window wasn't being closed
after logging out

Test: Step1. Launch webui on browser and see KVM page on /#/operations/kvm.
Step2. Open additional window using 'Open in new tab'.
Step3. Navigate to another page. For example, /#/operations/key-clear.
Step4. Logout. Window is still open.

Change-Id: Ife79ebca41eb4d588c0b8f4fae06135420eda155
Signed-off-by: Konstantin Maskov <sulwirld@gmail.com>

show more ...


/openbmc/webui-vue/.env.intel
/openbmc/webui-vue/CONTRIBUTING.md
/openbmc/webui-vue/OWNERS
/openbmc/webui-vue/README.md
/openbmc/webui-vue/src/components/AppHeader/AppHeader.vue
/openbmc/webui-vue/src/components/AppNavigation/AppNavigation.vue
/openbmc/webui-vue/src/components/AppNavigation/AppNavigationMixin.js
/openbmc/webui-vue/src/components/Mixins/TableFilterMixin.js
/openbmc/webui-vue/src/env/components/AppNavigation/intel.js
/openbmc/webui-vue/src/env/router/intel.js
/openbmc/webui-vue/src/eventBus.js
/openbmc/webui-vue/src/locales/en-US.json
/openbmc/webui-vue/src/locales/ru-RU.json
/openbmc/webui-vue/src/main.js
/openbmc/webui-vue/src/router/index.js
/openbmc/webui-vue/src/router/routes.js
/openbmc/webui-vue/src/store/api.js
/openbmc/webui-vue/src/store/modules/Authentication/AuthenticanStore.js
/openbmc/webui-vue/src/store/modules/GlobalStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/FanStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/MemoryStore.js
/openbmc/webui-vue/src/store/modules/Logs/EventLogStore.js
/openbmc/webui-vue/src/store/modules/Operations/FirmwareStore.js
/openbmc/webui-vue/src/store/modules/ResourceManagement/PowerControlStore.js
/openbmc/webui-vue/src/store/modules/SecurityAndAccess/PoliciesStore.js
/openbmc/webui-vue/src/store/modules/SecurityAndAccess/SessionsStore.js
/openbmc/webui-vue/src/store/modules/SecurityAndAccess/UserManagementStore.js
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableDimmSlot.vue
/openbmc/webui-vue/src/views/Login/Login.vue
/openbmc/webui-vue/src/views/Logs/EventLogs/EventLogs.vue
Kvm/KvmConsole.vue
/openbmc/webui-vue/src/views/Overview/OverviewEvents.vue
/openbmc/webui-vue/src/views/ProfileSettings/ProfileSettings.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Ldap/Ldap.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Policies/Policies.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Sessions/Sessions.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/UserManagement.vue
/openbmc/webui-vue/tests/unit/AppNavigation.spec.js
e78d10b703-Mar-2023 kirankumarb07 <kirankumarb@ami.com>

After the session expired redirect to login page

If the user switches pages between the KVM and Virtual Media pages
after the session has expired, it won't redirect to the login page.

So I have add

After the session expired redirect to login page

If the user switches pages between the KVM and Virtual Media pages
after the session has expired, it won't redirect to the login page.

So I have added the system redfish API call in the create method to
check the session timeout status. If the session is expired, the API
call will get a 401 status, and WEBUI will be redirected to the
login page.

Change-Id: I069768ee0cef41afb4e6aa770bb8bec6565a16bd
Signed-off-by: Kirankumarb07 Ballapalli <kirankumarb@ami.com>

show more ...

b63e9d9a07-Feb-2023 kirankumarb07 <kirankumarb@ami.com>

SOL console opened in a new tab shows an error

When the SOL console is opened in a new window, the status of the SOL
connection is displayed as "disconnected." And the error message is
displaying, "

SOL console opened in a new tab shows an error

When the SOL console is opened in a new window, the status of the SOL
connection is displayed as "disconnected." And the error message is
displaying, "The system must be powered on to connect."

I have added this patch to get the systems API call to get the server
status when SOL is opened in a new window.

Change-Id: I971947fea0980605d400d46bb1e18b2d20164602
Signed-off-by: Kirankumar Ballapalli <kirankumarb@ami.com>

show more ...

b89eed2712-Jan-2023 kirankumarb07 <kirankumarb@ami.com>

Closed KVM new window after WEBUI logged out

Description:

When KVM is opened in new window, after WEB UI is logged out,
opened KVM window is not getting closed. It remains opened and
accessible.

R

Closed KVM new window after WEBUI logged out

Description:

When KVM is opened in new window, after WEB UI is logged out,
opened KVM window is not getting closed. It remains opened and
accessible.

Root Cause:

There is not handle to close the KVM new window after the WEB UI
logged out.

Fix:

Added the KVM window opened information in store, and checked that
information to close the window.

Tested:

Step 1: Login to WEB UI
Step 2: Navigate to Operations -> KVM
Step 3: Open KVM in new window
Step 4: Click Logout in WEB UI

Result:

After successful log out, KVM new window is closed as expected.

Change-Id: Iab8e54d3088a08fb0ae9b581b2647fc0ab5460bd
Signed-off-by: Kirankumar Ballapalli <kirankumarb@ami.com>

show more ...


/openbmc/webui-vue/OWNERS
/openbmc/webui-vue/src/components/Global/PageTitle.vue
/openbmc/webui-vue/src/locales/en-US.json
/openbmc/webui-vue/src/locales/ru-RU.json
/openbmc/webui-vue/src/store/index.js
/openbmc/webui-vue/src/store/modules/Authentication/AuthenticanStore.js
/openbmc/webui-vue/src/store/modules/HardwareStatus/SensorsStore.js
/openbmc/webui-vue/src/store/modules/SecurityAndAccess/UserManagementStore.js
/openbmc/webui-vue/src/store/modules/Settings/NetworkStore.js
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableChassis.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableDimmSlot.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableFans.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTablePowerSupplies.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableProcessors.vue
/openbmc/webui-vue/src/views/HardwareStatus/Inventory/InventoryTableSystem.vue
/openbmc/webui-vue/src/views/HardwareStatus/Sensors/Sensors.vue
Kvm/KvmConsole.vue
/openbmc/webui-vue/src/views/Overview/Overview.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Certificates/Certificates.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/Certificates/ModalGenerateCsr.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/ModalUser.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/TableRoles.vue
/openbmc/webui-vue/src/views/SecurityAndAccess/UserManagement/UserManagement.vue
/openbmc/webui-vue/src/views/Settings/Network/TableIpv4.vue

12