wip
This commit is contained in:
parent
052df8fb1a
commit
41f149a35e
|
@ -659,6 +659,12 @@ useGlobalEvent('driveFilesMoved', (files, to) => {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
useGlobalEvent('driveFilesDeleted', (files) => {
|
||||||
|
for (const f of files) {
|
||||||
|
filesPaginator.removeItem(f.id);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
useGlobalEvent('driveFoldersMoved', (folders, to) => {
|
useGlobalEvent('driveFoldersMoved', (folders, to) => {
|
||||||
for (const f of folders) {
|
for (const f of folders) {
|
||||||
foldersPaginator.removeItem(f.id);
|
foldersPaginator.removeItem(f.id);
|
||||||
|
|
|
@ -43,6 +43,7 @@ import { misskeyApi } from '@/utility/misskey-api.js';
|
||||||
import { i18n } from '@/i18n.js';
|
import { i18n } from '@/i18n.js';
|
||||||
import { prefer } from '@/preferences.js';
|
import { prefer } from '@/preferences.js';
|
||||||
import { DI } from '@/di.js';
|
import { DI } from '@/di.js';
|
||||||
|
import { globalEvents } from '@/events.js';
|
||||||
|
|
||||||
const Sortable = defineAsyncComponent(() => import('vuedraggable').then(x => x.default));
|
const Sortable = defineAsyncComponent(() => import('vuedraggable').then(x => x.default));
|
||||||
|
|
||||||
|
@ -81,12 +82,13 @@ async function detachAndDeleteMedia(file: Misskey.entities.DriveFile) {
|
||||||
type: 'warning',
|
type: 'warning',
|
||||||
text: i18n.tsx.driveFileDeleteConfirm({ name: file.name }),
|
text: i18n.tsx.driveFileDeleteConfirm({ name: file.name }),
|
||||||
});
|
});
|
||||||
|
|
||||||
if (canceled) return;
|
if (canceled) return;
|
||||||
|
|
||||||
os.apiWithDialog('drive/files/delete', {
|
await os.apiWithDialog('drive/files/delete', {
|
||||||
fileId: file.id,
|
fileId: file.id,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
globalEvents.emit('driveFilesDeleted', [file]);
|
||||||
}
|
}
|
||||||
|
|
||||||
function toggleSensitive(file) {
|
function toggleSensitive(file) {
|
||||||
|
|
|
@ -15,7 +15,9 @@ type Events = {
|
||||||
noteDeleted: (noteId: Misskey.entities.Note['id']) => void;
|
noteDeleted: (noteId: Misskey.entities.Note['id']) => void;
|
||||||
driveFileCreated: (file: Misskey.entities.DriveFile) => void;
|
driveFileCreated: (file: Misskey.entities.DriveFile) => void;
|
||||||
driveFilesMoved: (files: Misskey.entities.DriveFile[], to: Misskey.entities.DriveFolder | null) => void;
|
driveFilesMoved: (files: Misskey.entities.DriveFile[], to: Misskey.entities.DriveFolder | null) => void;
|
||||||
|
driveFilesDeleted: (files: Misskey.entities.DriveFile[]) => void;
|
||||||
driveFoldersMoved: (folders: Misskey.entities.DriveFolder[], to: Misskey.entities.DriveFolder | null) => void;
|
driveFoldersMoved: (folders: Misskey.entities.DriveFolder[], to: Misskey.entities.DriveFolder | null) => void;
|
||||||
|
driveFoldersDeleted: (folders: Misskey.entities.DriveFolder[]) => void;
|
||||||
};
|
};
|
||||||
|
|
||||||
export const globalEvents = new EventEmitter<Events>();
|
export const globalEvents = new EventEmitter<Events>();
|
||||||
|
|
|
@ -81,6 +81,7 @@ import * as os from '@/os.js';
|
||||||
import { misskeyApi } from '@/utility/misskey-api.js';
|
import { misskeyApi } from '@/utility/misskey-api.js';
|
||||||
import { useRouter } from '@/router.js';
|
import { useRouter } from '@/router.js';
|
||||||
import { selectDriveFolder } from '@/utility/drive.js';
|
import { selectDriveFolder } from '@/utility/drive.js';
|
||||||
|
import { globalEvents } from '@/events.js';
|
||||||
|
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
|
|
||||||
|
@ -199,12 +200,14 @@ async function deleteFile() {
|
||||||
type: 'warning',
|
type: 'warning',
|
||||||
text: i18n.tsx.driveFileDeleteConfirm({ name: file.value.name }),
|
text: i18n.tsx.driveFileDeleteConfirm({ name: file.value.name }),
|
||||||
});
|
});
|
||||||
|
|
||||||
if (canceled) return;
|
if (canceled) return;
|
||||||
|
|
||||||
await os.apiWithDialog('drive/files/delete', {
|
await os.apiWithDialog('drive/files/delete', {
|
||||||
fileId: file.value.id,
|
fileId: file.value.id,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
globalEvents.emit('driveFilesDeleted', [file.value]);
|
||||||
|
|
||||||
router.push('/my/drive');
|
router.push('/my/drive');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -12,6 +12,7 @@ import { copyToClipboard } from '@/utility/copy-to-clipboard.js';
|
||||||
import * as os from '@/os.js';
|
import * as os from '@/os.js';
|
||||||
import { misskeyApi } from '@/utility/misskey-api.js';
|
import { misskeyApi } from '@/utility/misskey-api.js';
|
||||||
import { prefer } from '@/preferences.js';
|
import { prefer } from '@/preferences.js';
|
||||||
|
import { globalEvents } from '@/events.js';
|
||||||
|
|
||||||
function rename(file: Misskey.entities.DriveFile) {
|
function rename(file: Misskey.entities.DriveFile) {
|
||||||
os.inputText({
|
os.inputText({
|
||||||
|
@ -78,11 +79,13 @@ async function deleteFile(file: Misskey.entities.DriveFile) {
|
||||||
type: 'warning',
|
type: 'warning',
|
||||||
text: i18n.tsx.driveFileDeleteConfirm({ name: file.name }),
|
text: i18n.tsx.driveFileDeleteConfirm({ name: file.name }),
|
||||||
});
|
});
|
||||||
|
|
||||||
if (canceled) return;
|
if (canceled) return;
|
||||||
misskeyApi('drive/files/delete', {
|
|
||||||
|
await os.apiWithDialog('drive/files/delete', {
|
||||||
fileId: file.id,
|
fileId: file.id,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
globalEvents.emit('driveFilesDeleted', [file]);
|
||||||
}
|
}
|
||||||
|
|
||||||
export function getDriveFileMenu(file: Misskey.entities.DriveFile, folder?: Misskey.entities.DriveFolder | null): MenuItem[] {
|
export function getDriveFileMenu(file: Misskey.entities.DriveFile, folder?: Misskey.entities.DriveFolder | null): MenuItem[] {
|
||||||
|
|
Loading…
Reference in New Issue