diff --git a/islands/DirList.tsx b/islands/DirList.tsx index 40af353..a139525 100644 --- a/islands/DirList.tsx +++ b/islands/DirList.tsx @@ -37,12 +37,18 @@ interface DirListProps { } const natsortCompare = natsort(); +function toSorted(arr: T[], compareFn: (a:T,b:T) => number): T[]{ + const ret = Array.from(arr); + ret.sort(compareFn); + return ret; +} + export function DirList(props: DirListProps) { const data = props; const [files, setFiles] = useState( - data.files.toSorted( + toSorted(data.files,( (a,b)=> natsortCompare(a.name,b.name) - ) + )) ); return (