From fd22b5b0e770442294bd883a8b4e25ad512717ed Mon Sep 17 00:00:00 2001 From: Derick Montague Date: Fri, 13 Mar 2020 15:15:43 -0500 Subject: Add alert message component and documentation - 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 Change-Id: Ibd93402c919a42bd5c24cc9e7c6c8fc6f17a4db4 --- src/assets/styles/_alerts.scss | 59 ++++++++++++++++++++++++++++++++++++ src/assets/styles/_obmc-custom.scss | 1 + src/components/Global/Alert.vue | 33 ++++++++++++++++++++ src/components/Global/StatusIcon.vue | 8 ++--- src/locales/en-US.json | 3 +- src/locales/es.json | 3 +- src/views/Login/Login.vue | 27 ++++------------- 7 files changed, 105 insertions(+), 29 deletions(-) create mode 100644 src/assets/styles/_alerts.scss create mode 100644 src/components/Global/Alert.vue (limited to 'src') diff --git a/src/assets/styles/_alerts.scss b/src/assets/styles/_alerts.scss new file mode 100644 index 00000000..3f103b19 --- /dev/null +++ b/src/assets/styles/_alerts.scss @@ -0,0 +1,59 @@ +.alert { + display: flex; + padding: $spacer; + border-width: 0 0 0 3px; + color: $gray-800; + margin-bottom: $spacer; + + .close { + font-weight: 300; + opacity: 1; + } + + .alert-icon { + display: inline-flex; + align-items: center; + margin-right: $spacer; + margin-bottom: $spacer; + + @include media-breakpoint-up(sm) { + margin-bottom: 0; + } + } + + .alert-content { + flex: 1 1 auto; + } + + .alert-title { + margin-bottom: $spacer / 2; + } + + .alert-msg { + p + p { + margin-bottom: $spacer; + } + + p:last-of-type { + margin-bottom: 0; + } + } + + &.alert-info { + border-left-color: $info; + background-color: $info-light; + fill: $info; + } + + &.alert-danger { + border-left-color: $danger; + background-color: $danger-light; + fill: $danger; + } + + &.alert-warning { + border-left-color: $warning; + background-color: $warning-light; + fill: $warning; + } + } \ No newline at end of file diff --git a/src/assets/styles/_obmc-custom.scss b/src/assets/styles/_obmc-custom.scss index 66cebda2..2a8d896a 100644 --- a/src/assets/styles/_obmc-custom.scss +++ b/src/assets/styles/_obmc-custom.scss @@ -39,6 +39,7 @@ @import "~bootstrap-vue/src/index.scss"; +@import "./alerts"; @import "./buttons"; @import "./form-components"; @import "./modal"; diff --git a/src/components/Global/Alert.vue b/src/components/Global/Alert.vue new file mode 100644 index 00000000..bc65b6e9 --- /dev/null +++ b/src/components/Global/Alert.vue @@ -0,0 +1,33 @@ + + + diff --git a/src/components/Global/StatusIcon.vue b/src/components/Global/StatusIcon.vue index 96074ee6..11143212 100644 --- a/src/components/Global/StatusIcon.vue +++ b/src/components/Global/StatusIcon.vue @@ -33,20 +33,20 @@ export default { .status-icon { vertical-align: text-bottom; &.success { - fill: $success; + fill: theme-color('success'); } &.danger { - fill: $danger; + fill: theme-color('danger'); } &.secondary { - fill: $gray-600; + fill: gray('600'); svg { transform: rotate(-45deg); } } &.warning { - fill: $warning; + fill: theme-color('warning'); } } diff --git a/src/locales/en-US.json b/src/locales/en-US.json index 1e676ee6..63247da6 100644 --- a/src/locales/en-US.json +++ b/src/locales/en-US.json @@ -134,8 +134,7 @@ "password": "Password", "username": "Username", "alert": { - "title": "Invalid username or password", - "action": "Try again after verifying your username and password are correct." + "message": "Invalid username or password" } }, "pageOverview": { diff --git a/src/locales/es.json b/src/locales/es.json index 48ed7748..a3e3ee09 100644 --- a/src/locales/es.json +++ b/src/locales/es.json @@ -16,8 +16,7 @@ "password": "Contraseña", "username": "Nombre de usuario", "alert": { - "title": "Usuario o contraseña invalido.", - "action": "Inténtalo de nuevo." + "message": "Usuario o contraseña invalido" }, "form": { "english": "Inglés", diff --git a/src/views/Login/Login.vue b/src/views/Login/Login.vue index da96844a..c15e5f53 100644 --- a/src/views/Login/Login.vue +++ b/src/views/Login/Login.vue @@ -15,12 +15,11 @@