Organized all the code

Updated the update notification to check periodically every 5 minutes
Added in headless browser support for extensions (check the extensions repo to see an example)
Added in DiscordRPC support
This commit is contained in:
2025-11-19 16:28:33 -05:00
parent 2f556c2ddc
commit 5f3020ca6e
24 changed files with 1077 additions and 815 deletions

29
src/ipc/api-handlers.js Normal file
View File

@@ -0,0 +1,29 @@
module.exports = function (loadedScrapers) {
return {
getSources: () => {
return Object.keys(loadedScrapers).map((name) => {
return {
name: name,
url: loadedScrapers[name].baseUrl,
};
});
},
search: async (event, source, query, page) => {
try {
if (loadedScrapers[source] && loadedScrapers[source].instance) {
const results = await loadedScrapers[source].instance.fetchSearchResult(
query,
page
);
return { success: true, data: results };
} else {
throw new Error(`Unknown source or source failed to load: ${source}`);
}
} catch (error) {
console.error(`Error searching ${source}:`, error);
return { success: false, error: error.message };
}
},
};
};