add a file filter

This commit is contained in:
Armen Rohalov
2025-03-26 21:35:13 +02:00
parent 9e6596f1e0
commit 94e21f9127
2 changed files with 21 additions and 2 deletions
+6
View File
@@ -3,6 +3,12 @@
margin: 15px 0; margin: 15px 0;
} }
.file-filter{
box-sizing: border-box;
width: 100%;
padding: 4px 8px;
}
.file-list-group { .file-list-group {
padding: 0; padding: 0;
list-style-type: none; list-style-type: none;
+15 -2
View File
@@ -1,4 +1,4 @@
import React from 'react'; import React, { useEffect, useState } from 'react';
import { useDropzone } from 'react-dropzone'; import { useDropzone } from 'react-dropzone';
import './MediaList.css' import './MediaList.css'
@@ -6,12 +6,25 @@ function MediaList({ files, selectedFile, onFileSelect, onDropNewFiles }) {
const { getRootProps, getInputProps, isDragActive } = useDropzone({ const { getRootProps, getInputProps, isDragActive } = useDropzone({
onDrop: onDropNewFiles, onDrop: onDropNewFiles,
}); });
const [filteredFiles, setFilteredFiles] = useState(files);
useEffect(()=>{
setFilteredFiles(files);
},[files])
const handleInputChange = (e) => {
const value = e.target.value;
const filtered = files.filter((file) => file.name.toLowerCase().includes(value.toLowerCase()));
setFilteredFiles(filtered);
}
return ( return (
<div className='explorer'> <div className='explorer'>
<h3 className='menu-title' >Files</h3> <h3 className='menu-title' >Files</h3>
<input className='file-filter' type='text' placeholder='Filename' onChange={handleInputChange}/>
<ul className='file-list-group' > <ul className='file-list-group' >
{files.map((file) => ( {filteredFiles.map((file) => (
<li <li
className='file-list-item' className='file-list-item'
key={file.name} key={file.name}