2023-07-27 14:31:52 +09:00
|
|
|
<!--
|
2024-02-13 15:59:27 +00:00
|
|
|
SPDX-FileCopyrightText: syuilo and misskey-project
|
2023-07-27 14:31:52 +09:00
|
|
|
SPDX-License-Identifier: AGPL-3.0-only
|
|
|
|
|
-->
|
|
|
|
|
|
2020-01-30 04:37:25 +09:00
|
|
|
<template>
|
2023-01-06 09:41:14 +09:00
|
|
|
<MkModalWindow
|
2022-07-20 22:24:26 +09:00
|
|
|
ref="dialog"
|
2024-07-14 15:27:52 +09:00
|
|
|
:width="400"
|
2024-09-26 08:25:33 +09:00
|
|
|
:height="450"
|
2022-05-19 13:28:08 +02:00
|
|
|
@close="onClose"
|
2022-01-16 06:59:35 +09:00
|
|
|
@closed="emit('closed')"
|
2020-10-17 20:12:00 +09:00
|
|
|
>
|
2022-07-20 22:24:26 +09:00
|
|
|
<template #header>{{ i18n.ts.login }}</template>
|
2020-10-17 20:12:00 +09:00
|
|
|
|
2023-05-19 13:58:09 +09:00
|
|
|
<MkSpacer :marginMin="20" :marginMax="28">
|
2024-07-14 15:27:52 +09:00
|
|
|
<MkSignin :autoSet="autoSet" :message="message" :openOnRemote="openOnRemote" @login="onLogin"/>
|
2023-01-06 09:41:14 +09:00
|
|
|
</MkSpacer>
|
|
|
|
|
</MkModalWindow>
|
2020-01-30 04:37:25 +09:00
|
|
|
</template>
|
|
|
|
|
|
2022-01-16 06:59:35 +09:00
|
|
|
<script lang="ts" setup>
|
2023-12-07 14:42:09 +09:00
|
|
|
import { shallowRef } from 'vue';
|
2024-07-14 15:27:52 +09:00
|
|
|
import type { OpenOnRemoteOptions } from '@/scripts/please-login.js';
|
2022-08-31 00:24:33 +09:00
|
|
|
import MkSignin from '@/components/MkSignin.vue';
|
2023-01-06 09:41:14 +09:00
|
|
|
import MkModalWindow from '@/components/MkModalWindow.vue';
|
2023-09-19 16:37:43 +09:00
|
|
|
import { i18n } from '@/i18n.js';
|
2020-01-30 04:37:25 +09:00
|
|
|
|
2023-03-09 14:27:16 +09:00
|
|
|
withDefaults(defineProps<{
|
2022-01-16 06:59:35 +09:00
|
|
|
autoSet?: boolean;
|
2022-05-19 13:28:08 +02:00
|
|
|
message?: string,
|
2024-07-14 15:27:52 +09:00
|
|
|
openOnRemote?: OpenOnRemoteOptions,
|
2022-01-16 06:59:35 +09:00
|
|
|
}>(), {
|
|
|
|
|
autoSet: false,
|
2022-07-20 22:24:26 +09:00
|
|
|
message: '',
|
2024-07-14 15:27:52 +09:00
|
|
|
openOnRemote: undefined,
|
2022-01-16 06:59:35 +09:00
|
|
|
});
|
2020-01-30 04:37:25 +09:00
|
|
|
|
2022-01-16 06:59:35 +09:00
|
|
|
const emit = defineEmits<{
|
2023-03-09 14:27:16 +09:00
|
|
|
(ev: 'done', v: any): void;
|
2022-05-19 13:28:08 +02:00
|
|
|
(ev: 'closed'): void;
|
|
|
|
|
(ev: 'cancelled'): void;
|
2022-01-16 06:59:35 +09:00
|
|
|
}>();
|
2020-01-30 04:37:25 +09:00
|
|
|
|
2023-12-07 14:42:09 +09:00
|
|
|
const dialog = shallowRef<InstanceType<typeof MkModalWindow>>();
|
2020-10-17 20:12:00 +09:00
|
|
|
|
2022-05-19 13:28:08 +02:00
|
|
|
function onClose() {
|
|
|
|
|
emit('cancelled');
|
2023-12-07 14:42:09 +09:00
|
|
|
if (dialog.value) dialog.value.close();
|
2022-05-19 13:28:08 +02:00
|
|
|
}
|
|
|
|
|
|
2022-01-16 06:59:35 +09:00
|
|
|
function onLogin(res) {
|
|
|
|
|
emit('done', res);
|
2023-12-07 14:42:09 +09:00
|
|
|
if (dialog.value) dialog.value.close();
|
2022-01-16 06:59:35 +09:00
|
|
|
}
|
2020-01-30 04:37:25 +09:00
|
|
|
</script>
|