rudeshark.net/src/client/app/mobile/views/widgets/profile.vue

64 lines
1.2 KiB
Vue
Raw Normal View History

2018-02-23 22:29:21 +01:00
<template>
<div class="mkw-profile">
<mk-widget-container>
<div :class="$style.banner"
2018-05-27 06:49:09 +02:00
:style="$store.state.i.bannerUrl ? `background-image: url(${$store.state.i.bannerUrl}?thumbnail&size=256)` : ''"
2018-02-23 22:29:21 +01:00
></div>
<img :class="$style.avatar"
2018-05-27 06:49:09 +02:00
:src="`${$store.state.i.avatarUrl}?thumbnail&size=96`"
2018-02-23 22:29:21 +01:00
alt="avatar"
/>
2018-05-27 06:49:09 +02:00
<router-link :class="$style.name" :to="$store.state.i | userPage">{{ $store.state.i | userName }}</router-link>
2018-02-23 22:29:21 +01:00
</mk-widget-container>
</div>
</template>
<script lang="ts">
2018-02-24 16:18:09 +01:00
import define from '../../../common/define-widget';
2018-04-05 18:36:34 +02:00
2018-02-23 22:29:21 +01:00
export default define({
name: 'profile'
});
</script>
<style lang="stylus" module>
.banner
height 100px
background-color #f5f5f5
background-size cover
background-position center
cursor pointer
.banner:before
content ""
display block
width 100%
height 100%
2018-04-29 01:51:17 +02:00
background rgba(#000, 0.5)
2018-02-23 22:29:21 +01:00
.avatar
display block
position absolute
width 58px
height 58px
margin 0
vertical-align bottom
top ((100px - 58px) / 2)
left ((100px - 58px) / 2)
border none
border-radius 100%
2018-04-29 01:51:17 +02:00
box-shadow 0 0 16px rgba(#000, 0.5)
2018-02-23 22:29:21 +01:00
.name
display block
position absolute
top 0
left 92px
margin 0
line-height 100px
2018-06-13 23:29:01 +02:00
color #fff
2018-02-23 22:29:21 +01:00
font-weight bold
2018-04-29 01:51:17 +02:00
text-shadow 0 0 8px rgba(#000, 0.5)
2018-02-23 22:29:21 +01:00
</style>