diff options
| author | taichan <40626578+tai-cha@users.noreply.github.com> | 2025-02-08 17:33:09 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-02-08 08:33:09 +0000 |
| commit | 2f8d02024a389181794ee9e8f2b70ffbd057cf6f (patch) | |
| tree | 6b8c3b4cfb9a161b03ad2b33b29074ee33ac37fc /packages/frontend/src/components/MkPostFormAttaches.vue | |
| parent | enhance(frontend): クライアントエラー画面の多言語対応 (#15411) (diff) | |
| download | sharkey-2f8d02024a389181794ee9e8f2b70ffbd057cf6f.tar.gz sharkey-2f8d02024a389181794ee9e8f2b70ffbd057cf6f.tar.bz2 sharkey-2f8d02024a389181794ee9e8f2b70ffbd057cf6f.zip | |
feat(frontend): 画像を投稿前にプレビュー可能に (#15341)
* feat(client): 画像をプレビュー可能に
* Update Changelog
* SPDX
* 消えてたのFix
* Add storybook for MkImgPreviewDialog
* backgroundのスタイル変更
Co-authored-by: kakkokari-gtyih <67428053+kakkokari-gtyih@users.noreply.github.com>
* Add MkImgPreviewDialog to storybook generator
* Update packages/frontend/.storybook/generate.tsx
---------
Co-authored-by: kakkokari-gtyih <67428053+kakkokari-gtyih@users.noreply.github.com>
Diffstat (limited to 'packages/frontend/src/components/MkPostFormAttaches.vue')
| -rw-r--r-- | packages/frontend/src/components/MkPostFormAttaches.vue | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/packages/frontend/src/components/MkPostFormAttaches.vue b/packages/frontend/src/components/MkPostFormAttaches.vue index 1336b61356..33fe82b759 100644 --- a/packages/frontend/src/components/MkPostFormAttaches.vue +++ b/packages/frontend/src/components/MkPostFormAttaches.vue @@ -22,20 +22,24 @@ SPDX-License-Identifier: AGPL-3.0-only </div> </template> </Sortable> - <p :class="[$style.remain, { - [$style.exceeded]: props.modelValue.length > 16, - }]">{{ 16 - props.modelValue.length }}/16</p> + <p + :class="[$style.remain, { + [$style.exceeded]: props.modelValue.length > 16, + }]" + > + {{ 16 - props.modelValue.length }}/16 + </p> </div> </template> <script lang="ts" setup> import { defineAsyncComponent, inject } from 'vue'; import * as Misskey from 'misskey-js'; +import type { MenuItem } from '@/types/menu'; import MkDriveFileThumbnail from '@/components/MkDriveFileThumbnail.vue'; import * as os from '@/os.js'; import { misskeyApi } from '@/scripts/misskey-api.js'; import { i18n } from '@/i18n.js'; -import type { MenuItem } from '@/types/menu.js'; const Sortable = defineAsyncComponent(() => import('vuedraggable').then(x => x.default)); @@ -168,6 +172,14 @@ function showFileMenu(file: Misskey.entities.DriveFile, ev: MouseEvent | Keyboar text: i18n.ts.cropImage, icon: 'ti ti-crop', action: () : void => { crop(file); }, + }, { + text: i18n.ts.preview, + icon: 'ti ti-photo-search', + action: () => { + os.popup(defineAsyncComponent(() => import('@/components/MkImgPreviewDialog.vue')), { + file: file, + }); + }, }); } |