summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2020-03-06Add power operations pageYoshie Muranaka6-1/+296
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-05Fix float-right mixin build warningYoshie Muranaka1-5/+1
Bootstrap Sass mixin float-right is deprecated, swapped to use utitlity class instead. This will fix warning: WARNING: The `float-right` mixin has been deprecated as of v4.3.0. It will be removed entirely in v5. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: Ib94fff09c9c218143335f9021e0dfe213294b426
2020-03-05Refactor user management componentYoshie Muranaka1-8/+2
Removing dedicated methods to get user accounts and settings since component methods aren't reused and subsequent requests after initial load are handled on Store level. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I18bc18eea0e2e47af01afb518ccd7f0e99c414ab
2020-03-05Fix en.json formatYoshie Muranaka1-1/+2
Adding missing closing bracket Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: Ie80fe8dff662eaa89e3b91aed7278a5b7b1471cf
2020-03-05Update login error messageDerick Montague1-3/+2
Updating the login error message when a user enters an incorrect username of password. This is being updated to provide a more descriptive message to the user that can also be easily translated in multiple languages. Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I6d798f74cfe3968496c7c14341f3aa10ccabbe75
2020-03-04Update application navigation colorsDerick Montague4-38/+47
- 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 Muranaka3-30/+76
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I31a6c7a45a20c68efc367ba625c7b06b2d7ba47d
2020-03-03Add translation to user management pageYoshie Muranaka6-63/+148
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-29Move Firmware version call to use RedfishDixsie Wolmers2-43/+29
Updates firmware store to use redfish api for bmc and host firmware version. Signed-off-by: Dixsie Wolmers <dixsie@ibm.com> Change-Id: Ib545d62b5211d141307364c0e45a3462f85e9d90
2020-02-28Format date and time for international localesDixsie Wolmers5-10/+40
Uninstalls vue-date-fns and uses toLocaleDateString() method to return formatted date and time. Date language is set by i18n and time/timezone is formatted by browser locale. Uses vue filter to format date and time as: - short month, day, year, time and timezone - 'en' example: Feb 23, 2020, 3:40:25 PM CST - 'es' example: 25 feb 2020 14:23:36 GMT-6 - hour12 value is determined by browser default Signed-off-by: Dixsie Wolmers <dixsie@ibm.com> Change-Id: I4fe8c51f5437cef263f1e0ea4184c0b552c85f4d
2020-02-26Update language json structureYoshie Muranaka16-203/+182
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-25Add account settings to local user pageYoshie Muranaka4-11/+234
Adds ability to change account LockoutThreshold and LockoutDuration properties from the GUI. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: Ieeb75aa83c07b3de840bccdfc28e2d6e87512e2e
2020-02-25Add password requirements to local user pageYoshie Muranaka4-36/+107
- Make api call to get user account settings - Update add/edit user form to include dynamic password requirement values - Fix edit username bug by adding input listener to field that sets form control to $dirty state and adds property to PATCH request Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Change-Id: I3535f4214ee12c95d5e502134bf3e36597d2421a
2020-02-25Update overview events table and overview network layoutDixsie Wolmers5-91/+195
- Convert events list group to bootstrap table - Add ethernet interfaces to overview using redfish Signed-off-by: Dixsie Wolmers <dixsie@ibm.com> Change-Id: I633f03ba4a65358861664a869b35adf5358c45e6
2020-02-24Create TableRowAction componentYoshie Muranaka3-31/+74
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 Muranaka10-23/+458
- 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 Muranaka9-10/+109
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 Muranaka3-37/+103
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-21Update label and definition list styleDixsie Wolmers3-5/+14
Added typography.scss to override label and definition styles to have a consistent label pattern Signed-off-by: Dixsie Wolmers <dixsie@ibm.com> Change-Id: I44580093436c3c1e7e550ab63da214ffd2432c36
2020-02-21Translate overview pageDixsie Wolmers6-41/+77
- Power cap and power consumption state is translated in the store - Static overview text is translated in the template Signed-off-by: Dixsie Wolmers <dixsie@ibm.com> Change-Id: I9463072e38c82b4660743ba9785a606ef1c69eae
2020-02-19Add responsive layoutYoshie Muranaka8-92/+277
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 Muranaka2-3/+18
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 Muranaka6-59/+148
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 Montague2-5/+4
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-13Update overview quicklinks with community approved designDixsie Wolmers2-34/+84
Resubmitting after reverted–original commit here https://gerrit.openbmc-project.xyz/c/openbmc/webui-vue/+/28762 Signed-off-by: Dixsie Wolmers <dixsie@ibm.com> Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: Ib4b2cc8015b86a9f6de11ebcade57abe086c5990
2020-02-13Set up initial language translationDixsie Wolmers9-25/+146
- 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 Muranaka6-15/+100
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 Montague15-66/+91
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 Muranaka11-124/+402
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
2020-01-29Revert "Update overview quicklinks with community approved design"Gunnar Mills2-84/+35
Merged accidentally. Did not have proper +1s/+2s. The author will resubmit. Apologies for the noise. This reverts commit 256f5b967beb1505cab73ce59f534b6b9860e38f. Change-Id: I2cc7f48565221742245613aee383541152e71096 Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2020-01-29Revert "Change eslint rules to use vue recommended"Gunnar Mills15-94/+69
Merged accidentally. Although this one did have the proper +1s/+2s. The 2 underneath did not. The author will resubmit. This reverts commit 5e7ac49058e5dc37fd43ecf3c0d06f5dda14af5b. Change-Id: Iceb1de3a170cc0b592b183545c792aa3eb87bfee Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2020-01-29Revert "Update local user layout and styles"Gunnar Mills8-333/+58
Merged accidentally. Did not have proper +1s/+2s. The author will resubmit. Apologies for the noise. This reverts commit 5fa09a25c207d13ec1c9a8df92fc058f15a872e1. Change-Id: I59a792193f94f51c6f499c385305db919cf43927 Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
2020-01-29Update local user layout and stylesYoshie Muranaka8-58/+333
- 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 Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I301a65071c5cdbe16f10ce6a2a6bfa1b2516dc3d
2020-01-29Change eslint rules to use vue recommendedDerick Montague15-69/+94
- Ran npm run lint - Resolved eslint issues Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: Icd433ca55321d8bceb941e2d13ebade72bd4981f
2020-01-29Update overview quicklinks with community approved designDixsie Wolmers2-35/+84
Signed-off-by: Dixsie Wolmers <dixsie@ibm.com> Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: Ia748182f6a6bf8d7dc87e2f367f02c0528ecf441
2020-01-29Update button variant stylesYoshie Muranaka3-2/+33
Adding styles to leverage bootstrap-vue button components. Using the link variant as a replacement for our current 'ghost' button style. Use $enable-rounded flag to disable rounded corners. This will take care of all components with rounded corners (input fields, modals, etc). Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: Ie48f19a76698f896d9ebe7e72e9c0575f6db80c1
2020-01-29Style primary navigationYoshie Muranaka2-33/+108
Adding styles and interaction patterns based on community approved design proposals. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: Ie7f422db6fbbca2033e10d2d2ae331540a8a038a
2020-01-29Add login form validationDerick Montague4-54/+145
- Sending incorrect credentials returns a 401 and we don't want the page to redirect if we are trying to login. Wrapped the redirect in an if block. - Returning a promise used by the logout action, which is needed when not redirecting the page. Didn't add to the if block since other errors that use the router to redirect will need the Promise returned also, e.g. 403. Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I6db706ef7c71ed13baed95dc4264e6ae11d13ad3
2020-01-29Add interceptor for 403 responseDerick Montague4-0/+36
This is a simple solution that is in parity with the current BMC functionality. Once we have mapped permissions, we can create a more elegant solution. Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: Id3ea36ba812462be04a450f84f98d0237d6c7c3d
2020-01-29Redirect user to login on 401 responseDerick Montague1-0/+8
Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I58609486956239d90a0dfec630f249dc3fa28ea2
2020-01-29Fix linting in script blocks in vue filesDerick Montague13-109/+109
- Removed the .eslintrc and added the pretteri rules to the eslintrc file - Ran `npm run lint --fix` Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I4e36c1967ae9b4d839ef88f1d47ffa20ab4e4991
2020-01-29Add store modules needed to support overview viewDixsie Wolmers11-130/+428
- Update overview page to get data from store Signed-off-by: Dixsie Wolmers <dixsie@ibm.com> Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: Id2fcad660efc0da5c7b878e872355bf5773c7ed7
2020-01-29Add host status pluginYoshie Muranaka7-61/+161
- Create WebSocket and get host state changes from server - Changed webpack devServer to https to allow for secure WebSocket creation (wss) - Updates to AppHeader to visually indicate changes in host state - Cleaned up api.js file - Check if user is logged in when creating WebSocket - Adds check if user is already authenticated so WebSocket is created when browser refreshed. - Add appliation header styles - Add sass loader config changes to allow sass variables to be used in single file components URL must use https protocol when running locally or the page will not load. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I35e89bdc09e1aa35a6215ef952409a8ed16dd9e1
2020-01-28Add page level layout componentsYoshie Muranaka7-25/+109
Adding components to help standardize type, size, spacing for common elements on a page. Also removed a conflicting class name and added modifications to the main container. The main container needed a min-height and height value set, which became apparent with added background color. Adding a background color will move us closer to agreed design solution to add a subtle background color instead of adding a border to separate main content from left hand navigation. Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: Ie63c4f0c0f3fd199fa0ca790065402e06a613691
2020-01-27Add singlequote override and fix filesDerick Montague12-67/+67
Based on phosphor-webui and JavaScript common practices we are setting ESLint to required single quote for JS files and double quote for SCSS files. This commit adds the ESLint override to the prettier rules and runs the npm lint script that fixes the files that violate the rule. Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I50cba77b2d0797595ce94258029608efa8665005
2020-01-27Add cookie based login authenticationYoshie Muranaka4-22/+17
- Changed POST request data structure to match backend requirements for set-cookie in response header - Added withCredentials property to default axios config - Modifying proxied response to remove 'Secure' flag so browser can create Cookie while running locally - Add logout api request - Add js-cookie package to manage browser cookies - Update the babel preset config to include useBuiltIns, which resolves MIME type errors when overlaying - Disable vue-router history mode to use routher hash mode to resolves 404 errors when refreshing certain pages. This is expected behavior with history mode enabled. Server configuration changes are required to support HTML5 history mode: https://router.vuejs.org/guide/essentials/history-mode.html#example-server-configurations Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com> Signed-off-by: Derick Montague <derick.montague@ibm.com> Change-Id: I5d43f36ef546962474b6cc8fff89564f29048fde