Skip to content
Snippets Groups Projects
delete-all-files-of-a-user.ts 628 B
Newer Older
import define from '../../define';
import { deleteFile } from '@/services/drive/delete-file';
import { DriveFiles } from '@/models/index';
syuilo's avatar
syuilo committed

export const meta = {
	tags: ['admin'],

syuilo's avatar
syuilo committed
	requireModerator: true,
} as const;
syuilo's avatar
syuilo committed

tamaina's avatar
tamaina committed
export const paramDef = {
	type: 'object',
	properties: {
		userId: { type: 'string', format: 'misskey:id' },
syuilo's avatar
syuilo committed
	},
	required: ['userId'],
syuilo's avatar
syuilo committed

syuilo's avatar
syuilo committed
// eslint-disable-next-line import/no-default-export
export default define(meta, paramDef, async (ps, me) => {
syuilo's avatar
syuilo committed
	const files = await DriveFiles.find({
syuilo's avatar
syuilo committed
		userId: ps.userId,
syuilo's avatar
syuilo committed
	});

	for (const file of files) {
syuilo's avatar
syuilo committed
		deleteFile(file);
syuilo's avatar
syuilo committed
	}
});