Related to  #11474 and #12815.

The following should be added to `package.json` of `pdfjs-dist` for `worker-loader`.
```
  "peerDependenciesMeta": {
    "worker-loader": {
      "optional": true
    }
  }
```

npm v7 installs `peerDependencies` by default. We can see that calling `npm install pdfjs-dist` in an empty directory will install `webpack` and others in `node_modules`.

> In npm versions 3 through 6, peerDependencies were not automatically installed, and would raise a warning if an invalid version of the peer dependency was found in the tree. As of npm v7, peerDependencies are installed by default.

- https://docs.npmjs.com/cli/v7/configuring-npm/package-json#peerdependencies
- https://github.blog/2020-10-13-presenting-v7-0-0-of-the-npm-cli/

We can make `worker-loader` optional with `peerDependenciesMeta`.

- https://docs.npmjs.com/cli/v7/configuring-npm/package-json#peerdependenciesmeta
- https://github.com/npm/rfcs/issues/221
const VERSION = getVersionJSON().version;
  const reason = process.env.PDFJS_UPDATE_REASON;
  safeSpawnSync("git", ["init"], { cwd: GH_PAGES_DIR });
  safeSpawnSync("git", ["remote", "add", "origin", REPO], {
    cwd: GH_PAGES_DIR,
  });
  safeSpawnSync("git", ["add", "-A"], { cwd: GH_PAGES_DIR });
  safeSpawnSync(
    "git",
    [
      "commit",
      "-am",
      "gh-pages site created via gulpfile.js script",
      "-m",
      "PDF.js version " + VERSION + (reason ? " - " + reason : ""),
    ],
    { cwd: GH_PAGES_DIR }
  );
  safeSpawnSync("git", ["branch", "-m", "gh-pages"], { cwd: GH_PAGES_DIR });
  console.log();
  console.log("Website built in " + GH_PAGES_DIR);
  done();
}
gulp.task(
  "web",
  gulp.series(
    "generic",
    "generic-legacy",
    "jsdoc",
    ghPagesPrepare,