summaryrefslogtreecommitdiff
path: root/src/components
AgeCommit message (Collapse)AuthorFilesLines
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
2020-02-24Create TableRowAction componentYoshie Muranaka1-0/+40
Creating a reusable component to help ensure visual consistency and code reuse for table actions. Updated local user management table to use this new component. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: Ib94df901c5b6a70ee3299f6844b60fa761842b13
2020-02-22Add batch actions to local user tableYoshie Muranaka3-4/+178
- Create TableToolbar component for table batch actions - Added Toast warning type and toast title message translations - Update vue-i18n package to latest v8.15.3 to use improved pluarlization features Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I455beba4f56b8209b1201bbc5ff3f616e960d189
2020-02-22Add Reboot BMC pageYoshie Muranaka3-8/+10
Created a ControlStore with the intention to consolidate actions across multiple subnav pages under the 'Control' tab, instead of creating a dedicated RebootBmc store with one action. - Update PageSection component to make sectionTitle prop optional - Changed PageTitle computed property to data since the value doesn't change during the component lifecycle - Change PageSection <section> element to <div> to avoid accessibility issues Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I2877e2a7b9bfee245c48d52c70859978b74be7f3
2020-02-22Create password visibility toggleYoshie Muranaka1-0/+57
Reusable component to show/hide password input fields, added to local user form. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I90fb865e51d99788a225812b057f4d8bacad1bc8
2020-02-19Add responsive layoutYoshie Muranaka3-67/+217
The main navigation will be collapsed until the viewport minimum width reaches the Bootstrap defined 'lg' breakpoint (defaults to 992px). - Adding motion variables and updating some CSS values to use existing Sass variables Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: Id159b84da6adf55fdb15842b0e33b1ede4eeceb4
2020-02-19Add refresh functionality in app headerYoshie Muranaka1-1/+4
Clicking refresh in the app header will update the :key value for the router-view component, and trigger a component re-render. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I15da6d2d04fc311dfc092fbe840add950180124f
2020-02-17Add Health status to app headerYoshie Muranaka2-3/+33
Added logging path and interface to websocket subscription data filter, to dynamically indicate Health status in the app header. - Update OverviewEvents to use highPriorityEvents data - Refactor EventLogStore Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I35ad30b005c70625a5f6a69488d45db0fa049374
2020-02-14Clear application state on logoutDerick Montague1-3/+1
Remove the authError state property from the logout mutation since the the authError would not be in the true state after a successful login. Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: Ibfe8b07c4e9e37dfab4435596c12e9a36556a714
2020-02-13Set up initial language translationDixsie Wolmers1-4/+4
- Add i18n internationalization plugin - Create json files for group 0 English and Spanish - Uses $t method to set up initial translations on login page - Meta title is translated using i18n in App.vue and PageTitle.Vue Signed-off-by: Dixsie Wolmers <dixsie@ibm.com> Change-Id: Ifce9f5e54d96f8b2a13239ad6178892f99fc4537
2020-02-13Update PageTitle component to use divYoshie Muranaka1-2/+2
Changed header element to div to fix accessiblity violation of having multiple header elements without unique aria-label properties. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I1e8aeaa6ee9142e16176eb47928916424ef4fba0
2020-02-13Add toast component interactionsYoshie Muranaka1-0/+24
Include boostrap toast component to communicate success and error requests on the local user management page. - Created BVToastMixin to share initialization options - Used async/await pattern to make sure toasts are shown after asynchronous calls are complete - Followed current AngularJS pattern of manual dismiss for error toast and automatic dismiss for success toast Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I5d5c037b5f41781972106fb5e9a2096cc72c39ab
2020-02-07Update navigation item orderDerick Montague1-3/+3
- Change all navigation items to display in alphabetical order Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I69f01c7a9c1f074e96a8577c5e906bd449c3a429
2020-02-06Add focus state to navigation link itemsYoshie Muranaka1-4/+4
Nested submenu items didn't have visual indication for focus state. Adding styles needed to meet accessiblity guidelines. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I2c79e2c36a0de8d6ae27e0388c1241868172b9cd
2020-01-31Change eslint rules to use vue recommendedDerick Montague5-10/+25
Resubmitting after reverted–original commit here https://gerrit.openbmc-project.xyz/c/openbmc/webui-vue/+/28763/7 - Ran npm run lint - Resolved eslint issues Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I2b8b9244acddd483d0a72f9a5d156a79de9869a0
2020-01-31Update local user layout and stylesYoshie Muranaka1-0/+10
Resubmitting after reverted–original commit here https://gerrit.openbmc-project.xyz/c/openbmc/webui-vue/+/28790 - Add BVConfig plugin to modify boostrap component defaults - Add vuelidate - Add package and basic validations to user form - Add all user form validations - Add checks for edit user - Create VuelidateMixin for shared methods - Update Login to use Vuelidate Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: Ib50ee4d1fb5f14637c9460e77f0682869a86ac8a