You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
867 B
36 lines
867 B
|
|
|
|
export function useFileUtils() {
|
|
|
|
const isImage = (fileData) => {
|
|
return isFile(fileData) && fileData.resourceNode.resourceFile.image
|
|
}
|
|
|
|
const isVideo = (fileData) => {
|
|
return isFile(fileData) && fileData.resourceNode.resourceFile.video
|
|
}
|
|
|
|
const isAudio = (fileData) => {
|
|
const mimeType = fileData.resourceNode.resourceFile.mimeType
|
|
const isAudio = mimeType.split("/")[0].toLowerCase() === "audio"
|
|
return isFile(fileData) && isAudio
|
|
}
|
|
|
|
const isHtml = (fileData) => {
|
|
const mimeType = fileData.resourceNode.resourceFile.mimeType
|
|
const isHtml = mimeType.split("/")[1].toLowerCase() === "html"
|
|
return isFile(fileData) && isHtml
|
|
}
|
|
|
|
const isFile = (fileData) => {
|
|
return fileData.resourceNode && fileData.resourceNode.resourceFile
|
|
}
|
|
|
|
return {
|
|
isFile,
|
|
isImage,
|
|
isVideo,
|
|
isAudio,
|
|
isHtml,
|
|
}
|
|
}
|
|
|