aboutsummaryrefslogtreecommitdiff
path: root/src/api/utils
diff options
context:
space:
mode:
Diffstat (limited to 'src/api/utils')
-rw-r--r--src/api/utils/ThumbUtil.js8
-rw-r--r--src/api/utils/Util.js3
2 files changed, 9 insertions, 2 deletions
diff --git a/src/api/utils/ThumbUtil.js b/src/api/utils/ThumbUtil.js
index 2931d3b..b449a6c 100644
--- a/src/api/utils/ThumbUtil.js
+++ b/src/api/utils/ThumbUtil.js
@@ -72,10 +72,16 @@ class ThumbUtil {
}
static getFileThumbnail(filename) {
+ // TODO: refactor so we don't do the same compare multiple times (poor cpu cycles)
if (!filename) return null;
const ext = path.extname(filename).toLowerCase();
if (!ThumbUtil.imageExtensions.includes(ext) && !ThumbUtil.videoExtensions.includes(ext)) return null;
- return `${filename.slice(0, -ext.length)}.png`;
+ if (ThumbUtil.imageExtensions.includes(ext)) return { thumb: `${filename.slice(0, -ext.length)}.png` };
+ if (ThumbUtil.videoExtensions.includes(ext))
+ return {
+ thumb: `${filename.slice(0, -ext.length)}.png`,
+ preview: `${filename.slice(0, -ext.length)}.webm`
+ };
}
static async removeThumbs(thumbName) {
diff --git a/src/api/utils/Util.js b/src/api/utils/Util.js
index c997581..496ea18 100644
--- a/src/api/utils/Util.js
+++ b/src/api/utils/Util.js
@@ -40,10 +40,11 @@ class Util {
the site and the API under the same domain. Pls fix.
*/
file.url = `${process.env.DOMAIN}/${file.name}`;
- const thumb = ThumbUtil.getFileThumbnail(file.name);
+ const { thumb, preview } = ThumbUtil.getFileThumbnail(file.name) || {};
if (thumb) {
file.thumb = `${process.env.DOMAIN}/thumbs/${thumb}`;
file.thumbSquare = `${process.env.DOMAIN}/thumbs/square/${thumb}`;
+ file.preview = preview && `${process.env.DOMAIN}/thumbs/preview/${preview}`;
}
return file;
}