summaryrefslogtreecommitdiff
path: root/packages/frontend/src/components/MkSchedulePostListDialog.vue
diff options
context:
space:
mode:
authordakkar <dakkar@thenautilus.net>2024-12-12 13:04:51 +0000
committerdakkar <dakkar@thenautilus.net>2024-12-12 13:04:51 +0000
commit6d4ae935921ef1dcc5c908f216f6e8affc6e60c3 (patch)
tree6c1f7724b63efa8f48f1c9e21f2789f9d9c000b2 /packages/frontend/src/components/MkSchedulePostListDialog.vue
parentfix(backend): アドレス入力で直接ユーザのプロフィールペー... (diff)
parentmerge: Schedule Notes (!804) (diff)
downloadsharkey-6d4ae935921ef1dcc5c908f216f6e8affc6e60c3.tar.gz
sharkey-6d4ae935921ef1dcc5c908f216f6e8affc6e60c3.tar.bz2
sharkey-6d4ae935921ef1dcc5c908f216f6e8affc6e60c3.zip
Merge branch 'develop' into feature/2024.10
Diffstat (limited to 'packages/frontend/src/components/MkSchedulePostListDialog.vue')
-rw-r--r--packages/frontend/src/components/MkSchedulePostListDialog.vue62
1 files changed, 62 insertions, 0 deletions
diff --git a/packages/frontend/src/components/MkSchedulePostListDialog.vue b/packages/frontend/src/components/MkSchedulePostListDialog.vue
new file mode 100644
index 0000000000..d0716ead79
--- /dev/null
+++ b/packages/frontend/src/components/MkSchedulePostListDialog.vue
@@ -0,0 +1,62 @@
+<!--
+SPDX-FileCopyrightText: syuilo and other misskey contributors
+SPDX-License-Identifier: AGPL-3.0-only
+-->
+
+<template>
+<MkModalWindow
+ ref="dialogEl"
+ :withOkButton="false"
+ @click="cancel()"
+ @close="cancel()"
+>
+ <template #header>{{ i18n.ts.schedulePostList }}</template>
+ <MkSpacer :marginMin="14" :marginMax="16">
+ <MkPagination ref="paginationEl" :pagination="pagination">
+ <template #empty>
+ <div class="_fullinfo">
+ <img :src="infoImageUrl" class="_ghost"/>
+ <div>{{ i18n.ts.nothing }}</div>
+ </div>
+ </template>
+
+ <template #default="{ items }">
+ <div class="_gaps">
+ <MkNoteSimple v-for="item in items" :key="item.id" :scheduled="true" :note="item.note" @editScheduleNote="listUpdate"/>
+ </div>
+ </template>
+ </MkPagination>
+ </MkSpacer>
+</MkModalWindow>
+</template>
+
+<script lang="ts" setup>
+import { ref } from 'vue';
+import type { Paging } from '@/components/MkPagination.vue';
+import MkModalWindow from '@/components/MkModalWindow.vue';
+import MkPagination from '@/components/MkPagination.vue';
+import MkNoteSimple from '@/components/MkNoteSimple.vue';
+import { i18n } from '@/i18n.js';
+import { infoImageUrl } from '@/instance.js';
+
+const emit = defineEmits<{
+ (ev: 'cancel'): void;
+}>();
+
+const dialogEl = ref();
+const cancel = () => {
+ emit('cancel');
+ dialogEl.value.close();
+};
+
+const paginationEl = ref();
+const pagination: Paging = {
+ endpoint: 'notes/schedule/list',
+ limit: 10,
+ offsetMode: true,
+};
+
+function listUpdate() {
+ paginationEl.value.reload();
+}
+</script>