@@ -2,15 +2,15 @@ import fs from 'node:fs';
22import path from 'node:path' ;
33import type { Metas } from './types.js' ;
44import { Script , type ScriptArguments } from './models/Script.js' ;
5+ import { ScriptExecution } from './models/ScriptExecution.js' ;
56import {
67 defaultScriptPath ,
78 metaEndTerm ,
89 metaStartTerm ,
910 NOTIFY ,
1011 SCRIPT_EXTENSION
1112} from './const.js' ;
12- import { matchesMetas , stringRange } from './utils/utils.js' ;
13- import { ScriptExecution } from './models/ScriptExecution.js' ;
13+ import { matchesObject , sortByProperty , stringRange } from './utils/utils.js' ;
1414import { Clipboard } from './utils/clipboard.js' ;
1515import { FlowLauncher } from './utils/flowLauncher.js' ;
1616
@@ -59,25 +59,23 @@ export class ScriptManager {
5959 const QUERY_CHAR_LIMIT = 20 ;
6060 const ALL_SCRIPTS_CHAR = '*' ;
6161 const QUERIES_SEPARATOR = ' ' ;
62-
63- const metaNameSort = ( a : Script , b : Script ) : 1 | - 1 =>
64- ( a . name || '' ) < ( b . name || '' ) ? 1 : - 1 ;
62+ const SORT_PROPERTY = 'name' ;
6563
6664 if ( query . length > QUERY_CHAR_LIMIT ) return [ ] ;
6765
68- if ( query === ALL_SCRIPTS_CHAR ) return this . scripts . sort ( metaNameSort ) ;
66+ if ( query === ALL_SCRIPTS_CHAR )
67+ return sortByProperty ( this . scripts , SORT_PROPERTY ) ;
6968
70- const normalizeQuery = query . toLowerCase ( ) ;
71- const queries = new Set ( normalizeQuery . split ( QUERIES_SEPARATOR ) ) ;
69+ const queries = query . split ( QUERIES_SEPARATOR ) ;
7270
7371 const results = this . scripts . filter ( script =>
74- matchesMetas ( Array . from ( queries ) , {
72+ matchesObject ( queries , {
7573 name : script . name ,
7674 tags : script . tags
7775 } )
7876 ) ;
7977
80- return results . sort ( metaNameSort ) ;
78+ return sortByProperty ( results , SORT_PROPERTY ) ;
8179 }
8280
8381 runScriptM ( scriptArguments : ScriptArguments ) {
0 commit comments