2018-12-29 19:24:52 -08:00
|
|
|
import Vue from 'vue';
|
|
|
|
import LoginForm from "./LoginForm";
|
2018-12-30 12:13:10 -08:00
|
|
|
import ForgotPassword from "./ForgotPassword";
|
|
|
|
import TwoFactorForm from "./TwoFactorForm";
|
|
|
|
import Flash from "../Flash";
|
2018-12-29 19:24:52 -08:00
|
|
|
|
|
|
|
export default Vue.component('login', {
|
|
|
|
data: function () {
|
|
|
|
return {
|
|
|
|
user: {
|
|
|
|
email: ''
|
|
|
|
},
|
|
|
|
};
|
|
|
|
},
|
|
|
|
components: {
|
2018-12-30 12:13:10 -08:00
|
|
|
Flash,
|
2018-12-29 19:24:52 -08:00
|
|
|
LoginForm,
|
2018-12-30 12:13:10 -08:00
|
|
|
ForgotPassword,
|
|
|
|
TwoFactorForm,
|
2018-12-29 19:24:52 -08:00
|
|
|
},
|
|
|
|
methods: {
|
|
|
|
onUpdateEmail: function (value: string) {
|
|
|
|
this.$data.user.email = value;
|
|
|
|
},
|
|
|
|
},
|
|
|
|
template: `
|
|
|
|
<div>
|
2018-12-30 12:13:10 -08:00
|
|
|
<flash container="mb-2"/>
|
2018-12-29 19:24:52 -08:00
|
|
|
<login-form
|
|
|
|
v-if="this.$route.name === 'login'"
|
|
|
|
v-bind:user="user"
|
|
|
|
v-on:update-email="onUpdateEmail"
|
|
|
|
/>
|
2018-12-30 12:13:10 -08:00
|
|
|
<forgot-password
|
|
|
|
v-if="this.$route.name === 'forgot-password'"
|
|
|
|
v-bind:email="user.email"
|
|
|
|
v-on:update-email="onUpdateEmail"
|
|
|
|
/>
|
|
|
|
<two-factor-form v-if="this.$route.name === 'checkpoint'" />
|
2018-12-29 19:24:52 -08:00
|
|
|
</div>
|
|
|
|
`,
|
|
|
|
});
|