mizzkey/src/client/app/desktop/views/pages/welcome.vue

213 lines
3.8 KiB
Vue
Raw Normal View History

2018-02-10 06:56:33 +01:00
<template>
2018-02-10 11:57:37 +01:00
<div class="mk-welcome">
2018-05-23 08:48:41 +02:00
<button @click="dark">
2018-05-23 22:28:46 +02:00
<template v-if="$store.state.device.darkmode">%fa:moon%</template>
2018-05-23 08:48:41 +02:00
<template v-else>%fa:R moon%</template>
</button>
2018-02-10 06:56:33 +01:00
<main>
2018-05-23 22:28:46 +02:00
<img :src="$store.state.device.darkmode ? 'assets/title-dark.svg' : 'assets/title.svg'" alt="Misskey">
2018-05-21 14:39:46 +02:00
<p><button class="signup" @click="signup">%i18n:@signup-button%</button><button class="signin" @click="signin">%i18n:@signin-button%</button></p>
<div class="tl">
<header>%fa:comments R% %i18n:@timeline%<div><span></span><span></span><span></span></div></header>
<mk-welcome-timeline/>
2018-02-10 06:56:33 +01:00
</div>
</main>
<mk-forkit/>
<footer>
<div>
2018-02-11 04:42:02 +01:00
<mk-nav :class="$style.nav"/>
<p class="c">{{ copyright }}</p>
2018-02-10 06:56:33 +01:00
</div>
</footer>
2018-02-10 11:57:37 +01:00
<modal name="signup" width="500px" height="auto" scrollable>
2018-05-21 14:39:46 +02:00
<header :class="$style.signupFormHeader">%i18n:@signup%</header>
2018-02-11 04:08:43 +01:00
<mk-signup :class="$style.signupForm"/>
</modal>
<modal name="signin" width="500px" height="auto" scrollable>
2018-05-21 14:39:46 +02:00
<header :class="$style.signinFormHeader">%i18n:@signin%</header>
2018-02-11 04:08:43 +01:00
<mk-signin :class="$style.signinForm"/>
2018-02-10 08:22:14 +01:00
</modal>
2018-02-10 06:56:33 +01:00
</div>
</template>
2018-02-10 08:22:14 +01:00
<script lang="ts">
import Vue from 'vue';
2018-03-17 15:01:17 +01:00
import { docsUrl, copyright, lang } from '../../../config';
2018-02-10 08:22:14 +01:00
export default Vue.extend({
2018-02-11 04:42:02 +01:00
data() {
return {
2018-03-17 15:01:17 +01:00
aboutUrl: `${docsUrl}/${lang}/about`,
2018-05-21 14:39:46 +02:00
copyright
2018-02-11 04:42:02 +01:00
};
},
2018-02-10 08:22:14 +01:00
methods: {
signup() {
this.$modal.show('signup');
2018-02-11 04:08:43 +01:00
},
signin() {
this.$modal.show('signin');
2018-05-23 08:48:41 +02:00
},
dark() {
2018-05-25 08:06:35 +02:00
this.$store.commit('device/set', {
key: 'darkmode',
value: !this.$store.state.device.darkmode
});
2018-02-10 08:22:14 +01:00
}
2018-02-10 06:56:33 +01:00
}
2018-02-10 08:22:14 +01:00
});
</script>
<style>
#wait {
right: auto;
left: 15px;
}
2018-02-10 06:56:33 +01:00
</style>
<style lang="stylus" scoped>
2018-03-03 05:47:55 +01:00
@import '~const.styl'
2018-05-23 08:48:41 +02:00
root(isDark)
2018-02-10 08:22:14 +01:00
display flex
flex-direction column
flex 1
2018-03-17 09:47:46 +01:00
2018-05-23 08:48:41 +02:00
> button
position absolute
z-index 1
top 0
left 0
padding 16px
font-size 18px
color isDark ? #fff : #555
2018-02-10 08:22:14 +01:00
> main
2018-02-10 06:56:33 +01:00
flex 1
2018-05-21 14:39:46 +02:00
padding 64px 0 0 0
text-align center
2018-05-23 08:48:41 +02:00
color isDark ? #9aa4b3 : #555
2018-05-21 14:39:46 +02:00
> img
width 350px
> p
margin 8px 0
line-height 2em
button
padding 8px 16px
font-size inherit
.signup
color $theme-color
border solid 2px $theme-color
border-radius 4px
&:focus
box-shadow 0 0 0 3px rgba($theme-color, 0.2)
&:hover
color $theme-color-foreground
background $theme-color
&:active
color $theme-color-foreground
background darken($theme-color, 10%)
border-color darken($theme-color, 10%)
.signin
&:hover
2018-05-23 08:48:41 +02:00
color isDark ? #fff : #000
2018-05-21 14:39:46 +02:00
> .tl
margin 32px auto 0 auto
width 410px
text-align left
2018-05-23 08:58:53 +02:00
background isDark ? #313543 : #fff
2018-05-21 14:39:46 +02:00
border-radius 8px
box-shadow 0 8px 32px rgba(#000, 0.15)
overflow hidden
> header
z-index 1
padding 12px 16px
2018-05-23 08:58:53 +02:00
color isDark ? #e3e5e8 : #888d94
2018-05-21 14:39:46 +02:00
box-shadow 0 1px 0px rgba(#000, 0.1)
> div
position absolute
top 0
right 0
padding inherit
> span
display inline-block
height 11px
width 11px
margin-left 6px
border-radius 100%
vertical-align middle
&:nth-child(1)
background #5BCC8B
&:nth-child(2)
background #E6BB46
&:nth-child(3)
background #DF7065
> .mk-welcome-timeline
max-height 350px
overflow auto
2018-02-10 06:56:33 +01:00
2018-02-10 08:22:14 +01:00
> footer
2018-03-17 09:47:46 +01:00
font-size 12px
2018-05-23 08:48:41 +02:00
color isDark ? #949ea5 : #737c82
2018-02-10 06:56:33 +01:00
2018-02-10 08:22:14 +01:00
> div
margin 0 auto
2018-05-21 14:39:46 +02:00
padding 64px
2018-02-10 08:22:14 +01:00
text-align center
2018-02-10 06:56:33 +01:00
2018-02-10 08:22:14 +01:00
> .c
2018-02-11 04:42:02 +01:00
margin 16px 0 0 0
2018-02-10 08:22:14 +01:00
font-size 10px
2018-03-17 09:47:46 +01:00
opacity 0.7
2018-02-10 06:56:33 +01:00
2018-05-23 08:48:41 +02:00
.mk-welcome[data-darkmode]
root(true)
.mk-welcome:not([data-darkmode])
root(false)
2018-02-10 06:56:33 +01:00
</style>
2018-02-10 11:57:37 +01:00
<style lang="stylus" module>
.signupForm
padding 24px 48px 48px 48px
.signupFormHeader
padding 48px 0 12px 0
margin: 0 48px
font-size 1.5em
color #777
border-bottom solid 1px #eee
2018-02-11 04:08:43 +01:00
.signinForm
padding 24px 48px 48px 48px
.signinFormHeader
padding 48px 0 12px 0
margin: 0 48px
font-size 1.5em
color #777
border-bottom solid 1px #eee
2018-02-11 04:42:02 +01:00
.nav
a
color #666
2018-02-10 11:57:37 +01:00
</style>