This commit is contained in:
syuilo 2025-05-13 20:15:44 +09:00
parent 01976c02fb
commit 292d004169
7 changed files with 25 additions and 21 deletions

View File

@ -44,6 +44,7 @@ import { copyToClipboard } from '@/utility/copy-to-clipboard.js';
import { prefer } from '@/preferences.js';
import { globalEvents } from '@/events.js';
import { checkDragDataType, getDragData, setDragData } from '@/drag-and-drop.js';
import { selectDriveFolder } from '@/utility/drive.js';
const props = withDefaults(defineProps<{
folder: Misskey.entities.DriveFolder;
@ -220,7 +221,7 @@ function rename() {
}
function move() {
os.selectDriveFolder().then(folder => {
selectDriveFolder(null).then(folder => {
if (folder[0] && folder[0].id === props.folder.id) return;
misskeyApi('drive/folders/update', {

View File

@ -8,7 +8,6 @@
import { markRaw, ref, defineAsyncComponent, nextTick } from 'vue';
import { EventEmitter } from 'eventemitter3';
import * as Misskey from 'misskey-js';
import { getProxiedImageUrl } from './utility/media-proxy.js';
import type { Component, Ref } from 'vue';
import type { ComponentProps as CP } from 'vue-component-type-helpers';
import type { Form, GetFormResultType } from '@/utility/form.js';
@ -593,21 +592,6 @@ export async function selectUser(opts: { includeSelf?: boolean; localOnly?: bool
});
}
export async function selectDriveFolder(initialFolder: Misskey.entities.DriveFolder['id'] | null): Promise<Misskey.entities.DriveFolder[]> {
return new Promise(resolve => {
const { dispose } = popup(defineAsyncComponent(() => import('@/components/MkDriveFolderSelectDialog.vue')), {
initialFolder,
}, {
done: folders => {
if (folders) {
resolve(folders);
}
},
closed: () => dispose(),
});
});
}
export async function selectRole(params: ComponentProps<typeof MkRoleSelectDialog_TypeReferenceOnly>): Promise<
{ canceled: true; result: undefined; } |
{ canceled: false; result: Misskey.entities.Role[] }

View File

@ -80,6 +80,7 @@ import { i18n } from '@/i18n.js';
import * as os from '@/os.js';
import { misskeyApi } from '@/utility/misskey-api.js';
import { useRouter } from '@/router.js';
import { selectDriveFolder } from '@/utility/drive.js';
const router = useRouter();
@ -127,7 +128,7 @@ function postThis() {
function move() {
if (!file.value) return;
os.selectDriveFolder().then(folder => {
selectDriveFolder(null).then(folder => {
misskeyApi('drive/files/update', {
fileId: file.value.id,
folderId: folder[0] ? folder[0].id : null,

View File

@ -99,6 +99,7 @@ import { ensureSignin } from '@/i.js';
import { prefer } from '@/preferences.js';
import MkPreferenceContainer from '@/components/MkPreferenceContainer.vue';
import MkFeatureBanner from '@/components/MkFeatureBanner.vue';
import { selectDriveFolder } from '@/utility/drive.js';
const $i = ensureSignin();
@ -138,7 +139,7 @@ if (prefer.s.uploadFolder) {
}
function chooseUploadFolder() {
os.selectDriveFolder().then(async folder => {
selectDriveFolder(null).then(async folder => {
prefer.commit('uploadFolder', folder[0] ? folder[0].id : null);
os.success();
if (prefer.s.uploadFolder) {

View File

@ -229,3 +229,18 @@ export async function createCroppedImageDriveFileFromImageDriveFile(imageDriveFi
};
});
}
export async function selectDriveFolder(initialFolder: Misskey.entities.DriveFolder['id'] | null): Promise<Misskey.entities.DriveFolder[]> {
return new Promise(resolve => {
const { dispose } = os.popup(defineAsyncComponent(() => import('@/components/MkDriveFolderSelectDialog.vue')), {
initialFolder,
}, {
done: folders => {
if (folders) {
resolve(folders);
}
},
closed: () => dispose(),
});
});
}

View File

@ -5,6 +5,7 @@
import * as Misskey from 'misskey-js';
import { defineAsyncComponent } from 'vue';
import { selectDriveFolder } from './drive.js';
import type { MenuItem } from '@/types/menu.js';
import { i18n } from '@/i18n.js';
import { copyToClipboard } from '@/utility/copy-to-clipboard.js';
@ -42,7 +43,7 @@ function describe(file: Misskey.entities.DriveFile) {
}
function move(file: Misskey.entities.DriveFile) {
os.selectDriveFolder().then(folder => {
selectDriveFolder(null).then(folder => {
misskeyApi('drive/files/update', {
fileId: file.id,
folderId: folder[0] ? folder[0].id : null,

View File

@ -26,6 +26,7 @@ import type { GetFormResultType } from '@/utility/form.js';
import * as os from '@/os.js';
import { misskeyApi } from '@/utility/misskey-api.js';
import { i18n } from '@/i18n.js';
import { selectDriveFolder } from '@/utility/drive.js';
const name = 'slideshow';
@ -93,7 +94,7 @@ const fetch = () => {
};
const choose = () => {
os.selectDriveFolder().then(folder => {
selectDriveFolder(null).then(folder => {
if (folder[0] == null) {
return;
}