// This script is meant to be imported by a module worker. It receives a // message from the worker and responds with the list of imported modules. const code = 'const sourcePromise = new Promise(resolve => {' + ' if (\'DedicatedWorkerGlobalScope\' in self &&' + ' self instanceof DedicatedWorkerGlobalScope) {' + ' self.onmessage = e => {' + ' resolve(e.target);' + ' };' + ' } else if (\'SharedWorkerGlobalScope\' in self &&' + ' self instanceof SharedWorkerGlobalScope) {' + ' self.onconnect = e => {' + ' resolve(e.ports[0]);' + ' };' + ' } else if (\'ServiceWorkerGlobalScope\' in self &&' + ' self instanceof ServiceWorkerGlobalScope) {' + ' self.onmessage = e => {' + ' resolve(e.source);' + ' };' + ' }' + '});' + 'const importedModulesPromise =' + ' import(\'./export-on-load-script.js\')' + ' .then(module => module.importedModules)' + ' .catch(error => `Failed to do dynamic import: ${error}`);' + 'Promise.all([sourcePromise, importedModulesPromise]).then(results => {' + ' const [source, importedModules] = results;' + ' source.postMessage(importedModules);' + '});'; eval(code);