File tree Expand file tree Collapse file tree 3 files changed +25
-2
lines changed Expand file tree Collapse file tree 3 files changed +25
-2
lines changed Original file line number Diff line number Diff line change 7
7
getRecord ,
8
8
} from '@permanentorg/sdk' ;
9
9
import {
10
+ deduplicateFileEntries ,
10
11
generateAttributesForFile ,
11
12
generateAttributesForFolder ,
12
13
generateDefaultAttributes ,
@@ -293,9 +294,9 @@ export class PermanentFileSystem {
293
294
requestedPath ,
294
295
) ,
295
296
) ;
296
- return [
297
+ return deduplicateFileEntries ( [
297
298
...folderFileEntities ,
298
299
...recordFileEntities ,
299
- ] ;
300
+ ] ) ;
300
301
}
301
302
}
Original file line number Diff line number Diff line change
1
+ import type { FileEntry } from 'ssh2' ;
2
+
3
+ const findFirstIndexOfFilename = (
4
+ fileEntries : FileEntry [ ] ,
5
+ filename : string ,
6
+ ) : number => fileEntries . findIndex (
7
+ ( fileEntry ) => fileEntry . filename === filename ,
8
+ ) ;
9
+
10
+ const isFirstInstanceOfItsFilename = (
11
+ fileEntry : FileEntry ,
12
+ index : number ,
13
+ fileEntries : FileEntry [ ] ,
14
+ ) : boolean => index === findFirstIndexOfFilename (
15
+ fileEntries ,
16
+ fileEntry . filename ,
17
+ ) ;
18
+
19
+ export const deduplicateFileEntries = (
20
+ fileEntries : FileEntry [ ] ,
21
+ ) : FileEntry [ ] => fileEntries . filter ( isFirstInstanceOfItsFilename ) ;
Original file line number Diff line number Diff line change
1
+ export * from './deduplicateFileEntries' ;
1
2
export * from './generateAttributesForFile' ;
2
3
export * from './generateAttributesForFolder' ;
3
4
export * from './generateDefaultAttributes' ;
You can’t perform that action at this time.
0 commit comments