[{"data":1,"prerenderedAt":243},["ShallowReactive",2],{"navigation_docs":3,"-fake-browser-installation":133,"-fake-browser-installation-surround":239},[4,22,51,62,73,84,99,118],{"title":5,"path":6,"stem":7,"children":8,"page":21},"Get Started","/get-started","0.get-started",[9,13,17],{"title":10,"path":11,"stem":12},"Introduction","/get-started/introduction","0.get-started/0.introduction",{"title":14,"path":15,"stem":16},"Browser Support","/get-started/browser-support","0.get-started/1.browser-support",{"title":18,"path":19,"stem":20},"Contributing","/get-started/contributing","0.get-started/2.contributing",false,{"title":23,"path":24,"stem":25,"children":26,"page":21},"Fake Browser","/fake-browser","fake-browser",[27,31,35,39,43,47],{"title":28,"path":29,"stem":30},"Installation","/fake-browser/installation","fake-browser/0.installation",{"title":32,"path":33,"stem":34},"Testing Frameworks","/fake-browser/testing-frameworks","fake-browser/1.testing-frameworks",{"title":36,"path":37,"stem":38},"Triggering Events","/fake-browser/triggering-events","fake-browser/2.triggering-events",{"title":40,"path":41,"stem":42},"Resetting State","/fake-browser/reseting-state","fake-browser/3.reseting-state",{"title":44,"path":45,"stem":46},"Implemented Apis","/fake-browser/implemented-apis","fake-browser/4.implemented-apis",{"title":48,"path":49,"stem":50},"Api","/fake-browser/api","fake-browser/api",{"title":52,"path":53,"stem":54,"children":55,"page":21},"Isolated Element","/isolated-element","isolated-element",[56,59],{"title":28,"path":57,"stem":58},"/isolated-element/installation","isolated-element/0.installation",{"title":48,"path":60,"stem":61},"/isolated-element/api","isolated-element/api",{"title":63,"path":64,"stem":65,"children":66,"page":21},"Job Scheduler","/job-scheduler","job-scheduler",[67,70],{"title":28,"path":68,"stem":69},"/job-scheduler/installation","job-scheduler/0.installation",{"title":48,"path":71,"stem":72},"/job-scheduler/api","job-scheduler/api",{"title":74,"path":75,"stem":76,"children":77,"page":21},"Match Patterns","/match-patterns","match-patterns",[78,81],{"title":28,"path":79,"stem":80},"/match-patterns/installation","match-patterns/0.installation",{"title":48,"path":82,"stem":83},"/match-patterns/api","match-patterns/api",{"title":85,"path":86,"stem":87,"children":88,"page":21},"Messaging","/messaging","messaging",[89,92,96],{"title":28,"path":90,"stem":91},"/messaging/installation","messaging/0.installation",{"title":93,"path":94,"stem":95},"Protocol Maps","/messaging/protocol-maps","messaging/1.protocol-maps",{"title":48,"path":97,"stem":98},"/messaging/api","messaging/api",{"title":100,"path":101,"stem":102,"children":103,"page":21},"Proxy Service","/proxy-service","proxy-service",[104,107,111,115],{"title":28,"path":105,"stem":106},"/proxy-service/installation","proxy-service/0.installation",{"title":108,"path":109,"stem":110},"Defining Services","/proxy-service/defining-services","proxy-service/1.defining-services",{"title":112,"path":113,"stem":114},"Service Keys","/proxy-service/service-keys","proxy-service/2.service-keys",{"title":48,"path":116,"stem":117},"/proxy-service/api","proxy-service/api",{"title":119,"path":120,"stem":121,"children":122,"page":21},"Storage","/storage","storage",[123,126,130],{"title":28,"path":124,"stem":125},"/storage/installation","storage/0.installation",{"title":127,"path":128,"stem":129},"Typescript","/storage/typescript","storage/1.typescript",{"title":48,"path":131,"stem":132},"/storage/api","storage/api",{"id":134,"title":28,"body":135,"description":181,"extension":233,"links":234,"meta":235,"navigation":236,"path":29,"seo":237,"stem":30,"__hash__":238},"docs/fake-browser/0.installation.md",{"type":136,"value":137,"toc":228},"minimark",[138,156,161,175,203,208,214,218,224],[139,140,141,146,147,146,150,146,153],"p",{},[142,143,145],"badge",{"type":144},"success","Vitest"," ",[142,148,149],{"type":144},"Jest",[142,151,152],{"type":144},"Bun",[142,154,155],{"type":144},"Mocha",[157,158,160],"h2",{"id":159},"overview","Overview",[139,162,163,164,174],{},"An in-memory implementation of ",[165,166,170],"a",{"href":167,"rel":168},"https://www.npmjs.com/package/webextension-polyfill",[169],"nofollow",[171,172,173],"code",{},"webextension-polyfill"," for testing. Supports all test frameworks (Vitest, Jest, etc).",[176,177,182],"pre",{"className":178,"code":179,"language":180,"meta":181,"style":181},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","pnpm i -D @webext-core/fake-browser\n","bash","",[171,183,184],{"__ignoreMap":181},[185,186,189,193,197,200],"span",{"class":187,"line":188},"line",1,[185,190,192],{"class":191},"sBMFI","pnpm",[185,194,196],{"class":195},"sfazB"," i",[185,198,199],{"class":195}," -D",[185,201,202],{"class":195}," @webext-core/fake-browser\n",[204,205,207],"alrt",{"type":206},"warning","This package only really works with projects using node, so only the NPM install steps are shown.",[139,209,210,211,213],{},"See ",[165,212,32],{"href":33}," to setup mocks for your testing framework of choice.",[157,215,217],{"id":216},"examples","Examples",[139,219,210,220,223],{},[165,221,222],{"href":45},"Implemented APIs"," for example tests and details on how to use each API.",[225,226,227],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":181,"searchDepth":229,"depth":229,"links":230},2,[231,232],{"id":159,"depth":229,"text":160},{"id":216,"depth":229,"text":217},"md",null,{"toc":236},true,{"title":28,"description":181},"4z25AjW29B6Fk3c9O1DZmGsQ5m69I1wTSHto78pohI4",[240,242],{"title":18,"path":19,"stem":20,"description":241,"children":-1},"Special thanks to the contributors. I look forward to seeing you in the list!",{"title":32,"path":33,"stem":34,"description":181,"children":-1},1779298433875]