You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
119 lines
3.0 KiB
119 lines
3.0 KiB
<template> |
|
<div class="sidebar-logo-container" :class="{'collapse':collapse}" :style="{ backgroundColor: sideTheme === 'theme-dark' ? variables.menuBackground : variables.menuLightBackground }"> |
|
<transition name="sidebarLogoFade"> |
|
<router-link v-if="collapse" key="collapse" class="sidebar-logo-link" to=""> |
|
<img v-if="logo" :src="logo" class="sidebar-logo" /> |
|
<img v-else :src="logoRight" class="sidebar-logo-right" /> |
|
<!-- <h1 v-else class="sidebar-title" :style="{ color: sideTheme === 'theme-dark' ? variables.logoTitleColor : variables.logoLightTitleColor }">{{ title }} </h1> --> |
|
</router-link> |
|
<router-link v-else key="expand" class="sidebar-logo-link" to=""> |
|
<img v-if="logo" :src="logo" class="sidebar-logo" /> |
|
<img :src="logoRight" class="sidebar-logo-right" /> |
|
<!-- <h1 class="sidebar-title" :style="{ color: sideTheme === 'theme-dark' ? variables.logoTitleColor : variables.logoLightTitleColor }">{{ title }} </h1> --> |
|
</router-link> |
|
</transition> |
|
</div> |
|
</template> |
|
|
|
<script> |
|
import logoImg from '@/assets/logo/logo.png' |
|
import logoRightImg from '@/assets/logo/logoRight.png' |
|
import variables from '@/assets/styles/variables.scss' |
|
|
|
export default { |
|
name: 'SidebarLogo', |
|
props: { |
|
collapse: { |
|
type: Boolean, |
|
required: true |
|
} |
|
}, |
|
computed: { |
|
variables() { |
|
return variables; |
|
}, |
|
sideTheme() { |
|
return this.$store.state.settings.sideTheme |
|
} |
|
}, |
|
data() { |
|
return { |
|
title: process.env.VUE_APP_TITLE, |
|
logo: logoImg, |
|
logoRight:logoRightImg, |
|
} |
|
} |
|
} |
|
</script> |
|
|
|
<style lang="scss" scoped> |
|
.sidebarLogoFade-enter-active { |
|
transition: opacity 1.5s; |
|
} |
|
|
|
.sidebarLogoFade-enter, |
|
.sidebarLogoFade-leave-to { |
|
opacity: 0; |
|
} |
|
|
|
.sidebar-logo-container { |
|
position: relative; |
|
display: flex; |
|
flex-direction: column; |
|
align-items: center; |
|
justify-content: center; |
|
width: 100%; |
|
height: 50px; |
|
line-height: 50px; |
|
background-image: linear-gradient(0deg, |
|
#002c5e 0%, |
|
#0069b2 100%), |
|
linear-gradient( |
|
#002c5e, |
|
#002c5e); |
|
background-blend-mode: normal, |
|
normal; |
|
box-shadow: inset 0px -1px 0px 0px |
|
rgba(255, 255, 255, 0.1); |
|
text-align: center; |
|
overflow: hidden; |
|
& .sidebar-logo-link { |
|
flex: 1; |
|
height: 100%; |
|
width: 100%; |
|
display: flex !important; |
|
flex-direction: row; |
|
align-items: center; |
|
justify-content: center; |
|
box-sizing: border-box !important; |
|
|
|
& .sidebar-logo { |
|
width: 32px; |
|
height: 32px; |
|
vertical-align: middle; |
|
margin-right: 12px; |
|
} |
|
& .sidebar-logo-right{ |
|
width: 100px; |
|
height: 35px; |
|
} |
|
|
|
& .sidebar-title { |
|
display: inline-block; |
|
margin: 0; |
|
color: #fff; |
|
font-weight: 600; |
|
line-height: 50px; |
|
font-size: 14px; |
|
font-family: Avenir, Helvetica Neue, Arial, Helvetica, sans-serif; |
|
vertical-align: middle; |
|
} |
|
} |
|
|
|
&.collapse { |
|
.sidebar-logo { |
|
margin-right: 0px; |
|
} |
|
} |
|
} |
|
</style>
|
|
|