@@ -12,32 +12,32 @@ export class Query {
1212 }
1313
1414 static suggestions ( query : string ) : string [ ] {
15- const commands = [ 'installed' , 'outdated' , 'enabled' , 'disabled' , 'builtin' , 'recommended' , 'sort' , 'category' , 'tag' , 'ext' , 'id' ] ;
15+ const commands = [ 'installed' , 'outdated' , 'enabled' , 'disabled' , 'builtin' , 'recommended' , 'sort' , 'category' , 'tag' , 'ext' , 'id' ] as const ;
1616 const subcommands = {
1717 'sort' : [ 'installs' , 'rating' , 'name' ] ,
1818 'category' : [ '"programming languages"' , 'snippets' , 'linters' , 'themes' , 'debuggers' , 'formatters' , 'keymaps' , '"scm providers"' , 'other' , '"extension packs"' , '"language packs"' ] ,
1919 'tag' : [ '' ] ,
2020 'ext' : [ '' ] ,
2121 'id' : [ '' ]
22- } ;
22+ } as const ;
2323
24- let queryContains = ( substr : string ) => query . indexOf ( substr ) > - 1 ;
25- let hasSort = subcommands . sort . some ( subcommand => queryContains ( `@sort:${ subcommand } ` ) ) ;
26- let hasCategory = subcommands . category . some ( subcommand => queryContains ( `@category:${ subcommand } ` ) ) ;
24+ const queryContains = ( substr : string ) => query . indexOf ( substr ) > - 1 ;
25+ const hasSort = subcommands . sort . some ( subcommand => queryContains ( `@sort:${ subcommand } ` ) ) ;
26+ const hasCategory = subcommands . category . some ( subcommand => queryContains ( `@category:${ subcommand } ` ) ) ;
2727
2828 return flatten (
2929 commands . map ( command => {
3030 if ( hasSort && command === 'sort' || hasCategory && command === 'category' ) {
3131 return [ ] ;
3232 }
33- if ( ( subcommands as any ) [ command ] ) {
34- return ( subcommands as any ) [ command ] . map ( ( subcommand : string ) => `@${ command } :${ subcommand } ${ subcommand === '' ? '' : ' ' } ` ) ;
33+ if ( command in subcommands ) {
34+ return ( subcommands as Record < string , readonly string [ ] > ) [ command ]
35+ . map ( subcommand => `@${ command } :${ subcommand } ${ subcommand === '' ? '' : ' ' } ` ) ;
3536 }
3637 else {
3738 return [ `@${ command } ` ] ;
3839 }
3940 } ) ) ;
40-
4141 }
4242
4343 static parse ( value : string ) : Query {
0 commit comments