{"version":3,"sources":["fake","vs/loader.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"loader.js","sourcesContent":["/*!-----------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Version: 0.19.3(4bbae4b7d81ecff78ba65ddc8227b542e734257e)\n * Released under the MIT license\n * https://github.com/Microsoft/vscode/blob/master/LICENSE.txt\n *-----------------------------------------------------------*/\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n'use strict';\r\n/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n/*---------------------------------------------------------------------------------------------\r\n *---------------------------------------------------------------------------------------------\r\n *---------------------------------------------------------------------------------------------\r\n *---------------------------------------------------------------------------------------------\r\n *---------------------------------------------------------------------------------------------\r\n * Please make sure to make edits in the .ts file at https://github.com/Microsoft/vscode-loader/\r\n *---------------------------------------------------------------------------------------------\r\n *---------------------------------------------------------------------------------------------\r\n *---------------------------------------------------------------------------------------------\r\n *---------------------------------------------------------------------------------------------\r\n *--------------------------------------------------------------------------------------------*/\r\nvar _amdLoaderGlobal = this;\r\nvar _commonjsGlobal = typeof global === 'object' ? global : {};\r\nvar AMDLoader;\r\n(function (AMDLoader) {\r\n AMDLoader.global = _amdLoaderGlobal;\r\n var Environment = /** @class */ (function () {\r\n function Environment() {\r\n this._detected = false;\r\n this._isWindows = false;\r\n this._isNode = false;\r\n this._isElectronRenderer = false;\r\n this._isWebWorker = false;\r\n }\r\n Object.defineProperty(Environment.prototype, \"isWindows\", {\r\n get: function () {\r\n this._detect();\r\n return this._isWindows;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Environment.prototype, \"isNode\", {\r\n get: function () {\r\n this._detect();\r\n return this._isNode;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Environment.prototype, \"isElectronRenderer\", {\r\n get: function () {\r\n this._detect();\r\n return this._isElectronRenderer;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(Environment.prototype, \"isWebWorker\", {\r\n get: function () {\r\n this._detect();\r\n return this._isWebWorker;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Environment.prototype._detect = function () {\r\n if (this._detected) {\r\n return;\r\n }\r\n this._detected = true;\r\n this._isWindows = Environment._isWindows();\r\n this._isNode = (typeof module !== 'undefined' && !!module.exports);\r\n this._isElectronRenderer = (typeof process !== 'undefined' && typeof process.versions !== 'undefined' && typeof process.versions.electron !== 'undefined' && process.type === 'renderer');\r\n this._isWebWorker = (typeof AMDLoader.global.importScripts === 'function');\r\n };\r\n Environment._isWindows = function () {\r\n if (typeof navigator !== 'undefined') {\r\n if (navigator.userAgent && navigator.userAgent.indexOf('Windows') >= 0) {\r\n return true;\r\n }\r\n }\r\n if (typeof process !== 'undefined') {\r\n return (process.platform === 'win32');\r\n }\r\n return false;\r\n };\r\n return Environment;\r\n }());\r\n AMDLoader.Environment = Environment;\r\n})(AMDLoader || (AMDLoader = {}));\r\n/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nvar AMDLoader;\r\n(function (AMDLoader) {\r\n var LoaderEvent = /** @class */ (function () {\r\n function LoaderEvent(type, detail, timestamp) {\r\n this.type = type;\r\n this.detail = detail;\r\n this.timestamp = timestamp;\r\n }\r\n return LoaderEvent;\r\n }());\r\n AMDLoader.LoaderEvent = LoaderEvent;\r\n var LoaderEventRecorder = /** @class */ (function () {\r\n function LoaderEventRecorder(loaderAvailableTimestamp) {\r\n this._events = [new LoaderEvent(1 /* LoaderAvailable */, '', loaderAvailableTimestamp)];\r\n }\r\n LoaderEventRecorder.prototype.record = function (type, detail) {\r\n this._events.push(new LoaderEvent(type, detail, AMDLoader.Utilities.getHighPerformanceTimestamp()));\r\n };\r\n LoaderEventRecorder.prototype.getEvents = function () {\r\n return this._events;\r\n };\r\n return LoaderEventRecorder;\r\n }());\r\n AMDLoader.LoaderEventRecorder = LoaderEventRecorder;\r\n var NullLoaderEventRecorder = /** @class */ (function () {\r\n function NullLoaderEventRecorder() {\r\n }\r\n NullLoaderEventRecorder.prototype.record = function (type, detail) {\r\n // Nothing to do\r\n };\r\n NullLoaderEventRecorder.prototype.getEvents = function () {\r\n return [];\r\n };\r\n NullLoaderEventRecorder.INSTANCE = new NullLoaderEventRecorder();\r\n return NullLoaderEventRecorder;\r\n }());\r\n AMDLoader.NullLoaderEventRecorder = NullLoaderEventRecorder;\r\n})(AMDLoader || (AMDLoader = {}));\r\n/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nvar AMDLoader;\r\n(function (AMDLoader) {\r\n var Utilities = /** @class */ (function () {\r\n function Utilities() {\r\n }\r\n /**\r\n * This method does not take care of / vs \\\r\n */\r\n Utilities.fileUriToFilePath = function (isWindows, uri) {\r\n uri = decodeURI(uri).replace(/%23/g, '#');\r\n if (isWindows) {\r\n if (/^file:\\/\\/\\//.test(uri)) {\r\n // This is a URI without a hostname => return only the path segment\r\n return uri.substr(8);\r\n }\r\n if (/^file:\\/\\//.test(uri)) {\r\n return uri.substr(5);\r\n }\r\n }\r\n else {\r\n if (/^file:\\/\\//.test(uri)) {\r\n return uri.substr(7);\r\n }\r\n }\r\n // Not sure...\r\n return uri;\r\n };\r\n Utilities.startsWith = function (haystack, needle) {\r\n return haystack.length >= needle.length && haystack.substr(0, needle.length) === needle;\r\n };\r\n Utilities.endsWith = function (haystack, needle) {\r\n return haystack.length >= needle.length && haystack.substr(haystack.length - needle.length) === needle;\r\n };\r\n // only check for \"?\" before \"#\" to ensure that there is a real Query-String\r\n Utilities.containsQueryString = function (url) {\r\n return /^[^\\#]*\\?/gi.test(url);\r\n };\r\n /**\r\n * Does `url` start with http:// or https:// or file:// or / ?\r\n */\r\n Utilities.isAbsolutePath = function (url) {\r\n return /^((http:\\/\\/)|(https:\\/\\/)|(file:\\/\\/)|(\\/))/.test(url);\r\n };\r\n Utilities.forEachProperty = function (obj, callback) {\r\n if (obj) {\r\n var key = void 0;\r\n for (key in obj) {\r\n if (obj.hasOwnProperty(key)) {\r\n callback(key, obj[key]);\r\n }\r\n }\r\n }\r\n };\r\n Utilities.isEmpty = function (obj) {\r\n var isEmpty = true;\r\n Utilities.forEachProperty(obj, function () {\r\n isEmpty = false;\r\n });\r\n return isEmpty;\r\n };\r\n Utilities.recursiveClone = function (obj) {\r\n if (!obj || typeof obj !== 'object') {\r\n return obj;\r\n }\r\n var result = Array.isArray(obj) ? [] : {};\r\n Utilities.forEachProperty(obj, function (key, value) {\r\n if (value && typeof value === 'object') {\r\n result[key] = Utilities.recursiveClone(value);\r\n }\r\n else {\r\n result[key] = value;\r\n }\r\n });\r\n return result;\r\n };\r\n Utilities.generateAnonymousModule = function () {\r\n return '===anonymous' + (Utilities.NEXT_ANONYMOUS_ID++) + '===';\r\n };\r\n Utilities.isAnonymousModule = function (id) {\r\n return Utilities.startsWith(id, '===anonymous');\r\n };\r\n Utilities.getHighPerformanceTimestamp = function () {\r\n if (!this.PERFORMANCE_NOW_PROBED) {\r\n this.PERFORMANCE_NOW_PROBED = true;\r\n this.HAS_PERFORMANCE_NOW = (AMDLoader.global.performance && typeof AMDLoader.global.performance.now === 'function');\r\n }\r\n return (this.HAS_PERFORMANCE_NOW ? AMDLoader.global.performance.now() : Date.now());\r\n };\r\n Utilities.NEXT_ANONYMOUS_ID = 1;\r\n Utilities.PERFORMANCE_NOW_PROBED = false;\r\n Utilities.HAS_PERFORMANCE_NOW = false;\r\n return Utilities;\r\n }());\r\n AMDLoader.Utilities = Utilities;\r\n})(AMDLoader || (AMDLoader = {}));\r\n/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nvar AMDLoader;\r\n(function (AMDLoader) {\r\n function ensureError(err) {\r\n if (err instanceof Error) {\r\n return err;\r\n }\r\n var result = new Error(err.message || String(err) || 'Unknown Error');\r\n if (err.stack) {\r\n result.stack = err.stack;\r\n }\r\n return result;\r\n }\r\n AMDLoader.ensureError = ensureError;\r\n ;\r\n var ConfigurationOptionsUtil = /** @class */ (function () {\r\n function ConfigurationOptionsUtil() {\r\n }\r\n /**\r\n * Ensure configuration options make sense\r\n */\r\n ConfigurationOptionsUtil.validateConfigurationOptions = function (options) {\r\n function defaultOnError(err) {\r\n if (err.phase === 'loading') {\r\n console.error('Loading \"' + err.moduleId + '\" failed');\r\n console.error(err);\r\n console.error('Here are the modules that depend on it:');\r\n console.error(err.neededBy);\r\n return;\r\n }\r\n if (err.phase === 'factory') {\r\n console.error('The factory method of \"' + err.moduleId + '\" has thrown an exception');\r\n console.error(err);\r\n return;\r\n }\r\n }\r\n options = options || {};\r\n if (typeof options.baseUrl !== 'string') {\r\n options.baseUrl = '';\r\n }\r\n if (typeof options.isBuild !== 'boolean') {\r\n options.isBuild = false;\r\n }\r\n if (typeof options.paths !== 'object') {\r\n options.paths = {};\r\n }\r\n if (typeof options.config !== 'object') {\r\n options.config = {};\r\n }\r\n if (typeof options.catchError === 'undefined') {\r\n options.catchError = false;\r\n }\r\n if (typeof options.recordStats === 'undefined') {\r\n options.recordStats = false;\r\n }\r\n if (typeof options.urlArgs !== 'string') {\r\n options.urlArgs = '';\r\n }\r\n if (typeof options.onError !== 'function') {\r\n options.onError = defaultOnError;\r\n }\r\n if (!Array.isArray(options.ignoreDuplicateModules)) {\r\n options.ignoreDuplicateModules = [];\r\n }\r\n if (options.baseUrl.length > 0) {\r\n if (!AMDLoader.Utilities.endsWith(options.baseUrl, '/')) {\r\n options.baseUrl += '/';\r\n }\r\n }\r\n if (typeof options.cspNonce !== 'string') {\r\n options.cspNonce = '';\r\n }\r\n if (!Array.isArray(options.nodeModules)) {\r\n options.nodeModules = [];\r\n }\r\n if (options.nodeCachedData && typeof options.nodeCachedData === 'object') {\r\n if (typeof options.nodeCachedData.seed !== 'string') {\r\n options.nodeCachedData.seed = 'seed';\r\n }\r\n if (typeof options.nodeCachedData.writeDelay !== 'number' || options.nodeCachedData.writeDelay < 0) {\r\n options.nodeCachedData.writeDelay = 1000 * 7;\r\n }\r\n if (!options.nodeCachedData.path || typeof options.nodeCachedData.path !== 'string') {\r\n var err = ensureError(new Error('INVALID cached data configuration, \\'path\\' MUST be set'));\r\n err.phase = 'configuration';\r\n options.onError(err);\r\n options.nodeCachedData = undefined;\r\n }\r\n }\r\n return options;\r\n };\r\n ConfigurationOptionsUtil.mergeConfigurationOptions = function (overwrite, base) {\r\n if (overwrite === void 0) { overwrite = null; }\r\n if (base === void 0) { base = null; }\r\n var result = AMDLoader.Utilities.recursiveClone(base || {});\r\n // Merge known properties and overwrite the unknown ones\r\n AMDLoader.Utilities.forEachProperty(overwrite, function (key, value) {\r\n if (key === 'ignoreDuplicateModules' && typeof result.ignoreDuplicateModules !== 'undefined') {\r\n result.ignoreDuplicateModules = result.ignoreDuplicateModules.concat(value);\r\n }\r\n else if (key === 'paths' && typeof result.paths !== 'undefined') {\r\n AMDLoader.Utilities.forEachProperty(value, function (key2, value2) { return result.paths[key2] = value2; });\r\n }\r\n else if (key === 'config' && typeof result.config !== 'undefined') {\r\n AMDLoader.Utilities.forEachProperty(value, function (key2, value2) { return result.config[key2] = value2; });\r\n }\r\n else {\r\n result[key] = AMDLoader.Utilities.recursiveClone(value);\r\n }\r\n });\r\n return ConfigurationOptionsUtil.validateConfigurationOptions(result);\r\n };\r\n return ConfigurationOptionsUtil;\r\n }());\r\n AMDLoader.ConfigurationOptionsUtil = ConfigurationOptionsUtil;\r\n var Configuration = /** @class */ (function () {\r\n function Configuration(env, options) {\r\n this._env = env;\r\n this.options = ConfigurationOptionsUtil.mergeConfigurationOptions(options);\r\n this._createIgnoreDuplicateModulesMap();\r\n this._createNodeModulesMap();\r\n this._createSortedPathsRules();\r\n if (this.options.baseUrl === '') {\r\n if (this.options.nodeRequire && this.options.nodeRequire.main && this.options.nodeRequire.main.filename && this._env.isNode) {\r\n var nodeMain = this.options.nodeRequire.main.filename;\r\n var dirnameIndex = Math.max(nodeMain.lastIndexOf('/'), nodeMain.lastIndexOf('\\\\'));\r\n this.options.baseUrl = nodeMain.substring(0, dirnameIndex + 1);\r\n }\r\n if (this.options.nodeMain && this._env.isNode) {\r\n var nodeMain = this.options.nodeMain;\r\n var dirnameIndex = Math.max(nodeMain.lastIndexOf('/'), nodeMain.lastIndexOf('\\\\'));\r\n this.options.baseUrl = nodeMain.substring(0, dirnameIndex + 1);\r\n }\r\n }\r\n }\r\n Configuration.prototype._createIgnoreDuplicateModulesMap = function () {\r\n // Build a map out of the ignoreDuplicateModules array\r\n this.ignoreDuplicateModulesMap = {};\r\n for (var i = 0; i < this.options.ignoreDuplicateModules.length; i++) {\r\n this.ignoreDuplicateModulesMap[this.options.ignoreDuplicateModules[i]] = true;\r\n }\r\n };\r\n Configuration.prototype._createNodeModulesMap = function () {\r\n // Build a map out of nodeModules array\r\n this.nodeModulesMap = Object.create(null);\r\n for (var _i = 0, _a = this.options.nodeModules; _i < _a.length; _i++) {\r\n var nodeModule = _a[_i];\r\n this.nodeModulesMap[nodeModule] = true;\r\n }\r\n };\r\n Configuration.prototype._createSortedPathsRules = function () {\r\n var _this = this;\r\n // Create an array our of the paths rules, sorted descending by length to\r\n // result in a more specific -> less specific order\r\n this.sortedPathsRules = [];\r\n AMDLoader.Utilities.forEachProperty(this.options.paths, function (from, to) {\r\n if (!Array.isArray(to)) {\r\n _this.sortedPathsRules.push({\r\n from: from,\r\n to: [to]\r\n });\r\n }\r\n else {\r\n _this.sortedPathsRules.push({\r\n from: from,\r\n to: to\r\n });\r\n }\r\n });\r\n this.sortedPathsRules.sort(function (a, b) {\r\n return b.from.length - a.from.length;\r\n });\r\n };\r\n /**\r\n * Clone current configuration and overwrite options selectively.\r\n * @param options The selective options to overwrite with.\r\n * @result A new configuration\r\n */\r\n Configuration.prototype.cloneAndMerge = function (options) {\r\n return new Configuration(this._env, ConfigurationOptionsUtil.mergeConfigurationOptions(options, this.options));\r\n };\r\n /**\r\n * Get current options bag. Useful for passing it forward to plugins.\r\n */\r\n Configuration.prototype.getOptionsLiteral = function () {\r\n return this.options;\r\n };\r\n Configuration.prototype._applyPaths = function (moduleId) {\r\n var pathRule;\r\n for (var i = 0, len = this.sortedPathsRules.length; i < len; i++) {\r\n pathRule = this.sortedPathsRules[i];\r\n if (AMDLoader.Utilities.startsWith(moduleId, pathRule.from)) {\r\n var result = [];\r\n for (var j = 0, lenJ = pathRule.to.length; j < lenJ; j++) {\r\n result.push(pathRule.to[j] + moduleId.substr(pathRule.from.length));\r\n }\r\n return result;\r\n }\r\n }\r\n return [moduleId];\r\n };\r\n Configuration.prototype._addUrlArgsToUrl = function (url) {\r\n if (AMDLoader.Utilities.containsQueryString(url)) {\r\n return url + '&' + this.options.urlArgs;\r\n }\r\n else {\r\n return url + '?' + this.options.urlArgs;\r\n }\r\n };\r\n Configuration.prototype._addUrlArgsIfNecessaryToUrl = function (url) {\r\n if (this.options.urlArgs) {\r\n return this._addUrlArgsToUrl(url);\r\n }\r\n return url;\r\n };\r\n Configuration.prototype._addUrlArgsIfNecessaryToUrls = function (urls) {\r\n if (this.options.urlArgs) {\r\n for (var i = 0, len = urls.length; i < len; i++) {\r\n urls[i] = this._addUrlArgsToUrl(urls[i]);\r\n }\r\n }\r\n return urls;\r\n };\r\n /**\r\n * Transform a module id to a location. Appends .js to module ids\r\n */\r\n Configuration.prototype.moduleIdToPaths = function (moduleId) {\r\n if (this.nodeModulesMap[moduleId] === true) {\r\n // This is a node module...\r\n if (this.isBuild()) {\r\n // ...and we are at build time, drop it\r\n return ['empty:'];\r\n }\r\n else {\r\n // ...and at runtime we create a `shortcut`-path\r\n return ['node|' + moduleId];\r\n }\r\n }\r\n var result = moduleId;\r\n var results;\r\n if (!AMDLoader.Utilities.endsWith(result, '.js') && !AMDLoader.Utilities.isAbsolutePath(result)) {\r\n results = this._applyPaths(result);\r\n for (var i = 0, len = results.length; i < len; i++) {\r\n if (this.isBuild() && results[i] === 'empty:') {\r\n continue;\r\n }\r\n if (!AMDLoader.Utilities.isAbsolutePath(results[i])) {\r\n results[i] = this.options.baseUrl + results[i];\r\n }\r\n if (!AMDLoader.Utilities.endsWith(results[i], '.js') && !AMDLoader.Utilities.containsQueryString(results[i])) {\r\n results[i] = results[i] + '.js';\r\n }\r\n }\r\n }\r\n else {\r\n if (!AMDLoader.Utilities.endsWith(result, '.js') && !AMDLoader.Utilities.containsQueryString(result)) {\r\n result = result + '.js';\r\n }\r\n results = [result];\r\n }\r\n return this._addUrlArgsIfNecessaryToUrls(results);\r\n };\r\n /**\r\n * Transform a module id or url to a location.\r\n */\r\n Configuration.prototype.requireToUrl = function (url) {\r\n var result = url;\r\n if (!AMDLoader.Utilities.isAbsolutePath(result)) {\r\n result = this._applyPaths(result)[0];\r\n if (!AMDLoader.Utilities.isAbsolutePath(result)) {\r\n result = this.options.baseUrl + result;\r\n }\r\n }\r\n return this._addUrlArgsIfNecessaryToUrl(result);\r\n };\r\n /**\r\n * Flag to indicate if current execution is as part of a build.\r\n */\r\n Configuration.prototype.isBuild = function () {\r\n return this.options.isBuild;\r\n };\r\n /**\r\n * Test if module `moduleId` is expected to be defined multiple times\r\n */\r\n Configuration.prototype.isDuplicateMessageIgnoredFor = function (moduleId) {\r\n return this.ignoreDuplicateModulesMap.hasOwnProperty(moduleId);\r\n };\r\n /**\r\n * Get the configuration settings for the provided module id\r\n */\r\n Configuration.prototype.getConfigForModule = function (moduleId) {\r\n if (this.options.config) {\r\n return this.options.config[moduleId];\r\n }\r\n };\r\n /**\r\n * Should errors be caught when executing module factories?\r\n */\r\n Configuration.prototype.shouldCatchError = function () {\r\n return this.options.catchError;\r\n };\r\n /**\r\n * Should statistics be recorded?\r\n */\r\n Configuration.prototype.shouldRecordStats = function () {\r\n return this.options.recordStats;\r\n };\r\n /**\r\n * Forward an error to the error handler.\r\n */\r\n Configuration.prototype.onError = function (err) {\r\n this.options.onError(err);\r\n };\r\n return Configuration;\r\n }());\r\n AMDLoader.Configuration = Configuration;\r\n})(AMDLoader || (AMDLoader = {}));\r\n/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nvar AMDLoader;\r\n(function (AMDLoader) {\r\n /**\r\n * Load `scriptSrc` only once (avoid multiple