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: [ publicPages: [
'login', 'login',
'logout', 'logout',
'password-reset', 'password-reset-request',
'password-reset-verify-code',
'password-reset-change-password',
'register', 'register',
'signup', 'signup',
'reset', 'reset',

View File

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

View File

@ -3,11 +3,7 @@
<ds-flex> <ds-flex>
<ds-flex-item :width="{ base: '100%' }" centered> <ds-flex-item :width="{ base: '100%' }" centered>
<ds-space style="text-align: center;" margin-top="small" margin-bottom="xxx-small" centered> <ds-space style="text-align: center;" margin-top="small" margin-bottom="xxx-small" centered>
<password-reset <nuxt-child />
@handleSubmitted="handlePasswordResetRequested"
v-if="!passwordResetRequested"
/>
<verify-code v-else @passwordResetResponse="handlePasswordResetResponse" />
</ds-space> </ds-space>
</ds-flex-item> </ds-flex-item>
</ds-flex> </ds-flex>
@ -15,29 +11,7 @@
</template> </template>
<script> <script>
import PasswordReset from '~/components/PasswordReset/PasswordReset'
import VerifyCode from '~/components/PasswordReset/VerifyCode'
export default { export default {
layout: '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> </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>