diff options
| author | syuilo <Syuilotan@yahoo.co.jp> | 2022-12-31 19:46:16 +0900 |
|---|---|---|
| committer | syuilo <Syuilotan@yahoo.co.jp> | 2022-12-31 19:46:16 +0900 |
| commit | c05ad8990a9cb9c3366fc00873aa800f6f83c944 (patch) | |
| tree | 0db43c7e7cba7d674e3f13336028c3d99daac1fb /packages/frontend/src/components/MkPostFormDialog.vue | |
| parent | Merge branch 'develop' of https://github.com/misskey-dev/misskey into develop (diff) | |
| download | sharkey-c05ad8990a9cb9c3366fc00873aa800f6f83c944.tar.gz sharkey-c05ad8990a9cb9c3366fc00873aa800f6f83c944.tar.bz2 sharkey-c05ad8990a9cb9c3366fc00873aa800f6f83c944.zip | |
:art:
Diffstat (limited to 'packages/frontend/src/components/MkPostFormDialog.vue')
| -rw-r--r-- | packages/frontend/src/components/MkPostFormDialog.vue | 49 |
1 files changed, 38 insertions, 11 deletions
diff --git a/packages/frontend/src/components/MkPostFormDialog.vue b/packages/frontend/src/components/MkPostFormDialog.vue index 6dabb1db14..71c07ed658 100644 --- a/packages/frontend/src/components/MkPostFormDialog.vue +++ b/packages/frontend/src/components/MkPostFormDialog.vue @@ -1,19 +1,46 @@ <template> -<MkModal ref="modal" :prefer-type="'dialog:top'" @click="$refs.modal.close()" @closed="$emit('closed')"> - <MkPostForm v-bind="$attrs" @posted="$refs.modal.close()" @cancel="$refs.modal.close()" @esc="$refs.modal.close()"/> +<MkModal ref="modal" :prefer-type="'dialog:top'" @click="modal.close()" @closed="onModalClosed()"> + <MkPostForm ref="form" v-bind="props" autofocus freeze-after-posted @posted="onPosted" @cancel="modal.close()" @esc="modal.close()"/> </MkModal> </template> -<script lang="ts"> -import { defineComponent } from 'vue'; +<script lang="ts" setup> +import { } from 'vue'; +import * as misskey from 'misskey-js'; import MkModal from '@/components/MkModal.vue'; import MkPostForm from '@/components/MkPostForm.vue'; -export default defineComponent({ - components: { - MkModal, - MkPostForm, - }, - emits: ['closed'], -}); +const props = defineProps<{ + reply?: misskey.entities.Note; + renote?: misskey.entities.Note; + channel?: any; // TODO + mention?: misskey.entities.User; + specified?: misskey.entities.User; + initialText?: string; + initialVisibility?: typeof misskey.noteVisibilities; + initialFiles?: misskey.entities.DriveFile[]; + initialLocalOnly?: boolean; + initialVisibleUsers?: misskey.entities.User[]; + initialNote?: misskey.entities.Note; + instant?: boolean; + fixed?: boolean; + autofocus?: boolean; +}>(); + +const emit = defineEmits<{ + (ev: 'closed'): void; +}>(); + +let modal = $ref<InstanceType<typeof MkModal>>(); +let form = $ref<InstanceType<typeof MkPostForm>>(); + +function onPosted() { + modal.close({ + useSendAnimation: true, + }); +} + +function onModalClosed() { + emit('closed'); +} </script> |