MCPcopy Create free account
hub / github.com/darkreader/darkreader / bgFetch

Function bgFetch

src/inject/dynamic-theme/network.ts:17–31  ·  view source on GitHub ↗
(request: FetchRequest)

Source from the content-addressed store, hash-verified

15const rejectors = new Map<string, (reason?: any) => void>();
16
17export async function bgFetch(request: FetchRequest): Promise<string> {
18 if ((window as any).DarkReader?.Plugins?.fetch) {
19 return (window as any).DarkReader.Plugins.fetch(request);
20 }
21 const parsedURL = new URL(request.url);
22 if (parsedURL.origin !== request.origin && shouldIgnoreCors(parsedURL)) {
23 throw new Error('Cross-origin limit reached');
24 }
25 return new Promise<string>((resolve, reject) => {
26 const id = generateUID();
27 resolvers.set(id, resolve);
28 rejectors.set(id, reject);
29 chrome.runtime.sendMessage<MessageCStoBG>({type: MessageTypeCStoBG.FETCH, data: request, id});
30 });
31}
32
33chrome.runtime.onMessage.addListener(({type, data, error, id}: MessageBGtoCS) => {
34 if (type === MessageTypeBGtoCS.FETCH_RESPONSE) {

Callers 2

getDataURLFunction · 0.90
loadTextFunction · 0.90

Calls 4

generateUIDFunction · 0.90
shouldIgnoreCorsFunction · 0.85
sendMessageMethod · 0.80
setMethod · 0.65

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…