CSR-185 Create alert/notification component.

Four colors, dismissable/close button.
This commit is contained in:
bmauger 2021-11-16 18:29:06 -05:00
parent 7d100b652b
commit 6974a62368
7 changed files with 63 additions and 10 deletions

View file

@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 23.7 23.7" xml:space="preserve">
<path d="m23.24 2.7-9.15 9.15L23.24 21a1.581 1.581 0 0 1-1.12 2.7c-.42 0-.82-.16-1.12-.46l-9.15-9.15-9.15 9.15c-.3.3-.7.46-1.12.46A1.581 1.581 0 0 1 .46 21l8.47-8.47.68-.68L.46 2.7c-.62-.62-.62-1.62 0-2.24.62-.62 1.62-.62 2.24 0l8.47 8.47.68.68L21 .46a1.57 1.57 0 0 1 2.23 0c.63.62.63 1.62.01 2.24z"/>
</svg>

After

Width:  |  Height:  |  Size: 397 B

View file

@ -117,12 +117,12 @@
<!--
Available classes for alertClass:
alert-sucess (green)
alert-dander (red)
alert-danger (red)
alert-warning (yellow)
alert-info (blue)
-->
<alert
alertClass="alert-info"
alertClass="alert-danger"
alertHeading="Alert Heading"
alertText="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt"
/>

View file

@ -0,0 +1,47 @@
.alert {
button {
display: none;
}
.btn-close {
background: none;
opacity: 1;
}
&.alert-dismissible {
button {
display: flex;
}
}
&.alert-info {
.alert-heading {
color: $blue-700;
}
svg {
fill: $blue-700;
}
}
&.alert-danger {
.alert-heading {
color: $red-700;
}
svg {
fill: $red-700;
}
}
&.alert-warning {
.alert-heading {
color: $yellow-700;
}
svg {
fill: $yellow-700;
}
}
&.alert-success {
.alert-heading {
color: $green-700;
}
svg {
fill: $green-700;
}
}
}

View file

@ -164,7 +164,7 @@ $box-shadow-sm: 0 .125rem .25rem rgba($black, .075);
$box-shadow-lg: 0 1rem 3rem rgba($black, .25);//Safelite default
$box-shadow-inset: inset 0 1px 2px rgba($black, .075);
//Alerts
$alert-bg-scale: -90%;
$alert-border-scale: -100%;
$alert-color-scale: 40%;

View file

@ -1,13 +1,15 @@
<template>
<div class="alert fade show text-center" role="alert"
<div class="alert fade show text-center mb-0" role="alert"
v-bind:isDismissable="isDismissable"
v-bind:class="[isDismissable ? 'alert-dismissible' : '', this.alertClass]"
>
<strong>{{alertHeading}}</strong>
<p class="m-0 fw-bold alert-heading">{{alertHeading}}</p>
<p class="m-0 text-body">{{alertText}}</p>
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"
v-bind:class="[isClose ? '' : 'visually-hidden']"
></button>
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 23.7 23.7" xml:space="preserve">
<path d="m23.24 2.7-9.15 9.15L23.24 21a1.581 1.581 0 0 1-1.12 2.7c-.42 0-.82-.16-1.12-.46l-9.15-9.15-9.15 9.15c-.3.3-.7.46-1.12.46A1.581 1.581 0 0 1 .46 21l8.47-8.47.68-.68L.46 2.7c-.62-.62-.62-1.62 0-2.24.62-.62 1.62-.62 2.24 0l8.47 8.47.68.68L21 .46a1.57 1.57 0 0 1 2.23 0c.63.62.63 1.62.01 2.24z"/>
</svg>
</button>
</div>
</template>
@ -21,8 +23,7 @@ export default {
},
data() {
return {
isDismissable: true,
isClose: true
isDismissable: true
};
}
};

View file

@ -27,6 +27,7 @@ module.exports = {
@import "@/styles/commonRadioStyles.scss";
@import "@/styles/commonTypographyStyles.scss";
@import "@/styles/commonComponentStyles/ymmsCommonStyles.scss";
@import "@/styles/commonAlertStyles.scss";
`
}
}

View file

@ -17,6 +17,7 @@ module.exports = {
@import "@/styles/commonRadioStyles.scss";
@import "@/styles/commonTypographyStyles.scss";
@import "@/styles/commonComponentStyles/ymmsCommonStyles.scss";
@import "@/styles/commonAlertStyles.scss";
`
}
}