123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- /* Copyright 2017 Mozilla Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- /* eslint-disable no-var, unicorn/no-typeof-undefined */
- "use strict";
- (function () {
- var baseLocation;
- if (typeof document !== "undefined") {
- baseLocation = new URL("./", document.currentScript.src);
- } else if (typeof location !== "undefined") {
- // Probably worker -- walking subfolders until we will reach root.
- baseLocation = location;
- while (baseLocation.href.includes("/src/")) {
- baseLocation = new URL("..", baseLocation);
- }
- } else {
- throw new Error("Cannot configure SystemJS");
- }
- var PluginBabelPath = "node_modules/systemjs-plugin-babel/plugin-babel.js";
- var SystemJSPluginBabelPath =
- "node_modules/systemjs-plugin-babel/systemjs-babel-browser.js";
- var PluginBabelCachePath = "external/systemjs/plugin-babel-cached.js";
- var isCachingPossible =
- typeof indexedDB !== "undefined" &&
- typeof TextEncoder !== "undefined" &&
- typeof crypto !== "undefined" &&
- typeof crypto.subtle !== "undefined";
- // When we create a bundle, webpack is run on the source and it will replace
- // require with __webpack_require__. When we want to use the real require,
- // __non_webpack_require__ has to be used.
- // In this target, we don't create a bundle, so we have to replace the
- // occurrences of __non_webpack_require__ ourselves.
- function babelPluginReplaceNonWebPackRequire(babel) {
- return {
- visitor: {
- Identifier(path, state) {
- if (path.node.name === "__non_webpack_require__") {
- path.replaceWith(babel.types.identifier("require"));
- }
- },
- },
- };
- }
- SystemJS.config({
- packages: {
- "": {
- defaultExtension: "js",
- },
- },
- paths: {
- pdfjs: new URL("src", baseLocation).href,
- "pdfjs-web": new URL("web", baseLocation).href,
- "pdfjs-test": new URL("test", baseLocation).href,
- "pdfjs-lib": new URL("src/pdf", baseLocation).href,
- "core-js": new URL("node_modules/core-js", baseLocation).href,
- "web-streams-polyfill": new URL(
- "node_modules/web-streams-polyfill",
- baseLocation
- ).href,
- },
- meta: {
- "*": {
- scriptLoad: false,
- esModule: true,
- babelOptions: {
- env: false,
- plugins: [babelPluginReplaceNonWebPackRequire],
- },
- },
- },
- map: {
- "plugin-babel": new URL(PluginBabelPath, baseLocation).href,
- "systemjs-babel-build": new URL(SystemJSPluginBabelPath, baseLocation)
- .href,
- "plugin-babel-cached": new URL(PluginBabelCachePath, baseLocation).href,
- },
- transpiler: isCachingPossible ? "plugin-babel-cached" : "plugin-babel",
- });
- })();
|