@@ -36,25 +36,24 @@ export default defineEventHandler(async (event) => {
3636 const { objects, truncated } = listResult ;
3737 cursor = truncated ? listResult . cursor : undefined ;
3838
39- const parsedObjects = objects . map ( ( obj ) => parseKey ( obj . key ) ) ;
40- const filtered = parsedObjects . filter ( ( obj ) => {
41- const orgRepo = `${ obj . org } /${ obj . repo } ` . toLowerCase ( ) ;
42- return (
43- obj . org . toLowerCase ( ) . includes ( searchText ) ||
44- obj . repo . toLowerCase ( ) . includes ( searchText ) ||
39+ for ( const obj of objects ) {
40+ const parts = parseKey ( obj . key ) ;
41+ const orgRepo = `${ parts . org } /${ parts . repo } ` . toLowerCase ( ) ;
42+ const applies = (
43+ parts . org . toLowerCase ( ) . includes ( searchText ) ||
44+ parts . repo . toLowerCase ( ) . includes ( searchText ) ||
4545 orgRepo . includes ( searchText )
46- ) ;
47- } ) ;
46+ )
47+ if ( ! applies ) continue ;
4848
49- for ( const obj of filtered ) {
50- const key = `${ obj . org } /${ obj . repo } ` ;
49+ const key = `${ parts . org } /${ parts . repo } ` ;
5150 if ( ! seen . has ( key ) ) {
5251 seen . add ( key ) ;
5352 uniqueNodes . push ( {
54- name : obj . repo ,
53+ name : parts . repo ,
5554 owner : {
56- login : obj . org ,
57- avatarUrl : `https://github.com/${ obj . org } .png` ,
55+ login : parts . org ,
56+ avatarUrl : `https://github.com/${ parts . org } .png` ,
5857 } ,
5958 } ) ;
6059 if ( uniqueNodes . length >= maxNodes ) break ;
@@ -83,9 +82,6 @@ function parseKey(key: string) {
8382 const parts = key . split ( ":" ) ;
8483 return {
8584 org : parts [ 2 ] ,
86- repo : parts [ 3 ] ,
87- hash : parts [ 4 ] ,
88- suffix : parts [ 5 ] ,
89- key,
85+ repo : parts [ 3 ]
9086 } ;
9187}
0 commit comments