misskey/src/misc/get-drive-file-url.ts

30 lines
842 B
TypeScript
Raw Normal View History

2018-10-31 13:35:02 +00:00
import { IDriveFile } from '../models/drive-file';
import config from '../config';
export default function(file: IDriveFile, thumbnail = false): string {
if (file == null) return null;
if (file.metadata.withoutChunks) {
if (thumbnail) {
return file.metadata.thumbnailUrl || file.metadata.webpublicUrl || file.metadata.url;
2018-10-31 13:35:02 +00:00
} else {
return file.metadata.webpublicUrl || file.metadata.url;
2018-10-31 13:35:02 +00:00
}
} else {
if (thumbnail) {
return `${config.drive_url}/${file._id}?thumbnail`;
} else {
return `${config.drive_url}/${file._id}?web`;
2018-10-31 13:35:02 +00:00
}
}
}
export function getOriginalUrl(file: IDriveFile) {
if (file.metadata && file.metadata.url) {
return file.metadata.url;
}
const accessKey = file.metadata ? file.metadata.accessKey : null;
return `${config.drive_url}/${file._id}${accessKey ? '?original=' + accessKey : ''}`;
}