function fetchChapters() { return browser.storage.local.get('chapters').then(chapters => { if(chapters.hasOwnProperty('chapters')) return Promise.resolve(chapters.chapters); return fetch("http://www.gigamonkeys.com/book/index.html").then(function(response) { return response.text().then(text => { const regex = /li>(.*?) respond(chapters)).catch(() => { respond(); }); return true; } } browser.runtime.onMessage.addListener(handleMessage);