core/api/soft/monako/min-maps/vs/loader.js.map

1 line
121 KiB
Plaintext

{"version":3,"sources":["out-editor/vs/loader.js"],"sourcesContent":["/*!-----------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Version: 0.38.0(0e330ae453813de4e6cf272460fb79c7117073d0)\n * Released under the MIT license\n * https://github.com/microsoft/vscode/blob/main/LICENSE.txt\n *-----------------------------------------------------------*/\n\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n'use strict';\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n/*---------------------------------------------------------------------------------------------\n *---------------------------------------------------------------------------------------------\n *---------------------------------------------------------------------------------------------\n *---------------------------------------------------------------------------------------------\n *---------------------------------------------------------------------------------------------\n * Please make sure to make edits in the .ts file at https://github.com/microsoft/vscode-loader/\n *---------------------------------------------------------------------------------------------\n *---------------------------------------------------------------------------------------------\n *---------------------------------------------------------------------------------------------\n *---------------------------------------------------------------------------------------------\n *--------------------------------------------------------------------------------------------*/\nconst _amdLoaderGlobal = this;\nconst _commonjsGlobal = typeof global === 'object' ? global : {};\nvar AMDLoader;\n(function (AMDLoader) {\n AMDLoader.global = _amdLoaderGlobal;\n class Environment {\n get isWindows() {\n this._detect();\n return this._isWindows;\n }\n get isNode() {\n this._detect();\n return this._isNode;\n }\n get isElectronRenderer() {\n this._detect();\n return this._isElectronRenderer;\n }\n get isWebWorker() {\n this._detect();\n return this._isWebWorker;\n }\n get isElectronNodeIntegrationWebWorker() {\n this._detect();\n return this._isElectronNodeIntegrationWebWorker;\n }\n constructor() {\n this._detected = false;\n this._isWindows = false;\n this._isNode = false;\n this._isElectronRenderer = false;\n this._isWebWorker = false;\n this._isElectronNodeIntegrationWebWorker = false;\n }\n _detect() {\n if (this._detected) {\n return;\n }\n this._detected = true;\n this._isWindows = Environment._isWindows();\n this._isNode = (typeof module !== 'undefined' && !!module.exports);\n this._isElectronRenderer = (typeof process !== 'undefined' && typeof process.versions !== 'undefined' && typeof process.versions.electron !== 'undefined' && process.type === 'renderer');\n this._isWebWorker = (typeof AMDLoader.global.importScripts === 'function');\n this._isElectronNodeIntegrationWebWorker = this._isWebWorker && (typeof process !== 'undefined' && typeof process.versions !== 'undefined' && typeof process.versions.electron !== 'undefined' && process.type === 'worker');\n }\n static _isWindows() {\n if (typeof navigator !== 'undefined') {\n if (navigator.userAgent && navigator.userAgent.indexOf('Windows') >= 0) {\n return true;\n }\n }\n if (typeof process !== 'undefined') {\n return (process.platform === 'win32');\n }\n return false;\n }\n }\n AMDLoader.Environment = Environment;\n})(AMDLoader || (AMDLoader = {}));\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar AMDLoader;\n(function (AMDLoader) {\n class LoaderEvent {\n constructor(type, detail, timestamp) {\n this.type = type;\n this.detail = detail;\n this.timestamp = timestamp;\n }\n }\n AMDLoader.LoaderEvent = LoaderEvent;\n class LoaderEventRecorder {\n constructor(loaderAvailableTimestamp) {\n this._events = [new LoaderEvent(1 /* LoaderEventType.LoaderAvailable */, '', loaderAvailableTimestamp)];\n }\n record(type, detail) {\n this._events.push(new LoaderEvent(type, detail, AMDLoader.Utilities.getHighPerformanceTimestamp()));\n }\n getEvents() {\n return this._events;\n }\n }\n AMDLoader.LoaderEventRecorder = LoaderEventRecorder;\n class NullLoaderEventRecorder {\n record(type, detail) {\n // Nothing to do\n }\n getEvents() {\n return [];\n }\n }\n NullLoaderEventRecorder.INSTANCE = new NullLoaderEventRecorder();\n AMDLoader.NullLoaderEventRecorder = NullLoaderEventRecorder;\n})(AMDLoader || (AMDLoader = {}));\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar AMDLoader;\n(function (AMDLoader) {\n class Utilities {\n /**\n * This method does not take care of / vs \\\n */\n static fileUriToFilePath(isWindows, uri) {\n uri = decodeURI(uri).replace(/%23/g, '#');\n if (isWindows) {\n if (/^file:\\/\\/\\//.test(uri)) {\n // This is a URI without a hostname => return only the path segment\n return uri.substr(8);\n }\n if (/^file:\\/\\//.test(uri)) {\n return uri.substr(5);\n }\n }\n else {\n if (/^file:\\/\\//.test(uri)) {\n return uri.substr(7);\n }\n }\n // Not sure...\n return uri;\n }\n static startsWith(haystack, needle) {\n return haystack.length >= needle.length && haystack.substr(0, needle.length) === needle;\n }\n static endsWith(haystack, needle) {\n return haystack.length >= needle.length && haystack.substr(haystack.length - needle.length) === needle;\n }\n // only check for \"?\" before \"#\" to ensure that there is a real Query-String\n static containsQueryString(url) {\n return /^[^\\#]*\\?/gi.test(url);\n }\n /**\n * Does `url` start with http:// or https:// or file:// or / ?\n */\n static isAbsolutePath(url) {\n return /^((http:\\/\\/)|(https:\\/\\/)|(file:\\/\\/)|(\\/))/.test(url);\n }\n static forEachProperty(obj, callback) {\n if (obj) {\n let key;\n for (key in obj) {\n if (obj.hasOwnProperty(key)) {\n callback(key, obj[key]);\n }\n }\n }\n }\n static isEmpty(obj) {\n let isEmpty = true;\n Utilities.forEachProperty(obj, () => {\n isEmpty = false;\n });\n return isEmpty;\n }\n static recursiveClone(obj) {\n if (!obj || typeof obj !== 'object' || obj instanceof RegExp) {\n return obj;\n }\n if (!Array.isArray(obj) && Object.getPrototypeOf(obj) !== Object.prototype) {\n // only clone \"simple\" objects\n return obj;\n }\n let result = Array.isArray(obj) ? [] : {};\n Utilities.forEachProperty(obj, (key, value) => {\n if (value && typeof value === 'object') {\n result[key] = Utilities.recursiveClone(value);\n }\n else {\n result[key] = value;\n }\n });\n return result;\n }\n static generateAnonymousModule() {\n return '===anonymous' + (Utilities.NEXT_ANONYMOUS_ID++) + '===';\n }\n static isAnonymousModule(id) {\n return Utilities.startsWith(id, '===anonymous');\n }\n static getHighPerformanceTimestamp() {\n if (!this.PERFORMANCE_NOW_PROBED) {\n this.PERFORMANCE_NOW_PROBED = true;\n this.HAS_PERFORMANCE_NOW = (AMDLoader.global.performance && typeof AMDLoader.global.performance.now === 'function');\n }\n return (this.HAS_PERFORMANCE_NOW ? AMDLoader.global.performance.now() : Date.now());\n }\n }\n Utilities.NEXT_ANONYMOUS_ID = 1;\n Utilities.PERFORMANCE_NOW_PROBED = false;\n Utilities.HAS_PERFORMANCE_NOW = false;\n AMDLoader.Utilities = Utilities;\n})(AMDLoader || (AMDLoader = {}));\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar AMDLoader;\n(function (AMDLoader) {\n function ensureError(err) {\n if (err instanceof Error) {\n return err;\n }\n const result = new Error(err.message || String(err) || 'Unknown Error');\n if (err.stack) {\n result.stack = err.stack;\n }\n return result;\n }\n AMDLoader.ensureError = ensureError;\n ;\n class ConfigurationOptionsUtil {\n /**\n * Ensure configuration options make sense\n */\n static validateConfigurationOptions(options) {\n function defaultOnError(err) {\n if (err.phase === 'loading') {\n console.error('Loading \"' + err.moduleId + '\" failed');\n console.error(err);\n console.error('Here are the modules that depend on it:');\n console.error(err.neededBy);\n return;\n }\n if (err.phase === 'factory') {\n console.error('The factory function of \"' + err.moduleId + '\" has thrown an exception');\n console.error(err);\n console.error('Here are the modules that depend on it:');\n console.error(err.neededBy);\n return;\n }\n }\n options = options || {};\n if (typeof options.baseUrl !== 'string') {\n options.baseUrl = '';\n }\n if (typeof options.isBuild !== 'boolean') {\n options.isBuild = false;\n }\n if (typeof options.paths !== 'object') {\n options.paths = {};\n }\n if (typeof options.config !== 'object') {\n options.config = {};\n }\n if (typeof options.catchError === 'undefined') {\n options.catchError = false;\n }\n if (typeof options.recordStats === 'undefined') {\n options.recordStats = false;\n }\n if (typeof options.urlArgs !== 'string') {\n options.urlArgs = '';\n }\n if (typeof options.onError !== 'function') {\n options.onError = defaultOnError;\n }\n if (!Array.isArray(options.ignoreDuplicateModules)) {\n options.ignoreDuplicateModules = [];\n }\n if (options.baseUrl.length > 0) {\n if (!AMDLoader.Utilities.endsWith(options.baseUrl, '/')) {\n options.baseUrl += '/';\n }\n }\n if (typeof options.cspNonce !== 'string') {\n options.cspNonce = '';\n }\n if (typeof options.preferScriptTags === 'undefined') {\n options.preferScriptTags = false;\n }\n if (options.nodeCachedData && typeof options.nodeCachedData === 'object') {\n if (typeof options.nodeCachedData.seed !== 'string') {\n options.nodeCachedData.seed = 'seed';\n }\n if (typeof options.nodeCachedData.writeDelay !== 'number' || options.nodeCachedData.writeDelay < 0) {\n options.nodeCachedData.writeDelay = 1000 * 7;\n }\n if (!options.nodeCachedData.path || typeof options.nodeCachedData.path !== 'string') {\n const err = ensureError(new Error('INVALID cached data configuration, \\'path\\' MUST be set'));\n err.phase = 'configuration';\n options.onError(err);\n options.nodeCachedData = undefined;\n }\n }\n return options;\n }\n static mergeConfigurationOptions(overwrite = null, base = null) {\n let result = AMDLoader.Utilities.recursiveClone(base || {});\n // Merge known properties and overwrite the unknown ones\n AMDLoader.Utilities.forEachProperty(overwrite, (key, value) => {\n if (key === 'ignoreDuplicateModules' && typeof result.ignoreDuplicateModules !== 'undefined') {\n result.ignoreDuplicateModules = result.ignoreDuplicateModules.concat(value);\n }\n else if (key === 'paths' && typeof result.paths !== 'undefined') {\n AMDLoader.Utilities.forEachProperty(value, (key2, value2) => result.paths[key2] = value2);\n }\n else if (key === 'config' && typeof result.config !== 'undefined') {\n AMDLoader.Utilities.forEachProperty(value, (key2, value2) => result.config[key2] = value2);\n }\n else {\n result[key] = AMDLoader.Utilities.recursiveClone(value);\n }\n });\n return ConfigurationOptionsUtil.validateConfigurationOptions(result);\n }\n }\n AMDLoader.ConfigurationOptionsUtil = ConfigurationOptionsUtil;\n class Configuration {\n constructor(env, options) {\n this._env = env;\n this.options = ConfigurationOptionsUtil.mergeConfigurationOptions(options);\n this._createIgnoreDuplicateModulesMap();\n this._createSortedPathsRules();\n if (this.options.baseUrl === '') {\n if (this.options.nodeRequire && this.options.nodeRequire.main && this.options.nodeRequire.main.filename && this._env.isNode) {\n let nodeMain = this.options.nodeRequire.main.filename;\n let dirnameIndex = Math.max(nodeMain.lastIndexOf('/'), nodeMain.lastIndexOf('\\\\'));\n this.options.baseUrl = nodeMain.substring(0, dirnameIndex + 1);\n }\n }\n }\n _createIgnoreDuplicateModulesMap() {\n // Build a map out of the ignoreDuplicateModules array\n this.ignoreDuplicateModulesMap = {};\n for (let i = 0; i < this.options.ignoreDuplicateModules.length; i++) {\n this.ignoreDuplicateModulesMap[this.options.ignoreDuplicateModules[i]] = true;\n }\n }\n _createSortedPathsRules() {\n // Create an array our of the paths rules, sorted descending by length to\n // result in a more specific -> less specific order\n this.sortedPathsRules = [];\n AMDLoader.Utilities.forEachProperty(this.options.paths, (from, to) => {\n if (!Array.isArray(to)) {\n this.sortedPathsRules.push({\n from: from,\n to: [to]\n });\n }\n else {\n this.sortedPathsRules.push({\n from: from,\n to: to\n });\n }\n });\n this.sortedPathsRules.sort((a, b) => {\n return b.from.length - a.from.length;\n });\n }\n /**\n * Clone current configuration and overwrite options selectively.\n * @param options The selective options to overwrite with.\n * @result A new configuration\n */\n cloneAndMerge(options) {\n return new Configuration(this._env, ConfigurationOptionsUtil.mergeConfigurationOptions(options, this.options));\n }\n /**\n * Get current options bag. Useful for passing it forward to plugins.\n */\n getOptionsLiteral() {\n return this.options;\n }\n _applyPaths(moduleId) {\n let pathRule;\n for (let i = 0, len = this.sortedPathsRules.length; i < len; i++) {\n pathRule = this.sortedPathsRules[i];\n if (AMDLoader.Utilities.startsWith(moduleId, pathRule.from)) {\n let result = [];\n for (let j = 0, lenJ = pathRule.to.length; j < lenJ; j++) {\n result.push(pathRule.to[j] + moduleId.substr(pathRule.from.length));\n }\n return result;\n }\n }\n return [moduleId];\n }\n _addUrlArgsToUrl(url) {\n if (AMDLoader.Utilities.containsQueryString(url)) {\n return url + '&' + this.options.urlArgs;\n }\n else {\n return url + '?' + this.options.urlArgs;\n }\n }\n _addUrlArgsIfNecessaryToUrl(url) {\n if (this.options.urlArgs) {\n return this._addUrlArgsToUrl(url);\n }\n return url;\n }\n _addUrlArgsIfNecessaryToUrls(urls) {\n if (this.options.urlArgs) {\n for (let i = 0, len = urls.length; i < len; i++) {\n urls[i] = this._addUrlArgsToUrl(urls[i]);\n }\n }\n return urls;\n }\n /**\n * Transform a module id to a location. Appends .js to module ids\n */\n moduleIdToPaths(moduleId) {\n if (this._env.isNode) {\n const isNodeModule = (this.options.amdModulesPattern instanceof RegExp\n && !this.options.amdModulesPattern.test(moduleId));\n if (isNodeModule) {\n // This is a node module...\n if (this.isBuild()) {\n // ...and we are at build time, drop it\n return ['empty:'];\n }\n else {\n // ...and at runtime we create a `shortcut`-path\n return ['node|' + moduleId];\n }\n }\n }\n let result = moduleId;\n let results;\n if (!AMDLoader.Utilities.endsWith(result, '.js') && !AMDLoader.Utilities.isAbsolutePath(result)) {\n results = this._applyPaths(result);\n for (let i = 0, len = results.length; i < len; i++) {\n if (this.isBuild() && results[i] === 'empty:') {\n continue;\n }\n if (!AMDLoader.Utilities.isAbsolutePath(results[i])) {\n results[i] = this.options.baseUrl + results[i];\n }\n if (!AMDLoader.Utilities.endsWith(results[i], '.js') && !AMDLoader.Utilities.containsQueryString(results[i])) {\n results[i] = results[i] + '.js';\n }\n }\n }\n else {\n if (!AMDLoader.Utilities.endsWith(result, '.js') && !AMDLoader.Utilities.containsQueryString(result)) {\n result = result + '.js';\n }\n results = [result];\n }\n return this._addUrlArgsIfNecessaryToUrls(results);\n }\n /**\n * Transform a module id or url to a location.\n */\n requireToUrl(url) {\n let result = url;\n if (!AMDLoader.Utilities.isAbsolutePath(result)) {\n result = this._applyPaths(result)[0];\n if (!AMDLoader.Utilities.isAbsolutePath(result)) {\n result = this.options.baseUrl + result;\n }\n }\n return this._addUrlArgsIfNecessaryToUrl(result);\n }\n /**\n * Flag to indicate if current execution is as part of a build.\n */\n isBuild() {\n return this.options.isBuild;\n }\n shouldInvokeFactory(strModuleId) {\n if (!this.options.isBuild) {\n // outside of a build, all factories should be invoked\n return true;\n }\n // during a build, only explicitly marked or anonymous modules get their factories invoked\n if (AMDLoader.Utilities.isAnonymousModule(strModuleId)) {\n return true;\n }\n if (this.options.buildForceInvokeFactory && this.options.buildForceInvokeFactory[strModuleId]) {\n return true;\n }\n return false;\n }\n /**\n * Test if module `moduleId` is expected to be defined multiple times\n */\n isDuplicateMessageIgnoredFor(moduleId) {\n return this.ignoreDuplicateModulesMap.hasOwnProperty(moduleId);\n }\n /**\n * Get the configuration settings for the provided module id\n */\n getConfigForModule(moduleId) {\n if (this.options.config) {\n return this.options.config[moduleId];\n }\n }\n /**\n * Should errors be caught when executing module factories?\n */\n shouldCatchError() {\n return this.options.catchError;\n }\n /**\n * Should statistics be recorded?\n */\n shouldRecordStats() {\n return this.options.recordStats;\n }\n /**\n * Forward an error to the error handler.\n */\n onError(err) {\n this.options.onError(err);\n }\n }\n AMDLoader.Configuration = Configuration;\n})(AMDLoader || (AMDLoader = {}));\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar AMDLoader;\n(function (AMDLoader) {\n /**\n * Load `scriptSrc` only once (avoid multiple <script> tags)\n */\n class OnlyOnceScriptLoader {\n constructor(env) {\n this._env = env;\n this._scriptLoader = null;\n this._callbackMap = {};\n }\n load(moduleManager, scriptSrc, callback, errorback) {\n if (!this._scriptLoader) {\n if (this._env.isWebWorker) {\n this._scriptLoader = new WorkerScriptLoader();\n }\n else if (this._env.isElectronRenderer) {\n const { preferScriptTags } = moduleManager.getConfig().getOptionsLiteral();\n if (preferScriptTags) {\n this._scriptLoader = new BrowserScriptLoader();\n }\n else {\n this._scriptLoader = new NodeScriptLoader(this._env);\n }\n }\n else if (this._env.isNode) {\n this._scriptLoader = new NodeScriptLoader(this._env);\n }\n else {\n this._scriptLoader = new BrowserScriptLoader();\n }\n }\n let scriptCallbacks = {\n callback: callback,\n errorback: errorback\n };\n if (this._callbackMap.hasOwnProperty(scriptSrc)) {\n this._callbackMap[scriptSrc].push(scriptCallbacks);\n return;\n }\n this._callbackMap[scriptSrc] = [scriptCallbacks];\n this._scriptLoader.load(moduleManager, scriptSrc, () => this.triggerCallback(scriptSrc), (err) => this.triggerErrorback(scriptSrc, err));\n }\n triggerCallback(scriptSrc) {\n let scriptCallbacks = this._callbackMap[scriptSrc];\n delete this._callbackMap[scriptSrc];\n for (let i = 0; i < scriptCallbacks.length; i++) {\n scriptCallbacks[i].callback();\n }\n }\n triggerErrorback(scriptSrc, err) {\n let scriptCallbacks = this._callbackMap[scriptSrc];\n delete this._callbackMap[scriptSrc];\n for (let i = 0; i < scriptCallbacks.length; i++) {\n scriptCallbacks[i].errorback(err);\n }\n }\n }\n class BrowserScriptLoader {\n /**\n * Attach load / error listeners to a script element and remove them when either one has fired.\n * Implemented for browsers supporting HTML5 standard 'load' and 'error' events.\n */\n attachListeners(script, callback, errorback) {\n let unbind = () => {\n script.removeEventListener('load', loadEventListener);\n script.removeEventListener('error', errorEventListener);\n };\n let loadEventListener = (e) => {\n unbind();\n callback();\n };\n let errorEventListener = (e) => {\n unbind();\n errorback(e);\n };\n script.addEventListener('load', loadEventListener);\n script.addEventListener('error', errorEventListener);\n }\n load(moduleManager, scriptSrc, callback, errorback) {\n if (/^node\\|/.test(scriptSrc)) {\n let opts = moduleManager.getConfig().getOptionsLiteral();\n let nodeRequire = ensureRecordedNodeRequire(moduleManager.getRecorder(), (opts.nodeRequire || AMDLoader.global.nodeRequire));\n let pieces = scriptSrc.split('|');\n let moduleExports = null;\n try {\n moduleExports = nodeRequire(pieces[1]);\n }\n catch (err) {\n errorback(err);\n return;\n }\n moduleManager.enqueueDefineAnonymousModule([], () => moduleExports);\n callback();\n }\n else {\n let script = document.createElement('script');\n script.setAttribute('async', 'async');\n script.setAttribute('type', 'text/javascript');\n this.attachListeners(script, callback, errorback);\n const { trustedTypesPolicy } = moduleManager.getConfig().getOptionsLiteral();\n if (trustedTypesPolicy) {\n scriptSrc = trustedTypesPolicy.createScriptURL(scriptSrc);\n }\n script.setAttribute('src', scriptSrc);\n // Propagate CSP nonce to dynamically created script tag.\n const { cspNonce } = moduleManager.getConfig().getOptionsLiteral();\n if (cspNonce) {\n script.setAttribute('nonce', cspNonce);\n }\n document.getElementsByTagName('head')[0].appendChild(script);\n }\n }\n }\n function canUseEval(moduleManager) {\n const { trustedTypesPolicy } = moduleManager.getConfig().getOptionsLiteral();\n try {\n const func = (trustedTypesPolicy\n ? self.eval(trustedTypesPolicy.createScript('', 'true'))\n : new Function('true'));\n func.call(self);\n return true;\n }\n catch (err) {\n return false;\n }\n }\n class WorkerScriptLoader {\n constructor() {\n this._cachedCanUseEval = null;\n }\n _canUseEval(moduleManager) {\n if (this._cachedCanUseEval === null) {\n this._cachedCanUseEval = canUseEval(moduleManager);\n }\n return this._cachedCanUseEval;\n }\n load(moduleManager, scriptSrc, callback, errorback) {\n if (/^node\\|/.test(scriptSrc)) {\n const opts = moduleManager.getConfig().getOptionsLiteral();\n const nodeRequire = ensureRecordedNodeRequire(moduleManager.getRecorder(), (opts.nodeRequire || AMDLoader.global.nodeRequire));\n const pieces = scriptSrc.split('|');\n let moduleExports = null;\n try {\n moduleExports = nodeRequire(pieces[1]);\n }\n catch (err) {\n errorback(err);\n return;\n }\n moduleManager.enqueueDefineAnonymousModule([], function () { return moduleExports; });\n callback();\n }\n else {\n const { trustedTypesPolicy } = moduleManager.getConfig().getOptionsLiteral();\n const isCrossOrigin = (/^((http:)|(https:)|(file:))/.test(scriptSrc) && scriptSrc.substring(0, self.origin.length) !== self.origin);\n if (!isCrossOrigin && this._canUseEval(moduleManager)) {\n // use `fetch` if possible because `importScripts`\n // is synchronous and can lead to deadlocks on Safari\n fetch(scriptSrc).then((response) => {\n if (response.status !== 200) {\n throw new Error(response.statusText);\n }\n return response.text();\n }).then((text) => {\n text = `${text}\\n//# sourceURL=${scriptSrc}`;\n const func = (trustedTypesPolicy\n ? self.eval(trustedTypesPolicy.createScript('', text))\n : new Function(text));\n func.call(self);\n callback();\n }).then(undefined, errorback);\n return;\n }\n try {\n if (trustedTypesPolicy) {\n scriptSrc = trustedTypesPolicy.createScriptURL(scriptSrc);\n }\n importScripts(scriptSrc);\n callback();\n }\n catch (e) {\n errorback(e);\n }\n }\n }\n }\n class NodeScriptLoader {\n constructor(env) {\n this._env = env;\n this._didInitialize = false;\n this._didPatchNodeRequire = false;\n }\n _init(nodeRequire) {\n if (this._didInitialize) {\n return;\n }\n this._didInitialize = true;\n // capture node modules\n this._fs = nodeRequire('fs');\n this._vm = nodeRequire('vm');\n this._path = nodeRequire('path');\n this._crypto = nodeRequire('crypto');\n }\n // patch require-function of nodejs such that we can manually create a script\n // from cached data. this is done by overriding the `Module._compile` function\n _initNodeRequire(nodeRequire, moduleManager) {\n // It is important to check for `nodeCachedData` first and then set `_didPatchNodeRequire`.\n // That's because `nodeCachedData` is set _after_ calling this for the first time...\n const { nodeCachedData } = moduleManager.getConfig().getOptionsLiteral();\n if (!nodeCachedData) {\n return;\n }\n if (this._didPatchNodeRequire) {\n return;\n }\n this._didPatchNodeRequire = true;\n const that = this;\n const Module = nodeRequire('module');\n function makeRequireFunction(mod) {\n const Module = mod.constructor;\n let require = function require(path) {\n try {\n return mod.require(path);\n }\n finally {\n // nothing\n }\n };\n require.resolve = function resolve(request, options) {\n return Module._resolveFilename(request, mod, false, options);\n };\n require.resolve.paths = function paths(request) {\n return Module._resolveLookupPaths(request, mod);\n };\n require.main = process.mainModule;\n require.extensions = Module._extensions;\n require.cache = Module._cache;\n return require;\n }\n Module.prototype._compile = function (content, filename) {\n // remove shebang and create wrapper function\n const scriptSource = Module.wrap(content.replace(/^#!.*/, ''));\n // create script\n const recorder = moduleManager.getRecorder();\n const cachedDataPath = that._getCachedDataPath(nodeCachedData, filename);\n const options = { filename };\n let hashData;\n try {\n const data = that._fs.readFileSync(cachedDataPath);\n hashData = data.slice(0, 16);\n options.cachedData = data.slice(16);\n recorder.record(60 /* LoaderEventType.CachedDataFound */, cachedDataPath);\n }\n catch (_e) {\n recorder.record(61 /* LoaderEventType.CachedDataMissed */, cachedDataPath);\n }\n const script = new that._vm.Script(scriptSource, options);\n const compileWrapper = script.runInThisContext(options);\n // run script\n const dirname = that._path.dirname(filename);\n const require = makeRequireFunction(this);\n const args = [this.exports, require, this, filename, dirname, process, _commonjsGlobal, Buffer];\n const result = compileWrapper.apply(this.exports, args);\n // cached data aftermath\n that._handleCachedData(script, scriptSource, cachedDataPath, !options.cachedData, moduleManager);\n that._verifyCachedData(script, scriptSource, cachedDataPath, hashData, moduleManager);\n return result;\n };\n }\n load(moduleManager, scriptSrc, callback, errorback) {\n const opts = moduleManager.getConfig().getOptionsLiteral();\n const nodeRequire = ensureRecordedNodeRequire(moduleManager.getRecorder(), (opts.nodeRequire || AMDLoader.global.nodeRequire));\n const nodeInstrumenter = (opts.nodeInstrumenter || function (c) { return c; });\n this._init(nodeRequire);\n this._initNodeRequire(nodeRequire, moduleManager);\n let recorder = moduleManager.getRecorder();\n if (/^node\\|/.test(scriptSrc)) {\n let pieces = scriptSrc.split('|');\n let moduleExports = null;\n try {\n moduleExports = nodeRequire(pieces[1]);\n }\n catch (err) {\n errorback(err);\n return;\n }\n moduleManager.enqueueDefineAnonymousModule([], () => moduleExports);\n callback();\n }\n else {\n scriptSrc = AMDLoader.Utilities.fileUriToFilePath(this._env.isWindows, scriptSrc);\n const normalizedScriptSrc = this._path.normalize(scriptSrc);\n const vmScriptPathOrUri = this._getElectronRendererScriptPathOrUri(normalizedScriptSrc);\n const wantsCachedData = Boolean(opts.nodeCachedData);\n const cachedDataPath = wantsCachedData ? this._getCachedDataPath(opts.nodeCachedData, scriptSrc) : undefined;\n this._readSourceAndCachedData(normalizedScriptSrc, cachedDataPath, recorder, (err, data, cachedData, hashData) => {\n if (err) {\n errorback(err);\n return;\n }\n let scriptSource;\n if (data.charCodeAt(0) === NodeScriptLoader._BOM) {\n scriptSource = NodeScriptLoader._PREFIX + data.substring(1) + NodeScriptLoader._SUFFIX;\n }\n else {\n scriptSource = NodeScriptLoader._PREFIX + data + NodeScriptLoader._SUFFIX;\n }\n scriptSource = nodeInstrumenter(scriptSource, normalizedScriptSrc);\n const scriptOpts = { filename: vmScriptPathOrUri, cachedData };\n const script = this._createAndEvalScript(moduleManager, scriptSource, scriptOpts, callback, errorback);\n this._handleCachedData(script, scriptSource, cachedDataPath, wantsCachedData && !cachedData, moduleManager);\n this._verifyCachedData(script, scriptSource, cachedDataPath, hashData, moduleManager);\n });\n }\n }\n _createAndEvalScript(moduleManager, contents, options, callback, errorback) {\n const recorder = moduleManager.getRecorder();\n recorder.record(31 /* LoaderEventType.NodeBeginEvaluatingScript */, options.filename);\n const script = new this._vm.Script(contents, options);\n const ret = script.runInThisContext(options);\n const globalDefineFunc = moduleManager.getGlobalAMDDefineFunc();\n let receivedDefineCall = false;\n const localDefineFunc = function () {\n receivedDefineCall = true;\n return globalDefineFunc.apply(null, arguments);\n };\n localDefineFunc.amd = globalDefineFunc.amd;\n ret.call(AMDLoader.global, moduleManager.getGlobalAMDRequireFunc(), localDefineFunc, options.filename, this._path.dirname(options.filename));\n recorder.record(32 /* LoaderEventType.NodeEndEvaluatingScript */, options.filename);\n if (receivedDefineCall) {\n callback();\n }\n else {\n errorback(new Error(`Didn't receive define call in ${options.filename}!`));\n }\n return script;\n }\n _getElectronRendererScriptPathOrUri(path) {\n if (!this._env.isElectronRenderer) {\n return path;\n }\n let driveLetterMatch = path.match(/^([a-z])\\:(.*)/i);\n if (driveLetterMatch) {\n // windows\n return `file:///${(driveLetterMatch[1].toUpperCase() + ':' + driveLetterMatch[2]).replace(/\\\\/g, '/')}`;\n }\n else {\n // nix\n return `file://${path}`;\n }\n }\n _getCachedDataPath(config, filename) {\n const hash = this._crypto.createHash('md5').update(filename, 'utf8').update(config.seed, 'utf8').update(process.arch, '').digest('hex');\n const basename = this._path.basename(filename).replace(/\\.js$/, '');\n return this._path.join(config.path, `${basename}-${hash}.code`);\n }\n _handleCachedData(script, scriptSource, cachedDataPath, createCachedData, moduleManager) {\n if (script.cachedDataRejected) {\n // cached data got rejected -> delete and re-create\n this._fs.unlink(cachedDataPath, err => {\n moduleManager.getRecorder().record(62 /* LoaderEventType.CachedDataRejected */, cachedDataPath);\n this._createAndWriteCachedData(script, scriptSource, cachedDataPath, moduleManager);\n if (err) {\n moduleManager.getConfig().onError(err);\n }\n });\n }\n else if (createCachedData) {\n // no cached data, but wanted\n this._createAndWriteCachedData(script, scriptSource, cachedDataPath, moduleManager);\n }\n }\n // Cached data format: | SOURCE_HASH | V8_CACHED_DATA |\n // -SOURCE_HASH is the md5 hash of the JS source (always 16 bytes)\n // -V8_CACHED_DATA is what v8 produces\n _createAndWriteCachedData(script, scriptSource, cachedDataPath, moduleManager) {\n let timeout = Math.ceil(moduleManager.getConfig().getOptionsLiteral().nodeCachedData.writeDelay * (1 + Math.random()));\n let lastSize = -1;\n let iteration = 0;\n let hashData = undefined;\n const createLoop = () => {\n setTimeout(() => {\n if (!hashData) {\n hashData = this._crypto.createHash('md5').update(scriptSource, 'utf8').digest();\n }\n const cachedData = script.createCachedData();\n if (cachedData.length === 0 || cachedData.length === lastSize || iteration >= 5) {\n // done\n return;\n }\n if (cachedData.length < lastSize) {\n // less data than before: skip, try again next round\n createLoop();\n return;\n }\n lastSize = cachedData.length;\n this._fs.writeFile(cachedDataPath, Buffer.concat([hashData, cachedData]), err => {\n if (err) {\n moduleManager.getConfig().onError(err);\n }\n moduleManager.getRecorder().record(63 /* LoaderEventType.CachedDataCreated */, cachedDataPath);\n createLoop();\n });\n }, timeout * (Math.pow(4, iteration++)));\n };\n // with some delay (`timeout`) create cached data\n // and repeat that (with backoff delay) until the\n // data seems to be not changing anymore\n createLoop();\n }\n _readSourceAndCachedData(sourcePath, cachedDataPath, recorder, callback) {\n if (!cachedDataPath) {\n // no cached data case\n this._fs.readFile(sourcePath, { encoding: 'utf8' }, callback);\n }\n else {\n // cached data case: read both files in parallel\n let source = undefined;\n let cachedData = undefined;\n let hashData = undefined;\n let steps = 2;\n const step = (err) => {\n if (err) {\n callback(err);\n }\n else if (--steps === 0) {\n callback(undefined, source, cachedData, hashData);\n }\n };\n this._fs.readFile(sourcePath, { encoding: 'utf8' }, (err, data) => {\n source = data;\n step(err);\n });\n this._fs.readFile(cachedDataPath, (err, data) => {\n if (!err && data && data.length > 0) {\n hashData = data.slice(0, 16);\n cachedData = data.slice(16);\n recorder.record(60 /* LoaderEventType.CachedDataFound */, cachedDataPath);\n }\n else {\n recorder.record(61 /* LoaderEventType.CachedDataMissed */, cachedDataPath);\n }\n step(); // ignored: cached data is optional\n });\n }\n }\n _verifyCachedData(script, scriptSource, cachedDataPath, hashData, moduleManager) {\n if (!hashData) {\n // nothing to do\n return;\n }\n if (script.cachedDataRejected) {\n // invalid anyways\n return;\n }\n setTimeout(() => {\n // check source hash - the contract is that file paths change when file content\n // change (e.g use the commit or version id as cache path). this check is\n // for violations of this contract.\n const hashDataNow = this._crypto.createHash('md5').update(scriptSource, 'utf8').digest();\n if (!hashData.equals(hashDataNow)) {\n moduleManager.getConfig().onError(new Error(`FAILED TO VERIFY CACHED DATA, deleting stale '${cachedDataPath}' now, but a RESTART IS REQUIRED`));\n this._fs.unlink(cachedDataPath, err => {\n if (err) {\n moduleManager.getConfig().onError(err);\n }\n });\n }\n }, Math.ceil(5000 * (1 + Math.random())));\n }\n }\n NodeScriptLoader._BOM = 0xFEFF;\n NodeScriptLoader._PREFIX = '(function (require, define, __filename, __dirname) { ';\n NodeScriptLoader._SUFFIX = '\\n});';\n function ensureRecordedNodeRequire(recorder, _nodeRequire) {\n if (_nodeRequire.__$__isRecorded) {\n // it is already recorded\n return _nodeRequire;\n }\n const nodeRequire = function nodeRequire(what) {\n recorder.record(33 /* LoaderEventType.NodeBeginNativeRequire */, what);\n try {\n return _nodeRequire(what);\n }\n finally {\n recorder.record(34 /* LoaderEventType.NodeEndNativeRequire */, what);\n }\n };\n nodeRequire.__$__isRecorded = true;\n return nodeRequire;\n }\n AMDLoader.ensureRecordedNodeRequire = ensureRecordedNodeRequire;\n function createScriptLoader(env) {\n return new OnlyOnceScriptLoader(env);\n }\n AMDLoader.createScriptLoader = createScriptLoader;\n})(AMDLoader || (AMDLoader = {}));\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar AMDLoader;\n(function (AMDLoader) {\n // ------------------------------------------------------------------------\n // ModuleIdResolver\n class ModuleIdResolver {\n constructor(fromModuleId) {\n let lastSlash = fromModuleId.lastIndexOf('/');\n if (lastSlash !== -1) {\n this.fromModulePath = fromModuleId.substr(0, lastSlash + 1);\n }\n else {\n this.fromModulePath = '';\n }\n }\n /**\n * Normalize 'a/../name' to 'name', etc.\n */\n static _normalizeModuleId(moduleId) {\n let r = moduleId, pattern;\n // replace /./ => /\n pattern = /\\/\\.\\//;\n while (pattern.test(r)) {\n r = r.replace(pattern, '/');\n }\n // replace ^./ => nothing\n r = r.replace(/^\\.\\//g, '');\n // replace /aa/../ => / (BUT IGNORE /../../)\n pattern = /\\/(([^\\/])|([^\\/][^\\/\\.])|([^\\/\\.][^\\/])|([^\\/][^\\/][^\\/]+))\\/\\.\\.\\//;\n while (pattern.test(r)) {\n r = r.replace(pattern, '/');\n }\n // replace ^aa/../ => nothing (BUT IGNORE ../../)\n r = r.replace(/^(([^\\/])|([^\\/][^\\/\\.])|([^\\/\\.][^\\/])|([^\\/][^\\/][^\\/]+))\\/\\.\\.\\//, '');\n return r;\n }\n /**\n * Resolve relative module ids\n */\n resolveModule(moduleId) {\n let result = moduleId;\n if (!AMDLoader.Utilities.isAbsolutePath(result)) {\n if (AMDLoader.Utilities.startsWith(result, './') || AMDLoader.Utilities.startsWith(result, '../')) {\n result = ModuleIdResolver._normalizeModuleId(this.fromModulePath + result);\n }\n }\n return result;\n }\n }\n ModuleIdResolver.ROOT = new ModuleIdResolver('');\n AMDLoader.ModuleIdResolver = ModuleIdResolver;\n // ------------------------------------------------------------------------\n // Module\n class Module {\n constructor(id, strId, dependencies, callback, errorback, moduleIdResolver) {\n this.id = id;\n this.strId = strId;\n this.dependencies = dependencies;\n this._callback = callback;\n this._errorback = errorback;\n this.moduleIdResolver = moduleIdResolver;\n this.exports = {};\n this.error = null;\n this.exportsPassedIn = false;\n this.unresolvedDependenciesCount = this.dependencies.length;\n this._isComplete = false;\n }\n static _safeInvokeFunction(callback, args) {\n try {\n return {\n returnedValue: callback.apply(AMDLoader.global, args),\n producedError: null\n };\n }\n catch (e) {\n return {\n returnedValue: null,\n producedError: e\n };\n }\n }\n static _invokeFactory(config, strModuleId, callback, dependenciesValues) {\n if (!config.shouldInvokeFactory(strModuleId)) {\n return {\n returnedValue: null,\n producedError: null\n };\n }\n if (config.shouldCatchError()) {\n return this._safeInvokeFunction(callback, dependenciesValues);\n }\n return {\n returnedValue: callback.apply(AMDLoader.global, dependenciesValues),\n producedError: null\n };\n }\n complete(recorder, config, dependenciesValues, inversedependenciesProvider) {\n this._isComplete = true;\n let producedError = null;\n if (this._callback) {\n if (typeof this._callback === 'function') {\n recorder.record(21 /* LoaderEventType.BeginInvokeFactory */, this.strId);\n let r = Module._invokeFactory(config, this.strId, this._callback, dependenciesValues);\n producedError = r.producedError;\n recorder.record(22 /* LoaderEventType.EndInvokeFactory */, this.strId);\n if (!producedError && typeof r.returnedValue !== 'undefined' && (!this.exportsPassedIn || AMDLoader.Utilities.isEmpty(this.exports))) {\n this.exports = r.returnedValue;\n }\n }\n else {\n this.exports = this._callback;\n }\n }\n if (producedError) {\n let err = AMDLoader.ensureError(producedError);\n err.phase = 'factory';\n err.moduleId = this.strId;\n err.neededBy = inversedependenciesProvider(this.id);\n this.error = err;\n config.onError(err);\n }\n this.dependencies = null;\n this._callback = null;\n this._errorback = null;\n this.moduleIdResolver = null;\n }\n /**\n * One of the direct dependencies or a transitive dependency has failed to load.\n */\n onDependencyError(err) {\n this._isComplete = true;\n this.error = err;\n if (this._errorback) {\n this._errorback(err);\n return true;\n }\n return false;\n }\n /**\n * Is the current module complete?\n */\n isComplete() {\n return this._isComplete;\n }\n }\n AMDLoader.Module = Module;\n class ModuleIdProvider {\n constructor() {\n this._nextId = 0;\n this._strModuleIdToIntModuleId = new Map();\n this._intModuleIdToStrModuleId = [];\n // Ensure values 0, 1, 2 are assigned accordingly with ModuleId\n this.getModuleId('exports');\n this.getModuleId('module');\n this.getModuleId('require');\n }\n getMaxModuleId() {\n return this._nextId;\n }\n getModuleId(strModuleId) {\n let id = this._strModuleIdToIntModuleId.get(strModuleId);\n if (typeof id === 'undefined') {\n id = this._nextId++;\n this._strModuleIdToIntModuleId.set(strModuleId, id);\n this._intModuleIdToStrModuleId[id] = strModuleId;\n }\n return id;\n }\n getStrModuleId(moduleId) {\n return this._intModuleIdToStrModuleId[moduleId];\n }\n }\n class RegularDependency {\n constructor(id) {\n this.id = id;\n }\n }\n RegularDependency.EXPORTS = new RegularDependency(0 /* ModuleId.EXPORTS */);\n RegularDependency.MODULE = new RegularDependency(1 /* ModuleId.MODULE */);\n RegularDependency.REQUIRE = new RegularDependency(2 /* ModuleId.REQUIRE */);\n AMDLoader.RegularDependency = RegularDependency;\n class PluginDependency {\n constructor(id, pluginId, pluginParam) {\n this.id = id;\n this.pluginId = pluginId;\n this.pluginParam = pluginParam;\n }\n }\n AMDLoader.PluginDependency = PluginDependency;\n class ModuleManager {\n constructor(env, scriptLoader, defineFunc, requireFunc, loaderAvailableTimestamp = 0) {\n this._env = env;\n this._scriptLoader = scriptLoader;\n this._loaderAvailableTimestamp = loaderAvailableTimestamp;\n this._defineFunc = defineFunc;\n this._requireFunc = requireFunc;\n this._moduleIdProvider = new ModuleIdProvider();\n this._config = new AMDLoader.Configuration(this._env);\n this._hasDependencyCycle = false;\n this._modules2 = [];\n this._knownModules2 = [];\n this._inverseDependencies2 = [];\n this._inversePluginDependencies2 = new Map();\n this._currentAnonymousDefineCall = null;\n this._recorder = null;\n this._buildInfoPath = [];\n this._buildInfoDefineStack = [];\n this._buildInfoDependencies = [];\n }\n reset() {\n return new ModuleManager(this._env, this._scriptLoader, this._defineFunc, this._requireFunc, this._loaderAvailableTimestamp);\n }\n getGlobalAMDDefineFunc() {\n return this._defineFunc;\n }\n getGlobalAMDRequireFunc() {\n return this._requireFunc;\n }\n static _findRelevantLocationInStack(needle, stack) {\n let normalize = (str) => str.replace(/\\\\/g, '/');\n let normalizedPath = normalize(needle);\n let stackPieces = stack.split(/\\n/);\n for (let i = 0; i < stackPieces.length; i++) {\n let m = stackPieces[i].match(/(.*):(\\d+):(\\d+)\\)?$/);\n if (m) {\n let stackPath = m[1];\n let stackLine = m[2];\n let stackColumn = m[3];\n let trimPathOffset = Math.max(stackPath.lastIndexOf(' ') + 1, stackPath.lastIndexOf('(') + 1);\n stackPath = stackPath.substr(trimPathOffset);\n stackPath = normalize(stackPath);\n if (stackPath === normalizedPath) {\n let r = {\n line: parseInt(stackLine, 10),\n col: parseInt(stackColumn, 10)\n };\n if (r.line === 1) {\n r.col -= '(function (require, define, __filename, __dirname) { '.length;\n }\n return r;\n }\n }\n }\n throw new Error('Could not correlate define call site for needle ' + needle);\n }\n getBuildInfo() {\n if (!this._config.isBuild()) {\n return null;\n }\n let result = [], resultLen = 0;\n for (let i = 0, len = this._modules2.length; i < len; i++) {\n let m = this._modules2[i];\n if (!m) {\n continue;\n }\n let location = this._buildInfoPath[m.id] || null;\n let defineStack = this._buildInfoDefineStack[m.id] || null;\n let dependencies = this._buildInfoDependencies[m.id];\n result[resultLen++] = {\n id: m.strId,\n path: location,\n defineLocation: (location && defineStack ? ModuleManager._findRelevantLocationInStack(location, defineStack) : null),\n dependencies: dependencies,\n shim: null,\n exports: m.exports\n };\n }\n return result;\n }\n getRecorder() {\n if (!this._recorder) {\n if (this._config.shouldRecordStats()) {\n this._recorder = new AMDLoader.LoaderEventRecorder(this._loaderAvailableTimestamp);\n }\n else {\n this._recorder = AMDLoader.NullLoaderEventRecorder.INSTANCE;\n }\n }\n return this._recorder;\n }\n getLoaderEvents() {\n return this.getRecorder().getEvents();\n }\n /**\n * Defines an anonymous module (without an id). Its name will be resolved as we receive a callback from the scriptLoader.\n * @param dependencies @see defineModule\n * @param callback @see defineModule\n */\n enqueueDefineAnonymousModule(dependencies, callback) {\n if (this._currentAnonymousDefineCall !== null) {\n throw new Error('Can only have one anonymous define call per script file');\n }\n let stack = null;\n if (this._config.isBuild()) {\n stack = new Error('StackLocation').stack || null;\n }\n this._currentAnonymousDefineCall = {\n stack: stack,\n dependencies: dependencies,\n callback: callback\n };\n }\n /**\n * Creates a module and stores it in _modules. The manager will immediately begin resolving its dependencies.\n * @param strModuleId An unique and absolute id of the module. This must not collide with another module's id\n * @param dependencies An array with the dependencies of the module. Special keys are: \"require\", \"exports\" and \"module\"\n * @param callback if callback is a function, it will be called with the resolved dependencies. if callback is an object, it will be considered as the exports of the module.\n */\n defineModule(strModuleId, dependencies, callback, errorback, stack, moduleIdResolver = new ModuleIdResolver(strModuleId)) {\n let moduleId = this._moduleIdProvider.getModuleId(strModuleId);\n if (this._modules2[moduleId]) {\n if (!this._config.isDuplicateMessageIgnoredFor(strModuleId)) {\n console.warn('Duplicate definition of module \\'' + strModuleId + '\\'');\n }\n // Super important! Completely ignore duplicate module definition\n return;\n }\n let m = new Module(moduleId, strModuleId, this._normalizeDependencies(dependencies, moduleIdResolver), callback, errorback, moduleIdResolver);\n this._modules2[moduleId] = m;\n if (this._config.isBuild()) {\n this._buildInfoDefineStack[moduleId] = stack;\n this._buildInfoDependencies[moduleId] = (m.dependencies || []).map(dep => this._moduleIdProvider.getStrModuleId(dep.id));\n }\n // Resolving of dependencies is immediate (not in a timeout). If there's a need to support a packer that concatenates in an\n // unordered manner, in order to finish processing the file, execute the following method in a timeout\n this._resolve(m);\n }\n _normalizeDependency(dependency, moduleIdResolver) {\n if (dependency === 'exports') {\n return RegularDependency.EXPORTS;\n }\n if (dependency === 'module') {\n return RegularDependency.MODULE;\n }\n if (dependency === 'require') {\n return RegularDependency.REQUIRE;\n }\n // Normalize dependency and then request it from the manager\n let bangIndex = dependency.indexOf('!');\n if (bangIndex >= 0) {\n let strPluginId = moduleIdResolver.resolveModule(dependency.substr(0, bangIndex));\n let pluginParam = moduleIdResolver.resolveModule(dependency.substr(bangIndex + 1));\n let dependencyId = this._moduleIdProvider.getModuleId(strPluginId + '!' + pluginParam);\n let pluginId = this._moduleIdProvider.getModuleId(strPluginId);\n return new PluginDependency(dependencyId, pluginId, pluginParam);\n }\n return new RegularDependency(this._moduleIdProvider.getModuleId(moduleIdResolver.resolveModule(dependency)));\n }\n _normalizeDependencies(dependencies, moduleIdResolver) {\n let result = [], resultLen = 0;\n for (let i = 0, len = dependencies.length; i < len; i++) {\n result[resultLen++] = this._normalizeDependency(dependencies[i], moduleIdResolver);\n }\n return result;\n }\n _relativeRequire(moduleIdResolver, dependencies, callback, errorback) {\n if (typeof dependencies === 'string') {\n return this.synchronousRequire(dependencies, moduleIdResolver);\n }\n this.defineModule(AMDLoader.Utilities.generateAnonymousModule(), dependencies, callback, errorback, null, moduleIdResolver);\n }\n /**\n * Require synchronously a module by its absolute id. If the module is not loaded, an exception will be thrown.\n * @param id The unique and absolute id of the required module\n * @return The exports of module 'id'\n */\n synchronousRequire(_strModuleId, moduleIdResolver = new ModuleIdResolver(_strModuleId)) {\n let dependency = this._normalizeDependency(_strModuleId, moduleIdResolver);\n let m = this._modules2[dependency.id];\n if (!m) {\n throw new Error('Check dependency list! Synchronous require cannot resolve module \\'' + _strModuleId + '\\'. This is the first mention of this module!');\n }\n if (!m.isComplete()) {\n throw new Error('Check dependency list! Synchronous require cannot resolve module \\'' + _strModuleId + '\\'. This module has not been resolved completely yet.');\n }\n if (m.error) {\n throw m.error;\n }\n return m.exports;\n }\n configure(params, shouldOverwrite) {\n let oldShouldRecordStats = this._config.shouldRecordStats();\n if (shouldOverwrite) {\n this._config = new AMDLoader.Configuration(this._env, params);\n }\n else {\n this._config = this._config.cloneAndMerge(params);\n }\n if (this._config.shouldRecordStats() && !oldShouldRecordStats) {\n this._recorder = null;\n }\n }\n getConfig() {\n return this._config;\n }\n /**\n * Callback from the scriptLoader when a module has been loaded.\n * This means its code is available and has been executed.\n */\n _onLoad(moduleId) {\n if (this._currentAnonymousDefineCall !== null) {\n let defineCall = this._currentAnonymousDefineCall;\n this._currentAnonymousDefineCall = null;\n // Hit an anonymous define call\n this.defineModule(this._moduleIdProvider.getStrModuleId(moduleId), defineCall.dependencies, defineCall.callback, null, defineCall.stack);\n }\n }\n _createLoadError(moduleId, _err) {\n let strModuleId = this._moduleIdProvider.getStrModuleId(moduleId);\n let neededBy = (this._inverseDependencies2[moduleId] || []).map((intModuleId) => this._moduleIdProvider.getStrModuleId(intModuleId));\n const err = AMDLoader.ensureError(_err);\n err.phase = 'loading';\n err.moduleId = strModuleId;\n err.neededBy = neededBy;\n return err;\n }\n /**\n * Callback from the scriptLoader when a module hasn't been loaded.\n * This means that the script was not found (e.g. 404) or there was an error in the script.\n */\n _onLoadError(moduleId, err) {\n const error = this._createLoadError(moduleId, err);\n if (!this._modules2[moduleId]) {\n this._modules2[moduleId] = new Module(moduleId, this._moduleIdProvider.getStrModuleId(moduleId), [], () => { }, null, null);\n }\n // Find any 'local' error handlers, walk the entire chain of inverse dependencies if necessary.\n let seenModuleId = [];\n for (let i = 0, len = this._moduleIdProvider.getMaxModuleId(); i < len; i++) {\n seenModuleId[i] = false;\n }\n let someoneNotified = false;\n let queue = [];\n queue.push(moduleId);\n seenModuleId[moduleId] = true;\n while (queue.length > 0) {\n let queueElement = queue.shift();\n let m = this._modules2[queueElement];\n if (m) {\n someoneNotified = m.onDependencyError(error) || someoneNotified;\n }\n let inverseDeps = this._inverseDependencies2[queueElement];\n if (inverseDeps) {\n for (let i = 0, len = inverseDeps.length; i < len; i++) {\n let inverseDep = inverseDeps[i];\n if (!seenModuleId[inverseDep]) {\n queue.push(inverseDep);\n seenModuleId[inverseDep] = true;\n }\n }\n }\n }\n if (!someoneNotified) {\n this._config.onError(error);\n }\n }\n /**\n * Walks (recursively) the dependencies of 'from' in search of 'to'.\n * Returns true if there is such a path or false otherwise.\n * @param from Module id to start at\n * @param to Module id to look for\n */\n _hasDependencyPath(fromId, toId) {\n let from = this._modules2[fromId];\n if (!from) {\n return false;\n }\n let inQueue = [];\n for (let i = 0, len = this._moduleIdProvider.getMaxModuleId(); i < len; i++) {\n inQueue[i] = false;\n }\n let queue = [];\n // Insert 'from' in queue\n queue.push(from);\n inQueue[fromId] = true;\n while (queue.length > 0) {\n // Pop first inserted element of queue\n let element = queue.shift();\n let dependencies = element.dependencies;\n if (dependencies) {\n // Walk the element's dependencies\n for (let i = 0, len = dependencies.length; i < len; i++) {\n let dependency = dependencies[i];\n if (dependency.id === toId) {\n // There is a path to 'to'\n return true;\n }\n let dependencyModule = this._modules2[dependency.id];\n if (dependencyModule && !inQueue[dependency.id]) {\n // Insert 'dependency' in queue\n inQueue[dependency.id] = true;\n queue.push(dependencyModule);\n }\n }\n }\n }\n // There is no path to 'to'\n return false;\n }\n /**\n * Walks (recursively) the dependencies of 'from' in search of 'to'.\n * Returns cycle as array.\n * @param from Module id to start at\n * @param to Module id to look for\n */\n _findCyclePath(fromId, toId, depth) {\n if (fromId === toId || depth === 50) {\n return [fromId];\n }\n let from = this._modules2[fromId];\n if (!from) {\n return null;\n }\n // Walk the element's dependencies\n let dependencies = from.dependencies;\n if (dependencies) {\n for (let i = 0, len = dependencies.length; i < len; i++) {\n let path = this._findCyclePath(dependencies[i].id, toId, depth + 1);\n if (path !== null) {\n path.push(fromId);\n return path;\n }\n }\n }\n return null;\n }\n /**\n * Create the local 'require' that is passed into modules\n */\n _createRequire(moduleIdResolver) {\n let result = ((dependencies, callback, errorback) => {\n return this._relativeRequire(moduleIdResolver, dependencies, callback, errorback);\n });\n result.toUrl = (id) => {\n return this._config.requireToUrl(moduleIdResolver.resolveModule(id));\n };\n result.getStats = () => {\n return this.getLoaderEvents();\n };\n result.hasDependencyCycle = () => {\n return this._hasDependencyCycle;\n };\n result.config = (params, shouldOverwrite = false) => {\n this.configure(params, shouldOverwrite);\n };\n result.__$__nodeRequire = AMDLoader.global.nodeRequire;\n return result;\n }\n _loadModule(moduleId) {\n if (this._modules2[moduleId] || this._knownModules2[moduleId]) {\n // known module\n return;\n }\n this._knownModules2[moduleId] = true;\n let strModuleId = this._moduleIdProvider.getStrModuleId(moduleId);\n let paths = this._config.moduleIdToPaths(strModuleId);\n let scopedPackageRegex = /^@[^\\/]+\\/[^\\/]+$/; // matches @scope/package-name\n if (this._env.isNode && (strModuleId.indexOf('/') === -1 || scopedPackageRegex.test(strModuleId))) {\n paths.push('node|' + strModuleId);\n }\n let lastPathIndex = -1;\n let loadNextPath = (err) => {\n lastPathIndex++;\n if (lastPathIndex >= paths.length) {\n // No more paths to try\n this._onLoadError(moduleId, err);\n }\n else {\n let currentPath = paths[lastPathIndex];\n let recorder = this.getRecorder();\n if (this._config.isBuild() && currentPath === 'empty:') {\n this._buildInfoPath[moduleId] = currentPath;\n this.defineModule(this._moduleIdProvider.getStrModuleId(moduleId), [], null, null, null);\n this._onLoad(moduleId);\n return;\n }\n recorder.record(10 /* LoaderEventType.BeginLoadingScript */, currentPath);\n this._scriptLoader.load(this, currentPath, () => {\n if (this._config.isBuild()) {\n this._buildInfoPath[moduleId] = currentPath;\n }\n recorder.record(11 /* LoaderEventType.EndLoadingScriptOK */, currentPath);\n this._onLoad(moduleId);\n }, (err) => {\n recorder.record(12 /* LoaderEventType.EndLoadingScriptError */, currentPath);\n loadNextPath(err);\n });\n }\n };\n loadNextPath(null);\n }\n /**\n * Resolve a plugin dependency with the plugin loaded & complete\n * @param module The module that has this dependency\n * @param pluginDependency The semi-normalized dependency that appears in the module. e.g. 'vs/css!./mycssfile'. Only the plugin part (before !) is normalized\n * @param plugin The plugin (what the plugin exports)\n */\n _loadPluginDependency(plugin, pluginDependency) {\n if (this._modules2[pluginDependency.id] || this._knownModules2[pluginDependency.id]) {\n // known module\n return;\n }\n this._knownModules2[pluginDependency.id] = true;\n // Delegate the loading of the resource to the plugin\n let load = ((value) => {\n this.defineModule(this._moduleIdProvider.getStrModuleId(pluginDependency.id), [], value, null, null);\n });\n load.error = (err) => {\n this._config.onError(this._createLoadError(pluginDependency.id, err));\n };\n plugin.load(pluginDependency.pluginParam, this._createRequire(ModuleIdResolver.ROOT), load, this._config.getOptionsLiteral());\n }\n /**\n * Examine the dependencies of module 'module' and resolve them as needed.\n */\n _resolve(module) {\n let dependencies = module.dependencies;\n if (dependencies) {\n for (let i = 0, len = dependencies.length; i < len; i++) {\n let dependency = dependencies[i];\n if (dependency === RegularDependency.EXPORTS) {\n module.exportsPassedIn = true;\n module.unresolvedDependenciesCount--;\n continue;\n }\n if (dependency === RegularDependency.MODULE) {\n module.unresolvedDependenciesCount--;\n continue;\n }\n if (dependency === RegularDependency.REQUIRE) {\n module.unresolvedDependenciesCount--;\n continue;\n }\n let dependencyModule = this._modules2[dependency.id];\n if (dependencyModule && dependencyModule.isComplete()) {\n if (dependencyModule.error) {\n module.onDependencyError(dependencyModule.error);\n return;\n }\n module.unresolvedDependenciesCount--;\n continue;\n }\n if (this._hasDependencyPath(dependency.id, module.id)) {\n this._hasDependencyCycle = true;\n console.warn('There is a dependency cycle between \\'' + this._moduleIdProvider.getStrModuleId(dependency.id) + '\\' and \\'' + this._moduleIdProvider.getStrModuleId(module.id) + '\\'. The cyclic path follows:');\n let cyclePath = this._findCyclePath(dependency.id, module.id, 0) || [];\n cyclePath.reverse();\n cyclePath.push(dependency.id);\n console.warn(cyclePath.map(id => this._moduleIdProvider.getStrModuleId(id)).join(' => \\n'));\n // Break the cycle\n module.unresolvedDependenciesCount--;\n continue;\n }\n // record inverse dependency\n this._inverseDependencies2[dependency.id] = this._inverseDependencies2[dependency.id] || [];\n this._inverseDependencies2[dependency.id].push(module.id);\n if (dependency instanceof PluginDependency) {\n let plugin = this._modules2[dependency.pluginId];\n if (plugin && plugin.isComplete()) {\n this._loadPluginDependency(plugin.exports, dependency);\n continue;\n }\n // Record dependency for when the plugin gets loaded\n let inversePluginDeps = this._inversePluginDependencies2.get(dependency.pluginId);\n if (!inversePluginDeps) {\n inversePluginDeps = [];\n this._inversePluginDependencies2.set(dependency.pluginId, inversePluginDeps);\n }\n inversePluginDeps.push(dependency);\n this._loadModule(dependency.pluginId);\n continue;\n }\n this._loadModule(dependency.id);\n }\n }\n if (module.unresolvedDependenciesCount === 0) {\n this._onModuleComplete(module);\n }\n }\n _onModuleComplete(module) {\n let recorder = this.getRecorder();\n if (module.isComplete()) {\n // already done\n return;\n }\n let dependencies = module.dependencies;\n let dependenciesValues = [];\n if (dependencies) {\n for (let i = 0, len = dependencies.length; i < len; i++) {\n let dependency = dependencies[i];\n if (dependency === RegularDependency.EXPORTS) {\n dependenciesValues[i] = module.exports;\n continue;\n }\n if (dependency === RegularDependency.MODULE) {\n dependenciesValues[i] = {\n id: module.strId,\n config: () => {\n return this._config.getConfigForModule(module.strId);\n }\n };\n continue;\n }\n if (dependency === RegularDependency.REQUIRE) {\n dependenciesValues[i] = this._createRequire(module.moduleIdResolver);\n continue;\n }\n let dependencyModule = this._modules2[dependency.id];\n if (dependencyModule) {\n dependenciesValues[i] = dependencyModule.exports;\n continue;\n }\n dependenciesValues[i] = null;\n }\n }\n const inversedependenciesProvider = (moduleId) => {\n return (this._inverseDependencies2[moduleId] || []).map((intModuleId) => this._moduleIdProvider.getStrModuleId(intModuleId));\n };\n module.complete(recorder, this._config, dependenciesValues, inversedependenciesProvider);\n // Fetch and clear inverse dependencies\n let inverseDeps = this._inverseDependencies2[module.id];\n this._inverseDependencies2[module.id] = null;\n if (inverseDeps) {\n // Resolve one inverse dependency at a time, always\n // on the lookout for a completed module.\n for (let i = 0, len = inverseDeps.length; i < len; i++) {\n let inverseDependencyId = inverseDeps[i];\n let inverseDependency = this._modules2[inverseDependencyId];\n inverseDependency.unresolvedDependenciesCount--;\n if (inverseDependency.unresolvedDependenciesCount === 0) {\n this._onModuleComplete(inverseDependency);\n }\n }\n }\n let inversePluginDeps = this._inversePluginDependencies2.get(module.id);\n if (inversePluginDeps) {\n // This module is used as a plugin at least once\n // Fetch and clear these inverse plugin dependencies\n this._inversePluginDependencies2.delete(module.id);\n // Resolve plugin dependencies one at a time\n for (let i = 0, len = inversePluginDeps.length; i < len; i++) {\n this._loadPluginDependency(module.exports, inversePluginDeps[i]);\n }\n }\n }\n }\n AMDLoader.ModuleManager = ModuleManager;\n})(AMDLoader || (AMDLoader = {}));\nvar define;\nvar AMDLoader;\n(function (AMDLoader) {\n const env = new AMDLoader.Environment();\n let moduleManager = null;\n const DefineFunc = function (id, dependencies, callback) {\n if (typeof id !== 'string') {\n callback = dependencies;\n dependencies = id;\n id = null;\n }\n if (typeof dependencies !== 'object' || !Array.isArray(dependencies)) {\n callback = dependencies;\n dependencies = null;\n }\n if (!dependencies) {\n dependencies = ['require', 'exports', 'module'];\n }\n if (id) {\n moduleManager.defineModule(id, dependencies, callback, null, null);\n }\n else {\n moduleManager.enqueueDefineAnonymousModule(dependencies, callback);\n }\n };\n DefineFunc.amd = {\n jQuery: true\n };\n const _requireFunc_config = function (params, shouldOverwrite = false) {\n moduleManager.configure(params, shouldOverwrite);\n };\n const RequireFunc = function () {\n if (arguments.length === 1) {\n if ((arguments[0] instanceof Object) && !Array.isArray(arguments[0])) {\n _requireFunc_config(arguments[0]);\n return;\n }\n if (typeof arguments[0] === 'string') {\n return moduleManager.synchronousRequire(arguments[0]);\n }\n }\n if (arguments.length === 2 || arguments.length === 3) {\n if (Array.isArray(arguments[0])) {\n moduleManager.defineModule(AMDLoader.Utilities.generateAnonymousModule(), arguments[0], arguments[1], arguments[2], null);\n return;\n }\n }\n throw new Error('Unrecognized require call');\n };\n RequireFunc.config = _requireFunc_config;\n RequireFunc.getConfig = function () {\n return moduleManager.getConfig().getOptionsLiteral();\n };\n RequireFunc.reset = function () {\n moduleManager = moduleManager.reset();\n };\n RequireFunc.getBuildInfo = function () {\n return moduleManager.getBuildInfo();\n };\n RequireFunc.getStats = function () {\n return moduleManager.getLoaderEvents();\n };\n RequireFunc.define = DefineFunc;\n function init() {\n if (typeof AMDLoader.global.require !== 'undefined' || typeof require !== 'undefined') {\n const _nodeRequire = (AMDLoader.global.require || require);\n if (typeof _nodeRequire === 'function' && typeof _nodeRequire.resolve === 'function') {\n // re-expose node's require function\n const nodeRequire = AMDLoader.ensureRecordedNodeRequire(moduleManager.getRecorder(), _nodeRequire);\n AMDLoader.global.nodeRequire = nodeRequire;\n RequireFunc.nodeRequire = nodeRequire;\n RequireFunc.__$__nodeRequire = nodeRequire;\n }\n }\n if (env.isNode && !env.isElectronRenderer && !env.isElectronNodeIntegrationWebWorker) {\n module.exports = RequireFunc;\n }\n else {\n if (!env.isElectronRenderer) {\n AMDLoader.global.define = DefineFunc;\n }\n AMDLoader.global.require = RequireFunc;\n }\n }\n AMDLoader.init = init;\n if (typeof AMDLoader.global.define !== 'function' || !AMDLoader.global.define.amd) {\n moduleManager = new AMDLoader.ModuleManager(env, AMDLoader.createScriptLoader(env), DefineFunc, RequireFunc, AMDLoader.Utilities.getHighPerformanceTimestamp());\n // The global variable require can configure the loader\n if (typeof AMDLoader.global.require !== 'undefined' && typeof AMDLoader.global.require !== 'function') {\n RequireFunc.config(AMDLoader.global.require);\n }\n // This define is for the local closure defined in node in the case that the loader is concatenated\n define = function () {\n return DefineFunc.apply(null, arguments);\n };\n define.amd = DefineFunc.amd;\n if (typeof doNotInitLoader === 'undefined') {\n init();\n }\n }\n})(AMDLoader || (AMDLoader = {}));\n"],"mappings":"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","names":["AMDLoader","Environment","LoaderEvent","type","detail","timestamp","LoaderEventRecorder","loaderAvailableTimestamp","NullLoaderEventRecorder","Utilities","isWindows","uri","haystack","needle","url","obj","callback","key","isEmpty","result","value","id","ensureError","err","ConfigurationOptionsUtil","options","defaultOnError","overwrite","base","key2","value2","Configuration","env","nodeMain","dirnameIndex","i","from","to","a","b","moduleId","pathRule","len","j","lenJ","urls","results","strModuleId","OnlyOnceScriptLoader","moduleManager","scriptSrc","errorback","WorkerScriptLoader","preferScriptTags","BrowserScriptLoader","NodeScriptLoader","scriptCallbacks","script","unbind","loadEventListener","errorEventListener","e","opts","nodeRequire","ensureRecordedNodeRequire","pieces","moduleExports","trustedTypesPolicy","cspNonce","canUseEval","response","text","nodeCachedData","that","Module","makeRequireFunction","mod","require","path","request","content","filename","scriptSource","recorder","cachedDataPath","hashData","data","compileWrapper","dirname","args","nodeInstrumenter","c","normalizedScriptSrc","vmScriptPathOrUri","wantsCachedData","cachedData","scriptOpts","contents","ret","globalDefineFunc","receivedDefineCall","localDefineFunc","driveLetterMatch","config","hash","basename","createCachedData","timeout","lastSize","iteration","createLoop","sourcePath","source","steps","step","hashDataNow","_nodeRequire","what","createScriptLoader","ModuleIdResolver","fromModuleId","lastSlash","r","pattern","strId","dependencies","moduleIdResolver","dependenciesValues","inversedependenciesProvider","producedError","ModuleIdProvider","RegularDependency","PluginDependency","pluginId","pluginParam","ModuleManager","scriptLoader","defineFunc","requireFunc","stack","normalize","str","normalizedPath","stackPieces","m","stackPath","stackLine","stackColumn","trimPathOffset","resultLen","location","defineStack","dep","dependency","bangIndex","strPluginId","dependencyId","_strModuleId","params","shouldOverwrite","oldShouldRecordStats","defineCall","_err","neededBy","intModuleId","error","seenModuleId","someoneNotified","queue","queueElement","inverseDeps","inverseDep","fromId","toId","inQueue","dependencyModule","depth","paths","scopedPackageRegex","lastPathIndex","loadNextPath","currentPath","plugin","pluginDependency","load","module","cyclePath","inversePluginDeps","inverseDependencyId","inverseDependency","DefineFunc","_requireFunc_config","RequireFunc","init"],"file":"loader.js"}