diff options
| author | かっこかり <67428053+kakkokari-gtyih@users.noreply.github.com> | 2024-04-13 12:51:37 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-04-13 12:51:37 +0900 |
| commit | f5100cc81f6ffdcfe2b9bf6041f97098a4e82d02 (patch) | |
| tree | 6bfd501343523a276ab0168d238819a17c9a877d /packages/frontend/src/scripts | |
| parent | enhance(frontend): add link of 2fa guide (diff) | |
| download | sharkey-f5100cc81f6ffdcfe2b9bf6041f97098a4e82d02.tar.gz sharkey-f5100cc81f6ffdcfe2b9bf6041f97098a4e82d02.tar.bz2 sharkey-f5100cc81f6ffdcfe2b9bf6041f97098a4e82d02.zip | |
feat(frontend): アップロードするファイルの名前をランダム文字列にできるように (#13688)
* feat(frontend): アップロードするファイルの名前をランダム文字列にできるように
* Update Changelog
* refactor
* 設定項目を移動
* fix
* 「オリジナルのファイル名を保持」に変更
* 拡張子を付加するように
Diffstat (limited to 'packages/frontend/src/scripts')
| -rw-r--r-- | packages/frontend/src/scripts/upload.ts | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/packages/frontend/src/scripts/upload.ts b/packages/frontend/src/scripts/upload.ts index 6c46b2bc1b..3e947183c9 100644 --- a/packages/frontend/src/scripts/upload.ts +++ b/packages/frontend/src/scripts/upload.ts @@ -5,6 +5,7 @@ import { reactive, ref } from 'vue'; import * as Misskey from 'misskey-js'; +import { v4 as uuid } from 'uuid'; import { readAndCompressImage } from '@misskey-dev/browser-image-resizer'; import { getCompressionConfig } from './upload/compress-config.js'; import { defaultStore } from '@/store.js'; @@ -39,13 +40,16 @@ export function uploadFile( if (folder && typeof folder === 'object') folder = folder.id; return new Promise((resolve, reject) => { - const id = Math.random().toString(); + const id = uuid(); const reader = new FileReader(); reader.onload = async (): Promise<void> => { + const filename = name ?? file.name ?? 'untitled'; + const extension = filename.split('.').length > 1 ? '.' + filename.split('.').pop() : ''; + const ctx = reactive<Uploading>({ - id: id, - name: name ?? file.name ?? 'untitled', + id, + name: defaultStore.state.keepOriginalFilename ? filename : id + extension, progressMax: undefined, progressValue: undefined, img: window.URL.createObjectURL(file), |