@@ -25,26 +25,30 @@ function init() {
25
25
appId : 'files' ,
26
26
label : t ( 'files' , 'In folder' ) ,
27
27
icon : imagePath ( 'files' , 'app.svg' ) ,
28
- callback : ( ) => {
29
- const filepicker = getFilePickerBuilder ( 'Pick plain text files' )
30
- . addMimeTypeFilter ( 'httpd/unix-directory' )
31
- . allowDirectories ( true )
32
- . addButton ( {
33
- label : 'Pick' ,
34
- callback : ( nodes : Node [ ] ) => {
35
- logger . info ( 'Folder picked' , { folder : nodes [ 0 ] } )
36
- const folder = nodes [ 0 ]
37
- emit ( 'nextcloud:unified-search:add-filter' , {
38
- id : 'in-folder' ,
39
- appId : 'files' ,
40
- payload : folder ,
41
- filterUpdateText : t ( 'files' , 'Search in folder: {folder}' , { folder : folder . basename } ) ,
42
- filterParams : { path : folder . path } ,
43
- } )
44
- } ,
45
- } )
46
- . build ( )
47
- filepicker . pick ( )
28
+ callback : ( showFilePicker : boolean = true ) => {
29
+ if ( showFilePicker ) {
30
+ const filepicker = getFilePickerBuilder ( 'Pick plain text files' )
31
+ . addMimeTypeFilter ( 'httpd/unix-directory' )
32
+ . allowDirectories ( true )
33
+ . addButton ( {
34
+ label : 'Pick' ,
35
+ callback : ( nodes : Node [ ] ) => {
36
+ logger . info ( 'Folder picked' , { folder : nodes [ 0 ] } )
37
+ const folder = nodes [ 0 ]
38
+ emit ( 'nextcloud:unified-search:add-filter' , {
39
+ id : 'in-folder' ,
40
+ appId : 'files' ,
41
+ payload : folder ,
42
+ filterUpdateText : t ( 'files' , 'Search in folder: {folder}' , { folder : folder . basename } ) ,
43
+ filterParams : { path : folder . path } ,
44
+ } )
45
+ } ,
46
+ } )
47
+ . build ( )
48
+ filepicker . pick ( )
49
+ } else {
50
+ logger . debug ( 'Folder search callback was handled without showing the file picker, it might already be open' )
51
+ }
48
52
} ,
49
53
} )
50
54
}
0 commit comments