worker-loader
Advanced tools
Comparing version 3.0.5 to 3.0.6
@@ -5,2 +5,9 @@ # Changelog | ||
### [3.0.6](https://github.com/webpack-contrib/worker-loader/compare/v3.0.5...v3.0.6) (2020-12-02) | ||
### Bug Fixes | ||
* set a name to exported function ([#299](https://github.com/webpack-contrib/worker-loader/issues/299)) ([15cf407](https://github.com/webpack-contrib/worker-loader/commit/15cf407ad6baeb09e2cbb5d7b4b869cc63bfac7f)) | ||
### [3.0.5](https://github.com/webpack-contrib/worker-loader/compare/v3.0.4...v3.0.5) (2020-10-16) | ||
@@ -7,0 +14,0 @@ |
"use strict"; | ||
const loader = require('./index'); | ||
const loader = require("./index"); | ||
module.exports = loader.default; | ||
module.exports.pitch = loader.pitch; |
@@ -37,12 +37,12 @@ "use strict"; | ||
const useWebpack5 = require('webpack/package.json').version.startsWith('5.'); | ||
const useWebpack5 = require("webpack/package.json").version.startsWith("5."); | ||
if (useWebpack5) { | ||
// eslint-disable-next-line global-require, import/no-unresolved | ||
FetchCompileWasmPlugin = require('webpack/lib/web/FetchCompileWasmPlugin'); // eslint-disable-next-line global-require, import/no-unresolved | ||
FetchCompileWasmPlugin = require("webpack/lib/web/FetchCompileWasmPlugin"); // eslint-disable-next-line global-require, import/no-unresolved | ||
FetchCompileAsyncWasmPlugin = require('webpack/lib/web/FetchCompileAsyncWasmPlugin'); | ||
FetchCompileAsyncWasmPlugin = require("webpack/lib/web/FetchCompileAsyncWasmPlugin"); | ||
} else { | ||
// eslint-disable-next-line global-require, import/no-unresolved | ||
FetchCompileWasmPlugin = require('webpack/lib/web/FetchCompileWasmTemplatePlugin'); | ||
FetchCompileWasmPlugin = require("webpack/lib/web/FetchCompileWasmTemplatePlugin"); | ||
} | ||
@@ -56,4 +56,4 @@ | ||
(0, _schemaUtils.validate)(_options.default, options, { | ||
name: 'Worker Loader', | ||
baseDataPath: 'options' | ||
name: "Worker Loader", | ||
baseDataPath: "options" | ||
}); | ||
@@ -69,3 +69,3 @@ const workerContext = {}; | ||
publicPath, | ||
globalObject: 'self' | ||
globalObject: "self" | ||
}; | ||
@@ -75,3 +75,3 @@ workerContext.compiler = this._compilation.createChildCompiler(`worker-loader ${request}`, workerContext.options); | ||
if (this.target !== 'webworker' && this.target !== 'web') { | ||
if (this.target !== "webworker" && this.target !== "web") { | ||
new _NodeTargetPlugin.default().apply(workerContext.compiler); | ||
@@ -98,3 +98,3 @@ } | ||
if (workerContext.compiler.cache && typeof workerContext.compiler.cache.get === 'function') { | ||
if (workerContext.compiler.cache && typeof workerContext.compiler.cache.get === "function") { | ||
(0, _supportWebpack.default)(this, workerContext, options, cb); | ||
@@ -101,0 +101,0 @@ } else { |
@@ -32,3 +32,3 @@ "use strict"; | ||
if (!url) { | ||
throw Error('Inline worker is not supported'); | ||
throw Error("Inline worker is not supported"); | ||
} | ||
@@ -35,0 +35,0 @@ |
@@ -21,3 +21,3 @@ "use strict"; | ||
if (options.inline === 'no-fallback') { | ||
if (options.inline === "no-fallback") { | ||
// eslint-disable-next-line no-underscore-dangle, no-param-reassign | ||
@@ -33,5 +33,5 @@ delete loaderContext._compilation.assets[workerFilename]; // TODO improve it, we should store generated source maps files for file in `assetInfo` | ||
workerSource = workerSource.replace(_utils.sourceMappingURLRegex, ''); // Remove `//# sourceURL=webpack-internal` comment | ||
workerSource = workerSource.replace(_utils.sourceMappingURLRegex, ""); // Remove `//# sourceURL=webpack-internal` comment | ||
workerSource = workerSource.replace(_utils.sourceURLWebpackRegex, ''); | ||
workerSource = workerSource.replace(_utils.sourceURLWebpackRegex, ""); | ||
} | ||
@@ -38,0 +38,0 @@ |
@@ -18,3 +18,3 @@ "use strict"; | ||
const [workerFilename] = [...entries[0].files]; | ||
const cache = workerContext.compiler.getCache('worker-loader'); | ||
const cache = workerContext.compiler.getCache("worker-loader"); | ||
const cacheIdent = workerFilename; | ||
@@ -27,3 +27,3 @@ const cacheETag = cache.getLazyHashedEtag(compilation.assets[workerFilename]); | ||
if (options.inline === 'no-fallback') { | ||
if (options.inline === "no-fallback") { | ||
// eslint-disable-next-line no-underscore-dangle, no-param-reassign | ||
@@ -45,7 +45,7 @@ delete loaderContext._compilation.assets[workerFilename]; // TODO improve this, we should store generated source maps files for file in `assetInfo` | ||
if (options.inline === 'no-fallback') { | ||
if (options.inline === "no-fallback") { | ||
// Remove `/* sourceMappingURL=url */` comment | ||
workerSource = workerSource.replace(_utils.sourceMappingURLRegex, ''); // Remove `//# sourceURL=webpack-internal` comment | ||
workerSource = workerSource.replace(_utils.sourceMappingURLRegex, ""); // Remove `//# sourceURL=webpack-internal` comment | ||
workerSource = workerSource.replace(_utils.sourceURLWebpackRegex, ''); | ||
workerSource = workerSource.replace(_utils.sourceURLWebpackRegex, ""); | ||
} | ||
@@ -52,0 +52,0 @@ |
@@ -15,11 +15,11 @@ "use strict"; | ||
function getDefaultFilename(filename) { | ||
if (typeof filename === 'function') { | ||
if (typeof filename === "function") { | ||
return filename; | ||
} | ||
return filename.replace(/\.([a-z]+)(\?.+)?$/i, '.worker.$1$2'); | ||
return filename.replace(/\.([a-z]+)(\?.+)?$/i, ".worker.$1$2"); | ||
} | ||
function getDefaultChunkFilename(chunkFilename) { | ||
return chunkFilename.replace(/\.([a-z]+)(\?.+)?$/i, '.worker.$1$2'); | ||
return chunkFilename.replace(/\.([a-z]+)(\?.+)?$/i, ".worker.$1$2"); | ||
} | ||
@@ -43,6 +43,6 @@ | ||
if (compilerOptions.output.module) { | ||
return 'module'; | ||
return "module"; | ||
} | ||
return 'var'; | ||
return "var"; | ||
} | ||
@@ -54,5 +54,5 @@ | ||
if (typeof options.worker === 'undefined') { | ||
workerConstructor = 'Worker'; | ||
} else if (typeof options.worker === 'string') { | ||
if (typeof options.worker === "undefined") { | ||
workerConstructor = "Worker"; | ||
} else if (typeof options.worker === "string") { | ||
workerConstructor = options.worker; | ||
@@ -66,9 +66,10 @@ } else { | ||
const esModule = typeof options.esModule !== 'undefined' ? options.esModule : true; | ||
const esModule = typeof options.esModule !== "undefined" ? options.esModule : true; | ||
const fnName = `${workerConstructor}_fn`; | ||
if (options.inline) { | ||
const InlineWorkerPath = (0, _loaderUtils.stringifyRequest)(loaderContext, `!!${require.resolve('./runtime/inline.js')}`); | ||
const InlineWorkerPath = (0, _loaderUtils.stringifyRequest)(loaderContext, `!!${require.resolve("./runtime/inline.js")}`); | ||
let fallbackWorkerPath; | ||
if (options.inline === 'fallback') { | ||
if (options.inline === "fallback") { | ||
fallbackWorkerPath = `__webpack_public_path__ + ${JSON.stringify(workerFilename)}`; | ||
@@ -80,6 +81,6 @@ } | ||
${esModule ? 'export default' : 'module.exports ='} function() {\n return worker(${JSON.stringify(workerSource)}, ${JSON.stringify(workerConstructor)}, ${JSON.stringify(workerOptions)}, ${fallbackWorkerPath});\n}\n`; | ||
${esModule ? "export default" : "module.exports ="} function ${fnName}() {\n return worker(${JSON.stringify(workerSource)}, ${JSON.stringify(workerConstructor)}, ${JSON.stringify(workerOptions)}, ${fallbackWorkerPath});\n}\n`; | ||
} | ||
return `${esModule ? 'export default' : 'module.exports ='} function() {\n return new ${workerConstructor}(__webpack_public_path__ + ${JSON.stringify(workerFilename)}${workerOptions ? `, ${JSON.stringify(workerOptions)}` : ''});\n}\n`; | ||
return `${esModule ? "export default" : "module.exports ="} function ${fnName}() {\n return new ${workerConstructor}(__webpack_public_path__ + ${JSON.stringify(workerFilename)}${workerOptions ? `, ${JSON.stringify(workerOptions)}` : ""});\n}\n`; | ||
} // Matches only the last occurrence of sourceMappingURL | ||
@@ -91,7 +92,7 @@ | ||
const sourceMappingURLRegex = RegExp('(?:' + '/\\*' + '(?:\\s*\r?\n(?://)?)?' + '(?:' + innerRegex.source + ')' + '\\s*' + '\\*/' + '|' + '//(?:' + innerRegex.source + ')' + ')' + '\\s*'); | ||
const sourceMappingURLRegex = RegExp("(?:" + "/\\*" + "(?:\\s*\r?\n(?://)?)?" + "(?:" + innerRegex.source + ")" + "\\s*" + "\\*/" + "|" + "//(?:" + innerRegex.source + ")" + ")" + "\\s*"); | ||
exports.sourceMappingURLRegex = sourceMappingURLRegex; | ||
const sourceURLWebpackRegex = RegExp('\\/\\/#\\ssourceURL=webpack-internal:\\/\\/\\/(.*?)\\\\n'); | ||
const sourceURLWebpackRegex = RegExp("\\/\\/#\\ssourceURL=webpack-internal:\\/\\/\\/(.*?)\\\\n"); | ||
/* eslint-enable prefer-template */ | ||
exports.sourceURLWebpackRegex = sourceURLWebpackRegex; |
{ | ||
"name": "worker-loader", | ||
"version": "3.0.5", | ||
"version": "3.0.6", | ||
"description": "worker loader module for webpack", | ||
@@ -48,5 +48,5 @@ "license": "MIT", | ||
"devDependencies": { | ||
"@babel/cli": "^7.11.6", | ||
"@babel/core": "^7.11.6", | ||
"@babel/preset-env": "^7.11.5", | ||
"@babel/cli": "^7.12.8", | ||
"@babel/core": "^7.12.9", | ||
"@babel/preset-env": "^7.12.7", | ||
"@commitlint/cli": "^11.0.0", | ||
@@ -56,8 +56,8 @@ "@commitlint/config-conventional": "^11.0.0", | ||
"@webpack-contrib/eslint-config-webpack": "^3.0.0", | ||
"babel-jest": "^26.5.2", | ||
"cross-env": "^7.0.2", | ||
"babel-jest": "^26.6.3", | ||
"cross-env": "^7.0.3", | ||
"del": "^6.0.0", | ||
"del-cli": "^3.0.1", | ||
"eslint": "^7.10.0", | ||
"eslint-config-prettier": "^6.12.0", | ||
"eslint": "^7.14.0", | ||
"eslint-config-prettier": "^6.15.0", | ||
"eslint-plugin-import": "^2.22.1", | ||
@@ -68,11 +68,11 @@ "express": "^4.17.1", | ||
"husky": "^4.3.0", | ||
"jest": "^26.5.2", | ||
"lint-staged": "^10.4.0", | ||
"jest": "^26.6.3", | ||
"lint-staged": "^10.5.2", | ||
"memfs": "^3.2.0", | ||
"nanoid": "^3.1.12", | ||
"nanoid": "^3.1.20", | ||
"npm-run-all": "^4.1.5", | ||
"prettier": "^2.1.2", | ||
"puppeteer": "^5.3.1", | ||
"prettier": "^2.2.1", | ||
"puppeteer": "^5.5.0", | ||
"standard-version": "^9.0.0", | ||
"webpack": "^4.44.2" | ||
"webpack": "^5.9.0" | ||
}, | ||
@@ -79,0 +79,0 @@ "keywords": [ |
@@ -32,3 +32,3 @@ <div align="center"> | ||
```js | ||
import Worker from 'worker-loader!./Worker.js'; | ||
import Worker from "worker-loader!./Worker.js"; | ||
``` | ||
@@ -46,3 +46,3 @@ | ||
test: /\.worker\.js$/, | ||
use: { loader: 'worker-loader' }, | ||
use: { loader: "worker-loader" }, | ||
}, | ||
@@ -57,3 +57,3 @@ ], | ||
```js | ||
import Worker from './file.worker.js'; | ||
import Worker from "./file.worker.js"; | ||
@@ -65,3 +65,3 @@ const worker = new Worker(); | ||
worker.addEventListener('message', function (event) {}); | ||
worker.addEventListener("message", function (event) {}); | ||
``` | ||
@@ -101,5 +101,5 @@ | ||
test: /\.worker\.(c|m)?js$/i, | ||
loader: 'worker-loader', | ||
loader: "worker-loader", | ||
options: { | ||
worker: 'SharedWorker', | ||
worker: "SharedWorker", | ||
}, | ||
@@ -124,10 +124,10 @@ }, | ||
test: /\.worker\.(c|m)?js$/i, | ||
loader: 'worker-loader', | ||
loader: "worker-loader", | ||
options: { | ||
worker: { | ||
type: 'SharedWorker', | ||
type: "SharedWorker", | ||
options: { | ||
type: 'classic', | ||
credentials: 'omit', | ||
name: 'my-custom-worker-name', | ||
type: "classic", | ||
credentials: "omit", | ||
name: "my-custom-worker-name", | ||
}, | ||
@@ -160,5 +160,5 @@ }, | ||
test: /\.worker\.(c|m)?js$/i, | ||
loader: 'worker-loader', | ||
loader: "worker-loader", | ||
options: { | ||
publicPath: '/scripts/workers/', | ||
publicPath: "/scripts/workers/", | ||
}, | ||
@@ -181,3 +181,3 @@ }, | ||
test: /\.worker\.(c|m)?js$/i, | ||
loader: 'worker-loader', | ||
loader: "worker-loader", | ||
options: { | ||
@@ -211,5 +211,5 @@ publicPath: (pathData, assetInfo) => { | ||
test: /\.worker\.(c|m)?js$/i, | ||
loader: 'worker-loader', | ||
loader: "worker-loader", | ||
options: { | ||
filename: '[name].[contenthash].worker.js', | ||
filename: "[name].[contenthash].worker.js", | ||
}, | ||
@@ -232,3 +232,3 @@ }, | ||
test: /\.worker\.(c|m)?js$/i, | ||
loader: 'worker-loader', | ||
loader: "worker-loader", | ||
options: { | ||
@@ -239,6 +239,6 @@ filename: (pathData) => { | ||
) { | ||
return '[name].custom.worker.js'; | ||
return "[name].custom.worker.js"; | ||
} | ||
return '[name].js'; | ||
return "[name].js"; | ||
}, | ||
@@ -267,5 +267,5 @@ }, | ||
test: /\.worker\.(c|m)?js$/i, | ||
loader: 'worker-loader', | ||
loader: "worker-loader", | ||
options: { | ||
chunkFilename: '[id].[contenthash].worker.js', | ||
chunkFilename: "[id].[contenthash].worker.js", | ||
}, | ||
@@ -295,5 +295,5 @@ }, | ||
test: /\.worker\.(c|m)?js$/i, | ||
loader: 'worker-loader', | ||
loader: "worker-loader", | ||
options: { | ||
inline: 'fallback', | ||
inline: "fallback", | ||
}, | ||
@@ -323,3 +323,3 @@ }, | ||
test: /\.worker\.(c|m)?js$/i, | ||
loader: 'worker-loader', | ||
loader: "worker-loader", | ||
options: { | ||
@@ -343,3 +343,3 @@ esModule: false, | ||
```js | ||
import Worker from './my.worker.js'; | ||
import Worker from "./my.worker.js"; | ||
@@ -352,4 +352,4 @@ var worker = new Worker(); | ||
if (!result) { | ||
result = document.createElement('div'); | ||
result.setAttribute('id', 'result'); | ||
result = document.createElement("div"); | ||
result.setAttribute("id", "result"); | ||
@@ -362,5 +362,5 @@ document.body.append(result); | ||
const button = document.getElementById('button'); | ||
const button = document.getElementById("button"); | ||
button.addEventListener('click', function () { | ||
button.addEventListener("click", function () { | ||
worker.postMessage({ postMessage: true }); | ||
@@ -390,3 +390,3 @@ }); | ||
test: /\.worker\.(c|m)?js$/i, | ||
loader: 'worker-loader', | ||
loader: "worker-loader", | ||
options: { | ||
@@ -408,3 +408,3 @@ esModule: false, | ||
```js | ||
import Worker from './my.worker.js'; | ||
import Worker from "./my.worker.js"; | ||
@@ -417,4 +417,4 @@ const worker = new Worker(); | ||
if (!result) { | ||
result = document.createElement('div'); | ||
result.setAttribute('id', 'result'); | ||
result = document.createElement("div"); | ||
result.setAttribute("id", "result"); | ||
@@ -427,5 +427,5 @@ document.body.append(result); | ||
const button = document.getElementById('button'); | ||
const button = document.getElementById("button"); | ||
button.addEventListener('click', () => { | ||
button.addEventListener("click", () => { | ||
worker.postMessage({ postMessage: true }); | ||
@@ -457,8 +457,8 @@ }); | ||
{ | ||
loader: 'worker-loader', | ||
loader: "worker-loader", | ||
}, | ||
{ | ||
loader: 'babel-loader', | ||
loader: "babel-loader", | ||
options: { | ||
presets: ['@babel/preset-env'], | ||
presets: ["@babel/preset-env"], | ||
}, | ||
@@ -480,3 +480,3 @@ }, | ||
```typescript | ||
declare module 'worker-loader!*' { | ||
declare module "worker-loader!*" { | ||
// You need to change `Worker`, if you specified a different value for the `workerType` option | ||
@@ -499,6 +499,6 @@ class WebpackWorker extends Worker { | ||
// Post data to parent thread | ||
ctx.postMessage({ foo: 'foo' }); | ||
ctx.postMessage({ foo: "foo" }); | ||
// Respond to message from parent thread | ||
ctx.addEventListener('message', (event) => console.log(event)); | ||
ctx.addEventListener("message", (event) => console.log(event)); | ||
``` | ||
@@ -509,3 +509,3 @@ | ||
```typescript | ||
import Worker from 'worker-loader!./Worker'; | ||
import Worker from "worker-loader!./Worker"; | ||
@@ -517,3 +517,3 @@ const worker = new Worker(); | ||
worker.addEventListener('message', (event) => {}); | ||
worker.addEventListener("message", (event) => {}); | ||
``` | ||
@@ -534,3 +534,3 @@ | ||
```js | ||
import Worker from './file.worker.js'; | ||
import Worker from "./file.worker.js"; | ||
``` | ||
@@ -545,4 +545,4 @@ | ||
{ | ||
loader: 'worker-loader', | ||
options: { inline: 'fallback' }, | ||
loader: "worker-loader", | ||
options: { inline: "fallback" }, | ||
}, | ||
@@ -560,3 +560,3 @@ ], | ||
// This will cause the worker to be downloaded from `/workers/file.worker.js` | ||
import Worker from './file.worker.js'; | ||
import Worker from "./file.worker.js"; | ||
``` | ||
@@ -571,4 +571,4 @@ | ||
{ | ||
loader: 'worker-loader', | ||
options: { publicPath: '/workers/' }, | ||
loader: "worker-loader", | ||
options: { publicPath: "/workers/" }, | ||
}, | ||
@@ -575,0 +575,0 @@ ], |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
35788
315