| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 | <template lang='pug'>  .v-card-info(:class='`is-` + color')    v-card-text.d-flex.align-center(:class='colors.cls')      v-icon(:color='colors.icon', left) {{icon}}      slot</template><script>export default {  props: {    color: {      type: String,      default: 'blue'    },    icon: {      type: String,      default: 'mdi-information-outline'    }  },  computed: {    colors () {      switch (this.color) {        case 'blue':          return {            cls: this.$vuetify.theme.dark ? 'grey darken-4-l5 blue--text text--lighten-4' : 'blue lighten-5 blue--text text--darken-3',            icon: 'blue lighten-3'          }        case 'red':          return {            cls: this.$vuetify.theme.dark ? 'grey darken-4-l5 red--text text--lighten-4' : 'red lighten-5 red--text text--darken-2',            icon: 'red lighten-3'          }        default:          return {            cls: this.$vuetify.theme.dark ? 'grey darken-4-l5' : 'grey lighten-4',            icon: 'grey darken-2'          }      }    }  }}</script><style lang="scss">.v-card-info {  border-bottom: 1px solid #EEE;  &.is-blue {    border-bottom-color: mc('blue', '100');    @at-root .theme--dark & {      border-bottom-color: rgba(mc('blue', '100'), .3);    }  }  &.is-red {    border-bottom-color: mc('red', '100');    @at-root .theme--dark & {      border-bottom-color: rgba(mc('red', '100'), .3);    }  }}</style>
 |