Split password flow into different routes part 1

This commit is contained in:
Robert Schäfer 2019-06-18 23:49:38 +02:00
parent d8eca07c21
commit 38327ddf71
5 changed files with 43 additions and 29 deletions

View File

@ -28,7 +28,9 @@ module.exports = {
publicPages: [
'login',
'logout',
'password-reset',
'password-reset-request',
'password-reset-verify-code',
'password-reset-change-password',
'register',
'signup',
'reset',

View File

@ -46,7 +46,7 @@
type="password"
/>
<ds-space class="password-reset-link" margin-bottom="large">
<nuxt-link to="/password-reset">
<nuxt-link to="/password-reset/request">
{{ $t('login.forgotPassword') }}
</nuxt-link>
</ds-space>

View File

@ -3,11 +3,7 @@
<ds-flex>
<ds-flex-item :width="{ base: '100%' }" centered>
<ds-space style="text-align: center;" margin-top="small" margin-bottom="xxx-small" centered>
<password-reset
@handleSubmitted="handlePasswordResetRequested"
v-if="!passwordResetRequested"
/>
<verify-code v-else @passwordResetResponse="handlePasswordResetResponse" />
<nuxt-child />
</ds-space>
</ds-flex-item>
</ds-flex>
@ -15,29 +11,7 @@
</template>
<script>
import PasswordReset from '~/components/PasswordReset/PasswordReset'
import VerifyCode from '~/components/PasswordReset/VerifyCode'
export default {
layout: 'default',
data() {
return {
passwordResetRequested: false,
}
},
components: {
PasswordReset,
VerifyCode,
},
methods: {
handlePasswordResetRequested() {
this.passwordResetRequested = true
},
handlePasswordResetResponse(response) {
if (response === 'success') {
this.$router.push('login')
}
},
},
}
</script>

View File

@ -0,0 +1,18 @@
<template>
<password-reset @handleSubmitted="handlePasswordResetRequested" />
</template>
<script>
import PasswordReset from '~/components/PasswordReset/PasswordReset'
export default {
components: {
PasswordReset,
},
methods: {
handlePasswordResetRequested() {
this.$router.push('verify-code')
},
},
}
</script>

View File

@ -0,0 +1,20 @@
<template>
<verify-code @passwordResetResponse="handlePasswordResetResponse" />
</template>
<script>
import VerifyCode from '~/components/PasswordReset/VerifyCode'
export default {
components: {
VerifyCode,
},
methods: {
handlePasswordResetResponse(response) {
if (response === 'success') {
this.$router.push('login')
}
},
},
}
</script>