feat(status): mention user

This commit is contained in:
三咲智子 2022-11-24 22:32:20 +08:00
parent 0587f5f994
commit 53cf994ffd
No known key found for this signature in database
GPG key ID: 69992F2250DFD93E
5 changed files with 60 additions and 32 deletions

View file

@ -84,23 +84,31 @@ const deleteAndRedraft = async () => {
// TODO confirm to overwrite
}
dialogDraft.draft.value = {
openPublishDialog({
params: { ...getParamsFromStatus(status), status: text! },
attachments: [],
}
openPublishDialog()
})
}
function editStatus() {
if (!dialogDraft.isEmpty) {
// TODO confirm to overwrite
}
dialogDraft.draft.value = {
openPublishDialog({
editingStatus: status,
params: getParamsFromStatus(status),
attachments: [],
}
openPublishDialog()
})
}
function mention() {
openPublishDialog({
params: {
...getParamsFromStatus(status),
status: `@${status.account.acct} `,
},
attachments: [],
})
}
</script>
@ -172,32 +180,40 @@ function editStatus() {
</CommonDropdownItem>
<template v-if="isAuthor">
<!-- TODO -->
<CommonDropdownItem
v-if="isAuthor" icon="i-ri:pushpin-line"
icon="i-ri:pushpin-line"
@click="togglePin"
>
{{ status.pinned ? 'Unpin on profile' : 'Pin on profile' }}
</CommonDropdownItem>
<CommonDropdownItem v-if="isAuthor" icon="i-ri:edit-line" @click="editStatus">
<CommonDropdownItem icon="i-ri:edit-line" @click="editStatus">
Edit
</CommonDropdownItem>
<CommonDropdownItem
v-if="isAuthor" icon="i-ri:delete-bin-line" text-red-600
icon="i-ri:delete-bin-line" text-red-600
@click="deleteStatus"
>
Delete
</CommonDropdownItem>
<CommonDropdownItem
v-if="isAuthor" icon="i-ri:eraser-line" text-red-600
icon="i-ri:eraser-line" text-red-600
@click="deleteAndRedraft"
>
Delete & re-draft
</CommonDropdownItem>
</template>
<!-- TODO not available when not the same server -->
<template v-else>
<CommonDropdownItem
icon="i-ri:at-line"
@click="mention"
>
Mention @{{ status.account.acct }}
</CommonDropdownItem>
</template>
</div>
</template>
</CommonDropdown>