@@ -29,26 +29,28 @@ export class FileSystemProvider implements vscode.FileSystemProvider {
2929 const parent = await this . _lookupAsDirectory ( uri ) ;
3030 const sql = `CALL %Library.RoutineMgr_StudioOpenDialog(?,?,?,?,?,?,?)` ;
3131 const { query } = url . parse ( decodeURIComponent ( uri . toString ( ) ) , true ) ;
32- const type = String ( query && query . type ) . toLowerCase ( ) || "all" ;
32+ const type = query . type && query . type != "" ? query . type . toString ( ) : "all" ;
3333 const csp = query . csp === "" || query . csp === "1" ;
34- let filter : string = query . filter ? query . file . toString ( ) : "" ;
35- if ( csp ) {
36- filter = filter || "*" ;
34+ let filter = "" ;
35+ if ( query . filter && query . filter . length ) {
36+ filter = query . filter . toString ( ) ;
37+ } else if ( csp ) {
38+ filter = "*" ;
3739 } else if ( type === "rtn" ) {
38- filter = "*.inc,*.int ,*.mac " ;
40+ filter = "*.inc,*.mac ,*.int " ;
3941 } else if ( type === "cls" ) {
4042 filter = "*.cls" ;
4143 } else {
42- filter = query . filter ? query . file . toString ( ) : "*.cls,*.inc,*.int ,*.mac " ;
44+ filter = "*.cls,*.inc,*.mac ,*.int " ;
4345 }
4446 const folder = csp ? ( uri . path . endsWith ( "/" ) ? uri . path : uri . path + "/" ) : uri . path . replace ( / \/ / g, "." ) ;
4547 const spec = csp ? folder + filter : folder . length > 1 ? folder . slice ( 1 ) + "/" + filter : filter ;
4648 const dir = "1" ;
4749 const orderBy = "1" ;
4850 const system = api . ns === "%SYS" ? "1" : "0" ;
49- const flat = String ( query . flat ) || "0" ;
51+ const flat = query . flat && query . flat . length ? query . flat . toString ( ) : "0" ;
5052 const notStudio = "0" ;
51- const generated = String ( query . generated ) || "0" ;
53+ const generated = query . generated && query . generated . length ? query . generated . toString ( ) : "0" ;
5254 return api
5355 . actionQuery ( sql , [ spec , dir , orderBy , system , flat , notStudio , generated ] )
5456 . then ( data => data . result . content || [ ] )
0 commit comments