diff options
| author | Marie <github@yuugi.dev> | 2025-05-08 19:47:18 +0200 |
|---|---|---|
| committer | Marie <github@yuugi.dev> | 2025-05-08 19:47:18 +0200 |
| commit | b753b2ea3aa34f60a0e38a4e7cf29ba3ec6db690 (patch) | |
| tree | 38f4089144c8348edbaba9c90545b23a12ace62c /packages/frontend/src/components | |
| parent | merge: merge the two post-form menus (!995) (diff) | |
| download | sharkey-b753b2ea3aa34f60a0e38a4e7cf29ba3ec6db690.tar.gz sharkey-b753b2ea3aa34f60a0e38a4e7cf29ba3ec6db690.tar.bz2 sharkey-b753b2ea3aa34f60a0e38a4e7cf29ba3ec6db690.zip | |
add poll edit warning
Diffstat (limited to 'packages/frontend/src/components')
| -rw-r--r-- | packages/frontend/src/components/MkPostForm.vue | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/packages/frontend/src/components/MkPostForm.vue b/packages/frontend/src/components/MkPostForm.vue index 5f4e40d513..ef3dafb593 100644 --- a/packages/frontend/src/components/MkPostForm.vue +++ b/packages/frontend/src/components/MkPostForm.vue @@ -186,6 +186,7 @@ const posted = ref(false); const text = ref(props.initialText ?? ''); const files = ref(props.initialFiles ?? []); const poll = ref<PollEditorModelValue | null>(null); +const initialPoll = ref<PollEditorModelValue | null>(null); const useCw = ref<boolean>(!!props.initialCw); const showPreview = ref(store.s.showPreview); watch(showPreview, () => store.set('showPreview', showPreview.value)); @@ -978,6 +979,15 @@ async function post(ev?: MouseEvent) { token = storedAccounts.find(x => x.id === postAccount.value?.id)?.token; } + if (postData.editId && postData.poll !== initialPoll.value) { + const { canceled } = await os.confirm({ + type: 'warning', + title: i18n.ts._confirmPollEdit.title, + text: i18n.ts._confirmPollEdit.text, + }); + if (canceled) return; + } + posting.value = true; misskeyApi(postData.editId ? 'notes/edit' : (postData.scheduleNote ? 'notes/schedule/create' : 'notes/create'), postData, token).then(() => { if (props.freezeAfterPosted) { @@ -1201,6 +1211,7 @@ onMounted(() => { expiresAt: init.poll.expiresAt ? (new Date(init.poll.expiresAt)).getTime() : null, expiredAfter: null, }; + if (props.editId) initialPoll.value = poll.value; } if (init.visibleUserIds) { misskeyApi('users/show', { userIds: init.visibleUserIds }).then(users => { |