mirror of
https://github.com/lrnselfreliance/wrolpi.git
synced 2026-10-26 19:01:39 -04:00
Using violet to represent Audio files. Adding audio to file search filters.
This commit is contained in:
parent
272eef400c
commit
a655e44fb2
3 changed files with 14 additions and 4 deletions
|
|
@ -600,6 +600,8 @@ export function mimetypeColor(mimetype) {
|
|||
return 'purple'
|
||||
} else if (mimetype.startsWith('application/epub') || mimetype.startsWith('application/x-mobipocket-ebook')) {
|
||||
return 'yellow'
|
||||
} else if (mimetype.startsWith('audio/')) {
|
||||
return 'violet'
|
||||
}
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
|
|
@ -646,7 +648,9 @@ export function FileIcon({file, disabled = true, size = 'huge', ...props}) {
|
|||
} else if (mimetype.startsWith('audio/')) {
|
||||
props['name'] = 'file audio';
|
||||
} else if (mimetype.startsWith('application/octet-stream')) {
|
||||
if (lowerPath.endsWith('.stl')) {
|
||||
if (lowerPath.endsWith('.mp3')) {
|
||||
props['name'] = 'file audio';
|
||||
} else if (lowerPath.endsWith('.stl')) {
|
||||
props['name'] = 'cube';
|
||||
} else if (lowerPath.endsWith('.blend')) {
|
||||
props['name'] = 'cube';
|
||||
|
|
@ -828,6 +832,8 @@ export const filterToMimetypes = (filter) => {
|
|||
return ['text/html'];
|
||||
} else if (filter === 'pdf') {
|
||||
return ['application/pdf'];
|
||||
} else if (filter === 'audio') {
|
||||
return ['audio'];
|
||||
} else if (filter === 'ebook') {
|
||||
return ['application/epub+zip', 'application/x-mobipocket-ebook'];
|
||||
} else if (filter === 'image') {
|
||||
|
|
|
|||
|
|
@ -84,7 +84,7 @@ function getVideoModal(path) {
|
|||
|
||||
function getAudioModal(path) {
|
||||
const url = getMediaPathURL(path);
|
||||
const type = path['mimetype'] ? path['mimetype'] : 'audio/mpeg';
|
||||
const type = path['mimetype'] !== 'application/octet-stream' ? path['mimetype'] : 'audio/mpeg';
|
||||
return <React.Fragment>
|
||||
<ModalHeader>
|
||||
{path['path']}
|
||||
|
|
@ -140,7 +140,8 @@ export function FilePreviewWrapper({children}) {
|
|||
}
|
||||
|
||||
if (previewFile && !_.isEmpty(previewFile)) {
|
||||
const {mimetype, size} = previewFile;
|
||||
const {mimetype, size, path} = previewFile;
|
||||
const lowerPath = path.toLowerCase();
|
||||
console.debug(`useFilePreview path=${previewFile['path']} mimetype=${mimetype}`);
|
||||
const url = getMediaPathURL(previewFile);
|
||||
const downloadURL = getDownloadPathURL(previewFile);
|
||||
|
|
@ -158,6 +159,8 @@ export function FilePreviewWrapper({children}) {
|
|||
setModalContent(getEpubModal(previewFile), viewerURL, downloadURL);
|
||||
} else if (mimetype.startsWith('image/')) {
|
||||
setModalContent(getImageModal(previewFile), url);
|
||||
} else if (mimetype.startsWith('application/octet-stream') && lowerPath.endsWith('.mp3')) {
|
||||
setModalContent(getAudioModal(previewFile), url, downloadURL);
|
||||
} else {
|
||||
// No special handler for this file type, just open it.
|
||||
window.open(downloadURL);
|
||||
|
|
|
|||
|
|
@ -384,11 +384,12 @@ export function FilesSearchView({
|
|||
{key: 'archive', text: 'Archive', value: 'archive'},
|
||||
{key: 'pdf', text: 'PDF', value: 'pdf'},
|
||||
{key: 'ebook', text: 'eBook', value: 'ebook'},
|
||||
{key: 'audio', text: 'Audio', value: 'audio'},
|
||||
{key: 'image', text: 'Image', value: 'image'},
|
||||
{key: 'zip', text: 'ZIP', value: 'zip'},
|
||||
];
|
||||
|
||||
const {searchFiles, limit, setLimit, totalPages, activePage, setPage, filter} =
|
||||
const {searchFiles, limit, setLimit, totalPages, activePage, setPage} =
|
||||
useSearchFiles(24, emptySearch, model);
|
||||
|
||||
const {searchParams, updateQuery} = useQuery();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue