summaryrefslogtreecommitdiff
path: root/src/remote/activitypub/act/create/image.ts
blob: f1462f4ee47d604861c3139b7389fcd812f47fd1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import * as debug from 'debug';

import uploadFromUrl from '../../../../services/drive/upload-from-url';
import { IRemoteUser } from '../../../../models/user';
import { IDriveFile } from '../../../../models/drive-file';

const log = debug('misskey:activitypub');

export default async function(actor: IRemoteUser, image): Promise<IDriveFile> {
	if ('attributedTo' in image && actor.uri !== image.attributedTo) {
		log(`invalid image: ${JSON.stringify(image, null, 2)}`);
		throw new Error('invalid image');
	}

	log(`Creating the Image: ${image.url}`);

	return await uploadFromUrl(image.url, actor);
}