diff --git a/packages/client/src/components/MkSignupDialog.vue b/packages/client/src/components/MkSignupDialog.vue
index 25e703952..8aceb62d1 100644
--- a/packages/client/src/components/MkSignupDialog.vue
+++ b/packages/client/src/components/MkSignupDialog.vue
@@ -2,14 +2,14 @@
 <XModalWindow
 	ref="dialog"
 	:width="400"
-	@close="dialog.close()"
+	@close="dialog!.close()"
 	@closed="$emit('closed')"
 >
 	<template #header>{{ i18n.ts.signup }}</template>
 
 	<div class="_monolithic_">
 		<div class="_section">
-			<XSignup :auto-set="autoSet" @signup="onSignup" @signupEmailPending="onSignupEmailPending"/>
+			<XSignup :auto-set="autoSet" @signup="onSignup" @signup-email-pending="onSignupEmailPending"/>
 		</div>
 	</div>
 </XModalWindow>
@@ -36,10 +36,10 @@ const dialog = $ref<InstanceType<typeof XModalWindow>>();
 
 function onSignup(res) {
 	emit('done', res);
-	dialog.close();
+	dialog?.close();
 }
 
 function onSignupEmailPending() {
-	dialog.close();
+	dialog?.close();
 }
 </script>