In Webpack 5, the [recommended way](https://webpack.js.org/guides/web-workers/) to create a web worker is

```ts
new Worker(new URL('./worker.js', import.meta.url));
```

Could we update\* the [`pdfjs-dist/webpack` entrypoint](https://github.com/mozilla/pdfjs-dist/blob/master/webpack.js) to use this syntax instead of the legacy `worker-loader`? One of the Webpack contributors told me that `worker-loader` uses "magic" and can cause issues.

\* To maintain compatibility with people still using Webpack 4, we should probably introduce a new entrypoint called `pdfjs-dist/webpack5` (or something like that) rather than changing the existing entrypoint.

Can attempt a PR if you would like.

Closely-related: https://github.com/mozilla/pdf.js/issues/15302


return replace("__non_webpack_import__", "import");
}
function replaceJSRootName(amdName, jsName) {
  
  return replace(
    'root["' + amdName + '"] = factory()',
    'root["' + amdName + '"] = root.' + jsName + " = factory()"
  );
}
function createMainBundle(defines) {
  const mainAMDName = "pdfjs-dist/build/pdf";
  const mainOutputName = "pdf.js";
  const mainFileConfig = createWebpackConfig(defines, {
    filename: mainOutputName,
    library: mainAMDName,
    libraryTarget: "umd",
    umdNamedDefine: true,
  });
  return gulp
    .src("./src/pdf.js")
    .pipe(webpack2Stream(mainFileConfig))
    .pipe(replaceWebpackRequire())
    .pipe(replaceNonWebpackImport())
    .pipe(replaceJSRootName(mainAMDName, "pdfjsLib"));
}
function createScriptingBundle(defines, extraOptions = undefined) {