Files
Vineless/message_proxy.js
2025-07-02 21:04:47 +09:00

23 lines
695 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);
});