Files
2025-05-27 08:57:54 +02:00

20 lines
660 B
JavaScript

async function processMessage(detail) {
return new Promise((resolve, reject) => {
chrome.runtime.sendMessage({type: detail.type, body: detail.body}, (response) => {
if (chrome.runtime.lastError) {
return reject(chrome.runtime.lastError);
}
resolve(response);
});
})
}
document.addEventListener('response', async (event) => {
const { detail } = event;
const responseData = await processMessage(detail);
const responseEvent = new CustomEvent('responseReceived', {
detail: detail.requestId.concat(responseData)
});
document.dispatchEvent(responseEvent);
});