summaryrefslogtreecommitdiff
path: root/src/components
AgeCommit message (Collapse)AuthorFilesLines
2020-07-02Resolve LoadingBar accessibility issueDerick Montague1-5/+6
- Add an aria-label to the b-progress-bar component to meet accessibility guidelines - Nest b-progess-bar component in b-progress component in order to add aria-label to the correct element Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I3b7d23026d4bcdb607fdbad24170e38116a7eb8a
2020-07-01Resolve hidden focus within closed navigationDerick Montague1-1/+2
When the primary navigation is closed a keyboard user can still tab into the menu. This can be confusing since the user can not visibly determine what element as focus. This occurs because we chose not to hide and show the menu. This simplifies the solution for users relying on assistive technology. This change will show a keyboard user the navigation when they tab into it. This removes any confusion of where the user's keyboard focus is without having to complicate the solution used for assistive technology users. Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I17fa9f257610c3c40844660b341ccc6af2ee3b4e
2020-06-26Add test hooks to event logs pageYoshie Muranaka1-0/+1
- Add data-test-id test hooks to simplify the xpath queries needed to set up automation testing - Reduce the possibility of breaking automation tests when/if pages are updated Adds test hooks to table checkboxes, batch action delete button, inline row delete button. Will add hooks to table filter dropdown separately, because the component needs refactoring. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I84fef897bbe29ea410a3b7d663828ddd7c91aa88
2020-06-26Update Sensors page to use table mixinsYoshie Muranaka1-0/+2
- Add number formatting to TableDataFormatter mixin - Use TableDataFormatter mixin to show different status icons for sensor status (OK, Warning, Critical) - Use TableSortMixin to sort by status (OK, Warning, Critical) Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I99899bbc19db3529f0fdfe34be30b09d41456b42
2020-06-26Fix Search component default prop validationYoshie Muranaka1-1/+1
Changed placeholder prop validation to use a regular function instead of an arrow function to fix undefined errors where 'this' is undefined. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I315542aae3d53a169767fda0407d8379d1b13027
2020-06-24Responsive Site HeaderSurenNeware2-9/+50
- Changed Header shortcut menu Icon position - Fixed Media devices responsive layout Signed-off-by: Suren Neware <sneware9@in.ibm.com> Change-Id: I817d8f11d9fb720bb9e37f4a136cb19305144228
2020-06-18Update TableDataFormatter filenameYoshie Muranaka1-2/+2
Changed TableDataFormatter to TableDataFormatterMixin to be consistent with other Mixin files. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: Iae6528deda3099cf730150164739ee2fb64bbfe3
2020-06-18Add BMC manager table to hardware status pageYoshie Muranaka1-0/+3
Add properties at /redfish/v1/Managers/bmc endpoint in a table with expandable row to view details. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: Ieb32a9b2a535ddd7d24edcb68761c51eace2e5a8
2020-06-18Add DIMM slot table to hardware status pageYoshie Muranaka1-1/+1
Add items at /redfish/v1/Systems/system/Memory endpoint to DIMM slot table. The table is sortable and has a row expansion to view details. The code is currently missing most properties needed to match the design. This table will need to be revisited when all properties are available. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I07cacf3403fe84431cb9fe0e4315069fc7baf27d
2020-06-17Profile settings pageSukanya Pandey1-49/+67
-To set the profile by setting password. -This commit adds a profile page which allows the user to change their password. In the future, the profile page will also contain user settings like language and timezone. The API called to change the user's password is '/redfish/v1/AccountService/Accounts/<userName>' Signed-off-by: Sukanya Pandey <sukapan1@in.ibm.com> Change-Id: Ie54a54beff8c85bc9ac5af21c35edc481b34cf44
2020-06-17Add power supplies table to hardware status pageYoshie Muranaka1-0/+11
Adds items at /redfish/v1/Chassis/chassis/Power endpoint in Power supplies table. Table is sortable and has a row expansion to view details. - Table sort mixin to reuse sort method for status values Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: Ib2953ad06be3fa25e9dbbbed34e37d09154431f5
2020-06-17Add Hardware status page and system tableYoshie Muranaka2-1/+26
Adds ability to see system information in table format with a row expansion details view. Modified tables styles to add table borders. Created global mixin for table data formatting: - Show '--' for undefined or empty string values - Map Redfish health status options to status-icon values Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I5b45c37997647f5a265c1e84eb53f0b51699ee20
2020-06-13Add date filter on Event logs pageYoshie Muranaka2-0/+195
Created global TableDateFilter component that uses the BootstrapVue Datepicker with a native text input. This will allow users to manually enter a date in ISO format or use the Bootstrap calendar dropdown. Storing language preference from Login to use locale prop on BootstrapVue Datepicker component. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I66de9fb04451572c9a90f90d8522934b6204aed2
2020-06-12Global Search componentSurenNeware1-0/+64
Added global Search component to Sensors page. Signed-off-by: Suren Neware <sneware9@in.ibm.com> Change-Id: I3121cc4e582c782fa7e9937738cefbeddc23610e
2020-06-10Add batch actions and row action to Event LogsYoshie Muranaka1-18/+48
Adds ability to export and delete event logs by row or in a table batch action. - Modifications to TableRowAction component to allow single row export functionality Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: Ica50dd0868ac85cc2d6925a9448858b40da9c529
2020-06-10Add pagination to Event Log tableYoshie Muranaka1-0/+37
Created BvPaginationMixin for shared pagination values and methods. Chose to use exising BoostrapVue components as-is instead of wrapping in a custom component since it would add unnecessary complexity. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I246d761d90db36efeb442b0ee1074b629d32edef
2020-06-05Add network settings pageDixsie Wolmers1-1/+1
- Adds ability to configure newtowrk settings by selected ethernet interface - Default gateway is currently unavailable in redfish, to work around, grabbed gateway from first static ipv4 configuration and assigned to new static ipv4 configurations - Adds ability to add, modify and delete static ipv4 configs - Adds ability to add, modify and delete static dns - Adds ability to edit gateway, hostname and mac address - Form validations include regex for ip, mac address, and hostname - Language translations to be addressed in separate commit - Enabling DHCP and configuring DHCP settings to be addressed in separate commit Signed-off-by: Dixsie Wolmers <dixsie@ibm.com> Change-Id: I122034ae0ef3a8c08e5599ee3eca66e8d0d59f67
2020-06-02Add link to app header status iconsDixsie Wolmers1-2/+2
Signed-off-by: Dixsie Wolmers <dixsie@ibm.com> Change-Id: Id7a303c415778351089786e894c42770e1810d01
2020-05-21Add Event log pageYoshie Muranaka1-2/+2
Add basic event log table with the ability to sort by column (ID, Severity, Type, Date) and filter by severity. - Updated existing translation for eventLog to eventLogs Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: Ic233593cc8804d9dcefb2b5740dfac3d52899b02
2020-05-21Remove focus outline from navigation itemsYoshie Muranaka1-0/+5
Removing outline from app navigation to allow for custom Bootstrap box-shadow focus styles. Explicitly set outline property to none to override default user agent styles. Needed to apply to <li> and <a> (nav-item and nav-link). Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: Iaf70215c68b91fd03f595487a30e93e024c12a1d
2020-05-21Update EventLogStore request to use RedfishYoshie Muranaka1-3/+3
Changes to WebSocketPlugin to dispatch event log GET request when new event interfaces are received. By re-fetching the Redfish logs the health status icon in the application header will always reflect the visible event logs. The plugin was previously only updating the header status, so it was possible for the header status and event logs to be out of sync. - Changed to use Redfish endpoint for event log GET request /redfish/v1/Systems/system/LogServices/EventLog/Entries - Update AppHeader Health status icon to reflect changes made with Redfish log Severity property Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I73a3a441dcbbb3a29ef9a51f961c062689cb5add
2020-05-21Add manage power usage pageSukanya Pandey1-1/+1
-The page is used to control the power. -Maximum power can be set between 1 to 10000. -The API used to get and set the power limit:/redfish/v1/Chassis/chassis/Power Signed-off-by: Sukanya Pandey <sukapan1@in.ibm.com> Change-Id: I1cab4876e9149d92de75014d7680ac11410ca4fe
2020-05-20Add ServerLED pageSurenNeware1-1/+1
Added ability to turn on/off Indicator LED. Signed-off-by: Suren Neware <sneware9@in.ibm.com> Change-Id: Ia59eb0214530906dea840ff18ff22fc913870bb9
2020-05-16Add Redfish mapping for quiesced and dignostics modeYoshie Muranaka1-0/+2
- Add yellow warning icon Power status in app header for diagnostics mode Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I8a0f18139da2a29f4bcc4025db3aada158f86026
2020-05-05Import sass helpers to LoaderBar componentYoshie Muranaka1-0/+2
Fixes errors when trying to access Sass variables in LoaderBar component. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I9aa4baa2c1725a62bdbad36a5bda342563090b0a
2020-05-05Use Jest as the test frameworkDerick Montague1-0/+1
- 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
2020-05-05Update Sass architecture to require helper importsDerick Montague8-0/+16
- Restructuring file strucure to support single file components use of Sass variables when imported into vuepress. - Creating a scalable file structure using Sass best practices Tested by building and testing both the vue web ui and the the documentation application. Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: Iddcefbf305c8dac978ee24e903df33b609e395e3
2020-05-05Add export functionality to Sensors pageYoshie Muranaka2-1/+37
- Create TableToolbarExport component to be used as a slot in TableToolbar - Allows selected table items to be exported Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I929347e046af8a5d5188e4c4fd9fc874e067cce5
2020-05-01Create LoadingBar componentYoshie Muranaka3-1/+110
Create loading bar component to indicate when page data is 'loading'. Not every component view will need to show the loading bar (eg Reboot BMC). The LoadingBarMixin can be imported per component as needed. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I6735be37bc0a81f5bb2b7c93fb31a0e0ef9b40d1
2020-04-25Add LDAP pageYoshie Muranaka1-1/+1
Adds ability to enable LDAP service and modify LDAP and ActiveDirectory properties. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I59d65bba7f6fe321af395227ce2f7188d9c006b7
2020-04-21Create TableFilter componentYoshie Muranaka2-0/+116
Global TableFilter component and TableFilterMixin can be used with any table. The TableFilterMixin will return filtered data with items that match any of the filter tags. When the table search component is built, it should use the BoostrapVue Table :filter prop. - Filter by status added to Sensors table Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I57ebab1686b2d267383cb0e1be252627bf42c98c
2020-04-16Create accessible InfoTooltip ComponentYoshie Muranaka1-0/+30
Adds a global reusable component that will display the info icon with accesible markup. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I5f7ee4a45e19ce851b3eff705d722517db07c0bf
2020-04-09Fix documentation errorDerick Montague1-7/+0
Using SCSS tokens in single file components results in a compile issue causing the documentation to white screen. Moving custom alert styles to the global alert .scss file to resolve this issue and to keep all alert styles in one place. Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I047fa15c76cdfb842e5c00eea99e529595b94632
2020-04-09Resolve header and nav accessibility violationsDerick Montague2-22/+36
- Add aria-label to nav sections in app-header and app-nav to meet accessibility guidelines. When application has multiple nav elements an aria-label is required to help screen readers identify the elements - Remove b-nav child of b-nav-bar in app-header to fix invalid markup generated by Bootstrap-vue components. Components were not used as expected by the component library - Replace b-nav-item with HTML <li> elements using nav-item css classes in order to use button elements. Bootstrap-vue generates <a> elements which is not the semantic HTML element to use for items that are not links to other sections of the application. - Removed aria-expanded and nav-open class from nav-trigger button - Update appHeader unit test Used a TDD approach to write all tests to fail and then updated the methods and actions to make the tests suceed. Each test resulting in a dispatched action should be called once only and with the expected action. Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I18af3727708526f814b7ceb77a0c28fda9f3d9bd
2020-04-08Add SSL Certificates pageYoshie Muranaka1-1/+1
Adds ability to view, add, replace, and delete SSL certificates in GUI. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I5cf9fa7bbd588dfb22f2431eed0b5976ff860703
2020-03-31Add local user account manual unlockYoshie Muranaka1-2/+10
Adds ability to manually unlock user account if account service settings lockout duration set to 0. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I75351c5e03bd5403e8dc7679d8d98b90adb90277
2020-03-26Add Sensors pageYoshie Muranaka1-1/+1
- Update api calls to use Redfish - Add column sort to name and status columns - Set default table sort to status column - Added lodash package Github story: https://github.com/openbmc/webui-vue/issues/4 Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: Ic6e76107475fbf5fb34deb01a4de4a4a9ccfeabf
2020-03-20Add alert message component and documentationDerick Montague2-4/+37
- Add custom alert component to simplify the use of custom alerts - Add documentation for using the custom alert - Update the login error alert to use the alert component instead of the Bootstrap-vue component. - Register alert component in enhanceApp - Replace Sass variables used in the StatusIcon component style block to use the Boostrap theme-color and gray Sass functions so the colors can be used in the Vuepress documentation custom components Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: Ibd93402c919a42bd5c24cc9e7c6c8fc6f17a4db4
2020-03-20Add toast component documentationDerick Montague1-0/+9
- Add documentation that describes when and how to use a toast message with code snippets - Add an informational toast method in the BVToastMixin - Add BVToastMixin to enhaceApp to register mixin globally. Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I89bf2aa8b3fdb9294354a80c98ccf692b6e3615a
2020-03-20Add buttons documentationDerick Montague1-0/+1
- Add documentation for how to use buttons - Update markup and CSS rulesets to support icons on the left or the right of text Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: Ic897f416e85824287360bc7ef5dc47c402d64eba
2020-03-13Revert "Add alert message component and documentation"Derick Montague1-33/+0
This reverts commit 71650fff20c0ad29eb05d770736386863324b64e. Reason for revert: Found an issue with Sass loader when compiling docs that needs to be addressed. Change-Id: Icdd1243665f60849bfb341594452687fcdaeebe2
2020-03-12Add alert message component and documentationDerick Montague1-0/+33
- Add custom alert component to simplify the use of custom alerts - Add documentation for using the custom alert - Update the login error alert to use the alert component instead of the Bootstrap-vue component. - Add the enhanceApp and bmcAppPlugin to extend vuepress to use both the BMC custom and Boostrap-Vue components along with the custom styles Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I5c0b696ca47ddba0df18041d6c5ee7509bf23572
2020-03-10Remove unused colors from color paletteDerick Montague3-9/+13
The color palette has been stripped down to a maximum of two colors shades per palette. This works for our design since components use a base color with a lighter color as an accent color. This change reduces the amount of CSS generated by Bootstrap when the CSS is compiled. Github Story: https://github.com/openbmc/webui-vue/issues/2 Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I2ddb37f5c89c749a7303799c6f7499ddd83d5a92
2020-03-06Fix slight alignment issue in navigationYoshie Muranaka1-1/+2
Health option in navigation was slightly offset from other menu items. This will flush all navigation items. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I27aa01e612afd4a3ce3027262e27aa39ac55f15a
2020-03-06Add power operations pageYoshie Muranaka1-1/+1
Add route, component and Control requests to enable power operations (power on, soft and hard reboot, soft and hard power off). This rewrite includes updates to use Redfish endpoints. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I54784b8cc1b6260e44e708c260ea4a531fc0a629
2020-03-04Update application navigation colorsDerick Montague1-6/+14
- Current navigation color did not match mockup - Replace color variables with theme variables in .vue file - Add $gray-500 - Delete the map-remove functions. Maps are based on the added properties - Increase navigaton icon size - Add _variables.scss file for overrides to Bootstrap Sass variables and adding custom variables Testing: 1. Navigation item for current page will have a dark background, light text, and a blue border. 2. Hovering over an active navigation item will display the cursor as the default arrow. Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: Id391364ee74ece59ba7b20d49fda859de0c12b17
2020-03-03Add translation to header and navigationYoshie Muranaka2-24/+46
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I31a6c7a45a20c68efc367ba625c7b06b2d7ba47d
2020-03-03Add translation to user management pageYoshie Muranaka2-4/+4
Updated TableToolbar component to handle label translation outside of the component which is more consistent with bootstrap table component patterns. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: Ic2e75e327f6a6067905c541f9a3ea55c5d103f4b
2020-03-02Fix styling for TableRowAction buttonYoshie Muranaka1-1/+1
Padding was off for buttons in the TableRowAction component because of specificity issues. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I0b11bce612c4e1fe9b07a3ca8e33febf57f944e0
2020-02-26Update language json structureYoshie Muranaka3-6/+6
Restructure language file to use consistent pattern across pages following loose guidelines. - Create buckets for common global labels - Create common component objects–appHeader, appNavigation, appPageTitle - Page specific labels should be nested in an object with a key prefixed with 'page' followed by the page title - Any 'major' child components should be nested inside page specific objects - Avoid any complex linked locale messages - Alphabetize object keys, alphabetize nested properties at end of object block Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: Ie4222b3ce24dec7af31b55b5a77425ca2f492789