@@ -11,31 +11,32 @@ const DEFAULT_TICKERS = 'SPY, AAPL, NVDA, BTC-USD';
1111const DEFAULT_LEAGUES = 'nfl, nba' ;
1212const splitList = ( s ) => String ( s || '' ) . split ( ',' ) . map ( ( x ) => x . trim ( ) ) . filter ( Boolean ) ;
1313
14- // --- Search: Web (Xprivo by default, DuckDuckGo alternative ) or AI (sidebar) ---
14+ // --- Search: Web (NeoSearch by default) or AI (sidebar) ---
1515const SEARCH_ENGINES = {
16+ neosearch : { name : 'NeoSearch' , url : 'https://neosearch.org/?q=' } ,
1617 xprivo : { name : 'Xprivo' , url : 'https://www.xprivo.com/search/?q=' } ,
1718 ddg : { name : 'DuckDuckGo' , url : 'https://duckduckgo.com/?q=' } ,
1819 // Altpower is a Google Programmable Search — query lives in the URL fragment.
1920 altpower : { name : 'Altpower' , url : 'https://altpower.app/#open-source&gsc.tab=0&gsc.q=' , suffix : '&gsc.sort=' } ,
2021 oxiverse : { name : 'Oxiverse' , url : 'https://search.oxiverse.com/?q=' , suffix : '&tab=web' } ,
2122} ;
2223let searchMode = 'web' ;
23- let searchEngine = 'xprivo ' ;
24+ let searchEngine = 'neosearch ' ;
2425
2526function setMode ( mode ) {
2627 searchMode = mode ;
2728 el ( 'mode-web' ) . classList . toggle ( 'active' , mode === 'web' ) ;
2829 el ( 'mode-ai' ) . classList . toggle ( 'active' , mode === 'ai' ) ;
2930 el ( 'mode-web' ) . setAttribute ( 'aria-selected' , mode === 'web' ) ;
3031 el ( 'mode-ai' ) . setAttribute ( 'aria-selected' , mode === 'ai' ) ;
31- const eng = SEARCH_ENGINES [ searchEngine ] || SEARCH_ENGINES . xprivo ;
32+ const eng = SEARCH_ENGINES [ searchEngine ] || SEARCH_ENGINES . neosearch ;
3233 el ( 'q' ) . placeholder = mode === 'ai' ? 'Ask AI anything…' : `Search ${ eng . name } …` ;
3334 el ( 'q' ) . focus ( ) ;
3435}
3536el ( 'mode-web' ) . addEventListener ( 'click' , ( ) => setMode ( 'web' ) ) ;
3637el ( 'mode-ai' ) . addEventListener ( 'click' , ( ) => setMode ( 'ai' ) ) ;
3738
38- // Load the chosen web search engine (default Xprivo ).
39+ // Load the chosen web search engine (default NeoSearch ).
3940chrome . storage . local . get ( 'searchEngine' ) . then ( ( { searchEngine : se } ) => {
4041 if ( se && SEARCH_ENGINES [ se ] ) searchEngine = se ;
4142 if ( searchMode === 'web' ) setMode ( 'web' ) ;
@@ -51,7 +52,7 @@ el('search').addEventListener('submit', async (e) => {
5152 chrome . runtime . sendMessage ( { type : 'open-sidepanel' } ) ;
5253 el ( 'q' ) . value = '' ;
5354 } else {
54- const eng = SEARCH_ENGINES [ searchEngine ] || SEARCH_ENGINES . xprivo ;
55+ const eng = SEARCH_ENGINES [ searchEngine ] || SEARCH_ENGINES . neosearch ;
5556 location . href = eng . url + encodeURIComponent ( q ) + ( eng . suffix || '' ) ;
5657 }
5758} ) ;
0 commit comments