diff options
Diffstat (limited to 'packages/frontend/src/components/MkSignupDialog.vue')
| -rw-r--r-- | packages/frontend/src/components/MkSignupDialog.vue | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/packages/frontend/src/components/MkSignupDialog.vue b/packages/frontend/src/components/MkSignupDialog.vue new file mode 100644 index 0000000000..77497021c3 --- /dev/null +++ b/packages/frontend/src/components/MkSignupDialog.vue @@ -0,0 +1,46 @@ +<template> +<XModalWindow + ref="dialog" + :width="366" + :height="500" + @close="dialog.close()" + @closed="$emit('closed')" +> + <template #header>{{ i18n.ts.signup }}</template> + + <div class="_monolithic_"> + <div class="_section"> + <XSignup :auto-set="autoSet" @signup="onSignup" @signup-email-pending="onSignupEmailPending"/> + </div> + </div> +</XModalWindow> +</template> + +<script lang="ts" setup> +import { } from 'vue'; +import XSignup from '@/components/MkSignup.vue'; +import XModalWindow from '@/components/MkModalWindow.vue'; +import { i18n } from '@/i18n'; + +const props = withDefaults(defineProps<{ + autoSet?: boolean; +}>(), { + autoSet: false, +}); + +const emit = defineEmits<{ + (ev: 'done'): void; + (ev: 'closed'): void; +}>(); + +const dialog = $ref<InstanceType<typeof XModalWindow>>(); + +function onSignup(res) { + emit('done', res); + dialog.close(); +} + +function onSignupEmailPending() { + dialog.close(); +} +</script> |