merge: upstream

This commit is contained in:
Marie 2024-02-03 20:19:44 +01:00
commit 11628e4b6a
No known key found for this signature in database
GPG key ID: 56569BBE47D2C828
285 changed files with 3413 additions and 1913 deletions

View file

@ -7,7 +7,7 @@ SPDX-License-Identifier: AGPL-3.0-only
<MkModalWindow
ref="dialog"
:width="400"
@close="dialog.close()"
@close="dialog?.close()"
@closed="$emit('closed')"
>
<template v-if="announcement" #header>:{{ announcement.title }}:</template>
@ -64,14 +64,14 @@ import MkRadios from '@/components/MkRadios.vue';
const props = defineProps<{
user: Misskey.entities.User,
announcement?: any,
announcement?: Misskey.entities.Announcement,
}>();
const dialog = ref<InstanceType<typeof MkModalWindow> | null>(null);
const title = ref<string>(props.announcement ? props.announcement.title : '');
const text = ref<string>(props.announcement ? props.announcement.text : '');
const icon = ref<string>(props.announcement ? props.announcement.icon : 'info');
const display = ref<string>(props.announcement ? props.announcement.display : 'dialog');
const title = ref(props.announcement ? props.announcement.title : '');
const text = ref(props.announcement ? props.announcement.text : '');
const icon = ref(props.announcement ? props.announcement.icon : 'info');
const display = ref(props.announcement ? props.announcement.display : 'dialog');
const needConfirmationToRead = ref(props.announcement ? props.announcement.needConfirmationToRead : false);
const emit = defineEmits<{
@ -92,18 +92,18 @@ async function done() {
if (props.announcement) {
await os.apiWithDialog('admin/announcements/update', {
id: props.announcement.id,
...params,
id: props.announcement.id,
});
emit('done', {
updated: {
id: props.announcement.id,
...params,
id: props.announcement.id,
},
});
dialog.value.close();
dialog.value?.close();
} else {
const created = await os.apiWithDialog('admin/announcements/create', params);
@ -111,7 +111,7 @@ async function done() {
created: created,
});
dialog.value.close();
dialog.value?.close();
}
}
@ -122,14 +122,16 @@ async function del() {
});
if (canceled) return;
misskeyApi('admin/announcements/delete', {
id: props.announcement.id,
}).then(() => {
emit('done', {
deleted: true,
if (props.announcement) {
await misskeyApi('admin/announcements/delete', {
id: props.announcement.id,
});
dialog.value.close();
}
emit('done', {
deleted: true,
});
dialog.value?.close();
}
</script>