(...args: any[])
| 14 | const messageListeners = new Set<(message: MessageBGtoCS) => void>(); |
| 15 | |
| 16 | async function sendMessage(...args: any[]) { |
| 17 | if (args[0] && args[0].type === MessageTypeCStoBG.FETCH) { |
| 18 | const {id} = args[0]; |
| 19 | try { |
| 20 | const {url, responseType} = args[0].data; |
| 21 | const response = await callFetchMethod(url); |
| 22 | let text: string; |
| 23 | if (responseType === 'data-url') { |
| 24 | text = await readResponseAsDataURL(response); |
| 25 | } else { |
| 26 | text = await response.text(); |
| 27 | } |
| 28 | messageListeners.forEach((cb) => cb({type: MessageTypeBGtoCS.FETCH_RESPONSE, data: text, error: null, id})); |
| 29 | } catch (error) { |
| 30 | console.error(error); |
| 31 | messageListeners.forEach((cb) => cb({type: MessageTypeBGtoCS.FETCH_RESPONSE, data: null, error, id})); |
| 32 | } |
| 33 | } |
| 34 | } |
| 35 | |
| 36 | function addMessageListener(callback: (data: any) => void) { |
| 37 | messageListeners.add(callback); |
no test coverage detected