diff options
| author | Henry Jameson <me@hjkos.com> | 2023-04-13 01:11:20 +0300 |
|---|---|---|
| committer | Henry Jameson <me@hjkos.com> | 2023-04-13 01:11:20 +0300 |
| commit | 9aaa8a86f52bc97838c768a8859919a3ad6fd54f (patch) | |
| tree | 0b17c009f4151eb567fdf1d9ccb472be09130dfd /src/services | |
| parent | d8ed541d12382ec58ea1ab75acb1ca153e22f2e4 (diff) | |
initial implementation of attachmentsetting
Diffstat (limited to 'src/services')
| -rw-r--r-- | src/services/file_type/file_type.service.js | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/services/file_type/file_type.service.js b/src/services/file_type/file_type.service.js index 5182ecd1..b92c6c64 100644 --- a/src/services/file_type/file_type.service.js +++ b/src/services/file_type/file_type.service.js @@ -1,7 +1,7 @@ // TODO this func might as well take the entire file and use its mimetype // or the entire service could be just mimetype service that only operates // on mimetypes and not files. Currently the naming is confusing. -const fileType = mimetype => { +export const fileType = mimetype => { if (mimetype.match(/flash/)) { return 'flash' } @@ -25,11 +25,25 @@ const fileType = mimetype => { return 'unknown' } -const fileMatchesSomeType = (types, file) => +export const fileTypeExt = url => { + if (url.match(/\.(png|jpe?g|gif|webp|avif)$/)) { + return 'image' + } + if (url.match(/\.(ogv|mp4|webm|mov)$/)) { + return 'video' + } + if (url.match(/\.(it|s3m|mod|umx|mp3|aac|m4a|flac|alac|ogg|oga|opus|wav|ape|midi?)$/)) { + return 'audio' + } + return 'unknown' +} + +export const fileMatchesSomeType = (types, file) => types.some(type => fileType(file.mimetype) === type) const fileTypeService = { fileType, + fileTypeExt, fileMatchesSomeType } |
